示例#1
0
 public ActionResult BlockUser(string id)
 {
     if (UsersHelper.LoggedInUserUsername(Session) == null)
     {
         return(null);
     }
     if (_usersRepository.GetUserByUsername(id) == null)
     {
         return(null);
     }
     _usersRepository.BlockUser(id);
     ViewBag.Message = "User has been successfully blocked.";
     return(PartialView("MessageModal"));
 }
        public async Task <ActionResult> DeleteConfirmed(string id)
        {
            var user            = UsersHelper.GetUserByIdASP(id);
            var isDeletd        = UsersHelper.DeleteUser(user.Email, "User");
            var isDeletdClaims  = UsersHelper.DeleteUserClaims(user.Email);
            var isDeletdAccount = UsersHelper.DeleteUserAccount(user.Email);

            if (isDeletd && isDeletdAccount && isDeletdAccount)
            {
                return(RedirectToAction("Index"));
            }

            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
        }
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            UsersHelper Users = new UsersHelper(new Repository());

            var authCooke = httpContext.Request.Cookies["__AUTH"];

            if (authCooke != null)
            {
                User user = Users.GetUserByCookie(authCooke.Value);

                return(user.IsActivated);
            }
            return(false);
        }
        public async Task <ActionResult> Create(UserView view)
        {
            if (ModelState.IsValid)
            {
                var user = this.ToUser(view);
                db.Users.Add(user);
                await db.SaveChangesAsync();

                UsersHelper.CreateUserASP(view.Email, "Usuario", view.Password);
                return(RedirectToAction("Index"));
            }

            return(View(view));
        }
示例#5
0
 public ActionResult DeleteVideo(long?id)
 {
     if (UsersHelper.LoggedInUserUsername(Session) == null)
     {
         return(null);
     }
     if (_videosRepository.GetVideoById(id) == null)
     {
         return(null);
     }
     _videosRepository.DeleteVideo(id);
     ViewBag.Message = "Video has been successfully deleted.";
     return(PartialView("MessageModal"));
 }
        private void BindAccount()
        {
            // load user
            UserInfo user = UsersHelper.GetUser(PanelSecurity.SelectedUserId);

            if (user != null)
            {
                // Allow edit
                gvVlans.Columns[2].Visible = btnAddVlan.Visible = (PanelSecurity.EffectiveUser.Role == UserRole.Administrator);

                gvVlans.DataSource = user.Vlans;
                gvVlans.DataBind();
            }
        }
