Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

W tym miejscu zostanie opisany przykład utworzenia we wtyczce warunkowej akcji formularza, która będzie ukrywać /pokazywać zmienne w zależności od wartości innej zmiennej.zmienne, jeżeli odpowiedni warunek będzie spełniony.

Projekt wtyczki z tego tutoriala można pobrać z załącznika: form-action-example.7z.

 

Opis tworzenia wtyczki systemowej znajduje się tutaj: http://192.168.1.52:8081/confluence/display/PWFL31/1.+Stworzenie+projektu+wtyczki, więc przyjmujemy, że wtyczkę mamy już stworzoną.

...

Powyżej zdefiniowaliśmy akcję hiding-variables-action z jednym parametrem tablicowym, którego elementy są typu VARIABLE, czyli obiekty zmiennych formularza. Implementacja akcji po stronie przeglądarki znajduje się w skrypcie "resources/actions/test/hiding-variables-action.js". Jako nazwy i opisy akcji i jej parametru podalismy podaliśmy klucze, gdyż będziemy chcieli, aby te właściwości były tłumaczone w zależności od języka użytkownika. Tłumaczenia dodajmy w plikach /resources/messages.properties (domyślne - wersja polska) oraz /resources/messages_en.properties (wersja angielska).

...

Code Block
languagetext
titlemessages_en.properties
action.hiding.variables.name=Conditional variables hiding
action.hiding.variables.desc=Action hiding variables on form, if given condition is fulfilled
action.hiding.variables.parameter.name=Variables to hide
action.hiding.variables.parameter.desc=Array parameter which accepts variables to hide

W definicji akcji podaliśmy również kategorię Categories.TEST. Niezbędne jest stworzenie takiej kategorii lub wykorzystanie kategorii, która już istnieje. Implementacja kategorii wygląda następująco:

Code Block
languagejava
public enum Categories
    implements ActionCategory
{
    TEST( "Test" );

    private String name;

    private Categories( String name )
    {
        this.name = name;
    }
 
    @Override
    public String getName()
    {
        return name;
    }
}

Utworzenie implementacji akcji po stronie przeglądarki

...