*
* This file is part of Easy-WI.
*
* Easy-WI is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Easy-WI is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Easy-WI. If not, see .
*
* Diese Datei ist Teil von Easy-WI.
*
* Easy-WI ist Freie Software: Sie koennen es unter den Bedingungen
* der GNU General Public License, wie von der Free Software Foundation,
* Version 3 der Lizenz oder (nach Ihrer Wahl) jeder spaeteren
* veroeffentlichten Version, weiterverbreiten und/oder modifizieren.
*
* Easy-WI wird in der Hoffnung, dass es nuetzlich sein wird, aber
* OHNE JEDE GEWAEHELEISTUNG, bereitgestellt; sogar ohne die implizite
* Gewaehrleistung der MARKTFAEHIGKEIT oder EIGNUNG FUER EINEN BESTIMMTEN ZWECK.
* Siehe die GNU General Public License fuer weitere Details.
*
* Sie sollten eine Kopie der GNU General Public License zusammen mit diesem
* Programm erhalten haben. Wenn nicht, siehe .
*/
if (isset($include) and $include == true) {
$query = $sql->prepare("INSERT INTO `easywi_version` (`version`,`de`,`en`) VALUES
('4.10','
20.10.2013
Änderungen:
- Generell:
- News Feeds sind standardmäßig aktiviert
- CMS ist standardmäßig aktiviert
- Cronjobs können von einem externen Server aufgerufen werden, wenn er whitelisted ist
- Link in der Versionsübersicht an den neuen Ort des Easy-WI Forums angepasst
- Passwortfelder werden mit Sternen dargestellt
- Die News aus dem CMS werden im Dashboard angezeigt
- Zahlreiche legacy Funktionen entfernt und optimiert
- Keyfiles können nun mit und ohne die Endung pub definiert werden
- Entfernen Buttons mit Kreuz als Icon und roter Darstellung
- Modul Management hinzugefügt
- API:
- Passwort Hashes werden ebenfalls importiert
- Benutzer:
- Sprachvariablen für Erstell- und Änderungsdatum hinzugefügt
- Passwörter werden mit PHP 55 eingeführten Hash API bzw einem Fallback gehasht
- Migration von alten Hashes und aus anderen Systemen importierten Hashes
- Loginname wird bei Willkommen: () angezeigt, wenn kein Familien-, oder Vorname gepflegt wurde
- Rückgaben, die verraten, ob ein Account existiert, aus dem Passwort Reset entfernt
- CMS:
- Im Falle der Sprachwahl im CMS wird die entsprechende Seite an Stelle der Home Seite angezeigt
- Gameserver:
- Root Beschreibung wird beim Anlegen eines Gameserver angezeigt und als Fallback die IP
- Beim Ändern und Anlegen des Masterservers werden die Verbindungsdaten überprüft und nur zugelassen, wenn erfolgreich
- Multiselect für unterstütze Spiele an Stelle von einem Spiel bzw ganzem Engine Typ
- Minecraft Craft Bukkit Startbefehl erweitert
- l4d, l4d2 und tf2 Images werden mit steamCmd Installer definiert
- l4d2 und tf2 zum Woraround für appIDs bezüglich API und Updater hinzugefügt
- Multi Theft San Andreas Image und Query hinzugefügt
- GTA San Andreas Multiplayer Image und Query hinzugefügt
- Teeworlds Image und Query hinzugefügt
- Autoupdater für Minecraft hinzugefügt
- Autoupdater für Minecraft Craft Bukkit hinzugefügt
- Im Falle eines Totalverlustes des Roots können alle Gameserver mit einem Klick neu erstellt werden
- MySQL:
- Beschreibung kann bei MySQL Datenbanken mit angegeben werden
- Voiceserver:
- Beim Ändern und Anlegen des Masterservers werden die Verbindungsdaten überprüft und nur zugelassen, wenn erfolgreich
- Masterserver kann einem Reseller hinzugefügt werden, ohne dass er Verbindungsdaten usw einsehen kann
Bugfixes:
- Farben in der Admin Gameserverübersicht
- Game Leihserver werden nun korrekt beendet
- Kein Timeout mehr, wenn der TS3 Server den webserver während einer Operation bannt
- Erstell- und Änderungsdatum wird beim Anlegen des initialen Admin Accounts gesetzt
- Alte Icon Referenz beim des Userswitches aus der Logübersicht entfernt
- Rückgabe nach Useraktion im Ticket Bereich des Users korrigiert
- Validator beim Editieren der eigenen Userdaten korrigiert
- Veraltete Icons in der Protectionabfrage des CMS ersetzt
- Leihserverübersicht im CMS wird korrekt dargestellt
- MySQL Modul verwaltet die Datenbankuser korrekt
- Erfolgreiches Anlegen eines Vertreters gibt nun den Erfolg an den User zurück
- Fehlendes Template admin_voicemasterserver_dltpl hinzugefügt
- Reinstall von Gameservern im Adminpanel korrigiert
- Startbefehl kann nun das Zeichen # enthalten, welches zB für das Forking bei l4d benötigt wird
- Image ALT der Anzeige vom Protection Mode korrigiert
- Error Handling der TS3 Klasse für den Fall erweitert, dass keine Serverinfo abgefragt werden konnte
- Hausnummer kann Querstriche enthalten
- PHP Notice beim Gameserver Reinstall korrigiert
- Userpanel Gamerserverübersicht bezüglich FTP Passwörtern korrigiert
- FastDL Abgleich startet wieder
- Gebrauch von " . '$_SERVER' . " in der login.php entfernt
- Installer definiert das default template
','10.20.2013
Changes:
- General:
- News feeds are active per default
- CMS is activated per default
- Cronjobs can be executed from remote host in case the IP is whitelisted
- Link at versionckeck are changed to the new Easy-WI forums location
- Passwordforms are masked with stars
- News created at the CMS module are displayed at the dashboard as well
- Multiple legacy functions removed or optimized
- Keyfiles can be entered with and without pub
- Removal buttons are displayed with fitting icon and in red
- Modul Management added
- API:
- Passwort hashes are imported as well
- Gameserver:
- Root description will be displayed while adding a gameserver Fallback is the IP
- While adding or editing a masterserver the connection data will be verified and a connection check done
- Addons now have a multiselect regarding supported games in case of selecting a game or a whole engine type
- Minecraft Craft Bukkit startcommand extended
- l4d, l4d2 and tf2 images are defined with steamCmd installer
- l4d2 and tf2 are added to the workaround function regarding appIDs for API and updater
- Added Multi Theft San Andreas image and query
- Added GTA San Andreas Multiplayer image and query
- Added Teeworlds image and query
- Added Minecraft autoupdater
- Added Minecraft Craft Bukkit autoupdater
- In case a whole rootserver is lost and replaced all users and server can be recreated with one click
- MySQL:
- Description can be added with a MySQL database
- User:
- Language variables added regarding users creation and modifcation date
- Passwords are hashed with PHP 55 Hash API or fallback if PHP is older
- Migration of old hashes once a user logs in
- Loginname will be shown at Welcome: () in case no first and last name is maintained
- Any hints regarding account existence removed from password reset
- Voiceserver:
- While adding or editing a masterserver the connection data will be verified and a connection check done
- Masterserver can be added to a reseller account which then will be able to use it but cannot see configurations like passwords
Bugfixes:
- Colours correct at admins gameserver overview
- Game lendserver are shut down correctly
- No PHP time out in case the TS3 server bans the webserver during command execution
- Creation- and modification date correctly setup for initial admin account
- Outdated icon regarding userswitch removed from logoverview
- Return after useraction at the ticket module corrected
- Correct validator used in case of editing own userdata
- Outdated icons replaced at protectioncheck within the CMS
- Lendserver overview is displayed correctly at CMS
- MySQL module maintains DB users without errors
- Success message in case of adding a substitute
- Added missing template admin_voicemasterserver_dltpl
- Corrected reinstall gameservern at adminpanel
- Startcommand can now contain the character #
- Corrected image ALT at protection mode display
- Enhanced error handling at TS3 class in case no serverinfo has been retrieved
- Streetnumber can contain a horizontal line
- Corrected PHP Notice in case of gameserver reinstall
- Corrected userpanel gamerserver overview regarding FTP passwords
- FastDL matching working again
- Usage of " . '$_SERVER' . " removed from login.php
- Installer definines the default template
')");
$query->execute();
$response->add('Action: insert_easywi_version done: ');
$query->closecursor();
$query="CREATE TABLE IF NOT EXISTS `addons_allowed` (
`addon_id` int(10) unsigned NOT NULL,
`servertype_id` int(10) unsigned NOT NULL,
`reseller_id` int(10) unsigned NULL DEFAULT 0,
PRIMARY KEY (`addon_id`,`servertype_id`),KEY(`reseller_id`)
) ENGINE=InnoDB";
$add = $sql->prepare($query);
$add->execute();
$query = $sql->prepare("SELECT s.`id` AS `servertype_id`,s.`resellerid`,a.`id` AS `addon_id` FROM `servertypes` AS s LEFT JOIN `addons` AS a ON s.`shorten`=a.`shorten` OR s.`qstat`=a.`shorten` WHERE a.`id` IS NOT NULL");
$query2 = $sql->prepare("INSERT INTO `addons_allowed` (`addon_id`,`servertype_id`,`reseller_id`) VALUES (?,?,?) ON DUPLICATE KEY UPDATE `addon_id`=`addon_id`");
$query->execute();
while ($row = $query->fetch(PDO::FETCH_ASSOC)) {
$query2->execute(array($row['addon_id'], $row['servertype_id'], $row['resellerid']));
}
$query = $sql->prepare("SELECT 1 FROM `servertypes` WHERE `shorten`='samp' AND `resellerid`=0 LIMIT 1");
$query->execute();
if ($query->rowCount() == 0) {
$query = $sql->prepare("INSERT INTO `servertypes` (`steamgame`,`appID`,`updates`,`shorten`,`description`,`type`,`gamebinary`,`binarydir`,`modfolder`,`fps`,`slots`,`map`,`cmd`,`modcmds`,`tic`,`qstat`,`gamemod`,`gamemod2`,`configs`,`configedit`,`qstatpassparam`,`portStep`,`portMax`,`portOne`,`portTwo`,`portThree`,`portFour`,`portFive`,`resellerid`,`mapGroup`) VALUES ('N',NULL,1,'samp','San Andreas Multiplayer','gserver','samp03svr',NULL,NULL,NULL,0,NULL,'./%binary%',NULL,NULL,'gtasamp','N','','server.cfg','[server.cfg] cfg\r\nmaxplayers %slots%\r\nport %port%','',10,1,7777,NULL,NULL,NULL,NULL,0,NULL)");
$query->execute();
}
$query = $sql->prepare("SELECT 1 FROM `servertypes` WHERE `shorten`='mtasa' AND `resellerid`=0 LIMIT 1");
$query->execute();
if ($query->rowCount() == 0) {
$query = $sql->prepare("INSERT INTO `servertypes` (`steamgame`,`appID`,`updates`,`shorten`,`description`,`type`,`gamebinary`,`binarydir`,`modfolder`,`fps`,`slots`,`map`,`cmd`,`modcmds`,`tic`,`qstat`,`gamemod`,`gamemod2`,`configs`,`configedit`,`qstatpassparam`,`portStep`,`portMax`,`portOne`,`portTwo`,`portThree`,`portFour`,`portFive`,`resellerid`,`mapGroup`) VALUES ('N',NULL,1,'mtasa','Multi Theft Auto San Andreas','gserver','mta-server',NULL,NULL,NULL,0,NULL,'./%binary%',NULL,NULL,'mtasa','N','','','[mods/deathmatch/mtaserver.conf] xml\r\n%ip%\r\n%port% \r\n%port2%\r\n%slots%\r\n0','',10,3,22003,22005,22126,NULL,NULL,0,NULL)");
$query->execute();
}
$query = $sql->prepare("INSERT INTO `qstatshorten` (`qstat`,`description`) VALUES ('teeworlds', 'Teeworlds'),('mtasa', 'Multi Theft Auto San Andreas')");
$query->execute();
$query = $sql->prepare("UPDATE `qstatshorten` SET `description`='San Andreas Multiplayer' WHERE `qstat`='gtasamp'");
$query->execute();
if ($query->rowCount() == 0) {
$query = $sql->prepare("INSERT INTO `servertypes` (`steamgame`,`appID`,`updates`,`shorten`,`description`,`type`,`gamebinary`,`binarydir`,`modfolder`,`fps`,`slots`,`map`,`cmd`,`modcmds`,`tic`,`qstat`,`gamemod`,`gamemod2`,`configs`,`configedit`,`qstatpassparam`,`portStep`,`portMax`,`portOne`,`portTwo`,`portThree`,`portFour`,`portFive`,`resellerid`,`mapGroup`) VALUES ('N',NULL,1,'teeworlds','Teeworlds','gserver','teeworlds_srv',NULL,NULL,NULL,0,NULL,'./%binary%','[Capture the Flag = default]\r\n-f config_ctf.cfg\r\n\r\n[Deathmatch]\r\n-f config_dm.cfg\r\n\r\n[Team Deathmatch]\r\n-f config_tdm.cfg',NULL,'teeworlds','N','','config_ctf.cfg\r\nconfig_dm.cfg\r\nconfig_tdm.cfg', '[autoexec.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%\r\n\r\n[config_ctf.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%\r\n\r\n[config_dm.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%\r\n\r\n[config_tdm.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%','',10,1,8303,NULL,NULL,NULL,NULL,0,NULL)");
$query->execute();
}
$query = $sql->prepare("SELECT 1 FROM `servertypes` WHERE `shorten`='teeworlds' AND `resellerid`=0 LIMIT 1");
$query->execute();
if ($query->rowCount() == 0) {
$query = $sql->prepare("INSERT INTO `servertypes` (`steamgame`,`appID`,`updates`,`shorten`,`description`,`type`,`gamebinary`,`binarydir`,`modfolder`,`fps`,`slots`,`map`,`cmd`,`modcmds`,`tic`,`qstat`,`gamemod`,`gamemod2`,`configs`,`configedit`,`qstatpassparam`,`portStep`,`portMax`,`portOne`,`portTwo`,`portThree`,`portFour`,`portFive`,`resellerid`,`mapGroup`) VALUES ('N',NULL,1,'teeworlds','Teeworlds','gserver','teeworlds_srv',NULL,NULL,NULL,0,NULL,'./%binary%','[Capture the Flag = default]\r\n-f config_ctf.cfg\r\n\r\n[Deathmatch]\r\n-f config_dm.cfg\r\n\r\n[Team Deathmatch]\r\n-f config_tdm.cfg',NULL,'teeworlds','N','','config_ctf.cfg\r\nconfig_dm.cfg\r\nconfig_tdm.cfg', '[autoexec.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%\r\n\r\n[config_ctf.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%\r\n\r\n[config_dm.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%\r\n\r\n[config_tdm.cfg] cfg\r\nsv_max_clients %slots%\r\nsv_bindaddr %ip%\r\nsv_port %port%','',10,1,8303,NULL,NULL,NULL,NULL,0,NULL)");
$query->execute();
}
$query = $sql->prepare("UPDATE `servertypes` SET `cmd`='java -Xincgc -Xmx%maxram%M -Xms%minram%M -jar %binary% -o true -h %ip% -p %port% -s %slots% --log-append false --log-limit 50000' WHERE `shorten`='bukkit'");
$query->execute();
} else {
echo "Error: this file needs to be included by the updater!
";
}