change users tab icon, cleanup code, remove important css

This commit is contained in:
luce 2025-07-28 13:26:30 +02:00
commit 787de54e1e
4 changed files with 165 additions and 146 deletions

View file

@ -1,9 +1,3 @@
.user-tab { .user-tab {
height: 100%; height: 100%;
} }
.stacked-container {
// eslint-disable-next-line
display: flex !important;
flex-direction: column;
}

View file

@ -1,147 +1,170 @@
<template> <template>
<div :label="$t('admin_dash.users.management')"> <div :label="$t('admin_dash.users.management')">
<div class="setting-item"> <div class="setting-item">
<h2> filter user search </h2> <h2> {{ $t('admin_dash.users.title_filter_user_search') }} </h2>
<div <ul
class="stacked-container" class="setting-list"
> >
<input <li>
v-model="filters_query" <input
:placeholder="$t('admin_dash.users.placeholder_query')" v-model="filters_query"
class="input string-input" :placeholder="$t('admin_dash.users.placeholder_query')"
@input="reset()" class="input string-input"
> @input="reset()"
<input >
v-model="filters_name" </li>
:placeholder="$t('admin_dash.users.placeholder_name')" <li>
class="input string-input" <input
@input="reset()" v-model="filters_name"
> :placeholder="$t('admin_dash.users.placeholder_name')"
<input class="input string-input"
v-model="filters_email" @input="reset()"
:placeholder="$t('admin_dash.users.placeholder_email')" >
class="input string-input" </li>
@input="reset()" <li>
> <input
</div> v-model="filters_email"
<Select :placeholder="$t('admin_dash.users.placeholder_email')"
:model-value="filters_origin" class="input string-input"
@update:model-value="v => update_origin(v)" @input="reset()"
> >
<option </li>
value="all" <li>
> <Select
{{ $t('admin_dash.users.all') }} :model-value="filters_origin"
</option> @update:model-value="v => update_origin(v)"
<option >
value="local" <option
> value="all"
{{ $t('admin_dash.users.only_local') }} >
</option> {{ $t('admin_dash.users.all') }}
<option </option>
value="external" <option
> value="local"
{{ $t('admin_dash.users.only_external') }} >
</option> {{ $t('admin_dash.users.only_local') }}
</Select> </option>
<Select <option
:model-value="filters_activity" value="external"
@update:model-value="v => update_activity(v)" >
> {{ $t('admin_dash.users.only_external') }}
<option </option>
value="all" </Select>
> </li>
{{ $t('admin_dash.users.all') }} <li>
</option> <Select
<option :model-value="filters_activity"
value="active" @update:model-value="v => update_activity(v)"
> >
{{ $t('admin_dash.users.only_active') }} <option
</option> value="all"
<option >
value="deactivated" {{ $t('admin_dash.users.all') }}
> </option>
{{ $t('admin_dash.users.only_deactivated') }} <option
</option> value="active"
</Select> >
<Select {{ $t('admin_dash.users.only_active') }}
:model-value="filters_permission" </option>
@update:model-value="v => update_permission(v)" <option
> value="deactivated"
<option >
value="all" {{ $t('admin_dash.users.only_deactivated') }}
> </option>
{{ $t('admin_dash.users.all') }} </Select>
</option> </li>
<option <li>
value="admin" <Select
> :model-value="filters_permission"
{{ $t('admin_dash.users.only_administrators') }} @update:model-value="v => update_permission(v)"
</option> >
<option <option
value="modsnadmins" value="all"
> >
{{ $t('admin_dash.users.all_privileged') }} {{ $t('admin_dash.users.all') }}
</option> </option>
<option <option
value="moderator" value="admin"
> >
{{ $t('admin_dash.users.only_moderators') }} {{ $t('admin_dash.users.only_administrators') }}
</option> </option>
</Select> <option
<Checkbox value="modsnadmins"
@update:model-value="v => {filters.need_approval = v; reset();}" >
> {{ $t('admin_dash.users.all_privileged') }}
{{ $t('admin_dash.users.only_unapproved') }} </option>
</Checkbox> <option
<Checkbox value="moderator"
@update:model-value="v => {filters.unconfirmed = v; reset();}" >
> {{ $t('admin_dash.users.only_moderators') }}
{{ $t('admin_dash.users.only_unconfirmed') }} </option>
</Checkbox> </Select>
<button </li>
class="button button-default btn" <li>
type="button" <Checkbox
@click="reset" @update:model-value="v => {filters.need_approval = v; reset();}"
> >
{{ $t('admin_dash.users.refresh') }} {{ $t('admin_dash.users.only_unapproved') }}
</button> </Checkbox>
</li>
<li>
<Checkbox
@update:model-value="v => {filters.unconfirmed = v; reset();}"
>
{{ $t('admin_dash.users.only_unconfirmed') }}
</Checkbox>
</li>
<li>
<button
class="button button-default btn"
type="button"
@click="reset"
>
{{ $t('admin_dash.users.refresh') }}
</button>
</li>
</ul>
</div> </div>
<PageList <div
ref="userList" class="setting-item"
:refresh="true"
:get-key="i => i"
:box_only="true"
:page_size="20"
:fetch_page="(store, opts) => fetch_page(store, opts)"
> >
<template #header> <h2> {{ $t('admin_dash.users.title_users') }} </h2>
<button <PageList
class="button button-default btn" ref="userList"
type="button" :refresh="true"
@click="activate_selection" :get-key="i => i"
> :box_only="true"
{{ $t('admin_dash.users.activate') }} :page_size="20"
</button> :fetch_page="(store, opts) => fetch_page(store, opts)"
<button >
class="button button-default btn" <template #header>
type="button" <button
@click="deactivate_selection" class="button button-default btn"
> type="button"
{{ $t('admin_dash.users.deactivate') }} @click="activate_selection"
</button> >
<button {{ $t('admin_dash.users.activate') }}
class="button button-default btn" </button>
type="button" <button
@click="delete_selection" class="button button-default btn"
> type="button"
{{ $t('admin_dash.users.delete') }} @click="deactivate_selection"
</button> >
</template> {{ $t('admin_dash.users.deactivate') }}
<template #item="{item}"> </button>
<AdminCard :user_details="item" /> <button
</template> class="button button-default btn"
</PageList> type="button"
@click="delete_selection"
>
{{ $t('admin_dash.users.delete') }}
</button>
</template>
<template #item="{item}">
<AdminCard :user_details="item" />
</template>
</PageList>
</div>
</div> </div>
</template> </template>
<script src="./users_tab.js"></script> <script src="./users_tab.js"></script>

View file

@ -51,7 +51,7 @@
<div <div
v-if="adminDbLoaded" v-if="adminDbLoaded"
:label="$t('admin_dash.tabs.users')" :label="$t('admin_dash.tabs.users')"
icon="wrench" icon="user"
data-tab-name="users" data-tab-name="users"
> >
<UsersTab /> <UsersTab />

View file

@ -1185,7 +1185,9 @@
"title_content": "Content", "title_content": "Content",
"link_source": "source", "link_source": "source",
"title_database": "Database", "title_database": "Database",
"title_details": "Details" "title_details": "Details",
"title_filter_user_search": "Filter User Search",
"title_users": "Users"
}, },
"limits": { "limits": {
"arbitrary_limits": "Arbitrary limits", "arbitrary_limits": "Arbitrary limits",