Add admin run and show switches
This commit is contained in:
parent
a49600a5d9
commit
fcae25d28a
4 changed files with 58 additions and 5 deletions
12
index.php
12
index.php
|
|
@ -5,6 +5,15 @@ foreach (["videos_dir", "thumbs_dir", "uploads_dir"] as $d) if (!is_dir($config[
|
|||
if (!is_dir(__DIR__ . "/cache")) mkdir(__DIR__ . "/cache", 0775, true);
|
||||
function h($s){ return htmlspecialchars((string)$s, ENT_QUOTES, "UTF-8"); }
|
||||
function nice_title($s){ return trim(ucwords(str_replace(['_','-'], ' ', $s))); }
|
||||
function hidden_video_outputs($config){
|
||||
$hidden = [];
|
||||
foreach (glob($config['uploads_dir'].'/*', GLOB_ONLYDIR) ?: [] as $dir) {
|
||||
if (!is_file($dir . '/.mvlog-hidden')) continue;
|
||||
$state = is_file($dir . '/.movmaker-state.json') ? json_decode((string)file_get_contents($dir . '/.movmaker-state.json'), true) : [];
|
||||
if (is_array($state) && !empty($state['output'])) $hidden[basename((string)$state['output'])] = true;
|
||||
}
|
||||
return $hidden;
|
||||
}
|
||||
function video_metadata($path){
|
||||
$base = pathinfo($path, PATHINFO_FILENAME);
|
||||
$meta = ['title' => nice_title($base), 'date' => date('Y-m-d', filemtime($path)), 'sort_date' => date('Y-m-d', filemtime($path)), 'location' => '', 'description' => ''];
|
||||
|
|
@ -75,7 +84,8 @@ function load_video_cache($videos){
|
|||
}
|
||||
return $newItems;
|
||||
}
|
||||
$videos = glob($config['videos_dir'].'/*.{mp4,webm,mov,m4v}', GLOB_BRACE) ?: [];
|
||||
$hiddenOutputs = hidden_video_outputs($config);
|
||||
$videos = array_values(array_filter(glob($config['videos_dir'].'/*.{mp4,webm,mov,m4v}', GLOB_BRACE) ?: [], fn($v)=>empty($hiddenOutputs[basename($v)])));
|
||||
$videoCache = load_video_cache($videos);
|
||||
usort($videos, function($a, $b) use ($videoCache) {
|
||||
$am = $videoCache[basename($a)] ?? [];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue