//<노위키> // [사용자:ais523/watchlistei.js]), [사용자:ais523], [사용자:ais523]], // 이 스크립트를 사용하려면 [[특수:Watchlist]]]를 선택하고 '가져오기' 또는 '내보내기'에 대한 새 링크를 따르십시오. // 저기. 내보낸 감시 목록은 가져오기를 위해 편집 상자에 복사/붙여넣을 수 있으며 합법적임 // (그러나 다소 난독화된) [[특수:최근 변경사항[changeslinked]]]]. 에서 작동하지 않음 // Internet Explorer, Firefox 1에서 작동함, 다른 브라우저를 확인하지 않음. // 이 스크립트를 설치하려면 가장 쉬운 방법은 {{subst:js User:ais523/watchlistei를 입력하는 것이다.js}에 // [[특수:Mypage/monobook.js]]]를 누르고 캐시를 바이패스하십시오(Windows용 Firefox의 Ctrl-F5). // 내보낸 감시 목록의 각 행은 양식에 있다. // *[cdvencodedpagename] // 이제 이 기능이 소프트웨어의 일부가 되어 이 스크립트가 중복된다는 점에 유의하십시오. 만일(항해사.user에이전트.인덱스오프("MSIE")==-1) // IE에서 정상적으로 실패 { // AJAX 시합을 하다 월리브파작스; // [[WP:US]]] 메인 페이지(wpajax 이름을 wleiwpajax로 변경) 월리브파작스={ 다운로드.:기능을 하다(보따리를 싸다) { // 필수: bundle.properties // 옵션: bundle.onSuccessful(xmlhtprequest, 번들) // 옵션: bundle.onFailure(xmlhttprequest, bundle) // 옵션: 번들.otherStuff OK도, onSuccess and onFailure로 전달 시합을 하다 x = 창문의.XMLHttpRequest ? 새로운 XMLHttpRequest() : 창문의.ActiveXObject ? 새로운 ActiveXObject("마이크로소프트.XMLHTTP") : 거짓의; 만일 (x) { x.온프레미스 체인지=기능을 하다() { x.readyState==4 && 월리브파작스.downloadComplete(x,보따리를 싸다); }; x.개방된("헤드",보따리를 싸다.url,진실의); x.보내다(무효의); } 돌아오다 x; }, downloadComplete:기능을 하다(x,보따리를 싸다) { x.지위==200 && ( 보따리를 싸다.성공 && 보따리를 싸다.성공(x,보따리를 싸다) 진실의 ) ( 보따리를 싸다.실패에 대하여 && 보따리를 싸다.실패에 대하여(x,보따리를 싸다) 빈틈이 없는(x.상태 텍스트)); } }; 시합을 하다 wleiRunOnce=1; // 내보내기 및 가져오기 링크 $(기능을 하다(){ 만일(wgPageName=="특수:감시 목록"&&위치.href.인덱스오프("list/")==-1&&wleiRunOnce) { wleiRunOnce=0; 시합을 하다 t=문서화하다.GetElementBy아이디('바디콘텐츠').getElementsByTagName('hr')[0]; 시합을 하다 n=문서화하다.createElement("p"); t.parentNode.대체 차일드(n,t); n.innerHTML="또한 <a href='http://en.wikipedia.org/wiki/Special:Watchlist/edit>을 할 수 있다.+ "?ais523wlei=수출" 이 감시목록 또는 <a href='http://en.wikipedia.org/wiki/"http://en.wikipedia.org/wiki/"+ "특수:watchlist/edit?ais523wlei=import'는 내보낸 watchlist에서 페이지를 가져온다.<hr/>"; } }); 시합을 하다 wleiExRunOnce=1; // 내보내기: 목록 생성 $(기능을 하다(){ 만일(위치.href.인덱스오프("특수:watchlist/edit?ais523wlei=수출")!=-1&&wleiExRunOnce) { wleiExRunOnce=0; 시합을 하다 a=문서화하다.GetElementBy아이디('바디콘텐츠').getElementsByTagName('input'); 시합을 하다 b=새로운 배열(); b[0]="[h2]수출된 감시 목록:</h2>\n"; 시합을 하다 i=0; 하는 동안에(i<a.길이-1) { b[i+1]="*[[:"+인코드URIComentor(a[i].가치를 매기다)+"]]"; i++; } b[i+1]="[/준비]"; 문서화하다.GetElementBy아이디('바디콘텐츠').innerHTML=b.합류하다('\n'); } }); //가져오기: 감시 목록을 입력할 텍스트 영역 $(기능을 하다(){ 만일(위치.href.인덱스오프("특수:watchlist/edit?ais523wlei=import")!=-1) { 문서화하다.GetElementBy아이디('바디콘텐츠').innerHTML= "가져올 워치리스트:<<textarea id='watchlistImport' 행=20 cols=80></textarea><br/>\n"+ "<a href='javascript:wleiImport()""감시 목록 가져오기+ "아직 처리되지 않은 페이지: <span id='wlein'>0</span>, 재시도: <span id='wleif'>0</span>"+ "(총 재시도 횟수: <span id='wleir'>0</span>, 허용되는 페이지당 최대 4회 재시도 횟수), "+ "succeeded: <span id='wleis'0</span>, 실패: <span id='wleic'>0</span>.<br />\n"+ "<href='http://en.wikipedia.org/wiki/Special:Watchlist'>감시원으로 돌아가십시오.\n<div id='faillist''"; } }); 기능을 하다 wleiImport() { 시합을 하다 a=문서화하다.GetElementBy아이디('watchlistImport').가치를 매기다.갈라지다('\r').합류하다('\n').갈라지다('\n'); 시합을 하다 i=a.길이; 하는 동안에(i--) { 시합을 하다 m=a[i].짝을 맞추다(/^\** *\[\[(.*)\]\] *$/); 만일(m!=정의되지 않은&&m[1]!=정의되지 않은&&m[1]!="") { watchPage사용아약스(m[1]); 문서화하다.GetElementBy아이디('wlein').innerHTML= 1+새로운 숫자(문서화하다.GetElementBy아이디('wlein').innerHTML); } } } 기능을 하다 WleiSuccessful(a,b) { 문서화하다.GetElementBy아이디('wleis').innerHTML= 1+새로운 숫자(문서화하다.GetElementBy아이디('wleis').innerHTML); 만일(b.다시 시도 중) { 문서화하다.GetElementBy아이디('wleif').innerHTML= 새로운 숫자(문서화하다.GetElementBy아이디('wleif').innerHTML)-1; } 다른 { 문서화하다.GetElementBy아이디('wlein').innerHTML= 새로운 숫자(문서화하다.GetElementBy아이디('wlein').innerHTML)-1; } } 기능을 하다 wleiFailure(a,b) { 만일(!b.다시 시도 중) { 문서화하다.GetElementBy아이디('wleif').innerHTML= 1+새로운 숫자(문서화하다.GetElementBy아이디('wleif').innerHTML); 문서화하다.GetElementBy아이디('wlein').innerHTML= 새로운 숫자(문서화하다.GetElementBy아이디('wlein').innerHTML)-1; } b.다시 시도 중++; 만일(b.다시 시도 중<5) { 문서화하다.GetElementBy아이디('wleir').innerHTML= 1+새로운 숫자(문서화하다.GetElementBy아이디('wleir').innerHTML); 창문의.setTimeout(기능을 하다(){월리브파작스.다운로드.(b);},a.getResponseHeader('재시도 후')*1000); } 다른 { 문서화하다.GetElementBy아이디('wleif').innerHTML= 새로운 숫자(문서화하다.GetElementBy아이디('wleif').innerHTML)-1; 문서화하다.GetElementBy아이디('wleic').innerHTML= 새로운 숫자(문서화하다.GetElementBy아이디('wleic').innerHTML)+1; 만일(문서화하다.GetElementBy아이디('faillist').innerHTML=='') 문서화하다.GetElementBy아이디('faillist').innerHTML='실패:'; 문서화하다.GetElementBy아이디('faillist').innerHTML+= '<<</>*[<a href="]+b.url.갈라지다("&maxlag=5").합류하다("")+'">'+b.urlencodedpagename.+''''; } 돌아오다 1; } 기능을 하다 watchPage사용아약스(urlencodedpagename.) { 월리브파작스.다운로드.({url:'http://en.wikipedia.org/w/index.php?title='+urlencodedpagename.+ '&action=watch&maxlag=5', 성공:WleiSuccessful, 실패에 대하여:wleiFailure, 다시 시도 중:0, urlencodedpagename.:urlencodedpagename.}); } } //[/nowiki] 준비 //[카테고리:위키백과 스크립트]]]