#138: Enhance cronjobs

Cronjob scripts can now be called by a different server in case the IP
is white listed.
This commit is contained in:
Ulrich Block 2013-10-20 12:02:02 +02:00
parent 095d4a086d
commit 21b245cd83
16 changed files with 510 additions and 368 deletions

View File

@ -50,9 +50,9 @@ include(EASYWIDIR . '/stuff/keyphrasefile.php');
$ip = $_SERVER['REMOTE_ADDR']; $ip = $_SERVER['REMOTE_ADDR'];
if ($ui->st('w', 'get') == 'ms' and $ui->username('shorten','50', 'get')) { if ($ui->st('w', 'get') == 'ms' and $ui->username('shorten', 50, 'get')) {
$query = $sql->prepare("SELECT r.`id`,r.`resellerid`,r.`installing`,r.`updating`,d.`resellerid` AS `userid`,s.`steamVersion`,r.`localVersion` FROM `rservermasterg` r INNER JOIN `rserverdata` d ON r.`serverid`=d.`id` INNER JOIN `servertypes` s ON r.`servertypeid`=s.`id` WHERE s.`shorten`=? AND (d.`ip`=? OR d.`altips` LIKE ?) LIMIT 1"); $query = $sql->prepare("SELECT r.`id`,r.`resellerid`,r.`installing`,r.`updating`,d.`resellerid` AS `userid`,s.`steamVersion`,r.`localVersion` FROM `rservermasterg` r INNER JOIN `rserverdata` d ON r.`serverid`=d.`id` INNER JOIN `servertypes` s ON r.`servertypeid`=s.`id` WHERE s.`shorten`=? AND (d.`ip`=? OR d.`altips` LIKE ?) LIMIT 1");
$query->execute(array($ui->username('shorten','50', 'get'),$ip,'%'.$ip.'%')); $query->execute(array($ui->username('shorten', 50, 'get'),$ip,'%'.$ip.'%'));
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
if ($row['installing'] == 'Y' or $row['updating'] == 'Y' or $row['installing'] == null or $row['steamVersion']>$row['localVersion'] or $row['steamVersion'] == null or $row['steamVersion'] == '') { if ($row['installing'] == 'Y' or $row['updating'] == 'Y' or $row['installing'] == null or $row['steamVersion']>$row['localVersion'] or $row['steamVersion'] == null or $row['steamVersion'] == '') {
if ($row['steamVersion'] == null) { if ($row['steamVersion'] == null) {
@ -66,15 +66,15 @@ if ($ui->st('w', 'get') == 'ms' and $ui->username('shorten','50', 'get')) {
$query = $sql->prepare("SELECT `id` FROM `userdata` WHERE ((`resellerid`=? AND `accounttype`='a') OR (`id`=? AND `accounttype`='r')) AND `mail_gsupdate`='Y'"); $query = $sql->prepare("SELECT `id` FROM `userdata` WHERE ((`resellerid`=? AND `accounttype`='a') OR (`id`=? AND `accounttype`='r')) AND `mail_gsupdate`='Y'");
$query->execute(array($row['resellerid'], $row['resellerid'])); $query->execute(array($row['resellerid'], $row['resellerid']));
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row2) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row2) {
sendmail('emailgserverupdate', $row2['id'],$ip,$ui->username('shorten','50', 'get')); sendmail('emailgserverupdate', $row2['id'],$ip,$ui->username('shorten', 50, 'get'));
} }
} }
} }
} }
echo 'ok'; echo 'ok';
} else if ($ui->st('w', 'get')=="bu" and $ui->id('id',19, 'get') and $ui->username('shorten','50', 'get') and $ui->ip('ip', 'get')) { } else if ($ui->st('w', 'get')=="bu" and $ui->id('id',19, 'get') and $ui->username('shorten', 50, 'get') and $ui->ip('ip', 'get')) {
$query = $sql->prepare("SELECT g.`id`,CONCAT(g.`serverip`,':',g.`port`) AS `server`,g.`userid` FROM `gsswitch` g INNER JOIN `rserverdata` r ON g.`rootID`=r.`id` WHERE r.`ip`=? AND s.`customer`=? AND g.`port`=? AND g.`serverip`=? LIMIT 1"); $query = $sql->prepare("SELECT g.`id`,CONCAT(g.`serverip`,':',g.`port`) AS `server`,g.`userid` FROM `gsswitch` g INNER JOIN `rserverdata` r ON g.`rootID`=r.`id` WHERE r.`ip`=? AND s.`customer`=? AND g.`port`=? AND g.`serverip`=? LIMIT 1");
$query->execute(array($ip,$ui->username('shorten','50', 'get'),$ui->id('id',19, 'get'),$ui->ip('ip', 'get'))); $query->execute(array($ip,$ui->username('shorten', 50, 'get'),$ui->id('id',19, 'get'),$ui->ip('ip', 'get')));
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$query = $sql->prepare("SELECT `mail_backup` FROM `userdata` WHERE `mail_backup`='Y' AND `id`=? LIMIT 1"); $query = $sql->prepare("SELECT `mail_backup` FROM `userdata` WHERE `mail_backup`='Y' AND `id`=? LIMIT 1");
$query->execute(array($row['userid'])); $query->execute(array($row['userid']));
@ -83,9 +83,9 @@ if ($ui->st('w', 'get') == 'ms' and $ui->username('shorten','50', 'get')) {
} }
} }
echo 'ok'; echo 'ok';
} else if ($ui->st('w', 'get')=="rb" and $ui->id('id',19, 'get') and $ui->username('shorten','50', 'get') and $ui->ip('ip', 'get')) { } else if ($ui->st('w', 'get')=="rb" and $ui->id('id',19, 'get') and $ui->username('shorten', 50, 'get') and $ui->ip('ip', 'get')) {
$query = $sql->prepare("SELECT g.`id`,CONCAT(g.`serverip`,':',g.`port`) AS `server`,g.`userid` FROM `gsswitch` s INNER JOIN `rserverdata` r ON g.`rootID`=r.`id` INNER JOIN `userdata` u ON g.`userid`=u.`id` WHERE r.`ip`=? AND u.`cname`=? AND g.`port`=? AND g.`serverip`=? LIMIT 1"); $query = $sql->prepare("SELECT g.`id`,CONCAT(g.`serverip`,':',g.`port`) AS `server`,g.`userid` FROM `gsswitch` s INNER JOIN `rserverdata` r ON g.`rootID`=r.`id` INNER JOIN `userdata` u ON g.`userid`=u.`id` WHERE r.`ip`=? AND u.`cname`=? AND g.`port`=? AND g.`serverip`=? LIMIT 1");
$query->execute(array($ip,$ui->username('shorten','50', 'get'),$ui->id('id',19, 'get'),$ui->ip('ip', 'get'))); $query->execute(array($ip,$ui->username('shorten', 50, 'get'),$ui->id('id',19, 'get'),$ui->ip('ip', 'get')));
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$server = $row['server']; $server = $row['server'];
$userid = $row['userid']; $userid = $row['userid'];

View File

@ -40,42 +40,51 @@
if (isset($_SERVER['REMOTE_ADDR'])) { if (isset($_SERVER['REMOTE_ADDR'])) {
$ip = $_SERVER['REMOTE_ADDR']; $ip = $_SERVER['REMOTE_ADDR'];
$timelimit=ini_get('max_execution_time')-10; $timelimit = ini_get('max_execution_time') - 10;
} else { } else {
$timelimit=600; $timelimit = 600;
} }
$deamon = false;
if (isset($argv)) { if (isset($argv)) {
$args = array(); $args = array();
foreach ($argv as $a) { foreach ($argv as $a) {
if ($a == 'deamon') $deamon = true; if ($a == 'deamon') {
else if (is_numeric($a)) $sleep = $a; $deamon = true;
else { } else if (is_numeric($a)) {
$sleep = $a;
} else {
$e=explode(':',$a); $e=explode(':',$a);
if (isset($e[1])) $args[$e[0]] = $e[1]; if (isset($e[1])) $args[$e[0]] = $e[1];
} }
} }
if (!isset($deamon)) {
if ($deamon == false) {
print 'Running job management as cronjob'."\r\n"; print 'Running job management as cronjob'."\r\n";
$deamon = false;
set_time_limit($timelimit); set_time_limit($timelimit);
} else { } else {
print 'Running job management as Deamon'."\r\n"; print 'Running job management as Deamon'."\r\n";
} }
if (!isset($sleep)) $sleep=60;
if (!isset($sleep)) {
$sleep = 60;
}
} }
if (!isset($ip) or $_SERVER['SERVER_ADDR'] == $ip) {
define('EASYWIDIR', dirname(__FILE__)); define('EASYWIDIR', dirname(__FILE__));
include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/functions.php'); include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/class_validator.php'); include(EASYWIDIR . '/stuff/functions.php');
include(EASYWIDIR . '/stuff/class_rootserver.php'); include(EASYWIDIR . '/stuff/class_validator.php');
include(EASYWIDIR . '/stuff/settings.php'); include(EASYWIDIR . '/stuff/class_rootserver.php');
include(EASYWIDIR . '/stuff/ssh_exec.php'); include(EASYWIDIR . '/stuff/settings.php');
include(EASYWIDIR . '/stuff/class_voice.php'); include(EASYWIDIR . '/stuff/ssh_exec.php');
include(EASYWIDIR . '/stuff/mysql_functions.php'); include(EASYWIDIR . '/stuff/class_voice.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php'); include(EASYWIDIR . '/stuff/mysql_functions.php');
$gsprache = getlanguagefile('general','uk',0); include(EASYWIDIR . '/stuff/keyphrasefile.php');
if (!isset($ip) or $ui->escaped('SERVER_ADDR', 'server') == $ip or in_array($ip, ipstoarray($rSA['cronjob_ips']))) {
$gsprache = getlanguagefile('general', 'uk', 0);
class runGraph { class runGraph {
private $jobsDone = 0; private $jobsDone = 0;
private $startTime = 0; private $startTime = 0;
@ -136,67 +145,69 @@ if (!isset($ip) or $_SERVER['SERVER_ADDR'] == $ip) {
unset($this->jobsDone,$this->startTime,$this->newLine,$this->jobCount,$this->spinnerCount,$this->spinners,$this->spinner,$this->oneJobPercent); unset($this->jobsDone,$this->startTime,$this->newLine,$this->jobCount,$this->spinnerCount,$this->spinners,$this->spinner,$this->oneJobPercent);
} }
} }
$runJobs = true; $runJobs = true;
if (isset($ip)) { if (isset($ip)) {
$newLine="\r\n"; $newLine = "\r\n";
} else { } else {
$newLine="\r"; $newLine = "\r";
} }
$counJobs = $sql->prepare("SELECT COUNT(`jobID`) AS `jobCount` FROM `jobs` WHERE `status` IS NULL OR `status`='1'");
while ($runJobs == true) { while ($runJobs == true) {
$countp = $sql->prepare("SELECT COUNT(`jobID`) AS `jobCount` FROM `jobs` WHERE `status` IS NULL OR `status`='1'"); $counJobs->execute();
$countp->execute(); $jobCount = $counJobs->rowCount();
$jobCount = $countp->rowCount();
print 'Total jobs open: '.$jobCount.'. Cleaning up outdated and duplicated entries'."\r\n"; print 'Total jobs open: '.$jobCount.'. Cleaning up outdated and duplicated entries'."\r\n";
updateStates('dl','us'); updateStates('dl','us');
updateStates('dl'); updateStates('dl');
updateStates('ad'); updateStates('ad');
updateStates('md'); updateStates('md');
$countp->execute(); $counJobs->execute();
$jobCount = $countp->rowCount(); $jobCount = $counJobs->rowCount();
print "\r\n".'Total jobs open after cleanup: '.$jobCount."\r\n"; print "\r\n".'Total jobs open after cleanup: '.$jobCount."\r\n";
print 'Executing user cleanup jobs'."\r\n"; print 'Executing user cleanup jobs'."\r\n";
$startTime=strtotime('now'); $startTime=strtotime('now');
$theOutput=new runGraph($jobCount,$newLine); $theOutput=new runGraph($jobCount,$newLine);
# us > vo > gs > my > vs # us > vo > gs > my > vs
include(EASYWIDIR . '/stuff/jobs_user.php'); include(EASYWIDIR . '/stuff/jobs_user.php');
$countp->execute(); $counJobs->execute();
$jobCount = $countp->rowCount(); $jobCount = $counJobs->rowCount();
$theOutput->updateCount($jobCount); $theOutput->updateCount($jobCount);
print "\r\n".'Total jobs open after user cleanup jobs are done: '.$jobCount."\r\n"; print "\r\n".'Total jobs open after user cleanup jobs are done: '.$jobCount."\r\n";
print 'Executing voice jobs'."\r\n"; print 'Executing voice jobs'."\r\n";
include(EASYWIDIR . '/stuff/jobs_voice.php'); include(EASYWIDIR . '/stuff/jobs_voice.php');
$countp->execute(); $counJobs->execute();
$jobCount = $countp->rowCount(); $jobCount = $counJobs->rowCount();
$theOutput->updateCount($jobCount); $theOutput->updateCount($jobCount);
print "\r\n".'Total jobs open after voice jobs are done: '.$jobCount."\r\n"; print "\r\n".'Total jobs open after voice jobs are done: '.$jobCount."\r\n";
print 'Executing TS DNS jobs'."\r\n"; print 'Executing TS DNS jobs'."\r\n";
include(EASYWIDIR . '/stuff/jobs_tsdns.php'); include(EASYWIDIR . '/stuff/jobs_tsdns.php');
$countp->execute(); $counJobs->execute();
$jobCount = $countp->rowCount(); $jobCount = $counJobs->rowCount();
$theOutput->updateCount($jobCount); $theOutput->updateCount($jobCount);
print "\r\n".'Total jobs open after TS DNS jobs are done: '.$jobCount."\r\n"; print "\r\n".'Total jobs open after TS DNS jobs are done: '.$jobCount."\r\n";
print 'Executing mysql jobs'."\r\n"; print 'Executing mysql jobs'."\r\n";
include(EASYWIDIR . '/stuff/jobs_mysql.php'); include(EASYWIDIR . '/stuff/jobs_mysql.php');
$countp->execute(); $counJobs->execute();
$jobCount = $countp->rowCount(); $jobCount = $counJobs->rowCount();
$theOutput->updateCount($jobCount); $theOutput->updateCount($jobCount);
print "\r\n".'Total jobs open after mysql jobs are done: '.$jobCount."\r\n"; print "\r\n".'Total jobs open after mysql jobs are done: '.$jobCount."\r\n";
print 'Executing gameserver jobs'."\r\n"; print 'Executing gameserver jobs'."\r\n";
include(EASYWIDIR . '/stuff/jobs_gserver.php'); include(EASYWIDIR . '/stuff/jobs_gserver.php');
$countp->execute(); $counJobs->execute();
$jobCount = $countp->rowCount(); $jobCount = $counJobs->rowCount();
$theOutput->updateCount($jobCount); $theOutput->updateCount($jobCount);
print "\r\n".'Total jobs open after gameserver jobs are done: '.$jobCount."\r\n"; print "\r\n".'Total jobs open after gameserver jobs are done: '.$jobCount."\r\n";
print 'Executing root server jobs'."\r\n"; print 'Executing root server jobs'."\r\n";
include(EASYWIDIR . '/stuff/jobs_roots.php'); include(EASYWIDIR . '/stuff/jobs_roots.php');
$countp->execute(); $counJobs->execute();
$jobCount = $countp->rowCount(); $jobCount = $counJobs->rowCount();
$theOutput->updateCount($jobCount); $theOutput->updateCount($jobCount);
print "\r\n".'Total jobs open after root server jobs are done: '.$jobCount."\r\n"; print "\r\n".'Total jobs open after root server jobs are done: '.$jobCount."\r\n";
print 'Executing user remove jobs'."\r\n"; print 'Executing user remove jobs'."\r\n";
include(EASYWIDIR . '/stuff/jobs_user_rm.php'); include(EASYWIDIR . '/stuff/jobs_user_rm.php');
print "\n"; print "\n";
$test='ech';
if ($deamon == true) { if ($deamon == true) {
$sql = null; $sql = null;
$theOutput = null; $theOutput = null;

View File

@ -1,4 +1,5 @@
<?php <?php
/** /**
* File: reboot.php. * File: reboot.php.
* Author: Ulrich Block * Author: Ulrich Block
@ -35,28 +36,28 @@
* Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>. * Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>.
*/ */
if (isset($_SERVER['REMOTE_ADDR'])) { if (isset($_SERVER['REMOTE_ADDR'])) {
$ip = $_SERVER['REMOTE_ADDR']; $ip = $_SERVER['REMOTE_ADDR'];
$timelimit = (isset($_GET['timeout']) and is_numeric($_GET['timeout'])) ? $_GET['timeout'] : ini_get('max_execution_time') - 10; $timelimit = (isset($_GET['timeout']) and is_numeric($_GET['timeout'])) ? $_GET['timeout'] : ini_get('max_execution_time') - 10;
} else { } else {
$timelimit=600; $timelimit = 600;
} }
set_time_limit($timelimit); set_time_limit($timelimit);
if (!isset($ip) or $_SERVER['SERVER_ADDR'] == $ip) { define('EASYWIDIR', dirname(__FILE__));
define('EASYWIDIR', dirname(__FILE__)); include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/vorlage.php'); include(EASYWIDIR . '/stuff/class_validator.php');
include(EASYWIDIR . '/stuff/class_validator.php'); include(EASYWIDIR . '/stuff/functions.php');
include(EASYWIDIR . '/stuff/functions.php'); include(EASYWIDIR . '/stuff/settings.php');
include(EASYWIDIR . '/stuff/settings.php'); include(EASYWIDIR . '/stuff/ssh_exec.php');
include(EASYWIDIR . '/stuff/ssh_exec.php'); include(EASYWIDIR . '/stuff/class_masterserver.php');
include(EASYWIDIR . '/stuff/class_masterserver.php'); include(EASYWIDIR . '/stuff/class_voice.php');
include(EASYWIDIR . '/stuff/class_voice.php'); include(EASYWIDIR . '/stuff/queries_updates.php');
include(EASYWIDIR . '/stuff/queries_updates.php'); include(EASYWIDIR . '/stuff/keyphrasefile.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php');
if (!isset($ip) or $ui->escaped('SERVER_ADDR', 'server') == $ip or in_array($ip, ipstoarray($rSA['cronjob_ips']))) {
echo "Reboot and Updater started\r\n"; echo "Reboot and Updater started\r\n";
@ -381,9 +382,14 @@ if (!isset($ip) or $_SERVER['SERVER_ADDR'] == $ip) {
} }
} }
} }
$ssh2 = null; $ssh2 = null;
$connection->CloseConnection(); if (isset($connection) and is_object($connection)) {
$connection->CloseConnection();
}
usleep(500000); usleep(500000);
} else { } else {
print "Error: Cannot connect to masterserver $queryip\r\n"; print "Error: Cannot connect to masterserver $queryip\r\n";
} }

