Move CasLogin logic to controller class and logic object in react-sdk

This commit is contained in:
Steven Hammerton 2015-10-12 10:10:26 +01:00
parent a8d51cdf58
commit 353af6c647
1 changed files with 5 additions and 18 deletions

View File

@ -20,25 +20,11 @@ var React = require('react');
var MatrixClientPeg = require('matrix-react-sdk/lib/MatrixClientPeg'); var MatrixClientPeg = require('matrix-react-sdk/lib/MatrixClientPeg');
var CasLoginController = require('matrix-react-sdk/lib/controllers/organisms/CasLogin');
module.exports = React.createClass({ module.exports = React.createClass({
displayName: 'CasLogin', displayName: 'CasLogin',
mixins: [CasLoginController],
getInitialState: function() {
var splitLocation = window.location.href.split('/');
return {serviceUrl: splitLocation[0] + "//" + splitLocation[2]};
},
onCasClicked: function(ev) {
var serviceRedirectUrl = this.state.serviceUrl + "/#/login/cas";
var self = this;
MatrixClientPeg.get().getCasServer().done(function(data) {
var serverUrl = data.serverUrl + "/login?service=" + encodeURIComponent(serviceRedirectUrl);
window.location.href=serverUrl
}, function(error) {
self.setStep("stage_m.login.cas");
self.setState({errorText: 'Login failed.'});
});
},
render: function() { render: function() {
return ( return (
@ -47,4 +33,5 @@ module.exports = React.createClass({
</div> </div>
); );
} }
});
});