# Horgok: entitások és szabad időpontok

> Az űrlapokra és admin oldalakra betöltött entitások, valamint a szabad időpontok számításának szűrői és műveletei.

Programozási ismeret kell hozzá, a támogatás csak általános tanácsot ad.

## Entitások

Az entitások (például szolgáltatások, munkavállalók, helyszínek) a foglalási űrlapokra és az admin oldalakra töltődnek be. Ezekkel a horgokkal módosíthatod őket, mielőtt visszaadná őket az Amelia.

| Horog | Típus | Mikor fut | Paraméter |
|---|---|---|---|
| `amelia_get_entities_filter` | szűrő | a visszaadás előtt, módosíthatod az entitásokat | `$entities` |
| `amelia_get_entities` | művelet | a visszaadás előtt | `$entities` |

```php
function example($entities)
{
    return $entities;
}

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

## Szabad időpontok

Ezekkel a horgokkal a szabad időpontok kiszámításához használt adatot módosíthatod, vagy saját kódot futtathatsz a számítás előtt és után.

| Horog | Típus | Mikor fut | Paraméterek |
|---|---|---|---|
| `amelia_before_get_timeslots_filter` | szűrő | a számítás előtt, a lekéréshez használt tulajdonságokat módosíthatod | `$props` |
| `amelia_before_get_timeslots` | művelet | a szabad időpontok kiszámítása előtt | `$props` |
| `amelia_get_timeslots_filter` | szűrő | a számítás után, a kiszámított időpontokat módosíthatod | `$resultData`, `$props` |
| `amelia_get_timeslots` | művelet | a számítás után | `$resultData`, `$props` |

```php
function example($props)
{
    // tulajdonságok módosítása
    return $props;
}

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

A számítás utáni két horog két paramétert kap, ezért a negyedik argumentum 2:

```php
function example($resultData, $props)
{
    // időpontok módosítása
    return $resultData;
}

add_filter('amelia_get_timeslots_filter', 'example', 10, 2);
```
