Commit Graph

64 Commits

Author SHA1 Message Date
d2e85e94df ver. 0.299: Table column visibility toggle with localStorage persistence
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 22:00:22 +01:00
21efe28464 ver. 0.295: Admin order product editing — add/remove/modify products, AJAX search, stock adjustment
- Order product CRUD in admin panel (add, delete, edit quantity/prices)
- AJAX product search endpoint for order edit form
- Automatic stock adjustment when editing order products
- Transport cost recalculation based on free delivery threshold
- Fix: promo price = 0 when equal to base price (no real promotion)
- Clean up stale temp/ build artifacts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 19:30:38 +01:00
69e78ca248 ver. 0.294: Remove all 12 legacy autoload/shop/ classes (~2363 lines)
Complete Domain-Driven Architecture migration:
- Phase 1-4: Transport, ProductSet, Coupon, Shop, Search, Basket,
  ProductCustomField, Category, ProductAttribute, Promotion
- Phase 5: Order (~562 lines) + Product (~952 lines)
- ~20 Product methods migrated to ProductRepository
- Apilo sync migrated to OrderAdminService
- Production hotfixes: stale Redis cache (prices 0.00), unqualified
  Product:: refs in LayoutEngine, object->array template conversion
- AttributeRepository::getAttributeValueById() Redis cache added

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 02:05:39 +01:00
d2c9d97710 ver. 0.285: Tpl → Shared\Tpl namespace, CurlServer removal, thumb.php fix
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 00:13:59 +01:00
431add234c ver. 0.283: Legacy class cleanup — S, Html, Email, Image, Log, Mobile_Detect → Shared namespace
- Migrate class.S → Shared\Helpers\Helpers (140+ files), remove 12 unused methods
- Migrate class.Html → Shared\Html\Html
- Migrate class.Email → Shared\Email\Email
- Migrate class.Image → Shared\Image\ImageManipulator
- Delete class.Log (unused), class.Mobile_Detect (outdated UA detection)
- Remove grid library loading from admin (index.php, ajax.php)
- Replace gridEdit usage in 10 admin templates with grid-edit-replacement.php
- Fix grid-edit-replacement.php AJAX to send values as JSON (grid.js compat)
- Remove mobile layout conditionals (m_html/m_css/m_js) from Site + LayoutsRepository
- Remove \Log::save_log() calls from OrderAdminService, ShopOrder, Order

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 23:06:06 +01:00
0402dbee76 ver. 0.280: Articles frontend migration, class.Article removal, Settings facade cleanup
- Add 8 frontend methods to ArticleRepository (with Redis cache)
- Create front\Views\Articles (rendering + utility methods)
- Rewire front\view\Site::show() and front\controls\Site::route() to repo + Views
- Update 5 article templates to use \front\Views\Articles::
- Convert front\factory\Articles and front\view\Articles to facades
- Remove class.Article (entity + static methods migrated to repo + Views)
- Remove front\factory\Settings facade (already migrated)
- Fix: eliminate global $lang from articleNoindex(), inline page sort query
- Tests: 450 OK, 1431 assertions (+13 new)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 15:52:03 +01:00
c910982abf ver. 0.279: Newsletter frontend migration, Languages facade elimination, bug fix newsletter_unsubscribe
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 15:11:38 +01:00
c8469f4371 ver. 0.277: ShopProduct factory, Dashboard, Update migration, legacy cleanup, admin\App
- ShopProduct factory: full migration (~40 ProductRepository methods, ~30 controller actions)
- Dashboard: Domain+DI migration (DashboardRepository + DashboardController)
- Update: Domain+DI migration (UpdateRepository + UpdateController, template rewrite)
- Renamed admin\Site to admin\App, removed dead fallback routing
- Removed all legacy folders: admin/controls, admin/factory, admin/view
- Newsletter: switched from admin\factory\Articles to ArticleRepository
- 414 tests, 1335 assertions passing

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 01:06:29 +01:00
d012a694c2 ver. 0.276: ShopOrder migration, Integrations cleanup, global admin search 2026-02-15 16:41:48 +01:00
6c87e4615a refactor(shop_category): migrate admin module to Domain+DI with routing and ajax cleanup 2026-02-15 15:32:39 +01:00
df24da8915 ver. 0.274 - ShopClients Domain+DI migration 2026-02-15 15:03:24 +01:00
eb8e8fed36 ver. 0.274 - ShopProduct mass_edit + tree UI cleanup 2026-02-15 11:41:04 +01:00
3bac7616e7 ver. 0.273 - ShopProducer refactor + cleanup 6 factory facades
- Domain\Producer\ProducerRepository (CRUD + frontend)
- admin\Controllers\ShopProducerController (DI)
- Nowe widoki: producers-list, producer-edit (table-list/form-edit)
- shop\Producer -> fasada do ProducerRepository
- Przepiecie ShopProduct factory na TransportRepository
- Usuniete 6 pustych factory facades: Languages, Newsletter, Scontainers, ShopProducer, ShopTransport, Layouts
- Usuniete legacy: controls\ShopProducer, stare szablony
- Testy: 338 tests, 1063 assertions OK
2026-02-15 10:46:55 +01:00
fe51a1f4c4 ver. 0.272 - ShopProductSets refactor + update package
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 10:29:21 +01:00
e51ac7f82b ver. 0.271 - ShopAttribute refactor + update package 2026-02-14 21:12:17 +01:00
6543f8dc31 feat: Add Transport module with repository, controller, and views
- Implemented TransportRepository for managing transport data with methods for listing, finding, saving, and retrieving transport costs.
- Created ShopTransportController to handle transport-related actions, including listing, editing, and saving transports.
- Added views for transport management: transports list and transport edit forms.
- Introduced JavaScript for responsive tabs in transport edit view.
- Updated testing suite with comprehensive unit tests for TransportRepository and ShopTransportController.
- Increased test coverage with new assertions and scenarios for transport functionalities.
2026-02-14 20:16:18 +01:00
9c23e7f16b ver. 0.269: ShopPaymentMethod refactor + Apilo keepalive 2026-02-14 15:22:02 +01:00
847fdbbf3f refactor(shop-statuses): migrate to DI, restructure docs into docs/ folder (0.268)
- Migrate ShopStatuses module to Domain + DI architecture
- Add ShopStatusRepository, ShopStatusesController with color picker
- Convert front\factory\ShopStatuses to facade
- Add FormFieldType::COLOR with HTML5 color picker
- Move documentation files to docs/ folder (PROJECT_STRUCTURE, REFACTORING_PLAN, CHANGELOG, FORM_EDIT_SYSTEM, TESTING, DATABASE_STRUCTURE)
- Tests: 254 tests, 736 assertions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 10:43:31 +01:00
7574785d68 release 0.267: front layout/basket fixes and product redirect hardening 2026-02-14 00:56:09 +01:00
40e777afe6 refactor(shop-coupon): migrate admin module to DI and release 0.266 2026-02-14 00:05:23 +01:00
88e5673569 Release 0.265: ShopPromotion date_from and edit save fix 2026-02-13 22:44:07 +01:00
d824ba3909 Integrations DI refactor, remove Sellasist/Baselinker, fix product-edit encoding (0.263)
- New: Domain\Integrations\IntegrationsRepository + admin\Controllers\IntegrationsController (DI)
- Cleanup: removed all Sellasist and Baselinker integrations from entire project
- Fix: product-edit.php Polish characters (UTF-8/CP1250 double-encoding)
- Update: factory\Integrations as facade (Apilo + ShopPRO only)
- Tests: 212 tests, 577 assertions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 21:59:26 +01:00
67705f1f56 ver 0.262 - pages module refactor and admin UX fixes 2026-02-13 21:17:21 +01:00
5354f97baa Articles: finish admin refactor, uploads hardening, and attachment sorting (0.262) 2026-02-13 09:00:24 +01:00
42e4396064 Refactor Scontainers management
- Removed legacy Scontainers controller and view files, transitioning to a new controller structure.
- Introduced ScontainersController to handle CRUD operations with improved dependency injection.
- Created ScontainersRepository for database interactions, encapsulating logic for container management.
- Updated container edit and list views to utilize new templating system.
- Added unit tests for ScontainersRepository and ScontainersController to ensure functionality.
- Enhanced form handling for container editing, including validation and error management.
2026-02-12 23:54:56 +01:00
36fe8412e7 refactor articles_archive to DI controller and table-list 2026-02-12 23:53:05 +01:00
0ac74b6cf4 refactor newsletter module and disable prepare/user templates 2026-02-12 23:26:28 +01:00
76287923e8 refactor layouts module to domain/di and prepare 0.256 release 2026-02-12 22:54:47 +01:00
a02f718a41 refactor languages module to domain/controller and release 0.254 update package 2026-02-12 22:10:37 +01:00
2ecc4fd9be refactor users module to domain/controller and release 0.253 update package 2026-02-12 21:44:40 +01:00
f9f2ddd3bb Refactor admin lists and migrate legacy archive/filemanager controllers 2026-02-11 00:03:07 +01:00
fe4e98d9bd ver. 0.251 - migrate Dictionaries to Domain/Controller and remove legacy classes 2026-02-10 00:04:32 +01:00
926b6fcbca Release 0.249: banner edit fixes and thumbnail popup 2026-02-08 17:29:52 +01:00
0b80524d71 Release 0.248: auto-submit table filters on change 2026-02-08 02:04:08 +01:00
9a72d92e13 Release 0.247: improve delete confirmation dialog 2026-02-08 01:58:59 +01:00
bbf0c075b8 Release 0.246: migrate banners list to new table 2026-02-08 01:53:22 +01:00
d709a3df7b Release 0.245: refactor articles list and update package 2026-02-08 01:35:13 +01:00
f1c7019cc5 Refactor code structure for improved readability and maintainability 2026-02-06 01:45:58 +01:00
1c88f8adfa Add new settings and cache repository files, update admin settings controller and templates
- Introduced new `SettingsRepository` and `CacheRepository` classes in the `autoload\Domain` namespace.
- Updated `SettingsController` in the `admin\Controllers` namespace to enhance settings management.
- Added new templates for settings in `admin\templates\settings` and `admin\templates\site`.
- Improved overall structure and organization of settings-related files.
2026-02-05 23:32:48 +01:00
3a7be21432 Add new version 0.238 zip file containing updated ProductRepository and Product class files 2026-02-05 01:53:28 +01:00
43aebc166f Add new update package version 0.235 to autoload admin 2026-01-27 23:47:10 +01:00
Roman Pyrih
e31074506c NEW. Dodanie opcji typ pola własnego 2026-01-20 11:33:18 +01:00
9eecf6b415 Add new columns to producer and product language tables
- Added 'data' column to 'pp_shop_producer_lang' table for additional metadata storage.
- Added 'security_information' column to 'pp_shop_products_langs' table to enhance product security details.
2026-01-04 21:22:40 +01:00
d4fe312cb6 Refactor cookie handling for user authentication; implement secure payload structure and cleanup invalid cookies 2025-12-16 23:34:54 +01:00
290aa31aa7 Add two-factor authentication fields to pp_users table and update .htaccess for security
- Added columns for two-factor authentication (2FA) in the pp_users table:
  - twofa_enabled (TINYINT)
  - twofa_email (VARCHAR)
  - twofa_code_hash (VARCHAR)
  - twofa_expires_at (DATETIME)
  - twofa_sent_at (DATETIME)
  - twofa_failed_attempts (INT)
- Updated the twofa_enabled and twofa_email for user with id 0.
- Enhanced .htaccess to disable directory listing, block execution of sensitive files, and prevent serving hidden files.
2025-12-11 23:57:22 +01:00
a4300b2947 Refactor file manager key handling in article, banner, and producer edit templates; remove unnecessary .DS_Store files 2025-10-01 09:03:03 +02:00
d903f9fc55 Refactor code structure for improved readability and maintainability 2025-09-28 18:27:48 +02:00
ef15f16e18 Add is_required column to pp_shop_products_custom_fields table
This commit introduces a new column `is_required` to the `pp_shop_products_custom_fields` table. The column is of type TINYINT, cannot be null, and has a default value of 1. This change is intended to enhance the product custom fields by allowing the specification of whether a field is mandatory.
2025-08-19 20:31:44 +02:00
f9994cf644 Poprawiono obsługę wartości domyślnej oraz wpływu na cenę produktu, dodając warunki sprawdzające istnienie wartości przed ich użyciem. 2025-07-29 14:40:23 +02:00
e350f92f68 Zmieniono nazwę kolumny client_email na order_email w widoku zamówień oraz usunięto pliki .DS_Store. 2025-03-14 21:11:09 +01:00