Exemplo n.º 1
0
        public async Task <ActionResult> Index(ProfilePage currentPage, EditProfileViewModel editViewModel)
        {
            if (SiteUser == null)
            {
                return(HttpNotFound());
            }

            if (!ModelState.IsValid)
            {
                Response.StatusCode = 400;
                return(View("~/Views/MyProfile/ProfilePage.cshtml", new ProfilePageViewModel(currentPage, editViewModel)));
            }

            await UserManager.UpdateUserInfoAsync(SiteUser.PersonDn, editViewModel.FirstName, editViewModel.LastName, editViewModel.Telephone,
                                                  editViewModel.Mobilephone, editViewModel.Email, editViewModel.Street, editViewModel.Zip, editViewModel.City);

            var newSiteUser = await UserManager.QuerySiteUserAsync(SiteUser.UserName);

            this.SetUserSession(newSiteUser);

            var settingPage = ContentExtensions.GetSettingsPage();

            TempData["UpdateInfoSuccess"] = true;

            return(RedirectToAction("Index", new { node = settingPage.MyAccountLink }));
        }
Exemplo n.º 2
0
        public async Task <ActionResult> CaluculateDeliveryFee(string supplier, string lorryType,
                                                               string deliveryAddressId, string quantity, string deliveryDate, string itemId)
        {
            var deliveryFeeRequest = PopulateDeliveryFeeRequest(supplier, lorryType, deliveryAddressId, quantity,
                                                                deliveryDate, itemId);

            var deliveryFeeResponse = await _shippingRepository.GetDeliveryFeeAsync(deliveryFeeRequest, _ticket);

            ViewBag.IsInternal = ContentExtensions.GetSettingsPage()?.IsInternal;
            return(PartialView("~/Views/AppPages/CalculateDeliveryFeePage/CalculationResult.cshtml", deliveryFeeResponse));
        }
        public ActionResult Index(PageData currentPage)
        {
            var model = new InternalNavigationItemModel();
            var settingPage = ContentExtensions.GetSettingsPage();
            var startpageReference = settingPage?.InternalStartPage;
            if (startpageReference == null)
            {
                throw new NullReferenceException("Reference to internal start page in settings is not set");
            }

            var startPage = _contentRepository.Get<InternalStartPage>(startpageReference);
            model.Page = startPage;
            model.IsActive = currentPage?.ContentLink.ID == startPage?.ContentLink.ID;
            var childPages = _groContentDataService.GetChildrenForVisitor<PageData>(startPage, HttpContext);
            model.SubItems.AddRange(childPages.Select(x => GetSubItems(x, currentPage, x.URLSegment)));
            return PartialView("~/Views/InternalPages/_InternalNavigation.cshtml", model);
        }
Exemplo n.º 4
0
        public ActionResult Index(MachineAddPage currentPage, FormCollection collection)
        {
            var categoryName     = collection["machineCategory"];
            var brand            = collection["machineBrand"];
            var model            = collection["machineModel"];
            var brandDescription = collection["branch-input"];
            var modelDescription = collection["model-input"];
            var otherCateName    = collection["other-cate-name"];

            var supplier = UserManager.GetActiveCustomer(HttpContext);

            var machine = new Machine
            {
                Brand = new MachineBrand {
                    Key = brand == "Annan" ? "Other" : brand
                },
                Model = new MachineModel {
                    Key = model == "Annan" ? "Other" : model
                },
                DescriptionBrand = brandDescription,
                DescriptionModel = modelDescription,
                OwnerNumber      = supplier != null ? supplier.CustomerNo : string.Empty,
                IndvidualType    = categoryName.Equals("Other") ? otherCateName : categoryName,
            };

            var isSuccess = _machineRepository.AddNewMachine(machine);

            if (isSuccess)
            {
                var machinePageReference = ContentExtensions.GetSettingsPage()?.MachineStartPage;
                return(RedirectToAction("Index", new { node = machinePageReference }));
            }

            var vm = new MachineAddPageViewModel(currentPage)
            {
                CategoryList = _groMachineService.GetCategoryListFromXml(),
                BrandList    = _groMachineService.GetBrandListFromXml()
            };

            return(View("~/Views/Machine/MachineAdd/Index.cshtml", vm));
        }
