示例#1
0
        public static void CrateNccWebSite(NccDbContext dbContext, WebSiteInfo webSiteInfo)
        {
            var webSiteRepository     = new NccWebSiteRepository(dbContext);
            var webSiteInfoRepository = new NccWebSiteInfoRepository(dbContext);
            var webSiteService        = new NccWebSiteService(webSiteRepository, webSiteInfoRepository);
            var webSite = new NccWebSite()
            {
                Name = webSiteInfo.SiteName,
                AllowRegistration = true,
                DateFormat        = "dd/MM/yyyy",
                TimeFormat        = "hh:mm:ss",
                EmailAddress      = webSiteInfo.Email,
                Language          = webSiteInfo.Language,
                NewUserRole       = "Subscriber",
                TimeZone          = "UTC_6",
            };

            webSite.WebSiteInfos = new List <NccWebSiteInfo>();
            webSite.WebSiteInfos.Add(new NccWebSiteInfo()
            {
                Language  = webSiteInfo.Language,
                Name      = webSiteInfo.SiteName,
                SiteTitle = webSiteInfo.SiteName,
                Tagline   = webSiteInfo.Tagline
            });

            webSiteService.Save(webSite);
        }
 public CmsWidgetController(NccWebSiteWidgetService nccWebSiteWidgetService, NccWebSiteService nccWebSiteService, ILoggerFactory factory)
 {
     _loggerFactory           = factory;
     _logger                  = factory.CreateLogger <CmsWidgetController>();
     _nccWebSiteWidgetService = nccWebSiteWidgetService;
     _nccWebSiteService       = nccWebSiteService;
 }
示例#3
0
        public static IApplicationBuilder UseNetCoreCMS(this IApplicationBuilder app, IHostingEnvironment env, IServiceProvider serviceProvider, ILoggerFactory loggerFactory)
        {
            ResourcePathExpendar.RegisterStaticFiles(env, app, GlobalContext.Modules, GlobalContext.Themes);

            //app.UseThemeActivator(env, loggerFactory);
            //app.UseModuleActivator(env, _mvcBuilder, _services, loggerFactory);

            app.UseResponseCaching(); //Use this attrib for cache [ResponseCache(Duration = 20)]
            app.UseResponseCompression();
            app.UseSession();
            app.UseStaticFiles();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseBrowserLink();
                app.UseDatabaseErrorPage();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
            }

            GlobalContext.App = app;

            if (SetupHelper.IsDbCreateComplete)
            {
                app.UseAuthentication();

                NccWebSiteWidgetService nccWebsiteWidgetServices = serviceProvider.GetService <NccWebSiteWidgetService>();
                NccWebSiteService       nccWebsiteService        = serviceProvider.GetService <NccWebSiteService>();
                NccMenuService          menuServic = serviceProvider.GetService <NccMenuService>();

                GlobalContext.WebSite        = nccWebsiteService.LoadAll().FirstOrDefault();
                ThemeHelper.WebSite          = GlobalContext.WebSite;
                GlobalContext.WebSiteWidgets = nccWebsiteWidgetServices.LoadAll();
                GlobalContext.Menus          = menuServic.LoadAllSiteMenus();
            }

            app.UseMaintenance();

            if (SetupHelper.IsAdminCreateComplete)
            {
                app.UseRequestLocalization(new RequestLocalizationOptions
                {
                    DefaultRequestCulture = new RequestCulture(SetupHelper.Language),
                    SupportedCultures     = SupportedCultures.Cultures,
                    SupportedUICultures   = SupportedCultures.Cultures
                });
            }

            return(app);
        }
示例#4
0
 public AdminController(
     NccWebSiteService nccWebSiteService,
     NccPageService pageService,
     NccPostService postService,
     NccCategoryService categoryService,
     ILoggerFactory loggarFactory)
 {
     _webSiteService  = nccWebSiteService;
     _pageService     = pageService;
     _postService     = postService;
     _categoryService = categoryService;
     _logger          = loggarFactory.CreateLogger <AdminController>();
 }
