Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (function () {
- var AAngScript = angular.module('AAngScript', ['ngRoute']);
- /* some stuff */
- function RegisterController ($location, RegistrationFactory) {
- // vm as in view-model
- var vm = this;
- vm.registerForm = {
- emailAdress: '',
- password: '',
- confirmPassword: '',
- registrationFailure: false
- };
- vm.register = function () {
- var result = RegistrationFactory($scope.registerForm.emailAdress, $scope.registerForm.password, $scope.registerForm.confirmPassword);
- result.then(function (result) {
- if (result.success) {
- $location.path('/routeOne');
- } else {
- $scope.registerForm.registrationFailure = true;
- }
- });
- }
- }
- //some stuff
- function RegistrationFactory($http, $q) {
- return function(emailAdress, password, rememberMe) {
- var deferredObject = $q.defer();
- $http.post(
- '/Account/Register', {
- Email: emailAdress,
- Password: password,
- ConfirmPassword: confirmPassword
- }
- ).
- success(function (data) {
- if (data == "True") {
- deferredObject.resolve({ success: true });
- } else {
- deferredObject.resolve({ success: false });
- }
- }).
- error(function () {
- deferredObject.resolve({ success: false });
- });
- return deferredObject.promise;
- }
- };
- //some stuff
- })();
- <!DOCTYPE html>
- <html ng-app="AAngScript">
- <head>
- .....
- </head>
- <body>
- @Styles.Render("~/Content/css")
- @Scripts.Render("~/bundles/modernizr")
- <script src="~/Scripts/angular.min.js"></script>
- <script src="~/Scripts/angular-route.min.js"></script>
- <script src="~/Scripts/AAngScript.js"></script>
- ...
- <ul class="nav navbar-nav navbar-right">
- <li><a href="/#!/login">Log In</a></li>
- <li><a href="/#!/register">Register</a></li>
- </ul>
- ...
- <div class="container body-content">
- @RenderBody()
- <div ng-view></div>
- <hr />
- <footer>
- <p>© @DateTime.Now.Year - My ASP.NET Application</p>
- </footer>
- </div>
- @Scripts.Render("~/bundles/jquery")
- @Scripts.Render("~/bundles/bootstrap")
- @RenderSection("scripts", required: false)
- </body>
- </html>
- <div class="row">
- <form ng-submit="register()">
- <div class="form-group">
- <label for="emailAdress">Email</label>
- <input id="emailAdress" type="email" ng-model="registerForm.emailAdress" required pattern="{6,30}" autofocus/>
- </div>
- <div class="form-group">
- <label for="password">Password</label>
- <input id="password" type="password" ng-model="registerForm.password" required pattern="{6,30}" />
- </div>
- <div class="form-group">
- <label for="confirmPassword">Confirm password</label>
- <input id="confirmPassword" type="password" ng-model="registerForm.confirmPassword" required pattern="{6,30}" />
- </div>
- <div class="form-group">
- <input type="submit" value="Register" class="btn btn-success" />
- </div>
- </form>
- </div>
- //
- [AllowAnonymous]
- public ActionResult Register()
- {
- return View();
- }
- //
- // POST: /Account/Register
- [HttpPost]
- [AllowAnonymous]
- public async Task<bool> Register(RegisterViewModel model)
- {
- var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
- var result = await UserManager.CreateAsync(user, model.Password);
- if (!result.Succeeded) return false;
- await SignInManager.SignInAsync(user, false, false);
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement