> For the complete documentation index, see [llms.txt](https://flexbook.gitbook.io/integracni-manual/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://flexbook.gitbook.io/integracni-manual/javascript-komponenty/flbprofile.md).

# flbProfile

Zobrazí element pro registraci a přihlášení uživatele. Po přihlášení umožňuje zobrazení rezervací uživatele, update uživatelského profilu a změnu hesla. Nezná-li existující uživatel heslo, může si jej nechat odmailovat. Button pro odmailování zapomenutého hesla se zobrazí po prvním neúspěšném pokusu o login.

**Volitelné parametry:**

* **center**: je integer hodnota, identifikující konkrétní středisko poskytovatele. Identifikátory středisek je možné dohledat v back-officu rezervačního systému FlexBook. Pomocí tohoto parametru lze omezit zobrazení rezervací nalogovaného uživatele na rezervace z konkrétního střediska poskytovatele.
* **buttons**: pole definující viditelná funkční tlačítka v komponentě. V případě, že parameter není použit, tak se zobrazují všechna implementovaná tlačítka.
  * Možné hodnoty: \['login', 'sendPassword', 'registration', 'reservation', 'profile', 'credit', 'password', 'logout', 'reservationBack']
  * Default: buttons:\['login', 'sendPassword', 'registration', 'reservation', 'profile', 'credit', 'password', 'logout', 'reservationBack']
  * Popis funkcí jednotlivých tlačítek komponenty:&#x20;
    * Nenalogovaný uživatel
      * 'login' - tlačítko umožňující přihlášení uživatele&#x20;
      * 'registration' - tlačítko umožňující registraci nového uživatele a vytvoření FlexBook účtu
      * 'sendPassword'
    * Nalogovaný uživatel - tlačítka v hlavní liště
      * 'reservation' - zobrazení záložky se seznamem rezervací
      * 'credit' - tlačítko v hlavní liště umožňující zobrazení záložky s informacemi o kreditu a žurnál finančních transakcí
      * 'profile' - zobrazení záložky s profilem uživatele
      * 'password' - zobrazení záložky umožňující změnu hesla
      * 'logout' -  odhlášení nalogovaného uživatele
    * Nalogovaný uživatel - tlačítka v záložkách
      * 'reservationBack' - tlačítko ZPĚT v záložce seznam rezervací
* **externalAccount**: zapíná/vypíná možnost přihlášení přes twitter/facebook/google
  * Možné hodnoty: 0,1
  * Default: 0
* **hideAdvertising** : zapíná/vypíná zobrazení checkboxu o zasílání reklamních sdělení v profilu uživatele.
  * Možné hodnoty: 0,1
  * Default: 0
* **checkAttributeMandatory**: komponenta kontroluje jestli má uživatel vyplněné mandatorní uživatelské atributy a v případě že ne, pak je vyžaduje vyplnit, jinak nedokončí login proces.
  * Možné hodnoty: 0,1
  * Default: 1
  * Pozn.: Při použití hodnoty 1 se kontrola provádí
* **showAttribute**: pole definující viditelné rozšířené uživatelské atributy u profilu uživatele. Rovněž se tím definuje kontrola mandatorních atributů, jelikož kontrola se provádí pouze u viditelných atributů. V případě, že parameter není použit, tak se zobrazí všechny kategorie atributů.
  * Možné hodnoty: kategorie rozšířených uživatelských atributů
  * Default: zobrazují se všechny
  * Příklad: showAttribute: \['Personal','Preferences']
* **extraDiv**: zapíná/vypíná zobrazení obsahu dalších akcí profilu do pop-up divu uprostřed web browseru a rendruje výstupy z buttonů do separátního DIVu, který je standardním FlexBook CSS stylem zobrazen uprostřed obrazovky nad obsahem původní stránky.
  * Možné hodnoty: 0,1, 'all'
  * Default: 0
  * Pozn.: Při použití hodnoty 1 je zobrazen přihlašovací formulář a veškerý rendering se provádí do separátního DIVu. Při použití hodnoty "all" se nezobrazuje přihlašovací formulář, ale pouze tlačítko pro přihlášení a veškerý rendering se opět provádí do separátního DIVu.
* **disablePast**: zakazuje zobrazení historických rezervací
  * Možné hodnoty: 0,1
  * Default: 0
  * Pozn.: Při použití hodnoty 1 se nezobrazí checkbox pro zobrazení historických rezervací
* **hideAdvertising**: zakazuje zobrazení souhlasu se zasíláním obchodních sdělení
  * Možné hodnoty: 0,1
  * Při použití hodnoty 1 se nezobrazí checkbox pro zasílání obchodních sdělení a neuděluje se souhlas
* **loggedTemplate:**  šablona textu nalogovaného uživatele
  * Příklad: loggedTemplate : '\<span>@@USER\_NAME (@@USER\_EMAIL)\</span>'

**Příklad 1:**

```
flbInit('https://www.flexbook.cz/ajax.php', 4, 
[ 
{  
  type: 'flbProfile',  
  placeHolder: 'profile',
  params: { 
            language: 'cz',
            format: { 
              datetime: 'd.m. H:i',
              time: 'H:i'
            }, 
            extraDiv: 'all', 
            externalAccount: 1,
            disablePast: 1,  
            hideAdvertising: 1
          }
} 
]);
```

**Příklad 2:**&#x20;

```
flbProfile(
  'flexbook_profil',
  {
    language: 'en',
    buttons: ['login','logout','profile','password','reservation','registration'],
    checkAttributeMandatory: 1,
    showAttribute: ['Personal','Preferences'],
    extraDiv: 1,
  }
);
```
