# Header Consolidation - Detailed Comparison
Visual side-by-side comparison of the consolidated header system.
---
## File Structure
### Before (Duplicated Code)
```
header01.php (400 lines) ─┐
├─ 280 lines DUPLICATE
header02.php (400 lines) ─┘
┌─ 120 lines DIFFERENT
Total: 800 lines | Duplication: 70%
```
### After (Consolidated)
```
header.php (300 lines) ┐
header_config.php (100 lines) ├─ Zero duplication
┘
Total: 400 lines | Duplication: 0%
```
---
## Configuration Comparison
### Variant 01 Configuration
```php
$header_config['01'] = [
// Style
'header_class' => 'header-one white-menu menu-absolute',
'header_bg_class' => '', // Transparent
'welcome_text_color' => '#fff', // White text
'shadow_style' => '0px 8px 16px rgba(0, 0, 0, 0.1)',
// Assets
'logo_image' => 'assets/images/logos/logo.png',
'logo_mobile_image' => 'assets/images/logos/logo.png',
// Features
'trip_submenu' => true, // Full submenu
'member_area_menu' => true, // Show to members
// Security
'include_security_headers' => true, // HTTPS headers
'include_csrf_service' => true, // CSRF tokens
// CSS
'extra_css_files' => ['header_css.css'],
'style_css_version' => '?v=1',
];
```
### Variant 02 Configuration
```php
$header_config['02'] = [
// Style
'header_class' => 'header-one',
'header_bg_class' => 'bg-white', // White background
'welcome_text_color' => '#111111', // Dark text
'shadow_style' => '2px 2px 5px 1px rgba(0, 0, 0, 0.1), -2px 0px 5px 1px rgba(0, 0, 0, 0.1)',
// Assets
'logo_image' => 'assets/images/logos/logo-two.png',
'logo_mobile_image' => 'assets/images/logos/logo-two.png',
// Features
'trip_submenu' => false, // Simplified menu
'member_area_menu' => false, // Hidden
// Security
'include_security_headers' => false, // No headers
'include_csrf_service' => false, // No CSRF
// CSS
'extra_css_files' => [
'https://fonts.googleapis.com/icon?family=Material+Icons',
'assets/css/jquery-ui.min.css',
'https://cdn.jsdelivr.net/npm/aos@2.3.4/dist/aos.css',
],
'style_css_version' => '',
'extra_styles' => true, // Banner styles
];
```
---
## Visual Differences
### Header Class Comparison
| Aspect | Variant 01 | Variant 02 |
|--------|-----------|-----------|
| Header Class | `header-one white-menu menu-absolute` | `header-one` |
| Background | Transparent (no bg class) | White (`bg-white`) |
| Logo | `logo.png` (white) | `logo-two.png` (dark) |
| Text Color | White (#fff) | Dark (#111111) |
| Menu Style | Absolute positioned overlay | Sticky/normal |
### Visual Rendering
**Variant 01:**
```
┌────────────────────────────────────────────┐
│ [LOGO] [HOME] [ABOUT] [TRIPS ▼] ... [LOGIN]│ ← White text
└────────────────────────────────────────────┘
(Transparent/overlay background)
```
**Variant 02:**
```
┌────────────────────────────────────────────┐
│ [LOGO] [HOME] [ABOUT] [TRIPS] ... [LOGIN]│ ← Dark text
└────────────────────────────────────────────┘
(White background)
```
---
## Feature Matrix
| Feature | Variant 01 | Variant 02 |
|---------|-----------|-----------|
| **Header Styling** | | |
| - White menu | ✅ | ❌ |
| - Transparent background | ✅ | ❌ |
| - White background | ❌ | ✅ |
| | | |
| **Navigation** | | |
| - Full trips submenu | ✅ | ❌ |
| - Tour List link | ✅ | ❌ |
| - Tour Grid link | ✅ | ❌ |
| - Members Area menu | ✅ | ❌ |
| | | |
| **Styling** | | |
| - HTTPS enforcement | ✅ | ❌ |
| - Security headers | ✅ | ❌ |
| - CSRF tokens | ✅ | ❌ |
| - Simple shadow | ✅ | ❌ |
| - Enhanced shadow | ❌ | ✅ |
| - Page banner styles | ❌ | ✅ |
| | | |
| **External Libraries** | | |
| - Material Icons | ❌ | ✅ |
| - jQuery UI | ❌ | ✅ |
| - AOS (animations) | ❌ | ✅ |
| - Version param on CSS | ✅ | ❌ |
---
## Code Reduction Examples
### Example 1: Logo Implementation
**Before (Two Files):**
```php
// header01.php
// header02.php
```
**After (Single File with Config):**
```php
// header.php
// header_config.php
'01' => ['logo_image' => 'assets/images/logos/logo.png'],
'02' => ['logo_image' => 'assets/images/logos/logo-two.png'],
```
**Lines Saved:** 2 lines → 1 line logic (config-driven)
### Example 2: Welcome Text Color
**Before (Two Files):**
```php
// header01.php
Welcome,
// header02.php
Welcome,
```
**After (Single File with Config):**
```php
// header.php
Welcome,
// header_config.php
'01' => ['welcome_text_color' => '#fff'],
'02' => ['welcome_text_color' => '#111111'],
```
**Lines Saved:** 2 files with duplication → 1 line logic (config-driven)
### Example 3: Conditional Menus
**Before (Two Files):**
```php
// header01.php