aboutsummaryrefslogtreecommitdiff
path: root/src/components
diff options
context:
space:
mode:
Diffstat (limited to 'src/components')
-rw-r--r--src/components/chat_panel/chat_panel.js (renamed from src/components/chat/chat.js)4
-rw-r--r--src/components/chat_panel/chat_panel.vue (renamed from src/components/chat/chat.vue)19
-rw-r--r--src/components/nav_panel/nav_panel.vue5
-rw-r--r--src/components/user_settings/user_settings.js31
-rw-r--r--src/components/user_settings/user_settings.vue17
5 files changed, 58 insertions, 18 deletions
diff --git a/src/components/chat/chat.js b/src/components/chat_panel/chat_panel.js
index ef326d4a..b146c5d9 100644
--- a/src/components/chat/chat.js
+++ b/src/components/chat_panel/chat_panel.js
@@ -1,4 +1,4 @@
-const chat = {
+const chatPanel = {
data () {
return {
currentMessage: '',
@@ -18,4 +18,4 @@ const chat = {
}
}
-export default chat
+export default chatPanel
diff --git a/src/components/chat/chat.vue b/src/components/chat_panel/chat_panel.vue
index 6c1e2c38..ec379db5 100644
--- a/src/components/chat/chat.vue
+++ b/src/components/chat_panel/chat_panel.vue
@@ -1,12 +1,12 @@
<template>
- <div class="chat-panel panel panel-default">
- <div class="panel-heading timeline-heading base02-background base04">
- <div class="title">
- {{$t('chat.title')}}
+ <div class="chat-panel">
+ <div class="panel panel-default base01-background">
+ <div class="panel-heading timeline-heading base02-background base04">
+ <div class="title">
+ {{$t('chat.title')}}
+ </div>
</div>
- </div>
- <div class="panel-body base01-background">
- <div class="chat-window">
+ <div class="chat-window" v-chat-scroll>
<div class="chat-message" v-for="message in messages" :key="message.id">
<span class="chat-avatar">
<img :src="message.author.avatar" />
@@ -26,12 +26,11 @@
</div>
</template>
-<script src="./chat.js"></script>
-
+<script src="./chat_panel.js"></script>
<style lang="scss">
.chat-window {
- max-height: 80vh;
+ max-height: 200px;
overflow-y: auto;
overflow-x: hidden;
}
diff --git a/src/components/nav_panel/nav_panel.vue b/src/components/nav_panel/nav_panel.vue
index ccc772a8..aea841e9 100644
--- a/src/components/nav_panel/nav_panel.vue
+++ b/src/components/nav_panel/nav_panel.vue
@@ -7,11 +7,6 @@
{{ $t("nav.timeline") }}
</router-link>
</li>
- <li v-if='chat && currentUser'>
- <router-link class="base00-background" to='/chat'>
- {{ $t("nav.chat") }}
- </router-link>
- </li>
<li v-if='currentUser'>
<router-link class="base00-background" :to="{ name: 'mentions', params: { username: currentUser.screen_name } }">
{{ $t("nav.mentions") }}
diff --git a/src/components/user_settings/user_settings.js b/src/components/user_settings/user_settings.js
index fd20a6ad..25ee1f35 100644
--- a/src/components/user_settings/user_settings.js
+++ b/src/components/user_settings/user_settings.js
@@ -5,7 +5,10 @@ const UserSettings = {
return {
newname: this.$store.state.users.currentUser.name,
newbio: this.$store.state.users.currentUser.description,
- uploading: [ false, false, false ],
+ followList: null,
+ followImportError: false,
+ followsImported: false,
+ uploading: [ false, false, false, false ],
previews: [ null, null, null ]
}
},
@@ -15,6 +18,9 @@ const UserSettings = {
computed: {
user () {
return this.$store.state.users.currentUser
+ },
+ pleromaBackend () {
+ return this.$store.state.config.pleromaBackend
}
},
methods: {
@@ -117,6 +123,29 @@ const UserSettings = {
}
this.uploading[2] = false
})
+ },
+ importFollows () {
+ this.uploading[3] = true
+ const followList = this.followList
+ this.$store.state.api.backendInteractor.followImport({params: followList})
+ .then((status) => {
+ if (status) {
+ this.followsImported = true
+ } else {
+ this.followImportError = true
+ }
+ this.uploading[3] = false
+ })
+ },
+ followListChange () {
+ // eslint-disable-next-line no-undef
+ let formData = new FormData()
+ formData.append('list', this.$refs.followlist.files[0])
+ this.followList = formData
+ },
+ dismissImported () {
+ this.followsImported = false
+ this.followImportError = false
}
}
}
diff --git a/src/components/user_settings/user_settings.vue b/src/components/user_settings/user_settings.vue
index 515fd253..da78cdc2 100644
--- a/src/components/user_settings/user_settings.vue
+++ b/src/components/user_settings/user_settings.vue
@@ -49,6 +49,23 @@
<i class="base09 icon-spin4 animate-spin uploading" v-if="uploading[2]"></i>
<button class="btn btn-default base05 base02-background" v-else-if="previews[2]" @click="submitBg">{{$t('general.submit')}}</button>
</div>
+ <div class="setting-item" v-if="pleromaBackend">
+ <h3>{{$t('settings.follow_import')}}</h3>
+ <p>{{$t('settings.import_followers_from_a_csv_file')}}</p>
+ <form v-model="followImportForm">
+ <input type="file" ref="followlist" v-on:change="followListChange"></input>
+ </form>
+ <i class="base09 icon-spin4 animate-spin uploading" v-if="uploading[3]"></i>
+ <button class="btn btn-default base05 base02-background" v-else @click="importFollows">{{$t('general.submit')}}</button>
+ <div v-if="followsImported">
+ <i class="icon-cross" @click="dismissImported"></i>
+ <p>{{$t('settings.follows_imported')}}</p>
+ </div>
+ <div v-else-if="followImportError">
+ <i class="icon-cross" @click="dismissImported"</i>
+ <p>{{$t('settings.follow_import_error')}}</p>
+ </div>
+ </div>
</div>
</div>
</template>