Example #1
0
        public async Task <JsonResult> ResetPassword(string user_id)
        {
            var user = await UserManager.FindByIdAsync(user_id);

            if (user.PasswordHash != null)
            {
                await UserManager.RemovePasswordAsync(user_id);
            }
            iSpeakContext db = new iSpeakContext();
            var           password_for_reset = await db.Settings.FindAsync(SettingsValue.GUID_ResetPassword);

            var result = await UserManager.AddPasswordAsync(user_id, password_for_reset.Value_String);

            if (result.Succeeded)
            {
                LogsModels logsModels = new LogsModels
                {
                    Id              = Guid.NewGuid(),
                    Timestamp       = DateTime.UtcNow,
                    TableName       = "AspNetUsers",
                    RefId           = new Guid(user_id),
                    Action          = "Modified",
                    ColumnName      = "Password",
                    Description     = "Reset Password",
                    UserAccounts_Id = User.Identity.GetUserId()
                };
                db.Logs.Add(logsModels);
                await db.SaveChangesAsync();

                return(Json(new { Error = "" }));
            }
            return(Json(new { Error = "Error" }));
        }
 public async Task <bool> Guardar(LogsModels Models)
 {
     if (Models.ID == 0)
     {
         await this.biblioteContext.LogsModels.AddAsync(Models);
     }
     else
     {
         this.biblioteContext.LogsModels.Update(Models);
     }
     return(await Salvar());
 }
Example #3
0
        public JsonResult Manual(string id, string table, string description)
        {
            LogsModels logs_user_add = new LogsModels
            {
                Id              = Guid.NewGuid(),
                Timestamp       = DateTime.UtcNow,
                TableName       = table,
                RefId           = new Guid(id),
                Action          = "Added",
                ColumnName      = "*ALL",
                Description     = description,
                UserAccounts_Id = User.Identity.GetUserId()
            };

            db.Logs.Add(logs_user_add);
            db.SaveChanges();

            return(Json(new { Status = "200" }));
        }
Example #4
0
        public async Task <ActionResult> Create(RoleViewModels model)
        {
            var role = new ApplicationRole()
            {
                Name = model.Name
            };
            await RoleManager.CreateAsync(role);

            LogsModels logs_add = new LogsModels
            {
                Id              = Guid.NewGuid(),
                Timestamp       = DateTime.UtcNow,
                TableName       = "AspNetRoles",
                RefId           = new Guid(role.Id),
                Action          = "Added",
                ColumnName      = "*ALL",
                UserAccounts_Id = User.Identity.GetUserId()
            };

            db.Logs.Add(logs_add);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Example #5
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                List <InterestViewModels> ivm = new List <InterestViewModels>();
                if (model.Interest != null)
                {
                    foreach (var i in model.Interest)
                    {
                        ivm.Add(new InterestViewModels
                        {
                            Languages_Id = i
                        });
                    }
                }
                string list_interest = model.Interest == null ? string.Empty : JsonConvert.SerializeObject(ivm);

                var user = new ApplicationUser
                {
                    UserName           = model.UserName,
                    Email              = model.Email,
                    Firstname          = model.Firstname,
                    Middlename         = model.Middlename,
                    Lastname           = model.Lastname,
                    Address            = model.Address,
                    Phone1             = model.Phone1,
                    Phone2             = model.Phone2,
                    Birthday           = model.Birthday,
                    Notes              = model.Notes,
                    Active             = model.Active,
                    Branches_Id        = model.Branches_Id,
                    PromotionEvents_Id = model.PromotionEvents_Id,
                    Interest           = list_interest
                };
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    LogsModels logs_add = new LogsModels
                    {
                        Id              = Guid.NewGuid(),
                        Timestamp       = DateTime.UtcNow,
                        TableName       = "AspNetUsers",
                        RefId           = new Guid(user.Id),
                        Action          = "Added",
                        ColumnName      = "*ALL",
                        UserAccounts_Id = User.Identity.GetUserId()
                    };
                    db.Logs.Add(logs_add);

                    foreach (var role in model.RoleName)
                    {
                        result = await UserManager.AddToRoleAsync(user.Id, role);
                    }
                    //await SignInManager.SignInAsync(user, isPersistent:false, rememberBrowser:false);

                    // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771
                    // Send an email with this link
                    // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                    // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                    // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                    await db.SaveChangesAsync();

                    return(RedirectToAction("Index", "User"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            List <SelectListItem> list = new List <SelectListItem>();
            Permission            p    = new Permission();
            bool setRole = p.IsGranted(User.Identity.Name, "user_setroles");

            if (setRole)
            {
                foreach (var role in RoleManager.Roles.OrderBy(x => x.Name))
                {
                    list.Add(new SelectListItem()
                    {
                        Value = role.Name, Text = role.Name
                    });
                }
            }
            else
            {
                string role_id_allowed = db.Settings.Find(SettingsValue.GUID_UserSetRoleAllowed).Value_Guid.Value.ToString();
                foreach (var role in RoleManager.Roles.Where(x => x.Id == role_id_allowed).OrderBy(x => x.Name))
                {
                    list.Add(new SelectListItem()
                    {
                        Value = role.Name, Text = role.Name
                    });
                }
            }
            ViewBag.Roles        = list;
            ViewBag.listBranch   = new SelectList(db.Branches.Where(x => x.Active == true).OrderBy(x => x.Name).ToList(), "Id", "Name");
            ViewBag.listLanguage = new SelectList(db.Languages.Where(x => x.Active == true).OrderBy(x => x.Name).ToList(), "Id", "Name");
            ViewBag.listPromo    = new SelectList(db.PromotionEvents.OrderBy(x => x.Name).ToList(), "Id", "Name");
            ViewBag.DOB          = model.Birthday;
            return(View(model));
        }
 public async Task <bool> Delete(LogsModels Models)
 {
     biblioteContext.LogsModels.Remove(Models);
     return(await Salvar());
 }