aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/components/settings/settings.vue4
-rw-r--r--src/components/user_card/user_card.vue4
-rw-r--r--src/i18n/oc.json42
-rw-r--r--src/services/api/api.service.js23
4 files changed, 59 insertions, 14 deletions
diff --git a/src/components/settings/settings.vue b/src/components/settings/settings.vue
index a2023a81..6890220f 100644
--- a/src/components/settings/settings.vue
+++ b/src/components/settings/settings.vue
@@ -42,9 +42,7 @@
</li>
<li>
<input type="checkbox" id="collapseMessageWithSubject" v-model="collapseMessageWithSubjectLocal">
- <label for="collapseMessageWithSubject">
- {{$t('settings.collapse_subject')}} {{$t('settings.instance_default', { value: collapseMessageWithSubjectDefault })}}
- </label>
+ <label for="collapseMessageWithSubject">{{$t('settings.collapse_subject')}} {{$t('settings.instance_default', { value: collapseMessageWithSubjectDefault })}}</label>
</li>
<li>
<input type="checkbox" id="streaming" v-model="streamingLocal">
diff --git a/src/components/user_card/user_card.vue b/src/components/user_card/user_card.vue
index b5c7fa24..e1d3ff57 100644
--- a/src/components/user_card/user_card.vue
+++ b/src/components/user_card/user_card.vue
@@ -11,7 +11,7 @@
<div :title="user.name" class='user-name' v-if="user.name_html" v-html="user.name_html"></div>
<div :title="user.name" class='user-name' v-else>{{user.name}}</div>
<router-link :to="{ name: 'user-settings' }" v-if="!isOtherUser">
- <i class="button-icon icon-pencil usersettings" :title="$t('tool_tip.user_settings')"></i>
+ <i class="button-icon icon-wrench usersettings" :title="$t('tool_tip.user_settings')"></i>
</router-link>
<a :href="user.statusnet_profile_url" target="_blank" v-if="isOtherUser && !user.is_local">
<i class="icon-link-ext usersettings"></i>
@@ -162,7 +162,7 @@
max-width: 100%;
max-height: 400px;
- .emoji {
+ &.emoji {
width: 32px;
height: 32px;
}
diff --git a/src/i18n/oc.json b/src/i18n/oc.json
index 9214799d..83bd97cf 100644
--- a/src/i18n/oc.json
+++ b/src/i18n/oc.json
@@ -20,7 +20,10 @@
"submit": "Mandar",
"more": "Mai",
"generic_error": "Una error s’es producha",
- "optional": "opcional"
+ "optional": "opcional",
+ "show_more": "Mostrar mai",
+ "show_less": "Mostrar mens",
+ "cancel": "Anullar"
},
"image_cropper": {
"crop_picture": "Talhar l’imatge",
@@ -78,7 +81,8 @@
},
"content_warning": "Avís de contengut (opcional)",
"default": "Escrivètz aquí vòstre estatut.",
- "direct_warning": "Aquesta publicacion serà pas que visibla pels utilizaires mencionats.",
+ "direct_warning_to_all": "Aquesta publicacion serà pas que visibla pels utilizaires mencionats.",
+ "direct_warning_to_first_only": "Aquesta publicacion serà pas que visibla pels utilizaires mencionats a la debuta del messatge.",
"posting": "Mandadís",
"scope": {
"direct": "Dirècte - Publicar pels utilizaires mencionats solament",
@@ -108,6 +112,9 @@
"password_confirmation_match": "deu èsser lo meteis senhal"
}
},
+ "selectable_list": {
+ "select_all": "O seleccionar tot"
+ },
"settings": {
"app_name": "Nom de l’aplicacion",
"attachmentRadius": "Pèças juntas",
@@ -213,8 +220,11 @@
"reply_visibility_self": "Mostrar pas que las responsas que me son destinadas",
"saving_err": "Error en enregistrant los paramètres",
"saving_ok": "Paramètres enregistrats",
- "scope_copy": "Copiar lo nivèl de confidencialitat per las responsas (Totjorn aissí pels Messatges Dirèctes)",
+ "search_user_to_block": "Cercatz qual volètz blocar",
+ "search_user_to_mute": "Cercatz qual volètz rescondre",
"security_tab": "Seguretat",
+ "scope_copy": "Copiar lo nivèl de confidencialitat per las responsas (Totjorn aissí pels Messatges Dirèctes)",
+ "minimal_scopes_mode": "Minimizar lo nombre d’opcions per publicacion",
"set_new_avatar": "Definir un nòu avatar",
"set_new_profile_background": "Definir un nòu fons de perfil",
"set_new_profile_banner": "Definir una nòva bandièra de perfil",
@@ -349,6 +359,11 @@
"checkbox": "Ai legit los tèrmes e condicions d’utilizacion",
"link": "un pichon ligam simpatic"
}
+ },
+ "version": {
+ "title": "Version",
+ "backend_version": "Version Backend",
+ "frontend_version": "Version Frontend"
}
},
"timeline": {
@@ -394,7 +409,26 @@
"block_progress": "Blocatge...",
"unmute": "Tornar mostrar",
"unmute_progress": "Afichatge...",
- "mute_progress": "A amagar..."
+ "mute_progress": "A amagar...",
+ "admin_menu": {
+ "moderation": "Moderacion",
+ "grant_admin": "Passar Admin",
+ "revoke_admin": "Revocar Admin",
+ "grant_moderator": "Passar Moderator",
+ "revoke_moderator": "Revocar Moderator",
+ "activate_account": "Activar lo compte",
+ "deactivate_account": "Desactivar lo compte",
+ "delete_account": "Suprimir lo compte",
+ "force_nsfw": "Marcar totas las publicacions coma sensiblas",
+ "strip_media": "Tirar los mèdias de las publicacions",
+ "force_unlisted": "Forçar las publicacions en pas-listadas",
+ "sandbox": "Forçar las publicacions en seguidors solament",
+ "disable_remote_subscription": "Desactivar lo seguiment d’utilizaire d’instàncias alonhadas",
+ "disable_any_subscription": "Desactivar tot seguiment",
+ "quarantine": "Defendre la federacion de las publicacions de l’utilizaire",
+ "delete_user": "Suprimir l’utilizaire",
+ "delete_user_confirmation": "Volètz vertadièrament far aquò ? Aquesta accion se pòt pas anullar."
+ }
},
"user_profile": {
"timeline_title": "Flux utilizaire",
diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js
index 2dd52cb5..6b255e9f 100644
--- a/src/services/api/api.service.js
+++ b/src/services/api/api.service.js
@@ -50,7 +50,7 @@ const MASTODON_UNMUTE_USER_URL = id => `/api/v1/accounts/${id}/unmute`
const MASTODON_POST_STATUS_URL = '/api/v1/statuses'
const MASTODON_MEDIA_UPLOAD_URL = '/api/v1/media'
-import { each, map } from 'lodash'
+import { each, map, concat, last } from 'lodash'
import { parseStatus, parseUser, parseNotification, parseAttachment } from '../entity_normalizer/entity_normalizer.service.js'
import 'whatwg-fetch'
import { StatusCodeError } from '../errors/errors'
@@ -294,10 +294,23 @@ const fetchFriends = ({id, maxId, sinceId, limit = 20, credentials}) => {
}
const exportFriends = ({id, credentials}) => {
- let url = MASTODON_FOLLOWING_URL(id) + `?all=true`
- return fetch(url, { headers: authHeaders(credentials) })
- .then((data) => data.json())
- .then((data) => data.map(parseUser))
+ return new Promise(async (resolve, reject) => {
+ try {
+ let friends = []
+ let more = true
+ while (more) {
+ const maxId = friends.length > 0 ? last(friends).id : undefined
+ const users = await fetchFriends({id, maxId, credentials})
+ friends = concat(friends, users)
+ if (users.length === 0) {
+ more = false
+ }
+ }
+ resolve(friends)
+ } catch (err) {
+ reject(err)
+ }
+ })
}
const fetchFollowers = ({id, maxId, sinceId, limit = 20, credentials}) => {