# Customer Browse/Quick-Add Snippet

## Replace Customer Select Buttons

### Find Pattern 1 (with "New" button):
```php
<button type="button" class="btn btn-outline-theme" data-bs-toggle="modal" data-bs-target="#quickAddCustomerModal">
    <i class="bi bi-plus-circle"></i> New
</button>
```

### Find Pattern 2 (with plus icon):
```php
<button type="button" class="btn btn-outline-theme" data-bs-toggle="modal" data-bs-target="#quickAddCustomerModal">
    <i class="bi bi-plus-lg"></i> New
</button>
```

### Replace With:
```php
<button type="button" class="btn btn-outline-theme" data-bs-toggle="modal" data-bs-target="#customerBrowseModal" title="Browse Customers">
    <i class="bi bi-search"></i>
</button>
<button type="button" class="btn btn-outline-success" data-bs-toggle="modal" data-bs-target="#customerQuickAddModal" title="Quick Add Customer">
    <i class="bi bi-plus-lg"></i>
</button>
```

---

## Add Modals & Script (End of File)

### Find:
```php
<?php include BASE_PATH . '/views/partials/quick_add_company_modal.php'; ?>
```

### Replace With:
```php
<!-- Customer Browse & Quick-Add Modals -->
<div class="modal fade" id="customerBrowseModal" tabindex="-1" aria-hidden="true">
    <div class="modal-dialog modal-lg"><div class="modal-content"><div class="modal-header"><h5 class="modal-title">Browse Customers</h5><button type="button" class="btn-close" data-bs-dismiss="modal"></button></div><div class="modal-body"><div class="mb-3"><input type="text" class="form-control entity-search" placeholder="Search customers..."></div><div class="entity-list" style="max-height: 400px; overflow-y: auto;"><div class="text-center py-3"><div class="spinner-border" role="status"><span class="visually-hidden">Loading...</span></div></div></div></div><div class="modal-footer"><button type="button" class="btn-outline-secondary" data-bs-dismiss="modal">Close</button></div></div></div>
</div>
<div class="modal fade" id="customerQuickAddModal" tabindex="-1" aria-hidden="true">
    <div class="modal-dialog"><div class="modal-content"><div class="modal-header"><h5 class="modal-title">Quick Add Customer</h5><button type="button" class="btn-close" data-bs-dismiss="modal"></button></div><form><div class="modal-body"><?= csrf_field() ?><div class="mb-3"><label class="form-label">Company/Name <span class="text-danger">*</span></label><input type="text" name="company_name" class="form-control" required></div><div class="mb-3"><label class="form-label">First Name <span class="text-danger">*</span></label><input type="text" name="first_name" class="form-control" required></div><div class="mb-3"><label class="form-label">Last Name <span class="text-danger">*</span></label><input type="text" name="last_name" class="form-control" required></div><div class="mb-3"><label class="form-label">Email <span class="text-danger">*</span></label><input type="email" name="email" class="form-control" required></div><div class="mb-3"><label class="form-label">Phone</label><input type="text" name="phone" class="form-control"></div><input type="hidden" name="entity_type" value="customer"><div class="alert alert-danger d-none"></div><div class="alert alert-success d-none"></div></div><div class="modal-footer"><button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Cancel</button><button type="submit" class="btn btn-outline-success"><i class="bi bi-check-lg me-1"></i> Add Customer</button></div></form></div></div>
</div>
<script src="<?= base_url('js/entity-browser.js') ?>"></script>
<script>
initEntityBrowser({
    entityType: 'customers',
    selectElementId: 'customerSelect',
    browseModalId: 'customerBrowseModal',
    quickAddModalId: 'customerQuickAddModal',
    apiEndpoint: '<?= base_url('api/customers') ?>',
    quickAddEndpoint: '<?= base_url('customers/quick-add') ?>',
    displayFields: ['company_name', 'email', 'phone']
});
</script>
```

---

## Forms Completed

### ✅ Phase 1 - Supplier (6 forms):
1. `/accounting/assets/create.php`
2. `/accounting/assets/edit.php`
3. `/purchaseorders/create.php`
4. `/purchaseorders/edit.php`
5. `/purchasebills/create.php`
6. `/purchasereturns/create.php`

### ✅ Phase 2 - Customer (2/20 forms):
1. `/invoices/create.php`
2. `/salesorders/create.php`

### 🔄 Remaining Customer Forms (18):
3. `/invoices/edit.php`
4. `/quotes/general/create.php`
5. `/quotes/general/edit.php`
6. `/salesorders/edit.php`
7. `/battery_quotes/create.php`
8. `/battery_quotes/edit.php` (or `/quotes/battery/create.php`, `/quotes/battery/edit.php`)
9. `/sales/returns/create.php`
10. `/sales/returns/edit.php`
11. `/sales/delivery-notes/create.php`
12. `/shipments/create.php`
13. `/payments/create.php`
14. `/customer_payments/create.php`
15. `/projects/create.php`
16. `/projects/edit.php`
17. `/crm/contacts/create.php`
18. `/sales/pricing/create.php`
19. `/recurring/create.php`
20. `/recurring/edit.php`

---

**Total Progress: 8/26 forms complete (31%)**
**Phase 1 (Supplier): 100% Complete**
**Phase 2 (Customer): 10% Complete**
