Jedna z moich konkurencyjnych stron ma takie proste statystyki blok, w którym podane są ilość artykułów, newsów, użytkowników, użytkowników zarejestrowanych przez ostatnie x dni etc... zacząłem się irytować bo chwalą się a nie mają czym

Nie wiedziałem za bardzo jak się zabrać za zrobienie czegoś takiego w głowie miałem co chcę:
1. Ma współpracować z każdym modułem pagemaster, mediashare, pages, users, dizkus, ezcomments i tak dalej
2. Chcę mieć możliwość dodania ikonki

3. Blok ma mieć opcje włączenia wyłączenia danej statystyki + możliwość zmiany kolejności statystyk
4. Sterowanie uprawnieniami
Ma to wyglądać mniej więcej tak:

Tak, więc jak się uporać z punktem 1 hmm przypomniało mi się, że jest taki moduł Pending Content i w nim można dodać sql z countem i on wyświetla w bloku wpisaną nazwę, która jest linkiem też definiowanym przeze mnie oraz w nawiasach ilość zliczona countem, więc moduł poszedł pod nuż w efekcie przerobiłem go na ContentStats
ContentStats można znaleźć w downloads
Instalacja przekopiować pliki do modules zainstalować
Administracja:
1. Na początku zapraszam do ustawień głównych tam wybieramy ścieżkę do plików ikonek domyślnie jest to /images/icons/extrasmall można zmienić na ścieżkę np: do własnych ikonek w katalogu themes/twojetheme/images/icons
2. Klikamy w menu głównym modułu create element (jeszcze nie jest w pełni przetłumaczony wersja beta)
Name: to nazwa wyświetlana np: Użytkowników, Nowi zarejestrowani przez ostatnie 31 dni
URL: to adres na jaki ma być przekierowany użytkownik np: index.php?module=Profile&func=viewmembers
SQL Command: To jest to co zdecydowało o wykorzystaniu pending content Za pomoca SQL a można wyciągnąć wszystko z naszej bazy danych testy można robić w phpMyAdmin wystarczy poszukać poczytać o sql-u każde zapytanie powinno być poprzedzone SELECT COUNT(*)
Można wyciągnąć ilość plików dodanych do mediashare które są np: zdjęciami albo plikami video/audio można wyciągnąć ilość danych dodanych do każdego modułu lub użytkowników po wartości pola w profilu w sumie można bardzo dużo jak nie wszystko...
np:
SELECT COUNT(*) FROM `pn_users` lub SELECT COUNT(*) FROM `pn_users` WHERE `pn_user_regdate` >= DATE_SUB(CURDATE(),INTERVAL 1 MONTH);
Image: to nazwa pliku ikonki znajdującego się pod podaną wcześniej ścieżką jeśli ścieżka jest domyślna to można użyć np: agt_family.gif lub add_group.gif lub każdą inną znajdującą się w folderze /images/icons/extrasmall
Zapisujemy i powinniśmy widzieć dodany element jako wiersz ikonka powinna się pokazać jeśli się nie pokaże to coś wpisaliśmy nie tak
Tak dodajemy kilka elementów np:
Name: Artykułów
URL: index.php?module=pagemaster&tid=8&filter=core_online^eq^1
Sql: SELECT COUNT(*) FROM `pn_pagemaster_pubdata8` WHERE `pm_online` = 1
image: twoja ikonka
Name: Wiadomości
URL: index.php?module=pagemaster&tid=2&filter=core_online^eq^1
SQL: SELECT COUNT(*) FROM `pn_pagemaster_pubdata2` WHERE `pm_online` = 1
Ogłoszeń
index.php?module=pagemaster&tid=9
SELECT COUNT(*) FROM `pn_pagemaster_pubdata9` WHERE `pm_online` = 1 AND `pm_expiredate` >= NOW()
Firm w Katalogu Firm
index.php?module=pagemaster&tid=18 SELECT COUNT(*) FROM `pn_pagemaster_pubdata18` WHERE `pm_online` = 1 AND `pm_expiredate` >NOW()
Użytkowników
index.php?module=Profile&func=viewmembers
SELECT COUNT(*) FROM `pn_users`
Postów na Forum
index.php?module=Dizkus
SELECT COUNT(*) FROM `pn_dizkus_posts`
Nowych ostatnie 31 dni
index.php?module=Profile&func=viewmembers
SELECT COUNT(*) FROM `pn_users` WHERE `pn_user_regdate` >= DATE_SUB(CURDATE(),INTERVAL 1 MONTH);
3. Dodajemy blok ContestStats/stats dodajemy nazwę klikamy zapisz
W ustawieniach bloku wyświetlone są wszystkie wiersze jakie dodaliśmy w module można zmienić ich układ przeciągając wiersze na górę/ na dół wiersze, które mają się wyświetlać powinniśmy zaznaczyć "ptaszkiem"
zapisujemy ustawienia bloku.
Blok powinien się wyświetlić
4.Modyfikacja bloku
Jeśli klikniemy edytuj blok ContestStats/stats to pokażą nam się 2 tabele
1. tabela Current Stats to informacja o obecnych ustawieniach bloku do użycia jako "ściągawka"
2. tabela służy do zmiany układu aktywacji dezaktywacji
Dlaczego 2 tabele hmm nie wiem jak inaczej połączyć obecną konfigurację bloku z możliwymi nowymi wpisami w module...
Uprawnienia działają tak jak w PendingContent
Opcja aktywacji wpływa na widoczność danej statystyki w danym bloku
Uprawnienia wpływają na ogólny dostęp do danej statystyki dla danej grupy w danym bloku
To taki mały manual zapraszam do testów i piszcie co myślicie
Pozdrawiam