public ActionResult Create(BoardMembersModel model, string command, FormCollection fm) { var currentLoggedUserId = Convert.ToInt64(Membership.GetUser().ProviderUserKey); var CurrentUserRoleID = objContext.UserRoles.Where(x => x.UserID == currentLoggedUserId).FirstOrDefault().RoleID; ViewBag.LiTitle = "Board Member Listing"; var EncryptBMID = EncryptDecrypt.Encrypt(model.BoardMemberID.ToString()); var rvd = new RouteValueDictionary(); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "CreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); rvd.Add("pagesize", Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString()); rvd.Add("page", Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString()); ViewBag.Title = ViewBag.PageTitle = (model.BoardMemberID > 0 ? "Edit " : "Add ") + " Board Member Details "; ViewBag.Submit = model.BoardMemberID > 0 ? "Update" : "Save"; ViewBag.CreateDate = DateTime.Now.ToShortDateString(); ViewBag.UserCreateDate = DateTime.Now.ToShortDateString(); //model.RightSections = GetAllRightSections(); #region System Change Log DataTable dtOld; var oldresult = (from a in objContext.BoardOfMembers where a.BoardMemberID == model.BoardMemberID select a).ToList(); dtOld = Models.Common.LINQResultToDataTable(oldresult); #endregion var objDBContent = new db_KISDEntities(); var objctBM = new BoardOfMember(); ViewBag.IsActiveInd = Models.Common.GetStatusListBoolean(!string.IsNullOrEmpty(fm["IsActiveInd"]) ? Convert.ToString(fm["IsActiveInd"]) : "0"); ViewBag.BoardMemberID = model.BoardMemberID; ViewBag.isValid = "1"; //ViewBag.RolesList = GetAllUserType(currentLoggedUserId); var file = Request.Files.Count > 0 ? Request.Files[0] : null; if (string.IsNullOrEmpty(command)) { var InnerImagesTitle = Models.Common.GetInnerImages(); ViewBag.InnerImagesTitle = InnerImagesTitle;//get all the inner image titles if (model.BoardMemberID > 0) { objctBM = objDBContent.BoardOfMembers.Where(x => x.BoardMemberID == model.BoardMemberID).FirstOrDefault(); } else { objctBM = new BoardOfMember(); } var count = objDBContent.BoardOfMembers.Where(x => x.URLTxt.ToLower().Trim() == model.URLTxt.ToLower().Trim() && x.BoardMemberID != model.BoardMemberID && x.IsDeletedInd == false).Count(); count += objContext.Contents.Where(x => x.PageURLTxt.ToLower().Trim() == model.URLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.Departments.Where(x => x.URLTxt.ToLower().Trim() == model.URLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.ExceptionOpportunities.Where(x => x.URLTxt.ToLower().Trim() == model.URLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.GalleryListings.Where(x => x.URLTxt.ToLower().Trim() == model.URLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.NewsEvents.Where(x => x.PageURLTxt.ToLower().Trim() == model.URLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); if (model.URLTxt.Trim().ToLower() == "error404")// Check for duplicate url and error404 url { count = count + 1; } if (count > 0) { if (model.URLTxt.ToLower().Trim() == "error404")//if user types url 'error404' below validation msg should display { ModelState.AddModelError("URLTxt", model.URLTxt + " URL is not allowed."); } else { ModelState.AddModelError("URLTxt", model.URLTxt + " URL already exists."); } ViewBag.isValid = "0"; return(View(model)); } if (file != null && file.ContentLength > 0) { #region Cropped Image var croppedfile = new FileInfo(Server.MapPath(TempData["CroppedImage"].ToString())); var fileName = croppedfile.Name; croppedfile = null; var sourcePath = Server.MapPath(TempData["CroppedImage"].ToString()); var targetPath = Request.PhysicalApplicationPath + "WebData\\"; System.IO.File.Copy(Path.Combine(sourcePath.Replace(fileName, ""), fileName), Path.Combine(targetPath + "images\\", fileName), true); try { Models.Common.DeleteImage(Server.MapPath(TempData["CroppedImage"].ToString())); } catch { } objctBM.ImageURLTxt = "~/WebData/images/" + fileName; var fileExtension = fileName.Substring(fileName.LastIndexOf("."), fileName.Length - fileName.LastIndexOf(".")); var strPath = Request.PhysicalApplicationPath + "WebData\\images\\" + fileName; var myImage = CreateImageThumbnail(strPath, 100); myImage.Save(Request.PhysicalApplicationPath + "WebData\\thumbnails_Small\\" + fileName, fileExtension.ToLower() == ".png" ? System.Drawing.Imaging.ImageFormat.Png : fileExtension.ToLower() == ".gif" ? System.Drawing.Imaging.ImageFormat.Gif : System.Drawing.Imaging.ImageFormat.Jpeg ); myImage.Dispose(); var myLargeImage = CreateImageThumbnail(strPath, 400); myLargeImage.Save(Request.PhysicalApplicationPath + "WebData\\thumbnails\\" + fileName, fileExtension.ToLower() == ".png" ? System.Drawing.Imaging.ImageFormat.Png : fileExtension.ToLower() == ".gif" ? System.Drawing.Imaging.ImageFormat.Gif : System.Drawing.Imaging.ImageFormat.Jpeg ); myLargeImage.Dispose(); TempData["CroppedImage"] = null; #endregion } objctBM.BOMCreateDate = Convert.ToDateTime(model.strBOMCreateDate + " " + DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second); objctBM.ContactInfoTxt = model.ContactInfoTxt; objctBM.CreateDate = DateTime.Now; objctBM.DescriptionTxt = model.DescriptionTxt; objctBM.DisplayOrderNbr = model.DisplayOrderNbr; objctBM.NameTxt = model.NameTxt; objctBM.PageMetaDescriptionTxt = model.PageMetaDescriptionTxt; objctBM.PageMetaTitleTxt = model.PageMetaTitleTxt; objctBM.RightSectionAbstractTxt = model.RightSectionAbstractTxt; objctBM.RightSectionTitleTxt = model.PageMetaTitleTxt; objctBM.BannerImageID = model.BannerImageID; objctBM.BannerImageAbstractTxt = model.BannerImageAbstractTxt; objctBM.AltBannerImageTxt = model.AltBannerImageTxt; objctBM.TermTxt = model.TermTxt; objctBM.TitleTxt = model.TitleTxt; objctBM.URLTxt = model.URLTxt; objctBM.StatusInd = Convert.ToBoolean(fm["IsActiveInd"]); objctBM.IsDeletedInd = false; objctBM.CreateDate = model.BoardMemberID > 0 ? objctBM.CreateDate : model.BOMCreateDate; objctBM.CreateByID = model.BoardMemberID > 0 ? objctBM.CreateByID : Convert.ToInt64(Membership.GetUser().ProviderUserKey); objctBM.LastModifyByID = Convert.ToInt64(Membership.GetUser().ProviderUserKey); objctBM.LastModifyDate = DateTime.Now; try { if (model.BoardMemberID == 0) { objDBContent.BoardOfMembers.Add(objctBM); } objDBContent.SaveChanges(); var newID = objctBM.BoardMemberID; #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Board Members"; objSCL.LogTypeTxt = model.BoardMemberID > 0 ? "Update" : "Add"; objSCL.NotesTxt = "Board Member Details" + (model.BoardMemberID > 0 ? " updated for " : " added for ") + objctBM.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.BoardOfMembers where x.BoardMemberID == newID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (model.BoardMemberID > 0) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } else { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = ""; objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion TempData["Message"] = "Board Member details " + ((model.BoardMemberID == 0) ? "saved" : "updated") + " successfully."; } catch (Exception ex) { TempData["Message"] = "Some error occured. Please try after some time."; } } return(RedirectToAction("Index", "BoardMembers", rvd)); }
public ActionResult Index(int?Page, int?PageSize, GridSortOptions gridSortOptions, FormCollection formCollection, string ObjResult) { var objContext = new db_KISDEntities(); var currentLoggedUserId = Convert.ToInt64(Membership.GetUser().ProviderUserKey); var CurrentUserRoleID = objContext.UserRoles.Where(x => x.UserID == currentLoggedUserId).FirstOrDefault().RoleID; #region Check Tab is Accessible or Not var userId = objContext.Users.Where(x => x.UserNameTxt == User.Identity.Name).Select(x => x.UserID).FirstOrDefault(); var RoleID = objContext.UserRoles.Where(x => x.UserID == userId).Select(x => x.RoleID).FirstOrDefault(); var HasTabAccess = GetAccessibleTabAccess(Convert.ToInt32(ModuleType.SchoolBoard), Convert.ToInt32(userId)); if (!(HasTabAccess || RoleID == Convert.ToInt32(UserType.SuperAdmin) || RoleID == Convert.ToInt32(UserType.Admin))) //if tab not accessible then redirect to home { return(RedirectToAction("Index", "Home")); } #endregion ViewBag.Title = ViewBag.PageTitle = "Board Members Listing"; //*******************Fill Values if Display order contains null values*************************** var displayOrderList = objContext.BoardOfMembers.Where(x => x.IsDeletedInd == false).ToList(); foreach (var item in displayOrderList) { if (string.IsNullOrEmpty(item.DisplayOrderNbr.ToString())) { var objContentData = objContext.BoardOfMembers.Where(x => x.BoardMemberID == item.BoardMemberID && x.IsDeletedInd == false).FirstOrDefault(); var displayOrder1 = (displayOrderList.Max(x => x.DisplayOrderNbr)) == null ? 1 : displayOrderList.Max(x => x.DisplayOrderNbr).Value + 1; objContentData.DisplayOrderNbr = displayOrder1; objContext.SaveChanges(); } } //*********************************************************** #region Ajax Call if (ObjResult != null) { AjaxRequest objAjaxRequest = JsonConvert.DeserializeObject <AjaxRequest>(ObjResult);//Convert json String to object Model if (objAjaxRequest.ajaxcall != null && !string.IsNullOrEmpty(objAjaxRequest.ajaxcall) && ObjResult != null && !string.IsNullOrEmpty(ObjResult)) { if (objAjaxRequest.ajaxcall == "paging") //Ajax Call type = paging i.e. Next|Previous|Back|Last { Session["pageNo"] = Page; // stores the page no for status } else if (objAjaxRequest.ajaxcall == "sorting") //Ajax Call type = sorting i.e. column sorting Asc or Desc { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); Session["GridSortOption"] = gridSortOptions; PageSize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"].ToString()) : PageSize); } else if (objAjaxRequest.ajaxcall == "ddlPaging")//Ajax Call type = drop down paging i.e. drop down value 10, 25, 50, 100, ALL { Session["PageSize"] = (Request.QueryString["pagesize"] != null ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : PageSize); Session["GridSortOption"] = gridSortOptions; Session["pageNo"] = Page; } else if (objAjaxRequest.ajaxcall == "status")//Ajax Call type = status i.e. Active/Inactive { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } objAjaxRequest.ajaxcall = null;; //remove parameter value } //Ajax Call for update status for images if (objAjaxRequest.hfid != null && objAjaxRequest.hfvalue != null && !string.IsNullOrEmpty(objAjaxRequest.hfid) && !string.IsNullOrEmpty(objAjaxRequest.hfvalue) && ObjResult != null && !string.IsNullOrEmpty(ObjResult)) { var ListingID = Convert.ToInt64(objAjaxRequest.hfid); var Listing = objContext.BoardOfMembers.Find(ListingID); if (Listing != null) { #region System Change Log var oldresult = (from a in objContext.BoardOfMembers where a.BoardMemberID == ListingID select a).ToList(); DataTable dtOld = Models.Common.LINQResultToDataTable(oldresult); #endregion if (objAjaxRequest.qs_Type == "status") { Listing.StatusInd = objAjaxRequest.hfvalue == "1"; TempData["Message"] = "Status updated successfully."; } else if (objAjaxRequest.qs_Type == "displayorder") { try { if (BoardMembersModelService.ChangeDisplayOrder(Convert.ToInt64(Listing.DisplayOrderNbr), Convert.ToInt64(objAjaxRequest.qs_value))) { TempData["Message"] = "Display Order has been changed successfully."; } } catch { TempData["Message"] = "Some Error Occured while changing Display Order, Please try again later."; } } objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); User objuser = objContext.Users.Where(x => x.UserID == currentLoggedUserId).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Board Member Listing"; objSCL.LogTypeTxt = "Update"; objSCL.NotesTxt = (objAjaxRequest.qs_Type == "status" ? "Status " : "Display order ") + "updated for " + Listing.NameTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.BoardOfMembers where x.BoardMemberID == Listing.BoardMemberID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { // if(objSCL) if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion objAjaxRequest.hfid = null; //remove parameter value objAjaxRequest.hfvalue = null; //remove parameter value PageSize = ((Request.QueryString["pagesize"] != null && Request.QueryString["pagesize"].ToString() != "All") ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : PageSize); Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } } else { TempData["Message"] = string.Empty; } ObjResult = string.Empty; } #endregion Ajax Call //This section is used to retain the values of page , pagesize and gridsortoption on complete page post back(Edit, Dlete) if (!Request.IsAjaxRequest() && Session["Edit/Delete"] != null && !string.IsNullOrEmpty(Session["Edit/Delete"].ToString())) { PageSize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"]) : Models.Common._pageSize); Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"]) : Models.Common._currentPage); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); Session["Edit/Delete"] = null; } else if (!Request.IsAjaxRequest() && Session["Edit/Delete"] == null) { gridSortOptions.Column = "BOMCreateDate"; Session["PageSize"] = null; Session["pageNo"] = null; Session["GridSortOption"] = null; } if (gridSortOptions.Column == "NameTxt" || gridSortOptions.Column == "TitleTxt" || gridSortOptions.Column == "DisplayOrderNbr" || gridSortOptions.Column == "TitleTxt" ) { } else { gridSortOptions.Column = "BOMCreateDate"; } //.. Code for get records as page view model var pagesize = PageSize.HasValue ? PageSize.Value : Models.Common._pageSize; var page = Page.HasValue ? Page.Value : Models.Common._currentPage; TempData["pager"] = pagesize; var pagedViewModel = new PagedViewModel <BoardMembersModel> { ViewData = ViewData, Query = _service.GetBoardMembers().AsQueryable(), GridSortOptions = gridSortOptions, DefaultSortColumn = "BOMCreateDate", Page = page, PageSize = pagesize, }.Setup(); if (Request.IsAjaxRequest()) // check if request comes from ajax, then return Partial view { return(View("BoardMembersListingPartial", pagedViewModel)); // ("partial view name ") } else { return(View(pagedViewModel)); } }
public ActionResult Create(ExceptionOpportunityModel model, string command, FormCollection fm) { try { using (var objContext = new db_KISDEntities()) { var rvd = new RouteValueDictionary(); rvd.Add("page", Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString()); rvd.Add("pagesize", Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString()); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "ExOpportunityCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); var file = Request.Files.Count > 0 ? Request.Files[0] : null; if (string.IsNullOrEmpty(command)) { var InnerImagesTitle = Models.Common.GetInnerImages(); ViewBag.InnerImagesTitle = InnerImagesTitle;//get all the inner image titles var IsSave = false; ViewBag.Title = ViewBag.PageTitle = (model.ExOpportunityID == 0 ? "Add " : "Edit ") + "Exceptional Opportunity"; var objExceptionOpp = objContext.ExceptionOpportunities.Where(x => x.ExOpportunityID == model.ExOpportunityID).FirstOrDefault(); if (objExceptionOpp == null) { IsSave = true; objExceptionOpp = new ExceptionOpportunity(); objExceptionOpp.IsDeletedInd = false; } model.StatusInd = fm["IsActiveInd"] == "1" ? true : false; ViewBag.ShowOnHomeInd = GetShowonHomeDataBoolean(model.ShowOnHomeInd ? "True" : "False"); ViewBag.SchoolCategoryID = GetSchoolCategories(model.SchoolCategoryID.ToString()); ViewBag.IsActiveInd = GetStatusData(model.StatusInd == true ? "1" : "0"); Int64 TypeMasterId = Convert.ToInt64(ExceptionOppTypeAlias.ExceptionOpportunity); #region System Change Log DataTable dtOld; var oldResult = (from a in objContext.ExceptionOpportunities where a.ExOpportunityID == model.ExOpportunityID select a).ToList(); dtOld = Models.Common.LINQResultToDataTable(oldResult); #endregion ViewBag.Submit = IsSave ? "Save" : "Update"; if (model != null && !string.IsNullOrEmpty(model.TitleTxt)) { var isexist = objContext.ExceptionOpportunities.Where(x => x.TitleTxt.ToLower().Trim() == model.TitleTxt.ToLower().Trim() && x.SchoolCategoryID == model.SchoolCategoryID && x.ExOpportunityID != model.ExOpportunityID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); if (isexist > 0) { ModelState.AddModelError("TitleTxt", model.TitleTxt + " already exists."); return(View(model)); } } if (model != null && !string.IsNullOrEmpty(model.PageURLTxt)) { var count = 0; if (!model.ExternalLinkInd) { count = objContext.ExceptionOpportunities.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && x.ExOpportunityID != model.ExOpportunityID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); count += objContext.Contents.Where(x => x.PageURLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); count += objContext.BoardOfMembers.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); count += objContext.Departments.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); count += objContext.GalleryListings.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); count += objContext.NewsEvents.Where(x => x.PageURLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); count += objContext.RightSections.Where(x => x.ExternalLinkURLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); } if (model.PageURLTxt.Trim().ToLower() == "error404")// Check for duplicate url and error404 url { count = count + 1; } if (count > 0) { ViewBag.FocusPageUrl = true; // Set focus on Pageurl Field if same url exist // ViewBag.InnerImages = new SelectList(objContext.Images.Where(x => x.ImageTypeID == 2 && x.StatusInd == true).ToList(), "ImageID", "TitleTxt"); if (model.PageURLTxt.ToLower().Trim() == "error404") //if user types url 'error404' below validation msg should display { ModelState.AddModelError("PageURLTxt", model.PageURLTxt + " URL is not allowed."); } else { ModelState.AddModelError("PageURLTxt", model.PageURLTxt + " URL already exists."); } return(View(model)); } } if (!model.StatusInd && model.ShowOnHomeInd) { TempData["Message"] = "Exceptional Opportunity cannot be set to show on home."; return(View(model)); } objExceptionOpp.ExOpportunityID = model.ExOpportunityID; objExceptionOpp.ParentID = (int?)null; objExceptionOpp.ExternalLinkInd = model.ExternalLinkInd; objExceptionOpp.ExternalLinkTargetInd = model.ExternalLinkTargetInd; objExceptionOpp.TitleTxt = model.TitleTxt; objExceptionOpp.URLTxt = objExceptionOpp.ExternalLinkInd == true ? model.URLTxt : model.PageURLTxt; objExceptionOpp.DescriptionTxt = string.IsNullOrEmpty(model.DescriptionTxt) ? string.Empty : model.DescriptionTxt; objExceptionOpp.StatusInd = fm["IsActiveInd"] == "1" ? true : false; objExceptionOpp.SchoolCategoryID = model.SchoolCategoryID; objExceptionOpp.BannerImageID = model.BannerImageID; objExceptionOpp.BannerImageAbstractTxt = model.BannerImageAbstractTxt; objExceptionOpp.AltBannerImageTxt = model.AltBannerImageTxt; objExceptionOpp.IsDeletedInd = false; //objExceptionOpp.SchoolCategoryID = Convert.ToInt64(fm["SchoolCategoryID"]); objExceptionOpp.ShowOnHomeInd = model.ShowOnHomeInd; objExceptionOpp.ExOpportunityCreateDate = Convert.ToDateTime(model.strCreateDate); objExceptionOpp.PageMetaTitleTxt = string.IsNullOrEmpty(model.PageMetaTitleTxt) ? string.Empty : model.PageMetaTitleTxt; objExceptionOpp.PageMetaDescriptionTxt = string.IsNullOrEmpty(model.PageMetaDescriptionTxt) ? string.Empty : model.PageMetaDescriptionTxt; objExceptionOpp.RightSectionAbstractTxt = model.RightSectionAbstractTxt; objExceptionOpp.RightSectionTitleTxt = model.RightSectionTitleTxt; objExceptionOpp.CreateDate = model.ExOpportunityID > 0 ? objExceptionOpp.CreateDate : DateTime.Now;; objExceptionOpp.CreateByID = model.ExOpportunityID > 0 ? objExceptionOpp.CreateByID : Convert.ToInt64(Membership.GetUser().ProviderUserKey); objExceptionOpp.LastModifyByID = Convert.ToInt64(Membership.GetUser().ProviderUserKey); objExceptionOpp.LastModifyDate = DateTime.Now; if (IsSave) { objContext.ExceptionOpportunities.Add(objExceptionOpp); } objContext.SaveChanges(); TempData["AlertMessage"] = model.ExOpportunityID == 0 ? "Exceptional Opportunity details saved successfully." : "Exceptional Opportunity details updated successfully."; #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Exceptional Opportunity"; objSCL.LogTypeTxt = model.ExOpportunityID > 0 ? "Update" : "Add"; objSCL.NotesTxt = "Exceptional Opportunity Details" + (model.ExOpportunityID > 0 ? " updated for " : " added for ") + model.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.ExceptionOpportunities where x.ExOpportunityID == objExceptionOpp.ExOpportunityID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (model.ExOpportunityID > 0) { // if(objSCL) if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } else { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = ""; objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion return(RedirectToAction("Index", "ExceptionOpportunity", rvd)); } else { return(RedirectToAction("Index", "ExceptionOpportunity", rvd)); } } } catch (Exception ex) { TempData["AlertMessage"] = " Some error occured. Please try again later."; return(RedirectToAction("Index", "Home")); } }
public JsonResult Delete(string iid, FormCollection fm) { //decrypt ExceptionOpportunity id(iid) iid = !string.IsNullOrEmpty(Convert.ToString(iid)) ? EncryptDecrypt.Decrypt(iid) : "0"; //.. Code for get the route value directory RouteValueDictionary rvd = new RouteValueDictionary(); ViewBag.Title = "Exceptional Opportunity"; var page = Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString(); var pagesize = Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString(); rvd.Add("pagesize", pagesize); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "ExOpportunityCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); TempData["pager"] = pagesize; Session["Edit/Delete"] = "Delete"; try { // TODO: Add delete logic here //.. Check for Exceptional Opportunity in use ExceptionOpportunity objExOpportunity = objContext.ExceptionOpportunities.Find(Convert.ToInt32(iid)); int OpportunityID = Convert.ToInt32(iid); #region System Change Log var oldresult = (from a in objContext.ExceptionOpportunities where a.ExOpportunityID == OpportunityID select a).ToList(); DataTable dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion if (objExOpportunity != null) { // objExOpportunity.IsDeletedInd = true; //****************Display Order ************************ try { var objExOpportunityService = new ExceptionOpportunityService(); objExOpportunityService.ChangeDeletedDisplayOrder(objExOpportunity.DisplayOrderNbr.Value, objExOpportunity.ExOpportunityID); } catch { } //*************************************************** // objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Exceptional Opportunity"; objSCL.LogTypeTxt = "Delete"; objSCL.NotesTxt = " Details deleted for " + objExOpportunity.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var objContextnew = new db_KISDEntities(); var newResult = (from x in objContextnew.ExceptionOpportunities where x.ExOpportunityID == OpportunityID select x); DataTable dtNew = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = col.ColumnName == "IsDeletedInd" ? dtNew.Rows[0][col.ColumnName].ToString() : ""; objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } #endregion TempData["AlertMessage"] = "Exceptional Opportunity details deleted successfully."; } //.. Checks for no of records in current page if exists records then return same page number else decrease the page number int?CheckPage = 1; var count = objContext.ExceptionOpportunities.Where(x => x.IsDeletedInd == false).Count(); if (Convert.ToInt32(page) > 1) { CheckPage = count > ((Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize)) ? Convert.ToInt32(page) : (Convert.ToInt32(page)) - 1; } rvd.Add("page", CheckPage); return(Json(Url.Action("Index", "ExceptionOpportunity", rvd))); } catch { rvd.Add("page", page); return(Json(Url.Action("Index", "ExceptionOpportunity", rvd))); } }
/// <summary> /// this method will show the Gallery listing with all type master. /// </summary> /// <param name="Page">this parameter is used to get page number to be shown.</param> /// <param name="PageSize">this parameter is used to get no of recorde to be shown.</param> /// <param name="gridSortOptions">this parameter is used to get grid sorting option.</param> /// <param name="glt">this parameter is used to get type id of the gallery listing i.e. 1,2 or 3</param> /// <param name="CategoryId">show the category id in case of image type=3 i.e Photo Gallery</param> /// <param name="formCollection">this parameter is used to get controls collection on the page.</param> /// <param name="ObjResult"></param> /// <returns>view to enter image details.</returns> public ActionResult Index(int?Page, int?PageSize, GridSortOptions gridSortOptions, FormCollection formCollection, string ObjResult) { var db_obj = new db_KISDEntities(); var currentLoggedUserId = Convert.ToInt64(Membership.GetUser().ProviderUserKey); var CurrentUserRoleID = objContext.UserRoles.Where(x => x.UserID == currentLoggedUserId).FirstOrDefault().RoleID; if (CurrentUserRoleID > 2)//if not super admin and sub admin then redirect to home { return(RedirectToAction("Index", "Home")); } ViewBag.Rolllist = GetAllUserType(CurrentUserRoleID); var searchusername = ""; var searchusertype = ""; #region Ajax Call if (ObjResult != null) { AjaxRequest objAjaxRequest = JsonConvert.DeserializeObject <AjaxRequest>(ObjResult);//Convert json String to object Model if (objAjaxRequest.ajaxcall != null && !string.IsNullOrEmpty(objAjaxRequest.ajaxcall) && ObjResult != null && !string.IsNullOrEmpty(ObjResult)) { if (objAjaxRequest.ajaxcall == "paging") //Ajax Call type = paging i.e. Next|Previous|Back|Last { Session["pageNo"] = Page; // stores the page no for status } else if (objAjaxRequest.ajaxcall == "sorting") //Ajax Call type = sorting i.e. column sorting Asc or Desc { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); Session["GridSortOption"] = gridSortOptions; PageSize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"].ToString()) : PageSize); } else if (objAjaxRequest.ajaxcall == "ddlPaging")//Ajax Call type = drop down paging i.e. drop down value 10, 25, 50, 100, ALL { Session["PageSize"] = (Request.QueryString["pagesize"] != null ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : PageSize); Session["GridSortOption"] = gridSortOptions; Session["pageNo"] = Page; } else if (objAjaxRequest.ajaxcall == "status")//Ajax Call type = status i.e. Active/Inactive { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } else if (objAjaxRequest.ajaxcall == "search")//Ajax Call type = search { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } if (!string.IsNullOrEmpty(objAjaxRequest.qs_FilterUserType)) { searchusertype = objAjaxRequest.qs_FilterUserType.Trim(); } if (!string.IsNullOrEmpty(objAjaxRequest.qs_FilterUserName)) { searchusername = objAjaxRequest.qs_FilterUserName.Trim(); } objAjaxRequest.ajaxcall = null;; //remove parameter value } //Ajax Call for update status for images if (objAjaxRequest.hfid != null && objAjaxRequest.hfvalue != null && !string.IsNullOrEmpty(objAjaxRequest.hfid) && !string.IsNullOrEmpty(objAjaxRequest.hfvalue) && ObjResult != null && !string.IsNullOrEmpty(ObjResult)) { var ListingID = System.Convert.ToInt64(objAjaxRequest.hfid); var userListing = objContext.Users.Find(ListingID); if (userListing != null) { #region System Change Log var oldresult = (from a in objContext.Users where a.UserID == ListingID select a).ToList(); DataTable dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion userListing.StatusInd = objAjaxRequest.hfvalue == "1"; objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); User objuser = objContext.Users.Where(x => x.UserID == currentLoggedUserId).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Users Listing"; objSCL.LogTypeTxt = "Update"; objSCL.NotesTxt = "Status updated for " + userListing.FirstNameTxt + " " + userListing.LastNameTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Users where x.UserID == userListing.UserID select x); DataTable dtNew = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { // if(objSCL) if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion TempData["AlertMessage"] = "Status updated successfully."; objAjaxRequest.hfid = null; //remove parameter value objAjaxRequest.hfvalue = null; //remove parameter value PageSize = ((Request.QueryString["pagesize"] != null && Request.QueryString["pagesize"].ToString() != "All") ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : PageSize); Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } } else { TempData["Message"] = string.Empty; } ObjResult = string.Empty; } #endregion Ajax Call ViewBag.Title = ViewBag.PageTitle = "User Listing"; //This section is used to retain the values of page , pagesize and gridsortoption on complete page post back(Edit, Dlete) if (!Request.IsAjaxRequest() && Session["Edit/Delete"] != null && !string.IsNullOrEmpty(Session["Edit/Delete"].ToString())) { PageSize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"]) : Models.Common._pageSize); Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"]) : Models.Common._currentPage); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); Session["Edit/Delete"] = null; } else if (!Request.IsAjaxRequest() && Session["Edit/Delete"] == null) { gridSortOptions.Column = "UserCreateDate"; Session["PageSize"] = null; Session["pageNo"] = null; Session["GridSortOption"] = null; } if (gridSortOptions.Column == "Name" || gridSortOptions.Column == "UserCreateDate" || gridSortOptions.Column == "UserNameTxt") { } else { gridSortOptions.Column = "UserCreateDate"; } //.. Code for get records as page view model var pagesize = PageSize.HasValue ? PageSize.Value : Models.Common._pageSize; var page = Page.HasValue ? Page.Value : Models.Common._currentPage; TempData["pager"] = pagesize; var pagedViewModel = new PagedViewModel <UsersModel> { ViewData = ViewData, Query = _service.GetUserListingView(CurrentUserRoleID, searchusername, searchusertype), GridSortOptions = gridSortOptions, DefaultSortColumn = "UserCreateDate", Page = page, PageSize = pagesize, }.Setup(); if (Request.IsAjaxRequest()) // check if request comes from ajax, then return Partial view { return(View("UserListingPartial", pagedViewModel)); // ("partial view name ") } else { return(View(pagedViewModel)); } }
public ActionResult Create(ContentModel model, string command, FormCollection fm) { try { using (var objContext = new db_KISDEntities()) { var file = Request.Files.Count > 0 ? Request.Files[0] : null; if (string.IsNullOrEmpty(command)) { var InnerImagesTitle = Models.Common.GetInnerImages(); ViewBag.InnerImagesTitle = InnerImagesTitle;//get all the inner image titles var RightSectionTitle = (from db in objContext.RightSections where db.StatusInd == true select new { db.TitleTxt, db.RightSectionID }).ToList().OrderBy(x => x.TitleTxt); ViewBag.RightSectionTitle = RightSectionTitle; var ContentType = model.ContentTypeID; ViewBag.ContentTypeID = ContentType; var IsSave = false; var contenttypetitle = objContext.ContentTypes.Find(ContentType).ContentTypeNameTxt; ViewBag.Title = contenttypetitle; ViewBag.PageTitle = model.PageTitleTxt ?? ""; ViewBag.IsActiveInd = GetStatusData(model.StatusInd == true ? "1" : "0"); var objContent = objContext.Contents.Where(x => x.ContentTypeID == ContentType).FirstOrDefault(); if (objContent == null) { IsSave = true; objContent = new Content(); } #region System Change Log DataTable dtOld; var oldResult = (from a in objContext.Contents where a.ContentID == model.ContentID select a).ToList(); dtOld = Models.Common.LINQResultToDataTable(oldResult); #endregion ViewBag.Submit = IsSave ? "Save" : "Update"; if (model != null && !string.IsNullOrEmpty(model.PageURLTxt)) { var count = 0; count = objContext.Contents.Where(x => x.PageURLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && x.ContentID != model.ContentID && x.IsDeletedInd == false).Count(); count += objContext.BoardOfMembers.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.Departments.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.ExceptionOpportunities.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.GalleryListings.Where(x => x.URLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.NewsEvents.Where(x => x.PageURLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && x.IsDeletedInd == false).Count(); count += objContext.RightSections.Where(x => x.ExternalLinkURLTxt.ToLower().Trim() == model.PageURLTxt.ToLower().Trim() && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); if (model.PageURLTxt.Trim().ToLower() == "error404")// Check for duplicate url and error404 url { count = count + 1; } if (count > 0) { #region Route value directory var rvd = new RouteValueDictionary(); rvd.Add("ContentType", ContentType); #endregion ViewBag.FocusPageUrl = true; // Set focus on Pageurl Field if same url exist ViewBag.InnerImages = new SelectList(objContext.Images.Where(x => x.ImageTypeID == 2 && x.StatusInd == true).ToList(), "ImageID", "TitleTxt"); if (model.PageURLTxt.ToLower().Trim() == "error404") //if user types url 'error404' below validation msg should display { ModelState.AddModelError("PageURLTxt", model.PageURLTxt + " URL is not allowed."); } else { ModelState.AddModelError("PageURLTxt", model.PageURLTxt + " URL already exists."); } return(View(model)); } } objContent.ContentTypeID = ContentType; objContent.ParentID = (int?)null; objContent.IsExternalLinkInd = model.IsExternalLinkInd; objContent.ExternalLinkTxt = string.IsNullOrEmpty(model.ExternalLinkTxt) ? string.Empty : model.ExternalLinkTxt; objContent.ExternalLinkTargetInd = model.IsExternalLinkInd ? model.ExternalLinkTargetInd : false; objContent.PageTitleTxt = model.IsExternalLinkInd ? string.Empty :(string.IsNullOrEmpty(model.PageTitleTxt) ? string.Empty : model.PageTitleTxt); objContent.MenuTitleTxt = string.IsNullOrEmpty(model.MenuTitleTxt) ? (ContentType == 1 ? "home" : string.Empty) : model.MenuTitleTxt.Replace("<", ""); objContent.PageURLTxt = model.IsExternalLinkInd ? string.Empty : (string.IsNullOrEmpty(model.PageURLTxt) ? (ContentType == 1 ? "home" : string.Empty) : (ContentType == 1 ? "home" : model.PageURLTxt)); objContent.BannerImageID = model.IsExternalLinkInd ? 0 : model.BannerImageID; objContent.AbstractTxt = string.IsNullOrEmpty(model.AbstractTxt) ? string.Empty : model.AbstractTxt; objContent.BannerImageAbstractTxt = model.IsExternalLinkInd ? string.Empty :(string.IsNullOrEmpty(model.BannerImageAbstractTxt) ? string.Empty : model.BannerImageAbstractTxt); objContent.DescriptionTxt = model.IsExternalLinkInd ? string.Empty :(string.IsNullOrEmpty(model.DescriptionTxt) ? string.Empty : model.DescriptionTxt); objContent.StatusInd = (ContentType == Convert.ToInt32(ContentTypeAlias.Footer) || ContentType == Convert.ToInt32(ContentTypeAlias.Header) || ContentType == Convert.ToInt32(ContentTypeAlias.Search) || ContentType == Convert.ToInt32(ContentTypeAlias.Home) ) ? true : (fm["IsActiveInd"] == "1" ? true : false); objContent.ContentCreateDate = model.ContentCreateDate; objContent.PageMetaTitleTxt = model.IsExternalLinkInd ? string.Empty :(string.IsNullOrEmpty(model.PageMetaTitleTxt) ? string.Empty : model.PageMetaTitleTxt); objContent.PageMetaDescriptionTxt = model.IsExternalLinkInd ? string.Empty :(string.IsNullOrEmpty(model.PageMetaDescriptionTxt) ? string.Empty : model.PageMetaDescriptionTxt); objContent.AltBannerImageTxt = model.IsExternalLinkInd ? string.Empty : model.AltBannerImageTxt; objContent.RightSectionAbstractTxt = model.IsExternalLinkInd ? string.Empty : model.RightSectionAbstractTxt; objContent.RightSectionTitleTxt = model.IsExternalLinkInd ? string.Empty : model.RightSectionTitleTxt; objContent.IsFacebookSharingInd = model.IsExternalLinkInd ? false : model.IsFacebookSharingInd; objContent.IsGooglePlusSharingInd = model.IsExternalLinkInd ? false: model.IsGooglePlusSharingInd; objContent.IsTwitterSharingInd = model.IsExternalLinkInd ? false : model.IsTwitterSharingInd; objContent.IsDeletedInd = false; objContent.CreateDate = model.ContentID > 0 ? objContent.CreateDate : DateTime.Now;; objContent.CreateByID = model.ContentID > 0 ? objContent.CreateByID : Convert.ToInt64(Membership.GetUser().ProviderUserKey); objContent.LastModifyByID = Convert.ToInt64(Membership.GetUser().ProviderUserKey); objContent.LastModifyDate = DateTime.Now; //Save image path if (file != null && file.ContentLength > 0) { #region Upload Image Models.Common.CreateFolder(); var NewImgName = UploadImage(); //var croppedfile = new FileInfo(Server.MapPath(NewImgName.Data.ToString()));//err var fileName = NewImgName.Data; TempData["CroppedImage"] = null; objContent.AbstractTxt = "~/WebData/images/" + fileName; #endregion if (!string.IsNullOrEmpty(model.AbstractTxt) && ( (objContent.ContentTypeID == Convert.ToInt32(ContentTypeAlias.Header)) )) { try { Models.Common.DeleteImage(Server.MapPath(model.AbstractTxt)); } catch { } } } if (IsSave) { objContext.Contents.Add(objContent); } objContext.SaveChanges(); var AlertText = IsContent(objContent.ContentTypeID) ? " Content" : " Page Content"; TempData["Alert"] = contenttypetitle + (IsSave ? AlertText + " saved successfully." : AlertText + " updated successfully."); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Content"; objSCL.LogTypeTxt = model.ContentID > 0 ? "Update" : "Add"; objSCL.NotesTxt = (GetContentType(model.ContentTypeID)) + " Details" + (model.ContentID > 0 ? " updated for " : " added for ") + model.PageTitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Contents where x.ContentID == objContent.ContentID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (model.ContentID > 0) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } else { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = ""; objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion return(RedirectToAction("Index", "Home")); } else { return(RedirectToAction("Index", "Home")); } } } catch (Exception ex) { TempData["Alert"] = " Some error occured. Please try again later."; return(RedirectToAction("Index", "Home")); } }
public ActionResult Index(int?page, int?pagesize, GridSortOptions gridSortOptions, string tmi, string si, FormCollection fm, string objresult) { si = !string.IsNullOrEmpty(Convert.ToString(si)) ? EncryptDecrypt.Decrypt(si) : "0"; long _tmi = !string.IsNullOrEmpty(Convert.ToString(tmi)) ? Convert.ToInt64(EncryptDecrypt.Decrypt(tmi)) : 0; #region Check Tab is Accessible or Not db_KISDEntities objContext = new db_KISDEntities(); var userId = objContext.Users.Where(x => x.UserNameTxt == User.Identity.Name).Select(x => x.UserID).FirstOrDefault(); var RoleID = objContext.UserRoles.Where(x => x.UserID == userId).Select(x => x.RoleID).FirstOrDefault(); var HasTabAccess = GetAccessibleTabAccess( _tmi == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? Convert.ToInt32(ModuleType.Masters) : Convert.ToInt32(ModuleType.School) , Convert.ToInt32(userId)); if (!(HasTabAccess || RoleID == Convert.ToInt32(UserType.SuperAdmin) || RoleID == Convert.ToInt32(UserType.Admin))) //if tab not accessible then redirect to home { return(RedirectToAction("Index", "Home")); } #endregion if (string.IsNullOrEmpty(gridSortOptions.Column)) { gridSortOptions.Direction = MvcContrib.Sorting.SortDirection.Descending; } ModelService objModelService = new ModelService(); using (objContext = new db_KISDEntities()) { int menutypeId = Convert.ToInt32(si); ViewBag.PageTitle = _tmi == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? " School Category Listing" : "School Listing"; ViewBag.Title = _tmi == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? " School Category Listing" : "School Listing"; //*******************Fill Values if Display order contains null values*************************** //var displayOrderList = objContext.Contents.Where(x => x.ContentTypeID == menutypeId && x.ParentID == null).ToList(); //foreach (var item in displayOrderList) //{ // if (string.IsNullOrEmpty(item.DisplayOrderNbr.ToString())) // { // var objContentData = objContext.Contents.Where(x => x.ContentID == item.ContentID).FirstOrDefault(); // var displayOrder1 = (displayOrderList.Max(x => x.DisplayOrderNbr)) == null ? 1 : displayOrderList.Max(x => x.DisplayOrderNbr).Value + 1; // objContentData.DisplayOrderNbr = displayOrder1; // objContext.SaveChanges(); // } //} //*********************************************************** #region Ajax Call // Ajax call type if (objresult != null) { AjaxRequest objAjaxRequest = JsonConvert.DeserializeObject <AjaxRequest>(objresult);//Convert json String to object Model if (objAjaxRequest.ajaxcall != null && !string.IsNullOrEmpty(objAjaxRequest.ajaxcall) && objresult != null && !string.IsNullOrEmpty(objresult)) { if (objAjaxRequest.ajaxcall == "paging") //Ajax Call type = paging i.e. Next|Previous|Back|Last { Session["pageNo"] = page; // stores the page no for status } else if (objAjaxRequest.ajaxcall == "sorting") //Ajax Call type = sorting i.e. column sorting Asc or Desc { page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : page); Session["GridSortOption"] = gridSortOptions; pagesize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"].ToString()) : pagesize); } else if (objAjaxRequest.ajaxcall == "ddlPaging")//Ajax Call type = drop down paging i.e. drop down value 10, 25, 50, 100, ALL { Session["PageSize"] = (Request.QueryString["pagesize"] != null ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : pagesize); Session["GridSortOption"] = gridSortOptions; Session["pageNo"] = page; } else if (objAjaxRequest.ajaxcall == "status")//Ajax Call type = status i.e. Active/Inactive { page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } objAjaxRequest.ajaxcall = null;//remove parameter value } //Ajax CAll for update status for images if (objAjaxRequest.hfid != null && objAjaxRequest.hfvalue != null && !string.IsNullOrEmpty(objAjaxRequest.hfid) && !string.IsNullOrEmpty(objAjaxRequest.hfvalue) && objresult != null && !string.IsNullOrEmpty(objresult)) { var schoolID = Convert.ToInt64(objAjaxRequest.hfid); var objSchool = objContext.Schools.Find(schoolID); if (objSchool != null) { #region System Change Log var oldresult = (from a in objContext.Schools where a.SchoolID == schoolID select a).ToList(); DataTable dtOld = Models.Common.LINQResultToDataTable(oldresult); #endregion objSchool.StatusInd = objAjaxRequest.hfvalue == "1" ? true : false; var isexist = objContext.Schools.Where(x => x.SchoolCategoryID == schoolID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); isexist += objContext.ExceptionOpportunities.Where(x => x.SchoolCategoryID == schoolID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); if (isexist > 0 && !objSchool.StatusInd.Value) { TempData["Message"] = "School Category is in use, cannot be set as Inactive."; } else { objContext.SaveChanges(); TempData["AlertMessage"] = "Status updated successfully."; #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = objSchool.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? "School Category" : "School "; objSCL.LogTypeTxt = objSchool.SchoolID > 0 ? "Update" : "Add"; objSCL.NotesTxt = (objSchool.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? "School Category" : "School ") + " Details" + (objSchool.SchoolID > 0 ? " updated for " : " added for ") + objSchool.NameTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Schools where x.SchoolID == objSchool.SchoolID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion } } objAjaxRequest.hfid = null; //remove parameter value objAjaxRequest.hfvalue = null; //remove parameter value pagesize = (Request.QueryString["pagesize"] != null ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : pagesize); page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } //*******DisplayOrder Dorder*************** else if (objAjaxRequest.qs_checkboxselected != null && objAjaxRequest.qs_value != null && !string.IsNullOrEmpty(objAjaxRequest.qs_checkboxselected) && !string.IsNullOrEmpty(objAjaxRequest.qs_value) && objAjaxRequest.qs_Type.Trim().ToLower() == "displayorder".Trim().ToLower()) { var contentID = Convert.ToInt64(objAjaxRequest.qs_checkboxselected); var objMenuContent = objContext.Contents.Find(contentID); if (objMenuContent != null) { try { //var displayOrder = string.IsNullOrEmpty(objMenuContent.DisplayOrderNum.ToString()) ? objHAI.Contents.Where(x => x.ContentTypeID == menutypeId).Max(x => x.DisplayOrderNum).Value : objMenuContent.DisplayOrderNum.Value ; //if (objModelService.ChangeImageDisplayOrder(objMenuContent.DisplayOrderNbr.Value, Convert.ToInt32(objAjaxRequest.qs_value), Convert.ToInt64(objMenuContent.ContentID), menutypeId)) //{ // TempData["AlertMessage"] = "Display Order has been changed successfully."; //} } catch { TempData["AlertMessage"] = "Some Error Occured while changing Display Order, Please try again later."; } objAjaxRequest.qs_checkboxselected = null; //remove parameter value objAjaxRequest.qs_value = null; //remove parameter value objAjaxRequest.qs_Type = null; //remove parameter value pagesize = (Request.QueryString["pagesize"] != null ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : pagesize); page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } } else { TempData["AlertMessage"] = string.Empty; } objresult = string.Empty; } #endregion Ajax Call //This section is used to retain the values of page , pagesize and gridsortoption on complete page post back(Edit, Dlete) if (!Request.IsAjaxRequest() && Session["Edit/Delete"] != null && !string.IsNullOrEmpty(Session["Edit/Delete"].ToString())) { pagesize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"]) : Models.Common._pageSize); page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"]) : Models.Common._currentPage); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); Session["Edit/Delete"] = null; } else if (!Request.IsAjaxRequest() && Session["Edit/Delete"] == null) { gridSortOptions.Column = "SchoolCreateDate"; Session["PageSize"] = null; Session["pageNo"] = null; Session["GridSortOption"] = null; } //.. Code for get records as Page View Model var pageSize = pagesize.HasValue ? pagesize.Value : Models.Common._pageSize; var Page = page.HasValue ? page.Value : Models.Common._currentPage; TempData["pager"] = pageSize; if (gridSortOptions.Column != null) { if (gridSortOptions.Column == "NameTxt" || gridSortOptions.Column == "SchoolCategoryName" || gridSortOptions.Column == "PageTitleTxt" || gridSortOptions.Column == "SchoolCreateDate" || gridSortOptions.Column == "DisplayOrderNum") { } else { gridSortOptions.Column = "SchoolCreateDate"; } } var pagedViewModel = new PagedViewModel <SchoolModel> { ViewData = ViewData, Query = objModelService.GetData(_tmi).AsQueryable(), GridSortOptions = gridSortOptions, DefaultSortColumn = "SchoolCreateDate", Page = Page, PageSize = pageSize, } .Setup(); if (Request.IsAjaxRequest()) // check if request comes from ajax, then return Partial view { return(View("SchoolPartial", pagedViewModel)); // ("partial view name ") } else { return(View(pagedViewModel)); } } }
/// <summary> /// this method will show the Announcement listing with all Announcement type. /// </summary> /// <param name="Page">this parameter is used to get page number to be shown.</param> /// <param name="PageSize">this parameter is used to get no of recorde to be shown.</param> /// <param name="gridSortOptions">this parameter is used to get grid sorting option.</param> /// <param name="it">this parameter is used to get type id of the Announcement i.e. 1,2 or 3</param> /// <param name="formCollection">this parameter is used to get controls collection on the page.</param> /// <param name="ObjResult"></param> /// <returns>view to enter Announcement details.</returns> public ActionResult Index(int?Page, int?PageSize, GridSortOptions gridSortOptions, string it, FormCollection formCollection, string ObjResult) { var db_obj = new db_KISDEntities(); //Check for valid TypeMasterID if (it == null) { return(RedirectToAction("Index", "Home")); } #region Check Tab is Accessible or Not db_KISDEntities objContext = new db_KISDEntities(); var userId = objContext.Users.Where(x => x.UserNameTxt == User.Identity.Name).Select(x => x.UserID).FirstOrDefault(); var RoleID = objContext.UserRoles.Where(x => x.UserID == userId).Select(x => x.RoleID).FirstOrDefault(); var HasTabAccess = GetAccessibleTabAccess(Convert.ToInt32(ModuleType.Masters), Convert.ToInt32(userId)); if (!(HasTabAccess || RoleID == Convert.ToInt32(UserType.SuperAdmin) || RoleID == Convert.ToInt32(UserType.Admin))) //if tab not accessible then redirect to home { return(RedirectToAction("Index", "Home")); } #endregion //decrypt Announcement type id(it) if (!string.IsNullOrEmpty(Convert.ToString(it))) { it = Convert.ToString(EncryptDecrypt.Decrypt(it)); } TempData["CroppedImage"] = null; var AnnouncementType = it != null?Convert.ToInt32(it) : Convert.ToInt32(AnnouncementTypeAlias.Announcement); ViewBag.TypeMasterID = AnnouncementType; //*******************Fill Values if Display order contains null values*************************** var displayOrderList = objContext.Announcements.Where(x => x.TypeMasterID == AnnouncementType && x.IsDeletedInd == false).ToList(); foreach (var item in displayOrderList) { if (string.IsNullOrEmpty(item.DisplayOrderNbr.ToString())) { var objContentData = objContext.Announcements.Where(x => x.AnnouncementID == item.AnnouncementID).FirstOrDefault(); var NewdisplayOrder = (displayOrderList.Max(x => x.DisplayOrderNbr)) == null ? 1 : displayOrderList.Max(x => x.DisplayOrderNbr).Value + 1; objContentData.DisplayOrderNbr = NewdisplayOrder; objContext.SaveChanges(); } } //*********************************************************** #region Ajax Call if (ObjResult != null) { AjaxRequest objAjaxRequest = JsonConvert.DeserializeObject <AjaxRequest>(ObjResult);//Convert json String to object Model if (objAjaxRequest.ajaxcall != null && !string.IsNullOrEmpty(objAjaxRequest.ajaxcall) && ObjResult != null && !string.IsNullOrEmpty(ObjResult)) { if (objAjaxRequest.ajaxcall == "paging") //Ajax Call type = paging i.e. Next|Previous|Back|Last { Session["pageNo"] = Page; // stores the page no for status } else if (objAjaxRequest.ajaxcall == "sorting") //Ajax Call type = sorting i.e. column sorting Asc or Desc { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); Session["GridSortOption"] = gridSortOptions; PageSize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"].ToString()) : PageSize); } else if (objAjaxRequest.ajaxcall == "ddlPaging")//Ajax Call type = drop down paging i.e. drop down value 10, 25, 50, 100, ALL { Session["PageSize"] = (Request.QueryString["pagesize"] != null ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : PageSize); Session["GridSortOption"] = gridSortOptions; Session["pageNo"] = Page; } else if (objAjaxRequest.ajaxcall == "status")//Ajax Call type = status i.e. Active/Inactive { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } else if (objAjaxRequest.ajaxcall == "displayorder")//Ajax Call type = Display Order i.e. drop down values { Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } objAjaxRequest.ajaxcall = null;; //remove parameter value } //Ajax Call for update status for Announcements if (objAjaxRequest.hfid != null && objAjaxRequest.hfvalue != null && !string.IsNullOrEmpty(objAjaxRequest.hfid) && !string.IsNullOrEmpty(objAjaxRequest.hfvalue) && ObjResult != null && !string.IsNullOrEmpty(ObjResult)) { var Announcementid = System.Convert.ToInt64(objAjaxRequest.hfid); var Announcements = objContext.Announcements.Find(Announcementid); if (Announcements != null) { #region System Change Log var oldresult = (from a in objContext.Announcements where a.AnnouncementID == Announcementid select a).ToList(); DataTable dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion var isvalid = true; if (AnnouncementType == Convert.ToInt32(AnnouncementTypeAlias.OnscreenAlert)) { var onscreenalerttypeid = Convert.ToInt32(AnnouncementTypeAlias.OnscreenAlert); var alertcnt = objContext.Announcements.Where(x => x.TypeMasterID == onscreenalerttypeid && x.StatusInd == true && x.IsDeletedInd == false).Count(); if (alertcnt == 3 && objAjaxRequest.hfvalue == "1") { TempData["Message"] = "Maximum three onscreen alerts can be set as active to show on website."; isvalid = false; } } if (isvalid) { Announcements.StatusInd = objAjaxRequest.hfvalue == "1"; if (objAjaxRequest.qs_Type == "displayorder") { if (AnnouncementService.ChangeAnnouncementDisplayOrder(Announcements.DisplayOrderNbr.Value, Convert.ToInt64(objAjaxRequest.qs_value), Announcements.AnnouncementID, Convert.ToInt32(Announcements.TypeMasterID))) { TempData["AlertMessage"] = "Display Order has been changed successfully."; } } else { objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = _service.GetAnnouncementType(Announcements.TypeMasterID.Value); objSCL.LogTypeTxt = Announcements.AnnouncementID > 0 ? "Update" : "Add"; objSCL.NotesTxt = _service.GetAnnouncementType(Announcements.TypeMasterID.Value) + " Details updated status for " + Announcements.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Announcements where x.AnnouncementID == Announcements.AnnouncementID select x); DataTable dtNew = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { // if(objSCL) if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion TempData["AlertMessage"] = "Status updated successfully."; } } objAjaxRequest.hfid = null; //remove parameter value objAjaxRequest.hfvalue = null; //remove parameter value objAjaxRequest.qs_Type = null; PageSize = ((Request.QueryString["pagesize"] != null && Request.QueryString["pagesize"].ToString() != "All") ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : Models.Common._pageSize); Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : Models.Common._currentPage); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } } else { TempData["Message"] = string.Empty; } ObjResult = string.Empty; } #endregion Ajax Call ViewBag.Title = ViewBag.PageTitle = _service.GetAnnouncementType(AnnouncementType);//+ "s" //This section is used to retain the values of page , pagesize and gridsortoption on complete page post back(Edit, Dlete) if (!Request.IsAjaxRequest() && Session["Edit/Delete"] != null && !string.IsNullOrEmpty(Session["Edit/Delete"].ToString())) { PageSize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"]) : Models.Common._pageSize); Page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"]) : Models.Common._currentPage); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); Session["Edit/Delete"] = null; } else if (!Request.IsAjaxRequest() && Session["Edit/Delete"] == null) { gridSortOptions.Column = "AnnouncementCreateDate"; Session["PageSize"] = null; Session["pageNo"] = null; Session["GridSortOption"] = null; } if (gridSortOptions.Column == "TitleTxt" || gridSortOptions.Column == "AnnouncementCreateDate" || gridSortOptions.Column == "DisplayOrderNbr") { } else { gridSortOptions.Column = "AnnouncementCreateDate"; } //.. Code for get records as page view model var pagesize = PageSize.HasValue ? PageSize.Value : Models.Common._pageSize; var page = Page.HasValue ? Page.Value : Models.Common._currentPage; TempData["pager"] = pagesize; long announcementType = Convert.ToInt64(it); var pagedViewModel = new PagedViewModel <AnnouncementModel> { ViewData = ViewData, Query = _service.GetAnnouncements(announcementType).AsQueryable(), GridSortOptions = gridSortOptions, DefaultSortColumn = "AnnouncementCreateDate", Page = page, PageSize = pagesize, }.Setup(); if (Request.IsAjaxRequest()) // check if request comes from ajax, then return Partial view { return(View("AnnouncementPartial", pagedViewModel)); // ("partial view name ") } else { return(View(pagedViewModel)); } }
public ActionResult Create(string command, FormCollection fm, ImageModel model, int?CategoryID) { try { var width = 1600; HttpPostedFileBase file = Request.Files.Count > 0 ? Request.Files[0] : null; ViewBag.Title = (model.ImageID == 0 ? "Add " : "Edit ") + _service.GetImageType(model.ImageTypeID); ViewBag.StatusInd = GetStatusData(string.Empty); ViewBag.Submit = (model.ImageID == 0 ? "Save" : "Update"); ViewBag.ImageTypeId = model.ImageTypeID; ViewBag.Date = model.ImageCreateDate.Value.ToShortDateString(); ViewBag.StartDateStr = model.DisplayStartDate != null?Convert.ToString(model.DisplayStartDate) : ""; ViewBag.EndDateStr = model.DisplayEndDate != null?Convert.ToString(model.DisplayEndDate) : ""; var rvd = new RouteValueDictionary(); rvd.Add("page", Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString()); rvd.Add("pagesize", Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString()); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "ImageCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); rvd.Add("it", EncryptDecrypt.Encrypt(Convert.ToString(model.ImageTypeID))); ViewBag.PageTitle = (model.ImageID == 0 ? "Add " : "Edit ") + _service.GetImageType(model.ImageTypeID) + " Details"; ViewBag.ImageTypeTitle = _service.GetImageType(model.ImageTypeID) + (model.ImageTypeID != 4 ? "s" : " Listing"); #region System Change Log DataTable dtOld; var oldresult = (from a in objContext.Images where a.ImageID == model.ImageID select a).ToList(); dtOld = Models.Common.LINQResultToDataTable(oldresult); #endregion if (string.IsNullOrEmpty(command)) { Image objImage; if (model.ImageID > 0) { objImage = objContext.Images.Find(model.ImageID); } else { objImage = new Image(); objImage.IsDeletedInd = false; } ViewBag.StatusInd = GetStatusData(objImage.StatusInd ? "1" : "0"); objImage.ImageTypeID = model.ImageTypeID; objImage.StatusInd = fm["StatusInd"].ToString() == "1"; if (!string.IsNullOrEmpty(model.TitleTxt)) { var chkimage = objContext.Images.Where(x => x.TitleTxt.Trim() == model.TitleTxt.Trim() && x.ImageTypeID == model.ImageTypeID && x.ImageID != model.ImageID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Any(); if (chkimage)//check image title on adding new image details or updating existing 1 { TempData["CroppedImage"] = null; ModelState.AddModelError("TitleTxt", model.TitleTxt + " title already exists."); return(View(model)); } var content = objContext.Contents.Where(x => x.BannerImageID == model.ImageID).ToList(); if (content.Count > 0 && !objImage.StatusInd) { TempData["CroppedImage"] = null; ViewBag.Date = model.ImageCreateDate.Value.ToShortDateString().Trim(); TempData["Message"] = "Image is in use, cannot be set as Inactive."; return(View(model)); } int ActiveBanners = objContext.Images.Where(x => x.StatusInd == true && x.ImageTypeID == model.ImageTypeID && x.IsDeletedInd == false).Count(); var PrevStatus = objContext.Images.Where(x => x.ImageID == model.ImageID && x.ImageTypeID == model.ImageTypeID).Select(x => x.StatusInd).FirstOrDefault(); if (ActiveBanners == 1 && objImage.StatusInd == false && model.ImageTypeID == Convert.ToInt32(ImageTypeAlias.BannerImage) && PrevStatus == true) { TempData["Message"] = "At-least one image must remain active to show for Home Page slider."; return(View(model)); } } objImage.TitleTxt = model.TitleTxt ?? ""; objImage.AbstractTxt = !string.IsNullOrEmpty(model.AbstractTxt) ? model.AbstractTxt : string.Empty; objImage.AltImageTxt = !string.IsNullOrEmpty(model.AltImageTxt) ? model.AltImageTxt.Replace(">", "").Replace("<", "") : string.Empty; objImage.ImageCreateDate = model.ImageCreateDate; objImage.URLTxt = model.URLTxt; objImage.TargetWindowInd = model.TargetWindowInd; objImage.DisplayStartDate = model.DisplayStartDate != null ? model.DisplayStartDate : null; objImage.DisplayEndDate = model.DisplayEndDate != null ? model.DisplayEndDate : null; objImage.CreateDate = model.ImageID > 0 ? objImage.CreateDate : DateTime.Now;; objImage.CreateByID = model.ImageID > 0 ? objImage.CreateByID : Convert.ToInt64(Membership.GetUser().ProviderUserKey); objImage.LastModifyByID = Convert.ToInt64(Membership.GetUser().ProviderUserKey); objImage.LastModifyDate = DateTime.Now; if (TempData["CroppedImage"] == null) { #region Image if (file != null && file.ContentLength > 0) { try { } catch { } var fileName = Path.GetFileName(file.FileName); #region Upload Image Models.Common.CreateFolder(); //.. Get extension of the document var fileExtension = fileName.Substring(fileName.LastIndexOf("."), fileName.Length - fileName.LastIndexOf(".")); //.. Set fullname of the document path var MyGuid = Guid.NewGuid(); fileName = MyGuid.ToString() + fileExtension; //.. Create path of the document to save into the defined physical path. var strPath = Request.PhysicalApplicationPath + "WebData\\images\\" + fileName; file.SaveAs(strPath); objImage.ImgPathTxt = "~/WebData/images/" + fileName; var myImage = Models.Common.CreateImageThumbnail(strPath, width); myImage.Save(Request.PhysicalApplicationPath + "WebData\\thumbnails\\" + fileName, fileExtension.ToLower() == ".png" ? System.Drawing.Imaging.ImageFormat.Png : fileExtension.ToLower() == ".gif" ? System.Drawing.Imaging.ImageFormat.Gif : System.Drawing.Imaging.ImageFormat.Jpeg ); myImage.Dispose(); var mysmallImage = Models.Common.CreateImageThumbnail(strPath, 100); mysmallImage.Save(Request.PhysicalApplicationPath + "WebData\\thumbnails_Small\\" + fileName, fileExtension.ToLower() == ".png" ? System.Drawing.Imaging.ImageFormat.Png : fileExtension.ToLower() == ".gif" ? System.Drawing.Imaging.ImageFormat.Gif : System.Drawing.Imaging.ImageFormat.Jpeg ); mysmallImage.Dispose(); #endregion } #endregion } else { #region Cropped Image try { //Models.Common.DeleteImage(Server.MapPath(objImage.ImgPathTxt)); //Models.Common.DeleteImage(Server.MapPath(objImage.ImgPathTxt).Replace("images", "thumbnails")); //Models.Common.DeleteImage(Server.MapPath(objImage.ImgPathTxt).Replace("images", "thumbnails_Small")); } catch { } var croppedfile = new FileInfo(Server.MapPath(TempData["CroppedImage"].ToString())); var fileName = croppedfile.Name; croppedfile = null; var sourcePath = Server.MapPath(TempData["CroppedImage"].ToString()); var targetPath = Request.PhysicalApplicationPath + "WebData\\"; System.IO.File.Copy(Path.Combine(sourcePath.Replace(fileName, ""), fileName), Path.Combine(targetPath + "images\\", fileName), true); System.IO.File.Copy(Path.Combine(sourcePath.Replace(fileName, ""), fileName), Path.Combine(targetPath + "thumbnails\\", fileName), true); var mysmallImage = Models.Common.CreateImageThumbnail(targetPath + "images\\" + fileName, 100); mysmallImage.Save(targetPath + "thumbnails_Small\\" + fileName, System.Drawing.Imaging.ImageFormat.Png); mysmallImage.Dispose(); objImage.ImgPathTxt = "~/WebData/images/" + fileName; try { System.IO.File.Delete(Server.MapPath(TempData["CroppedImage"].ToString())); } catch { } TempData["CroppedImage"] = null; #endregion } if (model.ImageID > 0) { TempData["AlertMessage"] = _service.GetImageType(model.ImageTypeID) + " details updated successfully."; objContext.SaveChanges(); } else { objContext.Images.Add(objImage); objContext.SaveChanges(); TempData["AlertMessage"] = _service.GetImageType(model.ImageTypeID) + " details saved successfully."; } #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Images"; objSCL.LogTypeTxt = model.ImageID > 0 ? "Update" : "Add"; objSCL.NotesTxt = (_service.GetImageType(model.ImageTypeID)) + " Details" + (model.ImageID > 0 ? " updated for " : " added for ") + model.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Images where x.ImageID == objImage.ImageID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (model.ImageID > 0) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } else { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = ""; objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion return(RedirectToAction("Index", "Image", rvd)); } else { return(RedirectToAction("Index", "Image", rvd)); } } catch (Exception ex) { TempData["AlertMessage"] = "Some error occured. Please try again after some time."; return(View(model)); } }
public JsonResult Delete(string it, string iid, int?CategoryID, FormCollection fm) { //decrypt image type id(it) it = !string.IsNullOrEmpty(Convert.ToString(it)) ? EncryptDecrypt.Decrypt(it) : "0"; //decrypt image id(iid) iid = !string.IsNullOrEmpty(Convert.ToString(iid)) ? EncryptDecrypt.Decrypt(iid) : "0"; //.. Code for get the route value directory RouteValueDictionary rvd = new RouteValueDictionary(); ViewBag.ImageTypeId = it; ViewBag.Title = _service.GetImageType(Convert.ToInt32(it)); var page = Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString(); var pagesize = Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString(); rvd.Add("pagesize", pagesize); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "ImageCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); rvd.Add("it", EncryptDecrypt.Encrypt(it)); TempData["pager"] = pagesize; Session["Edit/Delete"] = "Delete"; try { // TODO: Add delete logic here //.. Check for image in use Image objImage = objContext.Images.Find(Convert.ToInt32(iid)); long ImgID = Convert.ToInt64(iid); #region System Change Log var oldresult = (from a in objContext.Images where a.ImageID == ImgID select a).ToList(); DataTable dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion var bannerimagetypeid = Convert.ToInt32(ImageTypeAlias.BannerImage); var imagetypeid = Convert.ToInt32(it); var imagecount = objContext.Images.Where(x => x.ImageTypeID == bannerimagetypeid && x.IsDeletedInd == false).Count(); var content = objContext.Contents.Where(x => x.BannerImageID == ImgID).ToList(); if (content.Count > 0) { TempData["Message"] = "Image is in use, cannot be deleted."; rvd.Add("page", page); return(Json(Url.Action("Index", "Image", rvd))); } if (objImage != null) { if (imagecount == 1 && imagetypeid == bannerimagetypeid) { TempData["AlertMessage"] = "At-least one image must remain active to show for Home Page slider"; } else { //****************Display Order ************************ var objImages = objContext.Images.Where(x => x.ImageTypeID == objImage.ImageTypeID).FirstOrDefault(); if (objImages != null) { try { var objImageService = new ImageService(); objImageService.ChangeDeletedDisplayOrder(objImages.DisplayOrderNbr.Value, objImage.ImageID, objImage.ImageTypeID); } catch { } } //*************************************************** // objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Images"; objSCL.LogTypeTxt = "Delete"; objSCL.NotesTxt = (_service.GetImageType(objImage.ImageTypeID)) + " Details deleted for " + objImage.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var objContextnew = new db_KISDEntities(); var newResult = (from x in objContextnew.Images where x.ImageID == ImgID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = col.ColumnName == "IsDeletedInd" ? dtNew.Rows[0][col.ColumnName].ToString() : ""; objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } #endregion try { Models.Common.DeleteImage(Server.MapPath(objImage.ImgPathTxt)); } catch { } TempData["AlertMessage"] = _service.GetImageType(Convert.ToInt32(it)) + " details deleted successfully."; } } //.. Checks for no of records in current page if exists records then return same page number else decrease the page number int?CheckPage = 1; int ImageTypeID = Convert.ToInt32(it); var count = objContext.Images.Where(x => x.ImageTypeID == ImageTypeID).Count(); if (Convert.ToInt32(page) > 1) { CheckPage = count > ((Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize)) ? Convert.ToInt32(page) : (Convert.ToInt32(page)) - 1; } rvd.Add("page", CheckPage); return(Json(Url.Action("Index", "Image", rvd))); } catch (Exception ex) { rvd.Add("page", page); return(Json(Url.Action("Index", "Image", rvd))); } }
public JsonResult Delete(string eid, int et) { Session["Edit/Delete"] = "Edit"; if (!string.IsNullOrEmpty(eid)) { int id = 0; //Decrypt email ID if (!string.IsNullOrEmpty(eid)) { id = Convert.ToInt32(EncryptDecrypt.Decrypt(eid)); } #region System Change Log var oldresult = (from a in objContext.Emails where a.EmailID == id select a).ToList(); DataTable dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion var checkexists = objContext.FormEmails.Where(x => x.EmailID == id).FirstOrDefault(); if (checkexists == null) { try { var obj = objContext.Emails.Where(x => x.EmailID == id).FirstOrDefault(); if (obj != null) { obj.IsDeletedInd = true; objContext.SaveChanges(); } #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Email"; objSCL.LogTypeTxt = "Delete"; objSCL.NotesTxt = "Email details deleted"; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Emails where x.EmailID == id select x); DataTable dtNew = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { // if(objSCL) if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion } catch { } TempData["AlertMessage"] = (et == 1 ? "From " : "To ") + "Email details deleted successfully."; } else { TempData["Message"] = "Email is in use, cannot be deleted."; } } var count = objContext.Emails.Where(x => x.EmailTypeID == et).Count(); var Column = Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "EmailTxt"; var Direction = Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Ascending"; var page = Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : "1"; var pagesize = Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : "10"; return(Json(Url.Action("Emails", "Email", new { et = et, page = Convert.ToInt32(page), pagesize = Convert.ToInt32(pagesize), Column = Column, Direction = Direction, eid = EncryptDecrypt.Encrypt("0") }))); }
public ActionResult Emails(int?et, EmailModel model, string command, GridSortOptions gridSortOptions, int?page, int?pagesize) { Session["Edit/Delete"] = "Edit"; var emailType = et.HasValue ? et.Value : Convert.ToInt32(EmailTypeAlias.From_Email); var pageSize = pagesize.HasValue ? pagesize.Value : Models.Common._pageSize; var Page = page.HasValue ? page.Value : Models.Common._currentPage; TempData["pager"] = pagesize; ViewBag.Edit = null;//Check for postback or not var grdsrtOpt = new GridSortOptions(); grdsrtOpt.Column = gridSortOptions != null ? gridSortOptions.Column : "EmailTxt"; grdsrtOpt.Direction = gridSortOptions != null ? gridSortOptions.Direction : MvcContrib.Sorting.SortDirection.Ascending; ViewBag.Title = _service.GetEmailType(emailType) + " Listing"; var pagedViewModel = new PagedViewModel <EmailModel> { ViewData = ViewData, Query = _service.GetEmails(emailType), GridSortOptions = grdsrtOpt, DefaultSortColumn = "EmailTxt", Page = Page, PageSize = pageSize, }.Setup(); ViewBag.Submit = model.EmailID == 0 ? "Save" : "Update"; var isNew = (model.EmailID == 0); var emailTypeName = _service.GetEmailType(model.EmailTypeID); ViewBag.Title = (isNew ? "Add " : "Edit ") + emailTypeName; var emailTypeID = model.EmailTypeID == 0 ? Convert.ToInt32(Request.QueryString["emailtype"]) : model.EmailTypeID; var rvd = new RouteValueDictionary(); DataTable dtOld; if (string.IsNullOrEmpty(command)) { if (objContext.Emails.Where(x => x.EmailTxt.Trim().ToLower() == model.EmailTxt.Trim().ToLower() && x.EmailID != model.EmailID && x.EmailTypeID == model.EmailTypeID && x.IsDeletedInd == false).FirstOrDefault() != null) { ModelState.AddModelError("EmailTxt", model.EmailTxt + " already exists."); ViewBag.Edit = true;//Check for postback or not return(View(pagedViewModel)); } #region System Change Log var oldresult = (from a in objContext.Emails where a.EmailID == model.EmailID select a).ToList(); dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion var email = objContext.Emails.Where(x => x.EmailID == model.EmailID).FirstOrDefault(); if (isNew) { email = new Email(); } email.EmailTxt = model.EmailTxt; email.EmailTypeID = model.EmailTypeID == 0 ? Convert.ToInt32(Request.QueryString["emailtype"]) : model.EmailTypeID; email.CreateDate = isNew ? DateTime.Now : email.CreateDate; email.CreateByID = isNew ? Convert.ToInt64(Membership.GetUser().ProviderUserKey) : email.CreateByID; email.LastModifyByID = Convert.ToInt64(Membership.GetUser().ProviderUserKey); email.LastModifyDate = DateTime.Now; email.IsDeletedInd = isNew ? false : email.IsDeletedInd; if (isNew) { objContext.Emails.Add(email); } objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Email"; objSCL.LogTypeTxt = isNew ? "Add" : "Update"; objSCL.NotesTxt = isNew ? " Email details Added" : "Email Details Updated"; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Emails where x.EmailID == email.EmailID select x); DataTable dtNew = LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (model.EmailID > 0) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } else { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = ""; objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion TempData["AlertMessage"] = emailTypeName + " details " + (model.EmailID == 0 ? "saved" : "updated") + " successfully."; } else { rvd.Add("pagesize", null); rvd.Add("page", null); rvd.Add("emailtype", emailTypeID); rvd.Add("eid", EncryptDecrypt.Encrypt("0")); pagedViewModel.EmailTxt = ""; return(View(pagedViewModel)); } var Column = Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "EmailTxt"; var Direction = Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Ascending"; return(RedirectToAction("Emails", "Email", new { et = emailTypeID, page = page, pagesize = pagesize, Column = Column, Direction = Direction })); }
public JsonResult Delete(string UID) { UID = !string.IsNullOrEmpty(Convert.ToString(UID)) ? EncryptDecrypt.Decrypt(UID) : "0"; long UserID = Convert.ToInt32(UID); var rvd = new RouteValueDictionary(); rvd.Add("pagesize", Request.QueryString["pagesize"] ?? "10"); rvd.Add("Column", Request.QueryString["Column"] ?? "UserCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] ?? "Descending"); Session["Edit/Delete"] = "Delete"; if (UserID > 0) { try { using (var objContext = new db_KISDEntities()) { #region System Change Log var oldresult = (from a in objContext.Users where a.UserID == UserID select a).ToList(); DataTable dtOld = Models.Common.LINQResultToDataTable(oldresult); #endregion var obj = objContext.Users.Where(x => x.UserID == UserID).ToList(); foreach (var value in obj) { value.IsDeletedInd = true; objContext.SaveChanges(); #region Delete Selected Departments for the User var objUserDept = objContext.UserDepartments.Where(x => x.UserID == UserID).ToList(); if (objUserDept.Count() > 0) { foreach (var s in objUserDept) { objContext.UserDepartments.Remove(s); objContext.SaveChanges(); } } #endregion #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Users"; objSCL.LogTypeTxt = "Delete"; objSCL.NotesTxt = "Users Details deleted for " + value.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.RightSections where x.RightSectionID == UserID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); if (dtOld.Rows.Count > 0) { foreach (DataColumn col in dtNew.Columns) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = "";// dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion } TempData["AlertMessage"] = " User details deleted successfully."; } } catch (Exception e) { TempData["AlertMessage"] = "Some error occured while deleting the User, Please try again later."; } } int?Page = 1; var count = 1; using (var objContext = new db_KISDEntities()) { count = objContext.Users.Where(x => x.IsDeletedInd == false).Count(); } var page = Request.QueryString["page"] ?? "1"; var pagesize = Request.QueryString["pagesize"] ?? "10"; if (Convert.ToInt32(page) > 1) { Page = count > ((Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize)) ? Convert.ToInt32(page) : (Convert.ToInt32(page)) - 1; } rvd.Add("page", Page); return(Json(Url.Action("Index", "UsersManagement", rvd))); }
public JsonResult Delete(string bmid) { bmid = !string.IsNullOrEmpty(Convert.ToString(bmid)) ? EncryptDecrypt.Decrypt(bmid) : "0"; long BOMID = Convert.ToInt32(bmid); var rvd = new RouteValueDictionary(); rvd.Add("pagesize", Request.QueryString["pagesize"] ?? "10"); rvd.Add("Column", Request.QueryString["Column"] ?? "BOMCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] ?? "Descending"); Session["Edit/Delete"] = "Delete"; if (BOMID > 0) { try { using (var objContext = new db_KISDEntities()) { #region System Change Log var oldresult = (from a in objContext.BoardOfMembers where a.BoardMemberID == BOMID select a).ToList(); DataTable dtOld = Models.Common.LINQResultToDataTable(oldresult); #endregion //****************Display Order ************************ var objData = objContext.BoardOfMembers.Where(x => x.BoardMemberID == BOMID).FirstOrDefault(); if (objData != null) { try { var objModelService = new BoardMembersModelService(); var parentid = Request.QueryString["ParentId"] ?? "0"; objModelService.ChangeDeletedDisplayOrder(objData.DisplayOrderNbr.Value, objData.BoardMemberID); } catch { } } //*************************************************** #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Board Members"; objSCL.LogTypeTxt = "Delete"; objSCL.NotesTxt = "Board Members Details deleted for " + objData.NameTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.RightSections where x.RightSectionID == BOMID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { try { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = col.ColumnName == "IsDeletedInd" ? dtNew.Rows[0][col.ColumnName].ToString() : ""; objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } catch { } } #endregion try { Models.Common.DeleteImage(Server.MapPath(objData.ImageURLTxt)); } catch { } TempData["Message"] = " Board Member details deleted successfully."; } } catch (Exception e) { TempData["Message"] = "Some error occured while deleting the Member, Please try again later."; } } int?Page = 1; var count = 1; using (var objContext = new db_KISDEntities()) { count = objContext.Users.Where(x => x.IsDeletedInd == false).Count(); } var page = Request.QueryString["page"] ?? "1"; var pagesize = Request.QueryString["pagesize"] ?? "10"; if (Convert.ToInt32(page) > 1) { Page = count > ((Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize)) ? Convert.ToInt32(page) : (Convert.ToInt32(page)) - 1; } rvd.Add("page", Page); return(Json(Url.Action("Index", "BoardMembers", rvd))); }
public ActionResult Create(SchoolModel objSchoolModel, string command, FormCollection fm) { ViewBag.Title = ""; var rvd = new RouteValueDictionary(); rvd.Add("page", Request.QueryString["page"] ?? "1"); rvd.Add("pagesize", Request.QueryString["pagesize"] ?? "10"); rvd.Add("Column", Request.QueryString["Column"] ?? "SchoolCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] ?? "Descending"); rvd.Add("si", Request.QueryString["si"] ?? EncryptDecrypt.Encrypt("0")); rvd.Add("tmi", Request.QueryString["tmi"] ?? EncryptDecrypt.Encrypt("0")); var masterid = EncryptDecrypt.Encrypt(objSchoolModel.TypeMasterID.ToString()); var TypeMasterID = Convert.ToInt32(EncryptDecrypt.Decrypt(masterid)); ViewBag.LiTitle = TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? " School Category Listing" : "School Listing"; ViewBag.PageTitle = (objSchoolModel.SchoolID == 0 ? "Add " : "Edit ") + (TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? " School Category" : "School Listing"); ViewBag.StatusInd = GetStatusData(objSchoolModel.StatusInd ? "1" : "0"); objSchoolModel.strCreateDate = objSchoolModel.SchoolCreateDate.ToShortDateString(); ViewBag.DateAdded = objSchoolModel.SchoolCreateDate.ToShortDateString(); if (TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.School)) { objSchoolModel.SchoolCategoryID = Convert.ToInt64(fm["SchoolCategory"]); ViewBag.SchoolCategory = GetSchoolCategories(objSchoolModel.SchoolCategoryID.ToString()); } using (var objContext = new db_KISDEntities()) { if (string.IsNullOrEmpty(command)) { try { #region System Change Log DataTable dtOld; var oldResult = (from a in objContext.Schools where a.SchoolID == objSchoolModel.SchoolID select a).ToList(); dtOld = Models.Common.LINQResultToDataTable(oldResult); #endregion if (objSchoolModel != null && !string.IsNullOrEmpty(objSchoolModel.NameTxt) //&& objSchoolModel.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ) { var count = 0; count = objContext.Schools.Where(x => x.NameTxt.ToLower().Trim() == objSchoolModel.NameTxt.ToLower().Trim() && x.SchoolID != objSchoolModel.SchoolID && x.TypeMasterID == objSchoolModel.TypeMasterID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); if (objSchoolModel.NameTxt.Trim().ToLower() == "error404") { count = count + 1; } if (count > 0) { //if user types url 'error404' below validation msg should display if (objSchoolModel.NameTxt.ToLower().Trim() == "error404" || (objSchoolModel.NameTxt.ToLower().Trim() == "admin")) { ModelState.AddModelError("NameTxt", objSchoolModel.NameTxt + " name is not allowed."); } else { ModelState.AddModelError("NameTxt", objSchoolModel.NameTxt + " name already exists."); } //ViewBag.FocusPageUrl = true;// Set focus on Pageurl Field if same url exist ViewBag.IsActiveInd = GetStatusData(fm["StatusInd"].ToString() == "1" ? "1" : "0"); return(View(objSchoolModel)); } } objSchoolModel.StatusInd = fm["StatusInd"] == "1" ? true : false; var isexist = objContext.Schools.Where(x => x.SchoolCategoryID == objSchoolModel.SchoolID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); isexist += objContext.ExceptionOpportunities.Where(x => x.SchoolCategoryID == objSchoolModel.SchoolID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); if (isexist > 0 && !objSchoolModel.StatusInd) { ViewBag.IsActiveInd = GetStatusData(fm["StatusInd"].ToString() == "1" ? "1" : "0"); TempData["Message"] = "School Category is in use, cannot be set as Inactive."; return(View(objSchoolModel)); } long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); School objSchool = null; if (objSchoolModel.SchoolID == 0) { objSchool = new School(); } else { objSchool = objContext.Schools.Where(x => x.SchoolID == objSchoolModel.SchoolID).FirstOrDefault(); } if (objSchoolModel.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.School)) { objSchool.SchoolCategoryID = Convert.ToInt64(fm["SchoolCategory"]); objSchool.AddressTxt = objSchoolModel.AddressTxt; objSchool.PhoneNumberTxt = objSchoolModel.PhoneNumberTxt; objSchool.WebsiteURLTxt = objSchoolModel.WebsiteURLTxt; } else { objSchool.PhoneNumberTxt = null; objSchool.SchoolCategoryID = null; objSchool.AddressTxt = null; objSchool.WebsiteURLTxt = null; } objSchool.PageURLTxt = objSchoolModel.PageURLTxt; objSchool.NameTxt = objSchoolModel.NameTxt; objSchool.StatusInd = fm["StatusInd"] == "1" ? true : false; DateTime dt_to = Convert.ToDateTime(objSchoolModel.SchoolCreateDate, System.Globalization.CultureInfo.InvariantCulture); objSchool.SchoolCreateDate = dt_to; objSchool.CreateByID = objSchoolModel.SchoolID > 0 ? objSchool.CreateByID : objuser.UserID; objSchool.IsDeletedInd = false; objSchool.LastModifyByID = objuser.UserID; objSchool.LastModifyDate = DateTime.Now; objSchool.CreateDate = objSchoolModel.SchoolID > 0 ? objSchool.CreateDate : DateTime.Now; objSchool.TypeMasterID = objSchoolModel.TypeMasterID; if (objSchoolModel.SchoolID == 0) { objContext.Schools.Add(objSchool); } objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = objSchoolModel.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? "School Category" : "School"; objSCL.LogTypeTxt = objSchoolModel.SchoolID > 0 ? "Update" : "Add"; objSCL.NotesTxt = (objSchoolModel.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? "School Category" : "School") + " Details" + (objSchoolModel.SchoolID > 0 ? " updated for " : " added for ") + objSchoolModel.NameTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Schools where x.SchoolID == objSchool.SchoolID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (objSchoolModel.SchoolID > 0) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } else { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = ""; objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion TempData["AlertMessage"] = objSchool.NameTxt + (objSchoolModel.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? " School Category details" : " School details") + (objSchoolModel.SchoolID == 0 ? " saved" : " updated") + " successfully."; } catch (Exception e) { TempData["AlertMessage"] = "Some error occured, Please try after some time."; } } return(RedirectToAction("Index", rvd)); } }
public ActionResult Create(string command, FormCollection fm, AnnouncementModel model) { try { HttpPostedFileBase file = Request.Files.Count > 0 ? Request.Files[0] : null; ViewBag.Title = (model.AnnouncementID == 0 ? "Add " : "Edit ") + _service.GetAnnouncementType(model.TypeMasterID.Value); ViewBag.StatusInd = GetStatusData(string.Empty); ViewBag.Submit = (model.AnnouncementID == 0 ? "Save" : "Update"); ViewBag.TypeMasterID = model.TypeMasterID; ViewBag.AnnouncementCreateDate = model.AnnouncementCreateDate.Value.ToShortDateString(); var rvd = new RouteValueDictionary(); rvd.Add("page", Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString()); rvd.Add("pagesize", Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString()); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "AnnouncementCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); rvd.Add("it", EncryptDecrypt.Encrypt(Convert.ToString(model.TypeMasterID))); ViewBag.PageTitle = (model.AnnouncementID == 0 ? "Add " : "Edit ") + _service.GetAnnouncementType(model.TypeMasterID.Value) + " Details"; ViewBag.AnnouncementTypeTitle = _service.GetAnnouncementType(model.TypeMasterID.Value);// +"s" ViewBag.StartDateStr = model.DisplayStartDate != null?Convert.ToString(model.DisplayStartDate) : ""; ViewBag.EndDateStr = model.DisplayEndDate != null?Convert.ToString(model.DisplayEndDate) : ""; ViewBag.ScheduleDateStr = model.ScheduleDateTime != null?model.ScheduleDateTime.Value.ToShortDateString() : ""; #region System Change Log DataTable dtOld; var oldresult = (from a in objContext.Announcements where a.AnnouncementID == model.AnnouncementID select a).ToList(); dtOld = Models.Common.LINQResultToDataTable(oldresult); #endregion if (string.IsNullOrEmpty(command)) { Announcement objAnnouncement; if (model.AnnouncementID > 0) { objAnnouncement = objContext.Announcements.Find(model.AnnouncementID); } else { objAnnouncement = new Announcement(); objAnnouncement.IsDeletedInd = false; } ViewBag.StatusInd = GetStatusData(model.StatusInd ? "1" : "0"); objAnnouncement.TypeMasterID = model.TypeMasterID; objAnnouncement.StatusInd = fm["StatusInd"].ToString() == "1"; if (model.TypeMasterID == Convert.ToInt32(AnnouncementTypeAlias.OnscreenAlert)) { var onscreenalerttypeid = Convert.ToInt32(AnnouncementTypeAlias.OnscreenAlert); var alertcnt = objContext.Announcements.Where(x => x.TypeMasterID == onscreenalerttypeid && x.StatusInd == true && x.IsDeletedInd == false && x.AnnouncementID != model.AnnouncementID).Count(); if (alertcnt == 3 && fm["StatusInd"].ToString() == "1") { TempData["Message"] = "Maximum three onscreen alerts can be set as active to show on website."; return(View(model)); } } if (!string.IsNullOrEmpty(model.TitleTxt)) { var chkAnnouncement = objContext.Announcements.Where(x => x.TitleTxt == model.TitleTxt.Trim() && x.TypeMasterID == model.TypeMasterID && x.AnnouncementID != model.AnnouncementID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Any(); if (chkAnnouncement)//check Announcement title on adding new Announcement details or updating existing 1 { TempData["CroppedImage"] = null; ModelState.AddModelError("TitleTxt", model.TitleTxt + " title already exists."); return(View(model)); } //if (!objAnnouncement.StatusInd.Value) //{ // TempData["CroppedImage"] = null; // ViewBag.AnnouncementCreateDate = model.AnnouncementCreateDate.Value.ToShortDateString().Trim(); // TempData["Message"] = "Announcement is in use, cannot be set as Inactive."; // return View(model); //} } objAnnouncement.TitleTxt = model.TitleTxt; objAnnouncement.AltImageTxt = !string.IsNullOrEmpty(model.AltImageTxt) ? model.AltImageTxt.Replace(">", "").Replace("<", "") : string.Empty; objAnnouncement.AnnouncementCreateDate = model.AnnouncementCreateDate; objAnnouncement.DisplayStartDate = model.DisplayStartDate != null ? model.DisplayStartDate : null; objAnnouncement.DisplayEndDate = model.DisplayEndDate != null ? model.DisplayEndDate : null; objAnnouncement.DescriptionTxt = model.DescriptionTxt; objAnnouncement.CreateDate = model.AnnouncementID > 0 ? objAnnouncement.CreateDate : DateTime.Now;; objAnnouncement.CreateByID = model.AnnouncementID > 0 ? objAnnouncement.CreateByID : Convert.ToInt64(Membership.GetUser().ProviderUserKey); objAnnouncement.LastModifyByID = Convert.ToInt64(Membership.GetUser().ProviderUserKey); objAnnouncement.LastModifyDate = DateTime.Now; objAnnouncement.ScheduleDateTime = model.ScheduleDateTime; objAnnouncement.ScheduleTimeTxt = model.ScheduleTimeTxt; if (TempData["CroppedImage"] != null) { #region Cropped Image var croppedfile = new System.IO.FileInfo(Server.MapPath(TempData["CroppedImage"].ToString())); var fileName = croppedfile.Name; croppedfile = null; var sourcePath = Server.MapPath(TempData["CroppedImage"].ToString()); var targetPath = Request.PhysicalApplicationPath + "WebData\\"; System.IO.File.Copy(System.IO.Path.Combine(sourcePath.Replace(fileName, ""), fileName), System.IO.Path.Combine(targetPath + "images\\", fileName), true); try { Models.Common.DeleteImage(Server.MapPath(TempData["CroppedImage"].ToString())); } catch { } objAnnouncement.ImageURLTxt = "~/WebData/images/" + fileName; var width = 100; var fileExtension = fileName.Substring(fileName.LastIndexOf("."), fileName.Length - fileName.LastIndexOf(".")); var strPath = Request.PhysicalApplicationPath + "WebData\\images\\" + fileName; var myImage = Models.Common.CreateImageThumbnail(strPath, width); myImage.Save(Request.PhysicalApplicationPath + "WebData\\thumbnails\\" + fileName, fileExtension.ToLower() == ".png" ? System.Drawing.Imaging.ImageFormat.Png : fileExtension.ToLower() == ".gif" ? System.Drawing.Imaging.ImageFormat.Gif : System.Drawing.Imaging.ImageFormat.Jpeg ); myImage.Dispose(); TempData["CroppedImage"] = null; #endregion } else { objAnnouncement.ImageURLTxt = objAnnouncement.ImageURLTxt; } if (model.AnnouncementID > 0) { TempData["AlertMessage"] = _service.GetAnnouncementType(model.TypeMasterID.Value) + " details updated successfully."; objContext.SaveChanges(); } else { objContext.Announcements.Add(objAnnouncement); objContext.SaveChanges(); TempData["AlertMessage"] = _service.GetAnnouncementType(model.TypeMasterID.Value) + " details saved successfully."; } #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = _service.GetAnnouncementType(objAnnouncement.TypeMasterID.Value); objSCL.LogTypeTxt = model.AnnouncementID > 0 ? "Update" : "Add"; objSCL.NotesTxt = (_service.GetAnnouncementType(model.TypeMasterID.Value)) + " Details" + (model.AnnouncementID > 0 ? " updated for " : " added for ") + model.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Announcements where x.AnnouncementID == objAnnouncement.AnnouncementID select x); DataTable dtNew = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (model.AnnouncementID > 0) { // if(objSCL) if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } else { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = ""; objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion return(RedirectToAction("Index", "Announcement", rvd)); } else { return(RedirectToAction("Index", "Announcement", rvd)); } } catch { return(View(model)); } }
public JsonResult Delete(string si, string tmi) { var rvd = new RouteValueDictionary(); rvd.Add("pagesize", Request.QueryString["pagesize"] ?? "10"); rvd.Add("Column", Request.QueryString["Column"] ?? "SchoolCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] ?? "Descending"); rvd.Add("si", si); rvd.Add("tmi", tmi); //decrypt school id(mt) si = !string.IsNullOrEmpty(Convert.ToString(si)) ? EncryptDecrypt.Decrypt(si) : "0"; int schoolID = Convert.ToInt32(si); Session["Edit/Delete"] = "Delete"; long _tmi = !string.IsNullOrEmpty(Convert.ToString(tmi)) ? Convert.ToInt64(EncryptDecrypt.Decrypt(tmi)) : 0; if (schoolID > 0) { try { using (var objContext = new db_KISDEntities()) { var obj = objContext.Schools.Where(x => x.SchoolID == schoolID).First(); if (obj != null) { #region System Change Log DataTable dtOld; var oldResult = (from a in objContext.Schools where a.SchoolID == schoolID select a).ToList(); dtOld = Models.Common.LINQResultToDataTable(oldResult); #endregion var isexist = objContext.Schools.Where(x => x.SchoolCategoryID == obj.SchoolID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); isexist += objContext.ExceptionOpportunities.Where(x => x.SchoolCategoryID == obj.SchoolID && (x.IsDeletedInd == false || x.IsDeletedInd == null)).Count(); if (isexist > 0) { TempData["Message"] = "School Category is in use, cannot be deleted."; } else { obj.IsDeletedInd = true; objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = _tmi == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? "School Category" : "School "; objSCL.LogTypeTxt = "Delete"; objSCL.NotesTxt = obj.NameTxt + " Details deleted"; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var objContextNew = new db_KISDEntities(); var newResult = (from x in objContextNew.Schools where x.SchoolID == schoolID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = col.ColumnName == "IsDeletedInd" ? dtNew.Rows[0][col.ColumnName].ToString() : ""; objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } #endregion TempData["AlertMessage"] = obj.NameTxt + (obj.TypeMasterID == Convert.ToInt32(GalleryListingService.TypeMaster.SchoolCategory) ? " School Category details" : " School details") + " deleted successfully."; } } } } catch { TempData["AlertMessage"] = "Some error occured while deleting the Menu, Please try again later."; } } int?Page = 1; var count = 1; using (var objContext = new db_KISDEntities()) { count = objContext.Schools.Where(x => x.SchoolID == schoolID).Count(); } var page = Request.QueryString["page"] ?? "1"; var pagesize = Request.QueryString["pagesize"] ?? "10"; if (Convert.ToInt32(page) > 1) { Page = count > ((Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize)) ? Convert.ToInt32(page) : (Convert.ToInt32(page)) - 1; } rvd.Add("page", Page); return(Json(Url.Action("Index", "School", rvd))); }
public JsonResult Delete(string it, string iid, FormCollection fm) { //decrypt Announcement type id(it) it = !string.IsNullOrEmpty(Convert.ToString(it)) ? EncryptDecrypt.Decrypt(it) : "0"; //decrypt Announcement id(iid) iid = !string.IsNullOrEmpty(Convert.ToString(iid)) ? EncryptDecrypt.Decrypt(iid) : "0"; //.. Code for get the route value directory RouteValueDictionary rvd = new RouteValueDictionary(); ViewBag.TypeMasterID = it; ViewBag.Title = _service.GetAnnouncementType(Convert.ToInt32(it)); var page = Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString(); var pagesize = Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString(); rvd.Add("pagesize", pagesize); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "AnnouncementCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); rvd.Add("it", EncryptDecrypt.Encrypt(it)); TempData["pager"] = pagesize; Session["Edit/Delete"] = "Delete"; try { // TODO: Add delete logic here //.. Check for Announcement in use Announcement objAnnouncement = objContext.Announcements.Find(Convert.ToInt32(iid)); int AnnounceID = Convert.ToInt32(iid); #region System Change Log var oldresult = (from a in objContext.Announcements where a.AnnouncementID == AnnounceID select a).ToList(); DataTable dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion if (objAnnouncement != null) { // objAnnouncement.IsDeletedInd = true; //****************Display Order ************************ //var objAnnouncements = objContext.Announcements.Where(x => x.TypeMasterID == objAnnouncement.TypeMasterID).FirstOrDefault(); if (objAnnouncement != null) { try { var objAnnouncementService = new AnnouncementService(); objAnnouncementService.ChangeDeletedDisplayOrder(objAnnouncement.DisplayOrderNbr.Value, objAnnouncement.AnnouncementID, objAnnouncement.TypeMasterID.Value); } catch { } } #region Delete Selected Right Section for the Announcement var MasterID = Convert.ToInt64(it); var rightSections = objContext.RightSections.Where(x => x.ListingID == AnnounceID && x.TypeMasterID == MasterID).ToList(); if (rightSections != null && rightSections.Count() > 0) { foreach (var section in rightSections) { section.IsDeletedInd = true; } objContext.SaveChanges(); } #endregion //*************************************************** // objContext.SaveChanges(); #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = _service.GetAnnouncementType(objAnnouncement.TypeMasterID.Value); objSCL.LogTypeTxt = "Delete"; objSCL.NotesTxt = (_service.GetAnnouncementType(objAnnouncement.TypeMasterID.Value)) + " Details deleted for " + objAnnouncement.TitleTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var objContextnew = new db_KISDEntities(); var newResult = (from x in objContextnew.Announcements where x.AnnouncementID == AnnounceID select x); DataTable dtNew = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = col.ColumnName == "IsDeletedInd" ? dtNew.Rows[0][col.ColumnName].ToString() : ""; objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } #endregion try { Models.Common.DeleteImage(Server.MapPath(objAnnouncement.ImageURLTxt)); } catch { } TempData["AlertMessage"] = _service.GetAnnouncementType(Convert.ToInt32(it)) + " details deleted successfully."; } //.. Checks for no of records in current page if exists records then return same page number else decrease the page number int?CheckPage = 1; int TypeMasterID = Convert.ToInt32(it); var count = objContext.Announcements.Where(x => x.TypeMasterID == TypeMasterID && x.IsDeletedInd == false).Count(); if (Convert.ToInt32(page) > 1) { CheckPage = count > ((Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize)) ? Convert.ToInt32(page) : (Convert.ToInt32(page)) - 1; } rvd.Add("page", CheckPage); return(Json(Url.Action("Index", "Announcement", rvd))); } catch { rvd.Add("page", page); return(Json(Url.Action("Index", "Announcement", rvd))); } }
public ActionResult Create(UsersModel model, string command, FormCollection fm) { var currentLoggedUserId = Convert.ToInt64(Membership.GetUser().ProviderUserKey); var CurrentUserRoleID = objContext.UserRoles.Where(x => x.UserID == currentLoggedUserId).FirstOrDefault().RoleID; if (CurrentUserRoleID > 2)//if not super admin and sub admin then redirect to home { return(RedirectToAction("Index", "Home")); } var EncryptUserID = EncryptDecrypt.Encrypt(model.UserID.ToString()); var rvd = new RouteValueDictionary(); rvd.Add("Column", Request.QueryString["Column"] != null ? Request.QueryString["Column"].ToString() : "UserCreateDate"); rvd.Add("Direction", Request.QueryString["Direction"] != null ? Request.QueryString["Direction"].ToString() : "Descending"); rvd.Add("pagesize", Request.QueryString["pagesize"] != null ? Request.QueryString["pagesize"].ToString() : Models.Common._pageSize.ToString()); rvd.Add("page", Request.QueryString["page"] != null ? Request.QueryString["page"].ToString() : Models.Common._currentPage.ToString()); ViewBag.Title = ViewBag.PageTitle = (model.UserID > 0 ? "Edit " : "Add ") + " User Details "; ViewBag.Submit = model.UserID > 0 ? "Update" : "Save"; ViewBag.CreateDate = DateTime.Now.ToShortDateString(); ViewBag.UserCreateDate = DateTime.Now.ToShortDateString(); #region System Change Log DataTable dtOld; var oldresult = (from a in objContext.Users where a.UserID == model.UserID select a).ToList(); dtOld = KISD.Areas.Admin.Models.Common.LINQResultToDataTable(oldresult); #endregion var objDBContent = new db_KISDEntities(); var objctUser = new User(); ViewBag.IsActiveInd = Models.Common.GetStatusListBoolean(model.Status.ToString()); ViewBag.UserID = model.UserID; ViewBag.isValid = "1"; ViewBag.RolesList = GetAllUserType(currentLoggedUserId); ViewBag.UserTypeID = model.UserRoleID; if (string.IsNullOrEmpty(command)) { if (model.UserID > 0) { objctUser = objDBContent.Users.Where(x => x.UserID == model.UserID).FirstOrDefault(); } model.DepartmentUsersList = GetDepartments(); var UserNameCount = objDBContent.Users.Where(x => x.UserNameTxt.ToLower().Trim() == model.UserNameTxt.ToLower().Trim() && x.UserID != model.UserID).Count(); if (UserNameCount > 0) { var selectedDepts = objContext.UserDepartments.Where(m => m.UserID == model.UserID).Select(m => m.DepartmentID).ToArray(); model.SelectedDepartment = Array.ConvertAll <long, string>(selectedDepts, delegate(long i) { return(i.ToString()); }); ModelState.AddModelError("UserNameTxt", "Username already exists."); ViewBag.isValid = "0"; return(View(model)); } objctUser.FirstNameTxt = model.FirstName; objctUser.LastNameTxt = model.LastName; objctUser.UserNameTxt = model.UserNameTxt; objctUser.EmailTxt = model.Email; // objctUser.PasswordTxt = !string.IsNullOrEmpty(model.Password)? CustomMembershipProvider.GetMd5Hash(model.Password): objctUser.PasswordTxt; objctUser.PasswordTxt = (!string.IsNullOrEmpty(model.ChangedPassword) ? CustomMembershipProvider.GetMd5Hash(model.ChangedPassword) : (!string.IsNullOrEmpty(model.Password) ? CustomMembershipProvider.GetMd5Hash(model.Password) : objctUser.PasswordTxt) ); objctUser.StatusInd = Convert.ToBoolean(fm["IsActiveInd"]); objctUser.IsDeletedInd = false; objctUser.CreateDate = DateTime.Now; objctUser.UserCreateDate = model.UserID > 0 ? objctUser.CreateDate : model.UserCreateDate; objctUser.CreateByID = model.UserID > 0 ? objctUser.CreateByID : Convert.ToInt64(Membership.GetUser().ProviderUserKey); objctUser.LastModifyByID = Convert.ToInt64(Membership.GetUser().ProviderUserKey); objctUser.LastModifyDate = DateTime.Now; if (model.UserID == 0) { objDBContent.Users.Add(objctUser); var UserID = model.UserID != 0 ? model.UserID : objctUser.UserID; var obj = new UserRole(); obj.UserID = Convert.ToInt32(UserID); obj.RoleID = Convert.ToInt16(model.UserRoleID); objDBContent.UserRoles.Add(obj); objDBContent.SaveChanges(); } else { var UserID = model.UserID != 0 ? model.UserID : objctUser.UserID; var obj = new UserRole(); obj = objDBContent.UserRoles.Where(x => x.UserID == model.UserID).FirstOrDefault(); obj.RoleID = Convert.ToInt16(model.UserRoleID); } try { objDBContent.SaveChanges(); var newUserID = objctUser.UserID; #region System Change Log SystemChangeLog objSCL = new SystemChangeLog(); long userid = Convert.ToInt64(Membership.GetUser().ProviderUserKey); User objuser = objContext.Users.Where(x => x.UserID == userid).FirstOrDefault(); objSCL.NameTxt = objuser.FirstNameTxt + " " + objuser.LastNameTxt; objSCL.UsernameTxt = objuser.UserNameTxt; objSCL.UserRoleID = (short)objContext.UserRoles.Where(x => x.UserID == objuser.UserID).First().RoleID; objSCL.ModuleTxt = "Users"; objSCL.LogTypeTxt = model.UserID > 0 ? "Update" : "Add"; objSCL.NotesTxt = "User Details" + (objctUser.UserID > 0 ? " updated for " : " added for ") + objctUser.FirstNameTxt + " " + objctUser.LastNameTxt; objSCL.LogDateTime = DateTime.Now; objContext.SystemChangeLogs.Add(objSCL); objContext.SaveChanges(); objSCL = objContext.SystemChangeLogs.OrderByDescending(x => x.ChangeLogID).FirstOrDefault(); var newResult = (from x in objContext.Users where x.UserID == newUserID select x); DataTable dtNew = Models.Common.LINQResultToDataTable(newResult); foreach (DataColumn col in dtNew.Columns) { if (dtOld.Rows.Count > 0) { if (dtOld.Rows[0][col.ColumnName].ToString() != dtNew.Rows[0][col.ColumnName].ToString()) { SystemChangeLogDetail objSCLD = new SystemChangeLogDetail(); objSCLD.ChangeLogID = objSCL.ChangeLogID; objSCLD.FieldNameTxt = col.ColumnName.ToString(); objSCLD.OldValueTxt = dtOld.Rows[0][col.ColumnName].ToString(); objSCLD.NewValueTxt = dtNew.Rows[0][col.ColumnName].ToString(); objContext.SystemChangeLogDetails.Add(objSCLD); objContext.SaveChanges(); } } } #endregion #region Save Department Users if (model.UserRoleID == 3) { var objUserDept = objContext.UserDepartments.Where(x => x.UserID == objctUser.UserID).ToList(); if (objUserDept.Count > 0) { foreach (var s in objUserDept) { objContext.UserDepartments.Remove(s); objContext.SaveChanges(); } } if (model.SelectedDepartment != null) { foreach (var list in model.SelectedDepartment) { UserDepartment objUserDepartment = new UserDepartment(); objUserDepartment.DepartmentID = Convert.ToInt64(list); objUserDepartment.UserID = model.UserID; objUserDepartment.CreateDate = DateTime.Now; objContext.UserDepartments.Add(objUserDepartment); objContext.SaveChanges(); } } } else { var objUserDept = objContext.UserDepartments.Where(x => x.UserID == objctUser.UserID).ToList(); if (objUserDept.Count > 0) { foreach (var s in objUserDept) { objContext.UserDepartments.Remove(s); objContext.SaveChanges(); } } var objUserPermissions = objContext.UserPermissions.Where(x => x.UserID == objctUser.UserID).ToList(); if (objUserPermissions != null && objUserPermissions.Count > 0) { foreach (var up in objUserPermissions) { objContext.UserPermissions.Remove(up); } objContext.SaveChanges(); } } #endregion TempData["AlertMessage"] = "User details " + ((objctUser.UserID == 0) ? "saved" : "updated") + " successfully."; } catch (Exception ex) { TempData["AlertMessage"] = "Some error occured. Please try after some time."; } } return(RedirectToAction("Index", "UsersManagement", rvd)); }