summaryrefslogtreecommitdiff
path: root/src/client/app
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/app')
-rw-r--r--src/client/app/auth/script.ts4
-rw-r--r--src/client/app/common/scripts/compose-notification.ts2
-rw-r--r--src/client/app/common/scripts/date-stringify.ts13
-rw-r--r--src/client/app/common/views/components/autocomplete.vue2
-rw-r--r--src/client/app/common/views/components/messaging-room.form.vue4
-rw-r--r--src/client/app/common/views/components/messaging-room.vue4
-rw-r--r--src/client/app/common/views/components/signin.vue2
-rw-r--r--src/client/app/common/views/components/ui/form/button.vue3
-rw-r--r--src/client/app/common/views/pages/follow.vue1
-rw-r--r--src/client/app/common/views/widgets/server.disk.vue2
-rw-r--r--src/client/app/desktop/api/update-avatar.ts16
-rw-r--r--src/client/app/desktop/api/update-banner.ts16
-rw-r--r--src/client/app/desktop/views/components/note-detail.vue3
-rw-r--r--src/client/app/desktop/views/components/note-preview.vue3
-rw-r--r--src/client/app/desktop/views/components/notes.note.sub.vue3
-rw-r--r--src/client/app/desktop/views/components/notes.note.vue5
-rw-r--r--src/client/app/desktop/views/components/notes.vue8
-rw-r--r--src/client/app/desktop/views/components/notifications.vue2
-rw-r--r--src/client/app/desktop/views/components/post-form.vue2
-rw-r--r--src/client/app/desktop/views/components/ui.header.vue2
-rw-r--r--src/client/app/desktop/views/components/user-lists-window.vue2
-rw-r--r--src/client/app/desktop/views/pages/deck/deck.notes.vue2
-rw-r--r--src/client/app/desktop/views/pages/deck/deck.notifications.vue2
-rw-r--r--src/client/app/desktop/views/pages/home-customize.vue4
-rw-r--r--src/client/app/desktop/views/pages/home.vue3
-rw-r--r--src/client/app/desktop/views/pages/share.vue4
-rw-r--r--src/client/app/desktop/views/pages/user/user.profile.vue4
-rw-r--r--src/client/app/desktop/views/pages/user/user.vue1
-rw-r--r--src/client/app/desktop/views/pages/welcome.vue10
-rw-r--r--src/client/app/desktop/views/widgets/post-form.vue2
-rw-r--r--src/client/app/dev/views/app.vue2
-rw-r--r--src/client/app/dev/views/index.vue2
-rw-r--r--src/client/app/dev/views/ui.vue2
-rw-r--r--src/client/app/init.ts2
-rw-r--r--src/client/app/mobile/views/components/notes.vue5
-rw-r--r--src/client/app/mobile/views/components/notifications.vue2
-rw-r--r--src/client/app/mobile/views/components/ui.header.vue6
-rw-r--r--src/client/app/mobile/views/pages/drive.vue9
-rw-r--r--src/client/app/mobile/views/pages/favorites.vue3
-rw-r--r--src/client/app/mobile/views/pages/followers.vue3
-rw-r--r--src/client/app/mobile/views/pages/following.vue3
-rw-r--r--src/client/app/mobile/views/pages/games/reversi.vue3
-rw-r--r--src/client/app/mobile/views/pages/home.vue3
-rw-r--r--src/client/app/mobile/views/pages/messaging-room.vue3
-rw-r--r--src/client/app/mobile/views/pages/messaging.vue3
-rw-r--r--src/client/app/mobile/views/pages/note.vue3
-rw-r--r--src/client/app/mobile/views/pages/notifications.vue2
-rw-r--r--src/client/app/mobile/views/pages/received-follow-requests.vue2
-rw-r--r--src/client/app/mobile/views/pages/search.vue5
-rw-r--r--src/client/app/mobile/views/pages/settings.vue2
-rw-r--r--src/client/app/mobile/views/pages/share.vue6
-rw-r--r--src/client/app/mobile/views/pages/user-lists.vue2
-rw-r--r--src/client/app/mobile/views/pages/user.vue3
-rw-r--r--src/client/app/mobile/views/pages/welcome.vue4
-rw-r--r--src/client/app/mobile/views/pages/widgets.vue7
55 files changed, 112 insertions, 106 deletions
diff --git a/src/client/app/auth/script.ts b/src/client/app/auth/script.ts
index bdfdf70be3..64ab6536db 100644
--- a/src/client/app/auth/script.ts
+++ b/src/client/app/auth/script.ts
@@ -8,14 +8,14 @@ import VueRouter from 'vue-router';
import './style.styl';
import init from '../init';
-
import Index from './views/index.vue';
+import * as config from '../config';
/**
* init
*/
init(launch => {
- document.title = '%i18n:common.name% | %i18n:common.application-authorization%';
+ document.title = `${config.name} | %i18n:common.application-authorization%`;
// Init router
const router = new VueRouter({
diff --git a/src/client/app/common/scripts/compose-notification.ts b/src/client/app/common/scripts/compose-notification.ts
index 4fb0610fd7..f42af94370 100644
--- a/src/client/app/common/scripts/compose-notification.ts
+++ b/src/client/app/common/scripts/compose-notification.ts
@@ -38,7 +38,7 @@ export default function(type, data): Notification {
switch (data.type) {
case 'mention':
return {
- title: '%i18n:common.notification.notified-by%'.split("{}")[0] + `${getUserName(data.user)}さんから:` + '%i18n:common.notification.notified-by%'.split("{}")[1],
+ title: '%i18n:common.notification.notified-by%'.split("{}")[0] + `${getUserName(data.user)}:` + '%i18n:common.notification.notified-by%'.split("{}")[1],
body: getNoteSummary(data),
icon: data.user.avatarUrl
};
diff --git a/src/client/app/common/scripts/date-stringify.ts b/src/client/app/common/scripts/date-stringify.ts
deleted file mode 100644
index 2b8e525567..0000000000
--- a/src/client/app/common/scripts/date-stringify.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-export default date => {
- if (typeof date == 'string') date = new Date(date);
- return (
- date.getFullYear() + '%i18n:common.date.full-year%' +
- (date.getMonth() + 1) + '%i18n:common.date.month%' +
- date.getDate() + '%i18n:common.date.day%' +
- ' ' +
- date.getHours() + '%i18n:common.date.hours%' +
- date.getMinutes() + '%i18n:common.date.minutes%' +
- ' ' +
- `(${['日', '月', '火', '水', '木', '金', '土'][date.getDay()]})`
- );
-};
diff --git a/src/client/app/common/views/components/autocomplete.vue b/src/client/app/common/views/components/autocomplete.vue
index cd6066877c..b274eaa0a0 100644
--- a/src/client/app/common/views/components/autocomplete.vue
+++ b/src/client/app/common/views/components/autocomplete.vue
@@ -132,7 +132,7 @@ export default Vue.extend({
this.users = users;
this.fetching = false;
} else {
- (this as any).api('users/search_by_username', {
+ (this as any).api('users/search', {
query: this.q,
limit: 30
}).then(users => {
diff --git a/src/client/app/common/views/components/messaging-room.form.vue b/src/client/app/common/views/components/messaging-room.form.vue
index b6ca902660..f183749fad 100644
--- a/src/client/app/common/views/components/messaging-room.form.vue
+++ b/src/client/app/common/views/components/messaging-room.form.vue
@@ -83,7 +83,7 @@ export default Vue.extend({
}
} else {
if (items[0].kind == 'file') {
- alert('メッセージに添付できるのはひとつのファイルのみです');
+ alert('%i18n:only-one-file-attached%');
}
}
},
@@ -105,7 +105,7 @@ export default Vue.extend({
return;
} else if (e.dataTransfer.files.length > 1) {
e.preventDefault();
- alert('メッセージに添付できるのはひとつのファイルのみです');
+ alert('%i18n:only-one-file-attached%');
return;
}
diff --git a/src/client/app/common/views/components/messaging-room.vue b/src/client/app/common/views/components/messaging-room.vue
index b2831d6928..30143b4f1d 100644
--- a/src/client/app/common/views/components/messaging-room.vue
+++ b/src/client/app/common/views/components/messaging-room.vue
@@ -61,7 +61,7 @@ export default Vue.extend({
const date = new Date(message.createdAt).getDate();
const month = new Date(message.createdAt).getMonth() + 1;
message._date = date;
- message._datetext = `${month}月 ${date}日`;
+ message._datetext = '%i18n:common.month-and-day%'.replace('{month}', month.toString()).replace('{day}', date.toString());
return message;
});
},
@@ -111,7 +111,7 @@ export default Vue.extend({
this.form.upload(e.dataTransfer.files[0]);
return;
} else if (e.dataTransfer.files.length > 1) {
- alert('メッセージに添付できるのはひとつのファイルのみです');
+ alert('%i18n:@only-one-file-attached%');
return;
}
diff --git a/src/client/app/common/views/components/signin.vue b/src/client/app/common/views/components/signin.vue
index 58241cef09..deaeeca6a7 100644
--- a/src/client/app/common/views/components/signin.vue
+++ b/src/client/app/common/views/components/signin.vue
@@ -12,7 +12,7 @@
</ui-input>
<ui-input v-if="user && user.twoFactorEnabled" v-model="token" type="number" required/>
<ui-button type="submit" :disabled="signing">{{ signing ? '%i18n:@signing-in%' : '%i18n:@signin%' }}</ui-button>
- <p style="margin: 8px 0;">または<a :href="`${apiUrl}/signin/twitter`">Twitterでログイン</a></p>
+ <p style="margin: 8px 0;">%i18n:@or%<a :href="`${apiUrl}/signin/twitter`">%i18n:@signin-with-twitter%</a></p>
</form>
</template>
diff --git a/src/client/app/common/views/components/ui/form/button.vue b/src/client/app/common/views/components/ui/form/button.vue
index 6e1475bc38..9c37b3118b 100644
--- a/src/client/app/common/views/components/ui/form/button.vue
+++ b/src/client/app/common/views/components/ui/form/button.vue
@@ -45,6 +45,9 @@ root(isDark)
color isDark ? #fff : #606266
transition 0.1s
+ *
+ pointer-events none
+
&:hover
&:focus
color $theme-color
diff --git a/src/client/app/common/views/pages/follow.vue b/src/client/app/common/views/pages/follow.vue
index e1b5b1f120..13d855d20a 100644
--- a/src/client/app/common/views/pages/follow.vue
+++ b/src/client/app/common/views/pages/follow.vue
@@ -71,7 +71,6 @@ export default Vue.extend({
this.user = user;
this.fetching = false;
Progress.done();
- document.title = getUserName(this.user) + ' | %i18n:common.name%';
});
},
diff --git a/src/client/app/common/views/widgets/server.disk.vue b/src/client/app/common/views/widgets/server.disk.vue
index 5c7e9678de..99ce624051 100644
--- a/src/client/app/common/views/widgets/server.disk.vue
+++ b/src/client/app/common/views/widgets/server.disk.vue
@@ -4,7 +4,7 @@
<div>
<p>%fa:R hdd%Storage</p>
<p>Total: {{ total | bytes(1) }}</p>
- <p>Available: {{ available | bytes(1) }}</p>
+ <p>Free: {{ available | bytes(1) }}</p>
<p>Used: {{ used | bytes(1) }}</p>
</div>
</div>
diff --git a/src/client/app/desktop/api/update-avatar.ts b/src/client/app/desktop/api/update-avatar.ts
index 887367a24e..83820f92bd 100644
--- a/src/client/app/desktop/api/update-avatar.ts
+++ b/src/client/app/desktop/api/update-avatar.ts
@@ -8,7 +8,7 @@ export default (os: OS) => (cb, file = null) => {
const w = os.new(CropWindow, {
image: file,
- title: 'アバターとして表示する部分を選択',
+ title: '%i18n:desktop.avatar-crop-title%',
aspectRatio: 1 / 1
});
@@ -18,11 +18,11 @@ export default (os: OS) => (cb, file = null) => {
data.append('file', blob, file.name + '.cropped.png');
os.api('drive/folders/find', {
- name: 'アイコン'
+ name: '%i18n:desktop.avatar%'
}).then(iconFolder => {
if (iconFolder.length === 0) {
os.api('drive/folders/create', {
- name: 'アイコン'
+ name: '%i18n:desktop.avatar%'
}).then(iconFolder => {
upload(data, iconFolder);
});
@@ -41,7 +41,7 @@ export default (os: OS) => (cb, file = null) => {
const upload = (data, folder) => {
const dialog = os.new(ProgressDialog, {
- title: '新しいアバターをアップロードしています'
+ title: '%i18n:desktop.uploading-avatar%'
});
document.body.appendChild(dialog.$el);
@@ -76,10 +76,10 @@ export default (os: OS) => (cb, file = null) => {
});
os.apis.dialog({
- title: '%fa:info-circle%アバターを更新しました',
- text: '新しいアバターが反映されるまで時間がかかる場合があります。',
+ title: '%fa:info-circle% %i18n:desktop.avatar-updated%',
+ text: null,
actions: [{
- text: 'わかった'
+ text: '%i18n:common.got-it%'
}]
});
@@ -92,7 +92,7 @@ export default (os: OS) => (cb, file = null) => {
} else {
os.apis.chooseDriveFile({
multiple: false,
- title: '%fa:image%アバターにする画像を選択'
+ title: '%fa:image% %i18n:desktop.choose-avatar%'
}).then(file => {
fileSelected(file);
});
diff --git a/src/client/app/desktop/api/update-banner.ts b/src/client/app/desktop/api/update-banner.ts
index 4e6dd4e2c7..33c4e306a2 100644
--- a/src/client/app/desktop/api/update-banner.ts
+++ b/src/client/app/desktop/api/update-banner.ts
@@ -8,7 +8,7 @@ export default (os: OS) => {
const cropImage = file => new Promise((resolve, reject) => {
const w = os.new(CropWindow, {
image: file,
- title: 'バナーとして表示する部分を選択',
+ title: '%i18n:desktop.banner-crop-title%',
aspectRatio: 16 / 9
});
@@ -18,11 +18,11 @@ export default (os: OS) => {
data.append('file', blob, file.name + '.cropped.png');
os.api('drive/folders/find', {
- name: 'バナー'
+ name: '%i18n:desktop.banner%'
}).then(bannerFolder => {
if (bannerFolder.length === 0) {
os.api('drive/folders/create', {
- name: 'バナー'
+ name: '%i18n:desktop.banner%'
}).then(iconFolder => {
resolve(upload(data, iconFolder));
});
@@ -43,7 +43,7 @@ export default (os: OS) => {
const upload = (data, folder) => new Promise((resolve, reject) => {
const dialog = os.new(ProgressDialog, {
- title: '新しいバナーをアップロードしています'
+ title: '%i18n:desktop.uploading-banner%'
});
document.body.appendChild(dialog.$el);
@@ -79,10 +79,10 @@ export default (os: OS) => {
});
os.apis.dialog({
- title: '%fa:info-circle%バナーを更新しました',
- text: '新しいバナーが反映されるまで時間がかかる場合があります。',
+ title: '%fa:info-circle% %i18n:desktop.banner-updated%',
+ text: null,
actions: [{
- text: 'わかった'
+ text: '%i18n:common.got-it%'
}]
});
@@ -95,7 +95,7 @@ export default (os: OS) => {
? Promise.resolve(file)
: os.apis.chooseDriveFile({
multiple: false,
- title: '%fa:image%バナーにする画像を選択'
+ title: '%fa:image% %i18n:desktop.choose-banner%'
});
return selectedFile
diff --git a/src/client/app/desktop/views/components/note-detail.vue b/src/client/app/desktop/views/components/note-detail.vue
index 36a5889220..b6980fae72 100644
--- a/src/client/app/desktop/views/components/note-detail.vue
+++ b/src/client/app/desktop/views/components/note-detail.vue
@@ -79,7 +79,6 @@
<script lang="ts">
import Vue from 'vue';
-import dateStringify from '../../../common/scripts/date-stringify';
import parse from '../../../../../mfm/parse';
import MkPostFormWindow from './post-form-window.vue';
@@ -129,7 +128,7 @@ export default Vue.extend({
: 0;
},
title(): string {
- return dateStringify(this.p.createdAt);
+ return new Date(this.p.createdAt).toLocaleString();
},
urls(): string[] {
if (this.p.text) {
diff --git a/src/client/app/desktop/views/components/note-preview.vue b/src/client/app/desktop/views/components/note-preview.vue
index 2a49557247..c723db98c0 100644
--- a/src/client/app/desktop/views/components/note-preview.vue
+++ b/src/client/app/desktop/views/components/note-preview.vue
@@ -12,7 +12,6 @@
<script lang="ts">
import Vue from 'vue';
-import dateStringify from '../../../common/scripts/date-stringify';
export default Vue.extend({
props: {
@@ -28,7 +27,7 @@ export default Vue.extend({
},
computed: {
title(): string {
- return dateStringify(this.note.createdAt);
+ return new Date(this.note.createdAt).toLocaleString();
}
}
});
diff --git a/src/client/app/desktop/views/components/notes.note.sub.vue b/src/client/app/desktop/views/components/notes.note.sub.vue
index a8186fb7e4..fc851e83e9 100644
--- a/src/client/app/desktop/views/components/notes.note.sub.vue
+++ b/src/client/app/desktop/views/components/notes.note.sub.vue
@@ -12,13 +12,12 @@
<script lang="ts">
import Vue from 'vue';
-import dateStringify from '../../../common/scripts/date-stringify';
export default Vue.extend({
props: ['note'],
computed: {
title(): string {
- return dateStringify(this.note.createdAt);
+ return new Date(this.note.createdAt).toLocaleString();
}
}
});
diff --git a/src/client/app/desktop/views/components/notes.note.vue b/src/client/app/desktop/views/components/notes.note.vue
index 3aa52f75f0..a98df104a3 100644
--- a/src/client/app/desktop/views/components/notes.note.vue
+++ b/src/client/app/desktop/views/components/notes.note.vue
@@ -18,7 +18,7 @@
<div class="body">
<p v-if="p.cw != null" class="cw">
<span class="text" v-if="p.cw != ''">{{ p.cw }}</span>
- <span class="toggle" @click="showContent = !showContent">{{ showContent ? '隠す' : 'もっと見る' }}</span>
+ <span class="toggle" @click="showContent = !showContent">{{ showContent ? '%i18n:@hide%' : '%i18n:@see-more%' }}</span>
</p>
<div class="content" v-show="p.cw == null || showContent">
<div class="text">
@@ -71,7 +71,6 @@
<script lang="ts">
import Vue from 'vue';
-import dateStringify from '../../../common/scripts/date-stringify';
import parse from '../../../../../mfm/parse';
import MkPostFormWindow from './post-form-window.vue';
@@ -128,7 +127,7 @@ export default Vue.extend({
},
title(): string {
- return dateStringify(this.p.createdAt);
+ return new Date(this.p.createdAt).toLocaleString();
},
urls(): string[] {
diff --git a/src/client/app/desktop/views/components/notes.vue b/src/client/app/desktop/views/components/notes.vue
index 0ec2f16dbc..02167ef85c 100644
--- a/src/client/app/desktop/views/components/notes.vue
+++ b/src/client/app/desktop/views/components/notes.vue
@@ -33,7 +33,7 @@
<script lang="ts">
import Vue from 'vue';
-import { url } from '../../../config';
+import * as config from '../../../config';
import getNoteSummary from '../../../../../misc/get-note-summary';
import XNote from './notes.note.vue';
@@ -69,7 +69,7 @@ export default Vue.extend({
const date = new Date(note.createdAt).getDate();
const month = new Date(note.createdAt).getMonth() + 1;
note._date = date;
- note._datetext = `${month}月 ${date}日`;
+ note._datetext = '%i18n:common.month-and-day%'.replace('{month}', month.toString()).replace('{day}', date.toString());
return note;
});
}
@@ -149,7 +149,7 @@ export default Vue.extend({
// サウンドを再生する
if (this.$store.state.device.enableSounds && !silent) {
- const sound = new Audio(`${url}/assets/post.mp3`);
+ const sound = new Audio(`${config.url}/assets/post.mp3`);
sound.volume = this.$store.state.device.soundVolume;
sound.play();
}
@@ -187,7 +187,7 @@ export default Vue.extend({
clearNotification() {
this.unreadCount = 0;
- document.title = '%i18n:common.name%';
+ document.title = config.name;
},
onVisibilitychange() {
diff --git a/src/client/app/desktop/views/components/notifications.vue b/src/client/app/desktop/views/components/notifications.vue
index b291e1f54a..bfe71903e4 100644
--- a/src/client/app/desktop/views/components/notifications.vue
+++ b/src/client/app/desktop/views/components/notifications.vue
@@ -130,7 +130,7 @@ export default Vue.extend({
const date = new Date(notification.createdAt).getDate();
const month = new Date(notification.createdAt).getMonth() + 1;
notification._date = date;
- notification._datetext = `${month}月 ${date}日`;
+ notification._datetext = '%i18n:common.month-and-day%'.replace('{month}', month.toString()).replace('{day}', date.toString());
return notification;
});
}
diff --git a/src/client/app/desktop/views/components/post-form.vue b/src/client/app/desktop/views/components/post-form.vue
index 9b8a0c0f18..334a457504 100644
--- a/src/client/app/desktop/views/components/post-form.vue
+++ b/src/client/app/desktop/views/components/post-form.vue
@@ -14,7 +14,7 @@
<b>%i18n:@recent-tags%:</b>
<a v-for="tag in recentHashtags.slice(0, 5)" @click="addTag(tag)" title="%@click-to-tagging%">#{{ tag }}</a>
</div>
- <input v-show="useCw" v-model="cw" placeholder="内容への注釈 (オプション)">
+ <input v-show="useCw" v-model="cw" placeholder="%i18n:@annotations%">
<textarea :class="{ with: (files.length != 0 || poll) }"
ref="text" v-model="text" :disabled="posting"
@keydown="onKeydown" @paste="onPaste" :placeholder="placeholder"
diff --git a/src/client/app/desktop/views/components/ui.header.vue b/src/client/app/desktop/views/components/ui.header.vue
index 1ed5c3523b..83df4b2fbc 100644
--- a/src/client/app/desktop/views/components/ui.header.vue
+++ b/src/client/app/desktop/views/components/ui.header.vue
@@ -4,7 +4,7 @@
<div class="main" ref="main">
<div class="backdrop"></div>
<div class="main">
- <p ref="welcomeback" v-if="$store.getters.isSignedIn">%i18n:@welcome-back%<b>{{ $store.state.i | userName }}</b>さん</p>
+ <p ref="welcomeback" v-if="$store.getters.isSignedIn">%i18n:@welcome-back%<b>{{ $store.state.i | userName }}</b>%i18n:@adjective%</p>
<div class="container" ref="mainContainer">
<div class="left">
<x-nav/>
diff --git a/src/client/app/desktop/views/components/user-lists-window.vue b/src/client/app/desktop/views/components/user-lists-window.vue
index 47648c287d..72ae9cf4e4 100644
--- a/src/client/app/desktop/views/components/user-lists-window.vue
+++ b/src/client/app/desktop/views/components/user-lists-window.vue
@@ -27,7 +27,7 @@ export default Vue.extend({
methods: {
add() {
(this as any).apis.input({
- title: 'リスト名',
+ title: '%i18n:@list-name%',
}).then(async title => {
const list = await (this as any).api('users/lists/create', {
title
diff --git a/src/client/app/desktop/views/pages/deck/deck.notes.vue b/src/client/app/desktop/views/pages/deck/deck.notes.vue
index a5ed45b64c..3578e17287 100644
--- a/src/client/app/desktop/views/pages/deck/deck.notes.vue
+++ b/src/client/app/desktop/views/pages/deck/deck.notes.vue
@@ -72,7 +72,7 @@ export default Vue.extend({
const date = new Date(note.createdAt).getDate();
const month = new Date(note.createdAt).getMonth() + 1;
note._date = date;
- note._datetext = `${month}月 ${date}日`;
+ note._datetext = '%i18n:common.month-and-day%'.replace('{month}', month.toString()).replace('{day}', date.toString());
return note;
});
}
diff --git a/src/client/app/desktop/views/pages/deck/deck.notifications.vue b/src/client/app/desktop/views/pages/deck/deck.notifications.vue
index 10c06b0ad2..fcb74b9140 100644
--- a/src/client/app/desktop/views/pages/deck/deck.notifications.vue
+++ b/src/client/app/desktop/views/pages/deck/deck.notifications.vue
@@ -51,7 +51,7 @@ export default Vue.extend({
const date = new Date(notification.createdAt).getDate();
const month = new Date(notification.createdAt).getMonth() + 1;
notification._date = date;
- notification._datetext = `${month}月 ${date}日`;
+ notification._datetext = '%i18n:common.month-and-day%'.replace('{month}', month.toString()).replace('{day}', date.toString());
return notification;
});
}
diff --git a/src/client/app/desktop/views/pages/home-customize.vue b/src/client/app/desktop/views/pages/home-customize.vue
index ffdcf39fe2..4318e89821 100644
--- a/src/client/app/desktop/views/pages/home-customize.vue
+++ b/src/client/app/desktop/views/pages/home-customize.vue
@@ -4,9 +4,11 @@
<script lang="ts">
import Vue from 'vue';
+import * as config from '../../../config';
+
export default Vue.extend({
mounted() {
- document.title = '%i18n:common.name% - %i18n:@title%';
+ document.title = `${config.name} - %i18n:@title%`;
}
});
</script>
diff --git a/src/client/app/desktop/views/pages/home.vue b/src/client/app/desktop/views/pages/home.vue
index 0c42e42bd2..3d3c24bfa4 100644
--- a/src/client/app/desktop/views/pages/home.vue
+++ b/src/client/app/desktop/views/pages/home.vue
@@ -7,6 +7,7 @@
<script lang="ts">
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
+import * as config from '../../../config';
export default Vue.extend({
props: {
@@ -16,7 +17,7 @@ export default Vue.extend({
}
},
mounted() {
- document.title = '%i18n:common.name%';
+ document.title = config.name;
Progress.start();
},
diff --git a/src/client/app/desktop/views/pages/share.vue b/src/client/app/desktop/views/pages/share.vue
index f5f5c4e184..4a7bdb14cd 100644
--- a/src/client/app/desktop/views/pages/share.vue
+++ b/src/client/app/desktop/views/pages/share.vue
@@ -1,6 +1,6 @@
<template>
<div class="pptjhabgjtt7kwskbfv4y3uml6fpuhmr">
- <h1>{{'%i18n:@share-with%'.split("{}")[0] + '%i18n:common.name%' + '%i18n:@share-with%'.split("{}")[1]}}</h1>
+ <h1>{{ '%i18n:@share-with%'.replace('{}', name) }}</h1>
<div>
<mk-signin v-if="!$store.getters.isSignedIn"/>
<mk-post-form v-else-if="!posted" :initial-text="text" :instant="true" @posted="posted = true"/>
@@ -12,10 +12,12 @@
<script lang="ts">
import Vue from 'vue';
+import * as config from '../../../config';
export default Vue.extend({
data() {
return {
+ name: config.name,
posted: false,
text: new URLSearchParams(location.search).get('text')
};
diff --git a/src/client/app/desktop/views/pages/user/user.profile.vue b/src/client/app/desktop/views/pages/user/user.profile.vue
index b74dbc7e25..efd5be4672 100644
--- a/src/client/app/desktop/views/pages/user/user.profile.vue
+++ b/src/client/app/desktop/views/pages/user/user.profile.vue
@@ -13,7 +13,7 @@
<span v-if="user.isMuted">%fa:eye% %i18n:@unmute%</span>
<span v-if="!user.isMuted">%fa:eye-slash% %i18n:@mute%</span>
</button>
- <button class="mute ui" @click="list">%fa:list% リストに追加</button>
+ <button class="mute ui" @click="list">%fa:list% %i18n:@push-to-a-list%</button>
</div>
</div>
</template>
@@ -76,7 +76,7 @@ export default Vue.extend({
});
(this as any).apis.dialog({
title: 'Done!',
- text: `${this.user.name}を${list.title}に追加しました。`
+ text: '%i18n:@list-pushed%'.replace('{user}', this.user.name).replace('{list}', list.title)
});
});
}
diff --git a/src/client/app/desktop/views/pages/user/user.vue b/src/client/app/desktop/views/pages/user/user.vue
index 1a83f81342..300fd68f06 100644
--- a/src/client/app/desktop/views/pages/user/user.vue
+++ b/src/client/app/desktop/views/pages/user/user.vue
@@ -68,7 +68,6 @@ export default Vue.extend({
this.user = user;
this.fetching = false;
Progress.done();
- document.title = getUserName(this.user) + ' | %i18n:common.name%';
});
},
diff --git a/src/client/app/desktop/views/pages/welcome.vue b/src/client/app/desktop/views/pages/welcome.vue
index 9543a55b9a..a01b44fc73 100644
--- a/src/client/app/desktop/views/pages/welcome.vue
+++ b/src/client/app/desktop/views/pages/welcome.vue
@@ -8,7 +8,7 @@
<div class="body" :style="{ backgroundImage: `url('${ welcomeBgUrl }')` }">
<div class="container">
<div class="info">
- <span>%i18n:common.name% <b>{{ host }}</b></span>
+ <span><b>{{ host }}</b></span>
<span class="stats" v-if="stats">
<span>%fa:user% {{ stats.originalUsersCount | number }}</span>
<span>%fa:pencil-alt% {{ stats.originalNotesCount | number }}</span>
@@ -16,9 +16,9 @@
</div>
<main>
<div class="about">
- <h1 v-if="name">{{ name }}</h1>
- <h1 v-else><img :src="$store.state.device.darkmode ? 'assets/title.dark.svg' : 'assets/title.light.svg'" alt="%i18n:common.name%"></h1>
- <p class="powerd-by" v-if="name">%i18n:@powered-by-misskey%</p>
+ <h1 v-if="name != 'Misskey'">{{ name }}</h1>
+ <h1 v-else><img :src="$store.state.device.darkmode ? 'assets/title.dark.svg' : 'assets/title.light.svg'" :alt="name"></h1>
+ <p class="powerd-by" v-if="name != 'Misskey'">%i18n:@powered-by-misskey%</p>
<p class="desc" v-html="description || '%i18n:common.about%'"></p>
<a ref="signup" @click="signup">📦 %i18n:@signup%</a>
</div>
@@ -32,7 +32,7 @@
<mk-nav class="nav"/>
</div>
<mk-forkit class="forkit"/>
- <img src="assets/title.dark.svg" alt="%i18n:common.name%">
+ <img src="assets/title.dark.svg" :alt="name">
</div>
<div class="tl">
<mk-welcome-timeline :max="20"/>
diff --git a/src/client/app/desktop/views/widgets/post-form.vue b/src/client/app/desktop/views/widgets/post-form.vue
index 618d19efc4..19a2790d95 100644
--- a/src/client/app/desktop/views/widgets/post-form.vue
+++ b/src/client/app/desktop/views/widgets/post-form.vue
@@ -55,7 +55,7 @@ export default define({
}).then(data => {
this.clear();
}).catch(err => {
- alert('失敗した');
+ alert('Something happened');
}).then(() => {
this.posting = false;
});
diff --git a/src/client/app/dev/views/app.vue b/src/client/app/dev/views/app.vue
index a35b032b73..54d99ec82a 100644
--- a/src/client/app/dev/views/app.vue
+++ b/src/client/app/dev/views/app.vue
@@ -1,6 +1,6 @@
<template>
<mk-ui>
- <p v-if="fetching">読み込み中</p>
+ <p v-if="fetching">%i18n:common.loading%</p>
<b-card v-if="!fetching" :header="app.name">
<b-form-group label="App Secret">
<b-input :value="app.secret" readonly/>
diff --git a/src/client/app/dev/views/index.vue b/src/client/app/dev/views/index.vue
index 3f572b3907..bb137481f4 100644
--- a/src/client/app/dev/views/index.vue
+++ b/src/client/app/dev/views/index.vue
@@ -1,6 +1,6 @@
<template>
<mk-ui>
- <b-button to="/apps" variant="primary">アプリの管理</b-button>
+ <b-button to="/apps" variant="primary">%i18n:@manage-apps%</b-button>
</mk-ui>
</template>
diff --git a/src/client/app/dev/views/ui.vue b/src/client/app/dev/views/ui.vue
index 0a1cdf829b..f1e001909f 100644
--- a/src/client/app/dev/views/ui.vue
+++ b/src/client/app/dev/views/ui.vue
@@ -1,7 +1,7 @@
<template>
<div>
<b-navbar toggleable="md" type="dark" variant="info">
- <b-navbar-brand>%i18n:common.name% Developers</b-navbar-brand>
+ <b-navbar-brand>Developers</b-navbar-brand>
<b-navbar-nav>
<b-nav-item to="/">Home</b-nav-item>
<b-nav-item to="/apps">Apps</b-nav-item>
diff --git a/src/client/app/init.ts b/src/client/app/init.ts
index 043f26d0bc..18f510ea24 100644
--- a/src/client/app/init.ts
+++ b/src/client/app/init.ts
@@ -55,7 +55,7 @@ Vue.mixin({
console.info(`Misskey v${version} (${codename})`);
console.info(
- '%cここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。',
+ '%c%i18n:common.do-not-copy-paste%',
'color: red; background: yellow; font-size: 16px; font-weight: bold;');
// BootTimer解除
diff --git a/src/client/app/mobile/views/components/notes.vue b/src/client/app/mobile/views/components/notes.vue
index cba8ef1804..aed372d9a2 100644
--- a/src/client/app/mobile/views/components/notes.vue
+++ b/src/client/app/mobile/views/components/notes.vue
@@ -38,6 +38,7 @@
<script lang="ts">
import Vue from 'vue';
import getNoteSummary from '../../../../../misc/get-note-summary';
+import * as config from '../../../config';
const displayLimit = 30;
@@ -66,7 +67,7 @@ export default Vue.extend({
const date = new Date(note.createdAt).getDate();
const month = new Date(note.createdAt).getMonth() + 1;
note._date = date;
- note._datetext = `${month}月 ${date}日`;
+ note._datetext = '%i18n:common.month-and-day%'.replace('{month}', month.toString()).replace('{day}', date.toString());
return note;
});
}
@@ -183,7 +184,7 @@ export default Vue.extend({
clearNotification() {
this.unreadCount = 0;
- document.title = '%i18n:common.name%';
+ document.title = config.name;
},
onVisibilitychange() {
diff --git a/src/client/app/mobile/views/components/notifications.vue b/src/client/app/mobile/views/components/notifications.vue
index fc220c252a..9f20c3fb22 100644
--- a/src/client/app/mobile/views/components/notifications.vue
+++ b/src/client/app/mobile/views/components/notifications.vue
@@ -42,7 +42,7 @@ export default Vue.extend({
const date = new Date(notification.createdAt).getDate();
const month = new Date(notification.createdAt).getMonth() + 1;
notification._date = date;
- notification._datetext = `${month}月 ${date}日`;
+ notification._datetext = '%i18n:common.month-and-day%'.replace('{month}', month.toString()).replace('{day}', date.toString());
return notification;
});
}
diff --git a/src/client/app/mobile/views/components/ui.header.vue b/src/client/app/mobile/views/components/ui.header.vue
index 794ec9a307..b87c6f1eb7 100644
--- a/src/client/app/mobile/views/components/ui.header.vue
+++ b/src/client/app/mobile/views/components/ui.header.vue
@@ -3,12 +3,12 @@
<mk-special-message/>
<div class="main" ref="main">
<div class="backdrop"></div>
- <p ref="welcomeback" v-if="$store.getters.isSignedIn">%i18n:@welcome-back%<b>{{ $store.state.i | userName }}</b>さん</p>
+ <p ref="welcomeback" v-if="$store.getters.isSignedIn">%i18n:@welcome-back%<b>{{ $store.state.i | userName }}</b>%i18n:@adjective%</p>
<div class="content" ref="mainContainer">
<button class="nav" @click="$parent.isDrawerOpening = true">%fa:bars%</button>
<template v-if="hasUnreadNotification || hasUnreadMessagingMessage || hasGameInvitation">%fa:circle%</template>
<h1>
- <slot>%i18n:common.name%</slot>
+ <slot>config.name</slot>
</h1>
<slot name="func"></slot>
</div>
@@ -20,11 +20,13 @@
<script lang="ts">
import Vue from 'vue';
import * as anime from 'animejs';
+import * as config from '../../../config';
export default Vue.extend({
props: ['func'],
data() {
return {
+ config,
hasGameInvitation: false,
connection: null,
connectionId: null
diff --git a/src/client/app/mobile/views/pages/drive.vue b/src/client/app/mobile/views/pages/drive.vue
index 9c635be05b..72427a4780 100644
--- a/src/client/app/mobile/views/pages/drive.vue
+++ b/src/client/app/mobile/views/pages/drive.vue
@@ -25,6 +25,7 @@
<script lang="ts">
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
+import * as config from '../../../config';
export default Vue.extend({
data() {
@@ -43,7 +44,7 @@ export default Vue.extend({
window.addEventListener('popstate', this.onPopState);
},
mounted() {
- document.title = '%i18n:common.name% Drive';
+ document.title = `${config.name} Drive`;
document.documentElement.style.background = '#fff';
},
beforeDestroy() {
@@ -63,7 +64,7 @@ export default Vue.extend({
(this.$refs as any).browser.openContextMenu();
},
onMoveRoot(silent) {
- const title = '%i18n:common.name% Drive';
+ const title = `${config.name} Drive`;
if (!silent) {
// Rewrite URL
@@ -76,7 +77,7 @@ export default Vue.extend({
this.folder = null;
},
onOpenFolder(folder, silent) {
- const title = folder.name + ' | %i18n:common.name% Drive';
+ const title = `${folder.name} | ${config.name} Drive`;
if (!silent) {
// Rewrite URL
@@ -89,7 +90,7 @@ export default Vue.extend({
this.folder = folder;
},
onOpenFile(file, silent) {
- const title = file.name + ' | %i18n:common.name% Drive';
+ const title = `${file.name} | ${config.name} Drive`;
if (!silent) {
// Rewrite URL
diff --git a/src/client/app/mobile/views/pages/favorites.vue b/src/client/app/mobile/views/pages/favorites.vue
index 88a84bd8a2..491890bb0e 100644
--- a/src/client/app/mobile/views/pages/favorites.vue
+++ b/src/client/app/mobile/views/pages/favorites.vue
@@ -14,6 +14,7 @@
<script lang="ts">
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
+import * as config from '../../../config';
export default Vue.extend({
data() {
@@ -28,7 +29,7 @@ export default Vue.extend({
this.fetch();
},
mounted() {
- document.title = '%i18n:common.name% | %i18n:@notifications%';
+ document.title = `${config.name} | %i18n:@notifications%`;
},
methods: {
fetch() {
diff --git a/src/client/app/mobile/views/pages/followers.vue b/src/client/app/mobile/views/pages/followers.vue
index 4956eb1b94..5bba534ba0 100644
--- a/src/client/app/mobile/views/pages/followers.vue
+++ b/src/client/app/mobile/views/pages/followers.vue
@@ -21,6 +21,7 @@ import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
import parseAcct from '../../../../../misc/acct/parse';
import getUserName from '../../../../../misc/get-user-name';
+import * as config from '../../../config';
export default Vue.extend({
data() {
@@ -49,7 +50,7 @@ export default Vue.extend({
this.user = user;
this.fetching = false;
- document.title = '%i18n:@followers-of%'.replace('{}', this.name) + ' | %i18n:common.name%';
+ document.title = '%i18n:@followers-of%'.replace('{}', this.name) + ' | ' + config.name;
});
},
onLoaded() {
diff --git a/src/client/app/mobile/views/pages/following.vue b/src/client/app/mobile/views/pages/following.vue
index fa6807a245..cdc009b768 100644
--- a/src/client/app/mobile/views/pages/following.vue
+++ b/src/client/app/mobile/views/pages/following.vue
@@ -20,6 +20,7 @@
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
import parseAcct from '../../../../../misc/acct/parse';
+import * as config from '../../../config';
export default Vue.extend({
data() {
@@ -48,7 +49,7 @@ export default Vue.extend({
this.user = user;
this.fetching = false;
- document.title = '%i18n:@followers-of%'.replace('{}', this.name) + ' | %i18n:common.name%';
+ document.title = '%i18n:@followers-of%'.replace('{}', this.name) + ' | ' + config.name;
});
},
onLoaded() {
diff --git a/src/client/app/mobile/views/pages/games/reversi.vue b/src/client/app/mobile/views/pages/games/reversi.vue
index e6e6325f8b..448c9b8d77 100644
--- a/src/client/app/mobile/views/pages/games/reversi.vue
+++ b/src/client/app/mobile/views/pages/games/reversi.vue
@@ -7,10 +7,11 @@
<script lang="ts">
import Vue from 'vue';
+import * as config from '../../../../config';
export default Vue.extend({
mounted() {
- document.title = '%i18n:common.name% %i18n:@reversi%';
+ document.title = `${config.name} %i18n:@reversi%`;
document.documentElement.style.background = '#fff';
},
methods: {
diff --git a/src/client/app/mobile/views/pages/home.vue b/src/client/app/mobile/views/pages/home.vue
index 7b14c7ee98..c1ed97ac13 100644
--- a/src/client/app/mobile/views/pages/home.vue
+++ b/src/client/app/mobile/views/pages/home.vue
@@ -49,6 +49,7 @@
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
import XTl from './home.timeline.vue';
+import * as config from '../../../config';
export default Vue.extend({
components: {
@@ -96,7 +97,7 @@ export default Vue.extend({
},
mounted() {
- document.title = '%i18n:common.name%';
+ document.title = config.name;
Progress.start();
diff --git a/src/client/app/mobile/views/pages/messaging-room.vue b/src/client/app/mobile/views/pages/messaging-room.vue
index 24ffc658a3..e2016fc82a 100644
--- a/src/client/app/mobile/views/pages/messaging-room.vue
+++ b/src/client/app/mobile/views/pages/messaging-room.vue
@@ -11,6 +11,7 @@
<script lang="ts">
import Vue from 'vue';
import parseAcct from '../../../../../misc/acct/parse';
+import * as config from '../../../config';
export default Vue.extend({
data() {
@@ -47,7 +48,7 @@ export default Vue.extend({
this.user = user;
this.fetching = false;
- document.title = `%i18n:@messaging%: ${Vue.filter('userName')(this.user)} | %i18n:common.name%`;
+ document.title = `%i18n:@messaging%: ${Vue.filter('userName')(this.user)} | ${config.name}`;
});
}
}
diff --git a/src/client/app/mobile/views/pages/messaging.vue b/src/client/app/mobile/views/pages/messaging.vue
index b5a4f405fb..9f2beb860c 100644
--- a/src/client/app/mobile/views/pages/messaging.vue
+++ b/src/client/app/mobile/views/pages/messaging.vue
@@ -8,10 +8,11 @@
<script lang="ts">
import Vue from 'vue';
import getAcct from '../../../../../misc/acct/render';
+import * as config from '../../../config';
export default Vue.extend({
mounted() {
- document.title = '%i18n:common.name% %i18n:@messaging%';
+ document.title = `${config.name} %i18n:@messaging%`;
},
methods: {
navigate(user) {
diff --git a/src/client/app/mobile/views/pages/note.vue b/src/client/app/mobile/views/pages/note.vue
index 64d46f051b..8b1095c509 100644
--- a/src/client/app/mobile/views/pages/note.vue
+++ b/src/client/app/mobile/views/pages/note.vue
@@ -16,6 +16,7 @@
<script lang="ts">
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
+import * as config from '../../../config';
export default Vue.extend({
data() {
@@ -31,7 +32,7 @@ export default Vue.extend({
this.fetch();
},
mounted() {
- document.title = '%i18n:common.name%';
+ document.title = config.name;
},
methods: {
fetch() {
diff --git a/src/client/app/mobile/views/pages/notifications.vue b/src/client/app/mobile/views/pages/notifications.vue
index 3688721613..4d3c8ee534 100644
--- a/src/client/app/mobile/views/pages/notifications.vue
+++ b/src/client/app/mobile/views/pages/notifications.vue
@@ -15,7 +15,7 @@ import Progress from '../../../common/scripts/loading';
export default Vue.extend({
mounted() {
- document.title = '%i18n:common.name% | %i18n:@notifications%';
+ document.title = '%i18n:@notifications%';
Progress.start();
},
diff --git a/src/client/app/mobile/views/pages/received-follow-requests.vue b/src/client/app/mobile/views/pages/received-follow-requests.vue
index fff2fdea56..77938c3d60 100644
--- a/src/client/app/mobile/views/pages/received-follow-requests.vue
+++ b/src/client/app/mobile/views/pages/received-follow-requests.vue
@@ -25,7 +25,7 @@ export default Vue.extend({
};
},
mounted() {
- document.title = '%i18n:common.name% | %i18n:@title%';
+ document.title = '%i18n:@title%';
Progress.start();
diff --git a/src/client/app/mobile/views/pages/search.vue b/src/client/app/mobile/views/pages/search.vue
index 7801068c1a..0b37a3c7bd 100644
--- a/src/client/app/mobile/views/pages/search.vue
+++ b/src/client/app/mobile/views/pages/search.vue
@@ -3,7 +3,7 @@
<span slot="header">%fa:search% {{ q }}</span>
<main>
- <p v-if="!fetching && empty">%fa:search%「{{ q }}」に関する投稿は見つかりませんでした。</p>
+ <p :class="$style.empty" v-if="!fetching && empty">%fa:search% {{ '%i18n:not-found%'.split('{}')[0] }}{{ q }}{{ '%i18n:not-found%'.split('{}')[1] }}</p>
<mk-notes ref="timeline" :more="existMore ? more : null"/>
</main>
</mk-ui>
@@ -12,6 +12,7 @@
<script lang="ts">
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
+import * as config from '../../../config';
const limit = 20;
@@ -34,7 +35,7 @@ export default Vue.extend({
}
},
mounted() {
- document.title = `%i18n:@search%: ${this.q} | %i18n:common.name%`;
+ document.title = `%i18n:@search%: ${this.q} | ${config.name}`;
this.fetch();
},
diff --git a/src/client/app/mobile/views/pages/settings.vue b/src/client/app/mobile/views/pages/settings.vue
index 63fca64ab1..f74b734b6e 100644
--- a/src/client/app/mobile/views/pages/settings.vue
+++ b/src/client/app/mobile/views/pages/settings.vue
@@ -143,7 +143,7 @@ export default Vue.extend({
},
mounted() {
- document.title = '%i18n:common.name% | %i18n:@settings%';
+ document.title = '%i18n:@settings%';
},
methods: {
diff --git a/src/client/app/mobile/views/pages/share.vue b/src/client/app/mobile/views/pages/share.vue
index 3e33e32732..dcb55e6702 100644
--- a/src/client/app/mobile/views/pages/share.vue
+++ b/src/client/app/mobile/views/pages/share.vue
@@ -1,21 +1,23 @@
<template>
<div class="azibmfpleajagva420swmu4c3r7ni7iw">
- <h1>{{'%i18n:@share-with%'.split("{}")[0] + '%i18n:common.name%' + '%i18n:@share-with%'.split("{}")[1]}}</h1>
+ <h1>{{ '%i18n:@share-with%'.replace('{}', name) }}</h1>
<div>
<mk-signin v-if="!$store.getters.isSignedIn"/>
<mk-post-form v-else-if="!posted" :initial-text="text" :instant="true" @posted="posted = true"/>
<p v-if="posted" class="posted">%fa:check%</p>
</div>
- <ui-button class="close" v-if="posted" @click="close">閉じる</ui-button>
+ <ui-button class="close" v-if="posted" @click="close">%i18n:common.close%</ui-button>
</div>
</template>
<script lang="ts">
import Vue from 'vue';
+import * as config from '../../../config';
export default Vue.extend({
data() {
return {
+ name: config.name,
posted: false,
text: new URLSearchParams(location.search).get('text')
};
diff --git a/src/client/app/mobile/views/pages/user-lists.vue b/src/client/app/mobile/views/pages/user-lists.vue
index 1cce3e9bdd..abd04c1496 100644
--- a/src/client/app/mobile/views/pages/user-lists.vue
+++ b/src/client/app/mobile/views/pages/user-lists.vue
@@ -23,7 +23,7 @@ export default Vue.extend({
};
},
mounted() {
- document.title = '%i18n:common.name% | %i18n:@title%';
+ document.title = '%i18n:@title%';
Progress.start();
diff --git a/src/client/app/mobile/views/pages/user.vue b/src/client/app/mobile/views/pages/user.vue
index d016345717..11ca1caebf 100644
--- a/src/client/app/mobile/views/pages/user.vue
+++ b/src/client/app/mobile/views/pages/user.vue
@@ -67,6 +67,7 @@ import * as age from 's-age';
import parseAcct from '../../../../../misc/acct/parse';
import Progress from '../../../common/scripts/loading';
import XHome from './user/home.vue';
+import * as config from '../../../config';
export default Vue.extend({
components: {
@@ -106,7 +107,7 @@ export default Vue.extend({
this.fetching = false;
Progress.done();
- document.title = Vue.filter('userName')(this.user) + ' | %i18n:common.name%';
+ document.title = Vue.filter('userName')(this.user) + ' | ' + config.name;
});
}
}
diff --git a/src/client/app/mobile/views/pages/welcome.vue b/src/client/app/mobile/views/pages/welcome.vue
index acc8e2c490..f8a7ff1c80 100644
--- a/src/client/app/mobile/views/pages/welcome.vue
+++ b/src/client/app/mobile/views/pages/welcome.vue
@@ -1,10 +1,10 @@
<template>
<div class="welcome">
<div>
- <img :src="$store.state.device.darkmode ? 'assets/title.dark.svg' : 'assets/title.light.svg'" alt="%i18n:common.name%">
+ <img :src="$store.state.device.darkmode ? 'assets/title.dark.svg' : 'assets/title.light.svg'" :alt="name">
<p class="host">{{ host }}</p>
<div class="about">
- <h2>{{ name || 'unidentified' }}</h2>
+ <h2>{{ name }}</h2>
<p v-html="description || '%i18n:common.about%'"></p>
<router-link class="signup" to="/signup">%i18n:@signup%</router-link>
</div>
diff --git a/src/client/app/mobile/views/pages/widgets.vue b/src/client/app/mobile/views/pages/widgets.vue
index 4400132bf2..b90d710c67 100644
--- a/src/client/app/mobile/views/pages/widgets.vue
+++ b/src/client/app/mobile/views/pages/widgets.vue
@@ -24,8 +24,8 @@
<option value="nav">%i18n:common.widgets.nav%</option>
<option value="tips">%i18n:common.widgets.tips%</option>
</select>
- <button @click="addWidget">追加</button>
- <p><a @click="hint">カスタマイズのヒント</a></p>
+ <button @click="addWidget">%i18n:add-widget%</button>
+ <p><a @click="hint">%i18n:customization-tips%</a></p>
</header>
<x-draggable
:list="widgets"
@@ -53,6 +53,7 @@
import Vue from 'vue';
import * as XDraggable from 'vuedraggable';
import * as uuid from 'uuid';
+import * as config from '../../../config';
export default Vue.extend({
components: {
@@ -102,7 +103,7 @@ export default Vue.extend({
},
mounted() {
- document.title = '%i18n:common.name%';
+ document.title = config.name;
},
methods: {