Difference between revisions of "User:Shine/valve.js"
m |
m |
||
Line 30: | Line 30: | ||
// | // | ||
+ | |||
+ | /* | ||
+ | NAMESPACE REDIRECT | ||
+ | Description: Redirects pages that begin with certain prefixes to appropriate namespaces. | ||
+ | Example: [[C:Test]] -> [[Category:Test]], [[F:Test]] -> [[File:Test]], [[T:Test]] -> [[Template:Test]] | ||
+ | Link: [[User:Gary King/namespace redirect.js]] | ||
+ | */ | ||
+ | |||
+ | addOnloadHook(function() | ||
+ | { | ||
+ | if (wgPageName != 'Special:Search') return; | ||
+ | |||
+ | var searchText = document.getElementById('searchText'); | ||
+ | if (!searchText) return; | ||
+ | var searchTerm = searchText.value; | ||
+ | var colon = searchTerm.indexOf(':'); | ||
+ | |||
+ | if (colon != -1) | ||
+ | { | ||
+ | var firstPart = searchTerm.substring(0, colon); | ||
+ | var secondPart = searchTerm.substring(colon + 1); | ||
+ | var pageName = ''; | ||
+ | |||
+ | switch (firstPart.toUpperCase()) | ||
+ | { | ||
+ | case 'C': | ||
+ | pageName = 'Category:' + secondPart; | ||
+ | break; | ||
+ | case 'F': | ||
+ | pageName = 'File:' + secondPart; | ||
+ | break; | ||
+ | case 'T': | ||
+ | pageName = 'Template:' + secondPart; | ||
+ | break; | ||
+ | case 'U': | ||
+ | pageName = 'User:' + secondPart; | ||
+ | break; | ||
+ | } | ||
+ | |||
+ | if (pageName != '') | ||
+ | window.location = wgServer + '/wiki/' + pageName; | ||
+ | } | ||
+ | }); |
Revision as of 01:46, 8 August 2010
// addPurge addOnloadHook(function () { var hist; var url; if (!(hist = document.getElementById('ca-history') )) return; if (!(url = hist.getElementsByTagName('a')[0] )) return; if (!(url = url.href )) return; addPortletLink('p-cactions', url.replace(/([?&]action=)history([&#]|$)/, '$1purge$2'), 'Purge', 'ca-purge', 'Purge server cache for this page', '0'); }); // // Adds a "Replace" tab which pops up two prompt boxes; one for a regexp and one for a replacement function wpTextboxReplace() { var s = prompt("Search regexp:"); if(s){ var r = prompt("Replace /"+s+"/ with:"); if(!r && r != '') return; var txt = document.editform.wpTextbox1; txt.value = txt.value.replace(new RegExp(s, "mg"), r); } } addOnloadHook(function () { if (document.forms.editform) { addPortletLink('p-cactions', 'javascript:wpTextboxReplace()', 'Replace', 'ca-replace', 'Regexp replace for the edit window', 'R', document.getElementById('ca-history')); } }); // /* NAMESPACE REDIRECT Description: Redirects pages that begin with certain prefixes to appropriate namespaces. Example: [[C:Test]] -> [[Category:Test]], [[F:Test]] -> [[File:Test]], [[T:Test]] -> [[Template:Test]] Link: [[User:Gary King/namespace redirect.js]] */ addOnloadHook(function() { if (wgPageName != 'Special:Search') return; var searchText = document.getElementById('searchText'); if (!searchText) return; var searchTerm = searchText.value; var colon = searchTerm.indexOf(':'); if (colon != -1) { var firstPart = searchTerm.substring(0, colon); var secondPart = searchTerm.substring(colon + 1); var pageName = ''; switch (firstPart.toUpperCase()) { case 'C': pageName = 'Category:' + secondPart; break; case 'F': pageName = 'File:' + secondPart; break; case 'T': pageName = 'Template:' + secondPart; break; case 'U': pageName = 'User:' + secondPart; break; } if (pageName != '') window.location = wgServer + '/wiki/' + pageName; } });