From 1a5ee95ee4e7b739158bc7571b01b32b1af792ad Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson Date: Tue, 20 Jun 2017 10:37:51 +0300 Subject: [PATCH] Add a config.json option for enabling registration, don't link and redirect away from register page when it's disabled. --- src/components/login_form/login_form.js | 3 ++- src/components/login_form/login_form.vue | 2 +- src/components/registration/registration.js | 5 +++++ src/main.js | 3 ++- static/config.json | 3 ++- 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/components/login_form/login_form.js b/src/components/login_form/login_form.js index 1a6f601543..a117b76fd2 100644 --- a/src/components/login_form/login_form.js +++ b/src/components/login_form/login_form.js @@ -4,7 +4,8 @@ const LoginForm = { authError: false }), computed: { - loggingIn () { return this.$store.state.users.loggingIn } + loggingIn () { return this.$store.state.users.loggingIn }, + registrationOpen () { return this.$store.state.config.registrationOpen } }, methods: { submit () { diff --git a/src/components/login_form/login_form.vue b/src/components/login_form/login_form.vue index 585af6f64e..d629114820 100644 --- a/src/components/login_form/login_form.vue +++ b/src/components/login_form/login_form.vue @@ -16,7 +16,7 @@
diff --git a/src/components/registration/registration.js b/src/components/registration/registration.js index 9e99197c29..771b3b2750 100644 --- a/src/components/registration/registration.js +++ b/src/components/registration/registration.js @@ -4,6 +4,11 @@ const registration = { error: false, registering: false }), + created () { + if (!this.$store.state.config.registrationOpen || !!this.$store.state.users.currentUser) { + this.$router.push('/main/all') + } + }, computed: { termsofservice () { return this.$store.state.config.tos } }, diff --git a/src/main.js b/src/main.js index 52b820c28b..4b7891ed06 100644 --- a/src/main.js +++ b/src/main.js @@ -86,11 +86,12 @@ new Vue({ window.fetch('/static/config.json') .then((res) => res.json()) - .then(({name, theme, background, logo, tos}) => { + .then(({name, theme, background, logo, registrationOpen}) => { store.dispatch('setOption', { name: 'name', value: name }) store.dispatch('setOption', { name: 'theme', value: theme }) store.dispatch('setOption', { name: 'background', value: background }) store.dispatch('setOption', { name: 'logo', value: logo }) + store.dispatch('setOption', { name: 'registrationOpen', value: registrationOpen }) }) window.fetch('/static/terms-of-service.html') diff --git a/static/config.json b/static/config.json index 3b6d56c44a..195ee04690 100644 --- a/static/config.json +++ b/static/config.json @@ -2,5 +2,6 @@ "name": "Pleroma FE", "theme": "base16-pleroma-dark.css", "background": "/static/bg.jpg", - "logo": "/static/logo.png" + "logo": "/static/logo.png", + "registrationOpen": false }