diff options
author | WuKong <rebirthmonkey@gmail.com> | 2017-12-23 21:49:35 +0100 |
---|---|---|
committer | WuKong <rebirthmonkey@gmail.com> | 2017-12-23 21:49:58 +0100 |
commit | 1100c66ce03a059ebe7ece9734e799b49b3a5a9e (patch) | |
tree | a057e7e7511f6675a9327b79e6919f07c5f89f07 /moon_gui/static/app/authentication | |
parent | 7a4dfdde6314476ae2a1a1c881ff1e3c430f790e (diff) |
moonv4 cleanup
Change-Id: Icef927f3236d985ac13ff7376f6ce6314b2b39b0
Signed-off-by: WuKong <rebirthmonkey@gmail.com>
Diffstat (limited to 'moon_gui/static/app/authentication')
-rwxr-xr-x | moon_gui/static/app/authentication/authentication.controller.js | 58 | ||||
-rwxr-xr-x | moon_gui/static/app/authentication/authentication.tpl.html | 28 |
2 files changed, 86 insertions, 0 deletions
diff --git a/moon_gui/static/app/authentication/authentication.controller.js b/moon_gui/static/app/authentication/authentication.controller.js new file mode 100755 index 00000000..ce38bc5f --- /dev/null +++ b/moon_gui/static/app/authentication/authentication.controller.js @@ -0,0 +1,58 @@ +/** + * @author Samy Abdallah + */ +(function() { + + 'use strict'; + + angular + .module('moon') + .controller('AuthenticationController', AuthenticationController); + + AuthenticationController.$inject = ['authenticationService', '$translate', 'alertService', '$state', '$rootScope']; + + function AuthenticationController(authenticationService, $translate, alertService, $state, $rootScope) { + + var vm = this; + + vm.login = login; + vm.loading = false; + + vm.credentials = { + username : '', + password : '' + }; + + activate(); + + function activate(){ + if($rootScope.connected){ + $state.go('moon.dashboard'); + } + } + + function login(){ + vm.loading = true; + authenticationService.Login(vm.credentials, loginSuccess, loginError); + } + + function loginSuccess() { + + $translate('moon.login.success').then( function(translatedValue) { + alertService.alertSuccess(translatedValue); + $state.go('moon.dashboard'); + vm.loading = false; + }); + + } + + function loginError(reason) { + + $translate('moon.login.error', { errorCode: reason.status }).then( function(translatedValue) { + alertService.alertError(translatedValue); + vm.loading = false; + }); + + } + } +})();
\ No newline at end of file diff --git a/moon_gui/static/app/authentication/authentication.tpl.html b/moon_gui/static/app/authentication/authentication.tpl.html new file mode 100755 index 00000000..77d1646b --- /dev/null +++ b/moon_gui/static/app/authentication/authentication.tpl.html @@ -0,0 +1,28 @@ +<div class="col-md-6 col-md-offset-3"> + + <h2 data-translate="moon.login.titlePage">Login</h2> + + <form name="form" ng-submit="form.$valid && auth.login()" novalidate> + + <div class="form-group" ng-class="{ 'has-error': form.$submitted && form.username.$invalid }"> + <label for="username" data-translate="moon.login.username" >Username</label> + <input type="text" id="username" name="username" class="form-control" ng-model="auth.credentials.username" required /> + <div ng-messages="form.$submitted && form.username.$error" class="help-block"> + <div ng-message="required" data-translate="moon.login.check.username.required" >Username is required</div> + </div> + </div> + + <div class="form-group" ng-class="{ 'has-error': form.$submitted && form.password.$invalid }"> + <label for="password" data-translate="moon.login.password" >Password</label> + <input type="password" id="password" name="password" class="form-control" ng-model="auth.credentials.password" required /> + <div ng-messages="form.$submitted && form.password.$error" class="help-block"> + <div ng-message="required" data-translate="moon.login.check.password.required">Password is required</div> + </div> + </div> + + <div class="form-group"> + <button ng-disabled="auth.loading" class="btn btn-primary" data-translate="moon.login.login" >Login</button> + <img ng-if="auth.loading" src="assets/img/ajax-loader.gif" /> + </div> + </form> +</div>
\ No newline at end of file |