Add review step template for one page checkout module

- Introduced a new template file 'review copy.tpl' for the order summary step in the one page checkout process.
- The template includes a loading indicator and a header for the order summary section.
- Conditional rendering based on customer registration status is implemented.
This commit is contained in:
2026-02-27 00:04:16 +01:00
parent 2a98067d9e
commit 3fc0519f9d
61 changed files with 11187 additions and 13 deletions

View File

@@ -0,0 +1,34 @@
# Codebase Structure
```
interblue.pl/
├── admin658c34/ # Back-office admin panel (obfuscated folder name)
├── app/ # PrestaShop Symfony app (kernel, AppKernel)
├── classes/ # PrestaShop core classes
├── config/ # Configuration files (settings.inc.php, defines.inc.php, etc.)
├── controllers/ # PrestaShop core controllers
├── custom/ # Custom utility files (medoo.php, sollux.csv)
├── img/ # Images (products, categories, etc.)
├── mails/ # Email templates
├── modules/ # PrestaShop modules (~120+ modules)
├── override/ # Class & controller overrides
│ ├── classes/ # Overridden core classes (Product, Order, Hook, etc.)
│ └── controllers/ # Overridden front controllers
├── src/ # Symfony-based PrestaShop source
│ ├── Adapter/
│ └── Core/
├── themes/
│ ├── InterBlue/ # Active custom theme
│ └── classic/ # Default PS theme (base)
├── xml/ # XML configuration files
├── import-products.php # Sollux product importer
├── export.php # Product export
├── custom-cron.php # Custom cron tasks
└── NOTATKI.md # Developer notes
```
## Key Directories for Development
- **Custom modules**: `modules/customfeaturetab/`, `modules/dw_*`, `modules/addcolumninlist/`, `modules/sposoby_dostawy/`
- **Overrides**: `override/classes/`, `override/controllers/front/`
- **Theme**: `themes/InterBlue/`
- **Custom scripts**: Root-level PHP files (import-products.php, export.php, etc.)

View File

