تێبینی: دوای پاشەکەوتکردن، پێویستە کاشی وێبگەڕەکەت پاک بکەیتەوە تا گۆڕانکارییەکان ببینیت. بۆ گووگڵ کڕۆم، فایەرفۆکس، مایکرۆسۆفت ئێج و سافاری: پەنجە لەسەر دوگمەی ⇧ Shift ڕاگرە و کرتە لەسەر Reload بکە. بۆ وردەکاری و ڕێنمایییەکان لەسەر وێبگەڕەکانی تر، بڕوانە ئێرە.
/* ======================================================== *\** StatusCheck - JavaScript User چالاک Status Checker** for Wikipedia**** Created by Alex Barley [[User:Ale_jrb]]**\* ======================================================== */// the following settings are used in this script:if(offlineAfter==null)varofflineAfter=(15*60);// number of seconds after which a user is considered ناچالاک (default: 15 * 60 seconds)if(statCloseOnClick==null)varstatCloseOnClick=true;// whether to close the status window when clicking on itif(statPosition==null)varstatPosition=newArray(20,600);// position of the status window [left, top, right, bottom]//main scriptfunctionstatusCheck(){this.launch=function(){// launch helper. check whether there is a deletion tag on this page.if((mw.config.get('wgNamespaceNumber')==2)||(mw.config.get('wgNamespaceNumber')==3)||(window.location.href.indexOf('Special:Contributions/')>-1)){this.control=newstatusCheck_controller();this.control.runCheck();}else{returnfalse;/* do nothing!*/}};}functionstatusCheck_controller(){varstatusCheck=this;if(mw.config.get('wgPageName')=='Special:Contributions'){this.userName=window.location.href.substr(window.location.href.indexOf('Special:Contributions/')+22);if(this.userName=='')returnfalse;}else{if(mw.config.get('wgTitle').indexOf('/')>-1){this.userName=mw.config.get('wgTitle').substr(0,mw.config.get('wgTitle').indexOf('/'));}else{this.userName=mw.config.get('wgTitle');}}this.runCheck=function(callback){switch(callback){default:statusCheck.interface=newwa_window();statusCheck.interface.win_left=statPosition[0];statusCheck.interface.win_top=statPosition[1];if(statPosition[2]!=null)statusCheck.interface.win_right=statPosition[2];if(statPosition[3]!=null)statusCheck.interface.win_bottom=statPosition[3];statusCheck.interface.win_width=110;statusCheck.interface.win_height=35;statusCheck.interface.win_fontsize=10;statusCheck.interface.win_bg='#dddddd';statusCheck.interface.win_bd='#aaaaaa';statusCheck.interface.win_bd_wd=1;statusCheck.interface.win_alpha=0.75;statusCheck.interface.win_pos='fixed';statusCheck.interface.win_content='<div style="width: 100px; margin: auto; margin-top: 2px; text-align: center; font-size: 1.15em;">بار دەکرێت...</div><div style="width: 100px; margin: auto; margin-top: 7px; text-align: center; font-size: 0.85em;">پشکنەر</div>';statusCheck.interface.applyAll();statusCheck.runCheck('1');break;case'1':statusCheck.user=newwa_mediawikiUser(this.userName);statusCheck.user.getUserContribs(1,function(){statusCheck.runCheck('2');});break;case'2':statusCheck.user.getUserLogs(1,function(){statusCheck.runCheck('3');});break;case'3':// regex extract data: [0] - year; [1] - month; [2] - day; [3] - hour; [4] - minutes; [5] - secondsvarregTest=/([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})Z/;statusCheck.lastEdit=[];vartempCheck=[];tempCheck=regTest.exec(statusCheck.user.editDetails[0]['timestamp']);if(tempCheck!=null){statusCheck.lastEdit=tempCheck.slice(1);}else{statusCheck.lastEdit=false;}statusCheck.lastAction=[];vartempCheck2=[];tempCheck2=regTest.exec(statusCheck.user.logDetails[0]['timestamp']);if(tempCheck2!=null){statusCheck.lastAction=tempCheck2.slice(1);}else{statusCheck.lastAction=false;}// convert both timestamps to secondsif(statusCheck.lastEdit!=false){vartimeEdit=newDate();timeEdit.setFullYear(statusCheck.lastEdit[0],statusCheck.lastEdit[1]-1,statusCheck.lastEdit[2]);timeEdit.setHours(statusCheck.lastEdit[3]);timeEdit.setMinutes(statusCheck.lastEdit[4]);timeEdit.setSeconds(statusCheck.lastEdit[5]);varlastEdit=(timeEdit.getTime()/1000);}else{varlastEdit=0;}if(statusCheck.lastAction!=false){vartimeAction=newDate();timeAction.setFullYear(statusCheck.lastAction[0],statusCheck.lastAction[1]-1,statusCheck.lastAction[2]);timeAction.setHours(statusCheck.lastAction[3]);timeAction.setMinutes(statusCheck.lastAction[4]);timeAction.setSeconds(statusCheck.lastAction[5]);varlastAction=(timeAction.getTime()/1000);}else{varlastAction=0;}varmostRecent;if(lastAction>=lastEdit){mostRecent=lastAction;}else{mostRecent=lastEdit;}varcurrentTime=newDate();currentTime=((currentTime.getTime()/1000)+(currentTime.getTimezoneOffset()*60));if((currentTime-mostRecent)>offlineAfter){/*offline*/statusCheck.online=false;}else{/*online*/statusCheck.online=true;}// build interfacestatusCheck.runCheck('4');break;case'4':varcontribsLink='(<a href="'+mw.config.get('wgServer')+mw.config.get('wgArticlePath').replace('$1','Special:Contributions')+'/'+statusCheck.userName+'">بەشدارییەکان</a>)';if(statusCheck.online==true){statusCheck.interface.win_bg='#bbddbb';statusCheck.interface.win_bd='#99cc99';statusCheck.interface.win_content='<div style="width: 100px; margin: auto; margin-top: 2px; text-align: center; font-size: 1.15em; color: #00aa00;">چالاک</div><div style="width: 100px; margin: auto; margin-top: 7px; text-align: center; font-size: 0.85em;"> '+contribsLink+'</div>';}else{statusCheck.interface.win_bg='#ddbbbb';statusCheck.interface.win_bd='#cc9999';statusCheck.interface.win_content='<div style="width: 100px; margin: auto; margin-top: 2px; text-align: center; font-size: 1.15em; color: #dd3333;">ناچالاک</div><div style="width: 100px; margin: auto; margin-top: 7px; text-align: center; font-size: 0.85em;">پشکنەر '+contribsLink+'</div>';}statusCheck.interface.win_alpha=0.95;statusCheck.interface.win_cursor='pointer';statusCheck.interface.win_func=function(){statusCheck.interface.fade(0.3);};statusCheck.interface.applyAll();break;}};}// -- run programfunctionlaunchstatusCheck(){// lib protowa_window.prototype=newwa_document();wa_element.prototype=newwa_document();// init objectvarobj_statusCheck=newstatusCheck();obj_statusCheck.launch();returntrue;}// $.getScript("https://en.wikipedia.org/w/index.php?title=User:Ale_jrb/Scripts/waLib.js&action=raw&format=text/javascript", function() {$(document).ready(launchstatusCheck);});