예제 #1
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);

            // registering custom view engines
            ViewEngines.Engines.Clear();
            ViewEngines.Engines.Add(new DocListViewEngine());

            // this.GenerateLessColors();
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            Application.Lock();

            string searchWrapperUrl    = null;
            string filterDocsStructUrl = null;

            if (ConfigurationManager.AppSettings["SolutionVersion"] == "product")
            {
                searchWrapperUrl    = ConfigurationManager.AppSettings["SearchWrapper_BasePath"];
                filterDocsStructUrl = ConfigurationManager.AppSettings["FilterDocsStruct_BasePath"];
            }
            else
            {
                searchWrapperUrl    = ConfigurationManager.AppSettings["SearchWrapper_BasePath_cc"];
                filterDocsStructUrl = ConfigurationManager.AppSettings["FilterDocsStruct_BasePath_cc"];
            }

            Application["SearchWrapper"]         = null;
            Application["FilterDocsStruct"]      = null;
            Application["FilterDocsClassifiers"] = null;
            Application["ClassifiersMap"]        = null;
            Application["ResultsGroupper"]       = null;

            //Application["SearchWrapper"] = SearchResult.GetNewSearchWrapper(ConfigurationManager.AppSettings["SearchWrapper_BasePath"]);
            Application["SearchWrapper"]         = SearchResult.GetNewSearchWrapper(Server.MapPath(searchWrapperUrl));
            Application["FilterDocsStruct"]      = SearchResult.GetNewFilterDocsStruct(Server.MapPath(filterDocsStructUrl));
            Application["FilterDocsClassifiers"] = SearchResult.GetNewFilterDocsClassifiers(Server.MapPath(filterDocsStructUrl));
            Application["ClassifiersMap"]        = Classifiers.GetClassifiersMap();
            Application["ResultsGroupper"]       = SearchResult.GetNewSearchGroupper(HttpRuntime.AppDomainAppPath);
            Application.UnLock();

            //ObjectFactory.Initialize(x => { x.PullConfigurationFromAppConfig = true; });
            //StructureMapConfiguration();

            ModelBinders.Binders.Add(typeof(SearchBox), new SearchBoxBinder());
            ModelBinders.Binders.Add(typeof(SearchCases), new SearchCasesBinder());
            ModelBinders.Binders.Add(typeof(SearchLaw), new SearchLawBinder());
            ModelBinders.Binders.Add(typeof(SearchFinances), new SearchFinancesBinder());

            AkomaNtosoPreProcessor.IsInterlex              = true;
            AkomaNtosoPreProcessor.EnableEurlexCasesHints  = true;
            AkomaNtosoPreProcessor.DisableMetadataCitation = false;
            AkomaNtosoPreProcessor.FullFilePathProvider    = this.Server.MapPath;
#if DEBUG
            AkomaNtosoPreProcessor.EnableEurlexTableAnnotations = true;
#endif
            var isTestEnviournment = WebConfigHelper.IsTestEnvironment();
            if (isTestEnviournment)
            {
                AkomaNtosoPreProcessor.EnableEurlexTableAnnotations = true;
            }

            // Popualting multilingual dictionary alphabets
            Languages.RePopulateAlphabetsToCache();

            CacheProvider.Provider.DeleteCacheItem("multilingual_dictionary");
            CacheProvider.Provider.GetOrSetForever("multilingual_dictionary", () => MultiDictItem.GetAllMultiDictItems());
        }
        private string MultilingualDictionary()
        {
            try
            {
                CacheProvider.Provider.DeleteCacheItem("multilingual_dictionary");
                CacheProvider.Provider.GetOrSetForever("multilingual_dictionary", () => MultiDictItem.GetAllMultiDictItems());

                return("Successfuly updated multilingual dictionary entries");
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }