PL/Settings system: Difference between revisions
mNo edit summary |
mNo edit summary |
(No difference)
|
Latest revision as of 16:37, 12 September 2024
System ustawień pozwala na zarządzanie ustawieniami poszczególnych zasobów bez konieczności modyfikowania plików źródłowych. Ustawienia mogą być modyfikowane przez skrypty oraz przez administratorów za pomocą konsoli.
Nazwy ustawień
Ustawienia mają przyjazny prosty system nazw, który pozwala określić dostęp oraz zasięg cel ustawienia.
Format nazw: [modyfikator_dostępu][nazwa_zasobu].nazwa_ustawienia
Modyfikatory dostępu:
- *: publiczny - Ustawienie może być modyfikowane i odczytywane przez dowolny zasób.
- #: chroniony - Ustawienie może być odczytywane przez dowolny zasób, ale modyfikowane może być tylko przez zasób do którego należy.
- @: prywatny - Ustawienie może być odczytywane oraz modyfikowane tylko przez zasób do którego należy.
- Jeśli nie podamy żadnego modyfikatora, domyślnie jest to prywatny dla lokalnych ustawień oraz publiczny dla globalnych ustawień.
Parametr nazwa_zasobu jest opcjonalny. Jeśli nie zostanie podany, wówczas ustawienie jest określone jako globalne. Parametr nazwa_ustawienia może być dowolny, cokolwiek tylko zechcesz.
Przykłady
<meta> <settings> <setting name="@PrivateEntry" value="MyPrivateValue" myCustomKey="myCustomValue"/> <setting name="#ProtectedEntry" value="MyProtectedValue" myCustomKey="myCustomValue"/> <setting name="*PublicEntry" value="MyPublicValue" myCustomKey="myCustomValue"/> </settings> </meta>
-- Pobieramy nazwe zasobu; -- resource to zdefiniowana globalna zmienna określająca bieżący zasób local resName = getResourceName(resource) -- Nie musisz podawać nazwy zasobu przed nazwą ustawienia -- Jednak nazwa zasobu jest konieczna, jeśli chcesz pobrać inną wartość niż tę z parametru value, w tym wypadku np. myCustomKey local privateEntry = get(resName..'.PrivateEntry') local protectedEntry = get(resName..'ProtectedEntry') local publicEntry = get(resName..'PublicEntry') iprint(privateEntry) -- MyPrivateValue iprint(protectedEntry) -- MyProtectedValue iprint(publicEntry) -- MyPublicValue iprint(get(resName..'.PublicEntry.myCustomKey')) -- myCustomValue
Funkcje skryptowe
Istnieją dwie funkcje systemu ustawień, które pozwalają na odczytywanie oraz ich modyfikację. Są to set oraz get.
Funkcje konsoli
Istnieją dwie funkcje konsolowe dla systemu ustawień