משתמש:מערכת/common.js: הבדלים בין גרסאות בדף
קפיצה לניווט
קפיצה לחיפוש
מ (מערכת העביר את הדף משתמש:מערכת/יצירת ערכים מרובים.js לשם משתמש:מערכת/יצירת דפים מרובים.js בלי להשאיר הפניה) |
מ (מערכת העביר את הדף משתמש:מערכת/יצירת דפים מרובים.js לשם משתמש:מערכת/common.js בלי להשאיר הפניה) |
(אין הבדלים)
|
גרסה מ־16:25, 7 במרץ 2018
//סקריפט יצירת דפים מרובים - כל הזכויות שמורות ליוצר - נוצר על ידי davidnead
$(mw.util.addPortletLink('p-navigation', '#', 'יצירת דפים מרובים')).click(function(){
var dialog = $("<div>").dialog({modal: true, resizable: true, title: "ערכים לייבוא", position: "top", minWidth: 550});
var T = '<p dir="right">תקציר עריכה (ריק כברירת מחדל):</p><textarea id="textareasummary" style="min-width:520px; height:20px;">' + '</textarea>';
T=T+'<p dir="right">רשימת הערכים:</p><textarea id="textarea" style="min-width:520px; height:200px;">' + '</textarea>';
T = T + '<p dir="left"> <button id="btnLinks" style="vertical-align:top;">צור ערכים </button></p>' + '<p dir="right">דו"ח תוצאות:</p><textarea id="textarea1" style="min-width:520px; height:200px;">' + '</textarea>';
dialogHtml = T
dialog.append( dialogHtml);
$("#btnLinks").click(function(){
var textareaContent = $("#textarea").val ()
var pages=textareaContent.split ("*****שם דף*****") //מערך עם כל הערכים
//לולאה - עבור כל אחד מהערכים פצל:
for (var num in pages){
var thisPage = pages[num].split ("*****תחילת דף*****")
var pageName = thisPage[0]
var pageContent = thisPage[1]
if(pageName){pageName=pageName.trim()}
if (pageContent){pageContent=pageContent.replace("\n", "")}
createPage(pageName, pageContent, $("#textareasummary").val())
}
})
function createPage (pageName, pageContent, summary){
var apiUrl = "https://wiki.jewishbooks.org.il/mediawiki/api.php";
function continueWithToken ( token ) {
var fd = new FormData();
var xhr = new XMLHttpRequest();
// First argument is an array!
var bXml = new Blob( [$( 'textarea' ).val()], {
type: 'text/xml'
} );
fd.append( 'format', 'json' );
fd.append( 'action', 'edit' );
// Third parameter is not required but
// You're likely on the safe side using it
fd.append( 'title', pageName );
fd.append( 'text', pageContent );
fd.append( 'token', token );
fd.append( 'summary', summary );
fd.append( 'createonly', "true" );
fd.append( 'token', token );
xhr.onreadystatechange = function() {
if ( 4 !== this.readyState ) return;
if ( 200 === this.status ) {
var R = JSON.parse (this.response)
if (R.edit){
var A=$('#textarea1').val()
$('#textarea1').val(A + "\n" + pageName + " - נוצר בהצלחה")
} else if (R.error){
var A=$('#textarea1').val()
$('#textarea1').val(A + "\n" + pageName + " - יצירת הדף נכשלה. מהסיבה: " + JSON.parse (this.response).error.info)
}
}
};
xhr.open( 'POST', apiUrl );
xhr.send( fd );
}
$.get( apiUrl, {
"action": "query",
"format": "json",
"meta": "tokens"
} ).done( function(r) {
var token = r.query.tokens.csrftoken;
continueWithToken( token );
} );
}
})