Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/cydrobolt/polr.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChaoyi Zha <summermontreal@gmail.com>2017-05-18 00:08:45 +0300
committerChaoyi Zha <summermontreal@gmail.com>2017-05-18 00:08:45 +0300
commit6e28bf83942382ab81bd8b45b49eecb8995a3d40 (patch)
treedbb26ba3f2d3c740b091b15a4c5bbead59f1d648 /resources
parent3c669ee1ca49bd5bef5af8e9e9a1ba2f464afe66 (diff)
Implement optional reCAPTCHA for registrations
Diffstat (limited to 'resources')
-rw-r--r--resources/views/env.blade.php11
-rw-r--r--resources/views/setup.blade.php28
-rw-r--r--resources/views/signup.blade.php10
3 files changed, 48 insertions, 1 deletions
diff --git a/resources/views/env.blade.php b/resources/views/env.blade.php
index 7bfd358..0b2b834 100644
--- a/resources/views/env.blade.php
+++ b/resources/views/env.blade.php
@@ -51,6 +51,11 @@ POLR_ALLOW_ACCT_CREATION={{$POLR_ALLOW_ACCT_CREATION}}
# Set to true to require activation by email (e.g true/false)
POLR_ACCT_ACTIVATION={{$POLR_ACCT_ACTIVATION}}
+# Set to true to require reCAPTCHAs on sign up pages
+# If this setting is enabled, you must also provide your reCAPTCHA keys
+# in POLR_RECAPTCHA_SITE_KEY and POLR_RECAPTCHA_SECRET_KEY
+POLR_ACCT_CREATION_RECAPTCHA={{$POLR_ACCT_CREATION_RECAPTCHA}}
+
# Set to true to require users to be logged in before shortening URLs
SETTING_SHORTEN_PERMISSION={{$ST_SHORTEN_PERMISSION}}
@@ -86,6 +91,12 @@ SETTING_RESTRICT_EMAIL_DOMAIN={{$ST_RESTRICT_EMAIL_DOMAIN}}
# A comma-separated list of permitted email domains
SETTING_ALLOWED_EMAIL_DOMAINS={{$ST_ALLOWED_EMAIL_DOMAINS}}
+# reCAPTCHA site key
+POLR_RECAPTCHA_SITE_KEY={{$POLR_RECAPTCHA_SITE_KEY}}
+
+# reCAPTCHA secret key
+POLR_RECAPTCHA_SECRET_KEY={{$POLR_RECAPTCHA_SECRET}}
+
# Set each to blank to disable mail
@if($MAIL_ENABLED)
MAIL_DRIVER=smtp
diff --git a/resources/views/setup.blade.php b/resources/views/setup.blade.php
index c94ec85..c50b045 100644
--- a/resources/views/setup.blade.php
+++ b/resources/views/setup.blade.php
@@ -207,6 +207,34 @@ Setup
Please ensure SMTP is properly set up before enabling password recovery.
</p>
+ <p>
+ Require reCAPTCHA for Registrations
+ <setup-tooltip content="You must provide your reCAPTCHA keys to use this feature."></setup-tooltip>
+ </p>
+ <select name='setting:acct_registration_recaptcha' class='form-control'>
+ <option value='false'>Do not require reCAPTCHA for registration</option>
+ <option value='true'>Require reCATPCHA for registration</option>
+ </select>
+
+ <p>
+ reCAPTCHA Configuration:
+ <setup-tooltip content="You must provide reCAPTCHA keys if you intend to use any reCAPTCHA-dependent features."></setup-tooltip>
+ </p>
+
+ <p>
+ reCAPTCHA Site Key
+ </p>
+ <input type='text' class='form-control' name='setting:recaptcha_site_key'>
+
+ <p>
+ reCAPTCHA Secret Key
+ </p>
+ <input type='text' class='form-control' name='setting:recaptcha_secret_key'>
+
+ <p class='text-muted'>
+ You can obtain reCAPTCHA keys from <a href="https://www.google.com/recaptcha/admin">Google's reCAPTCHA website</a>.
+ </p>
+
<p>Theme (<a href='https://github.com/cydrobolt/polr/wiki/Themes-Screenshots'>screenshots</a>):</p>
<select name='app:stylesheet' class='form-control'>
<option value=''>Modern (default)</option>
diff --git a/resources/views/signup.blade.php b/resources/views/signup.blade.php
index 0523ef5..d0bf3ea 100644
--- a/resources/views/signup.blade.php
+++ b/resources/views/signup.blade.php
@@ -12,6 +12,11 @@
Username: <input type='text' name='username' class='form-control form-field' placeholder='Username' />
Password: <input type='password' name='password' class='form-control form-field' placeholder='Password' />
Email: <input type='email' name='email' class='form-control form-field' placeholder='Email' />
+
+ @if (env('POLR_ACCT_CREATION_RECAPTCHA'))
+ <div class="g-recaptcha" data-sitekey="{{env('POLR_RECAPTCHA_SITE_KEY')}}"></div>
+ @endif
+
<input type="hidden" name='_token' value='{{csrf_token()}}' />
<input type="submit" class="btn btn-default btn-success" value="Register"/>
<p class='login-prompt'>
@@ -34,6 +39,9 @@
<h4>Email</h4>
<p>The email you will use to verify your account or to recover your account.</p>
</p>
-
</div>
@endsection
+
+@section('js')
+<script src="https://www.google.com/recaptcha/api.js" async defer></script>
+@endsection