View File

@ -70,11 +70,11 @@ if ($ui->smallletters('w',5, 'get') == 'check') {
} else if ($die == true) { } else if ($die == true) {
redirect('login.php'); redirect('login.php');
} else if ($ui->username('mapgroup','50', 'get')) { } else if ($ui->username('mapgroup', 50, 'get')) {
$sprache = getlanguagefile('gserver', $user_language, $reseller_id); $sprache = getlanguagefile('gserver', $user_language, $reseller_id);
$query = $sql->prepare("SELECT `mapGroup` FROM `servertypes` WHERE `shorten`=? AND `resellerid`=? LIMIT 1"); $query = $sql->prepare("SELECT `mapGroup` FROM `servertypes` WHERE `shorten`=? AND `resellerid`=? LIMIT 1");
$query->execute(array($ui->username('mapgroup','50', 'get'), $reseller_id)); $query->execute(array($ui->username('mapgroup', 50, 'get'), $reseller_id));
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
if ($row['mapGroup'] != null) { if ($row['mapGroup'] != null) {
$mapGroup = $row['mapGroup']; $mapGroup = $row['mapGroup'];
@ -282,9 +282,9 @@ if ($ui->smallletters('w',5, 'get') == 'check') {
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) $data[] = '<option value='.$row['id'].'>'.$row['ssh2ip'].'</option>'; foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) $data[] = '<option value='.$row['id'].'>'.$row['ssh2ip'].'</option>';
} }
require_once IncludeTemplate($template_to_use,'ajax_admin_voice_stats.tpl'); require_once IncludeTemplate($template_to_use,'ajax_admin_voice_stats.tpl');
} else if ($ui->username('distro','50', 'get') and $ui->id('id',19, 'get') and ($pa['vserversettings'] or $pa['root']) and $reseller_id == 0) { } else if ($ui->username('distro', 50, 'get') and $ui->id('id',19, 'get') and ($pa['vserversettings'] or $pa['root']) and $reseller_id == 0) {
$pselect = $sql->prepare("SELECT `pxeautorun` FROM `resellerimages` WHERE `bitversion`=? AND `distro`=?"); $pselect = $sql->prepare("SELECT `pxeautorun` FROM `resellerimages` WHERE `bitversion`=? AND `distro`=?");
$pselect->execute(array($ui->id('id',19, 'get'), $ui->username('distro','50', 'get'))); $pselect->execute(array($ui->id('id',19, 'get'), $ui->username('distro', 50, 'get')));
$usedpxeautorun = array(); $usedpxeautorun = array();
foreach ($pselect->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($pselect->fetchAll(PDO::FETCH_ASSOC) as $row) {
$usedpxeautorun[] = $row['pxeautorun']; $usedpxeautorun[] = $row['pxeautorun'];
@ -307,7 +307,7 @@ if ($ui->smallletters('w',5, 'get') == 'check') {
?> ?>
</select> </select>
<?php <?php
} else if (($ui->username('short','50', 'get') or $ui->username('shorten','50', 'get')) and $pa['restart']) { } else if (($ui->username('short', 50, 'get') or $ui->username('shorten', 50, 'get')) and $pa['restart']) {
$sprache = getlanguagefile('gserver', $user_language, $reseller_id); $sprache = getlanguagefile('gserver', $user_language, $reseller_id);
if ($reseller_id != 0 and $admin_id != $reseller_id) { if ($reseller_id != 0 and $admin_id != $reseller_id) {
$reseller_id = $admin_id; $reseller_id = $admin_id;
@ -345,48 +345,63 @@ if ($ui->smallletters('w',5, 'get') == 'check') {
?> ?>
<select name="anticheat"> <select name="anticheat">
<option value="1"><?php echo $anticheatsoft . ' ' . $sprache->on;?></option> <option value="1"><?php echo $anticheatsoft . ' ' . $sprache->on;?></option>
<?php if (!$ui->username('short','50', 'get')){ ?><option value="2" <?php if ($anticheat=="2") echo 'selected="selected"';?>><?php echo $anticheatsoft . ' ' . $sprache->off2;?></option><?php } ?> <?php if (!$ui->username('short', 50, 'get')){ ?><option value="2" <?php if ($anticheat=="2") echo 'selected="selected"';?>><?php echo $anticheatsoft . ' ' . $sprache->off2;?></option><?php } ?>
<?php echo $eac;?> <?php echo $eac;?>
</select> </select>
<?php <?php
} else if ($ui->username('gamestring','50', 'get') and $ui->id('id',19, 'get') and ($pa['roots'] or $pa['root'])) {
} else if ($ui->username('gamestring', 50, 'get') and $ui->id('id',19, 'get') and ($pa['roots'] or $pa['root'])) {
include(EASYWIDIR . '/stuff/ssh_exec.php');
include(EASYWIDIR . '/stuff/class_masterserver.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php');
$sprache = getlanguagefile('roots', $user_language, $reseller_id); $sprache = getlanguagefile('roots', $user_language, $reseller_id);
if ($reseller_id != 0 and $admin_id != $reseller_id) { if ($reseller_id != 0 and $admin_id != $reseller_id) {
$reseller_id = $admin_id; $reseller_id = $admin_id;
} }
include(EASYWIDIR . '/stuff/ssh_exec.php');
include(EASYWIDIR . '/stuff/class_masterserver.php'); $rootServer = new masterServer($ui->id('id', 10, 'get'), $aeskey);
include(EASYWIDIR . '/stuff/keyphrasefile.php');
$rootServer=new masterServer($ui->id('id', 10, 'get'), $aeskey);
$games=explode("_", $ui->username('gamestring','50', 'get'));
$i = 1; $i = 1;
$gamelist = array(); $gamelist = array();
$count=count($games); $games = explode('_', $ui->username('gamestring', 50, 'get'));
while ($i<$count) { $count = count($games);
$query = $sql->prepare("SELECT `id` FROM `servertypes` WHERE `shorten`=? AND `resellerid`=? LIMIT 1");
while ($i < $count) {
if ($games[$i] != '' and !in_array($games[$i], $gamelist)) { if ($games[$i] != '' and !in_array($games[$i], $gamelist)) {
$gamelist[] = $games[$i]; $gamelist[] = $games[$i];
$query = $sql->prepare("SELECT `id` FROM `servertypes` WHERE `shorten`=? AND `resellerid`=? LIMIT 1");
$query->execute(array($games[$i], $reseller_id)); $query->execute(array($games[$i], $reseller_id));
$typeID = $query->fetchColumn(); $typeID = $query->fetchColumn();
$rootServer->collectData($typeID,true); $rootServer->collectData($typeID, true);
} }
$i++; $i++;
} }
$sshcmd = $rootServer->returnCmds('install','all');
if ($rootServer->sshcmd===null) { $sshcmd = $rootServer->returnCmds('install', 'all');
if ($rootServer->sshcmd === null) {
echo 'Nothing to update/sync!'; echo 'Nothing to update/sync!';
} else { } else {
if (ssh2_execute('gs', $ui->id('id', 10, 'get'), $rootServer->sshcmd) === false) { if (ssh2_execute('gs', $ui->id('id', 10, 'get'), $rootServer->sshcmd) === false) {
echo $sprache->error_root_updatemaster." ( ".implode(", ", $gamelist)." ) ( $start )"; echo $sprache->error_root_updatemaster . ' ( ' . implode(', ', $gamelist) . ' )';
} else { } else {
$rootServer->setUpdating(); $rootServer->setUpdating();
echo $sprache->root_updatemaster." ( ".implode(", ", $gamelist)." )"; echo $sprache->root_updatemaster . ' ( ' . implode(', ', $gamelist) . ' )';
} }
if (isset($debug) and $debug == 1) { if (isset($debug) and $debug == 1) {
echo '<br>' . implode('<br>', $rootServer->sshcmd); echo '<br>' . implode('<br>', $rootServer->sshcmd);
} }
} }
} else if (($pa['voiceserver'] or $pa['voiceserver']) and $ui->st('d', 'get')=="vo" and $ui->id('id',19, 'get')) { } else if (($pa['voiceserver'] or $pa['voiceserver']) and $ui->st('d', 'get')=="vo" and $ui->id('id',19, 'get')) {
$sprache = getlanguagefile('voice', $user_language, $reseller_id); $sprache = getlanguagefile('voice', $user_language, $reseller_id);
$query = $sql->prepare("SELECT m.`maxserver`,COUNT(v.`id`) AS `installedserver`,m.`maxslots`,SUM(v.`slots`) AS `installedslots`,SUM(v.`usedslots`) AS `uslots` FROM `voice_masterserver` m LEFT JOIN `voice_server` v ON m.`id`=v.`masterserver` WHERE m.`id`=? AND m.`resellerid`=? LIMIT 1"); $query = $sql->prepare("SELECT m.`maxserver`,COUNT(v.`id`) AS `installedserver`,m.`maxslots`,SUM(v.`slots`) AS `installedslots`,SUM(v.`usedslots`) AS `uslots` FROM `voice_masterserver` m LEFT JOIN `voice_server` v ON m.`id`=v.`masterserver` WHERE m.`id`=? AND m.`resellerid`=? LIMIT 1");
$query->execute(array($ui->id('id',19, 'get'), $reseller_id)); $query->execute(array($ui->id('id',19, 'get'), $reseller_id));

View File

@ -1,4 +1,5 @@
<?php <?php
/** /**
* File: startupdates.php. * File: startupdates.php.
* Author: Ulrich Block * Author: Ulrich Block
@ -36,27 +37,26 @@
* Sie sollten eine Kopie der GNU General Public License zusammen mit diesem * Sie sollten eine Kopie der GNU General Public License zusammen mit diesem
* Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>. * Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>.
*/ */
if (isset($_SERVER['REMOTE_ADDR'])) { if (isset($_SERVER['REMOTE_ADDR'])) {
$ip = $_SERVER['REMOTE_ADDR']; $ip = $_SERVER['REMOTE_ADDR'];
if (isset($_GET['timeout']) and is_numeric($_GET['timeout'])) { $timelimit = (isset($_GET['timeout']) and is_numeric($_GET['timeout'])) ? $_GET['timeout'] : ini_get('max_execution_time') - 10;
$timelimit = $_GET['timeout'];
} else {
$timelimit=ini_get('max_execution_time')-10;
}
} else { } else {
$timelimit=600; $timelimit = 600;
} }
set_time_limit($timelimit); set_time_limit($timelimit);
if (!isset($ip) or $_SERVER['SERVER_ADDR'] == $ip) {
define('EASYWIDIR', dirname(__FILE__)); define('EASYWIDIR', dirname(__FILE__));
include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/class_validator.php');
include(EASYWIDIR . '/stuff/functions.php');
include(EASYWIDIR . '/stuff/settings.php');
include(EASYWIDIR . '/stuff/ssh_exec.php');
include(EASYWIDIR . '/stuff/class_masterserver.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php');
if (!isset($ip) or $ui->escaped('SERVER_ADDR', 'server') == $ip or in_array($ip, ipstoarray($rSA['cronjob_ips']))) {
echo "Start Syncs and Updates loading...\r\n"; echo "Start Syncs and Updates loading...\r\n";
include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/class_validator.php');
include(EASYWIDIR . '/stuff/functions.php');
include(EASYWIDIR . '/stuff/settings.php');
include(EASYWIDIR . '/stuff/ssh_exec.php');
include(EASYWIDIR . '/stuff/class_masterserver.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php');
$currentHour=date('G'); $currentHour=date('G');
$currentMinute=(int)date('i'); $currentMinute=(int)date('i');
$query = $sql->prepare("SELECT `lastUpdateRun` FROM `settings` WHERE `resellerid`=0 LIMIT 1"); $query = $sql->prepare("SELECT `lastUpdateRun` FROM `settings` WHERE `resellerid`=0 LIMIT 1");
@ -71,7 +71,7 @@ if (!isset($ip) or $_SERVER['SERVER_ADDR'] == $ip) {
$query2 = $sql->prepare("UPDATE `rserverdata` SET `alreadyStartedAt`=? WHERE `id`=? LIMIT 1"); $query2 = $sql->prepare("UPDATE `rserverdata` SET `alreadyStartedAt`=? WHERE `id`=? LIMIT 1");
$query->execute(array($currentHour,$lastUpdateRun,($currentMinute+1))); $query->execute(array($currentHour,$lastUpdateRun,($currentMinute+1)));
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$rootServer=new masterServer($row['id'],$aeskey); $rootServer = new masterServer($row['id'],$aeskey);
$rootServer->collectData(); $rootServer->collectData();
echo "Starting updates for ".$rootServer->sship."\r\n"; echo "Starting updates for ".$rootServer->sship."\r\n";
$sshcmd = $rootServer->returnCmds(); $sshcmd = $rootServer->returnCmds();

View File

@ -38,13 +38,11 @@
* Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>. * Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>.
*/ */
ini_set('display_errors',1);
error_reporting(E_ALL|E_STRICT);
if (isset($_SERVER['REMOTE_ADDR'])) { if (isset($_SERVER['REMOTE_ADDR'])) {
$ip = $_SERVER['REMOTE_ADDR']; $ip = $_SERVER['REMOTE_ADDR'];
$timelimit=(isset($_GET['timeout']) and is_numeric($_GET['timeout'])) ? (int) $_GET['timeout'] : ini_get('max_execution_time')-10; $timelimit = (isset($_GET['timeout']) and is_numeric($_GET['timeout'])) ? $_GET['timeout'] : ini_get('max_execution_time') - 10;
} else { } else {
$timelimit=600; $timelimit = 600;
} }
if (isset($argv)) { if (isset($argv)) {
$args = array(); $args = array();
@ -57,23 +55,28 @@ if (isset($argv)) {
} }
} }
} }
if (isset($checkTypeOfServer)) {
print ($checkTypeOfServer == 'gs') ? 'Checking Gameserver' . "\r\n" : 'Checking Voiceserver' . "\r\n"; define('EASYWIDIR', dirname(__FILE__));
} else { include(EASYWIDIR . '/stuff/vorlage.php');
$checkTypeOfServer='all'; include(EASYWIDIR . '/stuff/functions.php');
print 'Checking Gameserver and Voiceserver' . "\r\n"; include(EASYWIDIR . '/stuff/class_validator.php');
} include(EASYWIDIR . '/stuff/settings.php');
include(EASYWIDIR . '/stuff/ssh_exec.php');
include(EASYWIDIR . '/stuff/class_voice.php');
include(EASYWIDIR . '/stuff/queries.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php');
set_time_limit($timelimit); set_time_limit($timelimit);
if (!isset($ip) or $_SERVER['SERVER_ADDR'] == $ip) {
define('EASYWIDIR', dirname(__FILE__)); if (!isset($ip) or $ui->escaped('SERVER_ADDR', 'server') == $ip or in_array($ip, ipstoarray($rSA['cronjob_ips']))) {
include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/functions.php'); if (isset($checkTypeOfServer)) {
include(EASYWIDIR . '/stuff/class_validator.php'); print ($checkTypeOfServer == 'gs') ? 'Checking Gameserver' . "\r\n" : 'Checking Voiceserver' . "\r\n";
include(EASYWIDIR . '/stuff/settings.php'); } else {
include(EASYWIDIR . '/stuff/ssh_exec.php'); $checkTypeOfServer='all';
include(EASYWIDIR . '/stuff/class_voice.php'); print 'Checking Gameserver and Voiceserver' . "\r\n";
include(EASYWIDIR . '/stuff/queries.php'); }
include(EASYWIDIR . '/stuff/keyphrasefile.php');
$dayAndHour=date('Y-m-d H:').'00:00'; $dayAndHour=date('Y-m-d H:').'00:00';
$dayAndZeroHour=date('Y-m-d').' 00:00:00'; $dayAndZeroHour=date('Y-m-d').' 00:00:00';
$ssprache = getlanguagefile('settings','uk',0); $ssprache = getlanguagefile('settings','uk',0);

View File

@ -432,7 +432,7 @@ if ($ui->w('action',4, 'post') and !token(true)) {
$amount = 20; $amount = 20;
} }
$o = $ui->st('o', 'get'); $o = (string) $ui->st('o', 'get');
if ($ui->st('o', 'get') == 'ds') { if ($ui->st('o', 'get') == 'ds') {
$orderby = '`active` DESC'; $orderby = '`active` DESC';
} else if ($ui->st('o', 'get') == 'as') { } else if ($ui->st('o', 'get') == 'as') {
@ -494,15 +494,14 @@ if ($ui->w('action',4, 'post') and !token(true)) {
} }
$query2->execute(array($row['id'], $reseller_id)); $query2->execute(array($row['id'], $reseller_id));
foreach ($query2 as $row2) { foreach ($query2->fetchAll(PDO::FETCH_ASSOC) as $row2) {
$gamesList = '(' . $row2['amount'] . ') ' . $row2['list']; $gamesList = '(' . $row2['amount'] . ') ' . $row2['list'];
} }
$query2->fetchColumn();
if (strlen($gamesList) > 40) { if (strlen($gamesList) > 40) {
$gamesList = substr($gamesList, 0, 40) . '...'; $gamesList = substr($gamesList, 0, 40) . '...';
} }
$table[] = array('id' => $row['id'], 'active' => $row['active'], 'img' => $imgName,'alt' => $imgAlt, 'gametype' => $gamesList, 'description' => $row['menudescription'], 'type' => ($row['type'] == 'map') ? $sprache->map : $sprache->tool); $table[] = array('id' => $row['id'], 'active' => $row['active'], 'img' => $imgName,'alt' => $imgAlt, 'gametype' => $gamesList, 'description' => $row['menudescription'], 'type' => ($row['type'] == 'map') ? $sprache->map : $sprache->tool);
} }

View File

@ -507,12 +507,15 @@ class masterServer {
$steamCmd .= $val . ' ' . workAroundForValveChaos($key, $val, false) . ' '; $steamCmd .= $val . ' ' . workAroundForValveChaos($key, $val, false) . ' ';
} else { } else {
list($appID)=explode('-', $key); list($appID) = explode('-', $key);
$steamCmd .= $val . ' ' . workAroundForValveChaos($appID, $val, false) . ' '; $steamCmd .= $val . ' ' . workAroundForValveChaos($appID, $val, false) . ' ';
} }
} }
return $steamCmd; return $steamCmd;
} }
function __destruct() { function __destruct() {
unset($this->updateIDs, $this->aeskey, $this->imageserver, $this->resellerID, $this->webhost, $this->rootID, $this->steamAccount, $this->steamPassword, $this->sship, $this->sshport, $this->sshuser, $this->sshpass, $this->publickey, $this->keyname, $this->syncList, $this->steamCmdTotal, $this->steamCmdOutdated, $this->hldsTotal, $this->hldsOutdated, $this->noSteam, $this->maps, $this->addons, $this->sshcmd); unset($this->updateIDs, $this->aeskey, $this->imageserver, $this->resellerID, $this->webhost, $this->rootID, $this->steamAccount, $this->steamPassword, $this->sship, $this->sshport, $this->sshuser, $this->sshpass, $this->publickey, $this->keyname, $this->syncList, $this->steamCmdTotal, $this->steamCmdOutdated, $this->hldsTotal, $this->hldsOutdated, $this->noSteam, $this->maps, $this->addons, $this->sshcmd);
} }

View File

@ -1,4 +1,5 @@
<?php <?php
/** /**
* File: jobs_user_rm.php. * File: jobs_user_rm.php.
* Author: Ulrich Block * Author: Ulrich Block
@ -55,21 +56,69 @@ $query = $sql->prepare("SELECT * FROM `jobs` j WHERE `status`='4' AND `type`='us
$query->execute(); $query->execute();
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$ok = true; $ok = true;
if ($row['action'] == 'dl') { if ($row['action'] == 'dl') {
$query2 = $sql->prepare("SELECT `accounttype`,`resellerid` FROM `userdata` WHERE `id`=? LIMIT 1"); $query2 = $sql->prepare("SELECT `accounttype`,`resellerid` FROM `userdata` WHERE `id`=? LIMIT 1");
$query2->execute(array($row['affectedID'])); $query2->execute(array($row['affectedID']));
foreach ($query2->fetchAll(PDO::FETCH_ASSOC) as $row2) { foreach ($query2->fetchAll(PDO::FETCH_ASSOC) as $row2) {
if ($row2['accounttype'] == 'r') { if ($row2['accounttype'] == 'r') {
removeUser($row['affectedID'], array('userdata' => 'id','userpermissions' => 'userid'));
$tables=array('addons' => 'resellerid','addons_installed' => 'resellerid','gsswitch' => 'resellerid','rserverdata' => 'resellerid','rservermasterg' => 'resellerid','serverlist' => 'resellerid', removeUser($row['affectedID'], array(
'servertypes' => 'resellerid','settings' => 'resellerid','tickets' => 'resellerid','ticket_topics' => 'resellerid','userdata' => 'resellerid','userpermissions' => 'resellerid','userlog' => 'resellerid','resellerdata' => 'resellerid', 'userdata' => 'id',
'gserver_restarts' => 'resellerid','eac' => 'resellerid','imprints' => 'resellerid','lendedserver' => 'resellerid','lendsettings' => 'resellerid','lendstats' => 'resellerID','voice_server' => 'resellerid','voice_masterserver' => 'resellerid', 'userpermissions' => 'userid'
'translations' => 'resellerID','voice_server_stats' => 'resellerid','voice_server_stats_hours' => 'resellerid','voice_stats_settings' => 'resellerid','mysql_external_servers' => 'resellerid','mysql_external_dbs' => 'resellerid','usergroups' => 'resellerid', )
'api_ips' => 'resellerID','api_settings' => 'resellerID','voice_tsdns' => 'resellerid','voice_dns' => 'resellerID'); );
$tables = array(
'addons' => 'resellerid',
'addons_installed' => 'resellerid',
'addons_allowed' => 'reseller_id',
'gsswitch' => 'resellerid',
'rserverdata' => 'resellerid',
'rservermasterg' => 'resellerid',
'serverlist' => 'resellerid',
'servertypes' => 'resellerid',
'settings' => 'resellerid',
'tickets' => 'resellerid',
'ticket_topics' => 'resellerid',
'userdata' => 'resellerid',
'userpermissions' => 'resellerid',
'userlog' => 'resellerid',
'resellerdata' => 'resellerid',
'gserver_restarts' => 'resellerid',
'eac' => 'resellerid',
'imprints' => 'resellerid',
'lendedserver' => 'resellerid',
'lendsettings' => 'resellerid',
'lendstats' => 'resellerID',
'voice_server' => 'resellerid',
'voice_masterserver' => 'resellerid',
'translations' => 'resellerID',
'voice_server_stats' => 'resellerid',
'voice_server_stats_hours' => 'resellerid',
'voice_stats_settings' => 'resellerid',
'mysql_external_servers' => 'resellerid',
'mysql_external_dbs' => 'resellerid',
'usergroups' => 'resellerid',
'api_ips' => 'resellerID',
'api_settings' => 'resellerID',
'voice_tsdns' => 'resellerid',
'voice_dns' => 'resellerID'
);
removeUser($row['affectedID'],$tables); removeUser($row['affectedID'],$tables);
if ($row2['resellerid'] == $row['affectedID']) { if ($row2['resellerid'] == $row['affectedID']) {
removeUser($row['affectedID'], array('traffic_data' => 'userid','traffic_data_day' => 'userid')); removeUser($row['affectedID'], array(
removeUser($row['affectedID'], array('traffic_data' => 'resellerid','traffic_data_day' => 'resellerid')); 'traffic_data' => 'userid',
'traffic_data_day' => 'userid'
)
);
removeUser($row['affectedID'], array(
'traffic_data' => 'resellerid',
'traffic_data_day' => 'resellerid'
)
);
} }
} }
} }
@ -77,8 +126,9 @@ foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$query2 = $sql->prepare("DELETE FROM `userdata` WHERE `id`=? LIMIT 1"); $query2 = $sql->prepare("DELETE FROM `userdata` WHERE `id`=? LIMIT 1");
$query2->execute(array($row['affectedID'])); $query2->execute(array($row['affectedID']));
$command = $gsprache->del.' userID: '.$row['affectedID'].' name:'.$row['name']; $command = $gsprache->del.' userID: '.$row['affectedID'].' name:'.$row['name'];
} else { } else {
$extraData=@json_decode($row['extraData']); $extraData = @json_decode($row['extraData']);
if (is_object($extraData)) { if (is_object($extraData)) {
$query2 = $sql->prepare("UPDATE `userdata` SET `active`=?,`jobPending`='N' WHERE `id`=? LIMIT 1"); $query2 = $sql->prepare("UPDATE `userdata` SET `active`=?,`jobPending`='N' WHERE `id`=? LIMIT 1");
$query2->execute(array($extraData->newActive, $row['affectedID'])); $query2->execute(array($extraData->newActive, $row['affectedID']));
@ -88,37 +138,28 @@ foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$command='Error: '.$gsprache->mod.' userID: '.$row['affectedID'].' name:'.$row['name']; $command='Error: '.$gsprache->mod.' userID: '.$row['affectedID'].' name:'.$row['name'];
} }
} }
if ($ok == true) { if ($ok == true) {
$query2 = $sql->prepare("UPDATE `jobs` SET `status`='3' WHERE `jobID`=? LIMIT 1"); $query2 = $sql->prepare("UPDATE `jobs` SET `status`='3' WHERE `jobID`=? LIMIT 1");
$query2->execute(array($row['jobID'])); $query2->execute(array($row['jobID']));
} }
$theOutput->printGraph($command); $theOutput->printGraph($command);
} }
$query = $sql->prepare("DELETE p.* FROM `userpermissions` p LEFT JOIN `userdata` u ON p.`userid`=u.`id` WHERE u.`id` IS NULL");
$query->execute(); // following queries will clean up the database. In case we have a NULL value joining failed and the entry needs to be removed.
$query = $sql->prepare("DELETE g.* FROM `userdata_groups` g LEFT JOIN `userdata` u ON g.`userID`=u.`id` WHERE u.`id` IS NULL"); $sql->exec("DELETE p.* FROM `userpermissions` p LEFT JOIN `userdata` u ON p.`userid`=u.`id` WHERE u.`id` IS NULL");
$query->execute(); $sql->exec("DELETE g.* FROM `userdata_groups` g LEFT JOIN `userdata` u ON g.`userID`=u.`id` WHERE u.`id` IS NULL");
$query = $sql->prepare("DELETE s.* FROM `userdata_substitutes` s LEFT JOIN `userdata` u ON s.`userID`=u.`id` WHERE u.`id` IS NULL"); $sql->exec("DELETE s.* FROM `userdata_substitutes` s LEFT JOIN `userdata` u ON s.`userID`=u.`id` WHERE u.`id` IS NULL");
$query->execute(); $sql->exec("DELETE o.* FROM `userdata_substitutes_servers` o LEFT JOIN `userdata_substitutes` s ON o.`sID`=s.`sID` WHERE s.`sID` IS NULL");
$query = $sql->prepare("DELETE o.* FROM `userdata_substitutes_servers` o LEFT JOIN `userdata_substitutes` s ON o.`sID`=s.`sID` WHERE s.`sID` IS NULL"); $sql->exec("DELETE g.* FROM `gsswitch` g LEFT JOIN `userdata` u ON g.`userid`=u.`id` WHERE u.`id` IS NULL");
$query->execute(); $sql->exec("DELETE m.* FROM `rservermasterg` m LEFT JOIN `rserverdata` r ON m.`serverid`=r.`id` WHERE r.`id` IS NULL");
$query = $sql->prepare("DELETE g.* FROM `gsswitch` g LEFT JOIN `userdata` u ON g.`userid`=u.`id` WHERE u.`id` IS NULL"); $sql->exec("DELETE s.* FROM `serverlist` s LEFT JOIN `gsswitch` g ON s.`switchID`=g.`id` WHERE g.`id` IS NULL");
$query->execute(); $sql->exec("DELETE a.* FROM `addons` a LEFT JOIN `userdata` u ON a.`resellerid`=u.`id` WHERE a.`resellerid` IS NULL OR (a.`resellerid`!=0 AND u.`id` IS NULL)");
$query = $sql->prepare("DELETE m.* FROM `rservermasterg` m LEFT JOIN `rserverdata` r ON m.`serverid`=r.`id` WHERE r.`id` IS NULL"); $sql->exec("DELETE a.* FROM `addons_installed` a LEFT JOIN `serverlist` s ON a.`serverid`=s.`id` LEFT JOIN `userdata` u ON a.`userid`=u.`id` LEFT JOIN `addons` t ON a.`addonid`=t.`id` WHERE s.`id` IS NULL OR u.`id` IS NULL");
$query->execute(); $sql->exec("DELETE a.* FROM `addons_allowed` a LEFT JOIN `userdata` u ON a.`reseller_id`=u.`id` LEFT JOIN `addons` t ON a.`addon_id`=t.`id` WHERE a.`reseller_id` IS NULL OR (a.`reseller_id`!=0 AND u.`id` IS NULL) OR t.`id` IS NULL");
$query = $sql->prepare("DELETE s.* FROM `serverlist` s LEFT JOIN `gsswitch` g ON s.`switchID`=g.`id` WHERE g.`id` IS NULL"); $sql->exec("DELETE d.* FROM `mysql_external_dbs` d LEFT JOIN `userdata` u ON d.`uid`=u.`id` WHERE u.`id` IS NULL");
$query->execute(); $sql->exec("DELETE v.* FROM `virtualcontainer` v LEFT JOIN `userdata` u ON v.`userid`=u.`id` WHERE u.`id` IS NULL");
$query = $sql->prepare("DELETE a.* FROM `addons_installed` a LEFT JOIN `serverlist` s ON a.`serverid`=s.`id` WHERE s.`id` IS NULL"); $sql->exec("DELETE v.* FROM `voice_dns` v LEFT JOIN `userdata` u ON v.`userID`=u.`id` WHERE u.`id` IS NULL");
$query->execute(); $sql->exec("DELETE v.* FROM `voice_server` v LEFT JOIN `userdata` u ON v.`userid`=u.`id` WHERE u.`id` IS NULL");
$query = $sql->prepare("DELETE a.* FROM `addons_installed` a LEFT JOIN `userdata` u ON a.`userid`=u.`id` WHERE u.`id` IS NULL"); $sql->exec("DELETE v.* FROM `voice_server_backup` v LEFT JOIN `userdata` u ON v.`uid`=u.`id` WHERE u.`id` IS NULL");
$query->execute();
$query = $sql->prepare("DELETE d.* FROM `mysql_external_dbs` d LEFT JOIN `userdata` u ON d.`uid`=u.`id` WHERE u.`id` IS NULL");
$query->execute();
$query = $sql->prepare("DELETE v.* FROM `virtualcontainer` v LEFT JOIN `userdata` u ON v.`userid`=u.`id` WHERE u.`id` IS NULL");
$query->execute();
$query = $sql->prepare("DELETE v.* FROM `voice_dns` v LEFT JOIN `userdata` u ON v.`userID`=u.`id` WHERE u.`id` IS NULL");
$query->execute();
$query = $sql->prepare("DELETE v.* FROM `voice_server` v LEFT JOIN `userdata` u ON v.`userid`=u.`id` WHERE u.`id` IS NULL");
$query->execute();
$query = $sql->prepare("DELETE v.* FROM `voice_server_backup` v LEFT JOIN `userdata` u ON v.`uid`=u.`id` WHERE u.`id` IS NULL");
$query->execute();

View File

@ -43,126 +43,174 @@ if ((!isset($admin_id) or $main!=1) or (isset($admin_id) and !$pa['settings']))
include(EASYWIDIR . '/stuff/keyphrasefile.php'); include(EASYWIDIR . '/stuff/keyphrasefile.php');
$sprache = getlanguagefile('settings',$user_language,$reseller_id); $sprache = getlanguagefile('settings', $user_language, $reseller_id);
$gssprache = getlanguagefile('gserver',$user_language,$reseller_id); $gssprache = getlanguagefile('gserver', $user_language, $reseller_id);
$loguserid = $admin_id; $loguserid = $admin_id;
$logusername = getusername($admin_id); $logusername = getusername($admin_id);
$logusertype = 'admin'; $logusertype = 'admin';
if ($reseller_id == 0) { if ($reseller_id == 0) {
$logreseller = 0; $logreseller = 0;
$logsubuser = 0; $logsubuser = 0;
} else { } else {
$logsubuser= (isset($_SESSION['oldid'])) ? $_SESSION['oldid'] : 0; $logsubuser = (isset($_SESSION['oldid'])) ? $_SESSION['oldid'] : 0;
$logreseller = 0; $logreseller = 0;
} }
if ($reseller_id != 0 and $admin_id != $reseller_id) { if ($reseller_id != 0 and $admin_id != $reseller_id) {
$reseller_id = $admin_id; $reseller_id = $admin_id;
} }
if ($ui->w('action', 4, 'post') and !token(true)) { if ($ui->w('action', 4, 'post') and !token(true)) {
$template_file = $spracheResponse->token; $template_file = $spracheResponse->token;
} else if ($ui->st('action', 'post') == 'md') { } else if ($ui->st('action', 'post') == 'md') {
// Checks are against select fields. We likely have some kind of attack in case on of the values are not as expected
$fail = 0; $fail = 0;
if (!$ui->active('prefix1', 'post')) $fail = 1; if (!$ui->active('prefix1', 'post')) $fail = 1;
if (!$ui->active('voice_autobackup', 'post')) $fail = 1; if (!$ui->active('voice_autobackup', 'post')) $fail = 1;
if (!$ui->timezone('timezone', 'post')) $fail = 1; if (!$ui->timezone('timezone', 'post')) $fail = 1;
if (!$ui->id('faillogins',2, 'post')) $fail = 1; if (!$ui->id('faillogins', 2, 'post')) $fail = 1;
if (!$ui->id('noservertag',1, 'post')) $fail = 1; if (!$ui->id('noservertag', 1, 'post')) $fail = 1;
if (!$ui->id('nopassword',1, 'post')) $fail = 1; if (!$ui->id('nopassword', 1, 'post')) $fail = 1;
if (!$ui->id('tohighslots',1, 'post')) $fail = 1; if (!$ui->id('tohighslots', 1, 'post')) $fail = 1;
if (!$ui->id('voice_maxbackup',1, 'post')) $fail = 1; if (!$ui->id('voice_maxbackup', 1, 'post')) $fail = 1;
if (!$ui->id('down_checks',2, 'post')) $fail = 1; if (!$ui->id('down_checks', 2, 'post')) $fail = 1;
if (!$ui->id('voice_autobackup_intervall',1, 'post')) $fail = 1; if (!$ui->id('voice_autobackup_intervall', 1, 'post')) $fail = 1;
if (!$ui->smallletters('language',2, 'post')) $fail = 1; if (!$ui->smallletters('language', 2, 'post')) $fail = 1;
if ($fail!=1) {
if ($ui->folder('template', 'post')) { if ($fail != 1) {
$template = $ui->folder('template', 'post');
} else { $imageserver = '';
$template='default';
} $master = 'N';
$voice_autobackup = $ui->active('voice_autobackup', 'post'); $voice_autobackup = $ui->active('voice_autobackup', 'post');
$voice_autobackup_intervall = $ui->id('voice_autobackup_intervall',1, 'post'); $voice_autobackup_intervall = $ui->id('voice_autobackup_intervall', 1, 'post');
$voice_maxbackup = $ui->id('voice_maxbackup',1, 'post'); $voice_maxbackup = $ui->id('voice_maxbackup', 1, 'post');
$prefix1 = $ui->active('prefix1', 'post'); $prefix1 = $ui->active('prefix1', 'post');
$prefix2 = $ui->w('prefix2',20, 'post'); $prefix2 = $ui->w('prefix2', 20, 'post');
$brandname = $ui->description('brandname', 'post'); $brandname = $ui->description('brandname', 'post');
$licence = $ui->smallletters('licence',20, 'post'); $licence = $ui->smallletters('licence', 20, 'post');
$imageserver = ''; $timezone = $ui->timezone('timezone', 'post');
foreach (preg_split('/\r\n/', $ui->escaped('imageserver', 'post'),-1, PREG_SPLIT_NO_EMPTY) as $imgserver) { $down_checks = $ui->id('down_checks', 2, 'post');
$language = $ui->smallletters('language', 2, 'post');
$faillogins = $ui->id('faillogins', 2, 'post');
$supportnumber = $ui->description('supportnumber', 'post');
$noservertag = $ui->id('noservertag', 1, 'post');
$nopassword = $ui->id('nopassword', 1, 'post');
$tohighslots = $ui->id('tohighslots', 1, 'post');
$cronjobIPs = $ui->ips('cronjobIPs', 'post');
$template = ($ui->folder('template', 'post')) ? $ui->folder('template', 'post') : 'default';
$lastCronWarnStatus = ($ui->active('lastCronWarnStatus', 'post')) ? $ui->active('lastCronWarnStatus', 'post') : 'Y';
$lastCronWarnReboot = ($ui->active('lastCronWarnReboot', 'post')) ? $ui->active('lastCronWarnReboot', 'post') : 'Y';
$lastCronWarnUpdates = ($ui->active('lastCronWarnUpdates', 'post')) ? $ui->active('lastCronWarnUpdates', 'post') : 'Y';
$lastCronWarnJobs = ($ui->active('lastCronWarnJobs', 'post')) ? $ui->active('lastCronWarnJobs', 'post') : 'Y';
$lastCronWarnCloud = ($ui->active('lastCronWarnCloud', 'post')) ? $ui->active('lastCronWarnCloud', 'post') : 'Y';
foreach (preg_split('/\r\n/', $ui->escaped('imageserver', 'post'), -1, PREG_SPLIT_NO_EMPTY) as $imgserver) {
if (isurl($imgserver) or isRsync($imgserver)) { if (isurl($imgserver) or isRsync($imgserver)) {
$imageserver .= $imgserver."\r\n"; $imageserver .= $imgserver . "\r\n";
} }
} }
$master="N";
$timezone = $ui->timezone('timezone', 'post'); $query = $sql->prepare("UPDATE `settings` SET `cronjob_ips`=?,`template`=?,`voice_autobackup`=?,`voice_autobackup_intervall`=?,`voice_maxbackup`=?,`language`=?,`imageserver`=AES_ENCRYPT(?,?),`master`=?,`prefix1`=?,`prefix2`=?,`faillogins`=?,`brandname`=?,`timezone`=?,`supportnumber`=?,`noservertag`=?,`nopassword`=?,`tohighslots`=?,`down_checks`=?,`lastCronWarnStatus`=?,`lastCronWarnReboot`=?,`lastCronWarnUpdates`=?,`lastCronWarnJobs`=?,`lastCronWarnCloud`=? WHERE `resellerid`=? LIMIT 1");
$down_checks = $ui->id('down_checks',2, 'post'); $query->execute(array($cronjobIPs, $template, $voice_autobackup, $voice_autobackup_intervall, $voice_maxbackup, $language, $imageserver, $aeskey, $master, $prefix1, $prefix2, $faillogins, $brandname, $timezone, $supportnumber, $noservertag, $nopassword, $tohighslots, $down_checks, $lastCronWarnStatus, $lastCronWarnReboot, $lastCronWarnUpdates, $lastCronWarnJobs, $lastCronWarnCloud, $reseller_id));
$language = $ui->smallletters('language',2, 'post');
$faillogins = $ui->id('faillogins',2, 'post'); if ($query->rowCount() > 0) {
$supportnumber = $ui->description('supportnumber', 'post'); $changed = true;
$noservertag = $ui->id('noservertag',1, 'post'); }
$nopassword = $ui->id('nopassword',1, 'post');
$tohighslots = $ui->id('tohighslots',1, 'post');
$lastCronWarnStatus=($ui->active('lastCronWarnStatus', 'post')) ? $ui->active('lastCronWarnStatus', 'post') : 'Y';
$lastCronWarnReboot=($ui->active('lastCronWarnReboot', 'post')) ? $ui->active('lastCronWarnReboot', 'post') : 'Y';
$lastCronWarnUpdates=($ui->active('lastCronWarnUpdates', 'post')) ? $ui->active('lastCronWarnUpdates', 'post') : 'Y';
$lastCronWarnJobs=($ui->active('lastCronWarnJobs', 'post')) ? $ui->active('lastCronWarnJobs', 'post') : 'Y';
$lastCronWarnCloud=($ui->active('lastCronWarnCloud', 'post')) ? $ui->active('lastCronWarnCloud', 'post') : 'Y';
$query = $sql->prepare("UPDATE `settings` SET `template`=?,`voice_autobackup`=?,`voice_autobackup_intervall`=?,`voice_maxbackup`=?,`language`=?,`imageserver`=AES_ENCRYPT(?,?),`master`=?,`prefix1`=?,`prefix2`=?,`faillogins`=?,`brandname`=?,`timezone`=?,`supportnumber`=?,`noservertag`=?,`nopassword`=?,`tohighslots`=?,`down_checks`=?,`lastCronWarnStatus`=?,`lastCronWarnReboot`=?,`lastCronWarnUpdates`=?,`lastCronWarnJobs`=?,`lastCronWarnCloud`=? WHERE `resellerid`=? LIMIT 1");
$query->execute(array($template,$voice_autobackup,$voice_autobackup_intervall,$voice_maxbackup,$language,$imageserver,$aeskey,$master,$prefix1,$prefix2,$faillogins,$brandname,$timezone,$supportnumber,$noservertag,$nopassword,$tohighslots,$down_checks,$lastCronWarnStatus,$lastCronWarnReboot,$lastCronWarnUpdates,$lastCronWarnJobs,$lastCronWarnCloud,$reseller_id));
if ($query->rowCount()>0) $changed = true;
$query = $sql->prepare("SELECT `id` FROM `imprints` WHERE `language`=? AND `resellerid`=? LIMIT 1"); $query = $sql->prepare("SELECT `id` FROM `imprints` WHERE `language`=? AND `resellerid`=? LIMIT 1");
$query2 = $sql->prepare("UPDATE imprints SET `imprint`=? WHERE `language`=? AND `resellerid`=? LIMIT 1"); $query2 = $sql->prepare("UPDATE imprints SET `imprint`=? WHERE `language`=? AND `resellerid`=? LIMIT 1");
$query3 = $sql->prepare("INSERT INTO `imprints` (`language`,`imprint`,`resellerid`) VALUES (?,?,?)"); $query3 = $sql->prepare("INSERT INTO `imprints` (`language`,`imprint`,`resellerid`) VALUES (?,?,?)");
if ($ui->escaped('languages', 'post')) { if ($ui->escaped('languages', 'post')) {
$languages=(array)$ui->escaped('languages', 'post'); $languages=(array)$ui->escaped('languages', 'post');
foreach($languages as $language) { foreach($languages as $language) {
if (small_letters_check($language,2)) {
$description = $ui->escaped("description_$language", 'post'); if (small_letters_check($language, 2)) {
$query->execute(array($language,$reseller_id));
$description = $ui->escaped('description', 'post', $language);
$query->execute(array($language, $reseller_id));
$num = $query->rowCount(); $num = $query->rowCount();
if ($num==1) {
$query2->execute(array($description,$language,$reseller_id)); if ($num == 1) {
if ($query2->rowCount()>0) $changed = true; $query2->execute(array($description, $language, $reseller_id));
if ($query2->rowCount() > 0) {
$changed = true;
}
} else { } else {
$query3->execute(array($language,$description,$reseller_id)); $query3->execute(array($language, $description, $reseller_id));
if ($query3->rowCount()>0) $changed = true; if ($query3->rowCount() > 0) {
$changed = true;
}
} }
} }
} }
$query = $sql->prepare("SELECT `language` FROM `imprints` WHERE `resellerid`=?"); $query = $sql->prepare("SELECT `language` FROM `imprints` WHERE `resellerid`=?");
$query2 = $sql->prepare("DELETE FROM `imprints` WHERE `language`=? AND `resellerid`=? LIMIT 1"); $query2 = $sql->prepare("DELETE FROM `imprints` WHERE `language`=? AND `resellerid`=? LIMIT 1");
$query->execute(array($reseller_id)); $query->execute(array($reseller_id));
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
if (!in_array($row['language'],$languages)) {
$query2->execute(array($row['language'],$reseller_id)); if (!in_array($row['language'], $languages)) {
if ($query2->rowCount()>0) $changed = true; $query2->execute(array($row['language'], $reseller_id));
if ($query2->rowCount()>0) {
$changed = true;
}
} }
} }
} else { } else {
$query = $sql->prepare("DELETE FROM `imprints` WHERE `resellerid`=?"); $query = $sql->prepare("DELETE FROM `imprints` WHERE `resellerid`=?");
$query->execute(array($reseller_id)); $query->execute(array($reseller_id));
if ($query->rowCount()>0) $changed = true; if ($query->rowCount()>0) $changed = true;
} }
if (isset($changed)) { if (isset($changed)) {
$loguseraction="%mod% %settings%"; $loguseraction = "%mod% %settings%";
$insertlog->execute(); $insertlog->execute();
$template_file = $spracheResponse->table_add; $template_file = $spracheResponse->table_add;
} else { } else {
$template_file = $spracheResponse->error_table; $template_file = $spracheResponse->error_table;
} }
} else { } else {
$template_file = 'admin_404.tpl'; $template_file = 'admin_404.tpl';
} }
} else { } else {
$usprache = getlanguagefile('user', $user_language, $reseller_id);
$servertime = date('Y-m-d H:i:s');
$templates = array();
$foundlanguages = array();
$dir = EASYWIDIR . '/template/';
if (is_dir($dir)){
$dirs = scandir($dir);
foreach ($dirs as $row) {
if (is_dir('template/' . $row) and !preg_match('/^\.(.*)$/', $row)) {
$templates[] = $row;
}
}
}
$query = $sql->prepare("SELECT *,AES_DECRYPT(`imageserver`,?) AS `decryptedimageserver` FROM `settings` WHERE `resellerid`=? LIMIT 1"); $query = $sql->prepare("SELECT *,AES_DECRYPT(`imageserver`,?) AS `decryptedimageserver` FROM `settings` WHERE `resellerid`=? LIMIT 1");
$query->execute(array($aeskey,$reseller_id)); $query->execute(array($aeskey, $reseller_id));
$usprache = getlanguagefile('user',$user_language,$reseller_id);
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$language_choosen = $row['language']; $language_choosen = $row['language'];
$template_choosen = $row['template']; $template_choosen = $row['template'];
$imageserver = $row['decryptedimageserver']; $imageserver = $row['decryptedimageserver'];
$master = $row['master']; $master = $row['master'];
$licence = $row['licence']; $cronjobIPs = $row['cronjob_ips'];
$prefix1 = $row['prefix1']; $prefix1 = $row['prefix1'];
$prefix2 = $row['prefix2']; $prefix2 = $row['prefix2'];
$brandname = $row['brandname']; $brandname = $row['brandname'];
@ -181,27 +229,27 @@ if ($ui->w('action', 4, 'post') and !token(true)) {
$lastCronWarnUpdates = $row['lastCronWarnUpdates']; $lastCronWarnUpdates = $row['lastCronWarnUpdates'];
$lastCronWarnJobs = $row['lastCronWarnJobs']; $lastCronWarnJobs = $row['lastCronWarnJobs'];
$lastCronWarnCloud = $row['lastCronWarnCloud']; $lastCronWarnCloud = $row['lastCronWarnCloud'];
$servertime=date('Y-m-d H:i:s');
$templates = array();
$dir=EASYWIDIR . "/template/";
if (is_dir($dir)){
$dirs=scandir($dir);
foreach ($dirs as $row) {
if (is_dir('template/'.$row) and !preg_match('/^\.(.*)$/', $row)) $templates[] = $row;
}
}
$selectlanguages=getlanguages($template_choosen);
} }
$foundlanguages = array();
foreach (getlanguages($template_choosen) as $langrow2) { if ($query->rowCount() > 0) {
$imprint = '';
$lang = ''; $selectlanguages = getlanguages($template_choosen);
$query = $sql->prepare("SELECT `imprint` FROM `imprints` WHERE `language`=? AND `resellerid`=? LIMIT 1");
$query->execute(array($langrow2,$reseller_id)); foreach (getlanguages($template_choosen) as $langrow2) {
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { $imprint = '';
$imprint = $row['imprint']; $lang = '';
}
$foundlanguages[] = array('style' => $query->rowCount(),'lang' => $langrow2,'imprint' => $imprint); $query = $sql->prepare("SELECT `imprint` FROM `imprints` WHERE `language`=? AND `resellerid`=? LIMIT 1");
} $query->execute(array($langrow2, $reseller_id));
$template_file = "admin_settings.tpl"; foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) {
$imprint = $row['imprint'];
}
$foundlanguages[] = array('style' => $query->rowCount(),'lang' => $langrow2,'imprint' => $imprint);
}
$template_file = 'admin_settings.tpl';
} else {
$template_file = 'admin_404.tpl';
}
} }

View File

@ -323,8 +323,8 @@ if ($ui->st('r', 'get')) {
if ($ui->w('action', 4, 'post')) { if ($ui->w('action', 4, 'post')) {
$action = $ui->w('action', 4, 'post'); $action = $ui->w('action', 4, 'post');
} }
if ($ui->smallletters('site','50', 'get')) { if ($ui->smallletters('site', 50, 'get')) {
$s = $ui->smallletters('site','50', 'get'); $s = $ui->smallletters('site', 50, 'get');
} }
if ($ui->st('w', 'get')) { if ($ui->st('w', 'get')) {
$w = $ui->st('w', 'get'); $w = $ui->st('w', 'get');

View File

@ -1,4 +1,5 @@
<?php <?php
/** /**
* File: tables_add.php. * File: tables_add.php.
* Author: Ulrich Block * Author: Ulrich Block
@ -37,13 +38,12 @@
* Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>. * Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>.
*/ */
if (!isset($admin_id) or !isset($reseller_id) or $main!=1 or $reseller_id != 0) { if (!isset($admin_id) or !isset($reseller_id) or $main!=1 or $reseller_id != 0) {
header('Location: admin.php'); header('Location: admin.php');
die('No Acces'); die('No Acces');
} }
$query="CREATE TABLE IF NOT EXISTS `addons` ( $query = "CREATE TABLE IF NOT EXISTS `addons` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'N', `active` enum('Y','N') NOT NULL DEFAULT 'N',
`paddon` enum('Y','N') DEFAULT 'N', `paddon` enum('Y','N') DEFAULT 'N',
@ -62,7 +62,7 @@ $query="CREATE TABLE IF NOT EXISTS `addons` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `addons_allowed` ( $query = "CREATE TABLE IF NOT EXISTS `addons_allowed` (
`addon_id` int(10) unsigned NOT NULL, `addon_id` int(10) unsigned NOT NULL,
`servertype_id` int(10) unsigned NOT NULL, `servertype_id` int(10) unsigned NOT NULL,
`reseller_id` int(10) unsigned NULL DEFAULT 0, `reseller_id` int(10) unsigned NULL DEFAULT 0,
@ -71,7 +71,7 @@ $query="CREATE TABLE IF NOT EXISTS `addons_allowed` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `addons_installed` ( $query = "CREATE TABLE IF NOT EXISTS `addons_installed` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`userid` int(10) unsigned NOT NULL, `userid` int(10) unsigned NOT NULL,
`addonid` int(10) unsigned NOT NULL, `addonid` int(10) unsigned NOT NULL,
@ -84,7 +84,7 @@ $query="CREATE TABLE IF NOT EXISTS `addons_installed` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `api_ips` ( $query = "CREATE TABLE IF NOT EXISTS `api_ips` (
`ip` varchar(15) NOT NULL, `ip` varchar(15) NOT NULL,
`resellerID` int(10) unsigned DEFAULT 0, `resellerID` int(10) unsigned DEFAULT 0,
PRIMARY KEY (`ip`,`resellerID`) PRIMARY KEY (`ip`,`resellerID`)
@ -92,7 +92,7 @@ $query="CREATE TABLE IF NOT EXISTS `api_ips` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `api_settings` ( $query = "CREATE TABLE IF NOT EXISTS `api_settings` (
`active` enum('Y','N') NOT NULL DEFAULT 'N', `active` enum('Y','N') NOT NULL DEFAULT 'N',
`user` varchar(255) NOT NULL, `user` varchar(255) NOT NULL,
`pwd` BLOB, `pwd` BLOB,
@ -104,7 +104,7 @@ $query="CREATE TABLE IF NOT EXISTS `api_settings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `api_external_auth` ( $query = "CREATE TABLE IF NOT EXISTS `api_external_auth` (
`active` enum('Y','N') NOT NULL DEFAULT 'N', `active` enum('Y','N') NOT NULL DEFAULT 'N',
`ssl` enum('Y','N') NOT NULL DEFAULT 'N', `ssl` enum('Y','N') NOT NULL DEFAULT 'N',
`user` varchar(255) NOT NULL, `user` varchar(255) NOT NULL,
@ -117,7 +117,7 @@ $query="CREATE TABLE IF NOT EXISTS `api_external_auth` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `api_import` ( $query = "CREATE TABLE IF NOT EXISTS `api_import` (
`importID` int(10) unsigned NOT NULL AUTO_INCREMENT, `importID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'Y', `active` enum('Y','N') NOT NULL DEFAULT 'Y',
`fetchUpdates` enum('Y','N') NOT NULL DEFAULT 'Y', `fetchUpdates` enum('Y','N') NOT NULL DEFAULT 'Y',
@ -135,7 +135,7 @@ $query="CREATE TABLE IF NOT EXISTS `api_import` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `badips` ( $query = "CREATE TABLE IF NOT EXISTS `badips` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`badip` varchar(15) NOT NULL, `badip` varchar(15) NOT NULL,
`bantime` datetime NOT NULL, `bantime` datetime NOT NULL,
@ -146,7 +146,7 @@ $query="CREATE TABLE IF NOT EXISTS `badips` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `custom_columns` ( $query = "CREATE TABLE IF NOT EXISTS `custom_columns` (
`customID` int(10) unsigned NOT NULL, `customID` int(10) unsigned NOT NULL,
`itemID` int(10) unsigned NOT NULL, `itemID` int(10) unsigned NOT NULL,
`var` VARCHAR(255) NOT NULL, `var` VARCHAR(255) NOT NULL,
@ -155,7 +155,7 @@ $query="CREATE TABLE IF NOT EXISTS `custom_columns` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `custom_columns_settings` ( $query = "CREATE TABLE IF NOT EXISTS `custom_columns_settings` (
`customID` int(10) unsigned NOT NULL AUTO_INCREMENT, `customID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'Y', `active` enum('Y','N') NOT NULL DEFAULT 'Y',
`item` enum('D','G','S','T','U','V') NOT NULL, `item` enum('D','G','S','T','U','V') NOT NULL,
@ -167,7 +167,7 @@ $query="CREATE TABLE IF NOT EXISTS `custom_columns_settings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `eac` ( $query = "CREATE TABLE IF NOT EXISTS `eac` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'N', `active` enum('Y','N') DEFAULT 'N',
`ip` varchar(15) DEFAULT NULL, `ip` varchar(15) DEFAULT NULL,
@ -190,7 +190,7 @@ $query="CREATE TABLE IF NOT EXISTS `eac` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `easywi_version` ( $query = "CREATE TABLE IF NOT EXISTS `easywi_version` (
`id` smallint(1) unsigned NOT NULL AUTO_INCREMENT, `id` smallint(1) unsigned NOT NULL AUTO_INCREMENT,
`version` decimal(4,2) NOT NULL DEFAULT '3.30', `version` decimal(4,2) NOT NULL DEFAULT '3.30',
`de` text COLLATE utf8_unicode_ci, `de` text COLLATE utf8_unicode_ci,
@ -200,7 +200,7 @@ $query="CREATE TABLE IF NOT EXISTS `easywi_version` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `feeds_news` ( $query = "CREATE TABLE IF NOT EXISTS `feeds_news` (
`newsID` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `newsID` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`feedID` int(10) unsigned NOT NULL, `feedID` int(10) unsigned NOT NULL,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
@ -216,7 +216,7 @@ $query="CREATE TABLE IF NOT EXISTS `feeds_news` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `feeds_settings` ( $query = "CREATE TABLE IF NOT EXISTS `feeds_settings` (
`settingsID` int(10) unsigned NOT NULL AUTO_INCREMENT, `settingsID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`merge` enum('Y','N') DEFAULT 'Y', `merge` enum('Y','N') DEFAULT 'Y',
@ -236,7 +236,7 @@ $query="CREATE TABLE IF NOT EXISTS `feeds_settings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `feeds_url` ( $query = "CREATE TABLE IF NOT EXISTS `feeds_url` (
`feedID` int(10) unsigned NOT NULL AUTO_INCREMENT, `feedID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`twitter` enum('Y','N') DEFAULT 'N', `twitter` enum('Y','N') DEFAULT 'N',
@ -249,7 +249,7 @@ $query="CREATE TABLE IF NOT EXISTS `feeds_url` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `gserver_restarts` ( $query = "CREATE TABLE IF NOT EXISTS `gserver_restarts` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`template` smallint(1) unsigned NOT NULL, `template` smallint(1) unsigned NOT NULL,
`anticheat` smallint(1) unsigned DEFAULT '1', `anticheat` smallint(1) unsigned DEFAULT '1',
@ -270,7 +270,7 @@ $query="CREATE TABLE IF NOT EXISTS `gserver_restarts` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `gsswitch` ( $query = "CREATE TABLE IF NOT EXISTS `gsswitch` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'Y', `active` enum('Y','N') NOT NULL DEFAULT 'Y',
`autoRestart` enum('Y','N') DEFAULT 'Y', `autoRestart` enum('Y','N') DEFAULT 'Y',
@ -320,7 +320,7 @@ $query="CREATE TABLE IF NOT EXISTS `gsswitch` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `imprints` ( $query = "CREATE TABLE IF NOT EXISTS `imprints` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`language` varchar(2) NOT NULL, `language` varchar(2) NOT NULL,
`imprint` text COLLATE utf8_unicode_ci, `imprint` text COLLATE utf8_unicode_ci,
@ -330,7 +330,7 @@ $query="CREATE TABLE IF NOT EXISTS `imprints` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `jobs` ( $query = "CREATE TABLE IF NOT EXISTS `jobs` (
`jobID` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `jobID` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`hostID` int(10) unsigned NULL, `hostID` int(10) unsigned NULL,
`affectedID` int(10) unsigned NULL, `affectedID` int(10) unsigned NULL,
@ -349,7 +349,7 @@ $query="CREATE TABLE IF NOT EXISTS `jobs` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `lendedserver` ( $query = "CREATE TABLE IF NOT EXISTS `lendedserver` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`serverid` int(10) unsigned NOT NULL, `serverid` int(10) unsigned NOT NULL,
`servertype` varchar(1) NOT NULL DEFAULT 'g', `servertype` varchar(1) NOT NULL DEFAULT 'g',
@ -366,7 +366,7 @@ $query="CREATE TABLE IF NOT EXISTS `lendedserver` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `lendsettings` ( $query = "CREATE TABLE IF NOT EXISTS `lendsettings` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'N', `active` enum('Y','N') NOT NULL DEFAULT 'N',
`userGame` enum('A','B','R') NOT NULL DEFAULT 'B', `userGame` enum('A','B','R') NOT NULL DEFAULT 'B',
@ -408,7 +408,7 @@ $query="CREATE TABLE IF NOT EXISTS `lendsettings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `lendstats` ( $query = "CREATE TABLE IF NOT EXISTS `lendstats` (
`lendDate` datetime NOT NULL, `lendDate` datetime NOT NULL,
`serverID` int(10) unsigned NOT NULL, `serverID` int(10) unsigned NOT NULL,
`serverType` enum('v','g') NOT NULL, `serverType` enum('v','g') NOT NULL,
@ -420,7 +420,7 @@ $query="CREATE TABLE IF NOT EXISTS `lendstats` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `mail_log` ( $query = "CREATE TABLE IF NOT EXISTS `mail_log` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned DEFAULT NULL, `uid` int(10) unsigned DEFAULT NULL,
`topic` varchar(255) NOT NULL, `topic` varchar(255) NOT NULL,
@ -432,7 +432,7 @@ $add = $sql->prepare($query);
$add->execute(); $add->execute();
#https://github.com/easy-wi/developer/issues/61 add module management #https://github.com/easy-wi/developer/issues/61 add module management
$query="CREATE TABLE IF NOT EXISTS `modules` ( $query = "CREATE TABLE IF NOT EXISTS `modules` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`get` varchar(255) NOT NULL, `get` varchar(255) NOT NULL,
`file` varchar(255) NOT NULL, `file` varchar(255) NOT NULL,
@ -445,7 +445,7 @@ $add = $sql->prepare($query);
$add->execute(); $add->execute();
#https://github.com/easy-wi/developer/issues/42 column description added #https://github.com/easy-wi/developer/issues/42 column description added
$query="CREATE TABLE IF NOT EXISTS `mysql_external_dbs` ( $query = "CREATE TABLE IF NOT EXISTS `mysql_external_dbs` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`sid` int(10) unsigned NOT NULL, `sid` int(10) unsigned NOT NULL,
@ -468,7 +468,7 @@ $query="CREATE TABLE IF NOT EXISTS `mysql_external_dbs` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `mysql_external_servers` ( $query = "CREATE TABLE IF NOT EXISTS `mysql_external_servers` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`ip` varchar(15) NOT NULL, `ip` varchar(15) NOT NULL,
@ -487,7 +487,7 @@ $query="CREATE TABLE IF NOT EXISTS `mysql_external_servers` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_comments` ( $query = "CREATE TABLE IF NOT EXISTS `page_comments` (
`commentID` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `commentID` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`pageTextID` int(10) unsigned NOT NULL, `pageTextID` int(10) unsigned NOT NULL,
`replyTo` bigint(19) unsigned DEFAULT NULL, `replyTo` bigint(19) unsigned DEFAULT NULL,
@ -507,7 +507,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_comments` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_downloads` ( $query = "CREATE TABLE IF NOT EXISTS `page_downloads` (
`fileID` int(10) unsigned NOT NULL AUTO_INCREMENT, `fileID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`show` enum('A','R','N','E') DEFAULT 'E', `show` enum('A','R','N','E') DEFAULT 'E',
`order` int(10) unsigned, `order` int(10) unsigned,
@ -522,7 +522,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_downloads` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_downloads_log` ( $query = "CREATE TABLE IF NOT EXISTS `page_downloads_log` (
`fileID` int(10) unsigned NOT NULL, `fileID` int(10) unsigned NOT NULL,
`date` datetime NOT NULL, `date` datetime NOT NULL,
`ip` varchar(15) NOT NULL, `ip` varchar(15) NOT NULL,
@ -533,7 +533,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_downloads_log` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_pages` ( $query = "CREATE TABLE IF NOT EXISTS `page_pages` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`subpage` int(10) unsigned DEFAULT NULL, `subpage` int(10) unsigned DEFAULT NULL,
`released` smallint(1) unsigned DEFAULT '1', `released` smallint(1) unsigned DEFAULT '1',
@ -551,7 +551,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_pages` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_pages_text` ( $query = "CREATE TABLE IF NOT EXISTS `page_pages_text` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`pageid` int(10) unsigned NOT NULL, `pageid` int(10) unsigned NOT NULL,
`language` varchar(2) CHARACTER SET utf8 NOT NULL, `language` varchar(2) CHARACTER SET utf8 NOT NULL,
@ -564,7 +564,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_pages_text` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_register_questions` ( $query = "CREATE TABLE IF NOT EXISTS `page_register_questions` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`question` varchar(255) DEFAULT NULL, `question` varchar(255) DEFAULT NULL,
`answer` varchar(255) DEFAULT NULL, `answer` varchar(255) DEFAULT NULL,
@ -573,7 +573,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_register_questions` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_settings` ( $query = "CREATE TABLE IF NOT EXISTS `page_settings` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`seo` enum('Y','N') DEFAULT 'N', `seo` enum('Y','N') DEFAULT 'N',
@ -605,7 +605,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_settings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_terms` ( $query = "CREATE TABLE IF NOT EXISTS `page_terms` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`language` varchar(2) NOT NULL, `language` varchar(2) NOT NULL,
`name` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL,
@ -619,7 +619,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_terms` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `page_terms_used` ( $query = "CREATE TABLE IF NOT EXISTS `page_terms_used` (
`page_id` int(10) unsigned NOT NULL DEFAULT '0', `page_id` int(10) unsigned NOT NULL DEFAULT '0',
`term_id` int(10) unsigned NOT NULL DEFAULT '0', `term_id` int(10) unsigned NOT NULL DEFAULT '0',
`language_id` int(10) unsigned NOT NULL DEFAULT '0', `language_id` int(10) unsigned NOT NULL DEFAULT '0',
@ -629,7 +629,7 @@ $query="CREATE TABLE IF NOT EXISTS `page_terms_used` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `qstatshorten` ( $query = "CREATE TABLE IF NOT EXISTS `qstatshorten` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`qstat` varchar(15) NOT NULL, `qstat` varchar(15) NOT NULL,
`description` varchar(50) NOT NULL, `description` varchar(50) NOT NULL,
@ -638,7 +638,7 @@ $query="CREATE TABLE IF NOT EXISTS `qstatshorten` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `resellerdata` ( $query = "CREATE TABLE IF NOT EXISTS `resellerdata` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`useractive` enum('Y','N') NOT NULL DEFAULT 'Y', `useractive` enum('Y','N') NOT NULL DEFAULT 'Y',
`ips` text, `ips` text,
@ -656,7 +656,7 @@ $query="CREATE TABLE IF NOT EXISTS `resellerdata` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `resellerimages` ( $query = "CREATE TABLE IF NOT EXISTS `resellerimages` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'Y', `active` enum('Y','N') NOT NULL DEFAULT 'Y',
`distro` varchar(50) NOT NULL, `distro` varchar(50) NOT NULL,
@ -668,7 +668,7 @@ $query="CREATE TABLE IF NOT EXISTS `resellerimages` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `rserverdata` ( $query = "CREATE TABLE IF NOT EXISTS `rserverdata` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'Y', `active` enum('Y','N') NOT NULL DEFAULT 'Y',
`hyperthreading` enum('Y','N') DEFAULT 'N', `hyperthreading` enum('Y','N') DEFAULT 'N',
@ -701,7 +701,7 @@ $query="CREATE TABLE IF NOT EXISTS `rserverdata` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `rservermasterg` ( $query = "CREATE TABLE IF NOT EXISTS `rservermasterg` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`serverid` varchar(11) NOT NULL, `serverid` varchar(11) NOT NULL,
`servertypeid` int(10) unsigned DEFAULT NULL, `servertypeid` int(10) unsigned DEFAULT NULL,
@ -715,7 +715,7 @@ $query="CREATE TABLE IF NOT EXISTS `rservermasterg` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `rootsDedicated` ( $query = "CREATE TABLE IF NOT EXISTS `rootsDedicated` (
`dedicatedID` int(10) unsigned NOT NULL AUTO_INCREMENT, `dedicatedID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`status` smallint(1) unsigned NULL, `status` smallint(1) unsigned NULL,
@ -745,7 +745,7 @@ $query="CREATE TABLE IF NOT EXISTS `rootsDedicated` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `rootsDHCP` ( $query = "CREATE TABLE IF NOT EXISTS `rootsDHCP` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`ip` varchar(15) DEFAULT NULL, `ip` varchar(15) DEFAULT NULL,
@ -767,7 +767,7 @@ $query="CREATE TABLE IF NOT EXISTS `rootsDHCP` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `rootsPXE` ( $query = "CREATE TABLE IF NOT EXISTS `rootsPXE` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`ip` varchar(15) DEFAULT NULL, `ip` varchar(15) DEFAULT NULL,
@ -786,7 +786,7 @@ $query="CREATE TABLE IF NOT EXISTS `rootsPXE` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `serverlist` ( $query = "CREATE TABLE IF NOT EXISTS `serverlist` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`switchID` int(10) unsigned NOT NULL, `switchID` int(10) unsigned NOT NULL,
`servertype` int(10) unsigned NOT NULL, `servertype` int(10) unsigned NOT NULL,
@ -816,7 +816,7 @@ $query="CREATE TABLE IF NOT EXISTS `serverlist` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `servertypes` ( $query = "CREATE TABLE IF NOT EXISTS `servertypes` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`steamgame` enum('Y','N','S') NOT NULL DEFAULT 'Y', `steamgame` enum('Y','N','S') NOT NULL DEFAULT 'Y',
`appID` int(10) unsigned, `appID` int(10) unsigned,
@ -858,14 +858,15 @@ $query="CREATE TABLE IF NOT EXISTS `servertypes` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `settings` ( $query = "CREATE TABLE IF NOT EXISTS `settings` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`version` decimal(4,2) DEFAULT '3.30', `version` decimal(4,2) DEFAULT '4.10',
`releasenotesDE` INT(11) unsigned NULL, `releasenotesDE` INT(11) unsigned NULL,
`releasenotesEN` INT(11) unsigned NULL, `releasenotesEN` INT(11) unsigned NULL,
`language` varchar(2) NOT NULL, `language` varchar(2) NOT NULL,
`template` varchar(50) DEFAULT 'default', `template` varchar(50) DEFAULT 'default',
`imageserver` blob, `imageserver` blob,
`cronjob_ips` text,
`licence` text, `licence` text,
`master` enum('Y','N') NOT NULL DEFAULT 'N', `master` enum('Y','N') NOT NULL DEFAULT 'N',
`voice_autobackup` enum('Y','N') DEFAULT 'Y', `voice_autobackup` enum('Y','N') DEFAULT 'Y',
@ -920,7 +921,7 @@ $query="CREATE TABLE IF NOT EXISTS `settings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `tickets` ( $query = "CREATE TABLE IF NOT EXISTS `tickets` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`writedate` datetime DEFAULT NULL, `writedate` datetime DEFAULT NULL,
`topic` varchar(30) DEFAULT NULL, `topic` varchar(30) DEFAULT NULL,
@ -937,7 +938,7 @@ $query="CREATE TABLE IF NOT EXISTS `tickets` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `tickets_text` ( $query = "CREATE TABLE IF NOT EXISTS `tickets_text` (
`ticketID` bigint(19) unsigned DEFAULT NULL, `ticketID` bigint(19) unsigned DEFAULT NULL,
`userID` int(10) unsigned NOT NULL, `userID` int(10) unsigned NOT NULL,
`writeDate` datetime DEFAULT NULL, `writeDate` datetime DEFAULT NULL,
@ -948,7 +949,7 @@ $query="CREATE TABLE IF NOT EXISTS `tickets_text` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `ticket_topics` ( $query = "CREATE TABLE IF NOT EXISTS `ticket_topics` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`topic` varchar(30) NOT NULL, `topic` varchar(30) NOT NULL,
`maintopic` int(10) unsigned DEFAULT NULL, `maintopic` int(10) unsigned DEFAULT NULL,
@ -959,7 +960,7 @@ $query="CREATE TABLE IF NOT EXISTS `ticket_topics` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `traffic_data` ( $query = "CREATE TABLE IF NOT EXISTS `traffic_data` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`serverid` bigint(19) unsigned DEFAULT NULL, `serverid` bigint(19) unsigned DEFAULT NULL,
`ip` varchar(15) DEFAULT NULL, `ip` varchar(15) DEFAULT NULL,
@ -973,7 +974,7 @@ $query="CREATE TABLE IF NOT EXISTS `traffic_data` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `traffic_data_day` ( $query = "CREATE TABLE IF NOT EXISTS `traffic_data_day` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`serverid` bigint(19) unsigned DEFAULT NULL, `serverid` bigint(19) unsigned DEFAULT NULL,
`ip` varchar(15) DEFAULT NULL, `ip` varchar(15) DEFAULT NULL,
@ -987,7 +988,7 @@ $query="CREATE TABLE IF NOT EXISTS `traffic_data_day` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `traffic_settings` ( $query = "CREATE TABLE IF NOT EXISTS `traffic_settings` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`type` varchar(30) NOT NULL DEFAULT 'mysql', `type` varchar(30) NOT NULL DEFAULT 'mysql',
`statip` varchar(50) DEFAULT NULL, `statip` varchar(50) DEFAULT NULL,
@ -1026,7 +1027,7 @@ $query="CREATE TABLE IF NOT EXISTS `traffic_settings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `translations` ( $query = "CREATE TABLE IF NOT EXISTS `translations` (
`type` varchar(2) NOT NULL, `type` varchar(2) NOT NULL,
`lang` varchar(2) NOT NULL, `lang` varchar(2) NOT NULL,
`transID` varchar(255) NOT NULL, `transID` varchar(255) NOT NULL,
@ -1037,7 +1038,7 @@ $query="CREATE TABLE IF NOT EXISTS `translations` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `userdata` ( $query = "CREATE TABLE IF NOT EXISTS `userdata` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`creationTime` datetime, `creationTime` datetime,
`updateTime` datetime, `updateTime` datetime,
@ -1081,7 +1082,7 @@ $add = $sql->prepare($query);
$add->execute(); $add->execute();
#https://github.com/easy-wi/developer/issues/5 #https://github.com/easy-wi/developer/issues/5
$query="CREATE TABLE IF NOT EXISTS `userdata_value_log` ( $query = "CREATE TABLE IF NOT EXISTS `userdata_value_log` (
`userID` int(10) unsigned NOT NULL, `userID` int(10) unsigned NOT NULL,
`date` datetime NOT NULL, `date` datetime NOT NULL,
`json` text NOT NULL, `json` text NOT NULL,
@ -1092,7 +1093,7 @@ $add = $sql->prepare($query);
$add->execute(); $add->execute();
#https://github.com/easy-wi/developer/issues/2 #https://github.com/easy-wi/developer/issues/2
$query="CREATE TABLE IF NOT EXISTS `userdata_substitutes` ( $query = "CREATE TABLE IF NOT EXISTS `userdata_substitutes` (
`sID` int(10) unsigned NOT NULL AUTO_INCREMENT, `sID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`userID` int(10) unsigned NOT NULL, `userID` int(10) unsigned NOT NULL,
`active` enum('Y','N') NOT NULL DEFAULT 'Y', `active` enum('Y','N') NOT NULL DEFAULT 'Y',
@ -1110,7 +1111,7 @@ $query="CREATE TABLE IF NOT EXISTS `userdata_substitutes` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `userdata_substitutes_servers` ( $query = "CREATE TABLE IF NOT EXISTS `userdata_substitutes_servers` (
`sID` int(10) unsigned NOT NULL, `sID` int(10) unsigned NOT NULL,
`oType` varchar(2) NOT NULL, `oType` varchar(2) NOT NULL,
`oID` int(10) unsigned NOT NULL, `oID` int(10) unsigned NOT NULL,
@ -1120,7 +1121,7 @@ $query="CREATE TABLE IF NOT EXISTS `userdata_substitutes_servers` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `userdata_groups` ( $query = "CREATE TABLE IF NOT EXISTS `userdata_groups` (
`userID` int(10) unsigned NOT NULL, `userID` int(10) unsigned NOT NULL,
`groupID` int(10) unsigned NOT NULL, `groupID` int(10) unsigned NOT NULL,
`resellerID` int(10) unsigned DEFAULT 0, `resellerID` int(10) unsigned DEFAULT 0,
@ -1129,7 +1130,7 @@ $query="CREATE TABLE IF NOT EXISTS `userdata_groups` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `usergroups` ( $query = "CREATE TABLE IF NOT EXISTS `usergroups` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`defaultgroup` enum('Y','N') DEFAULT 'N', `defaultgroup` enum('Y','N') DEFAULT 'N',
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
@ -1194,7 +1195,7 @@ $query="CREATE TABLE IF NOT EXISTS `usergroups` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `userlog` ( $query = "CREATE TABLE IF NOT EXISTS `userlog` (
`id` bigint(19) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(19) unsigned NOT NULL AUTO_INCREMENT,
`userid` int(10) unsigned NOT NULL, `userid` int(10) unsigned NOT NULL,
`subuser` int(10) unsigned DEFAULT 0, `subuser` int(10) unsigned DEFAULT 0,
@ -1211,7 +1212,7 @@ $query="CREATE TABLE IF NOT EXISTS `userlog` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `userpermissions` ( $query = "CREATE TABLE IF NOT EXISTS `userpermissions` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`root` enum('Y','N') NOT NULL DEFAULT 'N', `root` enum('Y','N') NOT NULL DEFAULT 'N',
`log` enum('Y','N') DEFAULT 'N', `log` enum('Y','N') DEFAULT 'N',
@ -1256,7 +1257,7 @@ $query="CREATE TABLE IF NOT EXISTS `userpermissions` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `virtualcontainer` ( $query = "CREATE TABLE IF NOT EXISTS `virtualcontainer` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`imageid` int(10) unsigned DEFAULT NULL, `imageid` int(10) unsigned DEFAULT NULL,
`userid` int(10) unsigned DEFAULT NULL, `userid` int(10) unsigned DEFAULT NULL,
@ -1287,7 +1288,7 @@ $query="CREATE TABLE IF NOT EXISTS `virtualcontainer` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `virtualhosts` ( $query = "CREATE TABLE IF NOT EXISTS `virtualhosts` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') NOT NULL DEFAULT 'Y', `active` enum('Y','N') NOT NULL DEFAULT 'Y',
`esxi` enum('Y','N') DEFAULT 'N', `esxi` enum('Y','N') DEFAULT 'N',
@ -1314,7 +1315,7 @@ $query="CREATE TABLE IF NOT EXISTS `virtualhosts` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `voice_dns` ( $query = "CREATE TABLE IF NOT EXISTS `voice_dns` (
`dnsID` int(10) unsigned NOT NULL AUTO_INCREMENT, `dnsID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`dns` varchar(255) DEFAULT NULL, `dns` varchar(255) DEFAULT NULL,
@ -1331,7 +1332,7 @@ $add = $sql->prepare($query);
$add->execute(); $add->execute();
// https://github.com/easy-wi/developer/issues/36 managedByUser, managedForID added // https://github.com/easy-wi/developer/issues/36 managedByUser, managedForID added
$query="CREATE TABLE IF NOT EXISTS `voice_masterserver` ( $query = "CREATE TABLE IF NOT EXISTS `voice_masterserver` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`type` varchar(30) NOT NULL DEFAULT 'ts3', `type` varchar(30) NOT NULL DEFAULT 'ts3',
@ -1375,7 +1376,7 @@ $query="CREATE TABLE IF NOT EXISTS `voice_masterserver` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `voice_server` ( $query = "CREATE TABLE IF NOT EXISTS `voice_server` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`autoRestart` enum('Y','N') DEFAULT 'Y', `autoRestart` enum('Y','N') DEFAULT 'Y',
@ -1420,7 +1421,7 @@ $query="CREATE TABLE IF NOT EXISTS `voice_server` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `voice_server_backup` ( $query = "CREATE TABLE IF NOT EXISTS `voice_server_backup` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`sid` int(10) unsigned NOT NULL, `sid` int(10) unsigned NOT NULL,
`uid` int(10) unsigned DEFAULT NULL, `uid` int(10) unsigned DEFAULT NULL,
@ -1434,7 +1435,7 @@ $query="CREATE TABLE IF NOT EXISTS `voice_server_backup` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `voice_server_stats` ( $query = "CREATE TABLE IF NOT EXISTS `voice_server_stats` (
`sid` int(10) unsigned NOT NULL, `sid` int(10) unsigned NOT NULL,
`mid` int(10) unsigned NOT NULL, `mid` int(10) unsigned NOT NULL,
`installed` decimal(6,2) unsigned NOT NULL, `installed` decimal(6,2) unsigned NOT NULL,
@ -1448,7 +1449,7 @@ $query="CREATE TABLE IF NOT EXISTS `voice_server_stats` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `voice_server_stats_hours` ( $query = "CREATE TABLE IF NOT EXISTS `voice_server_stats_hours` (
`sid` int(10) unsigned NOT NULL, `sid` int(10) unsigned NOT NULL,
`mid` int(10) unsigned NOT NULL, `mid` int(10) unsigned NOT NULL,
`installed` decimal(6,2) unsigned NOT NULL, `installed` decimal(6,2) unsigned NOT NULL,
@ -1462,7 +1463,7 @@ $query="CREATE TABLE IF NOT EXISTS `voice_server_stats_hours` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `voice_stats_settings` ( $query = "CREATE TABLE IF NOT EXISTS `voice_stats_settings` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`text_colour_1` smallint(3) unsigned DEFAULT '0', `text_colour_1` smallint(3) unsigned DEFAULT '0',
`text_colour_2` smallint(3) unsigned DEFAULT '0', `text_colour_2` smallint(3) unsigned DEFAULT '0',
@ -1488,7 +1489,7 @@ $query="CREATE TABLE IF NOT EXISTS `voice_stats_settings` (
$add = $sql->prepare($query); $add = $sql->prepare($query);
$add->execute(); $add->execute();
$query="CREATE TABLE IF NOT EXISTS `voice_tsdns` ( $query = "CREATE TABLE IF NOT EXISTS `voice_tsdns` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`active` enum('Y','N') DEFAULT 'Y', `active` enum('Y','N') DEFAULT 'Y',
`defaultdns` varchar(255) DEFAULT NULL, `defaultdns` varchar(255) DEFAULT NULL,

View File

@ -1,4 +1,5 @@
<?php <?php
/** /**
* File: tables_repair.php. * File: tables_repair.php.
* Author: Ulrich Block * Author: Ulrich Block
@ -680,12 +681,13 @@ $defined['servertypes'] = array('id' => array("Type"=>"int(10) unsigned","Null"=
); );
$defined['settings'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), $defined['settings'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"),
'version' => array("Type"=>"decimal(4,2)","Null"=>"YES","Key"=>"","Default"=>"3.30","Extra"=>""), 'version' => array("Type"=>"decimal(4,2)","Null"=>"YES","Key"=>"","Default"=>"4.10","Extra"=>""),
'releasenotesDE' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'releasenotesDE' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""),
'releasenotesEN' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'releasenotesEN' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""),
'language' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'language' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""),
'template' => array("Type"=>"varchar(50)","Null"=>"YES","Key"=>"","Default"=>"default","Extra"=>""), 'template' => array("Type"=>"varchar(50)","Null"=>"YES","Key"=>"","Default"=>"default","Extra"=>""),
'imageserver' => array("Type"=>"blob","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'imageserver' => array("Type"=>"blob","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""),
'cronjob_ips' => array("Type"=>"text","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""),
'licence' => array("Type"=>"text","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'licence' => array("Type"=>"text","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""),
'master' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"N","Extra"=>""), 'master' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"N","Extra"=>""),
'voice_autobackup' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'voice_autobackup' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""),

View File

@ -203,67 +203,73 @@ if ($ui->id('id', 10, 'get') and $ui->id('adid',10, 'get') and in_array($ui->sma
$protected = $row['protected']; $protected = $row['protected'];
$description = $row['queryName']; $description = $row['queryName'];
if ($protected== 'Y') {
$query2 = $sql->prepare("SELECT a.`addon_id`,t.`menudescription`,t.`depending`,t.`type` FROM `addons_allowed` AS a INNER JOIN `addons` t ON a.`addon_id`=t.`id` AND a.`reseller_id`=t.`resellerid` WHERE t.`active`='Y' AND t.`paddon`='Y' AND a.`servertype_id`=? AND a.`reseller_id`=? ORDER BY t.`depending`,t.`menudescription`"); $query2 = ($protected== 'Y') ? $sql->prepare("SELECT a.`addon_id`,t.`menudescription`,t.`depending`,t.`type` FROM `addons_allowed` AS a INNER JOIN `addons` t ON a.`addon_id`=t.`id` AND a.`reseller_id`=t.`resellerid` WHERE t.`active`='Y' AND t.`paddon`='Y' AND a.`servertype_id`=? AND a.`reseller_id`=? ORDER BY t.`depending`,t.`menudescription`") : $sql->prepare("SELECT a.`addon_id`,t.`menudescription`,t.`depending`,t.`type` FROM `addons_allowed` AS a INNER JOIN `addons` t ON a.`addon_id`=t.`id` AND a.`reseller_id`=t.`resellerid` WHERE t.`active`='Y' AND a.`servertype_id`=? AND a.`reseller_id`=? ORDER BY t.`depending`,t.`menudescription`");
} else {
$query2 = $sql->prepare("SELECT a.`addon_id`,t.`menudescription`,t.`depending`,t.`type` FROM `addons_allowed` AS a INNER JOIN `addons` t ON a.`addon_id`=t.`id` AND a.`reseller_id`=t.`resellerid` WHERE t.`active`='Y' AND a.`servertype_id`=? AND a.`reseller_id`=? ORDER BY t.`depending`,t.`menudescription`");
}
$query2->execute(array($row['servertype_id'], $reseller_id)); $query2->execute(array($row['servertype_id'], $reseller_id));
foreach ($query2->fetchAll(PDO::FETCH_ASSOC) as $row2) { foreach ($query2->fetchAll(PDO::FETCH_ASSOC) as $row2) {
$descriptionrow = '';
$lang = '';
$delete = '';
$adid = $row2['addon_id']; $adid = $row2['addon_id'];
$depending = $row2['depending']; $depending = $row2['depending'];
$menudescription = $row2['menudescription']; $menudescription = $row2['menudescription'];
$descriptionrow = '';
$lang = '';
$query3 = $sql->prepare("SELECT `text` FROM `translations` WHERE `type`='ad' AND `transID`=? AND `lang`=? AND `resellerID`=? LIMIT 1"); $query3 = $sql->prepare("SELECT `text` FROM `translations` WHERE `type`='ad' AND `transID`=? AND `lang`=? AND `resellerID`=? LIMIT 1");
$query3->execute(array($adid, $user_language, $reseller_id)); $query3->execute(array($adid, $user_language, $reseller_id));
$descriptionrow = $query3->fetchColumn(); $descriptionrow = $query3->fetchColumn();
if (empty($descriptionrow)) { if (empty($descriptionrow)) {
$query3 = $sql->prepare("SELECT `text` FROM `translations` WHERE `type`='ad' AND `transID`=? AND `lang`=? AND `resellerID`=? LIMIT 1"); $query3 = $sql->prepare("SELECT `text` FROM `translations` WHERE `type`='ad' AND `transID`=? AND `lang`=? AND `resellerID`=? LIMIT 1");
$query3->execute(array($adid, $default_language, $reseller_id)); $query3->execute(array($adid, $default_language, $reseller_id));
$descriptionrow = $query->fetchColumn(); $descriptionrow = $query->fetchColumn();
} }
$addescription=nl2br($descriptionrow); $addescription = nl2br($descriptionrow);
if ($protected == 'Y') {
$query3 = $sql->prepare("SELECT `id` FROM `addons_installed` WHERE `userid`=? AND `serverid`=? AND `addonid`=? AND `servertemplate`=? AND `paddon`='Y' AND `resellerid`=? LIMIT 1"); $query3 = ($protected == 'Y') ? $sql->prepare("SELECT `id` FROM `addons_installed` WHERE `userid`=? AND `serverid`=? AND `addonid`=? AND `servertemplate`=? AND `paddon`='Y' AND `resellerid`=? LIMIT 1") : $sql->prepare("SELECT `id` FROM `addons_installed` WHERE `userid`=? AND `serverid`=? AND `addonid`=? AND `servertemplate`=? AND `resellerid`=? LIMIT 1");
} else {
$query3 = $sql->prepare("SELECT `id` FROM `addons_installed` WHERE `userid`=? AND `serverid`=? AND `addonid`=? AND `servertemplate`=? AND `resellerid`=? LIMIT 1");
}
$query3->execute(array($user_id, $serverid, $adid, $servertemplate, $reseller_id)); $query3->execute(array($user_id, $serverid, $adid, $servertemplate, $reseller_id));
$installedid = $query3->fetchColumn(); $installedid = $query3->fetchColumn();
$delete = '';
if (isid($installedid,19)){ if (isid($installedid, 19)){
$imgName='16_delete'; $imgName = '16_delete';
$imgAlt='Remove'; $imgAlt = 'Remove';
$bootstrap='icon-remove-sign'; $bootstrap = 'icon-remove-sign';
$action='dl'; $action = 'dl';
$delete='&amp;rid='.$installedid; $delete = '&amp;rid=' . $installedid;
} else { } else {
$query3 = $sql->prepare("SELECT `id` FROM `addons_installed` WHERE `userid`=? AND `serverid`=? AND `servertemplate`=? AND `addonid`=? AND `resellerid`=?"); $query3 = $sql->prepare("SELECT `id` FROM `addons_installed` WHERE `userid`=? AND `serverid`=? AND `servertemplate`=? AND `addonid`=? AND `resellerid`=?");
$query3->execute(array($user_id, $serverid, $servertemplate, $depending, $reseller_id)); $query3->execute(array($user_id, $serverid, $servertemplate, $depending, $reseller_id));
$colcount = $query3->rowcount(); $colcount = $query3->rowcount();
if ($row2['type'] == 'map' or $depending==0 or ($depending>0 and $colcount>0)) {
$action='ad'; if ($row2['type'] == 'map' or $depending == 0 or ($depending > 0 and $colcount > 0)) {
$imgName='16_add'; $action = 'ad';
$bootstrap='icon-plus-sign'; $imgName = '16_add';
$imgAlt='Install'; $bootstrap = 'icon-plus-sign';
$imgAlt = 'Install';
} else { } else {
$action='none'; $action = 'none';
$query3 = $sql->prepare("SELECT `menudescription` FROM `addons` WHERE `id`=? AND `resellerid`=? LIMIT 1"); $query3 = $sql->prepare("SELECT `menudescription` FROM `addons` WHERE `id`=? AND `resellerid`=? LIMIT 1");
$query3->execute(array($depending, $reseller_id)); $query3->execute(array($depending, $reseller_id));
$imgName='16_notice'; $imgName = '16_notice';
$bootstrap='icon-warning-sign'; $bootstrap = 'icon-warning-sign';
$imgAlt = $sprache->requires. ': ' .$query3->fetchColumn(); $imgAlt = $sprache->requires. ': ' .$query3->fetchColumn();
} }
} }
$link='userpanel.php?w=ao&amp;id=' . $switchID . '&amp;adid=' . $adid . '&amp;action=' . $action . $delete . '&amp;r=gs'; $link='userpanel.php?w=ao&amp;id=' . $switchID . '&amp;adid=' . $adid . '&amp;action=' . $action . $delete . '&amp;r=gs';
if ($row2['type'] == 'tool') { if ($row2['type'] == 'tool') {
$table2[] = array('adid' => $adid,'menudescription' => $menudescription,'addescription' => $addescription,'installedid' => $installedid,'img' => $imgName,'bootstrap' => $bootstrap,'alt' => $imgAlt,'link' => $link); $table2[] = array('adid' => $adid, 'menudescription' => $menudescription, 'addescription' => $addescription, 'installedid' => $installedid, 'img' => $imgName, 'bootstrap' => $bootstrap, 'alt' => $imgAlt, 'link' => $link);
} else if ($row2['type'] == 'map') { } else if ($row2['type'] == 'map') {
$table3[] = array('adid' => $adid,'menudescription' => $menudescription,'addescription' => $addescription,'installedid' => $installedid,'img' => $imgName,'bootstrap' => $bootstrap,'alt' => $imgAlt,'link' => $link); $table3[] = array('adid' => $adid, 'menudescription' => $menudescription, 'addescription' => $addescription, 'installedid' => $installedid, 'img' => $imgName, 'bootstrap' => $bootstrap, 'alt' => $imgAlt, 'link' => $link);
} }
} }
$table=array('id' => $switchID,'serverip' => $serverip,'port' => $serverport,'tools' => $table2,'maps' => $table3,'name' => $description);
$table = array('id' => $switchID, 'serverip' => $serverip, 'port' => $serverport, 'tools' => $table2, 'maps' => $table3, 'name' => $description);
unset($table2, $table3); unset($table2, $table3);
} }
$template_file = 'userpanel_gserver_addon.tpl'; $template_file = 'userpanel_gserver_addon.tpl';

View File

@ -218,6 +218,12 @@
</select> </select>
</div> </div>
</div> </div>
<div class="control-group">
<label class="control-label" for="inputCronjobIPs">Cronjob IPs</label>
<div class="controls">
<textarea class="span10" id="inputCronjobIPs" name="cronjobIPs" rows="8"><?php echo $cronjobIPs;?></textarea>
</div>
</div>
<div class="control-group"> <div class="control-group">
<label class="control-label"><?php echo $gsprache->imprint;?></label> <label class="control-label"><?php echo $gsprache->imprint;?></label>
<div class="controls"> <div class="controls">
@ -232,7 +238,7 @@
<div id="<?php echo $array['lang'];?>" class="control-group <?php if ($array['style']==0) echo 'display_none';?>"> <div id="<?php echo $array['lang'];?>" class="control-group <?php if ($array['style']==0) echo 'display_none';?>">
<label class="control-label" for="inputImprint<?php echo $array['lang'];?>"><img src="images/flags/<?php echo $array['lang'];?>.png" alt="Flag: <?php echo $array['lang'];?>.png"/></label> <label class="control-label" for="inputImprint<?php echo $array['lang'];?>"><img src="images/flags/<?php echo $array['lang'];?>.png" alt="Flag: <?php echo $array['lang'];?>.png"/></label>
<div class="controls"> <div class="controls">
<textarea class="span10" id="inputImprint<?php echo $array['lang'];?>" name="description_<?php echo $array['lang'];?>" rows="8"><?php echo $array['imprint'];?></textarea> <textarea class="span10" id="inputImprint<?php echo $array['lang'];?>" name="description[<?php echo $array['lang'];?>]" rows="8"><?php echo $array['imprint'];?></textarea>
</div> </div>
</div> </div>
<?php } ?> <?php } ?>

View File

@ -36,12 +36,9 @@
* Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>. * Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>.
*/ */
ini_set('display_errors',1);
error_reporting(E_ALL|E_STRICT);
if (isset($_SERVER['REMOTE_ADDR'])) { if (isset($_SERVER['REMOTE_ADDR'])) {
$remoteip = $_SERVER['REMOTE_ADDR']; $ip = $_SERVER['REMOTE_ADDR'];
$timelimit = (isset($_GET['timeout']) and is_numeric($_GET['timeout'])) ? $_GET['timeout'] : ini_get('max_execution_time') - 10;
} else { } else {
$maxTime = (isset($argv[1])) ? $argv[1]: 60; $maxTime = (isset($argv[1])) ? $argv[1]: 60;
$memoryLimit = (isset($argv[2])) ? $argv[2] : '64M'; $memoryLimit = (isset($argv[2])) ? $argv[2] : '64M';
@ -52,17 +49,17 @@ if (isset($_SERVER['REMOTE_ADDR'])) {
print 'The time is now: ' . ini_get('max_execution_time') . "\r\n"; print 'The time is now: ' . ini_get('max_execution_time') . "\r\n";
print 'The memory limit is now: ' . ini_get('memory_limit') . "\r\n"; print 'The memory limit is now: ' . ini_get('memory_limit') . "\r\n";
$timelimit = 600;
} }
if (!isset($remoteip) or $_SERVER['SERVER_ADDR'] == $remoteip) { define('EASYWIDIR', dirname(__FILE__));
include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/class_validator.php');
include(EASYWIDIR . '/stuff/functions.php');
include(EASYWIDIR . '/stuff/settings.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php');
define('EASYWIDIR', dirname(__FILE__)); if (!isset($ip) or $ui->escaped('SERVER_ADDR', 'server') == $ip or in_array($ip, ipstoarray($rSA['cronjob_ips']))) {
include(EASYWIDIR . '/stuff/vorlage.php');
include(EASYWIDIR . '/stuff/class_validator.php');
include(EASYWIDIR . '/stuff/functions.php');
include(EASYWIDIR . '/stuff/settings.php');
include(EASYWIDIR . '/stuff/keyphrasefile.php');
$query = $sql->prepare("SELECT `type`,`statip`,AES_DECRYPT(`dbname`,:aeskey) AS `decpteddbname`,AES_DECRYPT(`dbuser`,:aeskey) AS `decpteddbuser`,AES_DECRYPT(`dbpassword`,:aeskey) AS `decpteddbpassword`,`table_name`,`column_sourceip`,`column_destip`,`column_byte`,`column_date` FROM `traffic_settings` LIMIT 1"); $query = $sql->prepare("SELECT `type`,`statip`,AES_DECRYPT(`dbname`,:aeskey) AS `decpteddbname`,AES_DECRYPT(`dbuser`,:aeskey) AS `decpteddbuser`,AES_DECRYPT(`dbpassword`,:aeskey) AS `decpteddbpassword`,`table_name`,`column_sourceip`,`column_destip`,`column_byte`,`column_date` FROM `traffic_settings` LIMIT 1");
$query->execute(array(':aeskey' => $aeskey)); $query->execute(array(':aeskey' => $aeskey));
@ -77,16 +74,20 @@ if (!isset($remoteip) or $_SERVER['SERVER_ADDR'] == $remoteip) {
$column_destip = $row['column_destip']; $column_destip = $row['column_destip'];
$column_byte = $row['column_byte']; $column_byte = $row['column_byte'];
$column_date = $row['column_date']; $column_date = $row['column_date'];
try {
$sql2 = new PDO("$stats_databanktype:host=$stats_host;dbname=$stats_db", $stats_user, $stats_pwd, array(PDO::ATTR_TIMEOUT => 5,PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch(PDOException $error) {
print $error->getMessage();
die("Could not connect to external server\r\n");
}
} }
try { if (!isset($sql2)) {
$sql2=new PDO("$stats_databanktype:host=$stats_host;dbname=$stats_db", $stats_user, $stats_pwd); die("No external server defined \r\n");
} }
catch(PDOException $error) {
print $error->getMessage();
die("Could not connect to external server\r\n");
}
function searchinnerarray($value,$array) { function searchinnerarray($value,$array) {
foreach ($array as $key => $ips) { foreach ($array as $key => $ips) {