@@ -0,0 +1,39 @@
# interblue.pl - Project Overview
## Purpose
E-commerce store **interblue.pl** built on **PrestaShop 1.7.x**. The shop sells lighting products (Sollux Lighting and others). It integrates with multiple marketplaces (Allegro, Empik) and shipping providers (DPD, InPost, Poczta Polska, Geis, FedEx).
## Tech Stack
- **CMS/Framework**: PrestaShop 1.7.x (PHP, Symfony 3.x/4.x core)
- **Template Engine**: Smarty (front) + Twig (admin/back-office)
- **Database**: MySQL (via PrestaShop's `Db` class and ObjectModel ORM)
- **Front Theme**: Custom theme `InterBlue` (based on classic)
- **PHP**: 7.x+ (PrestaShop 1.7 compatible)
- **Additional lib**: Medoo (lightweight PHP database framework, used in custom scripts)
## Key Integrations
- **Marketplaces**: Allegro (x13allegro, marzaallegro), Empik (empikmarketplace)
- **Payments**: Przelewy24, imoje, paybynet, ps_cashondelivery, ps_checkpayment, ps_wirepayment
- **Shipping**: DPD Poland, InPost, Poczta Polska, FedEx, Geis, Paczka w Ruchu
- **Analytics**: Google Tag Manager (cdc_googletagmanager), Google Analytics 4 (pdgoogleanalytycs4pro), Google Merchant Center (pdgooglemerchantcenterpro)
- **Other**: Baselinker, Sendinblue (email marketing), eKomi reviews
## Custom Scripts (project root)
- `import-products.php` - Imports products from Sollux Lighting XML feed
- `export.php`, `export-csv.php` - Product export scripts
- `custom-cron.php`, `custom-script.php` - Custom cron/automation
- `google-merchant_id-1.xml` - Google Merchant feed
## Custom Modules (developed in-house)
- `customfeaturetab` - Custom Feature Tab with DB integration and AJAX
- `dw_promocyjne_produkty` - Promotional products
- `dw_promowane_produkty` - Promoted products
- `addcolumninlist` - Extra column in product list (BO)
- `AddOrderExtraFields` - Extra fields on orders
- `ordersextracolumns` - Extra columns in order list
- `sposoby_dostawy` - Delivery methods customization
## Override System
Active overrides in `override/`:
- Classes: Product, Combination, Dispatcher, Hook, Link, Media, FrontController, Order, OrderCarrier, OrderHistory, OrderInvoice, OrderPayment
- Controllers (front): Category, Cms, Manufacturer, Order, Product, Supplier

View File

@@ -0,0 +1,39 @@
# Code Style and Conventions
## General
- **Language**: PHP (PrestaShop conventions)
- **Comments/Notes**: Often in Polish (this is a Polish project)
- **No strict linting** - no PHPStan/Psalm/PHP-CS-Fixer configured for the project
## PrestaShop Module Conventions
- Module class extends `Module`
- Module file named same as module folder (e.g., `customfeaturetab/customfeaturetab.php`)
- Hooks: `hookDisplay*`, `hookAction*` methods
- Templates: Smarty `.tpl` files in `views/templates/`
- Admin controllers in `controllers/admin/`
- Front controllers in `controllers/front/`
## PrestaShop Override Conventions
- Override classes extend the original class
- Place in `override/classes/` or `override/controllers/`
- Must clear cache after adding overrides
## Custom Scripts
- Root-level PHP scripts include PrestaShop config via:
```php
include(dirname(__FILE__).'/config/config.inc.php');
include(dirname(__FILE__).'/init.php');
```
- Use `Tools::getValue()` for GET/POST parameters
- Use PrestaShop's `Db::getInstance()` for database queries
## Naming
- Module names: lowercase, no spaces (e.g., `customfeaturetab`)
- Database tables: `ps_` prefix (PrestaShop convention)
- Class names: PascalCase
- Variables/methods: camelCase (PrestaShop convention)
## Theme
- Active theme: `InterBlue` (customized classic theme)
- Templates: Smarty `.tpl` files
- Assets in `themes/InterBlue/assets/`

View File

@@ -0,0 +1,34 @@
# Suggested Commands
## System Commands (Windows with Git Bash)
- `git` - Version control
- `ls` / `dir` - List files
- `cd` - Change directory
- `grep` / `findstr` - Search in files
- `find` (Git Bash) - Find files
- `cat` - View file contents
## PrestaShop CLI
- `php bin/console` - Symfony console (PrestaShop 1.7+)
- `php bin/console cache:clear` - Clear Symfony cache
- `php bin/console debug:router` - List routes
## Cache Management
- Clear PrestaShop cache: Delete contents of `var/cache/` (prod & dev)
- In admin panel: Advanced Parameters > Performance > Clear cache
## Development
- No composer.json in repo root (PrestaShop modules may have their own)
- No automated tests configured in this project
- No linter/formatter configured
- FTP sync configured via `.vscode/ftp-kr.json` (deploy via FTP)
## Deployment
- Code is deployed via FTP (VS Code ftp-kr extension)
- No CI/CD pipeline configured
## Custom Scripts
- `php import-products.php?add=true` - Import new products from Sollux XML
- `php import-products.php?update=true` - Update existing products
- `php export.php` - Export products
- `php custom-cron.php` - Run custom cron tasks

View File

@@ -0,0 +1,29 @@
# Task Completion Checklist
When a task is completed, follow these steps:
## 1. Code Quality
- [ ] Code follows PrestaShop conventions (camelCase, Module class structure)
- [ ] No hardcoded values where configuration should be used
- [ ] SQL queries use PrestaShop's `Db` class with proper escaping (`pSQL()`, `(int)`)
- [ ] Comments in Polish or English (match surrounding code)
## 2. Cache
- [ ] If overrides were added/changed: remind user to clear PrestaShop cache
- [ ] If Smarty templates changed: cache clear may be needed
## 3. Deployment
- [ ] Files ready to be synced via FTP (ftp-kr)
- [ ] No sensitive data (passwords, API keys) committed
## 4. Git
- [ ] Changes committed with descriptive message
- [ ] No unnecessary files staged (.vscode cache files excluded)
## 5. Testing
- [ ] No automated tests in this project - manual testing required
- [ ] Remind user to test in browser after FTP sync
## Notes
- Admin panel folder: `admin658c34/` (obfuscated name)
- empikmarketplace module can override product list view in BO (see NOTATKI.md)