From a0463165091011253f7814e2d4259d4f5c27145c Mon Sep 17 00:00:00 2001 From: les Date: Wed, 5 Feb 2020 00:41:23 +0100 Subject: [PATCH] split moderation admin panel --- components/admin/Federation.vue | 135 +------------------------- components/admin/Moderation.vue | 164 ++++++++++++++++++++++++++++++++ 2 files changed, 167 insertions(+), 132 deletions(-) create mode 100644 components/admin/Moderation.vue diff --git a/components/admin/Federation.vue b/components/admin/Federation.vue index 9a05ec1d..b6754c9e 100644 --- a/components/admin/Federation.vue +++ b/components/admin/Federation.vue @@ -21,140 +21,15 @@ span(slot='reference') el-input.w-25(v-model='instance_name' placeholder='Instance name') p Follow this instance from @{{instance_name}}@{{settings.baseurl|url2host}} - el-row(v-if='enable_federation') - el-col(:span='12') - el-divider {{$t('common.instances')}} - el-input(v-model='instancesFilter' :placeholder="$t('admin.filter_instances')") - el-table(:data='paginatedInstances' small @row-click='instanceSelected') - el-table-column(label='Domain' width='180') - template(slot-scope='data') - span(slot='reference') {{data.row.domain}} - el-table-column(label='Name' width='100') - template(slot-scope='data') - span(slot='reference') {{data.row.name}} - el-table-column(label='Users' width='60') - template(slot-scope='data') - span(slot='reference') {{data.row.users}} - el-table-column(:label="$t('common.actions')" width='120') - template(slot-scope='data') - el-button-group - el-button(size='mini' - :type='data.row.blocked?"danger":"warning"' - @click='toggleBlock(data.row)') {{data.row.blocked?$t('admin.unblock'):$t('admin.block')}} - client-only - el-pagination(v-if='enable_federation && instances.length>perPage' :page-size='perPage' :currentPage.sync='instancePage' :total='instances.length') - - el-col.float-right(:span='11' align='right') - el-divider {{$t('common.users')}} - el-input(v-model='usersFilter' :placeholder="$t('admin.filter_users')") - client-only - el-pagination(v-if='enable_federation && users.length>perPage' :page-size='perPage' :currentPage.sync='instancePage' :total='users.length') - el-table(:data='paginatedSelectedUsers' small) - el-table-column(label='User' width='150') - template(slot-scope='data') - span(slot='reference') - a(:href='data.row.object.id' target='_blank') {{data.row.object.name}} - small ({{data.row.object.preferredUsername}}) - el-table-column(:label="$t('common.resources')" width='90') - template(slot-scope='data') - span {{data.row.resources.length}} - el-table-column(:label="$t('common.actions')" width='200') - template(slot-scope='data') - el-button-group - el-button(size='mini' - :type='data.row.blocked?"danger":"warning"' - @click='toggleUserBlock(data.row)') {{data.row.blocked?$t('admin.unblock'):$t('admin.block')}} - - div(v-show='enable_federation') - el-divider {{$t('common.resources')}} - el-table(:data='paginatedResources' small :row-style='resourceStyle') - el-table-column(:label="$t('common.event')") - template(slot-scope='data') - span {{data.row.event}} - el-table-column(:label="$t('common.resources')") - template(slot-scope='data') - span(:class='{disabled: data.row.hidden}' v-html='data.row.data.content') - el-table-column(:label="$t('common.actions')" width="150") - template(slot-scope='data') - el-dropdown - el-button(type="primary" icon="el-icon-arrow-down" size='mini') {{$t('common.moderation')}} - el-dropdown-menu(slot='dropdown') - el-dropdown-item(v-if='!data.row.hidden' icon='el-icon-remove' @click.native='toggleHideResource(data.row)') {{$t('admin.hide_resource')}} - el-dropdown-item(v-else icon='el-icon-success' @click.native='toggleHideResource(data.row)') {{$t('admin.show_resource')}} - el-dropdown-item(icon='el-icon-delete' @click.native='deleteResource(data.row)') {{$t('admin.delete_resource')}} - el-dropdown-item(icon='el-icon-lock' @click.native='blockUser(data.row)') {{$t('admin.block_user')}} - diff --git a/components/admin/Moderation.vue b/components/admin/Moderation.vue new file mode 100644 index 00000000..d55adc2e --- /dev/null +++ b/components/admin/Moderation.vue @@ -0,0 +1,164 @@ + + +