Exemple #1
0
        public static string GetValue(this ReCaptchaLanguage cl, string key)
        {
            string value = "";

            if (_find.TryGetValue(key, out value))
            {
                return(value.TrimStart().TrimEnd().Trim());
            }
            return(null);
        }
        public static string GetLanguage(this ReCaptchaLanguage language)
        {
            if (language == ReCaptchaLanguage.Auto)
            {
                var newLanguage = GetLanguageByCulture(CultureInfo.CurrentUICulture);
                return(GetLanguage(newLanguage.GetValueOrDefault()));
            }
            var attribute = language.GetType().GetMember(language.ToString()).Select(m => m.GetCustomAttribute <LanguageAttribute>()).FirstOrDefault() ?? new LanguageAttribute(string.Empty);

            return(attribute.Value);
        }
 private void Initialize(string publicKey, string secretKey, ReCaptchaLanguage? defaultLanguage = null)
 {
     if (string.IsNullOrWhiteSpace(publicKey))
     {
         throw new ArgumentNullException("publicKey");
     }
     if (string.IsNullOrWhiteSpace(secretKey))
     {
         throw new ArgumentNullException("secretKey");
     }
     if (defaultLanguage.HasValue)
     {
         _language = defaultLanguage.Value.GetLanguage();
     }
     _configured = true;
     _secretKey = secretKey;
     _captchaDiv = string.Format("<div class='g-recaptcha' data-sitekey='{0}'></div><script src='https://www.google.com/recaptcha/api.js{{0}}'></script>", publicKey);
 }
 public static IHtmlString GetCaptcha(ReCaptchaLanguage? language = null)
 {
     return _reCaptcha.GetCaptcha(language);
 }
 public static void Configure(string publicKey, string secretKey, ReCaptchaLanguage? defaultLanguage = null)
 {
     _reCaptcha = new ReCaptchaObject(publicKey, secretKey, defaultLanguage);
 }
Exemple #6
0
        public static IHtmlString ReCaptchaScript(this HtmlHelper _helpers, Render render = Render.Onload, ReCaptchaLanguage language = ReCaptchaLanguage.Default, string onLoadCallBack = null)
        {
            TagBuilder tagDiv = new TagBuilder("script");

            string url = ReConfigurationCaptcha.GetCaptchaApiUrl();

            url = url + "?render=" + render.GetValueLower();

            if (!string.IsNullOrEmpty(onLoadCallBack))
            {
                url = url + "&onload=" + onLoadCallBack;
            }

            if (language != ReCaptchaLanguage.Default)
            {
                string valueHl = null;
                if (_find.TryGetValue(language.ToString(), out valueHl))
                {
                    url = url + "&hl=" + valueHl;
                }
            }

            tagDiv.Attributes.Add("src", url);

            return(new HtmlString(tagDiv.ToString().Replace("></", " async defer></")));
        }
 private string GetHlCode(ReCaptchaLanguage? language)
 {
     string strLang = language.HasValue ? language.Value.GetLanguage() : _language;
     return string.IsNullOrWhiteSpace(strLang) ? "" : "?hl=" + strLang;
 }
 internal ReCaptchaObject(string publicKey, string secretKey, ReCaptchaLanguage? defaultLanguage = null)
 {
     Initialize(publicKey, secretKey, defaultLanguage);
 }
 internal IHtmlString GetCaptcha(ReCaptchaLanguage? language)
 {
     CheckIfIamConfigured();
     return new HtmlString(string.Format(_captchaDiv, GetHlCode(language)));
 }
        public static string GetLanguage(this ReCaptchaLanguage language)
        {
            var attribute = language.GetType().GetMember(language.ToString()).Select(m => m.GetCustomAttribute <LanguageAttribute>()).FirstOrDefault() ?? new LanguageAttribute(string.Empty);

            return(attribute.Value);
        }