מדיה ויקי:Gadget-toggleRCOptions.js: הבדלים בין גרסאות בדף

מאין תקציר עריכה
מ 69 גרסאות של הדף wikipedia:he:מדיה_ויקי:Gadget-toggleRCOptions.js יובאו
 
(22 גרסאות ביניים של 4 משתמשים אינן מוצגות)
שורה 1: שורה 1:
//
var $match = $('.rcoptions, #mw-watchlist-form, #Recentchangestext');
//
// Important: many pages do not load this module by default so make sure it's loaded.
// Created by [[user:Yonidebest]]
if ($match.length) {
 
mw.loader.using('jquery.makeCollapsible').then( function () {
function showFound(text, index) {
// Hides the RC options by default (incl. toggle button)
/*
$match.makeCollapsible({collapsed:true});
//save window scroll position
} );
if (document.documentElement && document.documentElement.scrollTop)
  var winScroll = document.documentElement.scrollTop
else if (document.body)
  var winScroll = document.body.scrollTop;
*/
 
// select range
var range = document.editform.wpTextbox1.createTextRange();
range.moveStart('textedit');
range.moveStart('character', - (document.editform.wpTextbox1.value.length - index));
range.moveEnd('character', - (document.editform.wpTextbox1.value.length - index - text.length));
// range.findText(text, - (document.editform.wpTextbox1.value.length - index + text.length));
range.select();
 
/*
//restore window scroll position
if (document.documentElement && document.documentElement.scrollTop)
  document.documentElement.scrollTop = winScroll
else if (document.body)
  document.body.scrollTop = winScroll;
*/
}
}
function findText() {
// clear Select object
var results = document.getElementById('foundResults');
while (results.length > 0)
  results.remove(0);
// find text and add to select object
var fromIndex = 0;
var counter = 0;
var findThis = document.getElementById('findInput').value;
while (fromIndex != -1) {
  var foundIndex = document.editform.wpTextbox1.value.indexOf(findThis, fromIndex);
  if (foundIndex != -1 && counter <= 100) {
      counter++;
      var option = document.createElement('OPTION');
      option.text = 'תוצאה ' + counter;
      option.title = findThis;
      option.value = foundIndex;
      results.add(option);
      fromIndex = foundIndex + findThis.length;
  } else {
    var option = document.createElement('OPTION');
    option.title = foundIndex;
    option.disabled = true;
    if (results.length != 0) {
      option.text = 'נמצאו ' + counter + ' תוצאות.';
      results.add(option, 0);
    } else {
      option.text = 'לא נמצאות תוצאות.';
      results.add(option);
    }
    break;
  }
}
results.selectedIndex = 0;
}
function toggleFindText() {
var divBoxFind = document.getElementById('divFind');
var aFind = document.getElementById('aFind');
if (divBoxFind.style.display == 'none') {
  divBoxFind.style.display = 'block';
  aFind.innerHTML = '[הסתר]';
} else {
  divBoxFind.style.display = 'none';
  aFind.innerHTML = 'חפש';
}
}
function addFindText() {
var toolbar = document.getElementById('toolbar');
if (!toolbar) return;
var iFind = document.createElement('<INPUT ID="findInput"></INPUT>');
iFind.type = 'text';
iFind.onchange = function() {javascript:document.getElementById("statusReplace").innerHTML = "מחכה.";};
var submitFind = document.createElement('A');
submitFind.href = 'javascript:findText();';
submitFind.appendChild(document.createTextNode('חפש'));
var foundResults = document.createElement('<SELECT ID="foundResults"></SELECT>');
var option = document.createElement('OPTION');
option.text = 'מחכה...';
option.disabled = true;
foundResults.onchange = function() { showFound(this[this.selectedIndex].title,this[this.selectedIndex].value);return false; };
foundResults.add(option);
var divBoxFind = document.createElement('<DIV ID="divFind"></DIV>');
divBoxFind.appendChild(document.createTextNode('חפש את '));
divBoxFind.appendChild(iFind);
divBoxFind.appendChild(document.createTextNode(' '));
divBoxFind.appendChild(submitFind);
divBoxFind.appendChild(document.createTextNode(' | תוצאות: '));
divBoxFind.appendChild(foundResults);
divBoxFind.appendChild(document.createElement('BR'));
var aFind = document.createElement('<A ID="aFind"></A>');
aFind.href = 'javascript:toggleFindText();';
aFind.appendChild(document.createTextNode('חפש'));
toolbar.appendChild(aFind);
toolbar.appendChild(document.createTextNode(' '));
toolbar.appendChild(divBoxFind);
toggleFindText();
}
addOnloadHook(addFindText);