# Horgok: csomagok és csomagvásárlások

> A csomagok és a csomagvásárlások (foglalás, státuszváltás, törlés) szűrői és műveletei.

Két horogcsoport tartozik ide: a csomagok maguk, és a vásárlók csomagvásárlásai. Programozási ismeret kell hozzá, a támogatás csak általános tanácsot ad.

## Csomagok

| Horog | Típus | Mikor fut | Paraméter |
|---|---|---|---|
| `amelia_before_package_added_filter` | szűrő | a hozzáadás előtt, módosíthatod az adatot | `$package` |
| `amelia_before_package_added` | művelet | a hozzáadás előtt | `$package` |
| `amelia_after_package_added` | művelet | a hozzáadás után | `$package` |
| `amelia_before_package_updated_filter` | szűrő | a módosítás előtt, módosíthatod az adatot | `$package` |
| `amelia_before_package_updated` | művelet | a módosítás előtt | `$package` |
| `amelia_after_package_updated` | művelet | a módosítás után | `$package` |
| `amelia_get_packages_filter` | szűrő | a csomagok admin oldali lekérése előtt, módosíthatod a listát | `$packages` |
| `amelia_get_packages` | művelet | az admin oldali lekérés előtt | `$packages` |
| `amelia_before_package_deleted` | művelet | a törlés előtt | `$package` |
| `amelia_after_package_deleted` | művelet | a törlés után | `$package` |

```php
function example($package)
{
    // csomagadat módosítása
    return $package;
}

add_filter('amelia_before_package_added_filter', 'example', 10, 1);
```

## Csomagvásárlások

| Horog | Típus | Mikor fut | Paraméterek |
|---|---|---|---|
| `amelia_before_package_customer_added_filter` | szűrő | a vásárlás rögzítése előtt, módosíthatod az adatot | `$packageCustomer` |
| `amelia_before_package_customer_added` | művelet | a vásárlás rögzítése előtt | `$packageCustomer` |
| `amelia_after_package_booked_frontend` | művelet | miután a csomagot a foglalási űrlapon foglalták le | `$packageCustomer` |
| `amelia_after_package_booked_backend` | művelet | miután a csomagot az admin felületen foglalták le | `$packageCustomer` |
| `amelia_before_package_customer_status_updated` | művelet | a vásárlás státuszának módosítása előtt | `$packageCustomer`, `$status` |
| `amelia_after_package_customer_status_updated` | művelet | a státusz módosítása után | `$packageCustomer`, `$status` |
| `amelia_before_package_customer_deleted` | művelet | a vásárlás törlése előtt | `$packageCustomer` |
| `amelia_after_package_customer_deleted` | művelet | a vásárlás törlése után | `$packageCustomer` |
| `amelia_before_package_booking_deleted` | művelet | egy csomagfoglalás admin felületen történő törlése előtt | `$appointment`, `$removedBooking` |
| `amelia_after_package_booking_deleted` | művelet | a csomagfoglalás törlése után | `$appointment`, `$removedBooking` |

A két paraméteres horgoknál a `add_action` negyedik argumentuma 2:

```php
function example($packageCustomer, $status)
{
    // saját kód
}

add_action('amelia_after_package_customer_status_updated', 'example', 10, 2);
```
