Initial commit

This commit is contained in:
Paul Nicoué 2021-10-29 18:05:46 +02:00
commit 1ff19bf38f
830 changed files with 159212 additions and 0 deletions

View file

@ -0,0 +1,24 @@
<?php
return function (array $props) {
$props['sections'] = [
'files' => [
'headline' => $props['headline'] ?? t('files'),
'type' => 'files',
'layout' => $props['layout'] ?? 'cards',
'template' => $props['template'] ?? null,
'image' => $props['image'] ?? null,
'info' => '{{ file.dimensions }}'
]
];
// remove global options
unset(
$props['headline'],
$props['layout'],
$props['template'],
$props['image']
);
return $props;
};

View file

@ -0,0 +1,72 @@
<?php
return function ($props) {
$section = function ($defaults, $props) {
if ($props === true) {
$props = [];
}
if (is_string($props) === true) {
$props = [
'headline' => $props
];
}
return array_replace_recursive($defaults, $props);
};
if (empty($props['sidebar']) === false) {
$sidebar = $props['sidebar'];
} else {
$sidebar = [];
$pages = $props['pages'] ?? [];
$files = $props['files'] ?? [];
if ($pages !== false) {
$sidebar['pages'] = $section([
'headline' => t('pages'),
'type' => 'pages',
'status' => 'all',
'layout' => 'list',
], $pages);
}
if ($files !== false) {
$sidebar['files'] = $section([
'headline' => t('files'),
'type' => 'files',
'layout' => 'list'
], $files);
}
}
if (empty($sidebar) === true) {
$props['fields'] = $props['fields'] ?? [];
unset(
$props['files'],
$props['pages']
);
} else {
$props['columns'] = [
[
'width' => '2/3',
'fields' => $props['fields'] ?? []
],
[
'width' => '1/3',
'sections' => $sidebar
],
];
unset(
$props['fields'],
$props['files'],
$props['pages'],
$props['sidebar']
);
}
return $props;
};

View file

@ -0,0 +1,57 @@
<?php
return function (array $props) {
// load the general templates setting for all sections
$templates = $props['templates'] ?? null;
$section = function ($headline, $status, $props) use ($templates) {
$defaults = [
'headline' => $headline,
'type' => 'pages',
'layout' => 'list',
'status' => $status
];
if ($props === true) {
$props = [];
}
if (is_string($props) === true) {
$props = [
'headline' => $props
];
}
// inject the global templates definition
if (empty($templates) === false) {
$props['templates'] = $props['templates'] ?? $templates;
}
return array_replace_recursive($defaults, $props);
};
$sections = [];
$drafts = $props['drafts'] ?? [];
$unlisted = $props['unlisted'] ?? false;
$listed = $props['listed'] ?? [];
if ($drafts !== false) {
$sections['drafts'] = $section(t('pages.status.draft'), 'drafts', $drafts);
}
if ($unlisted !== false) {
$sections['unlisted'] = $section(t('pages.status.unlisted'), 'unlisted', $unlisted);
}
if ($listed !== false) {
$sections['listed'] = $section(t('pages.status.listed'), 'listed', $listed);
}
// cleaning up
unset($props['drafts'], $props['unlisted'], $props['listed'], $props['templates']);
return array_merge($props, ['sections' => $sections]);
};