示例#7
0
        public async Task <ActionResult> PatientFilter(int opParam = 0, string param = "")
        {
            var userId = await GetUserId();

            var response = await UsersHelper.HavePermisionToAction(userId, "Patients", 1);

            var authorid = await GetAuthorId();

            //var model = _db.Patients.Include(p => p.Person.Author).Include(p => p.Person.Country).Include(
            //      p => p.Person.Gender).Include(p => p.Person.MaritalSituation).Include(
            //      p => p.Person.SchoolLevel).Include(p => p.Person.Ocupation).Include(
            //      p => p.Person.Religion).Include(p => p.Person.Status)
            //    .Where(p => p.Person.AuthorId == authorid && p.Person.StatusId == 1);
            var model = _db.Patients.Include(p => p.Person.Gender)
                        .Where(p => p.Person.AuthorId == authorid && p.Person.StatusId == 1);

            if (!response)
            {
                return(Json("", JsonRequestBehavior.AllowGet));
            }

            if (opParam == 1)
            {
                model = model.Where(p => string.IsNullOrEmpty(param) || p.Person.Name.ToUpper().Contains(param.ToUpper()));
            }
            if (opParam == 2)
            {
                model = model.Where(p => string.IsNullOrEmpty(param) || p.Person.LastName.ToUpper().Contains(param.ToUpper()));
            }
            if (opParam == 3)
            {
                model = model.Where(p => string.IsNullOrEmpty(param) || p.Person.Email.ToUpper().Contains(param.ToUpper()));
            }
            if (opParam == 4)
            {
                model = model.Where(p => string.IsNullOrEmpty(param) || p.Person.Rnc.ToUpper().Contains(param.ToUpper()));
            }
            if (opParam == 5)
            {
                model = model.Where(p => string.IsNullOrEmpty(param) || p.Record2.ToUpper().Contains(param.ToUpper()));
            }

            model = model.OrderByDescending(p => p.PersonId).Take(50);
            //  take toma la cantidad de resultados descrito
            //     skip omite la cantidad de registros
            var result = RenderRazorViewToString("_PatientsTablePartial", await model.ToListAsync());

            return(Json(new { Table = result }, JsonRequestBehavior.AllowGet));
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            //modalTaskDetailsProperties.Hide();

            // set display preferences
            gvLog.PageSize = UsersHelper.GetDisplayItemsPerPage();

            // grid columns
            gvLog.Columns[4].Visible = String.IsNullOrEmpty(logSource);
            gvLog.Columns[6].Visible = PanelRequest.ItemID == 0;


            if (!IsPostBack)
            {
                try
                {
                    btnClearLog.Visible
                        = (PanelSecurity.EffectiveUser.Role == UserRole.Administrator);

                    // bind
                    BindPeriod();
                    BindSources();

                    // hide source if required
                    if (!String.IsNullOrEmpty(logSource))
                    {
                        ddlSource.SelectedValue = logSource;
                        SourceRow.Visible       = false;
                    }

                    // tasks
                    BindSourceTasks();

                    // hide item name if required
                    if (PanelRequest.ItemID > 0)
                    {
                        ItemNameRow.Visible      = false;
                        FilterButtonsRow.Visible = false;
                    }
                }
                catch (Exception ex)
                {
                    //ShowErrorMessage("AUDIT_INIT_FORM", ex);
                    HostModule.ProcessException(ex);
                    //this.DisableControls = true;
                    return;
                }
            }
        }
        public ActionResult Create(Provider provider)
        {
            if (ModelState.IsValid)
            {
                using (var transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        db.Providers.Add(provider);
                        var responseSave = DBHelper.SaveChanges(db);
                        if (!responseSave.Succeeded)
                        {
                            ModelState.AddModelError(string.Empty, responseSave.Message);
                            transaction.Rollback();
                            ViewBag.CityId = new SelectList(CombosHelper.GetCities(provider.DepartamentsId), "CityId", "Name");

                            ViewBag.DepartamentsId = new SelectList(CombosHelper.GetDepartments(), "DepartamentsId", "Name");
                            return(View(provider));
                        }

                        UsersHelper.CreateUserASP(provider.UserName, "Provider");


                        //SALVAR OS DADOS NA TABELA COMPANY PROVIDER
                        var user            = db.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefault();
                        var companyProvider = new CompanyProvider()
                        {
                            CompanyId  = user.CompanyId,
                            ProviderId = provider.ProviderId
                        };

                        db.CompanyProviders.Add(companyProvider);
                        db.SaveChanges();
                        transaction.Commit();
                        return(RedirectToAction("Index"));
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        ModelState.AddModelError(string.Empty, ex.Message);
                    }
                }
            }

            ViewBag.CityId = new SelectList(CombosHelper.GetCities(provider.DepartamentsId), "CityId", "Name");

            ViewBag.DepartamentsId = new SelectList(CombosHelper.GetDepartments(), "DepartamentsId", "Name");
            return(View(provider));
        }
示例#10
0
        public async Task <ActionResult> ResetPass(int id)
        {
            var conectedUserid = await GetUserId();

            var conectedUser = await _db.Users.FirstOrDefaultAsync(u => u.UserId == conectedUserid);

            if (conectedUser == null)
            {
                return(RedirectToAction("Index", "Users", new { area = "Pos", message = "Su usuario no se encontro!!!" }));
            }

            if (!await UsersHelper.IsAdmin(conectedUserid))
            {
                return(RedirectToAction("Index", "Users", new { area = "Pos", message = "Esta opcion esta Reservada para los Administradores de Sistema!!!" }));
            }
            try
            {
                var user = await _db.Users.FindAsync(id);

                if (user == null)
                {
                    return(View("Error"));
                }



                var userContext = new ApplicationDbContext();
                var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(userContext));
                var userAsp     = userManager.FindByEmail(user.Email);
                if (userAsp == null)
                {
                    return(View("Error"));
                }


                var response1 = userManager.RemovePassword(userAsp.Id);
                var response2 = await userManager.AddPasswordAsync(userAsp.Id, "824455");

                if (response2.Succeeded)
                {
                    return(RedirectToAction("Index", "Users", new { area = "Pos", message = "Contraseña Cambiada Satisfactoriamente a: 824455" }));
                }
                return(View("Error"));
            }
            catch (Exception)
            {
                return(View("Error"));
            }
        }
