# Teendők az űrlap beküldése után

> A wpbs_submit_form_end művelet: foglalási adatok átadása külső rendszernek vagy API-nak.

Ha a foglalás adatait át akarod adni egy másik rendszernek, vagy egy API-t akarsz meghívni, kapcsolódj az űrlap beküldését lezáró művelethez.

## Szintaxis

```php
add_action('wpbs_submit_form_end', 'a_te_fuggvenyed', 10, 1);
```

A függvény egy paramétert kap: az újonnan létrejött foglalás azonosítóját. A kódot a (gyermek)sablonod `functions.php` fájljába írd.

## Példa: foglalási adatok kiolvasása

A példa kiolvassa a foglalás főbb adatait, az űrlapmezők értékeit és a fizetést, majd átadhatod őket egy külső szolgáltatásnak.

```php
add_action('wpbs_submit_form_end', function ($booking_id) {

    $booking     = wpbs_get_booking($booking_id);
    $start_date  = $booking->get('start_date');
    $end_date    = $booking->get('end_date');
    $calendar_id = $booking->get('calendar_id');
    $form_id     = $booking->get('form_id');
    $fields      = $booking->get('fields');
    $payment     = wpbs_get_payment_by_booking_id($booking_id);

    foreach ($fields as $field) {
        if ($field['id'] == 2) {
            $first_name = wpbs_get_field_value($field);
        }
        if ($field['id'] == 4) {
            $email_address = wpbs_get_field_value($field);
        }
    }

    $line_items = $payment->get_line_items();

    // Hívd meg az API-t, és add át a szükséges adatokat
});
```

A mezők azonosítóit (a példában 2 és 4) a saját űrlapod mezői szerint kell megadnod.

## Példa: AffiliateWP-integráció

A példa az AffiliateWP konverziós szkriptjét hívja meg a foglalás összegével.

```php
add_action('wpbs_submit_form_end', function ($booking_id) {

    $payment = wpbs_get_payment_by_booking_id($booking_id);

    $total = $payment ? $payment->get_total() : 0;

    do_shortcode('[affiliate_conversion_script amount="' . $total . '" description="Foglalás #' . $booking_id . '" context="WP Booking System foglalás" reference="' . $booking_id . '" status="pending" type="lead"]');

});
```
