מדיה ויקי:Gadget-EditReplace.js
מראה
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
// סקריפט 24: לקוח מ[[ויקיפדיה:סקריפטים/24]]
// Adds a replace option to toolbar in edit mode
// Created by [[user:Yonidebest]], rewritten by [[User:ערן]]
$ ( function() {
var $prependTo = $('#editform');
if ( $prependTo.length === 0 ) {
return;
}
var $statusReplace = $('<span>').html( "מחכה..." ),
$replaceFrom = $('<input type="text" tabIndex="21" class="mw-inputbox-input mw-ui-input mw-ui-input-inline">').change(function() { $statusReplace.html( "מחכה..." ); }),
$replaceTo = $('<input type="text" tabIndex="22" class="mw-inputbox-input mw-ui-input mw-ui-input-inline">').change(function() { $statusReplace.html( "מחכה..." ); }),
$submitReplace = $('<input type="button" class="mw-ui-button" value="החלפה" />'),
$checkRegex = $('<input type="checkbox" class="mw-inputbox-element mw-ui-checkbox">'),
$labelRegex = $('<a href="//he.wikipedia.org/wiki/%D7%91%D7%99%D7%98%D7%95%D7%99_%D7%A8%D7%92%D7%95%D7%9C%D7%A8%D7%99">ביטוי רגולרי</a>'),
$replaceContainer = $('<div>');
$replaceContainer.append( [' החלף את: ', $replaceFrom, ' ב ', $replaceTo, $submitReplace, ' | ', $checkRegex, ' החלף כ', $labelRegex, ' | סטטוס: ', $statusReplace]);
$replaceContainer.hide();
$prependTo.prepend($replaceContainer);
$prependTo.prepend($( '<a href="#">[החלפה]</a>' ).click(function(){ $replaceContainer.toggle(); $(this).text(($(this).text() === '[החלפה]'? '[החלפה]' : '[הסתרה]')); }));
$submitReplace.click(function() {
var fromRgx = new RegExp ( ($checkRegex.prop( 'checked' )? $replaceFrom.val() : mw.RegExp.escape( $replaceFrom.val() )), 'g' ); // as string
var outputText = $('#wpTextbox1').val().replace ( fromRgx, $replaceTo.val().replace(/\\n/g,"\n") );
if ( outputText != $('#wpTextbox1').val() )
{
$('#wpTextbox1').val( outputText );
$statusReplace.html( 'בוצע!' ); // 'done!'
}
else $statusReplace.html( 'לא נמצאו מופעים.' ); // 'not found.'
});
} );