summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/vue_shared/mixins
diff options
context:
space:
mode:
authorLuke Bennett <lbennett@gitlab.com>2017-12-08 12:26:39 +0000
committerSean McGivern <sean@mcgivern.me.uk>2017-12-08 12:26:39 +0000
commit1a3b292d350cc4c226066562d489432e7f37e105 (patch)
tree39a1cc2dfd39acfdc606d754028fe2e2de00a3cf /app/assets/javascripts/vue_shared/mixins
parent9429e8ac60a10436a0469d7d206d3f74a2c966c7 (diff)
downloadgitlab-ce-1a3b292d350cc4c226066562d489432e7f37e105.tar.gz
Resolve "No feedback when checking on checklist if potential spam was detected"
Diffstat (limited to 'app/assets/javascripts/vue_shared/mixins')
-rw-r--r--app/assets/javascripts/vue_shared/mixins/recaptcha_dialog_implementor.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/app/assets/javascripts/vue_shared/mixins/recaptcha_dialog_implementor.js b/app/assets/javascripts/vue_shared/mixins/recaptcha_dialog_implementor.js
new file mode 100644
index 00000000000..ef70f9432e3
--- /dev/null
+++ b/app/assets/javascripts/vue_shared/mixins/recaptcha_dialog_implementor.js
@@ -0,0 +1,36 @@
+import RecaptchaDialog from '../components/recaptcha_dialog.vue';
+
+export default {
+ data() {
+ return {
+ showRecaptcha: false,
+ recaptchaHTML: '',
+ };
+ },
+
+ components: {
+ RecaptchaDialog,
+ },
+
+ methods: {
+ openRecaptcha() {
+ this.showRecaptcha = true;
+ },
+
+ closeRecaptcha() {
+ this.showRecaptcha = false;
+ },
+
+ checkForSpam(data) {
+ if (!data.recaptcha_html) return data;
+
+ this.recaptchaHTML = data.recaptcha_html;
+
+ const spamError = new Error(data.error_message);
+ spamError.name = 'SpamError';
+ spamError.message = 'SpamError';
+
+ throw spamError;
+ },
+ },
+};