Promotic

Konfiguracja wstępna "Runtime administracja użytkowników"

Administracja użytkowników podczas biegu aplikacji. Użytkownicy z ustawionymi uprawnieniami są zapisywanie do pliku CSV a następnie do pamięci aplikacji.

Niniejsza konfiguracja wstępna zostanie wywołana przy założeniu nowego obiektu (np. przy pomocy opcji "Nowy obiekt ..." w lokalnym menu obiektu lub naciśnięciem klawisza Insert po zaznaczeniu obiektu) oraz jest przyszeregowana do grupy: "/ Panele (PmaPanel) / Pozostałe".
Taką konfigurację wstępną można wytworzyć w obiekcie: PmaFolder, PmaRoot, PmaPanel lub PmaWorkspace.

Konfiguracja wstępna panela (obiekt typu PmaPanel) działa również jako Web panel.

Konfiguracja wstępna wytworzy trzy obiekty PmaPanel. Główny panel jest nazwany "AdminUsers" i posiada dwa obiekty podległe:
Panel "EditUsers" przedstawia Okno modalne do wytworzenia nowego lub edycji istniejącego użytkownika.
Panel "ChangePass" przedstawia Okno modalne służący do zmiany hasła istniejącego użytkownika.

Wszystkie te obiekty mają w karcie "Uprawnienia" ustawione wszystkie pozycje dla użytkowników grupy $ADMIN. Główny panel "AdminUsers" służy do wczytania użytkowników do tabeli i przy pomocy przycisków funkcjonalnych do edycji lub dodania nowego użytkownika. Do jego otworzenia jest stosowana metoda CreateView.

Główny panel posiada następujące metody:
Crypt - (pomocnicza) do zakodowania i zdekodowania hasła użytkownika
GetGroup - (pomocnicza) do wczytania listy dostępnych grup użytkowników
GetUsers - (pomocnicza) do wczytania pełnej listy wszystkich użytkowników (zapisanych w pliku ini lub pra)
InitUsers - (ważna) doda do uruchomionej aplikacji użytkowników zapisanych w pliku csv
LoadUsers - (ważna) wczyta tablicę zawierającą wszystkich użytkowników z uprawnieniami użytkowników z pliku csv
SaveUsers - (ważna) zapisze tablicę zawierającą wszystkich użytkowników z uprawnieniami użytkowników do pliku csv
UserAdd - (ważna) przygotuje do zapisania tablicę z wartościami zmienionymi przez edycję użytkowników
UserChangePass - (ważna) przygotuje do zapisania tablicę ze zmienioną wartością hasła wybranego użytkownika
UserRemove - (ważna) przygotuje do zapisania tablicę zmniejszoną o dane usuwanego użytkownika

Podstawową metodą jest metoda "InitUsers". Przy pomocy metody AddUser zapewni ona dodanie wszystkich użytkowników zapisanych w pliku CSV do uruchomionej aplikacji. Metoda ta jest wołana zawsze podczas zmianach w edycji użytkowników i musi być również wywołana po uruchomieniu aplikacji. Metody projektanta LoadUsers oraz SaveUsers służy do wczytania lub do zapisania wszystkich użytkowników oraz ich uprawnień do pliku csv. (Jest możliwa ich zmiana do zapisu danych użytkowników do tabeli w niektórej z baz danych.) W metodzie pomocniczej Crypt są zastosowane metody EncryptText oraz DecryptText, gdzie można zmienić wartość zmiennej sSeed do zakodowania i zdekodowania hasła użytkownika.

Główny panel zawiera obiekt PmgWTable oraz kilka przycisków PmgButton. W zdarzeniu onStart tabeli znajduje się skrypt, który wypełni tabelkę listą użytkowników uzyskaną z pliku csv. Skrypt w zdarzeniu onCellClicked umożliwia zaznaczenie wybranego wiersza. W zdarzeniu onCellEditRequested jest otwarte nowe okno EditUsers do edycji wybranego użytkownika. Przyciski typu PmgButton posiadają w zdarzeniu onButtonUp skrypt, który wykona wymaganą czynność.

Panel EditUsers jest otwierany w zdarzeniu onCellEditRequested tabeli lub przycisków Dodaj lub Edytuj. Właściwy panel zawiera obiekty PmgWEdit, PmgString, PmgButton oraz PmgWTable. W zdarzeniu onStart tabeli są poszczególne obiekty napełnione danymi edytowanego użytkownika. Dane te można w wymagany sposób zmienić i przy pomocy przycisku "OK" potwierdzić i zapisać.

Panel ChangePass jest otwierany z panelu głównego przy pomocy przycisku "Zmiana hasła". Panel zawiera obiekty PmgWEdit, PmgString oraz PmgButton. W zdarzeniu onStart obiektu PmgButton są do niewidocznych Pmg obiektów graficznych zapisane oryginalne dane do logowania użytkownika. Po wprowadzeniu nowych danych są one porównane i przesłane do zapisania w skrypcie przycisku OK.
Konfiguratory, które można ustawić przed wytworzeniem konfiguracji wstępnej:
Nazwa wytwarzanego obiektuNazwa nowo wytworzonego obiektu w drzewie Pma obiektów. Maksymalna długość nazwy wynosi 30 znaków. Jest to nazwa systemowa, może zawierać tylko znaki alfanumeryczne oraz nie może zawierać znaki diakrytyczne (tzn. narodowo zależne znaki), pusty łańcuch, spacje oraz pierwszy znak nie może być liczba.
Domyślnie: "AdminUsers"
UprawnieniaW tej karcie można zdefiniować uprawnienia obiektu. Patrz karta "Uprawnienie" obiektu PmaObject.
Członek grup logicznychLista identyfikatorów grup logicznych (separatorem jest przecinek ','), do których obiekt należy (jest ich członkiem), patrz okno konfiguracyjne "Grupy logiczne".
Wyboru grup logicznych można dokonać w oknie "Członek grup logicznych".
Po wytworzeniu konfiguracji wstępnej konfigurator "PmaObject > Obiekt > Członek grup logicznych" zostanie ustawiony na daną wartość.
Nazwa pliku do zapisania uprawnień użytkownikówNazwa pliku, do którego będą zapisywane dane użytkowników i ich uprawnienia (domyślnie) users
Łańcuch tekstowy do zakodowania hasłałańcuch, na przykład "xyz" służący jako nasionko metod EncryptText oraz DecryptText do zakodowania hasła użytkowników.
Zezwól jako komponent WEBowyOkreśla, czy obiekt ten ma być zarejestrowany jako komponent Web serwera
Po wytworzeniu konfiguracji wstępnej konfigurator "PmaPanel > Web serwer > Zezwól jako komponent WEBowy" zostanie ustawiony na daną wartość.
Przykład1:
Przykład wywołania metody "InitUsers" przy uruchamianiu aplikacji. Skrypt powinien zostać ulokowany do zdarzenia onAppStartEnd obiektu PmaRoot.
pMe.Pm("AdminUsers").Methods.InitUsers
Przykład2:
Przykład otworzenia panela AdminUsers w zdarzeniu onButtonUp obiektu PmgButton ulokowanego w innym panelu. (Panel zostanie otwarty tylko przez zalogowanego użytkownika należącego do grupy użytkowników $ADMIN).
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var oCreator = Pm.CreateView(null, "/AdminUsers", "", "target:_blank;");
oCreator.Open();

Historia:
Pm8.00.03: Wytworzono
© MICROSYS, spol. s r.o.