مستخدم:Ziad/common6.js
المظهر
يمكن توفير توثيق لسكربت المستخدم هذا في الصفحة : مستخدم:Ziad/common6. |
ملاحظة: بعد الحفظ، قد يلزمك إفراغ الكاش لرؤية التغييرات.
/* تحميل صندوق أدوات التحرير وصندوق البحث */
if ($.inArray(mw.config.get('wgAction'), ['edit' , 'submit']) !== -1) {
importScript('Mediawiki:Edittools.js');
importScript('Mediawiki:CustomizedEditTool.js');
} else if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' ) {
importScript( 'MediaWiki:Common.js/watchlist.js' );
} else if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Upload' ) {
importScript('Mediawiki:Upload-description.js');
}
/*إضافات عامة*/
importScript('Mediawiki:Autoedit.js');
importScript('Mediawiki:CustomSideBarLinks.js');
importScript('Mediawiki:userScriptSandbox.js');
/**
* Collapsible tables
*
* Allows tables to be collapsed, showing only the header. See [[Wikipedia:NavFrame]].
*
* @version 2.0.3 (2014-03-14)
* @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-collapsibleTables.js
* @author [[User:R. Koot]]
* @author [[User:Krinkle]]
* @deprecated Since MediaWiki 1.20: Use class="mw-collapsible" instead which
* is supported in MediaWiki core.
*/
var autoCollapse = 2;
var collapseCaption = '▼';
var expandCaption = '◄';
function collapseTable( tableIndex ) {
var Button = document.getElementById( 'collapseButton' + tableIndex );
var Table = document.getElementById( 'collapsibleTable' + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
var i;
if ( Button.firstChild.data === collapseCaption ) {
for ( i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = 'none';
}
Button.firstChild.data = expandCaption;
} else {
for ( i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
function createClickHandler( tableIndex ) {
return function ( e ) {
e.preventDefault();
collapseTable( tableIndex );
};
}
function createCollapseButtons() {
var tableIndex = 0;
var NavigationBoxes = {};
var Tables = document.getElementsByTagName( 'table' );
var i;
for ( i = 0; i < Tables.length; i++ ) {
if ( $( Tables[i] ).hasClass( 'collapsible' ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( 'tr' )[0];
if ( !HeaderRow ) {
continue;
}
var Header = HeaderRow.getElementsByTagName( 'th' )[0];
if ( !Header ) {
continue;
}
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( 'id', 'collapsibleTable' + tableIndex );
var Button = document.createElement( 'span' );
var ButtonLink = document.createElement( 'a' );
var ButtonText = document.createTextNode( collapseCaption );
// Styles are declared in [[MediaWiki:Common.css]]
Button.className = 'collapseButton';
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( 'id', 'collapseButton' + tableIndex );
ButtonLink.setAttribute( 'href', '#' );
$( ButtonLink ).on( 'click', createClickHandler( tableIndex ) );
ButtonLink.appendChild( ButtonText );
//Button.appendChild( document.createTextNode( '[' ) );
Button.appendChild( ButtonLink );
//Button.appendChild( document.createTextNode( ']' ) );
Header.insertBefore( Button, Header.firstChild );
tableIndex++;
}
}
for ( i = 0; i < tableIndex; i++ ) {
if ( $( NavigationBoxes[i] ).hasClass( 'collapsed' ) ||
( tableIndex >= autoCollapse && $( NavigationBoxes[i] ).hasClass( 'autocollapse' ) )
) {
collapseTable( i );
}
else if ( $( NavigationBoxes[i] ).hasClass ( 'innercollapse' ) ) {
var element = NavigationBoxes[i];
while ((element = element.parentNode)) {
if ( $( element ).hasClass( 'outercollapse' ) ) {
collapseTable ( i );
break;
}
}
}
}
}
$( createCollapseButtons );
/**
* Dynamic Navigation Bars (experimental)
*
* Description: See [[Wikipedia:NavFrame]].
* Maintainers: UNMAINTAINED
*/
/* set up the words in your language */
var NavigationBarHide = collapseCaption;
var NavigationBarShow = expandCaption;
/**
* Shows and hides content and picture (if available) of navigation bars
* Parameters:
* indexNavigationBar: the index of navigation bar to be toggled
**/
window.toggleNavigationBar = function ( indexNavigationBar, event ) {
var NavToggle = document.getElementById( 'NavToggle' + indexNavigationBar );
var NavFrame = document.getElementById( 'NavFrame' + indexNavigationBar );
var NavChild;
if ( !NavFrame || !NavToggle ) {
return false;
}
/* if shown now */
if ( NavToggle.firstChild.data === NavigationBarHide ) {
for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = NavigationBarShow;
/* if hidden now */
} else if ( NavToggle.firstChild.data === NavigationBarShow ) {
for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
event.preventDefault();
};
/* adds show/hide-button to navigation bars */
function createNavigationBarToggleButton() {
var indexNavigationBar = 0;
var NavFrame;
var NavChild;
/* iterate over all < div >-elements */
var divs = document.getElementsByTagName( 'div' );
for ( var i = 0; (NavFrame = divs[i]); i++ ) {
/* if found a navigation bar */
if ( $( NavFrame ).hasClass( 'NavFrame' ) ) {
indexNavigationBar++;
var NavToggle = document.createElement( 'a' );
NavToggle.className = 'NavToggle';
NavToggle.setAttribute( 'id', 'NavToggle' + indexNavigationBar );
NavToggle.setAttribute( 'href', '#' );
$( NavToggle ).on( 'click', $.proxy( window.toggleNavigationBar, window, indexNavigationBar ) );
var isCollapsed = $( NavFrame ).hasClass( 'collapsed' );
/**
* Check if any children are already hidden. This loop is here for backwards compatibility:
* the old way of making NavFrames start out collapsed was to manually add style="display:none"
* to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make
* the content visible without JavaScript support), the new recommended way is to add the class
* "collapsed" to the NavFrame itself, just like with collapsible tables.
*/
for ( NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( 'NavContent' ) ) {
if ( NavChild.style.display === 'none' ) {
isCollapsed = true;
}
}
}
if ( isCollapsed ) {
for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( 'NavContent' ) ) {
NavChild.style.display = 'none';
}
}
}
var NavToggleText = document.createTextNode( isCollapsed ? NavigationBarShow : NavigationBarHide );
NavToggle.appendChild( NavToggleText );
/* Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked) */
for( var j = 0; j < NavFrame.childNodes.length; j++ ) {
if ( $( NavFrame.childNodes[j] ).hasClass( 'NavHead' ) ) {
NavToggle.style.color = NavFrame.childNodes[j].style.color;
NavFrame.childNodes[j].appendChild( NavToggle );
}
}
NavFrame.setAttribute( 'id', 'NavFrame' + indexNavigationBar );
}
}
}
$( createNavigationBarToggleButton );
/**/
if ( $.inArray( mw.config.get("wgPageName"), [ "ويكيبيديا:طلبات_صلاحيات/إعطاء",
"ويكيبيديا:طلبات_صلاحيات/إزالة",
"ويكيبيديا:إخطار_الإداريين/حماية/الحالية",
"ويكيبيديا:إخطار_الإداريين/إزالة_حماية/الحالية",
"ويكيبيديا:إخطار_الإداريين/منع/الحالية",
"ويكيبيديا:إخطار_الإداريين/إزالة_منع/الحالية",
"ويكيبيديا:إخطار_الإداريين/استرجاع/الحالية",
"ويكيبيديا:طلبات_النقل/الحالية"
] ) !== -1 ) {
if ($.inArray("editor", mw.config.get("wgUserGroups")) == -1) {
mw.util.addCSS(" .mw-summary { display:none !important;}");
}
}
/*[[قالب:قائمة أفقية]]*/
var arrowimages={down:["downarrowclass","//upload.wikimedia.org/wikipedia/commons/f/f1/MediaWiki_Vector_skin_action_arrow.svg",10],left:["leftarrowclass","//upload.wikimedia.org/wikipedia/commons/8/8e/MediaWiki_Vector_skin_left_arrow.svg"]};var jqueryslidemenu={animateduration:{over:300,out:300},buildmenu:function(e,t){jQuery(document).ready(function(n){var r=n("#"+e+">ul");var i=r.find("ul").parent();i.each(function(e){var r=n(this);var i=n(this).find("ul:eq(0)");this._dimensions={w:this.offsetWidth,h:this.offsetHeight,subulw:i.outerWidth(),subulh:i.outerHeight()};this.istopheader=r.parents("ul").length==1?true:false;i.css({top:this.istopheader?this._dimensions.h+"px":0});r.children("a:eq(0)").css(this.istopheader?{paddingLeft:t.down[2]}:{}).append('<img src="'+(this.istopheader?t.down[1]:t.left[1])+'" class="'+(this.istopheader?t.down[0]:t.left[0])+'" style="border:0;" />');r.hover(function(e){var t=n(this).children("ul:eq(0)");this._offsets={right:n(this).offset().right,top:n(this).offset().top};var r=this.istopheader?0:this._dimensions.w;r=this._offsets.right+r+this._dimensions.subulw>n(window).width()?this.istopheader?-this._dimensions.subulw+this._dimensions.w:-this._dimensions.w:r;if(t.queue().length<=1){t.css({right:r+"px",width:this._dimensions.subulw+"px"}).slideDown(jqueryslidemenu.animateduration.over)}},function(e){var t=n(this).children("ul:eq(0)");t.slideUp(jqueryslidemenu.animateduration.out)});r.click(function(){n(this).children("ul:eq(0)").hide()})});r.find("ul").css({display:"none",visibility:"visible"})})}};jqueryslidemenu.buildmenu("myslidemenu",arrowimages)
/* [[قالب:مبوبة]] */
importScript("MediaWiki:Tabs.js");
/* [[قالب:ص.م/موقع جغرافي متعدد]] */
if ($.inArray(mw.config.get("wgAction"), [ "view", "purge", "submit" ]) !== -1) {
$(GeoBox_Init)
}
function GeoBox_Init(Element) {
if (!Element) {
Element = document.body
}
var cont = document.getElementsByTagName("div");
if (cont.length == 0) {
return
}
for (var i = 0, ii = 0, m = cont.length; i < m; i++) {
if (!$(cont[i]).hasClass("img_toogle")) {
continue
} else {
ii++
}
cont[i].id = "img_toogle_" + ii;
// FIXME
var Boxes = cont[i].getElementsByClassName("geobox");
var ToggleLinksDiv = document.createElement("ul");
ToggleLinksDiv.id = "geoboxToggleLinks_" + ii;
for (var a = 0, l = Boxes.length; a < l; a++) {
var ThisBox = Boxes[a];
ThisBox.id = "geobox_" + ii + "_" + a;
ThisBox.style.borderTop = "0";
var ThisAlt = ThisBox.getElementsByTagName("img")[0].alt;
var toggle = document.createElement("a");
toggle.id = "geoboxToggle_" + ii + "_" + a;
toggle.appendChild(document.createTextNode(ThisAlt));
toggle.href = "javascript:;";
toggle.onclick = function () {
GeoBox_Toggle(this);
return false
};
var Li = document.createElement("li");
Li.appendChild(toggle);
ToggleLinksDiv.appendChild(Li);
if (a == (l - 1)) {
Li.style.display = "none"
} else {
ThisBox.style.display = "none"
}
}
cont[i].appendChild(ToggleLinksDiv)
}
}
function GeoBox_Toggle(link) {
var ImgToggleIndex = link.id.split("geoboxToggle_").join("").replace(/_.*/g, "");
var GeoBoxIndex = link.id.replace(/.*_/g, "");
var ImageToggle = document.getElementById("img_toogle_" + ImgToggleIndex);
var Links = document.getElementById("geoboxToggleLinks_" + ImgToggleIndex);
var Geobox = document.getElementById("geobox_" + ImgToggleIndex + "_" + GeoBoxIndex);
var Link = document.getElementById("geoboxToggle_" + ImgToggleIndex + "_" + GeoBoxIndex);
if ((!ImageToggle) || (!Links) || (!Geobox) || (!Link)) {
return
}
// FIXME
var AllGeoboxes = ImageToggle.getElementsByClassName("geobox");
for (var a = 0, l = AllGeoboxes.length; a < l; a++) {
if (AllGeoboxes[a] == Geobox) {
AllGeoboxes[a].style.display = ""
} else {
AllGeoboxes[a].style.display = "none"
}
}
var AllToggleLinks = Links.getElementsByTagName("a");
for (var a = 0, l = AllToggleLinks.length; a < l; a++) {
if (AllToggleLinks[a] == Link) {
AllToggleLinks[a].parentNode.style.display = "none"
} else {
AllToggleLinks[a].parentNode.style.display = ""
}
}
}
/* وصلة القائمة الكاملة تحت وصلات لغات الصفحة الرئيسية */
if (mw.config.get('wgPageName') == 'الصفحة_الرئيسية') {
$(function () {
mw.util.addPortletLink('p-lang', '//meta.wikimedia.org/w/index.php?title=List_of_Wikipedias/ar&uselang=ar', 'القائمة الكاملة', 'interwiki-completelist', 'قائمة الويكيبيديات الكاملة');
var nstab = document.getElementById('ca-nstab-main');
if (nstab && mw.config.get('wgUserLanguage') == 'ar') {
while (nstab.firstChild) {
nstab = nstab.firstChild
}
nstab.nodeValue = 'الصفحة الرئيسية'
}
})
}
/* ويكي ميني أطلس */
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400');
/* تحميل سكربت الدردشة الحية */
if (mw.config.get('wgPageName') == 'ويكيبيديا:قناة_الدردشة/حي') {
importScript('Mediawiki:IRC.js');
}
/* كود يعمل مع بوابة المشاركة */
if (mw.config.get('wgPageName') == 'ويكيبيديا:بوابة_المشاركة/قاعة_الشاي/أسئلة') {
importScript('MediaWiki:Gadget-teahouse.js');
importStylesheet('MediaWiki:Gadget-teahouse.css');
}
/* دالة مساعدة لإضافة زر جديد لأحد قوائم الواجهة */
function addLink(e,t,n,r,i,s,o){var u=document.createElement("a");u.href=t;u.appendChild(document.createTextNode(n));var a=document.createElement("li");if(r)a.id=r;a.appendChild(u);var f=document.getElementById(e).getElementsByTagName("ul")[0];if(!o){f.appendChild(a)}else if(o.cloneNode){f.insertBefore(a,o)}else{f.insertBefore(a,document.getElementById(o))}if(r){if(s&&i){ta[r]=[s,i]}else if(s){ta[r]=[s,""]}else if(i){ta[r]=["",i]}}akeytt();return a}
/* نصوص لإنترنت إكسبلورر */
if ($.client.profile().name === 'msie') {
importScript('MediaWiki:Common.js/IEFixes.js');
}
/* [[قالب:لائحة مسطحة]] */
if ($.client.profile().name == 'msie') {
/* Add pseudo-selector class to last child list items in IE 8 */
if ($.client.profile().versionBase == '8') {
$('.hlist').find('dd:last-child, dt:last-child, li:last-child').addClass('hlist-last-child');
}
/* Generate interpuncts and parens for IE < 8 */
if ($.client.profile().versionBase < '8') {
$('.hlist').find('dt + dd, dt + dt').prev().append('<b>:</b> ');
$('.hlist').find('dd + dd, dd + dt, li + li').prev().append('<b>·</b> ');
$('.hlist').find('dl dl, ol ol, ul ul').prepend('( ').append(') ');
}
}
/* [[قالب:اسم مستخدم]] */
function UsernameReplace() {
if(window.disableUsernameReplace || mw.config.get('wgUserName') == null) return;
var un = $('span.insertusername');
for (var i=0;i<un.length;i++) {
var d = 0;
for(var j=0;j<un[i].childNodes.length;j++) {
if(un[i].childNodes[j].nodeType == 3 && d < 1) {
//find first text node and replace;
un[i].childNodes[j].nodeValue = mw.config.get('wgUserName');
d++;
}
}
}
}
$(UsernameReplace);
/* تعريب كلمة تحويل بالإنجليزية المدرجة في شريط أدوات التحرير
** [[bugzilla:24114]] */
(function () {
if (window.wgWikiEditorEnabledModules && wgWikiEditorEnabledModules.toolbar) {
try {
$('#wpTextbox1').bind('wikiEditor-toolbar-buildSection-advanced', function (event, section) {
section.groups.insert.tools.redirect.action.options.pre = '#تحويل [[';
});
} catch (e) {
// Woopsie, die without a notice
}
}
})();
/**
* Redirect User:Name/skin.js and skin.css to the current skin's pages
* (unless the 'skin' page really exists).
*
* Dependencies: mediawiki.util
*
* @source www.mediawiki.org/wiki/Snippets/Redirect_skin.js
* @revision 2014-05-19
*/
if ( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgNamespaceNumber' ) === 2 ) {
var titleParts = mw.config.get( 'wgPageName' ).split( '/' );
// Make sure there was a part before and after the slash
// And that the latter is 'skin.js' or 'skin.css'
if ( titleParts.length == 2 ) {
var userSkinPage = titleParts[0] + '/' + mw.config.get( 'skin' );
if ( titleParts[1] === 'skin.js' ) {
location.href = mw.util.getUrl( userSkinPage + '.js' );
} else if ( titleParts[1] === 'skin.css' ) {
location.href = mw.util.getUrl( userSkinPage + '.css' );
}
}
}
/* [[قالب:مب]]
** [[mw:Snippets/Load_JS_and_CSS_by_URL]] */
var extraCSS = mw.util.getParamValue("withCSS");
if (extraCSS && extraCSS.match(/^MediaWiki:[^&<>=%]*\.css$/)) {
importStylesheet(extraCSS);
}
var extraJS = mw.util.getParamValue("withJS");
if (extraJS && extraJS.match(/^MediaWiki:[^&<>=%]*\.js$/)) {
importScript(extraJS);
}
/* Add class=mw-content-ltr to class=ltr and dir=ltr */
$(".ltr, div[dir*='ltr']").addClass("mw-content-ltr");
/* Enable nulledit=true with [[User:Splarka/nulledit.js]] */
if (mw.config.get("wgAction") == "edit" && queryString("nulledit") == "true") {
$(nullEdit);
}
function nullEdit() {
document.getElementById("wpSave").click();
}
function queryString(d) {
var b = RegExp("[&?]" + d + "=([^&]*)");
var c;
if (c = b.exec(document.location)) {
try {
return decodeURI(c[1]);
} catch (a) {}
}
return null;
}
/* [[قالب:أصد]] و[[قالب:يونيكود]] */
if (navigator.appVersion.search(/windows nt 5/i) !== -1) {
mw.util.addCSS('.IPA { font-family: "Tahoma"; } ' +
'.Unicode { font-family: "Tahoma"; } ');
}
//Help Abuse Filter to tag Recreated Pages which have delete log
$(function () {
if ($.inArray(mw.config.get('wgAction'), ['edit', 'submit']) !== -1 && $('.mw-warning-with-logexcerpt .mw-logline-delete').length !== 0) {
$('#editform input[type=submit]').click(function () { $('#wpSummary').val($('#wpSummary').val() + ""); });
}
});