示例#5
0
        //public static void CreateWebSite(NccDbContext dbContext, WebSiteInfo setupInfo)
        //{
        //    var webSiteRepository = new NccWebSiteRepository(dbContext);
        //    var webSiteInfoRepository = new NccWebSiteInfoRepository(dbContext);

        //    var webSiteService = new NccWebSiteService(webSiteRepository, webSiteInfoRepository);
        //    var webSite = new NccWebSite()
        //    {
        //        AllowRegistration = true,
        //        //Copyrights = "Copyright (c) " + DateTime.Now.Year + " " + setupInfo.SiteName,
        //        DateFormat = "dd/mm/yyyy",
        //        EmailAddress = setupInfo.Email,
        //        Name = setupInfo.SiteName,
        //        NewUserRole = "Reader",
        //        //SiteTitle = setupInfo.SiteName,
        //        //Tagline = setupInfo.Tagline,
        //        TimeFormat = "hh:mm:ss",
        //        TimeZone = "UTC_6"
        //    };
        //    webSiteService.Save(webSite);
        //}

        public static void CrateNccWebSite(NccDbContext dbContext, WebSiteInfo webSiteInfo)
        {
            var webSiteRepository     = new NccWebSiteRepository(dbContext);
            var webSiteInfoRepository = new NccWebSiteInfoRepository(dbContext);
            var webSiteService        = new NccWebSiteService(webSiteRepository, webSiteInfoRepository);
            var webSite = new NccWebSite()
            {
                Name = webSiteInfo.SiteName,
                AllowRegistration = true,
                DateFormat        = "dd/MM/yyyy",
                TimeFormat        = "hh:mm:ss",
                EmailAddress      = webSiteInfo.Email,
                Language          = webSiteInfo.Language,
                NewUserRole       = "Subscriber",
                TimeZone          = "UTC_6",
                EnableCache       = webSiteInfo.EnableCache
            };

            if (string.IsNullOrEmpty(webSiteInfo.TablePrefix) == false)
            {
                if (webSiteInfo.TablePrefix.EndsWith("_"))
                {
                    webSite.TablePrefix = webSiteInfo.TablePrefix.Trim();
                }
                else
                {
                    webSite.TablePrefix = webSiteInfo.TablePrefix.Trim() + "_";
                }
            }
            else
            {
                webSite.TablePrefix = "";
            }

            webSite.WebSiteInfos = new List <NccWebSiteInfo>();
            foreach (var item in SupportedCultures.Cultures)
            {
                webSite.WebSiteInfos.Add(new NccWebSiteInfo()
                {
                    Language  = item.TwoLetterISOLanguageName,
                    Name      = webSiteInfo.SiteName,
                    SiteTitle = webSiteInfo.SiteName,
                    Tagline   = webSiteInfo.Tagline
                });
            }

            webSiteService.Save(webSite);
        }
示例#6
0
 public DashboardController(NccWebSiteService nccWebSiteService, NccPageService pageService, NccPostService postService, NccCategoryService categoryService, INccSettingsService settingsService, RoleManager <NccRole> roleManager, UserManager <NccUser> userManager, NccStartupService startupService, IConfiguration configuration, IHostingEnvironment hostingEnv,
                            NccModuleService moduleService, ILoggerFactory loggarFactory)
 {
     _webSiteService     = nccWebSiteService;
     _pageService        = pageService;
     _postService        = postService;
     _categoryService    = categoryService;
     _settingsService    = settingsService;
     _roleManager        = roleManager;
     _userManager        = userManager;
     _startupService     = startupService;
     _configuration      = configuration;
     _hostingEnvironment = hostingEnv;
     _moduleService      = moduleService;
     _logger             = loggarFactory.CreateLogger <AdminController>();
 }
示例#7
0
        public static void CreateWebSite(NccDbContext dbContext, WebSiteInfo setupInfo)
        {
            var webSiteRepository = new NccWebSiteRepository(dbContext);
            var webSiteService    = new NccWebSiteService(webSiteRepository);
            var webSite           = new NccWebSite()
            {
                AllowRegistration = true,
                Copyrights        = "Copyright (c) " + DateTime.Now.Year + " " + setupInfo.SiteName,
                DateFormat        = "dd/mm/yyyy",
                EmailAddress      = setupInfo.Email,
                Name        = setupInfo.SiteName,
                NewUserRole = "Reader",
                SiteTitle   = setupInfo.SiteName,
                Tagline     = setupInfo.Tagline,
                TimeFormat  = "hh:mm:ss",
                TimeZone    = "UTC +6"
            };

            webSiteService.Save(webSite);
        }
示例#8
0
 public HelloWidget(NccWebSiteService nccWebSiteService, IViewRenderService viewRenderService)
 {
     _nccWebSiteService = nccWebSiteService;
     _viewRenderService = viewRenderService;
 }
示例#9
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
        {
            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();

            _themeManager = new ThemeManager(loggerFactory);
            var themeFolder = Path.Combine(env.ContentRootPath, NccInfo.ThemeFolder);

            GlobalConfig.Themes = _themeManager.ScanThemeDirectory(themeFolder);

            ResourcePathExpendar.RegisterStaticFiles(env, app, GlobalConfig.Modules, GlobalConfig.Themes);

            //app.UseThemeActivator(env, loggerFactory);
            //app.UseModuleActivator(env, _mvcBuilder, _services, loggerFactory);

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseDatabaseErrorPage();
                //app.UseBrowserLink();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
            }

            app.UseStaticFiles();
            GlobalConfig.App = app;

            if (SetupHelper.IsDbCreateComplete)
            {
                app.UseIdentity();

                NccWebSiteWidgetService nccWebsiteWidgetServices = _serviceProvider.GetService <NccWebSiteWidgetService>();
                NccWebSiteService       nccWebsiteService        = _serviceProvider.GetService <NccWebSiteService>();
                NccMenuService          menuServic = _serviceProvider.GetService <NccMenuService>();

                GlobalConfig.WebSite        = nccWebsiteService.LoadAll().FirstOrDefault();
                GlobalConfig.WebSiteWidgets = nccWebsiteWidgetServices.LoadAll();
                GlobalConfig.Menus          = menuServic.LoadAllSiteMenus();
            }

            app.UseSession();
            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}/{id?}");
                routes.MapRoute(
                    name: "cmsPage",
                    template: "{slug}",
                    defaults: new { controller = "CmsPage", action = "Index" });
                routes.MapRoute(
                    name: "blogPost",
                    template: "Post/{slug}",
                    defaults: new { controller = "Post", action = "Index" });
                routes.MapRoute(
                    name: "blogCategory",
                    template: "{slug}",
                    defaults: new { controller = "Category", action = "Index" });
            });
        }