Widget:EditSandbox: Difference between revisions

Jump to navigation Jump to search
Matt Pijoan (talk | contribs)
No edit summary
Matt Pijoan (talk | contribs)
No edit summary
 
(58 intermediate revisions by the same user not shown)
Line 2: Line 2:
<script type="text/javascript">
<script type="text/javascript">
function execute(){
function execute(){
try{
addToQueue("Edit'd");
}
 
 
function addToQueue(question){
var api = new mw.Api();
var api = new mw.Api();
getToken();
var result;
}
var pageString =  "User:" + mw.user.name() + "/WBRQueue";
catch(e){
api.get( {
alert('You are not logged in. Please log in to continue')
action: 'query',
}
format: 'json',
        titles: pageString,
export: 'export',
        } , {
ok:function (data) {
        var xml = data.query.export["*"];
    xmlDoc = $.parseXML( xml ),
    $xml = $( xmlDoc ),
    $title = $xml.find( "text" );
 
var pageContent = $title.text().split(',');
pageContent.push(question);
alert(pageContent.toString());
var token = getToken(pageContent.toString());
}});
return result;
}
}


function getToken(){
function getToken(question){
var token;
var api = new mw.Api();
var api = new mw.Api();
api.get( {
api.get( {
Line 18: Line 38:
format: 'json',
format: 'json',
         intoken: 'edit',
         intoken: 'edit',
         titles: 'User:Matt%20Pijoan/GroundZero',
         titles: "User:" + mw.user.name() + "/WBRQueue",
         async: false
         async: false
  }, {
  }, {
ok: function (data) {
ok: function (data) {
alert("yay");
$.each(data.query.pages,  function(index, value){
}});
  var token = value.edittoken;
  addNewSection( "User:" + mw.user.name() + "/WBRQueue",question, token );
})}});
}
function addNewSection( title, content, editToken ) {
    $.ajax({
        url: mw.util.wikiScript( 'api' ),
        data: {
            format: 'json',
            action: 'edit',
            title: title,
            text: content,
            token: editToken
        },
        dataType: 'json',
        type: 'POST',
        success: function( data ) {
            if ( data && data.edit && data.edit.result == 'Success' ) {
                window.location.reload(); // reload page if edit was successful
            } else if ( data && data.error ) {
                alert( 'Error: API returned error code "' + data.error.code + '": ' + data.error.info );
            } else {
                alert( 'Error: Unknown result from API.' );
            }
        },
        error: function( xhr ) {
            alert( 'Error: Request failed.' );
        }
    });
}
}


function execute(){
loginCheck();
}
</script>
</script>
<form>   
<form>   

Latest revision as of 20:11, 28 November 2012