Modified matrixService.register to specify if captcha results should be sent with the registration request. This is toggleable via useCaptcha in register-controller.
This commit is contained in:
parent
0280176ccd
commit
130458385e
|
@ -84,15 +84,33 @@ angular.module('matrixService', [])
|
||||||
prefix: prefixPath,
|
prefix: prefixPath,
|
||||||
|
|
||||||
// Register an user
|
// Register an user
|
||||||
register: function(user_name, password, threepidCreds) {
|
register: function(user_name, password, threepidCreds, useCaptcha) {
|
||||||
// The REST path spec
|
// The REST path spec
|
||||||
var path = "/register";
|
var path = "/register";
|
||||||
|
|
||||||
return doRequest("POST", path, undefined, {
|
var data = {
|
||||||
user_id: user_name,
|
user_id: user_name,
|
||||||
password: password,
|
password: password,
|
||||||
threepidCreds: threepidCreds
|
threepidCreds: threepidCreds
|
||||||
});
|
};
|
||||||
|
|
||||||
|
if (useCaptcha) {
|
||||||
|
// Not all home servers will require captcha on signup, but if this flag is checked,
|
||||||
|
// send captcha information.
|
||||||
|
// TODO: Might be nice to make this a bit more flexible..
|
||||||
|
var challengeToken = Recaptcha.get_challenge();
|
||||||
|
var captchaEntry = Recaptcha.get_response();
|
||||||
|
var captchaType = "m.login.recaptcha";
|
||||||
|
|
||||||
|
data.captcha = {
|
||||||
|
type: captchaType,
|
||||||
|
challenge: challengeToken,
|
||||||
|
response: captchaEntry
|
||||||
|
};
|
||||||
|
console.log("Sending Captcha info: " + JSON.stringify(data.captcha));
|
||||||
|
}
|
||||||
|
|
||||||
|
return doRequest("POST", path, undefined, data);
|
||||||
},
|
},
|
||||||
|
|
||||||
// Create a room
|
// Create a room
|
||||||
|
|
|
@ -19,6 +19,8 @@ angular.module('RegisterController', ['matrixService'])
|
||||||
function($scope, $rootScope, $location, matrixService, eventStreamService) {
|
function($scope, $rootScope, $location, matrixService, eventStreamService) {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
|
var useCaptcha = false;
|
||||||
|
|
||||||
// FIXME: factor out duplication with login-controller.js
|
// FIXME: factor out duplication with login-controller.js
|
||||||
|
|
||||||
// Assume that this is hosted on the home server, in which case the URL
|
// Assume that this is hosted on the home server, in which case the URL
|
||||||
|
@ -87,7 +89,7 @@ angular.module('RegisterController', ['matrixService'])
|
||||||
};
|
};
|
||||||
|
|
||||||
$scope.registerWithMxidAndPassword = function(mxid, password, threepidCreds) {
|
$scope.registerWithMxidAndPassword = function(mxid, password, threepidCreds) {
|
||||||
matrixService.register(mxid, password, threepidCreds).then(
|
matrixService.register(mxid, password, threepidCreds, useCaptcha).then(
|
||||||
function(response) {
|
function(response) {
|
||||||
$scope.feedback = "Success";
|
$scope.feedback = "Success";
|
||||||
// Update the current config
|
// Update the current config
|
||||||
|
@ -154,7 +156,9 @@ angular.module('RegisterController', ['matrixService'])
|
||||||
};
|
};
|
||||||
|
|
||||||
$scope.init = function() {
|
$scope.init = function() {
|
||||||
setupCaptcha();
|
if (useCaptcha) {
|
||||||
|
setupCaptcha();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
}]);
|
}]);
|
||||||
|
|
Loading…
Reference in New Issue