示例#11
0
        public ActionResult Edit(User user)
        {
            if (ModelState.IsValid)
            {
                if (user.PhotoFile != null)
                {
                    var          pic      = string.Empty;
                    const string folder   = "~/Content/Users";
                    var          file     = string.Format("{0}.jpg", user.UserId);
                    var          response = FilesHelper.UploadPhoto(user.PhotoFile, folder, file);
                    if (response)
                    {
                        pic        = string.Format("{0}/{1}.", folder, file);
                        user.Photo = pic;
                    }
                }

                var db2         = new MyLinkContext();
                var currentUser = db2.Users.Find(user.UserId);
                if (currentUser.UserName != user.UserName)
                {
                    UsersHelper.UpdateUserName(currentUser.UserName, user.UserName);
                }
                db2.Dispose();

                db.Entry(user).State = EntityState.Modified;
                var responseSave = DBHelper.SaveChanges(db);
                if (responseSave.Succeeded)
                {
                    return(RedirectToAction("Index"));
                }
                ModelState.AddModelError(string.Empty, responseSave.Message);
            }
            ViewBag.CityId       = new SelectList(CombosHelper.GetCities(user.DepartmentId), "CityId", "Name", user.CityId);
            ViewBag.DepartmentId = new SelectList(CombosHelper.GetDepartments(), "DepartmentId", "Name", user.DepartmentId);

            var adminUser = WebConfigurationManager.AppSettings["AdminUser"];

            if (adminUser == User.Identity.Name)
            {
                ViewBag.UserRolId = new SelectList(CombosHelper.GetUserRols(), "UserRolId", "Name", user.UserRolId);
            }
            else
            {
                var userIdentity = db.Users.FirstOrDefault(u => u.UserName == User.Identity.Name);
                ViewBag.UserRolId = new SelectList(CombosHelper.GetUserRols(), "UserRolId", "Name", user.UserRolId);
            }
            return(View(user));
        }
示例#12
0
        public async Task <QueryResult <GroupDto> > GetGroupsAsync(int userId, TabularData tabularData, Func <Sorting, string> sort = null)
        {
            var orderField = string.Empty;

            if (sort != null && tabularData.Sorting != null)
            {
                orderField = sort(tabularData.Sorting);
            }

            if (!string.IsNullOrWhiteSpace(tabularData.Search))
            {
                tabularData.Search = UsersHelper.ReplaceWildcardCharacters(tabularData.Search);
            }

            var parameters = new DynamicParameters();

            if (userId > 0)
            {
                parameters.Add("@UserId", userId);
            }

            parameters.Add("@Offset", tabularData.Pagination.Offset);
            parameters.Add("@Limit", tabularData.Pagination.Limit);
            parameters.Add("@OrderField", orderField);
            parameters.Add("@Search", tabularData.Search);
            parameters.Add("@Total", dbType: DbType.Int32, direction: ParameterDirection.Output);
            parameters.Add("@ErrorCode", dbType: DbType.Int32, direction: ParameterDirection.Output);
            var userGroups = await _connectionWrapper.QueryAsync <Group>("GetGroups", parameters, commandType : CommandType.StoredProcedure);

            var total     = parameters.Get <int?>("Total");
            var errorCode = parameters.Get <int?>("ErrorCode");

            if (errorCode.HasValue)
            {
                switch (errorCode.Value)
                {
                case (int)SqlErrorCodes.UserLoginNotExist:
                    throw new ResourceNotFoundException(ErrorMessages.UserNotExist, ErrorCodes.ResourceNotFound);
                }
            }

            var mappedGroups = GroupMapper.Map(userGroups);

            var queryDataResult = new QueryResult <GroupDto> {
                Items = mappedGroups, Total = total.Value
            };

            return(queryDataResult);
        }
示例#13
0
        public async Task <IHttpActionResult> PostUser(User user)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Users.Add(user);
            await db.SaveChangesAsync();

            UsersHelper.CreateUserASP(user.Email, "User", user.Password);


            return(CreatedAtRoute("DefaultApi", new { id = user.UserId }, user));
        }
