the missing piece for invites system

This commit is contained in:
Henry Jameson 2018-08-05 10:01:38 +03:00
parent 32fd108e97
commit 9cebb00faa
5 changed files with 18 additions and 4 deletions

View File

@ -5,17 +5,23 @@ const registration = {
registering: false
}),
created () {
if (!this.$store.state.config.registrationOpen || !!this.$store.state.users.currentUser) {
if ((!this.$store.state.config.registrationOpen && !this.token) || !!this.$store.state.users.currentUser) {
this.$router.push('/main/all')
}
// Seems like this doesn't work at first page open for some reason
if (this.$store.state.config.registrationOpen && this.token) {
this.$router.push('/registration')
}
},
computed: {
termsofservice () { return this.$store.state.config.tos }
termsofservice () { return this.$store.state.config.tos },
token () { return this.$route.params.token }
},
methods: {
submit () {
this.registering = true
this.user.nickname = this.user.username
this.user.token = this.token
this.$store.state.api.backendInteractor.register(this.user).then(
(response) => {
if (response.ok) {

View File

@ -38,6 +38,10 @@
<input :disabled="registering" v-model='user.captcha' placeholder='Enter captcha' type='test' class='form-control' id='captcha'>
</div>
-->
<div class='form-group' v-if='token' >
<label for='token'>{{$t('registration.token')}}</label>
<input disabled='true' v-model='token' class='form-control' id='token' type='text'>
</div>
<div class='form-group'>
<button :disabled="registering" type='submit' class='btn btn-default'>{{$t('general.submit')}}</button>
</div>

View File

@ -354,7 +354,8 @@ const en = {
fullname: 'Display name',
email: 'Email',
bio: 'Bio',
password_confirm: 'Password confirmation'
password_confirm: 'Password confirmation',
token: 'Invite token'
},
post_status: {
posting: 'Posting',
@ -1643,7 +1644,8 @@ const ru = {
fullname: 'Отображаемое имя',
email: 'Email',
bio: 'Описание',
password_confirm: 'Подтверждение пароля'
password_confirm: 'Подтверждение пароля',
token: 'Код приглашения'
},
post_status: {
posting: 'Отправляется',

View File

@ -119,6 +119,7 @@ window.fetch('/static/config.json')
{ name: 'mentions', path: '/:username/mentions', component: Mentions },
{ name: 'settings', path: '/settings', component: Settings },
{ name: 'registration', path: '/registration', component: Registration },
{ name: 'registration', path: '/registration/:token', component: Registration },
{ name: 'friend-requests', path: '/friend-requests', component: FollowRequests },
{ name: 'user-settings', path: '/user-settings', component: UserSettings }
]

View File

@ -159,6 +159,7 @@ const updateProfile = ({credentials, params}) => {
// bio
// homepage
// location
// token
const register = (params) => {
const form = new FormData()