summaryrefslogtreecommitdiff
path: root/src/client/app/admin/views/instance.vue
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-11-02 23:05:53 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-11-02 23:05:53 +0900
commitf2e719b3612506493b0d27c4476fcd0879ed1eea (patch)
tree6d3af4d1fd886ea963f6a67821d669b4b1cd53fe /src/client/app/admin/views/instance.vue
parent[API] Implement admin/add-emoji (diff)
downloadmisskey-f2e719b3612506493b0d27c4476fcd0879ed1eea.tar.gz
misskey-f2e719b3612506493b0d27c4476fcd0879ed1eea.tar.bz2
misskey-f2e719b3612506493b0d27c4476fcd0879ed1eea.zip
[Client] Admin page improved
Diffstat (limited to 'src/client/app/admin/views/instance.vue')
-rw-r--r--src/client/app/admin/views/instance.vue62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/client/app/admin/views/instance.vue b/src/client/app/admin/views/instance.vue
new file mode 100644
index 0000000000..542a0d54ad
--- /dev/null
+++ b/src/client/app/admin/views/instance.vue
@@ -0,0 +1,62 @@
+<template>
+<div>
+ <ui-card>
+ <div slot="title">%i18n:@banner-url%</div>
+ <section class="fit-top">
+ <ui-input v-model="bannerUrl"/>
+ <ui-button @click="updateMeta">%i18n:@save%</ui-button>
+ </section>
+ </ui-card>
+
+ <ui-card>
+ <div slot="title">%i18n:@disable-registration%</div>
+ <section>
+ <input type="checkbox" v-model="disableRegistration" @change="updateMeta">
+ <button class="ui" @click="invite">%i18n:@invite%</button>
+ <p v-if="inviteCode">Code: <code>{{ inviteCode }}</code></p>
+ </section>
+ </ui-card>
+
+ <ui-card>
+ <div slot="title">%i18n:@disable-local-timeline%</div>
+ <section>
+ <input type="checkbox" v-model="disableLocalTimeline" @change="updateMeta">
+ </section>
+ </ui-card>
+</div>
+</template>
+
+<script lang="ts">
+import Vue from "vue";
+
+export default Vue.extend({
+ data() {
+ return {
+ disableRegistration: false,
+ disableLocalTimeline: false,
+ bannerUrl: null,
+ inviteCode: null,
+ };
+ },
+ methods: {
+ invite() {
+ (this as any).api('admin/invite').then(x => {
+ this.inviteCode = x.code;
+ }).catch(e => {
+ (this as any).os.apis.dialog({ text: `Failed ${e}` });
+ });
+ },
+ updateMeta() {
+ (this as any).api('admin/update-meta', {
+ disableRegistration: this.disableRegistration,
+ disableLocalTimeline: this.disableLocalTimeline,
+ bannerUrl: this.bannerUrl
+ }).then(() => {
+ (this as any).os.apis.dialog({ text: `Saved` });
+ }).catch(e => {
+ (this as any).os.apis.dialog({ text: `Failed ${e}` });
+ });
+ }
+ }
+});
+</script>