Dostupné proměnné

Top  Previous  Next

Veškeré parametry prostředí (informace o evidenci, tabulce, uživateli apod.) jsou dostupné v poli $params. Pro custom scripty lze využívat především následující prvky pole (pro lepší ukázku jsou proměnné uvedeny včetně příkladů a taktéž pro lepší přehlednost uvádíme pouze nejdůležitější parametry).

 

Informace o přihlášeném uživateli - $params["subjekt"]

Array (

 [id_subjekt] => 1

 [username] => admin

 [jmeno] => Martin

 [prijmeni] => Skála

 [email] => martin.skala@marbes.cz

 [heslo] => 21232f297a57a5a743894a0e4a801fc3

 [telefon] => 0123456789

 [admin] => 1

 [admin_local] => 1

)

 

Informace o aktuální evidenci - $params["evidence"]

Array (

  [22] => Array (

    [id_evidence] => 1

    [nazev_evidence] => AAA

    [popis_evidence] => AAA

    [garant] => Martin Skála

    [garant_email] => martin.skala@marbes.cz

    [zobrazit] => 1

    [zalozil] => admin

  )

)

 

Informace o aktuální tabulce - $params["tabulka"]

Array (

  [107] => Array (

    [id_tabulka] => 107

    [id_evidence] => 22

    [nazev_tabulka] => Osoby

    [popis_tabulka] => Osoby

    [zobrazit] => 1

    [poradi] => 1

    [vlastnosti] => Array (

      [order1] => 2019|asc --- podle které položky (id_polozka|směr) se implicitně řadí

      [filter_sloupce] => Array ( --- které položky (id_polozka) jsou implicitně zobrazeny (pokud je pole prázdné, tak všechny)

        [0] => 2018

        [1] => 2019

        [2] => 2020

        [3] => 2044

        [4] => 2046

        [5] => 2047

        [6] => 2048

        [7] => 2049

        [8] => 2055

      )

    )

  )

)

 

Přístupová práva k evidencím a tabulkám - $params["rights"]

Array (

  [evid] => Array (

    [22] => Array (

      [pravo_read] => 4

      [pravo_insert] => 4

      [pravo_update] => 4

      [pravo_delete] => 4

      [pravo_admin] => 1

    )

  )

  [tab] => Array ( --- upřesňující právo k tabulce

    [29] => Array (

      [pravo_read] => 4

      [pravo_insert] => 4

      [pravo_update] => -1

      [pravo_delete] => -1

    )

  )

)

 

Práva jsou nadefinována pro VŠECHNY evidence i tabulky (atributy se vrací vždy, i když nejsou nadefinována žádná práva). Číslo práva je definováno následujícími konstantami:

define("PRAVO_DENY", "-1"); - explicitní zákaz (přebije vše)

define("PRAVO_NOT_SPECIFIED", "0"); - právo není definováno (může být zděděno)

define("PRAVO_OWN", "2"); - právo platí na vlastní záznamy

define("PRAVO_ALL", "4"); - právo platí na všechny záznamy

 

Příklady dalších užitečných proměnných a funkcí

Kromě výše uvedených polí jsou navíc k dispozici identifikátory aktuální evidence ($params["id_evidence"]) a tabulky ($params["id_tabulka"]). Například k názvu tabulky se pak dopracujeme takto:

$nazev_tabulka = $params["tabulka"][$params["id_tabulka"]]["nazev_tabulka"];

 

Veškeré texty jsou uloženy v .ini souborech v kódování UTF-8 a jsou dostupné pomocí funkce:

$chyba = vypis("Nepovolena akce");

 

Chybová hlášení lze pohodlně zobrazovat dole na stránce pomocí funkce u_log($params, $text, $zavaznost = 0), tedy např.:

u_log($params, vypis("Nepovolena akce"), 2);

u_log($params, vypis("vypis zaznamu v tabulce")." '".$nazev_tabulka."'");

 

$polozky = vrat_polozky($params, "kes_polozka.id_tabulka='".$params["id_tabulka"]."'", "kes_polozka.poradi asc");