diff --git a/new.php b/new.php
index d5bc13d..ff4bc83 100644
--- a/new.php
+++ b/new.php
@@ -350,7 +350,13 @@ try {
exit;
}
}
-} catch (Throwable $e) { $err = $e->getMessage(); }
+} catch (Throwable $e) {
+ if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['ajax'])) {
+ http_response_code(400);
+ ajax_json(['ok'=>false, 'error'=>$e->getMessage()]);
+ }
+ $err = $e->getMessage();
+}
$dirs = input_dirs($config['uploads_dir']);
$dirInfo = load_input_dir_cache($dirs);
sort_input_dirs_by_metadata_date($dirs, $dirInfo);
@@ -368,26 +374,52 @@ if ($editName !== '') { try { $editDir = safe_input_dir($config['uploads_dir'],
=h($msg)?>
=h($err)?>
Videos without input dir
No orphan videos.
=page_links('videos',$videoPage,$videoPages)?>
-Existing input dirs
No input directories yet.
No video yet=h(ucfirst($runStatus))?>Edit =h($meta['title'] ?: ($info['title'] ?? basename($d)))?>
=h($meta['date'])?>=h($meta['location'])?>No video
=nl2br(h($meta['description']), false)?>
=h(basename($d))?> · =h($info['file_count'] ?? count(list_files($d)))?> files · = $enabled ? 'Rendering enabled' : 'Rendering disabled' ?> · = $visible ? 'Shown' : 'Hidden' ?>= $running ? ' · '.h(ucfirst($runStatus)) : '' ?>
=page_links('edit',$editPage,$editPages)?>
+Existing input dirs
No input directories yet.
No video yet=h(ucfirst($runStatus))?>Edit =h($meta['title'] ?: ($info['title'] ?? basename($d)))?>
=h($meta['date'])?>=h($meta['location'])?>No video
=nl2br(h($meta['description']), false)?>
=h(basename($d))?> · =h($info['file_count'] ?? count(list_files($d)))?> files · = $enabled ? 'Rendering enabled' : 'Rendering disabled' ?> · = $visible ? 'Shown' : 'Hidden' ?>= $running ? ' · '.h(ucfirst($runStatus)) : '' ?>
=page_links('edit',$editPage,$editPages)?>
Edit input dir
in-dir/=h(basename($editDir))?>
This input directory is =h($editStatus)?>. Editing is disabled until the job completes.