示例#1
0
        public ActionResult Edit(ClientNavigationManageModel model, SubmitType submit)
        {
            if (ModelState.IsValid)
            {
                var response = _clientNavigationService.SaveClientNavigationManageModel(model);
                SetResponseMessage(response);
                if (response.Success)
                {
                    switch (submit)
                    {
                    case SubmitType.Save:
                        return(RedirectToAction("Index"));

                    default:
                        return(RedirectToAction("Edit", new { id = model.Id }));
                    }
                }
            }
            model.Parents = _clientNavigationService.GetPossibleParents();
            return(View(model));
        }
示例#2
0
        /// <summary>
        /// Save client Navigation manage model
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ResponseModel SaveClientNavigationManageModel(ClientNavigationManageModel model)
        {
            ClientNavigation relativeNavigation;
            ResponseModel    response;
            var clientNavigation = GetById(model.Id);

            #region Edit Client Navigation

            if (clientNavigation != null)
            {
                clientNavigation.Title = model.Title;

                clientNavigation.IncludeInSiteNavigation  = model.IncludeInSiteNavigation;
                clientNavigation.DisableNavigationCascade = model.DisableNavigationCascade;
                clientNavigation.StartPublishingDate      = model.StartPublishingDate;
                clientNavigation.EndPublishingDate        = model.EndPublishingDate;
                clientNavigation.ParentId  = model.ParentId;
                clientNavigation.Url       = model.Url;
                clientNavigation.UrlTarget = model.UrlTarget;

                //Get page record order
                relativeNavigation = GetById(model.RelativeNavigationId);
                if (relativeNavigation != null)
                {
                    if (model.Position == (int)ClientNavigationEnums.PositionEnums.Before)
                    {
                        clientNavigation.RecordOrder = relativeNavigation.PageId.HasValue
                            ? relativeNavigation.Page.RecordOrder * EzCMSContants.OrderMultipleTimes - 1
                            : relativeNavigation.RecordOrder - 1;
                    }
                    else
                    {
                        clientNavigation.RecordOrder = relativeNavigation.PageId.HasValue
                            ? relativeNavigation.Page.RecordOrder * EzCMSContants.OrderMultipleTimes + 1
                            : relativeNavigation.RecordOrder + 1;
                    }
                }

                response = HierarchyUpdate(clientNavigation);

                return(response.SetMessage(response.Success
                    ? T("ClientNavigation_Message_UpdateSuccessfully")
                    : T("ClientNavigation_Message_UpdateFailure")));
            }

            #endregion

            Mapper.CreateMap <ClientNavigationManageModel, ClientNavigation>();
            clientNavigation = Mapper.Map <ClientNavigationManageModel, ClientNavigation>(model);

            //Get Navigation record order
            relativeNavigation = GetById(model.RelativeNavigationId);
            if (relativeNavigation != null)
            {
                if (model.Position == (int)ClientNavigationEnums.PositionEnums.Before)
                {
                    clientNavigation.RecordOrder = relativeNavigation.PageId.HasValue
                        ? relativeNavigation.Page.RecordOrder * EzCMSContants.OrderMultipleTimes - 1
                        : relativeNavigation.RecordOrder - 1;
                }
                else
                {
                    clientNavigation.RecordOrder = relativeNavigation.PageId.HasValue
                        ? relativeNavigation.Page.RecordOrder * EzCMSContants.OrderMultipleTimes + 1
                        : relativeNavigation.RecordOrder + 1;
                }
            }

            response = HierarchyInsert(clientNavigation);
            return(response.SetMessage(response.Success
                ? T("ClientNavigation_Message_CreateSuccessfully")
                : T("ClientNavigation_Message_CreateFailure")));
        }