Strict Standards: Declaration of action_plugin_searchtext::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /lib/plugins/searchtext/action.php on line 14

Warning: Cannot modify header information - headers already sent by (output started at /lib/plugins/searchtext/action.php:14) in /inc/auth.php on line 313

Warning: Cannot modify header information - headers already sent by (output started at /lib/plugins/searchtext/action.php:14) in /inc/actions.php on line 163
style-graficzne:js-productvoter [Shop Docs]

Dokumentacja techniczna

productVoter

Pod-klasa Shop. Obsługa głosowania na produkty.

Parametry w JS

Ponieważ klasa jest inicjalizowana razem z Shop, wszystkie parametry należy nadać przed zdarzeniem domready lub najpóźniej w funkcji warunkowej Shop.productVoter.condition() . Ponieważ wszystkie parametry mają swoje domyślne wartości, do standardowego działania pod-klasy, nie są potrzebne żadne zmiany.

Parametry Shop.productVoter.options :

  • class0 (string) - klasa z „pustką” gwiazdką, domyślnie star0
  • class05 (string) - klasa z „połowiczną” gwiazdką, domyślnie star0-5
  • class1 (string) - klasa z „pełną” gwiazdką, domyślnie star1
  • selector (string) - selector obiektu DOM w którym znajdują się „gwiazdki”, domyślnie span.votestars
  • starsselector (string) - selector obiektów DOM do nadawania klas „gwiazdek”, domyślnie span.votestars img
  • votecountselector (string) - selector obiektu DOM przechowującego ilość oddanych głosów, jako tekst, domyślnie votecountselector
  • url (string) - adres do oddania głosu, zawiera ciągi {prodid} i {score} na odpowiednio ID produktu i wartość oddanego głosu [1 - 5], domyślnie product/vote/prod/{prodid}/vote/{score}

Frazy:

  • Shop.lang.common.product_vote_alert - komunikat podczas nieudanego głosowania

Działanie

Wybrane starsselector otrzymują dwa zdarzenia. onMouseenter, do czasowej zmiany wartości głosu oraz onClick, które wysyła żądanie na url. Po otrzymaniu odpowiedzi o poprawnym oddaniu głosu, zdarzenia zostają usunięte, wartość głosu ustawiona na stałe, a ilość w votecountselector zwiększona o jeden.

Wartość nadawana jest przez odpowiednią manipulację klasami class0, class05 oraz class1 na starsselector.

ID produktu pobierane jest z ID obiektu pod selector. Wszystkie znaki nieliczbowe są usuwane, domyślnie aplikacja stosuje nomenklaturę votestars_ID, np. votestars_12.