From a026e5738d40043b5292d443f668bff600d6bb60 Mon Sep 17 00:00:00 2001 From: les Date: Wed, 11 Sep 2019 11:58:42 +0200 Subject: [PATCH] settings for user - enable federation for users --- locales/it.js | 5 ++- nuxt.config.js | 2 +- package.json | 1 + pages/settings.vue | 34 ++++++++++----- server/api/controller/user.js | 42 ++++++++++++------- server/api/index.js | 4 +- server/api/models/user.js | 4 ++ server/federation/users.js | 3 +- server/federation/webfinger.js | 3 +- .../20190910085948-user_settings.js | 27 ++++++++++++ 10 files changed, 91 insertions(+), 34 deletions(-) create mode 100644 server/migrations/20190910085948-user_settings.js diff --git a/locales/it.js b/locales/it.js index 8508bbe9..daff5794 100644 --- a/locales/it.js +++ b/locales/it.js @@ -49,9 +49,10 @@ export default { disable: 'Disabilita', me: 'Sei te', password_updated: 'Password modificata!', - username: 'Nickname', + username: 'Nomignolo', comments: 'nessun commento|un commento|{n} commenti', - activate_user: 'Confermato' + activate_user: 'Confermato', + displayname: 'Nome mostrato' }, login: { diff --git a/nuxt.config.js b/nuxt.config.js index f27ed32e..94ca7856 100644 --- a/nuxt.config.js +++ b/nuxt.config.js @@ -46,10 +46,10 @@ module.exports = { ** Nuxt.js modules */ modules: [ + ['nuxt-express-module', { expressPath: 'server/', routesPath: 'server/routes' }], // Doc: https://axios.nuxtjs.org/usage '@nuxtjs/axios', '@nuxtjs/auth', - ['nuxt-express-module', { expressPath: 'server/', routesPath: 'server/routes' }] ], /* ** Axios module configuration diff --git a/package.json b/package.json index 4fe1dae0..8aa36d7e 100644 --- a/package.json +++ b/package.json @@ -72,6 +72,7 @@ "sequelize-cli": "^5.5.1", "sharp": "^0.23.0", "sqlite3": "^4.1.0", + "url": "^0.11.0", "v-calendar": "^1.0.0-beta.14", "vue-awesome": "^3.5.3", "vue-clipboard2": "^0.3.1", diff --git a/pages/settings.vue b/pages/settings.vue index 8e77566a..e4766a3c 100644 --- a/pages/settings.vue +++ b/pages/settings.vue @@ -5,23 +5,27 @@ h5 {{$t('common.settings')}} hr - el-form(action='/api/user' method='PUT' @submit.native.prevent='change_password' inline label-width='200px') + el-form(action='/api/user' method='PUT' @submit.native.prevent='update_settings' inline label-width='200px') el-form-item(:label="$t('settings.change_password')") el-input(v-model='password' type='password') - el-button(slot='append' type='success' native-type='submit') {{$t('common.send')}} //- allow federation div(v-if='settings.enable_federation') el-form-item(:label="$t('admin.enable_federation')") - el-switch(name='reg' v-model='enable_federation') + el-switch(v-model='user.settings.enable_federation') - el-form-item(v-if='enable_federation' :label="$t('common.username')") - el-input(type='text' name='username' v-model='user.username' :suffix='"antani"' :readonly='user.username.length>0') - template(slot='suffix') @{{baseurl}} - //- el-button(slot='append') {{$t('common.save')}} - + div(v-if='user.settings.enable_federation') + el-form-item(:label="$t('common.username')") + el-input(v-if='user.username.length==0' type='text' name='username' v-model='user.username') + template(slot='suffix') @{{baseurl}} + span(v-else) {{user.username}}@{{baseurl}} + //- el-button(slot='append') {{$t('common.save')}} + + el-form-item(:label="$t('common.displayname')") + el-input(type='text' v-model='user.display_name') + el-button(type='success' native-type='submit') {{$t('common.save')}} el-divider {{$t('settings.danger_section')}} p {{$t('settings.remove_account')}} @@ -30,12 +34,13 @@