diff options
| author | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-05-09 17:44:35 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-05-09 17:44:35 +0900 |
| commit | ebf291084f9490f0345a488592e2b4cd2ffb9d91 (patch) | |
| tree | 243df153ec60c16e495f344e9643bf0fc7668230 /packages/frontend/src | |
| parent | Feat: No websocket mode (#15851) (diff) | |
| download | misskey-ebf291084f9490f0345a488592e2b4cd2ffb9d91.tar.gz misskey-ebf291084f9490f0345a488592e2b4cd2ffb9d91.tar.bz2 misskey-ebf291084f9490f0345a488592e2b4cd2ffb9d91.zip | |
Feat: UGCの公開範囲設定機能 (#15938)
* wip
* Update CHANGELOG.md
* wip
* wip
* Update show.ts
Diffstat (limited to 'packages/frontend/src')
| -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 2157b4ca14..819f229c10 100644 --- a/packages/frontend/src/pages/admin/moderation.vue +++ b/packages/frontend/src/pages/admin/moderation.vue @@ -17,9 +17,20 @@ SPDX-License-Identifier: AGPL-3.0-only </MkSwitch> <MkSwitch v-model="emailRequiredForSignup" @change="onChange_emailRequiredForSignup"> - <template #label>{{ i18n.ts.emailRequiredForSignup }}</template> + <template #label>{{ i18n.ts.emailRequiredForSignup }} ({{ i18n.ts.recommended }})</template> </MkSwitch> + <MkSelect v-model="ugcVisibilityForVisitor" @update:modelValue="onChange_ugcVisibilityForVisitor"> + <template #label>{{ i18n.ts._serverSettings.userGeneratedContentsVisibilityForVisitor }}</template> + <option value="all">{{ i18n.ts._serverSettings._userGeneratedContentsVisibilityForVisitor.all }}</option> + <option value="local">{{ i18n.ts._serverSettings._userGeneratedContentsVisibilityForVisitor.localOnly }} ({{ i18n.ts.recommended }})</option> + <option value="none">{{ i18n.ts._serverSettings._userGeneratedContentsVisibilityForVisitor.none }}</option> + <template #caption> + <div>{{ i18n.ts._serverSettings.userGeneratedContentsVisibilityForVisitor_description }}</div> + <div><i class="ti ti-alert-triangle" style="color: var(--MI_THEME-warn);"></i> {{ i18n.ts._serverSettings.userGeneratedContentsVisibilityForVisitor_description2 }}</div> + </template> + </MkSelect> + <FormLink to="/admin/server-rules">{{ i18n.ts.serverRules }}</FormLink> <MkFolder> @@ -137,9 +148,11 @@ import { definePage } from '@/page.js'; import MkButton from '@/components/MkButton.vue'; import FormLink from '@/components/form/link.vue'; import MkFolder from '@/components/MkFolder.vue'; +import MkSelect from '@/components/MkSelect.vue'; const enableRegistration = ref<boolean>(false); const emailRequiredForSignup = ref<boolean>(false); +const ugcVisibilityForVisitor = ref<string>('all'); const sensitiveWords = ref<string>(''); const prohibitedWords = ref<string>(''); const prohibitedWordsForNameOfUser = ref<string>(''); @@ -153,6 +166,7 @@ async function init() { const meta = await misskeyApi('admin/meta'); enableRegistration.value = !meta.disableRegistration; emailRequiredForSignup.value = meta.emailRequiredForSignup; + ugcVisibilityForVisitor.value = meta.ugcVisibilityForVisitor; sensitiveWords.value = meta.sensitiveWords.join('\n'); prohibitedWords.value = meta.prohibitedWords.join('\n'); prohibitedWordsForNameOfUser.value = meta.prohibitedWordsForNameOfUser.join('\n'); @@ -189,6 +203,14 @@ function onChange_emailRequiredForSignup(value: boolean) { }); } +function onChange_ugcVisibilityForVisitor(value: string) { + os.apiWithDialog('admin/update-meta', { + ugcVisibilityForVisitor: value, + }).then(() => { + fetchInstance(true); + }); +} + function save_preservedUsernames() { os.apiWithDialog('admin/update-meta', { preservedUsernames: preservedUsernames.value.split('\n'), |