示例#14
0
        // GET: Users
        public ActionResult Index()
        {
            var users    = UsersHelper.GetUserList();
            var userView = users.Select(r => new UserView
            {
                UserId         = r.Id,
                EMail          = r.Email,
                FirstName      = r.Claims.FirstOrDefault(c => c.ClaimType == ClaimTypes.GivenName).ClaimValue,
                LastName       = r.Claims.FirstOrDefault(c => c.ClaimType == ClaimTypes.Name).ClaimValue,
                ImagePath      = r.Claims.FirstOrDefault(c => c.ClaimType == ClaimTypes.Uri) != null ? $"http://movilidaducaapi.somee.com{r.Claims.FirstOrDefault(c => c.ClaimType == ClaimTypes.Uri).ClaimValue.Substring(1)}" : "http://movilidaducabackend.somee.com/Content/Media/no_profile.png",
                EmailConfirmed = r.EmailConfirmed,
            }).OrderByDescending(u => u.UserId).ToList();

            return(View(userView));
        }
示例#15
0
        public void GetUserById_InvalidId_ReturnNull(string id)
        {
            // mock the IRepository object start
            var usersRepository = new Mock <IRepository>();

            foreach (var user in MockData.users)
            {
                usersRepository.Setup(_ => _.UsersRepository.Get(user.Id)).Returns(user);
            }

            var usersHelper = new UsersHelper(usersRepository.Object, _configuration);
            var result      = usersHelper.GetUserById(id);

            Assert.Null(result);
        }
示例#16
0
        public void DeleteUser_DeleteAdmin_ThrowException()
        {
            var repository = new Mock <IRepository>();

            foreach (var user in MockData.users)
            {
                repository.Setup(_ => _.UsersRepository.Get(user.Id)).Returns(user);
            }

            var adminUser = MockData.users.FirstOrDefault(x => x.Username == CommonConstant.AGSAdminName);

            var usersHelper = new UsersHelper(repository.Object, _configuration);

            Assert.Throws <ArgumentException>(() => usersHelper.DeleteUser(adminUser.Id));
        }
示例#17
0
        public void CreateUser_DuplicateUsername_ThrowException()
        {
            var repository = new Mock <IRepository>();

            repository.Setup(_ => _.UsersRepository.GetByUsername(It.IsAny <string>())).Returns(new AGSUserEntity());

            var newUser = new AGSUserEntity()
            {
                Username = "******"
            };

            var usersHelper = new UsersHelper(repository.Object, _configuration);

            Assert.Throws <AGSException>(() => usersHelper.CreateUser(newUser));
        }
示例#18
0
        public void ResetPassword_InvalidId_ThrowException(string id)
        {
            // mock the IRepository object start
            var usersRepository = new Mock <IRepository>();

            foreach (var user in MockData.users)
            {
                usersRepository.Setup(_ => _.UsersRepository.Get(user.Id)).Returns(user);
            }


            var usersHelper = new UsersHelper(usersRepository.Object, _configuration);

            Assert.Throws <AGSException>(() => usersHelper.ResetPassword(id));
        }
示例#19
0
        public ActionResult Create(Customer customer)
        {
            if (ModelState.IsValid)
            {
                db.Customers.Add(customer);
                db.SaveChanges();
                UsersHelper.CreateUserASP(customer.UserName, "Customer");
                return(RedirectToAction("Index"));
            }

            ViewBag.CityId        = new SelectList(CombosHelper.GetCities(), "CityId", "Name");
            ViewBag.DepartmentsId = new SelectList(CombosHelper.GetDepartments(), "DepartmentsId", "Name");

            return(View(customer));
        }
示例#20
0
 public ActionResult DeleteConfirmed(int id)
 {
     try
     {
         User user = db.Users.Find(id);
         db.Users.Remove(user);
         db.SaveChanges();
         UsersHelper.DeleteUser(user.UserName);
     }
     catch (Exception ex)
     {
         ModelState.AddModelError(String.Empty, ex.Message);
     }
     return(RedirectToAction("Index"));
 }
示例#21
0
        public async Task <ActionResult> Create(Customer customer)
        {
            if (ModelState.IsValid)
            {
                db.Customers.Add(customer);
                await db.SaveChangesAsync();

                UsersHelper.CreateUserASP(customer.UserName, "Customer");
                return(RedirectToAction("Index"));
            }

            ViewBag.DepartmentId = new SelectList(CombosHelper.GetDepartments(), "DepartmentId", "Name", customer.DepartmentId);
            ViewBag.DistrictId   = new SelectList(CombosHelper.GetDistricts(), "DistrictId", "Name", customer.DistrictId);
            return(View(customer));
        }
