1. Webpart Skript

    Článek: AN0001971Aktualizováno:: 07.10.2018

    Webpart slouží ke dvěma základním účelům, které plní pomocí skriptů:

    • Vytvořit (editovatelný) formulář bez vazby na třídu. Toho lze využít pro zadání hodnot, na jejichž základě něco provedete. Např. vytvoříte záznamy do jiných tříd, spustíte workflow atd.
    • Vytvořit html, které vložíte do stránky. Jde o velmi jednoduchý způsob vytvoření reportu - zobrazení dat z jiných tříd pomocí html. Data můžete načíst přímo z databáze, procedury modulu nebo html můžete sestavit pomocí skriptů.

    Pro práci se skripty máte k dispozici tyto objekty:

    Název Popis
    OG Základní objekt pro práci se skripty.
    OGForm Objekt pro práci s obsahem stránky.
    OGContentPage Objekt stránky.
    OGModel Model, ke kterému stránka patří. Pokud není stránka přiřazena žádnému modelu je tato hodnota NULL.
    OGWebPart Objekt webpartu Skript.
    OGWebParts Seznam webpartů na stránce.

    V nastavení webpartu konfigurujete několik vlastností:

    Nastavení Popis
    Skript V tomto skriptu vytvoříte definici vlastního formuláře nebo html. Definovat lze funkci OnLoad a OnPreRender. Obě odpovídají událostem z ASP.NET.
    Události skriptu Tento skript obsahuje funkce pro události, např. kliknutí na tlačítko na toolbaru.
    Styly

    Zde zadáváte url odkaz na vkládaný soubor se styly. Soubor si musíte na server sami nahrát.

    Můžete sem i napsat vlastní styly, které budou vloženy do stránky s webpartem.

    JavaScript

    Zde zadáváte url odkaz na vkládaný soubor s javascriptem. Soubor si musíte na server sami nahrát.

    Můžete sem i napsat vlastní javascript, který bude vložen do stránky s webpartem.

    Do stránky je možné vložit více webpartů typu Skript. Pořadí běhu skriptů v těchto webpartech je pak dáno pořadím zón (každá zóna má unikátní číslo) a v rámci zóny pořadím webpartu v zóně.

    Ukázka událostí OnLoad a OnPrerender

    function OnLoad()
    {
        ...
    }

    function OnPreRender()
    {
        ...
    }

    Ukázka zápisu události

    Událost lze zapsat pouze pro kliknutí na tlačítko na toolbaru. Název události se skládá z ID tlačítka, za nímž je text _Click.

    function bSave_Click()
    {
       /* zobrazení různých informačních hlášení */
       OGForm.SetInfo( 'Neco se deje.');
       OGForm.SetError( 'Je tu chyba.');
       OGForm.SetSuccess( 'Ulozeni je OK.');
       OG.Log.Write('button save.');

       /* načteni hodnot z textového pole */
       var tb = OGForm.GetControl( 't1');
       OGForm.SetInfo( 'Kod: ' + tb.Text);
    }

    Ukázka zápisu sylu

    .s1
    {
       font-size: 10px;
    }

    Ukázka zápisu javascriptu

    function MyFunction()
    {
        ...
    }

    Práce s webparty na stránce

    Webpart i stránka mohou pracovat s ostatními webparty. Pro přístup použijte vlastnost OGWebParts. Na jednotlivé webparty se odkážete indexem v kolekci nebo pomocí kódu.

    var wp = OGWebParts[1];

    var wp = OGWebParts['webpart_code'];

    Převzetí hodnot z URL

    V rámci skriptu můžete reagovat na hodnoty zadané v URL. Hodnoty můžete zpracovat, i jimi naplnit ovládací prvky.

    Hodnoty je dobré přebírat jen při prvním zobrazení stránky (kdy není postback). K tomu použijte metodu IsPostback. Hodnoty pak do ovládacích prvků naplňte pomocí metody SetData.

    Následující příklad při prvním zobrazení stránky z URL převezme hodnotu z proměnné data a vloží ji do ovládacího prvku t2.

    if ( !OGForm.Page.IsPostback)
    {
       t2.SetData( OG.QueryString.GetString('data'));
    }

×