Page 1 of 1

Podmienené otvorenie modálneho okna vo webovej aplikácii

PostPosted: Wed 05. Feb 2020 23:47:44
by Reil
Dobrý deň, pracujem na otvorení modálneho okna s podmienkou. Konkrétne sa jedná o webovú aplikáciu, v ktorej sa prihlasujem Loginom a Passwordom, pri správnej kombinácii sa v Timeri nastaví booleanská premenná (Pm.Data) na TRUE a tu nastáva problém. Modálne okno by sa malo otvoriť pri tejto hodnote, čo dosiahnem IFom v 2 možných prípadoch:
1. Vložiť funkciu pMe.PmPanel.OpenView(), ktorú nedokážem vykonať v Timeri, jedine v tlačítku, alebo
2. Do tlačítka pridám IF, ktorý bude závisieť od booleaskej premennej, ktorá je uložená v PmData a z PmPanelu písaného v JavaScripte sa k nej neviem dostať.
Vedeli by ste mi poradiť s jedným alebo druhým prípadom? Hľadal som aj v návode, no nikde som sa nedostal k týmto informáciam.

Re: Podmienené otvorenie modálneho okna vo webovej aplikácii

PostPosted: Mon 10. Feb 2020 10:38:21
by Pavel Klimíček
Dobrý den.
Nevím o jakou akci se jedná a zda máte Váš požadavek dobře promyšlen.
(Klient nemusí být připojen nebo nemusí být otevřen právě ten obraz, ve kterém tento stav požadujete vyvolat.)
Ale možné řešení je toto:
- v PmgRoot klientského obrazu založte proměnnou typu "Boolean" a nazvěte ji například "state".
- tuto proměnnou vazbou "PP" napojte na Vaši proměnnou v PmaData.
- pak znova v PmgRoot založte ještě jednu proměnnou typu "Boolean" a nazvěte ji "state2" a zadejte výchozí hodnotu 0.
- pak v události "onRefresh" PmgRoot bude následující skript:
Code: Select all
if (pMe.Vars("state").Value && !pMe.Vars("state2").Value)
{
  pMe.Vars("state2").Value = 1;
  pMe.PmPanel.OpenView(...); //otevreni Vaseho obrazu
}
else if (!pMe.Vars("state").Value)
  pMe.Vars("state2").Value = 0;


Toto řešení zajistí, aby se obraz u klienta otevřel pouze 1x.