משתמש:Yonidebest/scripts/advancedSearch.js

מתוך ויקיפדיה, האנציקלופדיה החופשית

הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
/* 
 * Adds an "advanced search" tab. 
 * written by [[user:yonidebest]]
 *
 */
 
var advanceSearchText = false;

function saveAdvancedSearch()
{
	var expires = new Date();
	expires.setDate(expires.getDate() + 14);
	document.cookie =  'advancedsearchtext=' + escape(document.getElementById("advancedSearchText").value.replace('"', """)) + '; expires=' + expires.toUTCString();
	with (document.forms["advancedSearch"])
		document.cookie = 'advancedsearchns=[' + ns0.checked + ',' + ns1.checked + ',' + ns2.checked + ',' + ns3.checked + ',' + ns4.checked + ',' + ns5.checked + ',' + ns6.checked + ',' + ns7.checked + ',' + ns8.checked + ',' + ns9.checked + ',' + ns10.checked + ',' + ns11.checked + ',' + ns12.checked + ',' + ns13.checked + ',' + ns14.checked + ',' + ns15.checked + ',' + ns100.checked + ',' + ns101.checked + ']; expires=' + expires.toUTCString();
}

function showAdvancedSearch()
{
	if (!advanceSearchText)
	{
		// create div a show it
		var caadvancedSearch = document.getElementById("ca-advancedSearch");
		var div = document.createElement("div");
		div.id = "advancedSearchWindow";
		var savedText = "";
		var savedNS = "";
		var cookies = document.cookie.split(';');
		for (var i = 0; i < cookies.length; i++)
		{
			if (cookies[i].indexOf('advancedsearchtext=') != -1)
				savedText = cookies[i].substring(20);
			if (cookies[i].indexOf('advancedsearchns=') != -1)
				savedNS = cookies[i].substring(18);
		}
		var NSarr;
		if (savedNS != "")
			NSarr = eval(savedNS);
		else // default
			NSarr = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0];

		div.innerHTML = '<form id="powersearch" name="advancedSearch" method="get" action="/wiki/%D7%9E%D7%99%D7%95%D7%97%D7%93:Search"><table style="background-color: transparent;><tbody><tr><td colspan="8"><input type="text" id="advancedSearchText" name="search" value="' + unescape(savedText) + '" size="24" /><input type="submit" name="fulltext" value="חפש" />&nbsp;&nbsp;<a href="javascript:saveAdvancedSearch()" title="שמירת טקסט החיפוש ומרחבי השם המסומנים לשימוש עתידי. מספיק ללחוץ פעם אחת בלבד">זכור</a></td></tr><tr><td><label><input type="checkbox" value="1" name="ns0" ' + ((NSarr[0]) ? 'checked' : "") + ' />(ראשי)</label></td><td><label><input type="checkbox" value="1" name="ns1" ' + ((NSarr[1]) ? 'checked' : "") + ' />שיחה</label></td><td>&nbsp;&nbsp;</td><td><label><input type="checkbox" value="1" name="ns8" ' + ((NSarr[8]) ? 'checked' : "") + ' />מדיה ויקי</label></td><td><label><input type="checkbox" value="1" name="ns9" ' + ((NSarr[9]) ? 'checked' : "") + ' />שיחת מדיה ויקי</label></td><td>&nbsp;&nbsp;</td><td><label><input type="checkbox" value="1" name="ns100" ' + ((NSarr[16]) ? 'checked' : "") + ' />פורטל</label></td><td><label><input type="checkbox" value="1" name="ns101" ' + ((NSarr[17]) ? 'checked' : "") + ' />שיחת פורטל</label></td></tr><tr><td><label><input type="checkbox" value="1" name="ns2" ' + ((NSarr[2]) ? 'checked' : "") + ' />משתמש</label></td><td><label><input type="checkbox" value="1" name="ns3" ' + ((NSarr[3]) ? 'checked' : "") + ' />שיחת משתמש</label></td><td>&nbsp;&nbsp;</td><td><label><input type="checkbox" value="1" name="ns10" ' + ((NSarr[10]) ? 'checked' : "") + ' />תבנית</label></td><td><label><input type="checkbox" value="1" name="ns11" ' + ((NSarr[11]) ? 'checked' : "") + ' />שיחת תבנית</label></td></tr><tr><td><label><input type="checkbox" value="1" name="ns4" ' + ((NSarr[4]) ? 'checked' : "") + ' />ויקיפדיה</label></td><td><label><input type="checkbox" value="1" name="ns5" ' + ((NSarr[5]) ? 'checked' : "") + ' />שיחת ויקיפדיה</label></td><td>&nbsp;&nbsp;</td><td><label><input type="checkbox" value="1" name="ns12" ' + ((NSarr[12]) ? 'checked' : "") + ' />עזרה</label></td><td><label><input type="checkbox" value="1" name="ns13" ' + ((NSarr[13]) ? 'checked' : "") + ' />שיחת עזרה</label></td></tr><tr><td><label><input type="checkbox" value="1" name="ns6" ' + ((NSarr[6]) ? 'checked' : "") + ' />קובץ</label></td><td><label><input type="checkbox" value="1" name="ns7" ' + ((NSarr[7]) ? 'checked' : "") + ' />שיחת קובץ</label></td><td>&nbsp;&nbsp;</td><td><label><input type="checkbox" value="1" name="ns14" ' + ((NSarr[14]) ? 'checked' : "") + ' />קטגוריה</label></td><td><label><input type="checkbox" value="1" name="ns15" ' + ((NSarr[15]) ? 'checked' : "") + ' />שיחת קטגוריה</label></td></tr></tbody></table></form>';
		div.style.position = "absolute";
		div.style.left = "20px";
		div.style.display = "block";
		div.style.clear = "both";
		div.style.zIndex = "101";
		div.className = "toccolours";	
		var top = document.getElementById("top");
		top.parentNode.insertBefore(div, top);
		advanceSearchText = true;
	}
	else
	{
		// div has been created before - toggle display
		var advancedSearchWindow = document.getElementById("advancedSearchWindow");
		advancedSearchWindow.style.display = (advancedSearchWindow.style.display == "block") ? "none" : "block";
	}
}

function initAdvancedSearch()
{
	var a = document.createElement("a");
	a.href = "javascript:showAdvancedSearch()";
	a.title = "הצגת חיפוש מתקדם";
	a.appendChild(document.createTextNode("חיפוש מתקדם"));
	var span = document.createElement("span");
	span.appendChild(a);
	var li = document.createElement("li");
	li.id = "ca-advancedSearch";
	li.className = "collapsible";
	li.appendChild(span);
	var cahistory = document.getElementById("ca-history");
	cahistory.parentNode.insertBefore(li, cahistory);
}

$(function() 
		{
			if ( document.getElementById("ca-history") ) 
				initAdvancedSearch();
		});