diff --git a/formwork/translations/de.yaml b/formwork/translations/de.yaml index 6461c5dd..76102ffe 100644 --- a/formwork/translations/de.yaml +++ b/formwork/translations/de.yaml @@ -23,16 +23,19 @@ page.cacheable: Im Cache speichern page.content: Inhalt page.files: Dateien page.image: Bild -page.listed: Im Menü sichtbar +page.listed: Aufgelistet page.noImage: Kein Bild page.none: (Keine) page.noTags: Keine Tags +page.notListed: Nicht aufgelistet +page.notRoutable: Nicht routbar page.options: Optionen page.page: Seite page.parent: Übergeordnete Seite page.postsPerPage: Beiträge pro Seite page.publishDate: Veröffentlichungsdatum page.routable: Routbar +page.slug: Slug page.status.notPublished: Nicht veröffentlicht page.status.notRoutable: Nicht routbar page.status.published: Veröffentlicht diff --git a/formwork/translations/en.yaml b/formwork/translations/en.yaml index e3fd7a4a..f0eb7533 100644 --- a/formwork/translations/en.yaml +++ b/formwork/translations/en.yaml @@ -23,18 +23,20 @@ page.cacheable: Cacheable page.content: Content page.files: Files page.image: Image -page.listed: Visible in the menu +page.listed: Listed page.noImage: No image page.none: (None) page.noTags: No tags +page.notListed: Not listed +page.notRoutable: Not routable page.options: Options page.page: Page page.parent: Parent page page.postsPerPage: Posts per page page.publishDate: Publish date page.routable: Routable +page.slug: Slug page.status.notPublished: Not published -page.status.notRoutable: Not routable page.status.published: Published page.summary: Summary page.tags: Tags diff --git a/formwork/translations/es.yaml b/formwork/translations/es.yaml index 358d8f4b..d15d3b33 100644 --- a/formwork/translations/es.yaml +++ b/formwork/translations/es.yaml @@ -23,16 +23,19 @@ page.cacheable: En caché page.content: Contenido page.files: Archivos page.image: Imagen -page.listed: Visible en el menú +page.listed: Listada page.noImage: Sin imagen page.none: (Ninguno) page.noTags: Sin etiquetas +page.notListed: No listada +page.notRoutable: No enrutable page.options: Opciones page.page: Página page.parent: Página principal page.postsPerPage: Publicaciones por página page.publishDate: Fecha de publicación page.routable: Enrutable +page.slug: Slug page.status.notPublished: No publicado page.status.notRoutable: No enrutable page.status.published: Publicado diff --git a/formwork/translations/fr.yaml b/formwork/translations/fr.yaml index 7b6a414a..bd034e17 100644 --- a/formwork/translations/fr.yaml +++ b/formwork/translations/fr.yaml @@ -23,18 +23,20 @@ page.cacheable: Activer le cache page.content: Contenu page.files: Fichiers page.image: Image d’accroche -page.listed: Visible dans le menu +page.listed: Répertoriée page.noImage: Aucune image page.none: (Aucun) page.noTags: Aucun tag +page.notListed: Non répertoriée +page.notRoutable: Inaccessible page.options: Options page.page: Page page.parent: Parent page.postsPerPage: Articles par page page.publishDate: Date de publication page.routable: Accessible +page.slug: Slug page.status.notPublished: Brouillon -page.status.notRoutable: Inaccessible page.status.published: Publié page.summary: Résumé page.tags: Tags diff --git a/formwork/translations/it.yaml b/formwork/translations/it.yaml index 981de172..0f0d2418 100644 --- a/formwork/translations/it.yaml +++ b/formwork/translations/it.yaml @@ -23,16 +23,19 @@ page.cacheable: Abilita cache page.content: Contenuto page.files: File page.image: Immagine -page.listed: Visibile nel menu +page.listed: Elencata page.noImage: Nessuna immagine page.none: (Nessuna) page.noTags: Nessun tag +page.notListed: Non elencata +page.notRoutable: Non raggiungibile page.options: Opzioni page.page: Pagina page.parent: Pagina superiore page.postsPerPage: Post per pagina page.publishDate: Data di pubblicazione page.routable: Raggiungibile +page.slug: Slug page.status.notPublished: Non pubblicato page.status.notRoutable: Non raggiungibile page.status.published: Pubblicato diff --git a/formwork/translations/pt.yaml b/formwork/translations/pt.yaml index a10dd764..ead360c8 100644 --- a/formwork/translations/pt.yaml +++ b/formwork/translations/pt.yaml @@ -23,16 +23,19 @@ page.cacheable: Cache page.content: Conteúdo page.files: Ficheiros page.image: Imagem -page.listed: Visível no menu +page.listed: Listada page.noImage: Sem imagem page.none: (Nenhum) page.noTags: Sem tags +page.notListed: Não listada +page.notRoutable: Não roteável page.options: Opções page.page: Página page.parent: Página parente page.postsPerPage: Items por página page.publishDate: Data de publicação page.routable: Roteável +page.slug: Slug page.status.notPublished: Não publicado page.status.notRoutable: Não roteável page.status.published: Publicado diff --git a/formwork/translations/ru.yaml b/formwork/translations/ru.yaml index 0f7f34bb..66f38d99 100644 --- a/formwork/translations/ru.yaml +++ b/formwork/translations/ru.yaml @@ -23,16 +23,19 @@ page.cacheable: Кешируемый page.content: Содержание page.files: Файлы page.image: Изображение -page.listed: Видимо в меню +page.listed: Указана page.noImage: Нет изображения page.none: (Нет) page.noTags: Нет тегов +page.notListed: Не указана +page.notRoutable: Не маршрутизируемый page.options: Параметры page.page: Страница page.parent: Родитель страницы page.postsPerPage: Сообщения на странице page.publishDate: Дата публикации page.routable: Маршрутизируемый +page.slug: Slug page.status.notPublished: Не Опубликовано page.status.notRoutable: Не маршрутизируемый page.status.published: Опубликованный diff --git a/panel/assets/icons/svg/eye-slash.svg b/panel/assets/icons/svg/eye-slash.svg new file mode 100644 index 00000000..7be9b643 --- /dev/null +++ b/panel/assets/icons/svg/eye-slash.svg @@ -0,0 +1 @@ + diff --git a/panel/src/scss/components/_pages.scss b/panel/src/scss/components/_pages.scss index 855c635a..22e09127 100644 --- a/panel/src/scss/components/_pages.scss +++ b/panel/src/scss/components/_pages.scss @@ -56,13 +56,45 @@ white-space: nowrap; } -.page-actions .button-link { - font-size: $font-size-md; +.page-info { + position: absolute; + z-index: 8; + display: none; + padding: 0.5rem; + border: 1px solid var(--color-base-500); + border-radius: $border-radius; + margin: 0.25rem 0 1rem; + background-color: var(--color-base-900); + box-shadow: $box-shadow-md; } -.page-info { - padding: 0 0.25rem; - margin-bottom: 0.75rem; +.page-icon > .icon { + vertical-align: -0.25rem; +} + +.page-icon:hover .page-info { + display: block; +} + +.is-dragging .page-icon:hover .page-info { + display: none; +} + +.page-info-row { + padding: 0.5rem 0.25rem; + border-bottom: 1px solid var(--color-base-600); + font-size: $font-size-sm; +} + +.page-info-badges { + padding: 0.5rem 0.25rem; + font-size: $font-size-md; + white-space: nowrap; +} + +.page-languages { + font-size: $font-size-md; + white-space: nowrap; } .page-slug-change { diff --git a/panel/views/pages/editor.php b/panel/views/pages/editor.php index 21d8c084..47e22540 100644 --- a/panel/views/pages/editor.php +++ b/panel/views/pages/editor.php @@ -3,7 +3,14 @@ attr(['hidden' => true, 'aria-hidden' => 'true', 'data-command' => 'save', 'formaction' => $history?->isJustCreated() ? '?publish=false' : null]) ?>>
-
icon($page->icon()) ?> escape($page->title()) ?>
+
+
+ icon($page->icon()) ?> +
+
+ escape($page->title()) ?> +
+
insert('_pages/status', ['page' => $page]) ?>
isIndexPage() && !$page->isErrorPage()) : ?> @@ -23,16 +30,16 @@ href="uri('/pages/' . trim($previousPage->route(), '/') . '/edit/') ?>" title="translate('panel.pages.previous') ?>" aria-label="translate('panel.pages.previous') ?>">icon('chevron-left') ?> href="uri('/pages/' . trim($nextPage->route(), '/') . '/edit/') ?>" title="translate('panel.pages.next') ?>" aria-label="translate('panel.pages.next') ?>">icon('chevron-right') ?> published() && $page->routable()) : ?>href="uri(includeLanguage: $currentLanguage ?: true) ?>" target="formwork-view-page-uid() ?>" title="translate('panel.pages.viewPage') ?>" aria-label="translate('panel.pages.viewPage') ?>">icon('arrow-right-up-box') ?> - + user()->permissions()->has('pages.delete')) : ?> languages()->available()->isEmpty()) : ?> @@ -65,4 +72,4 @@ ) ?>
- \ No newline at end of file + diff --git a/panel/views/pages/tree.php b/panel/views/pages/tree.php index 04650365..800fc9ab 100644 --- a/panel/views/pages/tree.php +++ b/panel/views/pages/tree.php @@ -20,30 +20,37 @@ ]) ?>" data-route="route() ?>">
-
-
-
- orderable()) : ?> - icon('grabber') ?> +
+
+ orderable()) : ?> + icon('grabber') ?> + +
+ +
+ hasChildren()) : ?> +
- -
- hasChildren()) : ?> - - + +
+ icon($page->icon()) ?> + insert('_pages/info', ['page' => $page]) ?> +
+
+
+ - -
icon($page->icon()) ?>
-
- - languages()->available() as $language) : ?> - code() ?> - - +
diff --git a/panel/views/partials/pages/info.php b/panel/views/partials/pages/info.php new file mode 100644 index 00000000..71908070 --- /dev/null +++ b/panel/views/partials/pages/info.php @@ -0,0 +1,16 @@ +
+
translate('page.template') ?>: template()->title() ?>
+
translate('page.slug') ?>: slug() ?>
+
+ routable()): ?> + icon('circle-small-fill') ?> translate('page.routable') ?> + + icon('circle-small') ?> translate('page.notRoutable') ?> + + listed()): ?> + icon('eye') ?> translate('page.listed') ?> + + icon('eye-slash') ?> translate('page.notListed') ?> + +
+
\ No newline at end of file