Content deleted Content added
1.4 |
1.5 |
||
Line 1:
/// Gadget-pageLinkHelper.js
/// 2014-12-
/// Fingerprint:#0#
///<nowiki>
(function(mw,$){
"use strict";
var Version=1.
function $factory(access){
var space="4px",style="#808080 1px solid",$r=$("<div>");
Line 30:
Env.$anchor.after($apply);}}
return r;}
function fiat(apply,at){
var $div=$("#mw-diff-"+at+"title1"),id,s,$a,$span;
if($div.length){
id=apply;
}else{▼
$a=$div.find("a").eq(0);
s=$a.attr("href");
id=mw.util.getParamValue("oldid",s);}
if(id){
s="[["+Env.spcNS+":PermanentLink/"+id+"]]";
$span=$("<span>");
$span.attr({"class":Sign+" "+Sign+"DiffRev"});
$span.css({"font-family":"monospace","margin-left":"1em"});
$span.text(s);
$div.append($span);}}}
function feature(applied){
var r;
Line 54 ⟶ 70:
i=parseInt(id1,10);
if(id2){
j=parseInt(id2,10);
if(isNaN(i)){
id2=i;▼
}else{
id1=j;}
▲if(!isNaN(j)){
}else{
▲if(i>j){
if(!isNaN(j)&&i>j){
id2=i;
id1=j;
if(id2==="prev"){
id2=false;}
}else if(isNaN(i)){
id1=false;
}else{
id1=i;}}
if(id1){
show="[["+Env.spcNS+":Diff/"+id1+(id2?"/"+id2:"")+"]]"; $span=$("<span>");
$span.text(show);
$div=$factory(sign);
$div.append($span);
$float($div);
if(id2){
fiat(id1,"o");
fiat(id2,"n");
}else{
fiat(false,"o");
fiat(false,"n");}}}
freezer(true);}▼
function freeze(){
var sign=Sign+"Permalink",$div=$("#"+sign),show,special,swift,$a,$br,$spanBeg,$spanEnd;
Line 88 ⟶ 116:
Env.oldid=mw.config.get("wgCurRevisionId");}
$div=$factory(sign);
special=mw.config.get("wgFormattedNamespaces")["-1"]+":
swift="?title="+mw.util.wikiUrlencode(Env.wgPageName);
$spanBeg=$("<span>");
Line 97 ⟶ 125:
if(Env.oldid){
$div.append($spanBeg.clone());
show=special+"
$a.attr({"href":mw.util.getUrl(show)+swift});
$a.text(show);
Line 106 ⟶ 134:
$a=$("<a>");}
$div.append($spanBeg);
show=special+"Redirect/page/"+Env.curid;
$a.attr({"href":mw.util.getUrl(show)+swift});
$a.text(show);
Line 198 ⟶ 226:
window.history.___replaceState(caused,show,swap);
window.history.___pushState(caused,showed,state);}}}
function further(amount){
var $results=$("#mw-content-text li"),n=$results.length,i,j,shift,special,start,strip,$a,$li;
if(n){
special="/wiki/"+mw.config.get("wgFormattedNamespaces")["-1"]+":";
for(i=0;i<n;i++){
$li=$results.eq(i).find("a");
for(j=0;j<amount;j++){
$a=$li.eq(j);
strip=$a.attr("href");
start=mw.util.getParamValue("oldid",strip);
if(start){
strip=strip.replace(/&oldid=\d+\b/,"")
.replace(/&curid=\d+\b/,"");
shift=mw.util.getParamValue("diff",strip);
if(shift){
strip=strip.replace(/&diff=\d+\b/,"");
shift="Diff/"+start+"/"+shift;
}else{
shift="PermanentLink/"+start;}
shift=special+shift+"$1";
strip=strip.replace(/^.+(\?title=.+)$/,shift);
$a.attr("href",strip);}}}}}
function fire(){
Env=
switch(Env.wgCanonicalSpecialPageName){
case "Diff":
flip();
break;
case "Contributions":
further(2);
break;
case "Watchlist":
further(1);
break;}
}else{
Env.diff=mw.util.getParamValue("diff");
Env.oldid=mw.util.getParamValue("oldid");
if(Env.diff
flip();
}else{
▲freezer(true);
Env.wgAction=mw.config.get("wgAction");
▲}else if(!Env.wgCanonicalSpecialPageName){
case "history":
further(3);
break;
case "view":
Env.curid=mw.util.getParamValue("curid");
if(Env.curid||Env.oldid){
Line 214 ⟶ 280:
freezer(true);}
fresh();
Env.wgRedirectedFrom=mw.config.get("wgRedirectedFrom");
if(Env.wgRedirectedFrom){
from();}
break;
▲}else{
default:
freezer(true);}}}}
if(mw.loader.getState(Signature)!=="ready"){
mw.loader.state(Signature,"ready");
|