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
qsmí spustit kdokoli přihlášený. - Registraci typu
rsmí přes tento požadavek spustit jenr_admin– slouží čistě k testování, nemělo by se používat produkčně. - Registraci typu
lsmí 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írefregistrace k provedení (stejný formát jakorefuregister/register-list). (typ:string; povinný) – dosavadní dokumentace uváděla chybně typnumber.
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"bezlogin(vytvoření uživatele při prvním spuštění) se z odpovědi provedeného předpisu převezme nově vzniklýdkeya registrace se jím natrvalo naváže; další spuštění už jen přihlašuje. - U registrace
what="l"(ať už slogin, 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 typurbezr_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 uwhat="l".