Sposób działania rozszerzenia
To rozszerzenie pozwala na wygenerowanie pliku html zawierającego listę publikacji należących do wybranej publikacji grupowej. Lista ta nie zawiera innych publikacji grupowych, ale uwzględnia ewentualne publikacje zgrupowane w innych publikacjach (również publikacje zagnieżdżone wielokrotnie).
Po wybraniu polecenia Nowy obiekt grupowy... z menu Narzędzia w aplikacji administratora, pojawia się okno dialogowe (zobacz rysunek poniżej), w które należy wpisać identyfikator publikacji grupowej. W kolejnym oknie należy wskazać plik, do którego ma zostać zapisana wygenerowana lista. Jeśli operacja zostanie przeprowadzona poprawnie, pojawi się komunikat o zapisaniu listy.
Konfiguracja rozszerzenia
W celu zmiany ustawień wtyczki, należy w aplikacji redaktora wybrać z menu Program pozycję Konfiguracja, po czym w zakładce Konfiguracja rozszerzeń wybrać wtyczkę (Lista publikacji w publikacji grupowej) i kliknąć przycisk Konfiguruj. Pojawi się standardowe okno konfiguracji rozszerzenia, w którym można wprowadzić katalog na dysku lub adres www, skąd ma być pobrany plik konfiguracyjny. Jak zwykle, należy pamiętać o zaznaczeniu opcji Używaj konfiguracji z podanego źródła.
Plik wymagany przez generator listy publikacji ma nazwę index.vm
i jest to szablon pliku HTML, który ma zostać wygenerowany. Szablon jest zapisany w formacie Apache Velocity. Więcej informacji na temat tej technologii znajduje się tutaj. Poniżej przedstawiono budowę szablonu wykorzystywanego w domyślnym ustawieniu.
## define $library_url below appropriately to your digital library url. #set($library_url = "dlibra.psnc.pl") <html> <head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> </head> <body> <TABLE border="1"> <tr> <th>Tytuł publikacji</th> <th>Link do publikacji</th> <th>Identyfikator OAI</th> </tr> #foreach( $pub in $pubs ) <tr> <td>$pub.getLabel()</td> <td><a href="http:/$library_url/publication/$pub.getId()">http://$library_url/publication/$pub.getId()</a> <td>oai:$library_url:$pub.getId()</td> #end </body> </html>
Jak pokazuje przykład, w szablonie można korzystać ze zmiennej $pubs, która jest listą obiektów opisujących publikacje należące do wybranej publikacji grupowej. Obiekty te udostępniają następujące metody:
getId()
zwraca identyfikator publikacjigetLabel()
zwraca nazwę publikacji (widoczną w aplikacji redaktora, niezwiązaną bezpośrednio z wartościami widocznymi dla czytelnika)