diff options
| author | MeiMei <30769358+mei23@users.noreply.github.com> | 2019-02-05 03:01:36 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2019-02-05 03:01:36 +0900 |
| commit | f014b7ae0ece886ef0cff2366b9925e23b34ba6f (patch) | |
| tree | c35760467278da408348fcd459415af7a63e08e9 /src/misc | |
| parent | Refactor: Better type definition (diff) | |
| download | sharkey-f014b7ae0ece886ef0cff2366b9925e23b34ba6f.tar.gz sharkey-f014b7ae0ece886ef0cff2366b9925e23b34ba6f.tar.bz2 sharkey-f014b7ae0ece886ef0cff2366b9925e23b34ba6f.zip | |
アニメーションを自動再生しないオプション (#4131)
* Refactor
* settings
* Media Proxy
* Replace API response
Diffstat (limited to 'src/misc')
| -rw-r--r-- | src/misc/wrap-url.ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/misc/wrap-url.ts b/src/misc/wrap-url.ts new file mode 100644 index 0000000000..25fda4d96a --- /dev/null +++ b/src/misc/wrap-url.ts @@ -0,0 +1,20 @@ +import { URL } from 'url'; +import config from '../config'; + +/** + * avatar, thumbnail, custom-emoji 等のURLをクライアント設定等によって置き換える + */ +export default function(url: string, me: any) { + if (url == null) return url; + + // アニメーション再生無効 + if (me && me.clientSettings && me.clientSettings.doNotAutoplayAnimation) { + const u = new URL(url); + const dummy = `${u.host}${u.pathname}`; // 拡張子がないとキャッシュしてくれないCDNがあるので + let result = `${config.url}/proxy/${dummy}?url=${encodeURI(u.href)}`; + result += '&static=1'; + return result; + } + + return url; +} |