Abstrakcyjna klasa rozszerzająca możliwości wszystkich obiektów o nazwie Index. Wykorzystywana w obiekcie InfoTable.
paginate()return InfoTable |
Bezparametrowana metoda wykonująca, filtrująca oraz grupująca wyniki zapytania w obiekcie InfoTable - zwraca ten obiekt |
setPaginator($p1,$p2)return $this |
Ustawia aktualny stan paginacji prezentowanych wyników w obiekcie InfoTable. Zwraca obiekt klasy dziedziczącej po tej klasie abstrakcyjnej. |
setSearch($p1,$p2)return $this |
Metoda pozwalająca na sprecyzowanie słów kluczowych dla wyszukiwania w tabeli danych. Wyszukiwanie wykonywane jest po stronie panelu Webas. Zwraca obiekt klasy dziedziczącej po tej klasie abstrakcyjnej. |
countAllResults()return int |
Bezparametrowana metoda zwracająca liczbę wszystkich znalezionych wierszy w tabeli obiektu (bez zastosowania filtrowania) InfoTable. Można wykonać zamiast metody paginate(). |
getCurrentPage()return int |
Bezparametrowana metoda zwracająca aktualny numer strony ustawiony za pomocą metody setPaginator(). |
getRowsOnPage()return int |
Bezparametrowana metoda zwracająca aktualną liczbę wyników na stronę. Wartość ustawiana za pomocą metody setPaginator() |
W poniższym przykładzie pominięto autoryzację do serwera. Obiekt Client znajduje się w zmiennej $webas. Więcej o autoryzacji przeczytasz w dziale jak rozpocząć ?
Nie zawijaj wierszy
<?php // Autoryzacja... // Filtrowanie wyników dla tabeli kont FTP. Zasadza działania jest taka sama // jak gdyby w panelu Webas, w wyszukiwarce wprowadzono ciąg "added" (bez cudzysłowia) // a z pola selectbox po prawej wybrano opcję "bez limitów" i kliknięto przycisk "szukaj" // (wykonanie metody "paginate") $tb1 = $webas->Ftp()->Index()->setSearch("added", ['profile' => "bez-limitow"])->paginate(); \Kei\Library\Out::pd($tb1); // Resetujemy pole input przez co wyszukujemy w całej tabeli $tb2 = $webas->DnsRecord()->Index()->setSearch("")->paginate(); \Kei\Library\Out::pd($tb2); // Możemy też wykorzystywać metody statyczne ::buildSearchParams() charakterystyczne // dla każdej klasy Index osobno aby przyspieszyć filtrowanie w szczególności jeśli // nie wiemy jakie pola filtrujące obsługuje strona w panelu Webas. $tb3 = $webas->EmailAccount()->Index()->setSearch("", \Kei\Webas\Dedicated\EmailAccount\Index::buildSearchParams("master-test.v12345.tld.pl"))->paginate(); \Kei\Library\Out::pd($tb3); // Możemy też wykonać metodę setSearch oraz tuż za nią (lub przed nią - kolejność nie // ma znaczenia) metodę setPaginator. W tym momencie uzyskamy wyniki z drugiej strony // przy wyświetlaniu 5 wyników na stronie oraz przy opcjach szukania pomiędzy datami // od 2016-01-01 do 2016-03-28 $tb4 = $webas->StatFtpSummary()->Index()-> setSearch("", \Kei\Webas\Dedicated\StatFtpSummary\Index::buildSearchParams("2016-01-01", "2016-03-28"))-> setPaginator(2, 5)-> paginate(); \Kei\Library\Out::pd($tb4); // UWAGA! ZAMIAST METODY paginate MOŻEMY POSŁUŻYĆ SIĘ METODAMI WYLICZENIOWYMI // countAllResults, getCurrentPage, getRowsOnPage // Ile mamy kont FTP spełniających podane kryteria (o ile są zdefiniowane) ? \Kei\Library\Out::pd($webas->Ftp()->Index()->countAllResults()); \Kei\Library\Out::pd($webas->Ftp()->Index()->setSearch("adm")->countAllResults());