Commit Graph

9 Commits

Author SHA1 Message Date
Mikhail Chusavitin
4d608c016d Replace dropdown selects with HTML5 datalist autocomplete in forms
Implemented simple HTML5 datalist for FK (foreign key) autocomplete in Insert and Edit forms, replacing the complex Tabulator form approach.

Changes:
- Added renderFieldInput() function to generate input fields with datalist support
- Replaced Tabulator table in promptForRequiredFields() with simple HTML form
- Replaced Tabulator table in showEditModal() with simple HTML form
- All fields now use native HTML5 inputs with proper type support
- FK fields use <input list="datalist"> for browser-native autocomplete
- Added vendor/, composer.lock, composer.phar to .gitignore

Benefits:
 Simpler implementation with native HTML5 functionality
 No dependency on complex Tabulator configurations
 Better browser compatibility with standard HTML5 inputs
 Smaller code footprint and faster rendering

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-02-10 16:20:47 +03:00
Mikhail Chusavitin
1ecd0d28fa Replace dropdown selects with Tabulator autocomplete forms
- Replace native HTML <select> elements with Tabulator-based vertical forms
- Implement autocomplete functionality for FK fields in Insert modal
- Implement autocomplete functionality for FK fields in Edit modal (single and batch)
- Add comprehensive CSS styling for vertical form-tables
- Show field descriptions, FK references, and comments inline
- Support NULL values for optional fields with clear button
- Auto-enable checkboxes on field edit in batch mode
- Consistent UX with autocomplete in main table grid

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-02-10 13:34:42 +03:00
Mikhail Chusavitin
8ee8847600 Fix row checkbox selection behavior in Tabulator 2026-02-04 17:13:09 +03:00
Mikhail Chusavitin
9dfef30ad7 Fix row copy selection and table bottom spacing placement 2026-02-04 17:08:10 +03:00
Mikhail Chusavitin
2a41c5fd0a Add row copy action and improve table bottom spacing 2026-02-04 16:59:46 +03:00
Mikhail Chusavitin
b67bac89ee Harden auth session handling and SQL identifier validation 2026-02-04 16:56:53 +03:00
de477c3e64 Исправлено восстановление скрытых столбцов из сессии
Код восстановления видимости столбцов перемещён внутрь события tableBuilt,
чтобы он выполнялся после полного построения таблицы, когда все столбцы доступны.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 19:22:14 +03:00
654233936e Выравнивание чисел по правому краю в таблице
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 13:30:02 +03:00
09d62fe433 Разделение app.js на модули
- core.js: API wrapper и утилиты (~150 строк)
- user.js: авторизация и localStorage (~240 строк)
- table.js: дерево и Tabulator (~770 строк)
- operations.js: CRUD операции (~740 строк)
- io.js: импорт/экспорт CSV и бэкап (~600 строк)
- app.js: точка входа (~30 строк)

Старый файл сохранён как app.js.bak

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 08:50:16 +03:00