MediaWiki:Gadget-CreateAccountOnSubmit.js: Difference between revisions
From Tsadra Foundation Advanced Contemplative Scholarships
(by SublimeText.Mediawiker) |
(by SublimeText.Mediawiker) Tag: Manual revert |
||
| (48 intermediate revisions by the same user not shown) | |||
| Line 4: | Line 4: | ||
var caTokenPrms = { | var caTokenPrms = { | ||
action: 'query', | action: 'query', | ||
meta: 'tokens', | meta: 'authmanagerinfo|tokens', | ||
amirequestsfor: 'create', | |||
type: 'createaccount', | type: 'createaccount', | ||
format: 'json' | format: 'json' | ||
| Line 10: | Line 11: | ||
api = new mw.Api(); | api = new mw.Api(); | ||
api.get( caTokenPrms ).done( function ( data ) { | api.get( caTokenPrms ).done( function ( data ) { | ||
var token = data.query.tokens.createaccounttoken, | console.log( data ); | ||
caPrms = { | var token = data.query.tokens.createaccounttoken; | ||
var caCaptchaId = data.query.authmanagerinfo.requests[0].fields.captchaId.value, | |||
caCaptchaMath = data.query.authmanagerinfo.requests[0].fields.captchaInfo.value; | |||
caCaptchaMath = caCaptchaMath.replace(' =',''); | |||
var caCaptchaAnswer = eval(caCaptchaMath); | |||
console.log( 'Captcha: ' + caCaptchaMath + ': ' + caCaptchaAnswer ); | |||
var caFirstName = $('#caFirstName').val(), | |||
caLastName = $('#caLastName').val(), | |||
caRealName = caFirstName + ' ' + caLastName, | |||
caEmail = $('#caEmail').val(), | |||
caUsername = caFirstName + caLastName; | |||
console.log( 'caCaptchaId: ' + caCaptchaId ); | |||
console.log( 'token: ' + token ); | |||
console.log( 'caUsername: ' + caUsername ); | |||
console.log( 'caRealName: ' + caRealName ); | |||
console.log( 'caEmail: ' + caEmail ); | |||
var caPrms = { | |||
action: 'createaccount', | action: 'createaccount', | ||
createreturnurl: 'https://tfacs.tsadra.org', | |||
createtoken: token, | |||
username: caUsername, | username: caUsername, | ||
realname: caRealName, | |||
mailpassword: true, | |||
reason: 'New scholarship applicant', | |||
email: caEmail, | email: caEmail, | ||
captchaId: caCaptchaId, | |||
captchaInfo: 'Solve the math problem to get through.', | |||
captchaWord: caCaptchaAnswer, | |||
format: 'json' | format: 'json' | ||
}; | }; | ||
api.post( caPrms ).done( function ( data ) { | api.post( caPrms ).done( function ( data ) { | ||
console.log( ' | console.log( data.createaccount.status + ': ' + data.createaccount.messagecode + '; ' + data.createaccount.message ); | ||
} ); | } ); | ||
Latest revision as of 06:01, 14 May 2024
$("#TfacsSubmitApplication").click( function(event) {
event.preventDefault();
var caTokenPrms = {
action: 'query',
meta: 'authmanagerinfo|tokens',
amirequestsfor: 'create',
type: 'createaccount',
format: 'json'
},
api = new mw.Api();
api.get( caTokenPrms ).done( function ( data ) {
console.log( data );
var token = data.query.tokens.createaccounttoken;
var caCaptchaId = data.query.authmanagerinfo.requests[0].fields.captchaId.value,
caCaptchaMath = data.query.authmanagerinfo.requests[0].fields.captchaInfo.value;
caCaptchaMath = caCaptchaMath.replace(' =','');
var caCaptchaAnswer = eval(caCaptchaMath);
console.log( 'Captcha: ' + caCaptchaMath + ': ' + caCaptchaAnswer );
var caFirstName = $('#caFirstName').val(),
caLastName = $('#caLastName').val(),
caRealName = caFirstName + ' ' + caLastName,
caEmail = $('#caEmail').val(),
caUsername = caFirstName + caLastName;
console.log( 'caCaptchaId: ' + caCaptchaId );
console.log( 'token: ' + token );
console.log( 'caUsername: ' + caUsername );
console.log( 'caRealName: ' + caRealName );
console.log( 'caEmail: ' + caEmail );
var caPrms = {
action: 'createaccount',
createreturnurl: 'https://tfacs.tsadra.org',
createtoken: token,
username: caUsername,
realname: caRealName,
mailpassword: true,
reason: 'New scholarship applicant',
email: caEmail,
captchaId: caCaptchaId,
captchaInfo: 'Solve the math problem to get through.',
captchaWord: caCaptchaAnswer,
format: 'json'
};
api.post( caPrms ).done( function ( data ) {
console.log( data.createaccount.status + ': ' + data.createaccount.messagecode + '; ' + data.createaccount.message );
} );
} );
} );