diff --git a/front/src/components/auth/Login.vue b/front/src/components/auth/Login.vue index f84ad9295..2cf6d5f6d 100644 --- a/front/src/components/auth/Login.vue +++ b/front/src/components/auth/Login.vue @@ -32,6 +32,9 @@ > + + Create an account + diff --git a/front/src/components/auth/Signup.vue b/front/src/components/auth/Signup.vue new file mode 100644 index 000000000..13b723d20 --- /dev/null +++ b/front/src/components/auth/Signup.vue @@ -0,0 +1,137 @@ + + + + + + diff --git a/front/src/router/index.js b/front/src/router/index.js index ea8854bbe..c1d03e059 100644 --- a/front/src/router/index.js +++ b/front/src/router/index.js @@ -3,6 +3,7 @@ import Router from 'vue-router' import PageNotFound from '@/components/PageNotFound' import Home from '@/components/Home' import Login from '@/components/auth/Login' +import Signup from '@/components/auth/Signup' import Profile from '@/components/auth/Profile' import Settings from '@/components/auth/Settings' import Logout from '@/components/auth/Logout' @@ -38,6 +39,11 @@ export default new Router({ component: Login, props: (route) => ({ next: route.query.next || '/library' }) }, + { + path: '/signup', + name: 'signup', + component: Signup + }, { path: '/logout', name: 'logout', diff --git a/front/src/store/instance.js b/front/src/store/instance.js index a0071f096..dd20a8b1d 100644 --- a/front/src/store/instance.js +++ b/front/src/store/instance.js @@ -6,6 +6,11 @@ export default { namespaced: true, state: { settings: { + users: { + registration_enabled: { + value: true + } + }, raven: { front_enabled: { value: false @@ -23,7 +28,7 @@ export default { }, actions: { // Send a request to the login URL and save the returned JWT - fetchSettings ({commit}) { + fetchSettings ({commit}, {callback}) { return axios.get('instance/settings/').then(response => { logger.default.info('Successfully fetched instance settings') let sections = {} @@ -34,6 +39,9 @@ export default { sections[e.section][e.name] = e }) commit('settings', sections) + if (callback) { + callback() + } }, response => { logger.default.error('Error while fetching settings', response.data) })