ShoutBox 1.2

Prezentuję kolejną wersję ShoutBox 1.2. Wizualnie w zasadzie nic się nie zmieniło. Główne zmiany dotyczą poprawienia funkcjonalności i łatwości użycia.

Oto główna lista zmian:

  • Plik konfiguracyjny
    Tworząc ShoutBox przygotowałem klasę i przykład jej użycia. Przykład miał służyć jedynie do pokazania jak używać/podpiąć Shouta pod Wasze serwisy. Jednak okazało się, iż wiele osób traktuje tę paczkę jako gotowe rozwiązanie i miało trochę problemów chociażby z konfiguracją dostępu do bazy. Stworzyłem więc też plik konfiguracy, w którym można ustawić większość najważniejszych rzeczy, takich jak: dostęp do bazy danych, prawa dla gości, nazwy moderatorów, włączenie kompresji i wiele innych. Opisywać tego nie będę, gdyż przy każdej opcji w pliku cfg.inc.php dałem komentarz opisujący co dana opcja robi i jakie może przyjmować wartości.
  • Komendy
    Do tej pory komendy były w całości zapisane w formatterze, przez co ich kod ładowany był niezależnie od tego czy było polecenie komendy czy też nie. Dodatkowo tworzenie własnych komend lub też modyfikacja już istniejących nie było zbyt przyjazne dla użytkownika.
    Od teraz każda komenda będzie klasą i będzie ładowana tylko wtedy, gdy nastąpi jej wywołanie. Domyślnie klasy komend znajdować się będą w katalogu ./libs/commands jednak możecie zmienić sobie tę lokalizację poprzez własciwość commandsPath.
    Nazwy plików i klas komend są ściśle określone, by można było je bez problemu i automatycznie załadować. Nazwa pliku budowana jest następująco: ShoutBoxCommandNazwakomendy.class.php a nazwa klasy: ShoutBoxCommandNazwakomendy. Czyli przykładowo jeśli naszą komendą będzie help, to należy utworzyć plik w katalogu ./libs/commands o nazwie ShoutBoxCommandHelp.class.php zawierający klasę ShoutBoxCommandHelp.
    Klasa komendy musi implementować interfejs ShoutBoxCommand, który wymaga jednej metody Run(). Przejrzycie sobie kody przykładowych komend, by obadać jak to działa.
  • Osczędność transferu
    Wprowadziłem kompresję gzip danych wysyłanych przez shouta, by zaoszczędzić Wam transfer (opcja gzip). Oprócz takiej opcji, można również ograniczyć wysyłanie pustych nagłówków przy braku nowych wiadomości (opcja save_transfer).
  • Usuwanie starych wpisów
    Teraz macie możliwość automatycznego usuwania starych wiadomości (opcja period_removing). Do tej pory jak ręcznie sobie nie usuneliście wiadomości sprzed roku czy więcej, to one Wam zawalały bazę. Proces ten został zautomatyzowany. Można ustawić co ile dni czyścić tabelę i jak stare wiadomości usuwać. W pliku periodremoving.sbx zapisywane są logi odnośnie operacji czyszczących.
  • Zmiana interfejsu formattera
    Do tej pory do sformatowania czasu, nicka i wiadomości dostępne były trzy metody TimeFormat(), NickFormat, GettingMessageFormat(). Ich funkcjonalność przejęła GettingMessageFormat(), która przyjmuje tablicę wiadomości i ją modyfikuje. Okazało się to przydatne, gdyż czasami do sformatowania nicka potrzebna jest cała tablica wiadomości. W przykładzie dzięki takiemu zastosowaniu dodałem przedrostek "gość_" gdy pisze nie zalogowana osoba.
  • Logowanie IP
    Na prośbę paru osób (w sumie mądrze mówią) dodałem zapis przy każdej wiadomości adresu IP z jakiego ją napisano. W związku z tym tabela ShoutBoxa wzbogaciła się o jedno pole. Jeśli będzie robić upgrade z wcześniejszych wersji, to wykonajcie jedno zapytanie modyfikujące tabelę. Szczegóły w pliku ShoutBox.sql.
  • Modyfikacja autoryzacji
    Drobna zmiana zaszła również w autoryzacji. Do tej pory wyświetlanie shouta i autoryzacja była w jednym pliku ShoutBoxDisplay.php. Wydzieliłem teraz autoryzację do dwóch plików: sblogin.php oraz sblogout.php. Miało to na celu zrobienie tego procesu bardziej dla Was widocznym i zrozumiałym.

Powyższe zmiany pociągnęły za sobą zmiany w interfejsach. Dodałem/usunąłem kilka metod lub zmodyfikowałem przyjmowane przez nie parametry.
Mam nadzieję, iż nowa wersja będzie dla Was łatwiejsza w użyciu.
Niedługo zamierzam dodać komendę do zarządzania adresami IP oraz blokowaniem użytkowników o danym nicku lub danym IP.

Komentarze

 

Dodaj komentarz

 

Dostępne bbcode: b, u, i, url, code, php, css, html, sql, js

Ostatnio komentowane

  1. ShoutBox nospor
  2. ShoutBox Rafał
  3. ShoutBox nospor
  4. ShoutBox Rafał
  5. ShoutBox nospor
  6. ShoutBox Artur
  7. PHP South Coast conf... nospor

Skrypty użytkowników

  1. Klasa obsługi szablo... Lirdoner
  2. Sekcje user76
  3. Klasa walidująca for... user76
  4. Licznik Gości online korey
  5. Form Builder Comandeer
  6. Dynamiczny licznik z... korey
  7. Captcha Comandeer