public static CaptchaConfiguration GetConfig()
        {
            CaptchaConfiguration captchaConfig = null;

            if (
                (HttpRuntime.Cache["mojoCaptchaConfig"] != null)
                && (HttpRuntime.Cache["mojoCaptchaConfig"] is CaptchaConfiguration)
            )
            {
                return (CaptchaConfiguration)HttpRuntime.Cache["mojoCaptchaConfig"];
            }
            else
            {
                String configFileName = "mojoCaptcha.config";
                if (ConfigurationManager.AppSettings["mojoCaptchaConfigFileName"] != null)
                {
                    configFileName
                        = ConfigurationManager.AppSettings["mojoCaptchaConfigFileName"];
                }

                if (!configFileName.StartsWith("~/"))
                {
                    configFileName = "~/" + configFileName;
                }

                String pathToConfigFile
                    = HttpContext.Current.Server.MapPath(configFileName);

                XmlDocument configXml = new XmlDocument();
                configXml.Load(pathToConfigFile);
                captchaConfig
                    = new CaptchaConfiguration(configXml.DocumentElement);

                AggregateCacheDependency aggregateCacheDependency
                    = new AggregateCacheDependency();

                aggregateCacheDependency.Add(new CacheDependency(pathToConfigFile));

                System.Web.HttpRuntime.Cache.Insert(
                    "mojoCaptchaConfig",
                    captchaConfig,
                    aggregateCacheDependency,
                    DateTime.Now.AddYears(1),
                    TimeSpan.Zero,
                    System.Web.Caching.CacheItemPriority.Default,
                    null);

                return (CaptchaConfiguration)HttpRuntime.Cache["mojoCaptchaConfig"];

            }

            //return captchaConfig;
        }
Beispiel #2
0
        public static CaptchaConfiguration GetConfig()
        {
            CaptchaConfiguration captchaConfig = null;

            if (
                (HttpRuntime.Cache["mojoCaptchaConfig"] != null) &&
                (HttpRuntime.Cache["mojoCaptchaConfig"] is CaptchaConfiguration)
                )
            {
                return((CaptchaConfiguration)HttpRuntime.Cache["mojoCaptchaConfig"]);
            }
            else
            {
                String configFileName = "mojoCaptcha.config";
                if (ConfigurationManager.AppSettings["mojoCaptchaConfigFileName"] != null)
                {
                    configFileName
                        = ConfigurationManager.AppSettings["mojoCaptchaConfigFileName"];
                }

                if (!configFileName.StartsWith("~/"))
                {
                    configFileName = "~/" + configFileName;
                }

                String pathToConfigFile
                    = HttpContext.Current.Server.MapPath(configFileName);

                XmlDocument configXml = new XmlDocument();
                configXml.Load(pathToConfigFile);
                captchaConfig
                    = new CaptchaConfiguration(configXml.DocumentElement);

                AggregateCacheDependency aggregateCacheDependency
                    = new AggregateCacheDependency();

                aggregateCacheDependency.Add(new CacheDependency(pathToConfigFile));

                System.Web.HttpRuntime.Cache.Insert(
                    "mojoCaptchaConfig",
                    captchaConfig,
                    aggregateCacheDependency,
                    DateTime.Now.AddYears(1),
                    TimeSpan.Zero,
                    System.Web.Caching.CacheItemPriority.Default,
                    null);

                return((CaptchaConfiguration)HttpRuntime.Cache["mojoCaptchaConfig"]);
            }

            //return captchaConfig;
        }
Beispiel #3
0
        private static void Initialize()
        {
            //try
            //{
            CaptchaConfiguration config = CaptchaConfiguration.GetConfig();

            if (
                (config.DefaultProvider == null) ||
                (config.Providers == null) ||
                (config.Providers.Count < 1)
                )
            {
                throw new ProviderException("You must specify a valid default provider.");
            }


            providerCollection = new CaptchaProviderCollection();

            ProvidersHelper.InstantiateProviders(
                config.Providers,
                providerCollection,
                typeof(CaptchaProvider));

            providerCollection.SetReadOnly();
            defaultProvider = providerCollection[config.DefaultProvider];

            //}
            //catch (Exception ex)
            //{
            //    initializationException = ex;
            //    isInitialized = true;
            //    throw ex;
            //}

            //isInitialized = true;
        }