示例#22
0
        protected override bool AuthorizeCore(HttpContextBase filterContext)
        {
            base.AuthorizeCore(filterContext);
            bool Authorized = true;
            var  resultid   = Task.Run(async() => await UsersHelper.GetUserId(filterContext.ApplicationInstance.Context));

            TUserId = resultid.Result;
            if (!UsersHelper.HavePermisionToAction(TUserId, OptionName, Action).Result)
            {
                // no tiene permisos
                Authorized = false;
            }

            return(Authorized);
        }
示例#23
0
        public ActionResult DeleteConfirmed(int id)
        {
            var user = db.Users.Find(id);

            db.Users.Remove(user);
            var responseSave = DBHelper.SaveChanges(db);

            if (responseSave.Succeeded)
            {
                UsersHelper.DeleteUser(user.UserName, "User");
                return(RedirectToAction("Index"));
            }
            ModelState.AddModelError(string.Empty, responseSave.Message);
            return(View(user));
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Page.Title = PagesTitles.ManagerIssuanceListViewTitle.Replace("{0}", Page.Request.Params["id"]) + BackendHelper.TagToValue("page_title_part");
            OtherMethods.ActiveRightMenuStyleChanche("hlIssuance", this.Page);
            OtherMethods.ActiveRightMenuStyleChanche("hlIssuanceListsView", this.Page);

            #region Блок доступа к странице
            var userInSession = (Users)Session["userinsession"];
            var rolesList     = Application["RolesList"] as List <Roles>;
            var currentRole   = (Roles)rolesList.SingleOrDefault(u => u.Name.ToLower() == userInSession.Role.ToLower());
            if (currentRole.PageIssuanceListView != 1)
            {
                Response.Redirect("~/Error.aspx?id=1");
            }
            #endregion

            if (currentRole.ActionIssuanceListDelete != 1)
            {
                btnDelete.Visible = false;
            }

            if (!String.IsNullOrEmpty(Page.Request.Params["id"]))
            {
                var issuanceList = new IssuanceLists()
                {
                    ID = Convert.ToInt32(Page.Request.Params["id"])
                };
                issuanceList.GetById();
                if (issuanceList.IssuanceListsStatusID == 3 || issuanceList.IssuanceListsStatusID == 1)
                {
                    btnReopen.Visible = false;
                    btnClose.Visible  = true;
                }
                else
                {
                    btnReopen.Visible = true;
                    btnClose.Visible  = false;
                }
                var user = UsersHelper.UserIDToFullName(issuanceList.UserID.ToString());
                lblListInfo.Text = String.Format("# {0}, {1}, рассчет: {2}", issuanceList.ID, user,
                                                 OtherMethods.DateConvert(issuanceList.IssuanceDate.ToString()));
            }
            else
            {
                pnlSearschResult.Visible = pnlResultPanel.Visible = btnAction.Visible = false;
                lblPage.Visible          = false;
            }
        }
        public ActionResult Create(Customer customer)
        {
            if (ModelState.IsValid)
            {
                using (var transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        db.Customers.Add(customer);
                        var response = DBHelper.SaveChanges(db);
                        if (!response.Succeeded)
                        {
                            ModelState.AddModelError(string.Empty, response.Message);
                            transaction.Rollback();
                            ViewBag.CityId       = new SelectList(CombosHelpers.GetCities(customer.DepartmentId), "CityID", "Name", customer.CityId);
                            ViewBag.DepartmentId = new SelectList(CombosHelpers.GetDepartments(), "DepartmentID", "Name", customer.DepartmentId);
                            return(View(customer));
                        }

                        UsersHelper.CreateUserASP(customer.UserName, "Customer");
                        var user            = db.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefault();
                        var companyCustomer = new CompanyCustomers
                        {
                            CompanyID  = user.CompanyID,
                            CustomerID = customer.CustomerId,
                        };

                        db.CompanyCustomers.Add(companyCustomer);
                        db.SaveChanges();

                        transaction.Commit();

                        return(RedirectToAction("Index"));
                    }

                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        ModelState.AddModelError(string.Empty, ex.Message);
                    }
                }
            }


            ViewBag.CityId       = new SelectList(CombosHelpers.GetCities(customer.DepartmentId), "CityID", "Name", customer.CityId);
            ViewBag.DepartmentId = new SelectList(CombosHelpers.GetDepartments(), "DepartmentId", "Name", customer.DepartmentId);
            return(View(customer));
        }
