diff options
| author | tamaina <tamaina@hotmail.co.jp> | 2020-05-23 13:19:31 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-23 13:19:31 +0900 |
| commit | 3963ed8ff7488a0e2f7f3876461f909e6be08e25 (patch) | |
| tree | d019d1d294e8ca757479dc638f977ae10b5f44da /src/server/web/views | |
| parent | fix(i18n): Fix missing translation (diff) | |
| download | misskey-3963ed8ff7488a0e2f7f3876461f909e6be08e25.tar.gz misskey-3963ed8ff7488a0e2f7f3876461f909e6be08e25.tar.bz2 misskey-3963ed8ff7488a0e2f7f3876461f909e6be08e25.zip | |
feat(client): 翻訳をIndexedDBに保存・プッシュ通知を翻訳 (#6396)
* wip
* tabun ok
* better msg
* oops
* fix lint
* Update gulpfile.ts
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
* Update src/client/scripts/set-i18n-contexts.ts
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
* refactor
Co-authored-by: acid-chicken <root@acid-chicken.com>
* ✨
* wip
* fix lint
* たぶんおk
* fix flush
* Translate Notification
* remove console.log
* fix
* add notifications
* remove san
* wip
* ok
* :v:
* Update src/prelude/array.ts
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
* wip
* i18n refactor
* Update init.ts
* :v:
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
Diffstat (limited to 'src/server/web/views')
| -rw-r--r-- | src/server/web/views/flush.pug | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/src/server/web/views/flush.pug b/src/server/web/views/flush.pug index f279c23605..59fed1f15d 100644 --- a/src/server/web/views/flush.pug +++ b/src/server/web/views/flush.pug @@ -1,20 +1,38 @@ doctype html html + #msg script. - localStorage.removeItem('locale'); + const msg = document.getElementById('msg'); try { - navigator.serviceWorker.controller.postMessage('clear'); + localStorage.clear(); + message('localStorage cleared'); - navigator.serviceWorker.getRegistrations().then(registrations => { - return Promise.all(registrations.map(registration => registration.unregister())); - }).then(() => { - location = '/'; - }); + const delidb = indexedDB.deleteDatabase('MisskeyClient'); + delidb.onsuccess = () => message('indexedDB cleared'); + + if (navigator.serviceWorker.controller) { + navigator.serviceWorker.controller.postMessage('clear'); + navigator.serviceWorker.getRegistrations() + .then(registrations => { + return Promise.all(registrations.map(registration => registration.unregister())); + }) + .then(() => { + message('Success Flush! Please reopen Misskey.\n成功しました。Misskeyを開き直してください。'); + }) + .catch(e => { throw Error(e) }); + } else { + message('Success Flush! Please reopen Misskey.\n成功しました。Misskeyを開き直してください。'); + } } catch (e) { console.error(e); + message(`${e}¥n¥nFlush Failed. Please reopen Misskey.\n失敗しました。Misskeyを開き直してください。`); setTimeout(() => { location = '/'; }, 10000) } + + function message(text) { + msg.insertAdjacentHTML('beforeend', `<p>[${(new Date()).toString()}] ${text.replace(/¥n/g,'<br>')}</p>`) + } |