output current media folder
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="ui-tree" :style="{ 'padding-left': depth > 0 ? ((depth * 18) + 'px') : null }">
|
||||
<div class="ui-tree" :style="{ 'padding-left': depth > 0 ? (((depth > 0 ? 1 : 0) * 15) + 'px') : null }">
|
||||
<ui-header-bar class="ui-tree-header" :title="header" :back-button="false" v-if="header">
|
||||
<ui-dot-button @click="onActionsClicked(null, $event)" />
|
||||
</ui-header-bar>
|
||||
|
||||
@@ -2,10 +2,8 @@
|
||||
<ui-form v-if="!loading" ref="form" class="mediafolder" v-slot="form" @submit="onSubmit" @load="onLoad">
|
||||
<h2 class="ui-headline" v-localize="'@media.addfolder'"></h2>
|
||||
<div class="mediafolder-items">
|
||||
<ui-property label="@ui.name" :required="true" :vertical="true">
|
||||
<input v-model="item.name" type="text" class="ui-input" maxlength="200" :readonly="disabled" />
|
||||
</ui-property>
|
||||
<!-- // TODO add parent selector -->
|
||||
<input v-model="item.name" type="text" class="ui-input" maxlength="200" v-localize:placeholder="'@media.fields.foldername_placeholder'" :readonly="disabled" />
|
||||
<!-- // TODO add parent selector -->
|
||||
</div>
|
||||
<div class="app-confirm-buttons">
|
||||
<ui-button v-if="!disabled" :submit="true" :state="form.state" label="@ui.create"></ui-button>
|
||||
@@ -96,5 +94,11 @@
|
||||
{
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.ui-input
|
||||
{
|
||||
background: var(--color-bg-mid);
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -62,6 +62,7 @@
|
||||
items: [],
|
||||
folders: [],
|
||||
treeConfig: {},
|
||||
current: null,
|
||||
icons: {
|
||||
image: 'fth-image',
|
||||
video: 'fth-video',
|
||||
@@ -150,7 +151,7 @@
|
||||
},
|
||||
title()
|
||||
{
|
||||
return this.id ? 'Media (...)' : '@media.list';
|
||||
return this.current ? this.current.name : '@media.list';
|
||||
}
|
||||
},
|
||||
|
||||
@@ -165,6 +166,7 @@
|
||||
{
|
||||
this.items = response.items;
|
||||
this.folders = response.folders;
|
||||
this.current = response.folder;
|
||||
});
|
||||
},
|
||||
|
||||
@@ -211,7 +213,6 @@
|
||||
{
|
||||
Overlay.open({
|
||||
component: AddFolderOverlay,
|
||||
width: 700,
|
||||
model: { parentId },
|
||||
theme: 'dark'
|
||||
}).then(item =>
|
||||
|
||||
@@ -123,6 +123,7 @@
|
||||
.apps-items-add
|
||||
{
|
||||
background: transparent;
|
||||
border: 2px dotted var(--color-line);
|
||||
color: var(--color-fg);
|
||||
border-radius: var(--radius);
|
||||
text-align: center;
|
||||
@@ -132,11 +133,5 @@
|
||||
align-items: center;
|
||||
font-size: 22px;
|
||||
width: 60px;
|
||||
margin-left: -20px;
|
||||
|
||||
&:hover
|
||||
{
|
||||
background: var(--color-bg-xmid);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,4 +1,5 @@
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
@@ -41,13 +42,19 @@ namespace zero.Web.Controllers
|
||||
{
|
||||
ListResult<MediaListModel> items = await Mapper.Map<Media, MediaListModel>(await Api.GetByQuery(query));
|
||||
IEnumerable<MediaListModel> folders = new List<MediaListModel>();
|
||||
MediaFolder folder = null;
|
||||
|
||||
if (query.Page < 2)
|
||||
{
|
||||
folders = await Mapper.Map<MediaFolder, MediaListModel>(await MediaFolderApi.GetAll(query.FolderId));
|
||||
}
|
||||
|
||||
return Json(new MediaListResultModel(items, folders));
|
||||
if (!String.IsNullOrEmpty(query.FolderId))
|
||||
{
|
||||
folder = await MediaFolderApi.GetById(query.FolderId);
|
||||
}
|
||||
|
||||
return Json(new MediaListResultModel(items, folders, folder));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -7,10 +7,17 @@ namespace zero.Web.Models
|
||||
{
|
||||
public IEnumerable<MediaListModel> Folders { get; private set; }
|
||||
|
||||
public MediaFolder Folder { get; private set; }
|
||||
|
||||
public MediaListResultModel(ListResult<MediaListModel> items, IEnumerable<MediaListModel> folders) : base(items.Items, items.TotalItems, items.Page, items.PageSize)
|
||||
{
|
||||
Folders = folders;
|
||||
Statistics = items.Statistics;
|
||||
}
|
||||
|
||||
public MediaListResultModel(ListResult<MediaListModel> items, IEnumerable<MediaListModel> folders, MediaFolder currentFolder) : this(items, folders)
|
||||
{
|
||||
Folder = currentFolder;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -333,6 +333,7 @@
|
||||
"name": "Media",
|
||||
"addfolder": "Add a new folder",
|
||||
"fields": {
|
||||
"foldername_placeholder": "Enter a name ...",
|
||||
"caption": "Caption",
|
||||
"dimension": "Dimension",
|
||||
"size": "Size",
|
||||
|
||||
Reference in New Issue
Block a user