[feat] user assets (#3504)
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
<template id="lnbits-admin-assets-config">
|
||||
<q-card-section class="q-pa-none">
|
||||
<h6 class="q-my-none q-mb-sm">Assets</h6>
|
||||
<div class="row q-col-gutter-md">
|
||||
<div class="col-12 col-md-3">
|
||||
<p>
|
||||
<span v-text="$t('max_asset_size_mb')"></span>
|
||||
</p>
|
||||
<q-input
|
||||
filled
|
||||
type="number"
|
||||
v-model.number="formData.lnbits_max_asset_size_mb"
|
||||
:label="$t('max_asset_size_mb')"
|
||||
step="0.1"
|
||||
min="0"
|
||||
:hint="$t('max_asset_size_mb_desc')"
|
||||
></q-input>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-9">
|
||||
<p>
|
||||
<span v-text="$t('assets_allowed_mime_types')"></span>
|
||||
</p>
|
||||
<q-input
|
||||
filled
|
||||
v-model.number="newAllowedAssetMimeType"
|
||||
@keydown.enter="addAllowedAssetMimeType()"
|
||||
:label="$t('assets_allowed_mime_types')"
|
||||
:hint="$t('assets_allowed_mime_types_desc')"
|
||||
>
|
||||
<q-btn
|
||||
@click="addAllowedAssetMimeType()"
|
||||
dense
|
||||
flat
|
||||
icon="add"
|
||||
></q-btn>
|
||||
</q-input>
|
||||
<div>
|
||||
<q-chip
|
||||
v-for="type in formData.lnbits_assets_allowed_mime_types"
|
||||
:key="type"
|
||||
removable
|
||||
@remove="removeAllowedAssetMimeType(type)"
|
||||
color="primary"
|
||||
text-color="white"
|
||||
class="ellipsis"
|
||||
:label="type"
|
||||
><q-tooltip
|
||||
v-if="identifier"
|
||||
anchor="top middle"
|
||||
self="bottom middle"
|
||||
><span v-text="identifier"></span></q-tooltip
|
||||
></q-chip>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<q-separator class="q-mb-lg q-mt-sm"></q-separator>
|
||||
<h6 class="q-my-none q-mb-sm">Thumbnails</h6>
|
||||
<div class="row q-col-gutter-md">
|
||||
<div class="col-12 col-md-3">
|
||||
<p>
|
||||
<span v-text="$t('thumbnail_width')"></span>
|
||||
</p>
|
||||
<q-input
|
||||
filled
|
||||
type="number"
|
||||
v-model.number="formData.lnbits_asset_thumbnail_width"
|
||||
:label="$t('thumbnail_width')"
|
||||
step="1"
|
||||
min="0"
|
||||
:hint="$t('thumbnail_width_desc')"
|
||||
></q-input>
|
||||
</div>
|
||||
<div class="col-12 col-md-3">
|
||||
<p>
|
||||
<span v-text="$t('thumbnail_height')"></span>
|
||||
</p>
|
||||
<q-input
|
||||
filled
|
||||
type="number"
|
||||
v-model.number="formData.lnbits_asset_thumbnail_height"
|
||||
:label="$t('thumbnail_height')"
|
||||
step="1"
|
||||
min="0"
|
||||
:hint="$t('thumbnail_height_desc')"
|
||||
></q-input>
|
||||
</div>
|
||||
<div class="col-12 col-md-3">
|
||||
<p>
|
||||
<span v-text="$t('thumbnail_format')"></span>
|
||||
</p>
|
||||
<q-input
|
||||
filled
|
||||
v-model.number="formData.lnbits_asset_thumbnail_format"
|
||||
:label="$t('thumbnail_format')"
|
||||
:hint="$t('thumbnail_format_desc')"
|
||||
></q-input>
|
||||
</div>
|
||||
</div>
|
||||
<q-separator class="q-mb-lg q-mt-sm"></q-separator>
|
||||
<h6 class="q-my-none q-mb-sm">Users</h6>
|
||||
<div class="row q-col-gutter-md">
|
||||
<div class="col-12 col-md-3">
|
||||
<p>
|
||||
<span v-text="$t('max_assets_per_user')"></span>
|
||||
</p>
|
||||
<q-input
|
||||
filled
|
||||
type="number"
|
||||
v-model.number="formData.lnbits_max_assets_per_user"
|
||||
:label="$t('max_assets_per_user')"
|
||||
step="1"
|
||||
min="0"
|
||||
:hint="$t('max_assets_per_user_desc')"
|
||||
></q-input>
|
||||
</div>
|
||||
<div class="col-12 col-md-9">
|
||||
<p>
|
||||
<span v-text="$t('assets_no_limit_users')"></span>
|
||||
</p>
|
||||
<q-input
|
||||
filled
|
||||
v-model.number="newNoLimitUser"
|
||||
@keydown.enter="addNewNoLimitUser()"
|
||||
:label="$t('assets_no_limit_users')"
|
||||
:hint="$t('assets_no_limit_users_desc')"
|
||||
>
|
||||
<q-btn @click="addNewNoLimitUser()" dense flat icon="add"></q-btn>
|
||||
</q-input>
|
||||
<div>
|
||||
<q-chip
|
||||
v-for="type in formData.lnbits_assets_no_limit_users"
|
||||
:key="type"
|
||||
removable
|
||||
@remove="removeNoLimitUser(type)"
|
||||
color="primary"
|
||||
text-color="white"
|
||||
class="ellipsis"
|
||||
:label="type"
|
||||
><q-tooltip
|
||||
v-if="identifier"
|
||||
anchor="top middle"
|
||||
self="bottom middle"
|
||||
><span v-text="identifier"></span></q-tooltip
|
||||
></q-chip>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-card-section>
|
||||
<q-card-section>
|
||||
<!-- for spacing -->
|
||||
<br />
|
||||
</q-card-section>
|
||||
</template>
|
||||
@@ -1,67 +0,0 @@
|
||||
<template id="lnbits-admin-library">
|
||||
<q-card-section class="q-pa-none">
|
||||
<h6 class="q-my-none q-mb-sm">
|
||||
<span v-text="$t('image_library')"></span>
|
||||
</h6>
|
||||
<q-btn
|
||||
color="primary"
|
||||
label="Add Image"
|
||||
@click="$refs.imageInput.click()"
|
||||
class="q-mb-md"
|
||||
/>
|
||||
<input
|
||||
type="file"
|
||||
ref="imageInput"
|
||||
accept="image/png, image/jpeg, image/gif"
|
||||
style="display: none"
|
||||
@change="onImageInput"
|
||||
/>
|
||||
</q-card-section>
|
||||
<div class="row q-col-gutter-sm q-pa-sm">
|
||||
<div
|
||||
v-for="image in library_images"
|
||||
:key="image.filename"
|
||||
class="col-6 col-sm-4 col-md-3 col-lg-2"
|
||||
style="max-width: 200px"
|
||||
>
|
||||
<q-card class="q-mb-sm">
|
||||
<q-img :src="image.url" style="height: 150px" />
|
||||
|
||||
<q-card-section
|
||||
class="q-pt-md q-pb-md row items-center justify-between"
|
||||
>
|
||||
<small
|
||||
><div
|
||||
class="text-caption ellipsis"
|
||||
style="max-width: 100px"
|
||||
:title="image.filename"
|
||||
v-text="image.filename"
|
||||
></div
|
||||
></small>
|
||||
<q-btn
|
||||
dense
|
||||
flat
|
||||
size="sm"
|
||||
icon="content_copy"
|
||||
@click="copyText(image.url)"
|
||||
:title="$t('copy')"
|
||||
><q-tooltip>Copy image link</q-tooltip></q-btn
|
||||
>
|
||||
<q-btn
|
||||
dense
|
||||
flat
|
||||
size="sm"
|
||||
icon="delete"
|
||||
color="negative"
|
||||
@click="deleteImage(image.filename)"
|
||||
:title="$t('delete')"
|
||||
><q-tooltip>Delete image</q-tooltip></q-btn
|
||||
>
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="library_images.length === 0" class="q-pa-xl">
|
||||
<div class="text-subtitle2 text-grey">No images uploaded yet.</div>
|
||||
</div>
|
||||
</template>
|
||||
Reference in New Issue
Block a user