User:Livitup/SimpleVote2012-code.js: Difference between revisions

Content deleted Content added
create
 
maintenance: more info ReferenceError: Simplevote is not defined
 
(6 intermediate revisions by one other user not shown)
Line 1:
// for [[User:Livitup]]
// <nowiki>
if(typeof Simplevote.afd !== new Object('undefined'); {
Simplevote.afd.normal() = {};
if( typeof( SimplevoteConfig.useAfdIcons ) == 'undefined' ) {
SimplevoteConfig.useAfdIcons = truefalse;
addOnloadHook( function() {
Simplevote.afd.normal();
}
);
Simplevote.afd.normal = function() {
if(mw.config.get('wgPageName').indexOf( 'Wikipedia:Articles_for_deletion/Log/') != -1 ) { // yes its redundant, but it works for safety purposes
// afdhelper code goes here
var anchors = new Array()[];
var oldanchors = document.getElementById('bodyContent').getElementsByTagName('a');
for (var i=0; i < oldanchors.length; i++) {
Line 22 ⟶ 21:
var article = matches[1];
var na = document.createElement('a');
var query = new QueryStringMorebits.queryString( anchors[i].href.split('?',2)[1].toString() );
var link = query.get('title');
na.href = "javascript:Simplevote.afd.voteon('"+escape(link).replace(/_/g,' ')+"')";
Line 34 ⟶ 33:
}
Simplevote.afd.voteon = function(link) {
var Window = new SimpleWindowMorebits.simpleWindow( 600, 200 );
Window.setTitle( "Create a vote" );
var form = new QuickFormMorebits.quickForm( Simplevote.afd.voteon.evaluate );
var categories = form.append( {
type: 'select',
Line 52 ⟶ 51:
label: 'Keep',
value: 'Symbol keep vote.svg|Keep'
} );
categories.append( {
type: 'option',
label: 'Weak Delete',
value: 'Symbol delete vote.svg|Weak Delete'
} );
categories.append( {
type: 'option',
label: 'Weak Keep',
value: 'Symbol keep vote.svg|Weak Keep'
} );
categories.append( {
Line 112 ⟶ 121:
reason: form.reason.value
};
var query = {
'title': form.link.value,
'action': 'submit'
};
Status.init( form );
'title': var link = form.link.value, ;
Wikipedia.actionCompleted.redirect = null; // we will try null and see if it works, was previously wgPageName
Wikipedia.actionCompleted.notice = "Adding vote";
StatusMorebits.status.init( form );
var wikipedia_wiki = new Wikipedia.wiki( 'Grabbing vote page for article ' + form.link.value.split('/',2)[1], query, Simplevote.afd.voteon.callbacks.main );
Morebits.simpleWindow.setButtonsEnabled(false);
wikipedia_wiki.params = params;
wikipedia_wiki.get();
//Morebits.wiki.actionCompleted.redirect = mw.config.get('wgPageName');
WikipediaMorebits.wiki.actionCompleted.notice = "Adding vote";
var wikipedia_wikiwikipedia_page = new WikipediaMorebits.wiki.page( link, 'Grabbing vote page for article ' + form.link.value.split('/',2)[1], query, Simplevote.afd.voteon.callbacks.main );
wikipedia_page.setCallbackParameters(params);
wikipedia_page.load(Simplevote.afd.voteon.callbacks.main);
}
Simplevote.afd.voteon.callbacks = {
main: function(selfpageobj) {
// code to make the vote goes here - self.params.vote, and self.params.reason are available - responseXML should be available too
var rawvoteparams = self.paramspageobj.votegetCallbackParameters();
var reasonrawvote = self.params.reasonvote;
var reason = params.reason;
var form = self.responseXML.getElementById('editform');
var text = pageobj.getPageText();
if( !form ) {
// StatusMorebits.status.info( 'Automatically adding vote to page text...' );
// Status.error( 'Failed to retrieve edit form.' );
return;
}
var text = form.wpTextbox1.value; // now we have it in a nice var, we can do various operations on it
// Status.info( 'Automatically adding vote to page text...' );
var votearr = rawvote.split('|');
var votetext = votearr[votearr.length-1];
if(reason != '') {
temptext = '\'\'\'' + votetext + '\'\'\' ' + reason + ' ~~' + '~~';
} else {
temptext = '\'\'\'' + votetext + '\'\'\' ~~' + '~~';
}
for(var i=0; i<votearr.length-1; i++) {
if(i==0) {
images = '[[ImageFile:' + votearr[i] + '|15px]]';
} else {
images += '[[ImageFile:' + votearr[i] + '|15px]]';
}
}
if(SimplevoteConfig.useAfdIcons) {
temptext = '\n* ' + images + ' ' + temptext;
} else {
temptext = '\n* ' + temptext;
}
if(votetext == 'Comment') {
summary = 'Added ' + votetext.toLowerCase() + SimplevoteConfig.summaryAd + '.';
} else {
summary = 'Voted ' + votetext.toLowerCase() + SimplevoteConfig.summaryAd + '.';
}
text += temptext;
// alert(text); // DEBUG
pageobj.setEditSummary(summary);
var postData = {
pageobj.setPageText(text);
'wpMinoredit': undefined,
selfpageobj.postsave( postData );
'wpWatchthis': undefined,
'wpStarttime': form.wpStarttime.value,
'wpEdittime': form.wpEdittime.value,
'wpAutoSummary': form.wpAutoSummary.value,
'wpEditToken': form.wpEditToken.value,
'wpSummary': summary,
'wpTextbox1': text
};
// Status.info( 'Saving changes...' );
self.post( postData );
// Status.info( 'Done' )
}
addOnloadHook$( function() {
Simplevote.afd.normal();
} );
}
// </nowiki>