public ActionResult CreateEdit(long Id = 0) { NccCategory category = new NccCategory(); NccCategoryDetails nccCategoryDetails = new NccCategoryDetails(); nccCategoryDetails.Language = GlobalContext.WebSite.Language; category.CategoryDetails.Add(nccCategoryDetails); if (Id > 0) { category = _nccCategoryService.Get(Id); } if (GlobalContext.WebSite.IsMultiLangual) { foreach (var item in SupportedCultures.Cultures) { var count = category.CategoryDetails.Where(x => x.Language == item.TwoLetterISOLanguageName).Count(); if (count <= 0) { NccCategoryDetails _nccCategoryDetails = new NccCategoryDetails(); _nccCategoryDetails.Language = item.TwoLetterISOLanguageName; category.CategoryDetails.Add(_nccCategoryDetails); } } } SetCategoryViewData(category); return(View(category)); }
public ActionResult Index(string slug = "", int page = 0) { ViewBag.CurrentLanguage = CurrentLanguage; if (!string.IsNullOrEmpty(slug)) { NccCategory item = _nccCategoryService.GetBySlug(slug); if (item != null) { ViewBag.Slug = slug; ViewBag.Category = item; var postPerPage = GlobalContext.WebSite.WebSitePageSize; var totalPost = _nccPostService.Count(true, true, true, true, null, null, item.Id, 0); var allPost = _nccPostService.Load(page, postPerPage, true, true, true, true, null, null, item.Id, 0); ViewBag.CurrentPage = page; ViewBag.PostPerPage = postPerPage; ViewBag.TotalPost = totalPost; return(View("Details", allPost)); } } var ItemList = _nccCategoryService.LoadAll(true).OrderByDescending(x => x.CreationDate).ToList(); return(View(ItemList)); }
private void SetCategoryViewData(NccCategory category) { ViewBag.DomainName = (Request.IsHttps == true ? "https://" : "http://") + Request.Host + "/Category/"; var parentList = _nccCategoryService.LoadAll().Where(x => x.Id != category.Id).ToList(); ViewBag.AllCategories = new SelectList(parentList, "Id", "Name", category.Parent != null ? category.Parent.Id : 0); //var cultures = SupportedCultures.Cultures; //ViewBag.Languages = new SelectList(cultures.Select(x => new { Value = x.TwoLetterISOLanguageName.ToLower(), Text = x.DisplayName }).ToList(), "Value", "Text", SetupHelper.Language); //ViewBag.CurrentLanguage = CurrentLanguage; }
public ActionResult Manage(long Id = 0) { //SetCategoryViewData(); NccCategory item = new NccCategory(); if (Id > 0) { item = _nccCategoryService.Get(Id); } ViewBag.Category = item; var itemList = _nccCategoryService.LoadAll(false).OrderBy(x => x.Name).ToList(); return(View(itemList)); }
public ActionResult Index(string slug = "") { ViewBag.CurrentLanguage = CurrentLanguage; if (!string.IsNullOrEmpty(slug)) { NccCategory item = _nccCategoryService.GetWithPost(slug); if (item != null) { return(View("Details", item)); } } var allPost = _nccCategoryService.LoadAll(true).OrderByDescending(x => x.CreationDate).ToList(); return(View(allPost)); }
public bool CreateCategory(int totalCount) { int currentCount = _categoryService.LoadAll().Count(); string itemName = "Test-Category-"; string enDemoTitle = "Test Category "; string enDemoSlug = "Test-Category-"; string bnDemoTitle = "টেস্ট ক্যাটাগরি "; string bnDemoSlug = "টেস্ট-ক্যাটাগরি-"; for (int i = 1; i <= totalCount; i++) { NccCategory item = new NccCategory(); item.Metadata = "DEMODATA"; item.Name = itemName + (currentCount + i).ToString(); item.CategoryImage = "/media/Images/2017/06/image-slider-" + (i % 4).ToString() + ".jpg"; //Create other language details foreach (var lang in SupportedCultures.Cultures) { var count = item.CategoryDetails.Where(x => x.Language == lang.TwoLetterISOLanguageName).Count(); if (count <= 0) { NccCategoryDetails _nccDetails = new NccCategoryDetails(); _nccDetails.Language = lang.TwoLetterISOLanguageName; if (lang.TwoLetterISOLanguageName == "en") { _nccDetails.Title = enDemoTitle + (currentCount + i).ToString(); _nccDetails.Slug = enDemoSlug + (currentCount + i).ToString(); _nccDetails.Name = enDemoSlug + (currentCount + i).ToString(); } else if (lang.TwoLetterISOLanguageName == "bn") { _nccDetails.Title = bnDemoTitle + (currentCount + i).ToString(); _nccDetails.Slug = bnDemoSlug + (currentCount + i).ToString(); _nccDetails.Name = bnDemoSlug + (currentCount + i).ToString(); } item.CategoryDetails.Add(_nccDetails); } } _categoryService.Save(item); //ShowMessage(totalCount + " Category created successfully", Framework.Core.Mvc.Views.MessageType.Success); } return(true); }
public ActionResult Delete(long Id) { NccCategory item = _nccCategoryService.Get(Id); return(View(item)); }
public ActionResult CreateEdit(NccCategory model, long ParentId, string save) { ViewBag.MessageType = "ErrorMessage"; ViewBag.Message = "Error occoured. Please fill up all field correctly."; if (ModelState.IsValid) { bool isSuccess = true; #region For default language var defaultCategoryDetails = model.CategoryDetails.Where(x => x.Language == GlobalContext.WebSite.Language).FirstOrDefault(); if (defaultCategoryDetails == null) { isSuccess = false; ViewBag.Message = "Default language category can't be null"; } else { //title empty validation if (string.IsNullOrEmpty(defaultCategoryDetails.Name)) { isSuccess = false; ViewBag.Message = "Default language Name can't be null"; } //slug empty validation if (isSuccess && string.IsNullOrEmpty(defaultCategoryDetails.Slug)) { isSuccess = false; ViewBag.Message = "Default language Slug can't be null"; } //slug duplicate validation if (isSuccess) { defaultCategoryDetails.Name = defaultCategoryDetails.Name.Trim(); defaultCategoryDetails.Slug = defaultCategoryDetails.Slug.Trim(); model.Name = defaultCategoryDetails.Name; var temp = _nccCategoryDetailsService.Get(defaultCategoryDetails.Slug, defaultCategoryDetails.Language); if (temp != null && temp.Id != defaultCategoryDetails.Id) { isSuccess = false; ViewBag.Message = "Duplicate Slug found for language " + defaultCategoryDetails.Language; } } } #endregion #region Check validation for other languages List <NccCategoryDetails> deletedList = new List <NccCategoryDetails>(); foreach (var item in model.CategoryDetails.Where(x => x.Language != GlobalContext.WebSite.Language).ToList()) { if (item.Id == 0 && string.IsNullOrEmpty(item.Title) && string.IsNullOrEmpty(item.Slug) && string.IsNullOrEmpty(item.Name)) { deletedList.Add(item); } else { if (string.IsNullOrEmpty(item.Name)) { isSuccess = false; ViewBag.Message = "Name can't be null for language " + item.Language; } //slug empty validation if (isSuccess && string.IsNullOrEmpty(item.Slug)) { isSuccess = false; ViewBag.Message = "Slug can't be null for language " + item.Language; } //slug duplicate validation if (isSuccess) { item.Name = item.Name.Trim(); item.Slug = item.Slug.Trim(); var temp = _nccCategoryDetailsService.Get(item.Slug, item.Language); if (temp != null && temp.Id != item.Id) { isSuccess = false; ViewBag.Message = "Duplicate Slug found for language " + item.Language; } } } } //Remove empty if (isSuccess) { foreach (var item in deletedList) { model.CategoryDetails.Remove(item); } } #endregion #region Operation if (isSuccess) { try { var parrent = _nccCategoryService.Get(ParentId); model.Parent = parrent; } catch (Exception ex) { _logger.LogError(ex, ex.Message); } if (model.Id > 0) { try { _nccCategoryService.Update(model); ViewBag.MessageType = "SuccessMessage"; ViewBag.Message = "Data updated successfull."; } catch (Exception ex) { _logger.LogError("Category update error.", ex.ToString()); } } else { try { _nccCategoryService.Save(model); ViewBag.MessageType = "SuccessMessage"; ViewBag.Message = "Data saved successfull."; } catch (Exception ex) { _logger.LogError("Category create error.", ex.ToString()); } } } #endregion } else { ViewBag.Message = string.Join("; ", ModelState.Values.SelectMany(x => x.Errors).Select(x => x.ErrorMessage)); } if (ViewBag.MessageType == "SuccessMessage" && save == "Save") { return(RedirectToAction("Manage")); } if (ViewBag.MessageType == "SuccessMessage" && save != "Save") { return(RedirectToAction("CreateEdit")); } SetCategoryViewData(model); return(View(model)); }
public static async Task SaveBasicData(NccUser nccUser, NccDbContext nccDbConetxt, UserManager <NccUser> userManager, RoleManager <NccRole> roleManager, NccSignInManager <NccUser> signInManager, WebSiteInfo setupInfo) { string enDemoTitle = ""; string enDemoSlug = ""; string enDemoContent = ""; string bnDemoTitle = ""; string bnDemoSlug = ""; string bnDemoContent = ""; //var webSiteRepository = new NccWebSiteRepository(nccDbConetxt); //var webSiteInfoRepository = new NccWebSiteInfoRepository(nccDbConetxt); //var webSiteService = new NccWebSiteService(webSiteRepository, webSiteInfoRepository); #region Create a sample page var nccPageRepository = new NccPageRepository(nccDbConetxt); var nccPageDetailsRepository = new NccPageDetailsRepository(nccDbConetxt); var nccPageService = new NccPageService(nccPageRepository, nccPageDetailsRepository); try { enDemoTitle = "Sample Page "; enDemoSlug = "Sample-Page"; enDemoContent = "This is a sample page."; bnDemoTitle = "নমুনা পৃষ্ঠা "; bnDemoSlug = "নমুনা-পৃষ্ঠা"; bnDemoContent = "এটি একটি নমুনা পাতা।"; NccPage page = new NccPage(); page.Metadata = "DEMODATA"; page.PublishDate = DateTime.Now; page.PageStatus = NccPageStatus.Published; page.PageType = NccPageType.Public; page.Layout = "SiteLayout"; page.CreateBy = page.ModifyBy = 1; page.Name = enDemoTitle; foreach (var item in SupportedCultures.Cultures) { NccPageDetails _nccPageDetails = new NccPageDetails(); _nccPageDetails.Language = item.TwoLetterISOLanguageName; if (item.TwoLetterISOLanguageName == "en") { _nccPageDetails.Title = enDemoTitle; _nccPageDetails.Slug = enDemoSlug; _nccPageDetails.Name = enDemoSlug; _nccPageDetails.Content = "<h1 style=\"text-align:center\">" + enDemoTitle + "</h1><p>" + enDemoContent + "</p>"; _nccPageDetails.MetaDescription = enDemoTitle + " " + enDemoContent; } else if (item.TwoLetterISOLanguageName == "bn") { _nccPageDetails.Title = bnDemoTitle; _nccPageDetails.Slug = bnDemoSlug; _nccPageDetails.Name = bnDemoSlug; _nccPageDetails.Content = "<h1 style=\"text-align:center\">" + bnDemoTitle + "</h1><p>" + bnDemoContent + "</p>"; _nccPageDetails.MetaDescription = bnDemoTitle + " " + bnDemoContent; } page.PageDetails.Add(_nccPageDetails); } nccPageService.Save(page); } catch (Exception ex) { } #endregion #region Create a sample category var categoryRepository = new NccCategoryRepository(nccDbConetxt); var categoryService = new NccCategoryService(categoryRepository); try { enDemoTitle = "Sample Category "; enDemoSlug = "Sample-Category"; bnDemoTitle = "নমুনা ক্যাটাগরি "; bnDemoSlug = "নমুনা-ক্যাটাগরি"; NccCategory item = new NccCategory(); item.Metadata = "DEMODATA"; item.Name = enDemoTitle; item.CategoryImage = "/media/Images/2017/06/image-slider-0.jpg"; foreach (var lang in SupportedCultures.Cultures) { NccCategoryDetails _nccDetails = new NccCategoryDetails(); _nccDetails.Language = lang.TwoLetterISOLanguageName; if (lang.TwoLetterISOLanguageName == "en") { _nccDetails.Title = enDemoTitle; _nccDetails.Slug = enDemoSlug; _nccDetails.Name = enDemoSlug; } else if (lang.TwoLetterISOLanguageName == "bn") { _nccDetails.Title = bnDemoTitle; _nccDetails.Slug = bnDemoSlug; _nccDetails.Name = bnDemoSlug; } item.CategoryDetails.Add(_nccDetails); } categoryService.Save(item); } catch (Exception ex) { } #endregion //var tagRepository = new NccTagRepository(nccDbConetxt); //var tagService = new NccTagService(tagRepository); #region Create a sample post var postRepository = new NccPostRepository(nccDbConetxt); var postDetailsRepository = new NccPostDetailsRepository(nccDbConetxt); var postService = new NccPostService(postRepository, postDetailsRepository); try { enDemoTitle = "Sample Post "; enDemoSlug = "Sample-Post"; enDemoContent = "This is a sample post."; bnDemoTitle = "নমুনা পোস্ট "; bnDemoSlug = "নমুনা-পোস্ট"; bnDemoContent = "এটি একটি নমুনা পোস্ট।"; var categoryList = categoryService.LoadAll(); NccPost post = new NccPost(); post.Metadata = "DEMODATA"; post.PublishDate = DateTime.Now; post.PostStatus = NccPostStatus.Published; post.PostType = NccPostType.Public; post.Layout = "SiteLayout"; post.CreateBy = post.ModifyBy = 1; post.Name = enDemoTitle; post.AllowComment = true; post.ThumImage = "/media/Images/2017/06/image-slider-2.jpg"; foreach (var postItem in SupportedCultures.Cultures) { NccPostDetails _nccPostDetails = new NccPostDetails(); _nccPostDetails.Language = postItem.TwoLetterISOLanguageName; if (postItem.TwoLetterISOLanguageName == "en") { _nccPostDetails.Title = enDemoTitle; _nccPostDetails.Slug = enDemoSlug; _nccPostDetails.Name = enDemoSlug; _nccPostDetails.Content = "<h1 style=\"text-align:center\">" + enDemoTitle + "</h1><hr />" + enDemoContent; _nccPostDetails.MetaDescription = enDemoTitle + " " + enDemoContent; } else if (postItem.TwoLetterISOLanguageName == "bn") { _nccPostDetails.Title = bnDemoTitle; _nccPostDetails.Slug = bnDemoSlug; _nccPostDetails.Name = bnDemoSlug; _nccPostDetails.Content = "<h1 style=\"text-align:center\">" + bnDemoTitle + "</h1><hr />" + bnDemoContent; _nccPostDetails.MetaDescription = bnDemoTitle + " " + bnDemoContent; } post.PostDetails.Add(_nccPostDetails); } postService.Save(post); try { post = postService.Get(post.Id, true); post.Categories = new List <NccPostCategory>(); var temp = categoryList.FirstOrDefault(); if (temp != null) { if (post.Categories.Where(x => x.CategoryId == temp.Id).Count() <= 0) { post.Categories.Add(new NccPostCategory() { Post = post, CategoryId = temp.Id }); } } postService.Update(post); } catch (Exception ex) { } } catch (Exception ex) { } #endregion #region Create a sample comment var commentsRepository = new NccCommentsRepository(nccDbConetxt); var commentsService = new NccCommentsService(commentsRepository); try { enDemoContent = "This is a sample comment."; bnDemoContent = "এটি একটি নমুনা মন্তব্য।"; NccComment commentItem = new NccComment(); commentItem.Metadata = "DEMODATA"; commentItem.Name = "Sample Comments"; commentItem.Content = enDemoContent; if (Language == "bn") { commentItem.Content = bnDemoContent; } commentItem.CommentStatus = NccComment.NccCommentStatus.Approved; commentItem.Post = postService.LoadAll().FirstOrDefault(); commentsService.Save(commentItem); } catch (Exception ex) { } #endregion #region Create sample menu var menuRepository = new NccMenuRepository(nccDbConetxt); var menuItemRepository = new NccMenuItemRepository(nccDbConetxt); var menuService = new NccMenuService(menuRepository, menuItemRepository); try { NccMenu nccMenu = new NccMenu() { Name = "Main Menu", Position = "Navigation", MenuOrder = 1, MenuLanguage = "" }; if (Language == "bn") { nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 1, Module = "", Name = "হোম", Target = "_self", Url = "/" }); nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 2, Module = "", Name = "নমুনা পৃষ্ঠা", Target = "_self", Url = "/নমুনা-পৃষ্ঠা" }); nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 3, Module = "", Name = "ব্লগ পোস্ট", Target = "_self", Url = "/Post" }); nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 4, Module = "", Name = "ব্লগ বিভাগ", Target = "_self", Url = "/Category" }); } else { nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 1, Module = "", Name = "Home", Target = "_self", Url = "/" }); nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 2, Module = "", Name = "Sample Page", Target = "_self", Url = "/Sample-Page" }); nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 3, Module = "", Name = "Blog Posts", Target = "_self", Url = "/Post" }); nccMenu.MenuItems.Add(new NccMenuItem() { Action = "", Controller = "", Data = "", //Id = item.Id, MenuActionType = NccMenuItem.ActionType.Url, MenuOrder = 4, Module = "", Name = "Blog Categories", Target = "_self", Url = "/Category" }); } menuService.Save(nccMenu); } catch (Exception ex) { } #endregion #region Create sample widget //var currentWebsite = nccWebSiteService.LoadAll().FirstOrDefault(); //var nccWebSiteWidget = new NccWebSiteWidget() //{ // WebSite = currentWebsite, // WidgetConfigJson = "", // ModuleId = "NetCoreCMS.Core.Modules.Cms", // WidgetId = "NetCoreCms.Modules.Cms.CmsSearch", // ThemeId = "com.NetCoreCMS.themes.NccSeventeen", // LayoutName = "SiteLayout", // Zone = "RightSidebar", // WidgetOrder = 1, // WidgetData = "", //}; //nccWebSiteWidgetService.Save(nccWebSiteWidget); #endregion }