fix: PHP upload limits, import error dialog, earlier footer breakpoint
- Set upload_max_filesize=64M and display_errors=0 for Electron PHP - Import shows error dialog instead of silently failing - Footer count repositions at 1450px instead of 1250px Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
88ad208714
commit
d5f44370b6
3 files changed
+10
-3
No files matched your search
@@ -118,6 +118,9 @@ async function startPhpServer() {
|
|||||||
console.log('[hyprcrd] port:', serverPort);
|
console.log('[hyprcrd] port:', serverPort);
|
||||||
|
|
||||||
phpProcess = spawn(phpBin, [
|
phpProcess = spawn(phpBin, [
|
||||||
|
'-d', 'upload_max_filesize=64M',
|
||||||
|
'-d', 'post_max_size=66M',
|
||||||
|
'-d', 'display_errors=0',
|
||||||
'-S', `127.0.0.1:${serverPort}`,
|
'-S', `127.0.0.1:${serverPort}`,
|
||||||
'-t', docRoot,
|
'-t', docRoot,
|
||||||
routerFile,
|
routerFile,
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ body.no-scanlines::after { display: none !important; }
|
|||||||
#main-header { box-shadow: var(--ui-shadow-header); }
|
#main-header { box-shadow: var(--ui-shadow-header); }
|
||||||
#main-footer { box-shadow: var(--ui-shadow-footer); position: relative; }
|
#main-footer { box-shadow: var(--ui-shadow-footer); position: relative; }
|
||||||
#footer-count { flex-shrink: 0; }
|
#footer-count { flex-shrink: 0; }
|
||||||
@media (min-width: 1250px) {
|
@media (min-width: 1450px) {
|
||||||
#footer-count { position: absolute; left: 50%; translate: -50% 0; }
|
#footer-count { position: absolute; left: 50%; translate: -50% 0; }
|
||||||
}
|
}
|
||||||
html { min-width: 1150px; }
|
html { min-width: 1150px; }
|
||||||
|
|||||||
+6
-2
@@ -143,10 +143,14 @@ importFile?.addEventListener('change', async e => {
|
|||||||
try {
|
try {
|
||||||
const url = mode ? 'api/import?merge=1' : 'api/import';
|
const url = mode ? 'api/import?merge=1' : 'api/import';
|
||||||
const res = await fetch(url, { method: 'POST', body: form, headers: { 'X-CSRF-Token': getCsrf() } });
|
const res = await fetch(url, { method: 'POST', body: form, headers: { 'X-CSRF-Token': getCsrf() } });
|
||||||
const data = JSON.parse(await res.text());
|
const text = await res.text();
|
||||||
|
if (!res.ok) throw new Error(text || `HTTP ${res.status}`);
|
||||||
|
const data = JSON.parse(text);
|
||||||
if (data.error) throw new Error(data.error);
|
if (data.error) throw new Error(data.error);
|
||||||
await loadBuckets(); state.cards = await api('api/cards'); renderBoard();
|
await loadBuckets(); state.cards = await api('api/cards'); renderBoard();
|
||||||
} catch {}
|
} catch (err) {
|
||||||
|
await showDialog({ title: 'import failed', message: err.message || 'Unknown error', danger: true, okLabel: 'OK', cancelLabel: '' });
|
||||||
|
}
|
||||||
e.target.value = '';
|
e.target.value = '';
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user