[JavaScript] Uniemożliwienie użytkownikom otworzenia formularza – prace techniczne

Facebooktwitterpinterestlinkedinmail
dotyczy: wersji: 8.3.x; autor: Kamil Nędza

Czasami pojawia się potrzeba, aby wszystkim użytkownikom uniemożliwić chwilowo dostęp do danego obiegu. Przyczyną mogą być np. krytyczne prace serwisowe wykonywane w ciągu dnia. Odebranie uprawnień wszystkim użytkownikom, a potem ponowne ich nadawanie może być bardzo czasochłonne i uciążliwe dla administratora. Z pomocą przychodzi prosty skrypt Java, który na otworzenie strony w przeglądarce poinformuje użytkownika o zaistniałej sytuacji i przekieruje go do strony głównej:

alert("Prace techniczne. Przewidywany czas realizacji 17:00-18:00");

window.location.href ="/default.aspx";

Powyższy skrypt wystarczy wkleić, aby był wykonany na załadowanie strony:

przerwa_p1

Użytkownik podczas próby załadowania strony otrzyma komunikat:

przerwa_p2

 

Po kliknięciu „OK”, użytkownik zostanie przekierowany do strony głównej.

Po zakończeniu prac na obiegu wystarczy usunąć skrypt i zapisać proces.

3 thoughts to “[JavaScript] Uniemożliwienie użytkownikom otworzenia formularza – prace techniczne”

  1. Wszystko fajnie ale administrator też nie może przetestować obiegu po zmianach, trzeba by robić jakąś regułę.
    Powinno być w ustawieniach systemu "Tryb serwisowy" na wybranych obiegach lub na całości systemu, który by uniemożliwiał edycję oraz dodawanie nowych zadań. Taki tryb byłby pomocny przy jakichś pracach w ciągu dnia gdzie nie chcemy aby podczas serwisowania coś się pojawiło nowego.

    1. Witam serdecznie,

      Jak najbardziej ma Pan rację, że funkcjonalność "Trybu serwisowego" byłaby bardzo pomocna dla administratorów. Jednak na obecną chwilę system nie ma takiej funkcjonalności (co nie oznacza, że w przyszłości nie zostanie dodana). Odpowiedzią na Pana potrzebę może być niewielka zmiana skryptu:

      if (GetPairID(G_CURUSER) != "domena\\login"){
      alert("Prace techniczne. Przewidywany czas realizacji 17:00-18:00");
      window.location.href = "/default.aspx"; }

      Dzięki powyższemu skryptowi tylko zdefiniowany użytkownik będzie miał dostęp do formularza obiegu. Należy mieć tylko uwagę, że JavaScript jest Case Sensitive, co oznacza, że wielkość liter w przypadku domeny i loginu ma znaczenie.

  2. Funkcja "Godzin serwisowych" istnieje już w wersji 2019 natomiast jest mylna ponieważ po wejściu w takie godziny tracimy serwis licencyjny co oznacza że nie wejdziemy ani do studia ani w edycję elementów na portalu, a co najważniejsze nie wyłączymy włączonych godzin serwisowych.

Komentarze są zamknięte.