Přejít na obsah
Skip to main content

Požadavek perform-register

Účel a dopady​

Provede dříve vytvořenou registraci (viz register) typu q (kdokoli) nebo – jen pro r_admin – i typu r, a vrátí odpověď provedeného požadavku vloženou do vlastního těla. U registrace typu l (login) navíc přihlásí volajícího pod cílovým účtem.

Dostupnost, kontext, oprávnění apod.​

  • Registraci typu q smí spustit kdokoli přihlášený.
  • Registraci typu r smí přes tento požadavek spustit jen r_admin – slouží čistě k testování, nemělo by se používat produkčně.
  • Registraci typu l smí spustit kdokoli; pravidla platnosti registrace (count, till) platí vždy, i pro admina, a nelze je obejít.

XML požadavek (syntax + popis)​

<request>
<perform-register
id="{string}"
>
<param name="{string}" value="{string}">{string}</param> *
</perform-register>
</request>

Parametry a pravidla (atributy, potomci)​

  • id - Hexadecimální ref registrace k provedení (stejný formát jako ref u register/register-list). (typ: string; povinný) – dosavadní dokumentace uváděla chybně typ number.

Uzel param​

Dosazuje hodnotu parametru [jméno] použitého v uloženém předpisu registrace.

  • name - Název parametru bez hranatých závorek. (typ: string)
  • value - Hodnota parametru, alternativa k textovému obsahu uzlu. (typ: string; nepovinný)

Příklady požadavku​

(Zatím bez ověřeného příkladu.)

Zpracování a vedlejší účinky​

  • Server nejprve dohledá registraci a ověří její platnost. Parametry <param> nahradí odpovídající [jméno] v uloženém předpisu požadavku, ten se provede jako běžný XML požadavek pod identitou uživatele, kterému registrace patří (případně v zastoupení, je-li registrace impersonovaná).
  • U registrace what="l" bez login (vytvoření uživatele při prvním spuštění) se z odpovědi provedeného předpisu převezme nově vzniklý dkey a registrace se jím natrvalo naváže; další spuštění už jen přihlašuje.
  • U registrace what="l" (ať už s login, nebo po jeho dosazení výše) server ukončí aktuální session volajícího a založí mu novou pod cílovým účtem, včetně nastavení přihlašovací cookie.

XML odpověď (syntax + popis)​

<response>
<perform-register
type="ok|error"
detail="{string}"
new-user="{string}"
session="{number}"
login="{number}"
>
{tělo odpovědi provedeného požadavku, bez obálky <response>}
</perform-register>
</response>

Kořenový atribut je type (ne status, jak uváděla dosavadní dokumentace).

Příklady odpovědi​

(Zatím bez ověřeného příkladu.)

Chyby a reakce​

  • type="error" detail="Chybi atribut id" – chybí id.
  • type="error" detail="Pri nacitani registrace doslo k chybe" – selhání při dohledání registrace; není sebeuzavírající, může nést vnořené error.
  • type="error" detail="Tato registrace jiz neni platna" – registrace nalezena, ale neplatná (vypršel počet spuštění/platnost, nebo neschválena).
  • type="error" detail="Registrace nenalezena nebo tento typ registrace nelze spustit" – např. registrace typu r bez r_admin.
  • type="error" detail="Prihlaseni povereneho uzivatele se nezdarilo" – nepodařilo se ověřit uživatele, jemuž registrace patří.
  • type="error" detail="Pozadavek se nepodarilo nacist" – uložený předpis (po dosazení parametrů) není platné XML.
  • type="error" detail="Pri provadeni registrovaneho pozadavku doslo k chybe" – vnořený obsah je přímo chybová odpověď provedeného požadavku (bez vlastní obálky <response>).
  • type="error" detail="Vase prihlaseni tuto funkci nepodporuje" / "Prihlaseni k cilovemu uctu se nezdarilo" – selhání přepnutí session u what="l".

Související požadavky​