StudioSystem

Zarządzanie użytkownikami i rolami VSS

Plik maw_users.js zapewnia dynamiczną konfigurację użytkowników systemu VSS. Obsługuje zarządzanie rolami, przypisywanie firm, normalizację.

studiosystem.softwarestudio.com.pl/transakcje-yms/
Panel startowy platformy StudioSystem z modułami przypisanymi do roli użytkownika
Panel startowy platformy StudioSystem z modułami przypisanymi do roli użytkownika

Plik: maw_users.js - Zarządzanie Użytkownikami w Systemie VSS

Plik maw_users.js odpowiada za zarządzanie użytkownikami systemu VSS, w tym ich rolami, firmami, danymi kontaktowymi oraz walidacją adresów e-mail. Skrypt automatyzuje proces przypisywania ról i firm na podstawie wprowadzonych danych oraz zapewnia dynamiczną konfigurację formularza użytkownika.

Funkcja MojaOnLoad()

Główna funkcja inicjalizująca interfejs zarządzania użytkownikami. W jej ramach:

  1. Automatycznie normalizuje adres e-mail użytkownika (normalizeEmail()).
  2. Ustawia domyślny język użytkownika na Polski, jeśli pole jest puste (setLanguageLabel()).
  3. Pobiera numer użytkownika (nriduser) z parametrów URL.
  4. Wyszukuje firmę powiązaną z użytkownikiem na podstawie numeru (ktrhid).
  5. Jeśli użytkownik nie ma przypisanej roli, ukrywa pole wyboru firmy.
  6. Obsługuje dynamiczną zmianę firm w zależności od wybranej roli.

Obsługa ról użytkownika

Skrypt obsługuje mechanizm przypisywania ról, co umożliwia określenie uprawnień użytkownika w systemie. Po wyborze roli:

  • Pobierana jest lista firm powiązanych z daną rolą.
  • W przypadku ról VSSspd (spedycja) i VSSkontr (kontrahenci), system przypisuje inne źródła danych.
  • Użytkownik może wybrać firmę przypisaną do jego roli.

Funkcja editComboByRole()

Obsługuje dynamiczne przypisywanie listy firm w zależności od roli:

  • VSSspd - użytkownik może wybierać firmy transportowe.
  • VSSkontr - użytkownik ma dostęp do listy kontrahentów.

Funkcja normalizeEmail()

Odpowiada za normalizację adresów e-mail w formularzu:

  • Usuwa polskie znaki diakrytyczne i inne nieprawidłowe znaki.
  • Automatycznie aktualizuje pole e-mail po wprowadzeniu tekstu.
  • Obsługuje pola EMAIL, EMAILAUTO i MAIL.

Funkcja validateEmail()

Waliduje poprawność wprowadzonego adresu e-mail:

  • Sprawdza, czy adres ma poprawny format (nazwa@domena.com).
  • Jeśli format jest błędny, wyświetla komunikat ostrzegawczy.
  • W przypadku poprawnego adresu wysyła formularz do zapisania zmian.

Podsumowanie

Plik maw_users.js zapewnia dynamiczną konfigurację użytkowników systemu VSS. Obsługuje zarządzanie rolami, przypisywanie firm, normalizację adresów e-mail oraz walidację danych wejściowych. Dzięki temu system automatycznie dostosowuje uprawnienia użytkownika i zapewnia poprawność danych wprowadzanych do systemu.

Mechanizm normalizacji adresów e-mail

Funkcja normalizeEmail() odpowiada za automatyczne czyszczenie znaków specjalnych w polach mailowych. W trakcie wpisywania tekstu usuwa znaki diakrytyczne, zastępując polskie litery ich podstawowymi odpowiednikami. Na przykład litera „ł” jest konwertowana na standardowe „l”. Proces ten uruchamia się zarówno podczas wpisywania treści, jak i przy próbie zaznaczenia pola, co zapobiega błędom formatowania.

Dynamiczne zarządzanie widocznością firm

Skrypt wykorzystuje parametr nriduser z adresu URL do pobrania danych użytkownika. W zależności od wybranej roli w polu ROLA system pokazuje lub ukrywa sekcję wyboru firmy. Gdy wartość roli jest pusta, cały wiersz KTRHID pozostaje niewidoczny. Wybranie konkretnej opcji w comboboxie powoduje zmianę źródła danych dla listy firm, co realizuje funkcja editComboByRole().

Walidacja formatu poczty elektronicznej

Moduł validateEmail() sprawdza poprawność struktury adresu za pomocą wyrażenia regularnego. W przypadku wykrycia nieprawidłowości wyświetla dynamiczną podpowiedź z komunikatem błędu. Po udanej weryfikacji automatycznie inicjuje procedurę zapisu formularza. Mechanizm obsługuje równocześnie trzy różne pola mailowe, przypisując odpowiednie zdarzenia do każdego z nich.

Automatyczne ustawienia językowe

Funkcja setLanguageLabel() zapewnia domyślną wartość „Polski” w polu języka gdy pozostaje puste. Rozwiązanie to eliminuje konieczność ręcznego wyboru przez użytkownika w typowych scenariuszach. Skrypt działa natychmiast po załadowaniu strony, korzystając z metody initializacji w MojaOnLoad().

Podsumowanie działania skryptu

Plik maw_users.js realizuje kompleksową obsługę formularza użytkownika z dynamiczną zmianą interfejsu. Łączy walidację danych z adaptacyjnym zachowaniem elementów strony w oparciu o role i parametry URL. istotne funkcje współpracują ze sobą poprzez mechanizmy zdarzeniowe, zapewniając płynność interakcji. Całość stanowi przykład modułowego podejścia do zarządzania formularzami w aplikacjach webowych.

Chcesz zobaczyć transakcje YMS w działaniu?

Uruchom demo modułów StudioSystem i sprawdź platformę na żywo.