diff options
Diffstat (limited to 'src/components')
5 files changed, 52 insertions, 1 deletions
diff --git a/src/components/interface_language_switcher/interface_language_switcher.vue b/src/components/interface_language_switcher/interface_language_switcher.vue new file mode 100644 index 00000000..4b541888 --- /dev/null +++ b/src/components/interface_language_switcher/interface_language_switcher.vue @@ -0,0 +1,38 @@ +<template> + <div> + <label for="interface-language-switcher" class='select'> + <select id="interface-language-switcher" v-model="language"> + <option v-for="(langCode, i) in languageCodes" :value="langCode"> + {{ languageNames[i] }} + </option> + </select> + <i class="icon-down-open"/> + </label> + </div> +</template> + +<script> + import languagesObject from '../../i18n/messages' + import ISO6391 from 'iso-639-1' + import _ from 'lodash' + + export default { + computed: { + languageCodes () { + return Object.keys(languagesObject) + }, + + languageNames () { + return _.map(this.languageCodes, ISO6391.getName) + }, + + language: { + get: function () { return this.$store.state.config.interfaceLanguage }, + set: function (val) { + this.$store.dispatch('setOption', { name: 'interfaceLanguage', value: val }) + this.$i18n.locale = val + } + } + } + } +</script> diff --git a/src/components/post_status_form/post_status_form.js b/src/components/post_status_form/post_status_form.js index ff3bb906..cbff7827 100644 --- a/src/components/post_status_form/post_status_form.js +++ b/src/components/post_status_form/post_status_form.js @@ -53,6 +53,7 @@ const PostStatusForm = { highlighted: 0, newStatus: { status: statusText, + nsfw: false, files: [], visibility: this.messageScope || this.$store.state.users.currentUser.default_scope }, @@ -204,6 +205,7 @@ const PostStatusForm = { status: newStatus.status, spoilerText: newStatus.spoilerText || null, visibility: newStatus.visibility, + sensitive: newStatus.nsfw, media: newStatus.files, store: this.$store, inReplyToStatusId: this.replyTo diff --git a/src/components/post_status_form/post_status_form.vue b/src/components/post_status_form/post_status_form.vue index 2b84758b..9f8b2661 100644 --- a/src/components/post_status_form/post_status_form.vue +++ b/src/components/post_status_form/post_status_form.vue @@ -75,6 +75,11 @@ </div> </div> </div> + <div class="upload_settings" v-if="newStatus.files.length > 0"> + <input type="checkbox" id="filesSensitive" v-model="newStatus.nsfw"> + <label for="filesSensitive" v-if="newStatus.nsfw">{{$t('post_status.attachments_sensitive')}}</label> + <label for="filesSensitive" v-else v-html="$t('post_status.attachments_not_sensitive')"></label> + </div> </form> </div> </template> diff --git a/src/components/settings/settings.js b/src/components/settings/settings.js index d5ca33cc..f8eaad00 100644 --- a/src/components/settings/settings.js +++ b/src/components/settings/settings.js @@ -1,5 +1,6 @@ /* eslint-env browser */ import StyleSwitcher from '../style_switcher/style_switcher.vue' +import InterfaceLanguageSwitcher from '../interface_language_switcher/interface_language_switcher.vue' import { filter, trim } from 'lodash' const settings = { @@ -28,7 +29,8 @@ const settings = { } }, components: { - StyleSwitcher + StyleSwitcher, + InterfaceLanguageSwitcher }, computed: { user () { diff --git a/src/components/settings/settings.vue b/src/components/settings/settings.vue index 9612876e..f500a1b0 100644 --- a/src/components/settings/settings.vue +++ b/src/components/settings/settings.vue @@ -84,6 +84,10 @@ </li> </ul> </div> + <div class="setting-item"> + <h2>{{ $t('settings.interfaceLanguage') }}</h2> + <interface-language-switcher /> + </div> </div> </div> </template> |
