diff options
| author | かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com> | 2024-10-13 20:21:25 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-10-13 20:21:25 +0900 |
| commit | 45d42b8641585cbe582e4c2a95e03ef511df00be (patch) | |
| tree | c9c68a5aa21852022da175f558372bec065ad3e2 /packages/frontend/src/pages/admin/moderation.vue | |
| parent | :art: (diff) | |
| download | misskey-45d42b8641585cbe582e4c2a95e03ef511df00be.tar.gz misskey-45d42b8641585cbe582e4c2a95e03ef511df00be.tar.bz2 misskey-45d42b8641585cbe582e4c2a95e03ef511df00be.zip | |
feat: ユーザーの名前に禁止ワードを設定できるように (#14756)
* wip
* :art:
* Enhance: モデレーター以上は制限の影響を受けないように
* refactor
* better error handling
* fix
* Revert "better error handling"
This reverts commit 5670b29cfa18a3894d0c2abfe0e5ef862e3b9ffa.
* error handling
* エラーが出ないのを修正
* translation
* Update Changelog
* status code
* :v:
* モデレーター以上は影響ないことを明記
* :art:
* update changelog
* spdx
* Update update.ts
* refactor
* eliminate `screen name`
* remove untracked file
---------
Co-authored-by: KanariKanaru <93921745+kanarikanaru@users.noreply.github.com>
Diffstat (limited to 'packages/frontend/src/pages/admin/moderation.vue')
| -rw-r--r-- | packages/frontend/src/pages/admin/moderation.vue | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/packages/frontend/src/pages/admin/moderation.vue b/packages/frontend/src/pages/admin/moderation.vue index 04d23b1358..5d8a581b2e 100644 --- a/packages/frontend/src/pages/admin/moderation.vue +++ b/packages/frontend/src/pages/admin/moderation.vue @@ -58,6 +58,18 @@ SPDX-License-Identifier: AGPL-3.0-only </MkFolder> <MkFolder> + <template #icon><i class="ti ti-user-x"></i></template> + <template #label>{{ i18n.ts.prohibitedWordsForNameOfUser }}</template> + + <div class="_gaps"> + <MkTextarea v-model="prohibitedWordsForNameOfUser"> + <template #caption>{{ i18n.ts.prohibitedWordsForNameOfUserDescription }}<br>{{ i18n.ts.prohibitedWordsDescription2 }}</template> + </MkTextarea> + <MkButton primary @click="save_prohibitedWordsForNameOfUser">{{ i18n.ts.save }}</MkButton> + </div> + </MkFolder> + + <MkFolder> <template #icon><i class="ti ti-eye-off"></i></template> <template #label>{{ i18n.ts.hiddenTags }}</template> @@ -131,6 +143,7 @@ const enableRegistration = ref<boolean>(false); const emailRequiredForSignup = ref<boolean>(false); const sensitiveWords = ref<string>(''); const prohibitedWords = ref<string>(''); +const prohibitedWordsForNameOfUser = ref<string>(''); const hiddenTags = ref<string>(''); const preservedUsernames = ref<string>(''); const blockedHosts = ref<string>(''); @@ -143,10 +156,11 @@ async function init() { emailRequiredForSignup.value = meta.emailRequiredForSignup; sensitiveWords.value = meta.sensitiveWords.join('\n'); prohibitedWords.value = meta.prohibitedWords.join('\n'); + prohibitedWordsForNameOfUser.value = meta.prohibitedWordsForNameOfUser.join('\n'); hiddenTags.value = meta.hiddenTags.join('\n'); preservedUsernames.value = meta.preservedUsernames.join('\n'); blockedHosts.value = meta.blockedHosts.join('\n'); - silencedHosts.value = meta.silencedHosts.join('\n'); + silencedHosts.value = meta.silencedHosts?.join('\n') ?? ''; mediaSilencedHosts.value = meta.mediaSilencedHosts.join('\n'); } @@ -190,6 +204,14 @@ function save_prohibitedWords() { }); } +function save_prohibitedWordsForNameOfUser() { + os.apiWithDialog('admin/update-meta', { + prohibitedWordsForNameOfUser: prohibitedWordsForNameOfUser.value.split('\n'), + }).then(() => { + fetchInstance(true); + }); +} + function save_hiddenTags() { os.apiWithDialog('admin/update-meta', { hiddenTags: hiddenTags.value.split('\n'), |