Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| cs:api [2025/03/03 00:31] – admin | cs:api [2025/04/05 13:49] (aktuální) – [Jak vložit formulář do WordPress (nebo jiného CMS)] admin | ||
|---|---|---|---|
| Řádek 1: | Řádek 1: | ||
| - | ====== | + | ====== |
| - | LARP Builder poskytuje | + | LARP Builder poskytuje endpoint **Players**, který |
| Pro přístup k API je vyžadována autorizace. Jsou podporovány dva hlavní mechanismy: | Pro přístup k API je vyžadována autorizace. Jsou podporovány dva hlavní mechanismy: | ||
| - **API klíč (API Key)**: Každý projekt v LARP Builderu má vlastní API klíč. Ten musí být součástí každého požadavku (v hlavičce, formulářových datech či JSONu). | - **API klíč (API Key)**: Každý projekt v LARP Builderu má vlastní API klíč. Ten musí být součástí každého požadavku (v hlavičce, formulářových datech či JSONu). | ||
| - | - **Ověření zdroje požadavku (Origin)**: Server kontroluje, z jaké domény požadavek přichází. Pokud doména není povolená v nastavení projektu, server volání odmítne (//CORS a bezpečnost// | + | - **Ověření zdroje požadavku (Origin)**: Server kontroluje, z jaké domény požadavek přichází. Pokud doména není povolená v nastavení projektu, server volání odmítne (//CORS a bezpečnost// |
| - **(Volitelně) Basic Auth**: Pro přístup k některým citlivějším částem API (nebo pro volání z nástrojů jako Postman) je vyžadováno přihlášení administrátora (email a heslo). Tento způsob umožňuje serveru ověřit, že uživatel má dostatečná práva k projektu. | - **(Volitelně) Basic Auth**: Pro přístup k některým citlivějším částem API (nebo pro volání z nástrojů jako Postman) je vyžadováno přihlášení administrátora (email a heslo). Tento způsob umožňuje serveru ověřit, že uživatel má dostatečná práva k projektu. | ||
| ====== Použití API na stránkách akce (HTML kód) ====== | ====== Použití API na stránkách akce (HTML kód) ====== | ||
| - | Součástí integrace je použití **Players** endpointu | + | Níže je ukázka |
| - | + | ||
| - | **Princip formuláře** | + | |
| - | V HTML formuláři se vyplní údaje o hráči (jméno, příjmení, | + | |
| <code html> | <code html> | ||
| Řádek 26: | Řádek 23: | ||
| <!-- ... další předdefinovaná nepovinná pole ... --> | <!-- ... další předdefinovaná nepovinná pole ... --> | ||
| - | <label for=" | + | |
| - | <select name=" | + | |
| - | < | + | |
| - | <option value=" | + | |
| - | </select> | + | |
| - | | + | |
| - | <textarea | + | <input type="hidden" |
| + | | ||
| + | <input type=" | ||
| + | | ||
| - | | + | |
| - | < | + | </form> |
| - | | + | <!-- Potřebné skripty --> |
| - | <input type="number" | + | <script src="https:// |
| + | <script src="https:// | ||
| + | </ | ||
| - | <label for="size_breast">Obvod hrudi</ | + | **Poznámka: |
| - | | + | - `api_key` |
| + | - V LARP Builderu je nutné **přidat doménu** vašich stránek mezi povolené (např. `mojedomena.cz`), | ||
| + | - Pokud chcete aby formulář napsal že registrace porběhla úspěšně či neúspěšně nastavte hodnotu | ||
| + | - Můžete zmenit také jazyk jakým bude formulář odpovídat změněním cs v parametru lang jazyky na výběr jsou cs: čeština, en: angličtina, | ||
| + | - Parametr form_submit říká zda se má po odeslání do LB API formulář snažit o odeslání také jako by šlo oběžný formulář na stránkách (vhodné třeba pro další zpracování formulářových dat do vlastní databáze) | ||
| - | <label for=" | + | **Jak to funguje: |
| - | < | + | - JavaScript v `apiControl.js` zachytí odeslání formuláře, |
| + | - Server zkontroluje, | ||
| - | <label for=" | + | ====== |
| - | <input type=" | + | V sekci **Seznam formulářů** je u již vytvořených formulářů k dispozici akce **Zobrazit HTML kód**, která automaticky generuje kompletní embed kód formuláře na základě uložených dat. Tento kód obsahuje kompletní HTML dokument s inline styly, speciálními typy polí jako je **scale** (bodovací škála), **paragraph** (odstavec) či **button** (tlačítko) a skrytými poli s aktuálním API klíčem který je uložitelný jako samostatná .html stránka nebo vložitelný například do Wordpressu bez nutnosti se více starat o HTML kód. |
| - | <label for=" | + | === Výhody |
| - | <select name=" | + | - **Samostatnost: |
| - | < | + | - **Aktualizace: |
| - | <option value=" | + | - **Kompatibilita: |
| - | <option value=" | + | - **Jednoduchost: |
| - | <option value=" | + | |
| - | < | + | |
| - | < | + | |
| - | < | + | |
| - | < | + | |
| - | <option value=" | + | |
| - | <option value=" | + | |
| - | <option value=" | + | |
| - | <option value=" | + | |
| - | <option value=" | + | |
| - | <option value=" | + | |
| - | </ | + | |
| - | <label for=" | + | ====== Jak vložit formulář do WordPress (nebo jiného CMS) ====== |
| - | <select name=" | + | Pokud chcete snadno vložit vygenerovaný HTML kód formuláře do WordPressu, stačí postupovat následovně: |
| - | < | + | |
| - | <option value=" | + | |
| - | <option value=" | + | |
| - | </ | + | |
| - | <label for=" | + | **Zkopírujte embed kód: |
| - | <input type=" | + | |
| - | | + | |
| - | <!-- Skrytá povinná pole s API klíčem a dalšími parametry --> | + | **Vložte kód do příspěvku: |
| - | <input type=" | + | |
| - | <input type=" | + | |
| - | <input type=" | + | |
| - | <input type=" | + | |
| - | <button type=" | + | **Uložte a publikujte:** Uložte změny a publikujte příspěvek. Formulář by se měl zobrazit přesně tak, jak byl vygenerován – s vlastními styly a funkcemi pro odeslání dat přes API. |
| - | </ | + | |
| - | <script src=" | + | |
| - | <script src=" | + | |
| - | </ | + | |
| - | Důležité je, aby vaše doména | + | ** Otestování**: |
| + | |||
| + | Tento postup nevyžaduje žádné složité nastavení ani zásahy do šablony. Stačí zkopírovat hotový kód a vložit jej na stránku. WordPress se postará o zobrazení kódu bez zásahu do dalších souborů či nastavení. | ||
| + | |||
| + | **Tip:** Pokud se kód HTML a `< | ||
| + | |||
| + | ===== Kde získám API klíč ===== | ||
| + | - V administraci | ||
| + | - Přejděte do sekce // | ||
| + | - Najděte **API klíč** (obvykle v dolní části nastavení) a zkopírujte jej. | ||
| + | - Zároveň v této sekci přidejte // | ||
| ====== Použití API v Postmanu ====== | ====== Použití API v Postmanu ====== | ||
| Řádek 101: | Řádek 88: | ||
| - **Autorizace**: | - **Autorizace**: | ||
| - V //Headers// přidejte: '' | - V //Headers// přidejte: '' | ||
| - | - Pokud voláte z Postmanu a nechcete řešit povolenou doménu, | + | - Pokud voláte z Postmanu a nechcete řešit povolenou doménu, |
| - **Očekávaný výsledek**: | - **Očekávaný výsledek**: | ||
| Řádek 114: | Řádek 101: | ||
| - **URL**: '' | - **URL**: '' | ||
| - **Tělo**: JSON (//raw body - application/ | - **Tělo**: JSON (//raw body - application/ | ||
| - | - **Hlavičky**: | + | - **Hlavičky**: |
| - **Očekávaný výsledek**: | - **Očekávaný výsledek**: | ||
| Řádek 128: | Řádek 115: | ||
| ====== Závěr ====== | ====== Závěr ====== | ||
| API LARP Builderu pro **Players** vám umožní integrovat správu hráčů do vlastních stránek a nástrojů. Základem je **API klíč** a volání z povolené domény (nebo Basic Auth pro administrátory). | API LARP Builderu pro **Players** vám umožní integrovat správu hráčů do vlastních stránek a nástrojů. Základem je **API klíč** a volání z povolené domény (nebo Basic Auth pro administrátory). | ||
| - | Při implementaci se zaměřte na: | ||
| - | - Správné nastavení hlaviček ('' | ||
| - | - Ošetření chybových stavů, | ||
| - | - Bezpečné ukládání API klíče (neprozrazujte jej veřejně). | ||
| - | Doporučujeme nejprve vše otestovat v Postmanu | + | **Stručný postup**: |
| + | - V administraci LARP Builderu: Získat API klíč a **přidat doménu** mezi povolené. | ||
| + | - Na svém webu (např. WordPress): Vložit HTML formulář s `api_key` a připojit JavaScript `apiControl.js`. | ||
| + | - Otestovat funkčnost | ||
| + | |||
| + | Po úspěšném odeslání se v LARP Builderu objeví nově přidaný hráč. Pokud narazíte na potíže, | ||