CrazyStat
Version 1.71 RC1
History
This file lists changes in CrazyStat versions. For even more details, you might want to have a look at the SVN logs.
Version 1.71
1.71 RC1
- password_protect.php: In case you enter wrong user/password, it points you to the FAQ on how to reset your password in case you forgot it.
- password_protect.php now points the user to the Readme in case CrazyStat is not yet installed correctly.
- Changing default value of $config_stat_tree to "ajax" because mk-tree uses absolute positioning which is buggy and normally, ajax-tree works.
- Added a "rate our script on hotscripts" button to the start/login screen. Please rate CrazyStat on HotScripts to make more people aware of it! Thanks.
- ajaxTree: If session expired, a message box is opened with a link to relogin (just like module_refresh.js does)
In 1.70, this did silently fail. In some previous 1.71, this caused HTML code to be shown in GUI! (since general_include.php was introduced in refpages.php)
- IP Anonymization: Now adds an asterisk at the end to make it possible to differentiate between anonymized and real IPs
- CSS: cleaned up font-family declarations
- Documentation: Replaced advanced_presets.txt with html-version advanced_presets.html
- Documentation: New FAQ entry regarding $config_ip_anonymous
- Encoding: Using mb_str*-functions now to make keywords-module UTF8-compatible
- Browser: added Firefox 13-20, just in case ;-)
- added new bot: BingPreview, Microsoft Bing's preview generator (which appeared as KHTML/Win7 before - Microsoft is using Apple Webkit!? Trident (IE's engine) not suitable!? )
- fix: If browser could not create md5-hash, changing password caused set the password hash to "" which cannot match with any password and makes it impossible to login.
Resistant-X made me aware of this bug, see Forum post
- Fix: Chrome did not hash the password before submitting the login form.
- Fix: two bugs fixed where div/0 could happen (if no data is there yet)
- Fix: Fixed some minor bugs introduced in beta1 and beta2
- Translated some code and comments into English
1.71 beta2
- Replaced hard-coded memory-limit in show_log.php with configuration-variable like in analyze.php
- Average visiting time: split in minutes and seconds
- Memory limit: Moved this into general_include.php and made sure it is set everywhere else before the session is started. Because with a lot of data, we might get huge sessions that need a lot of memory, so we need to increase memory limit before starting the session.
- Some minor bug fixing that caused notice errors and bugs introduced in beta1
- Translated some code and comments into English
1.71 beta1
- Removed workarounds for PHP4 and old GDlib. This means PHP4 is not supported anymore. PHP 5.1 is at least required. GDlib 1.x is not supported anymore.
- Russian language file added (thanks to Vladimir for the translation)
- Danish language file added (thanks to Liza Overgaard for the translation)
- file-module: link entries to the file mentioned ($config_stat_files_link added)
- IP anonymization reworked. This is default now. See FAQ for details.
- Optionally, CrazyStat now respects Do-Not-Track headers (and does not record those users). See
$config_respect_dnt and $config_counter_dnt_text
- Average + total visiting time in hits-module
- New Logo by kartoffelpfluecker, gray colors now slightly blue, favicon added
- Browser: Firefox 5-12 and IE10 added, IE8 and IE9 now correctly detected even if in compatibility mode
- added UTF-8 as charset everywhere where htmlentities() is used (avoid problems with Russian and similar languages)
- analyze.php skips corrupt lines with more columns than expected
- DirectoryIterator used instead of opendir()
- Reformatted some code. Currently, some files are formatted according to the new style, some to the old. All files will have new style in upcoming versions.
- Translated some code comments into English
- ~ as average symbol in English
- Comma or dot as decimal separator: Defined a lang-Constant and used number_format
- Cookie "lang" renamed to "CrazyStat_lang" to avoid collisions
- added "pointer" cursor over table headings to make user aware that it's sortable
- robots.txt: "crawler" now a generic keyword, deleted the specific robots entries that contain "crawler"
- improved OS detection slightly: more mobile phones. Moved down strings that might cause false positives (like Win).
- increased redirection time in anonymous_redirect.php because 1 sec is considered like a permanent 301 redirect by some search engines
- Fix: escaping # (doh :-| )
- Fix: blind.gif was removed in 1.70 but is still used when $config_xhtml=true (which resulted in 404 errors, which were not shown but logged by the server)
- Fix: logs.php brought PHP warning if no logfile (e.g. after everything was deleted)
- Fix: Lots of invalid HTML fixed, mostly in documentation
- Fix: Pie chart zoom (title): module is not translated and lower case in German
- Fix: corrected language constant (refresh-button of hits-module)
- Fix: about-dialog: languages other than de/en linked to inexisting FAQ and Readme files (now link to English file)
- Fix: In FAQ: corrected codes for (X)HTML inclusion (encodeURIComponent added around referer)
- Fix: Fixed lots of bugs that produce PHP Notice errors (undefined array indexes or variables)
- Fix: Screen resolution: "?" -> "no JavaScript": replace this after caching (language-changing causes troubles otherwise)
- Fix: Screen resolution: undefined x undefined: list as "not saved" (browser < JavaScript 1.2)
- Fix: clear_module() did not produce enough days if the month had 31 days which resulted in weird ordering
Version 1.70
1.70 Final
- Dutch language file added (thanks to plaise.nl)
- Operating System Detection: Linux now also detected if lower case (seldom)
- Robots: Introduced generic detection strings and deleted some specific ones that are covered by the generic ones.
- $config_stat_memory_limit added to adjust the memory limit (which was hard coded before). New default is now 128MB (60MB before).
- One typo in English languagefile corrected
- Fix: If the current month has less days then the month before, some presets showed empty entries (no visitors) for days that in fact had visitors.
RC4
- Security Fix: The preset-form included the Session-ID in an insecure way into the html which makes XSS possible
- faq_en.html: Translation mistakes (Google translation) manually corrected
- Login-form now warns, if password has to be transferred unencrypted because src/extensions/md5.js is missing
- in show_log.php, unknown resolution is not ? anymore but the language-constant is used. You can now also search for the language constant and get these results.
- Corrupted cache-files (e.g. if disk was full) are now automatically detected and cleaning of cache is then allowed (even if not allowed by configuration) to fix the issue
- show_log.php marks robots as such (+ gray text)
- unused lytebox-themes have been deleted out of the CSS to reduce file size
- added $config_ip_anonymous to usr/config.php to make users aware of this setting
- Fix: In IE6, the menu didn't work properly because its transparent color and its fixed position
- Fix: Refreshing a search result (filter) using the refresh-button didn't work
- Fix: Checking relative time stamps did only work when language was English (not for German)
- Fix: in logs.php selecting multiple files to search/delete did not work in some browsers (e.g. FF4, IE6)
- Fix: Managing Logs and presets was (partly) not possible without cookies because the session-id was not passed everywhere
- Fix: With javascript disabled, the new menu got kind of broken because the extra buttons were not styled. Now there is a new icon for the "manage presets"-button and an improved style of the "Go"-button (to change the preset).
- Fix: if the session timed out or got destroyed, logging in with the correct password did not work on the first attempt. This is now fixed by getting the current rand-value to salt the password using AJAX before calculating the hash.
- Fix: when switching between user agent and browser/system in show_log.php, the page and direction where set back to default
- Fix: in show_log.php, the text-view still displayed 32bit color depth instead of 24 (32 does not make any sense)
- Fix: Typo in 2 config/set variables in faq_de.html corrected
- Fix: If there were a lot of very small (<1%) pie pieces, these added up so the first (biggest) piece got smaller than it should (inaccuracy added up)
- Fix: Some modules which support limit and are ordered descending still highlighted some empty values like the max-entry of modules that do not support "limit"
- Fix: In MS IIS, $_SERVER['REQUEST_URI'] is not always set so CrazyStat's file-module didn't work. This work-around should fix this.
- Fix: Two typos in German and two in English language file corrected. Also a typo in the constant-names corrected. Some texts in preset_editor.php were fix (English) and not translated.
- Fix: Several Fixes of invalid XHTML
- Fix: Copyright in comment was still 2010 instead of 2011
- Fix: Links to en.christosoft.de instead of www.christosoft.de if English is active
- Fix: about.php: christosoft-link didn't have a target=_blank so it opened inside the lyteframe
- Fix: Operating Systems: Windows 7 Media center was detected as Windows XP Media Center, OS/2 -detection improved
- Browsers: MSIE 9 and Firefox 4 added to browser.txt, some Mozilla Browsers separated
- Robots: Loads of robots added (especially Bingbot which was not yet there for some reason - only msnbot was there). Every robot listed on http://www.useragentstring.com/pages/Crawlerlist/ should now be detected.
RC3
- Bugfix: Refreshing the log (in show_log.php) only worked for one entry and only once
- Bugfix: preset() didn't delete empty entries of outdated cached data (Cache cleaning needed to clean up your cache)
- Bugfix: Error message in language files referred to readme.txt which is now readme_xx.html (xx being the lang). Link added here.
- Bugfix: stream_get_wrappers() is only available in PHP5 and caused an error in PHP4
- Bigfix: PFC didn't work with GOON (after max_execution time was reached)
- Bugfix: when a language was chosen on login, the following files did still use the default lang: about.php, anonymous_redirect.php, nojs.php, piechart.php
- Bugfix: about.php: English donation didn't work correctly
- Bugfix: English lang file used "Page Impessions" but "Page Views" seems to be the correct English term
- Bugfix: The update instructions for 1.7x didn't mention replacing stat/usr/keywords files
- Operating Systems: Added some mobile devices - devices are not all grouped as "mobile phone" anymore
RC2
- Bugfix: Smaller bugs in the log-tool regarding compression fixed
- Bugfix: German "Umlaute" in German documentation replaced with entities for servers that have a default-charset that is not UTF8
- Bugfix: Imagesize of counterimage or alternative image is now detected locally even if $config_rel_path is a URL
- Bugfix: The rel-names of the default preset where not language-dependent but always English
- Bugfix: In calendar / relative, most GUI strings were English-only
- Bugfix: example.php was still in German (now English)
- Bugfix: $set_counter_text didn't work
- Bugfix: $set_counter_file_name didn't work
- If counter is deactivated, no redirection to the blind image is used anymore, but the blind image is returned directly (reduced HTTP-overhead)
- Language can be chosen when logging in (can be disabled using $config_stat_lang_fix)
- doc/relative_time-spans.txt converted into HTML
- Simple right management with $config_stat_user_* introduced
- stat/show_stat.php added as redirection to stat/src/show_stat.php. This file and stat/index.php now redirect 301 (instead 302).
Note: CrazyStat was available in German only up to version 1.70 RC1 which is the
first released version to introduce multilanguage-support.
Therefore I did not think it was necessary to translate "history" into
English. Newer changes are documented in English.
If you can't live without knowing about CrazyStat's old days, contact me
and I might translate it for you ;)
RC1
- Oberfläche Multilanguage (bisher de/en). Code, Kommentare und interne Bezeichner
werden langfristig Stück für Stück komplett englisch sein, damit wurde schon
ansatzweise begonnen.
- Echte gzip-Kompression mit zlib komprimiert Logdateien und Cachedateien
und spart so enorm viel Webspace. "Einfache Kompression" von CrazyStat 1.6x
sowie das Logformat 1.5 werden nicht mehr unterstützt. Log-Tool kann
mit "einfacher Kompression" komprimierte Dateien gz-komprimieren sowie
gz-komprimierte Dateien entkomprimieren.
- Weiter verbesserte Sicherheit der Passwortübertragung mittels salted MD5-Hash.
Warnung, falls Passwort im Klartext übertragen werden muss (da kein JS),
Passwortübertragung beim ändern jetzt auch als MD5-Hash falls
$config_stat_password_md5=true, sonst Warnmeldung
- Bei deaktiviertem Passwortschutz sind manche Funktionen (Cache
löschen, Presets ändern, Logdateien löschen/downloaden) nun standardmäßig
deaktiviert und lassen sich per config aktivieren
- IPs werden auf Wunsch anonymisiert (salted MD5-Hash) ($config_ip_anonymous).
Außerdem kann das Log-Tool jetzt IPs anonymisieren.
- Salt-String wird automatisch nach der Installation auf einen zufälligen Wert gesetzt
- DoNotCount-Cookie verwendet Salt-String
- Filter: Umschalten Browser/System<->user agent möglich
- Daten-Tabellen können jetzt durch Klick auf Spaltenkopf sortiert werden
(dank sortabletable-extension von webtoolkit.info)
- Kreisdiagramm-Zoom: Header und Footer eingefügt, sortierbar
- Lytebox für Kalender & Kreisdiagramm-Zoom
- Waitbox lässt sich verstecken
- Dateien in usr, src und doc aufgeteilt
- deutsche Dateinamen durch englische ersetzt:
- beispieldatei.php -> example.php
- eintrag.php -> src/include.php
- img/blue.gif -> src/img/bar1.gif
- img/grau.gif -> src/img/bar0.gif
- kalender.php -> src/calendar.php
- keywords/systeme.txt -> usr/keywords/os.txt
- kreis_zoom.php -> src/pie_zoom.php
- kreisdiagramm.php -> src/piechart.php
- LIESMICH.txt -> doc/README_de.html bzw README_en.html
- lizenz.txt -> doc/license.txt
- modul_ausgabe.php -> src/module_out.php
- modul_refresh.js -> src/module_refresh.js
- passwortschutz.php -> src/password_protect.php
- countergrafiken -> usr/counter_styles
- Performance der Analyse um ca. 8% verbessert (globale IP-Sperre vorgezogen)
- AjaxTree JS-Performance verbessert
- Zeichensatz auf UTF-8 umgestellt/vereinheitlicht, keine unnötigen Entities mehr,
stattdessen senden des korrekten HTTP-Headers
- Kalender: relative Zeitspannen einstellbar (für Preset-Erstellung benötigt)
- Presets konfigurierbar ausgelagert, eigene Presets können über GUI erzeugt
und verwaltet werden, neue Presets, neues Default-Preset, Default-Preset
kann konfiguriert werden
- Default-File-Cache (DFC) zu Preset-File-Cache verallgemeinert
--> Statistik-Auswertung mit Preset-Einstellungen enorm beschleunigt
- getDateFast durch getdate ersetzt und date_default_timezone_set() eingesetzt
-> dadurch wird getdate schneller als getDateFast (-> Auswertung beschleunigt)
- Log-Verwaltung wurde verbessert: Löschen von Logdateien, Spalte mit Log-Größe,
suchen in mehreren bestimmten Logdateien, Icons ersetzen Text-Links
- Suche/Filter jetzt ohne JavaScript möglich (bis zu 10 Bedingungen)
- Durchschnitts-Berechnung für alle Module in der Fußleiste
- Höhe der Module bei Limit (nur x Einträge anzeigen) dynamisch
- Imagemap über Kreisdiagramme sodass bei MouseOver der Bezeichner sowie der
Prozentwert erscheint
- Neues Icon-basiertes Menü ersetzt Textlink-Menü
- Oberfläche aufgefrischt, Rahmen heller, Overlay während des Ladens
- Messagebox & Waitbox zusammengefasst, Messagebox bei Session Timeout
- 32 bit Farbtiefe -> 24bit (da in Wirklichkeit nur 24bit angezeigt werden,
siehe z.B. Wikipedia)
- config.php wurde in src/config_default.php (Default-Werte - nicht ändern!) und usr/config.php
(angepasste Werte - hier eigene Einstellungen vornehmen) aufgeteilt
- Dokumentation der Config-Einstellungen aus der config.php in ein HTML-Dokument
übernommen (doc/config_settings_de.html bzw. config_settings_en.html)
- Die meiste Dokumentation wurde aus text-Dateien in HTML-Dateien übernommen
- about.php: Neuer Dialog mit Infos zur CrazyStat-Installation und Links zur Dokumentation
- Verbesserte Fehlerbehandlung
- keywords/os.txt: NetBSD und weitere mobile Geräte (Smartphones) hinzugefügt
- Security Fix: $set_counter_datei_name (neuer Name: $set_counter_file_name) wird jetzt
per basename() entschärft (diese Lücke tritt nur auf, wenn register_globals aktiv ist)
- Security Fix: mehrere XSS-Lücken geschlossen
- Bugfix: Leere Zeilen in robots.txt erzeugten Fehlermeldungen sodass der
Counter nicht erschien. Jetzt werden leere Zeilen ignoriert.
- Bugfix: Such-Formular-Inhalt (Filter) wurde beim Hinzufügen einer weiteren
Bedingung gelöscht (document.write durch DOM ersetzt)
- Bugfix: 30-Tage-Monate erzeugten teilweise 31 Einträge (letzter leer)
- Bugfix: Kreisdiagramm-Zoom-Bug behoben (Reihenfolge der Legende)
- Bugfix: Referer-Tree Ajax Bug: beim Nutzen von "All" im Referer-Modul
wurden die Hintergrund-Infos zu den zusätzlichen Domains (jsdata) nicht
aktualisiert sodass beim Klick auf "+" keine Referer nachgeladen wurden
Version 1.63
- Bilder (Icons etc.) in Verzeichnis stat/img verschoben
- Icons ausgetauscht durch Icons aus dem Silk-Iconset
Vielen Dank an Mark James!
- Farbe der Modul-Titelleiste aufgehellt
- Diagramm-Farben verändert (Default-Werte von $config_stat_pie_colors)
- neues Icon für Balken/Kreisdiagramme, wechselt je nach Stadium
- Neuer Default-Wert $config_stat_max_style="font-weight: bold"
- Gesamt-Analyse des Logfiles aus show_stat.php in analyze.php ausgelagert
- Ausgabe der Module in modul_ausgabe.php ausgelagert und Code optimiert
- Ajax statt Neuladen der Statistikseite: Beim Refresh, Limit/All-änderung,
Diagramm-Umschaltung, IP-Sperren-Umschaltung, Kalender-änderung etc. wird
die Seite nicht mehr neu geladen sondern nur das Modul per Ajax neu geladen
- In den Modulen "Gesamt"-Fußzeile hinzugefügt, deshalb Höhen der Module angepasst
und neue Default-Werte $config_stat_pie_size=89 und
$config_stat_limit["dateien"]=10
- Wenn Module begrenzt (Limit) angezeigt werden, werden bei der Anzeige
nicht mehr alle Einträge durchlaufen -> schneller
- Auswertegeschwindigkeit verbessert und Ram-Nutzung verringert
- Error-Handling und Meldungs-Ausgabe verbessert:
Meldungs-Fenster (wie waitbox) schwebt über der Statistik,
Fehlermeldungen verbessert (z.B. wenn Log-Ordner nicht existiert
Möglichkeit zum Anlegen)
- Hinweistext wenn PHP-Code nicht geparsed wird eingefügt
- Log-Ansicht: Browser/System (ausgewertet) alternativ zu User Agent String
- Diverse Robots hinzugefügt
- Diverse Systeme eingefügt (OS/2 Warp, Playstation3, Mobile Phones)
- Browser Google Chrome eingefügt (und Netscape 9)
- alternative Browser-Keywords-Datei (browser_wie_version_1-52.txt) durch
browser_engines.txt ersetzt (unterscheidet nur Engines, keine Browser)
- Keywords: Reihenfolge der Wörter wie erste Suche
- Ram-Nutzung in Debug-Info eingefügt
- config_counter_link kann jetzt %CRAZYSTATPFAD% enthalten, was dann durch
den config_rel_pfad, oder set_rel_pfad (falls gesetzt) ersetzt wird
- Im Modul Dateien lässt sich das verstecken des Pfads jetzt über
$config_stat_files_hide_dir an/abschalten
- Log-Tool verbessert: Automatische Vorgabewerte, Schrittreihenfolge etc.
- Bugfix: Kalender-Eingaben (Start/Ende) ohne führende Nullen werden korrekt
interpretiert
- Bugfix: Bei Suche/Filter in Logdateien werden die Logdateien jetzt
in korrekter Reichenfolge durchsucht
- Bugfix: Passwort ändern: Wenn wiederholtes PW nicht identisch ist wurde
nicht erkannt
- Bugfix: Robots sicher geblockt
- Bugfix: Unter Systeme erscheinen auch "Sonstige"
- Bugfix: Fortsetzen des Auswertens bei Abbruch wegen max_execution_time
funktionierte nicht
- Bugfix: Default-Filecache unterdrückte u.U. Zugriffe (beim Aktualisieren
eines einzelnen Moduls oder wenn eine neue Datei hinzukommt)
- Bugfix: Kalender funktioniert auch im Modul "Monate"
- Bugfix: Manche Suchbegriffe wurden nicht erkannt
- Bugfix: Umlaute bei Keywords werden korrkt angezeigt
- Bugfix: kreisdiagramme: Fehlermeldung ("Keine Daten") nicht mehr zu klein
- Bugfix: Copyright-Hinweis auf Home/Login-Seite neu platziert um Problemen bei
geringer Monitorauflösung/Fensterbreite zu beseitigen
- Bugfix: Erscheinungsbild des Loginformulars im IE korrigiert
Version 1.62B
- Bugfix: Short-Tags-Bug behoben (optional)
- Firefox 3 und IE8 wird erkannt
Version 1.62 A
- Bugfix: Kreisdiagramm-Bug (nur grauer Kreis) behoben (optional)
Version 1.62
- "Hits/Suchbegriff"-Modul hinzugefügt (keywords)
- Mit keywords/queryregex.txt kann die Suchbegriff-Auswertung flexibel angepasst
werden
- System-Erkennungsstrings in keywords/systeme.txt ausgelagert
- browser.txt und referer.txt in Ordner "keywords" verschoben
- Filter/Suchen in den Logdateien (logs.php/show_log.php)
- Kreisdiagramm-Zoom
- Kantenglättung der Kreisdiagramme
- Login (passwortschutz.php): Aussehen überarbeitet, "Passwort ändern" hinzugefügt,
Passwörter in config_pass.php ausgelagert
- Nutzerabhängige Config-Einstellungen
- IP wird jetzt auch bei den meisten Proxys korrekt geloggt
- Ajax-Tree-Extension: Host nicht mehr bei jedem einzelnen Eintrag
- Beim Klicken auf Links zu externen Seiten (Referern) werden jetzt keine Referer
mehr übermittelt (also auch keine Session-IDs)
- Logout-Button in logs.php und show_log.php eingefügt
- show_log.php linkt am Ende der Logdatei zur nächsten/vorherigen (je nach Richtung)
- $set_xhtml und $set_xhtml_noscript ermöglichen auf unterschiedlichen Seiten unterschiedliche Einbindungsmodi
- Ordner werden unter "Dateien" jetzt besser mit abschließendem Slash angezeigt
(Anzeige im Modul "Dateien" komplett überarbeitet)
- Sonntag jetzt normalerweise letzter Tag der Woche (in config anpassbar)
- Config-Einstellungen mit !!! und ??? markiert
- HTML 4.01/Strict Valide wenn $config_counter_link_target=false (neu) und
$config_xhtml=false
- Bugfix: Log-Ordner mit Zahlen jetzt mit Splitting möglich, Bugfix statX.log X>11
- Bugfix: show_log.php erkennt das Ende der Logdatei auch bei rückwärts
- Bugfix: Presets, die den auszuwertenden Zeitraum verändern funktionieren wieder
- Bugfix: Notice-Fehler in kreisdiagramm.php bei 0 Hits gefixed
- Bigfix: Links auf externe Seiten werden jetzt hoffentlich endlich korrekt
und valide verlinkt (linkprep-Bugs)
- Bugfix: RC-Handling in stat.php jetzt korrekt
Version 1.61
- AjaxTree-Extension für Referer. Jede 2. Zeile andere Farbe.
- Default-Cache bringt enorme Zeitersparnis beim Auswerten mit Default-
Einstellungen.
- Es können jetzt mehrere Nutzer mit unterschiedlichen Passwörtern angelegt werden.
Die abgespeicherten Passwörter können als MD5-Hash abgespeichert werden
($config_stat_password_md5). Mit der MD5-Extension md5.js kann das Passwort
als MD5-Hash vom Clienten zum Server übertragen werden (unabhängig von
$config_stat_password_md5).
- Kalender: Jahr beliebig wählbar, Handling verbessert, nimmt aktuellen Wert als
Voreinstellung (als "Zeitspanne")
- Modul "Hits" hat jetzt auch einen Aktualisieren-Button
- IP-Sperren für bessere Performance (und Default-Cache) umgestellt
- CrazyStat-Logo
- Waitbox ersetzt "Bitte warten"-Text neben Copyright
- An alle Links Session-IDs angehängt um Betrieb ohne Cookies zu ermöglichen
- Referer ohne Baum nicht mehr mit Scrollbalken
- Horizontale Modulscrollbalken durch Mindestbreiten verhindert, verbesserte Anzeige
bei kleineren Bildschirmauflösungen (bei geringer Breite)
- Verbesserungen in show_log.php: Referer verlinkt, Valides, lesbareres HTML. "Text"
Anzeigemodus jetzt ohne fehlerhafte Zeilenumbrüche, Farbtiefe hinzugefügt,
Code verbessert
- Nicht erfasste Farbtiefe ('Nicht gespeichert') kann jetzt ausgeblendet werden
($config_stat_colordepth_unsaved)
- Die Breite der Balkendiagramme kann jetzt angepasst werden
($config_stat_bar_length)
- Einige Browser (v.a. Download-Manager) und Robots hinzugefügt
- Betriebssystem-Erkennung besser erweiterbar gemacht (ähnlich Browser)
- Farbtiefen-Umrechnung für bessere Performance erst bei Ausgabe
- Von show_stat.php erzeugtes XHTML besser eingerückt
- Leere/korrupte Logzeilen werden jetzt übersprungen (nicht gleich Abbruch)
- Die Größe des Counters/der Ersatz-Grafik wird jetzt als HTML-Attribut angegeben,
um bei blind.gif Lade-Symbol zu unterdrücken und Ladezeit zu beschleunigen.
- Bugfix: $config_stat_long_bars wirkt sich jetzt auch auf den Referer-Baum aus
(bei false)
- Bugfix: XSS-Lücken beseitigt
- Log-Tool: Leert den Zielordner jetzt anstatt nur zu ersetzen und legt ihn falls
nicht vorhanden an
Version 1.60
- Das neue Logdatei-Format (1.6) erzeugt sehr viel kleinere Logdateien (bis über
50% kleiner). Allerdings ist es nicht mit den alten Format (1.5) kompatibel.
CrazyStat 1.6 kann deshalb beide Formate verwenden (in config.php einstellbar).
Beide Formate sind durch ein Konvertierungstool ineinander umwandelbar.
- Logdateien im neuen und alten Logformat können jetzt nach einer gewissen
maximalen Dateigröße gesplittet werden. Die Logdateien heißen jetzt
(stadardmäßig) stat0.log wobei 0 hochgezählt wird. Außerdem liegen Logdateien
jetzt in einem extra Ordner (Standard:"logs"). Das Anzeigen und Backuppen der
Logs wurde zusammengefasst (logs.php).
- Von mehreren Dateien benötigte Funktionen zum Umgang mit Logdateien finden sich
jetzt in der Datei log_funcs.php
- Der von CrazyStat erzeugte Code zum Einbinden verwendet im XHTML-Modus jetzt kein
document.write mehr.
- Die Farbtiefe wird jetzt geloggt und ausgewertet (in beiden Logformaten)
- Hits/User hinzugefügt
- Auch mit älteren GDLib-Versionen können jetzt farbige Kreisdiagramme erstellt
werden.
- Dank Scrollbalken wird jetzt beim Anzeigen aller Eintäge das Layout nicht mehr
zerstört (s. $config_stat_scroll).
- Die Checkbox auf der Anmelde-Seite ist jetzt standardmäßig nur aktiviert, wenn
der Cookie schon gesetzt ist
- Oberfläche verbessert: Kleinigkeiten wurden angepasst. So schließen jetzt rechts
alle Module bündig ab. Außerdem kommt CrazyStat mit ein bisschen weniger
Bildschirmplatz in der Höhe aus, was evtl. Scrollbalken verhindern soll.
- Der Text "Cookie" lässt sich jetzt ändern und abschalten
($config_counter_cookie_text).
- Ob die Baumansicht der Referrer Standard ist, lässt sich jetzt einstellen
($config_stat_referrer_tree).
- Falls die Auswertung der Statistik länger als die max_execution_time dauern
sollte, kann das Auswerten jetzt fortgesetzt werden
- In den Dateinamen kann man bestimmte Daten jetzt ersetzen. Dies ist z.B.
hilfreich wenn man Dateien umbenannt hat (s. $config_stat_files_replace).
- Falls die Logdatei nicht exisitiert und eine erstellt werden muss, wird jetzt
direkt der Counter angezeigt.
- Auf jeder Seite lässt sich jetzt die Countergrafik einzeln festlegen
($set_counter_datei_name)
- "Zeitraum bestimmen" intern auf Timestamps umgestellt. Dies beschleunigt die
Auswertung des neuen Logformats. Außerdem wurden hier Sicherheitslücken
geschlossen (es konnten unkontrolliert Daten in die Session geschleust werden).
Allerdings ist es jetzt nicht mehr möglich, nur auf einen Monat zu be-
schränken (z.B. alle Zugriffe im Juli in allen Jahren).
- Der Kalender zur Beschränkung auf einen Zeitraum hat als Standardwert jetzt
den Zeitraum von heute auf morgen (dies entspricht allen heutigen Zugriffen).
Da stehts 0 Uhr des Tages genommen wird ergab der alte Standardwert nie Zugriffe.
- Counter-Bild wird jetzt ein Timestamp-Parameter übergeben um Caching zu verhindern
- Die Buttons für Limit/all werden nurnoch angezeigt, wenn mehr Einträge als der
limit-Wert vorliegen
- "Cahe löschen" wurde in "Alle aktualisieren" umbenannt und den Modulen
Links hinzugefügt um nur ein Modul zu aktualisieren
- HTML der Statistikauswertung jetzt lesbarer (Kommentare und verbesserte
Einrückungen)
- Nicht-JavaScript-fähige Browser können jetzt die Statistikauswertung fast
uneingeschränkt verwenden. "Zeitraum bestimmen" und das Auswählen von
Presets wurde entsprechend verbessert, andere (unwichtigere) Funktionen
wurden mit einer Meldung versehen.
- XHTML-Validität von show_stat.php verbessert
- robots.txt hinzugefügt, betreffende Robots werden komplett ignoriert
- browser.txt aktualisiert (IE 7, FF 2)
- Bugfix: Reload-Text kam öfters obwohl kein Reload vorlag.
- Bugfix: Die Spalten-Überschriften "Anzahl" und "Anteil" der Referer ist jetzt
bei der Baumansicht im Internet-Explorer nicht mehr verschoben
- Bugfix: Kleine Bugs, die Notice-Fehler erzeugen können, entfernt
- Bugfix: Neue Version 1.01 der Extension mktree integriert, die einen Bug fixed
- Bugfix: Lücke, die eventuell unberechtiges Einloggen ermöglicht gefixed
Version 1.53
- stat.php durch Einsatz von fopen statt file wesentlich weniger RAM-intensiv
- die Statistikauswertung lässt sich jetzt auf genau definierte Zeitspannen
einschränken. Hierzu wurde CalendarPopup von javascripttoolbox.com
verwendet.
- Referer werden jetzt nach Domains in Baumansicht gelistet. Dazu wurde DHTML Tree
von javascripttoolbox.com verwendet.
- Den Buttons in show_stat.php Title-Texte hinzugefügt
- Lange Dateinamen werden gekürzt, ungekürzt im title-Text
- Die Browsererkennung kann durch das Editieren der Datei browser.txt frei nach
Ihren Wünschen erfolgen (s. FAQ).
- Standardmäßig detailliertere Browser und Systemauswertung
- Logdateidownload sicherer und schneller
- Tabellen-Log und Text-Log stark verbessert (blättern, Referer hinzugefügt, rück-
wärts auslesen)
- Funktion der Einzeldateien durch einheitliche Kommentare besser dokumentiert
- Durch Cookie kann man die eigenen Seitenaufrufe der Statistik nicht zählen lassen
- Code stärker XHTML 1.0 transitional valide
- Bugfix: Die Refererdiagramme haben jetzt auch bei ignorierten Referern
wirklich "lange Balken"
- Bugfix: Alt/Title-Text der Limit-Einstellung
- Bugfix: in "src/include.php" wird "config.php" jetzt stets korrekt eingebunden,
vielen Dank an Florian Steiner und Stefan Kehrer.
Version 1.52
- gif-Countergrafiken werden akzeptiert, falls möglich
- transparente Grafiken werden als gif ausgegeben, falls möglich
- Fehlermeldungen des Counters werden jetzt als Grafik ausgegeben
- show_stat.php wurde aufgeräumt und ähnliche Teile in Funktionen gefasst->kleiner
- show_stat.php sollte XHTML valide sein, style.css sollte CSS valide sein
(kann je nach Statistikdaten nicht der Fall sein)
- In Balkendiagramme werden wenn $config_stat_long_bars auf true gesetzt ist
die Maximalwerte als 100% genommen, sodass Unterschiede besser erkennbar sind
- "Cachen" ermöglicht, immer nur die Module neu auszuwerten, deren Einstellungen
verändert wurden
- Referer sind verlinkt
- Mehrere Referer können ausgeblendet werden, es werden nur noch Seiten ausgeblendet,
die mit den genannten Strings anfangen. Dies soll verhindern, dass Referer der Form
http://seite.de/GeheAufSeite.php?seite=http://www.meineseite.de ausgeblendet werden.
- stat.php liest die Log jetzt nur noch einmal ein
- Mehr Browser und Systeme erkannt (Media Center Edition extra)
- Bugfix: Zuwenig gezählte "User online" werden jetzt richtig gezählt
- Bugfix: URLs werden jetzt wirklich immer encoded
- Bugfix: Für Transparenz wird jetzt wirklich Pixel 1/1 und nicht 2/2 verwendet
Version 1.51
- Die in $config_stat_files_delete angegebenen Zeichenketten werden für die
Statistik aus den Dateinamen gelöscht
- Dank $rel_pfad können jetzt Dateien in unterschiedlichen Ordnern von der Statistik
erfasst werden (s. FAQ).
- Referer wird protokolliert und ausgewertet (Logs abwärts kompatibel)
- index.html schützt Verzeichnisstruktur und bietet News zu CrazyStat
- Der Code innerhalb der Seiten ist jetzt valides XHTML
- Copyright-Hinweis verschoben und verlinkt
- Cursor über Dateien geändert um auf die Funktion des vollständigen
Anzeigen von Dateinamen aufmerksam zu machen
- Wartehinweis verbessert (z.B. Sanduhr-Mauszeiger)
- Bugfix: scr statt src. Damit sind die Balkendiagramme jetzt ein wenig anders.
- Bugfix: $PHP_SELF wird nicht mehr benötigt
- Bugfix: Counterstand!=Statistik (IP-Sperre buggy)
- Bugfix: URLs werden encoded => Get-Daten werden nicht abgeschnitten
- Bugfix: Kreisdiagrammfarbenlegende: Grautöne
- Standard-Config angepasst
Version 1.50
- Erste öffentliche Version, unter der GPL veröffentlicht.