示例#26
0
        public IActionResult Post([FromBody] Login model)
        {
            try
            {
                UsersHelper.VerifyAdminUser(this.dataRepositoryFactory);
                User user = userRepository.Login(model, _appSettings.Value.TokenKey);
                if (user == null)
                {
                    return(Ok(new { status = -1, message = "Invalid credentials" }));
                }
                var claims = new[]
                {
                    new Claim(JwtRegisteredClaimNames.UniqueName, user.Email),
                    new Claim(JwtRegisteredClaimNames.Sid, user.UserId.ToString()),
                    //new Claim("miValor", "Lo que yo quiera"),
                    new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString())
                };

                var key   = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_appSettings.Value.TokenKey));
                var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);

                var expiration = DateTime.UtcNow.AddHours(_appSettings.Value.TokenTimeHours);

                JwtSecurityToken token = new JwtSecurityToken(
                    issuer: _appSettings.Value.Domain,
                    audience: _appSettings.Value.Domain,
                    claims: claims,
                    expires: expiration,
                    signingCredentials: creds
                    );
                string tokenString = new JwtSecurityTokenHandler().WriteToken(token);
                user.TokenKey = tokenString;
                _cache.Set <User>(tokenString, user, DateTimeOffset.Now.AddHours(_appSettings.Value.TokenTimeHours));
                return(Ok(new
                {
                    message = "OK",
                    status = 1,
                    token = tokenString,
                    expiration = expiration,
                    user = user,
                    languageId = user.LanguageCode
                }));
            }
            catch (Exception ex)
            {
                return(Ok(new { status = -1, message = ex.Message }));
            }
        }
        /// <summary>
        /// Register a new consumer.
        /// </summary>
        /// <param name="request">The DTO with requst form data parameters.</param>
        /// <returns>The response DTO with result of the operation.</returns>
        public RegisterResponse Register(RegisterRequest request)
        {
            request.mobile_number = Common.GetStandardMobileNumber(request.mobile_number);
            RegisterResponse responseDto = new RegisterResponse();
            Consumer         consumer    = new Consumer();

            //Get posted parameter values into the entity from the DTO
            UsersHelper.CopyToEntity(consumer, request);
            consumer.Password = TokenGenerator.GetHashedPassword(request.user_password, 49);//To fit into the password field of database table

            //Generate unique auth /access token for the user.
            consumer.AccToken      = TokenGenerator.GenerateToken(request.user_name, request.user_password, request.mobile_number);
            consumer.CreatedDate   = DateTime.Now;
            consumer.UpdatedDate   = consumer.CreatedDate;
            consumer.StatusID      = 1;
            consumer.ConsActivated = true;
            try
            {
                using (UserDao dao = new UserDao())
                {
                    // Check if the mobile number is registered
                    if (dao.CheckPhoneExists(request.mobile_number))
                    {
                        responseDto.code         = 1;
                        responseDto.has_resource = 0;
                        responseDto.message      = MessagesSource.GetMessage("cons.reg.dupl");
                    }
                    else
                    {
                        consumer = dao.Insert(consumer);                   // save the entity.
                        UsersHelper.CopyFromEntity(responseDto, consumer); //Copy to the response DTO
                        string otp = OTPServices.GenerateAndSendOTP(request.mobile_number);
                        if (OTPServices.SaveOTP(otp, consumer.ConsID, "C"))
                        {
                            responseDto.new_user.send_otp = 1; // state that OTP has been sent.
                        }
                        responseDto.code         = 0;          // Result OK.
                        responseDto.has_resource = 1;
                        responseDto.message      = MessagesSource.GetMessage("cons.reg.ok");
                    }
                }
            }
            catch (Exception ex)
            {
                responseDto.MakeExceptionResponse(ex);
            }
            return(responseDto);
        }
