exec("INSERT INTO `$dbname`.`csrf_token` (`token`,`timestamp`,`sessionid`) VALUES ('$csrf_token','".time()."','".session_id()."')") === false) { $err_msg = $lang['isntwidbmsg'].print_r($mysqlcon->errorInfo(), true); $err_lvl = 3; } if (($db_csrf = $mysqlcon->query("SELECT * FROM `$dbname`.`csrf_token` WHERE `sessionid`='".session_id()."'")->fetchALL(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC)) === false) { $err_msg = $lang['isntwidbmsg'].print_r($mysqlcon->errorInfo(), true); $err_lvl = 3; } if(($job_check = $mysqlcon->query("SELECT * FROM `$dbname`.`job_check`")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC)) === false) { $err_msg = $lang['isntwidbmsg'].print_r($mysqlcon->errorInfo(), true); $err_lvl = 3; } function reset_status($lang, $job_check, $check = NULL) { $err_msg = "".$lang['wihladm31'].": "; switch([$job_check['reset_user_time']['timestamp'],$job_check['reset_user_delete']['timestamp']]) { case [0,1]: if($check == 1) { $err_msg .= $lang['wihladmrs16']." (".$lang['wisupidle'].": ".$lang['wihladm312'].")
"; break; } else { $err_msg .= $lang['wihladmrs1']." (".$lang['wisupidle'].": ".$lang['wihladm312'].")
"; break; } case [0,2]: $err_msg .= "".$lang['wihladmrs2']." (".$lang['wisupidle'].": ".$lang['wihladm312'].")
"; break; case [0,3]: $err_msg .= "".$lang['wihladmrs3']." (".$lang['wisupidle'].": ".$lang['wihladm312'].")
"; break; case [0,4]: $err_msg .= "".$lang['wihladmrs4']." (".$lang['wisupidle'].": ".$lang['wihladm312'].")
"; break; case [1,0]: if($check == 1) { $err_msg .= $lang['wihladmrs16']." (".$lang['wisupidle'].": ".$lang['wihladm311'].")
"; break; } else { $err_msg .= $lang['wihladmrs1']." (".$lang['wisupidle'].": ".$lang['wihladm311'].")
"; break; } case [2,0]: $err_msg .= "".$lang['wihladmrs2']." (".$lang['wisupidle'].": ".$lang['wihladm311'].")
"; break; case [3,0]: $err_msg .= "".$lang['wihladmrs3']." (".$lang['wisupidle'].": ".$lang['wihladm311'].")
"; break; case [4,0]: $err_msg .= "".$lang['wihladmrs4']." (".$lang['wisupidle'].": ".$lang['wihladm311'].")
"; break; default: $err_msg .= "".$lang['wihladmrs0']."
"; } $err_msg .= "".$lang['wihladm32'].": "; switch($job_check['reset_group_withdraw']['timestamp']) { case 1: if($check == 1) { $err_msg .= $lang['wihladmrs16']."
"; break; } else { $err_msg .= $lang['wihladmrs1']."
"; break; } case 2: $err_msg .= "".$lang['wihladmrs2']."
"; break; case 3: $err_msg .= "".$lang['wihladmrs3']."
"; break; case 4: $err_msg .= "".$lang['wihladmrs4']."
"; break; default: $err_msg .= "".$lang['wihladmrs0']."
"; } $err_msg .= "".$lang['wihladm33'].": "; switch($job_check['reset_webspace_cache']['timestamp']) { case 1: if($check == 1) { $err_msg .= $lang['wihladmrs16']."
"; break; } else { $err_msg .= $lang['wihladmrs1']."
"; break; } case 2: $err_msg .= "".$lang['wihladmrs2']."
"; break; case 3: $err_msg .= "".$lang['wihladmrs3']."
"; break; case 4: $err_msg .= "".$lang['wihladmrs4']."
"; break; default: $err_msg .= "".$lang['wihladmrs0']."
"; } $err_msg .= "".$lang['wihladm34'].": "; switch($job_check['reset_usage_graph']['timestamp']) { case 1: if($check == 1) { $err_msg .= $lang['wihladmrs16']."
"; break; } else { $err_msg .= $lang['wihladmrs1']."
"; break; } case 2: $err_msg .= "".$lang['wihladmrs2']."
"; break; case 3: $err_msg .= "".$lang['wihladmrs3']."
"; break; case 4: $err_msg .= "".$lang['wihladmrs4']."
"; break; default: $err_msg .= "".$lang['wihladmrs0']."
"; } $err_msg .= "

".$lang['wihladm36'].": "; switch($job_check['reset_stop_after']['timestamp']) { case 1: $err_msg .= $lang['wihladmrs16']."
"; break; default: $err_msg .= "".$lang['wihladmrs0']."
"; } return $err_msg; } if($job_check['reset_user_time']['timestamp'] != 0 || $job_check['reset_user_delete']['timestamp'] != 0 || $job_check['reset_group_withdraw']['timestamp'] != 0 || $job_check['reset_webspace_cache']['timestamp'] != 0 || $job_check['reset_usage_graph']['timestamp'] != 0) { $err_msg = ''.$lang['wihladmrs'].":

"; $err_lvl = 2;
	$err_msg .= reset_status($lang, $job_check);

	if(in_array($job_check['reset_user_time']['timestamp'], ["0","4"], true) && in_array($job_check['reset_user_delete']['timestamp'], ["0","4"], true) && in_array($job_check['reset_group_withdraw']['timestamp'], ["0","4"], true) && in_array($job_check['reset_webspace_cache']['timestamp'], ["0","4"], true) && in_array($job_check['reset_usage_graph']['timestamp'], ["0","4"], true)) {
		$err_msg .= '



'.sprintf($lang['wihladmrs9'], '
'); } else { $err_msg .= '
'.sprintf($lang['wihladmrs7'], '
').'

'.$lang['wihladmrs8']; } } if (isset($_POST['confirm']) && isset($db_csrf[$_POST['csrf_token']])) { if(in_array($job_check['reset_user_time']['timestamp'], ["0","4"], true) && in_array($job_check['reset_user_delete']['timestamp'], ["0","4"], true) && in_array($job_check['reset_group_withdraw']['timestamp'], ["0","4"], true) && in_array($job_check['reset_webspace_cache']['timestamp'], ["0","4"], true) && in_array($job_check['reset_usage_graph']['timestamp'], ["0","4"], true)) { if ($mysqlcon->exec("INSERT INTO `$dbname`.`job_check` (`job_name`,`timestamp`) VALUES ('reset_user_time','0'),('reset_user_delete','0'),('reset_group_withdraw','0'),('reset_webspace_cache','0'),('reset_usage_graph','0'),('reset_stop_after','0') ON DUPLICATE KEY UPDATE `timestamp`=VALUES(`timestamp`); DELETE FROM `$dbname`.`csrf_token` WHERE `token`='{$_POST['csrf_token']}'") === false) { $err_msg = $lang['isntwidbmsg'].print_r($mysqlcon->errorInfo(), true); $err_lvl = 3; } else { $err_msg = $lang['wihladmrs10']; $err_lvl = NULL; } } else { $err_msg = $lang['errukwn']; $err_lvl = 3; } } elseif (isset($_POST['update']) && isset($db_csrf[$_POST['csrf_token']])) { if($job_check['reset_user_time']['timestamp'] != 0 || $job_check['reset_user_delete']['timestamp'] != 0 || $job_check['reset_group_withdraw']['timestamp'] != 0 || $job_check['reset_webspace_cache']['timestamp'] != 0 || $job_check['reset_usage_graph']['timestamp'] != 0) { $err_msg = ''.$lang['wihladmrs6'].'

'.sprintf($lang['wihladmrs7'], '
').'

'.$lang['wihladmrs8']; $err_lvl = 3; } elseif($_POST['reset_user_time'] == 0 && !isset($_POST['reset_group_withdraw']) && !isset($_POST['reset_webspace_cache']) && !isset($_POST['reset_usage_graph'])) { $err_msg = $lang['wihladmrs15']; $err_lvl = 3; } else { if(($stats_server = $mysqlcon->query("SELECT * FROM `$dbname`.`stats_server`")->fetch()) === false) { $err_msg .= print_r($mysqlcon->errorInfo(), true); $err_lvl = 3; } if(($groups = $mysqlcon->query("SELECT COUNT(*) AS `count` from `$dbname`.`groups`")->fetch()) === false) { $err_msg .= print_r($mysqlcon->errorInfo(), true); $err_lvl = 3; } if (isset($_POST['reset_user_time']) && $_POST['reset_user_time'] == 1) { $job_check['reset_user_time']['timestamp'] = 1; } elseif (isset($_POST['reset_user_time']) && $_POST['reset_user_time'] == 2) { $job_check['reset_user_delete']['timestamp'] = 1; } if (isset($_POST['reset_group_withdraw'])) $_POST['reset_group_withdraw'] = $job_check['reset_group_withdraw']['timestamp'] = 1; else $_POST['reset_group_withdraw'] = $job_check['reset_group_withdraw']['timestamp'] = 0; if (isset($_POST['reset_webspace_cache'])) $_POST['reset_webspace_cache'] = $job_check['reset_webspace_cache']['timestamp'] = 1; else $_POST['reset_webspace_cache'] = $job_check['reset_webspace_cache']['timestamp'] = 0; if (isset($_POST['reset_usage_graph'])) $_POST['reset_usage_graph'] = $job_check['reset_usage_graph']['timestamp'] = 1; else $_POST['reset_usage_graph'] = $job_check['reset_usage_graph']['timestamp'] = 0; if (isset($_POST['reset_stop_after'])) $_POST['reset_stop_after'] = $job_check['reset_stop_after']['timestamp'] = 1; else $_POST['reset_stop_after'] = $job_check['reset_stop_after']['timestamp'] = 0; if ($_POST['reset_group_withdraw'] == 0) $delay = 0; else $delay = ($cfg['teamspeak_query_command_delay'] / 1000000) + 0.05; if ($_POST['reset_webspace_cache'] == 0) $cache_needed_time = 0; else $cache_needed_time = $stats_server['total_user'] / 10 * 0.005; $time_to_begin = 5 * $cfg['teamspeak_query_command_delay'] / 1000000; $est_time = round($delay * ($stats_server['total_user'] + $groups['count']) + $time_to_begin + $cache_needed_time); $dtF = new \DateTime('@0'); $dtT = new \DateTime("@$est_time"); $est_time = $dtF->diff($dtT)->format($cfg['default_date_format']); $err_msg = $lang['wihladmrs11'].': '.$est_time.'.
'.$lang['wihladmrs12'].'

';
		$err_msg .= reset_status($lang, $job_check, $check = 1);
		$err_msg .= '


     
'; $err_lvl = 1; } } elseif(isset($_POST['startjobs']) && isset($db_csrf[$_POST['csrf_token']])) { if($_POST['reset_user_time'] == 1) { $reset_user_time = 1; $reset_user_delete = 0; } elseif($_POST['reset_user_time'] == 2) { $reset_user_delete = 1; $reset_user_time = 0; } else { $reset_user_time = 0; $reset_user_delete = 0; } if ($mysqlcon->exec("INSERT INTO `$dbname`.`job_check` (`job_name`,`timestamp`) VALUES ('reset_user_time','{$reset_user_time}'),('reset_user_delete','{$reset_user_delete}'),('reset_group_withdraw','{$_POST['reset_group_withdraw']}'),('reset_webspace_cache','{$_POST['reset_webspace_cache']}'),('reset_usage_graph','{$_POST['reset_usage_graph']}'),('reset_stop_after','{$_POST['reset_stop_after']}') ON DUPLICATE KEY UPDATE `timestamp`=VALUES(`timestamp`); DELETE FROM `$dbname`.`csrf_token` WHERE `token`='{$_POST['csrf_token']}'") === false) { $err_msg = $lang['isntwidbmsg'].print_r($mysqlcon->errorInfo(), true); $err_lvl = 3; } else { $err_msg = ''.$lang['wihladmrs5'].'

'.sprintf($lang['wihladmrs7'], '
').'

'.$lang['wihladmrs8']; $err_lvl = NULL; } } elseif(isset($_POST['update']) || isset($_POST['confirm'])) { echo '
',$lang['errcsrf'],'
'; rem_session_ts3($rspathhex); exit; } ?>