mirror of
https://codeberg.org/yeentown/barkey
synced 2024-11-25 11:45:12 +00:00
enhance(frontend): tweak MkSignupDialog.rules.vue
This commit is contained in:
parent
5e53b41f2d
commit
1e40088d98
3 changed files with 58 additions and 6 deletions
3
locales/index.d.ts
vendored
3
locales/index.d.ts
vendored
|
@ -1094,6 +1094,9 @@ export interface Locale {
|
||||||
"unused": string;
|
"unused": string;
|
||||||
"used": string;
|
"used": string;
|
||||||
"expired": string;
|
"expired": string;
|
||||||
|
"doYouAgree": string;
|
||||||
|
"beSureToReadThisAsItIsImportant": string;
|
||||||
|
"iHaveReadXCarefullyAndAgree": string;
|
||||||
"_initialAccountSetting": {
|
"_initialAccountSetting": {
|
||||||
"accountCreated": string;
|
"accountCreated": string;
|
||||||
"letsStartAccountSetup": string;
|
"letsStartAccountSetup": string;
|
||||||
|
|
|
@ -1042,7 +1042,7 @@ vertical: "縦"
|
||||||
horizontal: "横"
|
horizontal: "横"
|
||||||
position: "位置"
|
position: "位置"
|
||||||
serverRules: "サーバールール"
|
serverRules: "サーバールール"
|
||||||
pleaseConfirmBelowBeforeSignup: "このサーバーに登録する前に、以下を確認してください。"
|
pleaseConfirmBelowBeforeSignup: "このサーバーに登録するには、以下の内容を確認し同意する必要があります。"
|
||||||
pleaseAgreeAllToContinue: "続けるには、全ての「同意する」にチェックが入っている必要があります。"
|
pleaseAgreeAllToContinue: "続けるには、全ての「同意する」にチェックが入っている必要があります。"
|
||||||
continue: "続ける"
|
continue: "続ける"
|
||||||
preservedUsernames: "予約ユーザー名"
|
preservedUsernames: "予約ユーザー名"
|
||||||
|
@ -1091,6 +1091,9 @@ usedAt: "使用日時"
|
||||||
unused: "未使用"
|
unused: "未使用"
|
||||||
used: "使用済み"
|
used: "使用済み"
|
||||||
expired: "期限切れ"
|
expired: "期限切れ"
|
||||||
|
doYouAgree: "同意しますか?"
|
||||||
|
beSureToReadThisAsItIsImportant: "重要ですので必ずお読みください。"
|
||||||
|
iHaveReadXCarefullyAndAgree: "「{x}」の内容をよく読み、同意します。"
|
||||||
|
|
||||||
_initialAccountSetting:
|
_initialAccountSetting:
|
||||||
accountCreated: "アカウントの作成が完了しました!"
|
accountCreated: "アカウントの作成が完了しました!"
|
||||||
|
|
|
@ -9,7 +9,10 @@
|
||||||
<MkInfo warn>{{ i18n.ts.invitationRequiredToRegister }}</MkInfo>
|
<MkInfo warn>{{ i18n.ts.invitationRequiredToRegister }}</MkInfo>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="text-align: center;">{{ i18n.ts.pleaseConfirmBelowBeforeSignup }}</div>
|
<div style="text-align: center;">
|
||||||
|
<div>{{ i18n.ts.pleaseConfirmBelowBeforeSignup }}</div>
|
||||||
|
<div style="font-weight: bold; margin-top: 0.5em;">{{ i18n.ts.beSureToReadThisAsItIsImportant }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<MkFolder v-if="availableServerRules" :defaultOpen="true">
|
<MkFolder v-if="availableServerRules" :defaultOpen="true">
|
||||||
<template #label>{{ i18n.ts.serverRules }}</template>
|
<template #label>{{ i18n.ts.serverRules }}</template>
|
||||||
|
@ -19,7 +22,7 @@
|
||||||
<li v-for="item in instance.serverRules" :class="$style.rule"><div :class="$style.ruleText" v-html="item"></div></li>
|
<li v-for="item in instance.serverRules" :class="$style.rule"><div :class="$style.ruleText" v-html="item"></div></li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<MkSwitch v-model="agreeServerRules" style="margin-top: 16px;">{{ i18n.ts.agree }}</MkSwitch>
|
<MkSwitch :modelValue="agreeServerRules" style="margin-top: 16px;" @update:modelValue="updateAgreeServerRules">{{ i18n.ts.agree }}</MkSwitch>
|
||||||
</MkFolder>
|
</MkFolder>
|
||||||
|
|
||||||
<MkFolder v-if="availableTos" :defaultOpen="true">
|
<MkFolder v-if="availableTos" :defaultOpen="true">
|
||||||
|
@ -28,7 +31,7 @@
|
||||||
|
|
||||||
<a :href="instance.tosUrl" class="_link" target="_blank">{{ i18n.ts.termsOfService }} <i class="ti ti-external-link"></i></a>
|
<a :href="instance.tosUrl" class="_link" target="_blank">{{ i18n.ts.termsOfService }} <i class="ti ti-external-link"></i></a>
|
||||||
|
|
||||||
<MkSwitch v-model="agreeTos" style="margin-top: 16px;">{{ i18n.ts.agree }}</MkSwitch>
|
<MkSwitch :modelValue="agreeTos" style="margin-top: 16px;" @update:modelValue="updateAgreeTos">{{ i18n.ts.agree }}</MkSwitch>
|
||||||
</MkFolder>
|
</MkFolder>
|
||||||
|
|
||||||
<MkFolder :defaultOpen="true">
|
<MkFolder :defaultOpen="true">
|
||||||
|
@ -37,7 +40,7 @@
|
||||||
|
|
||||||
<a href="https://misskey-hub.net/docs/notes.html" class="_link" target="_blank">{{ i18n.ts.basicNotesBeforeCreateAccount }} <i class="ti ti-external-link"></i></a>
|
<a href="https://misskey-hub.net/docs/notes.html" class="_link" target="_blank">{{ i18n.ts.basicNotesBeforeCreateAccount }} <i class="ti ti-external-link"></i></a>
|
||||||
|
|
||||||
<MkSwitch v-model="agreeNote" style="margin-top: 16px;" data-cy-signup-rules-notes-agree>{{ i18n.ts.agree }}</MkSwitch>
|
<MkSwitch :modelValue="agreeNote" style="margin-top: 16px;" data-cy-signup-rules-notes-agree @update:modelValue="updateAgreeNote">{{ i18n.ts.agree }}</MkSwitch>
|
||||||
</MkFolder>
|
</MkFolder>
|
||||||
|
|
||||||
<div v-if="!agreed" style="text-align: center;">{{ i18n.ts.pleaseAgreeAllToContinue }}</div>
|
<div v-if="!agreed" style="text-align: center;">{{ i18n.ts.pleaseAgreeAllToContinue }}</div>
|
||||||
|
@ -52,13 +55,14 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { computed, ref } from 'vue';
|
import { computed, onMounted, ref, watch } from 'vue';
|
||||||
import { instance } from '@/instance';
|
import { instance } from '@/instance';
|
||||||
import { i18n } from '@/i18n';
|
import { i18n } from '@/i18n';
|
||||||
import MkButton from '@/components/MkButton.vue';
|
import MkButton from '@/components/MkButton.vue';
|
||||||
import MkFolder from '@/components/MkFolder.vue';
|
import MkFolder from '@/components/MkFolder.vue';
|
||||||
import MkSwitch from '@/components/MkSwitch.vue';
|
import MkSwitch from '@/components/MkSwitch.vue';
|
||||||
import MkInfo from '@/components/MkInfo.vue';
|
import MkInfo from '@/components/MkInfo.vue';
|
||||||
|
import * as os from '@/os';
|
||||||
|
|
||||||
const availableServerRules = instance.serverRules.length > 0;
|
const availableServerRules = instance.serverRules.length > 0;
|
||||||
const availableTos = instance.tosUrl != null;
|
const availableTos = instance.tosUrl != null;
|
||||||
|
@ -75,6 +79,48 @@ const emit = defineEmits<{
|
||||||
(ev: 'cancel'): void;
|
(ev: 'cancel'): void;
|
||||||
(ev: 'done'): void;
|
(ev: 'done'): void;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
|
async function updateAgreeServerRules(v: boolean) {
|
||||||
|
if (v) {
|
||||||
|
const confirm = await os.confirm({
|
||||||
|
type: 'question',
|
||||||
|
title: i18n.ts.doYouAgree,
|
||||||
|
text: i18n.t('iHaveReadXCarefullyAndAgree', { x: i18n.ts.serverRules }),
|
||||||
|
});
|
||||||
|
if (confirm.canceled) return;
|
||||||
|
agreeServerRules.value = true;
|
||||||
|
} else {
|
||||||
|
agreeServerRules.value = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async function updateAgreeTos(v: boolean) {
|
||||||
|
if (v) {
|
||||||
|
const confirm = await os.confirm({
|
||||||
|
type: 'question',
|
||||||
|
title: i18n.ts.doYouAgree,
|
||||||
|
text: i18n.t('iHaveReadXCarefullyAndAgree', { x: i18n.ts.termsOfService }),
|
||||||
|
});
|
||||||
|
if (confirm.canceled) return;
|
||||||
|
agreeTos.value = true;
|
||||||
|
} else {
|
||||||
|
agreeTos.value = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async function updateAgreeNote(v: boolean) {
|
||||||
|
if (v) {
|
||||||
|
const confirm = await os.confirm({
|
||||||
|
type: 'question',
|
||||||
|
title: i18n.ts.doYouAgree,
|
||||||
|
text: i18n.t('iHaveReadXCarefullyAndAgree', { x: i18n.ts.basicNotesBeforeCreateAccount }),
|
||||||
|
});
|
||||||
|
if (confirm.canceled) return;
|
||||||
|
agreeNote.value = true;
|
||||||
|
} else {
|
||||||
|
agreeNote.value = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" module>
|
<style lang="scss" module>
|
||||||
|
|
Loading…
Reference in a new issue