Release version 1.2.4 - Fix admin table borders and checkbox layout

Fixed:
- Admin table borders still visible despite v1.2.3 fix - added !important flags
- Help icon positioning at right edge instead of next to label - changed to flexbox layout
- Increased checkbox margin from 8px to 12px for better spacing

Technical:
- Added border-collapse: collapse !important to force borderless tables
- Changed label layout from float to inline-flex for proper help-tip positioning
- Added comprehensive border removal with !important on all table elements

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-30 00:02:34 +01:00
parent 3d47ee63d8
commit 937e80fce3
5 changed files with 91 additions and 16 deletions

View File

@@ -1,7 +1,7 @@
# WooCommerce Tier and Package Prices - AI Context Document
**Last Updated:** 2025-12-29
**Current Version:** 1.2.3
**Current Version:** 1.2.4
**Author:** Marco Graetsch
**Project Status:** Production-ready WordPress plugin
@@ -13,6 +13,7 @@ This is a WooCommerce plugin that adds flexible pricing capabilities to products
2. **Package Pricing (Fixed Bundles)**: Exact quantity packages at fixed prices (e.g., exactly 10 items for $95, exactly 25 for $200)
### Key Fact: 100% AI-Generated
This project is proudly **"vibe-coded"** using Claude.AI - the entire codebase was created through AI assistance.
## Technical Stack
@@ -27,6 +28,7 @@ This project is proudly **"vibe-coded"** using Claude.AI - the entire codebase w
- **Internationalization:** WordPress i18n (.pot/.po/.mo files)
### Dependencies
```json
{
"twig/twig": "^3.0",
@@ -38,7 +40,8 @@ This project is proudly **"vibe-coded"** using Claude.AI - the entire codebase w
## Architecture
### Directory Structure
```
```txt
wc-tier-and-package-prices/
├── wc-tier-and-package-prices.php # Main plugin file (entry point)
├── includes/ # PHP classes
@@ -172,6 +175,7 @@ wc-tier-and-package-prices/
### Price Calculation Logic
**Package Pricing** (exact match):
```php
// In cart: if quantity == 10 and package exists for 10, use package price
if ($quantity == $package['qty']) {
@@ -181,6 +185,7 @@ if ($quantity == $package['qty']) {
```
**Tier Pricing** (range-based):
```php
// In cart: if quantity >= 10, use tier price for quantities 10+
foreach ($tiers as $tier) {
@@ -226,7 +231,9 @@ This metadata is used by display filters to show "(Package price)" or "(Volume d
## Common Patterns & Conventions
### Class Instantiation Pattern
All classes auto-instantiate at the end of their file:
```php
if (!class_exists('WC_TPP_Frontend')) {
class WC_TPP_Frontend {
@@ -247,7 +254,9 @@ new WC_TPP_Frontend(); // Auto-instantiate
- Direct file access prevention via `ABSPATH` check
### Translation Ready
All user-facing strings use:
```php
__('Text to translate', 'wc-tier-package-prices')
_e('Text to translate', 'wc-tier-package-prices')
@@ -270,6 +279,7 @@ Note: Swiss locales use CHF currency formatting in examples (e.g., "CHF 50.-")
## Known Issues & Historical Context
### Settings Page Duplication Saga (v1.1.15-1.1.19)
Multiple versions attempted to fix settings page appearing twice:
- **Root cause:** Settings file auto-instantiation + Composer autoloader
@@ -277,6 +287,7 @@ Multiple versions attempted to fix settings page appearing twice:
- **Prevention:** Singleton pattern + duplicate detection in array
### Class Redeclaration Issues (v1.1.8-1.1.14)
Plugin was completely non-functional:
- **Cause:** Incorrect initialization pattern without `class_exists()` guards
@@ -284,7 +295,8 @@ Plugin was completely non-functional:
- **Lesson:** Always wrap class declarations in `class_exists()` checks
### WooCommerce Blocks Fatal Error (v1.1.19 → v1.1.20)
```
```txt
Fatal error: Cannot use object of type WC_Product_Simple as array
Location: includes/class-wc-tpp-cart.php:233
```
@@ -296,6 +308,7 @@ Location: includes/class-wc-tpp-cart.php:233
## Release Process
### Version Bumping
Update version in 3 places:
1. `wc-tier-and-package-prices.php` - Plugin header comment (line 7)
@@ -468,6 +481,7 @@ When making changes, test these critical paths:
### Common Pitfalls and Solutions
#### Release Package Creation
**Problem:** Empty or corrupted zip files (0 bytes or wrong structure)
**Cause:** Running zip command from wrong directory or incorrect path patterns
**Solution:** Always run from parent directory (`/home/magdev/workspaces/node`) and use full relative paths in exclusions
@@ -481,7 +495,9 @@ When making changes, test these critical paths:
**Solution:** Follow verification steps and check package size immediately after creation
#### UI Changes in Admin
**WooCommerce CSS Classes:**
- `short` - Small input fields (~60px width)
- `regular` - Medium input fields (~120px width)
- `long` - Large input fields (~200px+ width)
@@ -491,6 +507,7 @@ When modifying admin input fields in Twig templates, use WooCommerce's standard
**Location:** `templates/admin/*.twig` for admin UI changes
#### Git Workflow Issues
**Problem:** Cannot rebase due to uncommitted changes
**Solution:** Stash local config files (`.claude/settings.local.json`) before git operations
@@ -624,6 +641,12 @@ Roadmap for the upcoming development.
2. ~~The checkbox styles from 1.2.2 bug 3 are still not looking correct. The helptext is written instead of hidden after the help icon and the margin between checkbox and label are to small.~~**FIXED in v1.2.3** - Added `desc_tip => true` to variation checkbox to show tooltip instead of inline text. Added CSS rules to increase checkbox-label margin (8px) and hide inline description text when tooltip is used.
##### Bugfixes (Completed in v1.2.4)
1. ~~Bug 1 in v1.2.3 is not fixed. Now both table display have border again. they shouldn't have border.~~**FIXED in v1.2.4** - Added `!important` flags and `border-collapse: collapse` to table CSS to override WooCommerce's default table styling. Added comprehensive border removal for all table elements (table, thead, tbody, tr, th, td) to ensure truly borderless tables across all browsers.
2. ~~Bug 2 in v1.2.3: Increase the margin between checkbox and label and put the help icon right next to the label, not at the right border~~**FIXED in v1.2.4** - Increased checkbox right margin from 8px to 12px. Repositioned help tip icon to display inline right next to the label text using flexbox layout with `display: inline-flex`, removing float positioning that caused it to appear at the right edge.
##### New Features
1. Create different, selectable templates for tierprices and packages to use in the frontend. Make the new templates selectable globally on the settings-page, not per product.
@@ -660,7 +683,7 @@ Roadmap for the upcoming development.
## File Locations Quick Reference
| Task | File(s) |
|------|---------|
| ------ | --------- |
| Change version | `wc-tier-and-package-prices.php` (2 places) |
| Add global setting | `includes/class-wc-tpp-settings.php` |
| Modify product meta box | `includes/class-wc-tpp-product-meta.php` + `templates/admin/*.twig` |
@@ -700,7 +723,7 @@ Roadmap for the upcoming development.
## Support & Resources
- **Repository:** https://src.bundespruefstelle.ch/magdev/wc-tier-package-prices
- **Repository:** <https://src.bundespruefstelle.ch/magdev/wc-tier-package-prices>
- **Documentation:** See `README.md`, `QUICKSTART.md`, `USAGE_EXAMPLES.md`, `INSTALLATION.md`
- **Changelog:** `CHANGELOG.md` (detailed version history)
- **Issue Tracking:** Check fatal-errors-*.log files for production errors