Exemplo n.º 5
0
        public async Task <ActionResult> ChangePassword(ChangePasswordPage currentPage, string oldPassword, string newPassword, string retypeNewPassword)
        {
            var message = string.Empty;
            var incorrectPasswordMessage = string.Empty;

            var isOldPasswordCorrect = _securityRepository.ValidateUser(SiteUser.UserName, oldPassword);

            if (!isOldPasswordCorrect)
            {
                incorrectPasswordMessage = "Lösenordet du angav stämmer inte överens med ditt nuvarande lösenord.";
            }
            else if (!newPassword.Equals(retypeNewPassword))
            {
                message = "Detta lösenord stämmer inte överens med det första du angav.";
            }
            else if (!UserManager.IsUserPasswordValid(newPassword))
            {
                message = "Lösenordet är inte av rätt typ. Se krav för nytt lösenord.";
            }
            else
            {
                try
                {
                    await _securityRepository.ChangePasswordAsync(SiteUser.UserName, newPassword);

                    var settingPage = ContentExtensions.GetSettingsPage();
                    TempData["UpdatePasswordSuccess"] = true;
                    return(RedirectToAction("Index", new { node = settingPage.MyAccountLink }));
                }
                catch (FaultException)
                {
                    message = "Lösenordet är inte av rätt typ. Se krav för nytt lösenord";
                }
            }

            ViewData["message"] = message;
            ViewData["incorrectPasswordMessage"] = incorrectPasswordMessage;

            return(View("~/Views/MyProfile/ChangePassword.cshtml", new PageViewModel <ChangePasswordPage>(currentPage)));
        }
Exemplo n.º 6
0
        void IActionFilter.OnActionExecuting(ActionExecutingContext filterContext)
        {
            var siteUser = filterContext.HttpContext.GetSiteUser();

            if (siteUser == null || filterContext.Controller is UserAgreementsPageController)
            {
                base.OnActionExecuting(filterContext);
                return;
            }

            var agreementPage = ContentExtensions.GetUserAgreementPage();

            if (agreementPage != null && siteUser.AcceptedAgreementVersion < agreementPage.Version)
            {
                var userAgreementRef  = ContentExtensions.GetSettingsPage()?.UserAgreementPage;
                var userAgreementLink = LinkHelpers.GetFriendlyLinkOfPage(userAgreementRef);
                filterContext.Result = new RedirectResult(userAgreementLink);
                return;
                //filterContext.HttpContext.Response.Redirect(userAgreementLink, true);
            }

            base.OnActionExecuting(filterContext);
        }
Exemplo n.º 7
0
        public async Task <ActionResult> UpdateCustomer(SearchOptions searchOption, string searchKey)
        {
            if (searchOption == SearchOptions.CustomerNumber && !string.IsNullOrEmpty(searchKey))
            {
                Customer customer;
                try
                {
                    customer = await _customerSupportRepo.GetCustomerByNumberAsync(searchKey);
                }
                catch (Exception)
                {
                    customer = null;
                }

                if (customer == null)
                {
                    return(RedirectToAction("NoResult", new { customerNumber = searchKey }));
                }

                // Save the customer as the [InternalActiveCustomer]
                _userManagementService.UpdateInternalCustomerNumber(HttpContext, new CustomerBasicInfo()
                {
                    CustomerNo   = searchKey,
                    CustomerName = customer.CustomerName
                });

                var settingsPage     = ContentExtensions.GetSettingsPage();
                var customerCardPage = settingsPage?.CustomerCardPage;
                if (customerCardPage == null)
                {
                    return(RedirectToAction("NoResult", new { customerNumber = searchKey }));
                }
                return(RedirectToAction("Index", new { node = customerCardPage, customerNumber = searchKey }));
            }

            return(RedirectToAction("NoResult", new { customerNumber = searchKey }));
        }
Exemplo n.º 8
0
 protected override IEnumerable <IContent> GetContent(ContentQueryParameters parameters)
 => base.GetContent(parameters).Where(x => !x.ContentLink.Equals(ContentExtensions.GetSettingsPage().MachineMediaFolder));
        private ContentReference GetPLannedDeliveryPage()
        {
            var settingPage = ContentExtensions.GetSettingsPage();

            return(settingPage?.PlannedDeliveryPage);
        }