var React = require("react"); var NavigationActions = require('../../actions/navigationActions'); var UserActions = require('../../actions/userActions'); var Router = require('react-router'); var Link = Router.Link; var RibicaValidationMixin = require('../../components/shared/mixins/ribicaValidationMixin'); var ValidationUtils = require('../../utils/validation.js'); var LoginModel = require('../../models/login'); var UserStore = require('../../stores/userStore'); var Login = React.createClass({ mixins: [RibicaValidationMixin], componentDidMount:function() { UserStore.addChangeListener(this.onUserStoreChange); }, componentWillUnmount: function() { UserStore.removeChangeListener(this.onUserStoreChange); }, onUserStoreChange: function() { var loginState = UserStore.getLoginState(); if (loginState.loggedIn) { NavigationActions.goToHome(); } else { this.setState({login: loginState}); } }, getInitialState: function() { return { email: '', password: '', errors: {}, login: UserStore.getLoginState() }; }, validations: { email:function(value) { if(!ValidationUtils.isValidEmail(value)) { return ['Neispravna email adresa.']; } return []; }, password: function(value) { if(!ValidationUtils.isValidRequired(value)) { return ["Šifra je obavezna."]; } return []; } }, renderErrorMessage: function(message){ return (