Releases: Newcomer1989/TSN-Ranksystem
Release 1.2.7
! hashing of ip-address (reason EU-GDPR) as option (webinterface -> other); TS user needs to reconnect to the TS3 server to be able to verify with stats page after
! added support for MySQL 8.0 and MariaDB >= 10.3
* increased session security
* increased security on stats/ page; thx to JVMerkle
* increased performance on stats page; it is shitty fast now :-)
* updated TS3 PHP Framework (version 1.1.33 from 18 April 2018)
* updated portuguese translation; thx to Pasha
* modified check on worker.php, if a process is already running
* minor code optimizations, also removed april fool (was only valid on 1st April)
+ added support for special characters (utf-8 mb4), which came with TS server version 3.2.0; before we had it for servergroup names, now for all other needed (among other things: user nicknames)
+ added polish translation; thx to DoktorekOne
+ added CSRF token for protection against Cross-Site-Request-Forgery and replay attacks
- fixed "lost update" problem on manual adding time to an user (function about the webinterface)
- fixed problem, when timezone had a very long name; now all timezone will be supported
- fixed connection problems, when the TS3 query username or password contains special characters
Release 1.2.6
* increased performance (vs. 1.2.4 again in avg. ~25% better now); saves CPU time and memory (RAM)
* updated bootstrap-select to the actual version; bigger selections are now much more faster; thx to caseyjhol the lead developer of it
* changed startup process to be sure the auto updater will runs before the config check
* changed log file rotation; the Bot did a restart on rotation before, now it will stay connected to the TS3 server
* removed unneeded update info check; update notification will now be sent to the admin ID (webinterface -> other), which is multiple since 1.2.4; reworked update notification, which will now be sent on startup after an update
* updated italian translation; thx to jacopomozzy
+ added czech translation; thx to KeviN
- fixed bad config check (servergroup not found); if a servergroup is missed, the Ranksystem will first sync all ts3 servergroups and after that check again the config; only if the config is still bad, it will stop
- fixed wrong ascending/descending sorting, if the site were changed about the pagination
- fixed cross site scriptig vulnerability on stats/list_rankup.php
- fixed problem with special characters inside the server group name; 4 byte chars where not possible to save before and run into a database error inside the Ranksystem log
Release 1.2.5
! disable update support for versions under 1.2.0; when you are using a version below 1.2.0 and want to update, we recommend to do a fresh installation
* changed order of Bot startup procedure; now the update process will be done before the config check; this will make sure the update process will runs also, if the config is wrong
- fixed wrong values in the column nextup on the stats page for user, which are offline
- fixed empty lines in log file on updating the Ranksystem; will take note with updates above 1.2.5
- fixed problem on correction boost, when a wrong server group were configured inside; the configure check prevented the new value from being saved
- fixed problem "not enough data..." for the top user of the month; with version 1.2.4 has been added a new deletion method of unused stuff and the old one has been forgotten to be removed
- fixed special case, if no user was online for at least 1 second for more then one week, the server stats could not be saved correctly
Release 1.2.4
! changed parameter 'check' for the worker.php (startscript). Now this parameter will only start the Ranksystem, if it was crashed. In case the Ranksystem was stopped with 'stop' parameter, it will not start the Ranksystem with 'check' parameter.
! you need to define a verification channel ID to the webinterface -> core; the needed channel has to be set up manually on your TS3 server; for more information read also the online help inside the webinterface at this parameter
* increased performance: on bigger databases it will run much faster (valuable on response speed of chat commands). on smaller databases it will reduce needed resources (CPU)
* improved memory handling (RAM)
* optimized session handling on stats page and webinterface; now the Ranksystem don't touch other sessions from the same domain (relevant to multiple Ranksystem installations or other systems on the same domain, which are also using sessions)
* optimized logs preview on webinterface (site load is much faster; now all lines will be shown, also array outputs on SQL errors; error and critical entries are now red colored)
* send a little more information about Ranksystem instance to ts-n.net like total_user, user_week_ total_online_week [..] (will be sent on update check; normally 2 times a day); there will not be sending any personal data of any user, it is only instance information! also, this information will never be shared without your agreement with third ones or published to be able to associate it with your instance; our plan is to build a summary of stats (of all instances) and perhaps we will share this sometime on a website
+ made the field "admin ID" multiple (unique client ID of the admin of the Ranksystem); multiple admin uuids can be entered comma separated; note that other admins are also be able to reset the password for the webinterface
+ added new chat command "!clean" to the Ranksystem Bot; the cleaning will run at least once a day; with this command you can force to make it instant
+ added a link to the verification process with that it is possible to redeem the token automatically (before it must be entered manually)
+ added new verification step, when the users IP between website and TS3 server differs; at this point the user can register himself also with a token; to protect from spams the user need to join a verification channel, where he will be able to choose himself to be able to receive the token
+ added a few more cleaning checks; now old avatars of deleted users will be deleted from the web space
+ added percentage column for lists of nations, platforms and versions
+ added update notification on stats page and webinterface, when an update was done the last few days ago; appears once a time per browser session
+ added new validation check on TS3 host address to prevent entering a port inside, which would be wrong placed here
+ added new validation check on defined servergroup IDs (rankup definition, servergroup exception, boost); the check will be done at 3 points:
- saving a wrong ID inside the webinterface
- on starting the Ranksystem Bot
- on the Bots job to update the servergroups, when one group gotten removed
+ added check when removing the server icon on the TS3 server; then it will now also remove the icon from the Ranksystem
+ added check when removing an icon of a servergroup on the TS3 server; then it will now also remove the icon from the Ranksystem
+ added check for slow running Ranksystem instance and offer suggestions to optimize the environment
+ added check to top user sites of the week and month; if there are not enough data collected, on this sites will be shown the message "not enough data..." instead of wrong results
- fixed wrong sorting of the column 'next servergroup' on List Rankup (stats page)
- fixed the nations list; full name wasn't showing for some languages, even though they were available
- fixed link to the webinterface on the stats page (and vice versa), which was not working when the website port was not default (80 or 443)
Release 1.2.3
Changelog
! changed location of folder "icons" to "tsicons" due problems with default apache config (personal note to me: apache sucks)
! increase site load on stats/index.php and decrease needed ressources for the Ranksystem Bot, due lost of database index on some installations
* renamed combined_stats.css and combined_stats.js files due some adblocker blocks them
* corrected italian translation; thx to jacopomozzy
* corrected russian translation; thx to bykidi
* corrected english translation; thx to M0V3
* corrected some minor other texts on language files
* optimized value checks inside the webinterface to avoid user error
* optimized some minor code stuff; so it gets minimize better performance
+ added new parameter to messages (rankup notification & command !nextup) with the name of the user (recipient)
+ added new check on install process for windows; the COM_dotnet extension of PHP need to be enabled or the installation will be stopped
+ added new check on install process; when MySQL was choosen on install.php (step 1), it will be checked if PHP MySQL is installed & correct enabled
+ added a button to restart the Ranksystem to success message by saving a change inside the webinterface
+ added two more slowmodes (2 seconds and 5 seconds) for low level server; use it only, if you have trouble with cpu load
+ added portuguese translation; thx to Pasha
- fixed problem on saving ts voice port (which comes with database optimization 1.2.1), when it is over 32767; now full port range 65535 is available
- fixed problem with addon 'assign Servergroups'; servergroups couldn't be given/removed when 'Rank up notification' was disabled
- fixed error on editing dateformat inside the webinterface; new value got saved but not changed on view (reload of site fixed the problem)
- fixed wrong link to the netherlands (nl) language on stats, webinterface and installation page
- fixed error 'calc_serverstats 8', which appears in ranksystem.log; it happened on the special case, if no user with a country flag were on the TeamSpeak server online on a fresh (empty user table) Ranksystem installation (only user over localhost are connected)
Release 1.2.2
Changelog
- Added support for PHP 7.1
- Fixed TS3 PHP Framework library for PHP 7.1 support
- optimized site loading stats/index.php for servericon.png; change from classic image to embedded data
- optimized site loading for stats/ and webinterfac/ due merging the css and js files
- added lines for active times on stats/my_stats.php (it can take a day until all clients are calculated)
- added function avatar delay; delays the download of new avatar files; define the time inside the webinterface - teamspeak
- added free text filter for ranksystem log on webinterface/bot.php
- added french translation; many thx to Quentinti
- added restart after update process; will take effect with versions > 1.2.2
- fixed wrong stats on exception mode 'reset time'; remove now also the history of the count/idle to build correct stats (stats/my_stats.php)
- fixed message next up, when user is excepted; with version 1.2.1 was the exception changed and until this the user get only the message (excepted) if he was excepted by the channel. This is wrong, the user should get the message (excepted) on group or client exception and not on the short point of a channel exception.
- fixed database field for TS3 query port; the field was not unsigned, so there was 32767 as highest value possible (now is the highest value 65535)
Release 1.2.1
Changelog
* optimize database structure; increase the database perfomance
- added statistics based on lastseen (clients online 24h, last 7d, last 30d, last 90d)
- added full list for nations, versions and platforms with user count (linked on stats/index.php)
- unset https warning on install.php if an error occurred; to focus the main problem
- fixed syntax error on italian translation
Release 1.2.0
Changelog
! php-zip (package) is needed on the webserver (see requirements)
! with new update process this is the last update you need to do manually
- updated libraries (jquery lib to 3.1.1, fontawesome to 4.7.0, flag-icon-css to 2.8.0, Raphaël JavaScript Vector Library to 2.2.1, bootstrap touchspin to 3.1.2, bootstrap select to 1.11.2)
- changed handling for the update interval; the update info message will now be sent instant after receiving an update and so long till one use could reached
- moved libraries to folder 'libs'
- allow boost factor 0 (no time gets counted) for misused punishing group, which gets removed automatically
- added automatically update function (more informations on GitHub)
- added other/phpcommand.php to define a different php command (when you have more then one PHP version on your system); default is 'php'
- added exception mode; define how to handle the time for excepted (for more take care about the description inside the webinterface)
- added notify register for channel and server chat; bot commands are now also via channel or server chat possible
- added dutch translation (initiate already the half); thx to 0x0539
- redirect webinterface/ respectively webinterface/index.php to TeamSpeak config, if session is already active
- added check in webinterface on logpath; must end with a slash or backslash
- added check on startup if files on webspace are writeable (needed for update function)
- solved list_rankup.php when scrolling the table header column width changed due fixing on top
- fixed on command "nextup" with mode "active time" a wrong time was given back
Release 1.1.3
Changelog
+ added check php-curl is available on install.php and on bot startup
- added check on startup if logpath exists and is writeable
- added new mode for bot command "nextup"; for more see description in webinterface
- fixed error on command "nextup" (message for each rank - issue 154)
Release 1.1.2
Changelog
! new TeamSpeak permission "b_virtualserver_notify_register" required (for bot commands via text message)
! php-curl (package) is needed on the webserver - for linux "apt-get install php-curl"
- added check to worker.php; if user is root -> show warning
- added commands "help", "version", "restart", "shutdown"; TeamSpeak user can write the command to the Ranksystem bot via private text message; "shutdown" only for the Ranksystem admin
- added command "nextup"; TeamSpeak user can write the command to the Ranksystem bot via private text message and will get their needed time for the next rank up
- added function to reset the password of the webinterface access
- added function to change the password of the webinterface access
- added function to add online time to user (reimplent due lost of version 1.1.0)
- added function to hide the navigation on stats page (webinterface - stats page - show site-navigation)
- added timestamp of getting the last servergroup (only those, which are given by the Ranksystem), which can be shown on the stats/list_rankup.php
- added a check that simpleXML (linux package php7.0-xml) is available to the install.php (is needed with PHP7 for the TS3 PHP Framework)
- added link on stats page (only for admin) to the webinterface and reverse
- added "connect TS3" link on menu bar on stats page, if visitor is not connected to the ts3 server
- store filter selection on Ranksystem log (inside webinterface) in session
- added missed text passages on stats page to the language file
- fixed problem with continuously download of icons
- fixed wrong calculation of the versions donut-chart on stats/index.php
- fixed on webinterface that https info message overwrites an error message on failed login