ווטסאפ - לינוקס, BSD, קוד פתוח ותוכנה חופשית בעברית. Whatsup - Linux, BSD, open source and free software in Hebrew

 
 
  כניסת חברים · רישום · שכחתי סיסמה  
tux the penguin
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
hadasoלא בפורום כעת ת.הצטרפות: 02/10/2004 · הודעות: 12 · מיקום: ישראל
 

הודעה פורסם: 21/06/2005 - 16:47
נושא ההודעה: חיפוש מידע באתר בכנסת: לאזרחי ישראל או ללקוחות MS בלבד?

הבעיה של חיפוש באתר הכנסת כבר הועלתה בעבר כאן: http://www.whatsup.org.il/index.php?name=PNphpBB2&file=viewtopic&p=24408#24408
באותו אתר נידונו גם אתרים אחרים שאינם מאפשרים גישה למי שאינו משתמש בצרוף הקדוש Windows+IE. (אני דוקא משתמש אבל מנסה להגמל. יש מי שמפריע לי בתכנית הגמילה...)

אז לענין עצמו: חיפוש מידע באתר הכנסת אפשרי בעזרת מערכת ההפעלה והדפדפן הנהדר של MS, אבל לא הצלחתי להפש באותו אתר בעזרת פיירפוקס\חלונות, מוזילה\קנופיקס, קונקרור\קנופיקס.

פניה לכתובת feedback באתר הניבה את התגובה:
ציטוט:
שלום רב,

בשלב זה האתר תומך רק ב IE.

______________________

אליהוא מנזין

Elihu Menzin

Knesset Website & Library
http://www.knesset.gov.il

כיוון שאני חשדן מטבעי (כאשר אני שומע את התשובה "לא") ניסיתי להסתכל בקוד המקור של דף החיפוש http://knesset.gov.il/AllSite/Qform.asp. אני מודה ומתודה שלא ממש העמקתי בעניין,(וגם הידע שלי בjavascript שטחי ביותר). מה שאני רואה הוא שהקלקה על כפתור ה"חיפוש" אמורה להפעיל את הפקודה
קוד:
javascript:window.parent.BuildQuery()

שהיא עצמה מפעילה את הפונקציה Validation() ובהתאם לתוצאה קוראת ל document.QryForm.submit()
נסיתי לבצע חיפוש (מלת החיפוש: דואר זבל) על ידי הזנת הפקודה הבאה בשורת הכתובת:
קוד:
javascript:document.QryForm.submit();

ןוהתוצאה היא שגיאת HTTP 400 ב-IE ואילו בפיירפוקס הודעה בנוסח:
ציטוט:


הפעלת את מערכת ההגנה על האתר
כדי לחזור לעמוד הראשי נא לחצו כאן



Description of the error:
Error(1): Unknown field was received.
Error(2): Unknown field was received.
Error(3): Unknown field was received.
error no.10637bd2
Illegal fields in form :

לעומת זאת, אותו תהליך עם
קוד:
javascript:BuildQuery();

לא מזיז בכלל לפיירפוקס ׁכלומר לא קורה דבר - (האמת: זה היה צפוי) ואילו ב-IE פועל בדיוק כמו הכפתור בדף באתר.

מה שאני מחפש זאת דרך ליצור בוקמרקלט שיבצע את העבודה במקום הjavascript בדף ויאפשר לי (ולאחרים) להשיג את המידע גם בדפדפן שאינו IE. האפ זה אפשרי?
אני לא מתכוון כמובן "לפרוץ לאתר" (לא חוקי, וגם בניגוד לחוקי הפורום). מה שאני רוצה זה במידת האפשר, אם הבעיה היא רק שגיאה תכנותית שבגללה האתר לא מתפקד, למצוא תיקון זמני.

כמובן, הדרך הטובה לתקן את העניין היא שאתר הכנסת וכל שאר אתרי הגורמים הציבוריים יעברו לעבוד לפי סטנדרטים. אבל בינתיים, בהתחשב במהירות ההסתגלות של הגופים הציבוריים האלה, אני הייתי רוצה תיקון עצמאי אם זה אפשרי. יתרון נוסף לתיקונים עצמאיים כאלה היא שהם מהווים הוכחות לכך שההגבלות המקובלות בכמעט כל אתרי ה"אינטרנט" הציבוריים ללקוחות מיקרוסופט בלבד אינם הכרחיים ויש להם פתרונות פשוטים 0או, לפחות כך אני מקווה).
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
פיל-קטןלא בפורום כעת ת.הצטרפות: 02/05/2004 · הודעות: 1089 ·
 

הודעה פורסם: 22/06/2005 - 00:24
נושא ההודעה:

הבעיה היא בפונקציה Validation, שכתובה, בוא נגיד זאת בעדינות, קצת מצחיק.

צריך לשכתב אותה לפי סטנדרטים. אולי אפשר לעשות זאת במסגרת Bookmarklet -- אני לא יודע, לא מכיר את הנושא. אני די בטוח שאפשר לעשות זאת עם התוסף-לשכתוב-אתרים שיצא לא מזמן (SpiderMonkey, אם אני לא טועה).
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
אורח · ·
 

הודעה פורסם: 22/06/2005 - 00:50
נושא ההודעה:

יש בשואל בתפריט Tools את JavaScript Console שיכול לעזור לך לאתר את הבעיה.
כרגע מה שעוצר את החיפוש הוא document.QryForm.elements
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
uvmanלא בפורום כעת ת.הצטרפות: 19/01/2005 · הודעות: 166 ·
 

הודעה פורסם: 22/06/2005 - 01:51
נושא ההודעה:

קטן, מגעיל אבל עובד
קוד:
// GreaseMonkey Script.
// ==UserScript==
// @name          KnessetSearch
// @description   Make the search work on the Knesset site.
// @include       http://www.knesset.gov.il/AllSite/*
// ==/UserScript==

(function() {
  Validation = function() {
    var sWord = document.getElementsByName("BODY_H")[0].value;
    var sReg = /""/;
    if(sWord.search(sReg) > -1) {
      alert("אין לכתוב גרשיים יותר מפעם אחת במילה");
      return false;
    } else {
      sReg = /"/g;
      document.QryForm.elements["BODY"].value = sWord.replace(/"/g, "ןןןןן");
      return true;
    }
  }
})();
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
הצגת הודעות מלפני:     
מעבר אל:  
כל הזמנים הם GMT + 2 שעות
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
PNphpBB2 © 2003-2004 

תוכן הדיון

  1. hadaso
  2. פיל-קטן
  3. אורח
  4. uvman