MediaWiki:Gadget-CreateAccountOnSubmit.js: Difference between revisions

From Tsadra Foundation Advanced Contemplative Scholarships
(by SublimeText.Mediawiker)
Tag: Reverted
(by SublimeText.Mediawiker)
Tag: Manual revert
 
(31 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 12: Line 13:
api.get( caTokenPrms ).done( function ( data ) {
api.get( caTokenPrms ).done( function ( data ) {


var token = data.query.tokens.createaccounttoken,
console.log( data );
caFirstName = $('#caFirstName').val(),
 
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(),
caLastName = $('#caLastName').val(),
caRealName = caFirstName + ' ' + caLastName,
caEmail = $('#caEmail').val(),
caEmail = $('#caEmail').val(),
caUsername = caFirstName + caLastName;
caUsername = caFirstName + caLastName;


console.log( token );
console.log( 'caCaptchaId: ' + caCaptchaId );
console.log( caUsername );
console.log( 'token: ' + token );
console.log( caEmail );
console.log( 'caUsername: ' + caUsername );
 
console.log( 'caRealName: ' + caRealName );
 
console.log( 'caEmail: ' + caEmail );
 
var params = {
action: 'emailuser',
target: 'Jeremi',
subject: 'Testing emailing',
text: 'Just wanted to test email.',
format: 'json'
},
api = new mw.Api();
 
api.postWithToken( 'csrf', params ).done( function ( data ) {
console.log( data );
} );
 


var caPrms = {
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',
reason: 'New scholarship applicant',
mailpassword: true,
email: caEmail,
email: caEmail,
createreturnurl: 'https://tfacs.tsadra.org',
captchaId: caCaptchaId,
createtoken: token,
captchaInfo: 'Solve the math problem to get through.',
captchaWord: caCaptchaAnswer,
format: 'json'
format: 'json'
};
};

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 );
		} );

	} );

} );