示例#28
0
        public ActionResult Create([Bind(Include = "ClientListId,CustomerId,EmployeeId,ServiceId,Appointment,CustomerName")] ClientList clientList)
        {
            User user       = db.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefault();
            bool isEmployee = UsersHelper.IsEmployeeOfCurrentBusiness(User, clientList.EmployeeId);

            if (!isEmployee)
            {
                return(RedirectToAction("BusinessCustomers"));
            }

            Customer customer = db.Customers.Find(clientList.CustomerId);

            if (string.IsNullOrEmpty(clientList.CustomerName))
            {
                ModelState.AddModelError("CustomerName", "The field Customer is required");
            }
            else if (customer != null)
            {
                if (isEmployee && customer.UserId == user.UserId && customer.IsAccountOwner)
                {
                    ModelState.AddModelError(string.Empty, "Same employee customer not allowed");
                }
            }
            else
            {
                ModelState.AddModelError("CustomerName", "Customer not found");
            }

            if (ModelState.IsValid)
            {
                clientList.ListStatusId     = db.ListStatus.Where(ls => ls.Confirmed == true).FirstOrDefault().ListStatusId;
                clientList.AddedByUserId    = user.UserId;
                clientList.AddedDate        = DateTime.Now;
                clientList.ModifiedByUserId = user.UserId;
                clientList.ModifiedDate     = clientList.AddedDate;

                db.ClientLists.Add(clientList);
                db.SaveChanges();
                return(RedirectToAction("Index", new { id = clientList.EmployeeId }));
            }

            ViewBag.ServiceId      = new SelectList(ListsHelper.GetEmployeeServices(clientList.EmployeeId), "ServiceId", "Description", clientList.EmployeeId);
            ViewBag.CustomerId     = new SelectList(ListsHelper.GetCustomers(isEmployee, user.UserId), "CustomerId", "CustomerName", clientList.CustomerId);
            ViewBag.ReturnUrl      = string.Format("~/ClientLists/Create/{0}", clientList.EmployeeId);
            ViewBag.EmployeeName   = user.Name;
            ViewBag.EmployeeUserId = user.UserId;
            return(View(clientList));
        }
示例#29
0
        public async Task <IActionResult> Create(UserView userView)
        {
            if (ModelState.IsValid)
            {
                var user = ToUser(userView);
                _context.Add(user);
                await _context.SaveChangesAsync();

                //Crear el usuario ASP here
                var userHelper = new UsersHelper(_context, _userManager);
                await userHelper.CreateUserASPAsync(user.Email, userView.Password, "User");

                return(RedirectToAction(nameof(Index)));
            }
            return(View(userView));
        }
示例#30
0
        public async Task <ActionResult> Create(UserView view)
        {
            if (ModelState.IsValid)
            {
                var user = ToUser(view);
                db.Users.Add(user);
                await db.SaveChangesAsync();

                UsersHelper.CreateUserASP(view.Email, "User", view.Password);
                return(RedirectToAction("Index"));
            }

            ViewBag.ClientTypeId = new SelectList(db.ClientTypes, "ClientTypeId", "Name", view.ClientTypeId);
            ViewBag.UserTypeId   = new SelectList(db.UserTypes, "UserTypeId", "Name", view.UserTypeId);
            return(View(view));
        }
示例#31
0
        /// <summary>
        /// Receives login event and inits authorization vars.
        /// </summary>
        public void MainForm_LoginReady(OAuthResponse response)
        {
            try
            {
                // Set app authorization
                _authorization = response;

                // Get user info and set salute label text
                UsersHelper uh = new UsersHelper();
                uh.AccessToken = _authorization.AccessToken;
                User user = uh.GetUser(response.UserId);
                saluteLabel.Text = "Hi, " + user.FirstName + " " + user.LastName + " (" + user.Email + ")";

                // Hide login form and enable main form buttons
                _loginForm.Hide();
                EnableControlButtons();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Login failure: " + ex.Message);
            }
        }
示例#32
0
        /// <summary>
        /// Receives admin login event and inits authorization vars.
        /// </summary>
        public void MainForm_AdminLoginReady(string adminToken, int userId)
        {
            try
            {
                // Set app authorization
                _authorization = new OAuthResponse(adminToken, DateTime.Now.AddHours(18), userId, null, true);

                // Get user info and set salute label text
                UsersHelper uh = new UsersHelper();
                uh.AccessToken = _authorization.AccessToken;
                User user = uh.GetUser(userId);
                if ((user.FirstName == null) && (user.LastName == null))
                {
                    saluteLabel.Text = "Hi Admin, you're now an alias of " + user.Nickname;
                }
                else
                {
                    saluteLabel.Text = "Hi Admin, you're now an alias of " + user.FirstName + " " + user.LastName + " (" + user.Email + ")";
                }

                // Set authorization site id
                _authorization.SiteId = user.SiteId;

                // Hide admin form and enable main form buttons
                _adminForm.Hide();
                EnableLoginControls();
            }
            catch
            {
                MessageBox.Show("Login failure: Please try again");
            }
        }