release 1.2.4
This commit is contained in:
@@ -286,7 +286,7 @@ if(isset($_POST['confweb'])) {
|
||||
$nextupinfomsg3 = $mysqlcon->quote("You are excepted from the Ranksystem. If you wish to rank contact an admin on the TS3 server.");
|
||||
$servernews = $mysqlcon->quote("<strong>Message</strong><br>This is an example Message.<br>Change this Message inside the webinterface.");
|
||||
$rankupmsg = $mysqlcon->quote('Hey, you reached a higher rank, since you already connected for %1$s days, %2$s hours and %3$s minutes to our TS3 server.[B]Keep it up![/B] ;-) ');
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.config (webuser,webpass,tshost,tsquery,tsvoice,tsuser,language,queryname,queryname2,grouptime,resetbydbchange,msgtouser,upcheck,uniqueid,updateinfotime,currvers,exceptuuid,exceptgroup,dateformat,showexcld,showcolcld,showcoluuid,showcoldbid,showcolot,showcolit,showcolat,showcolnx,showcolsg,showcolrg,showcolls,slowmode,cleanclients,cleanperiod,showhighest,showcolas,defchid,timezone,logpath,ignoreidle,rankupmsg,newversion,servernews,nextupinfo,nextupinfomsg1,nextupinfomsg2,nextupinfomsg3,shownav,showgrpsince,resetexcept,upchannel,avatar_delay) VALUES ('$user','$pass','localhost','10011','9987','serveradmin','en','Ranksystem','RankSystem','31536000=>47,31536060=>50','1','1','1','xrTKhT/HDl4ea0WoFDQH2zOpmKg=,9odBYAU7z2E2feUz965sL0/Myom=','7200','1.2.3','xrTKhT/HDl4ea0WoFDQH2zOpmKg=','2,6','%a days, %h hours, %i mins, %s secs','1','1','1','1','1','1','1','1','1','1','1','200000','1','86400','1','1','0','Europe/Berlin','$logpath','600',$rankupmsg,'1.2.3',$servernews,'1',$nextupinfomsg1,$nextupinfomsg2,$nextupinfomsg3,'1','1','0','version','0')") === false) {
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.config (webuser,webpass,tshost,tsquery,tsvoice,tsuser,language,queryname,queryname2,grouptime,resetbydbchange,msgtouser,upcheck,uniqueid,updateinfotime,currvers,exceptuuid,exceptgroup,dateformat,showexcld,showcolcld,showcoluuid,showcoldbid,showcolot,showcolit,showcolat,showcolnx,showcolsg,showcolrg,showcolls,slowmode,cleanclients,cleanperiod,showhighest,showcolas,defchid,timezone,logpath,ignoreidle,rankupmsg,newversion,servernews,nextupinfo,nextupinfomsg1,nextupinfomsg2,nextupinfomsg3,shownav,showgrpsince,resetexcept,upchannel,avatar_delay) VALUES ('$user','$pass','localhost','10011','9987','serveradmin','en','Ranksystem','RankSystem','31536000=>47,31536060=>50','1','1','1','xrTKhT/HDl4ea0WoFDQH2zOpmKg=,9odBYAU7z2E2feUz965sL0/Myom=','7200','1.2.3','xrTKhT/HDl4ea0WoFDQH2zOpmKg=','2,6','%a days, %h hours, %i mins, %s secs','1','1','1','1','1','1','1','1','1','1','1','0','1','86400','1','1','0','Europe/Berlin','$logpath','600',$rankupmsg,'1.2.3',$servernews,'1',$nextupinfomsg1,$nextupinfomsg2,$nextupinfomsg3,'1','1','0','version','0')") === false) {
|
||||
$err_msg = $lang['isntwidbmsg'].$mysqlcon->errorCode()." ".print_r($mysqlcon->errorInfo(), true); $err_lvl = 2;
|
||||
} else {
|
||||
$err_msg = $lang['isntwiusr'].'<br><br>';
|
||||
|
||||
@@ -1,48 +1,43 @@
|
||||
<?PHP
|
||||
function addon_assign_groups($addons_config,$ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath,$allclients) {
|
||||
function addon_assign_groups($addons_config,$ts3,$dbname,$slowmode,$timezone,$logpath,$allclients,$select_arr) {
|
||||
$sqlexec = '';
|
||||
|
||||
if(($lastupdate = $mysqlcon->query("SELECT * FROM $dbname.job_check WHERE job_name='check_update'")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 0:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
|
||||
if(($dbdata = $mysqlcon->query("SELECT * FROM $dbname.addon_assign_groups")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"addon_assign_groups: Error while getting data out of db: ".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$dbdata_fetched = $dbdata->fetchAll();
|
||||
|
||||
foreach($dbdata_fetched as $entry) {
|
||||
$cld_groups = explode(',', $entry['grpids']);
|
||||
foreach($cld_groups as $group) {
|
||||
foreach ($allclients as $client) {
|
||||
if($client['client_unique_identifier'] == $entry['uuid']) {
|
||||
$cldbid = $client['client_database_id'];
|
||||
$nickname = htmlspecialchars($client['client_nickname'], ENT_QUOTES);
|
||||
break;
|
||||
if(isset($select_arr['addon_assign_groups']) && count($select_arr['addon_assign_groups']) != 0) {
|
||||
foreach($select_arr['addon_assign_groups'] as $uuid => $value) {
|
||||
$cld_groups = explode(',', $value['grpids']);
|
||||
foreach($cld_groups as $group) {
|
||||
foreach ($allclients as $client) {
|
||||
if($client['client_unique_identifier'] == $uuid) {
|
||||
$cldbid = $client['client_database_id'];
|
||||
$nickname = htmlspecialchars($client['client_nickname'], ENT_QUOTES);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(isset($cldbid)) {
|
||||
if(strstr($group, '-')) {
|
||||
$group = str_replace('-','',$group);
|
||||
try {
|
||||
$ts3->serverGroupClientDel($group, $cldbid);
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"addon_assign_groups:".$e->getCode().': '."Error while removing group: ".$e->getMessage());
|
||||
}
|
||||
} else {
|
||||
try {
|
||||
$ts3->serverGroupClientAdd($group, $cldbid);
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"addon_assign_groups:".$e->getCode().': '."Error while adding group: ".$e->getMessage());
|
||||
if(isset($cldbid)) {
|
||||
if(strstr($group, '-')) {
|
||||
$group = str_replace('-','',$group);
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$ts3->serverGroupClientDel($group, $cldbid);
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"addon_assign_groups:".$e->getCode().': '."Error while removing group: ".$e->getMessage());
|
||||
}
|
||||
} else {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$ts3->serverGroupClientAdd($group, $cldbid);
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"addon_assign_groups:".$e->getCode().': '."Error while adding group: ".$e->getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.addon_assign_groups") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"addon_assign_groups: Error while deleting data out of db: ".print_r($mysqlcon->errorInfo(), true));
|
||||
$sqlexec .= "DELETE FROM $dbname.addon_assign_groups; ";
|
||||
}
|
||||
return($sqlexec);
|
||||
}
|
||||
?>
|
||||
188
jobs/bot.php
188
jobs/bot.php
@@ -5,6 +5,21 @@ ini_set('default_charset', 'UTF-8');
|
||||
setlocale(LC_ALL, 'UTF-8');
|
||||
error_reporting(0);
|
||||
|
||||
function shutdown($mysqlcon = NULL, $logpath, $timezone, $loglevel, $reason, $nodestroypid = NULL) {
|
||||
if($nodestroypid == NULL) {
|
||||
if (substr(php_uname(), 0, 7) == "Windows") {
|
||||
exec("del /F ".substr(__DIR__,0,-4).'logs/pid');
|
||||
} else {
|
||||
exec("rm -f ".substr(__DIR__,0,-4).'logs/pid');
|
||||
}
|
||||
}
|
||||
enter_logfile($logpath,$timezone,$loglevel,$reason." Shutting down!\n\n");
|
||||
if(isset($mysqlcon)) {
|
||||
$mysqlcon->close();
|
||||
}
|
||||
exit;
|
||||
}
|
||||
|
||||
function enter_logfile($logpath,$timezone,$loglevel,$logtext,$norotate = false) {
|
||||
global $phpcommand;
|
||||
$file = $logpath.'ranksystem.log';
|
||||
@@ -18,10 +33,11 @@ function enter_logfile($logpath,$timezone,$loglevel,$logtext,$norotate = false)
|
||||
$loglevel = " NOTICE ";
|
||||
} elseif ($loglevel == 5) {
|
||||
$loglevel = " INFO ";
|
||||
} elseif ($loglevel == 6) {
|
||||
$loglevel = " DEBUG ";
|
||||
}
|
||||
$input = DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''))->setTimeZone(new DateTimeZone($timezone))->format("Y-m-d H:i:s.u ").$loglevel.$logtext."\n";
|
||||
$loghandle = fopen($file, 'a');
|
||||
fwrite($loghandle, $input);
|
||||
fwrite($loghandle, DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''))->setTimeZone(new DateTimeZone($timezone))->format("Y-m-d H:i:s.u ").$loglevel.$logtext."\n");
|
||||
fclose($loghandle);
|
||||
if($norotate == false && filesize($file) > 5242880) {
|
||||
fwrite($loghandle, DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''))->setTimeZone(new DateTimeZone($timezone))->format("Y-m-d H:i:s.u ")." NOTICE Logfile filesie of 5 MiB reached.. Rotate logfile.\n");
|
||||
@@ -47,24 +63,19 @@ require_once(substr(__DIR__,0,-4).'other/config.php');
|
||||
require_once(substr(__DIR__,0,-4).'other/phpcommand.php');
|
||||
|
||||
if(isset($_SERVER['HTTP_HOST']) || isset($_SERVER['REMOTE_ADDR'])) {
|
||||
enter_logfile($logpath,$timezone,1,"Request to start the Ranksystem from ".$_SERVER['REMOTE_ADDR'].". It seems the request came not from the command line! Shuttin down!\n\n");
|
||||
exit;
|
||||
shutdown($mysqlcon, $logpath, $timezone, 1, "Request to start the Ranksystem from ".$_SERVER['REMOTE_ADDR'].". It seems the request came not from the command line!", 1);
|
||||
}
|
||||
if(version_compare(phpversion(), '5.5.0', '<')) {
|
||||
enter_logfile($logpath,$timezone,1,"Your PHP version (".phpversion().") is below 5.5.0. Update of PHP needed! Shuttin down!\n\n");
|
||||
exit;
|
||||
shutdown($mysqlcon, $logpath, $timezone, 1, "Your PHP version (".phpversion().") is below 5.5.0. Update of PHP is required!");
|
||||
}
|
||||
if(!function_exists('simplexml_load_file')) {
|
||||
enter_logfile($logpath,$timezone,1,"SimpleXML is missed. Installation of SimpleXML is needed! Shuttin down!\n\n");
|
||||
exit;
|
||||
shutdown($mysqlcon, $logpath, $timezone, 1, "SimpleXML is missed. Installation of SimpleXML is required!");
|
||||
}
|
||||
if(!in_array('curl', get_loaded_extensions())) {
|
||||
enter_logfile($logpath,$timezone,1,"PHP cURL is missed. Installation of PHP cURL is needed! Shuttin down!\n\n");
|
||||
exit;
|
||||
shutdown($mysqlcon, $logpath, $timezone, 1, "PHP cURL is missed. Installation of PHP cURL is required!");
|
||||
}
|
||||
if(!in_array('zip', get_loaded_extensions())) {
|
||||
enter_logfile($logpath,$timezone,1,"PHP Zip is missed. Installation of PHP Zip is needed! Shuttin down!\n\n");
|
||||
exit;
|
||||
shutdown($mysqlcon, $logpath, $timezone, 1, "PHP Zip is missed. Installation of PHP Zip is required!");
|
||||
}
|
||||
|
||||
enter_logfile($logpath,$timezone,5,"Initialize Bot...");
|
||||
@@ -79,19 +90,49 @@ require_once(substr(__DIR__,0,-4).'jobs/check_db.php');
|
||||
require_once(substr(__DIR__,0,-4).'jobs/handle_messages.php');
|
||||
require_once(substr(__DIR__,0,-4).'jobs/update_rs.php');
|
||||
|
||||
enter_logfile($logpath,$timezone,6,"Running on OS: ".php_uname("s")." ".php_uname("r"));
|
||||
enter_logfile($logpath,$timezone,6,"Using PHP Version: ".phpversion());
|
||||
|
||||
enter_logfile($logpath,$timezone,5," Config check started...");
|
||||
|
||||
if(($groupslist = $mysqlcon->query("SELECT * FROM $dbname.groups")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC)) === false) {
|
||||
enter_logfile($logpath,$timezone,1,"Select on DB failed for group check: ".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
|
||||
$errcnf = 0;
|
||||
if(isset($groupslist) && $groupslist != NULL) {
|
||||
foreach($grouptime as $time => $groupid) {
|
||||
if(!isset($groupslist[$groupid]) && $groupid != NULL) {
|
||||
enter_logfile($logpath,$timezone,1,' '.sprintf($lang['upgrp0001'], $groupid, $lang['wigrptime']));
|
||||
$errcnf++;
|
||||
}
|
||||
}
|
||||
foreach($boostarr as $groupid => $value) {
|
||||
if(!isset($groupslist[$groupid]) && $groupid != NULL) {
|
||||
enter_logfile($logpath,$timezone,2,' '.sprintf($lang['upgrp0001'], $groupid, $lang['wiboost']));
|
||||
}
|
||||
}
|
||||
foreach($exceptgroup as $groupid => $value) {
|
||||
if(!isset($groupslist[$groupid]) && $groupid != NULL) {
|
||||
enter_logfile($logpath,$timezone,2,' '.sprintf($lang['upgrp0001'], $groupid, $lang['wiexgrp']));
|
||||
}
|
||||
}
|
||||
}
|
||||
if($errcnf > 0) {
|
||||
shutdown($mysqlcon, $logpath, $timezone, 1, "Critical Config error!");
|
||||
}
|
||||
unset($groupslist,$errcnf);
|
||||
|
||||
enter_logfile($logpath,$timezone,5," Config check [done]");
|
||||
|
||||
function check_shutdown($timezone,$logpath) {
|
||||
if(!is_file(substr(__DIR__,0,-4).'logs/pid')) {
|
||||
enter_logfile($logpath,$timezone,5,"Received signal to stop. Shutting down!\n\n");
|
||||
exit;
|
||||
shutdown($mysqlcon, $logpath, $timezone, 5, "Received signal to stop!");
|
||||
}
|
||||
}
|
||||
|
||||
function get_data($url,$currvers,$ts) {
|
||||
$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_REFERER, php_uname("s")." ".$ts['host'].":".$ts['voice']);curl_setopt($ch, CURLOPT_USERAGENT, "TSN Ranksystem ".$currvers);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);curl_setopt($ch, CURLOPT_MAXREDIRS, 10);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);$data = curl_exec($ch);curl_close($ch);return $data;
|
||||
}
|
||||
|
||||
$currvers = check_db($mysqlcon,$lang,$dbname,$timezone,$currvers,$logpath);
|
||||
enter_logfile($logpath,$timezone,5," Ranksystem Version: ".$currvers);
|
||||
enter_logfile($logpath,$timezone,5,"Ranksystem Version: ".$currvers);
|
||||
|
||||
enter_logfile($logpath,$timezone,5,"Loading addons...");
|
||||
require_once(substr(__DIR__,0,-4).'other/load_addons_config.php');
|
||||
@@ -153,33 +194,66 @@ try {
|
||||
}
|
||||
|
||||
enter_logfile($logpath,$timezone,5,"Bot starts now his work!");
|
||||
$looptime = 1;
|
||||
$looptime = $rotated_cnt = 0; $rotated = '';
|
||||
usleep(5000000);
|
||||
while(1) {
|
||||
if($looptime<1) {
|
||||
$loopsleep = (1 - $looptime) * 1000000;
|
||||
//enter_logfile($logpath,$timezone,6," Sleep for ".(1 - $looptime)." seconds till next loop starts.");
|
||||
check_shutdown($timezone,$logpath); usleep($loopsleep);
|
||||
}
|
||||
$sqlexec='';
|
||||
$starttime = microtime(true);
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
|
||||
if(($get_db_data = $mysqlcon->query("SELECT * FROM $dbname.user; SELECT MAX(timestamp) AS timestamp FROM $dbname.user_snapshot; SELECT version, COUNT(version) AS count FROM $dbname.user GROUP BY version ORDER BY count DESC; SELECT MAX(timestamp) AS timestamp FROM $dbname.server_usage; SELECT * FROM $dbname.job_check; SELECT * FROM $dbname.groups; SELECT uuid FROM $dbname.stats_user; SELECT * FROM $dbname.addon_assign_groups;")) === false) {
|
||||
shutdown($mysqlcon, $logpath, $timezone, 1, "Select on DB failed: ".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
|
||||
$count_select = 0;
|
||||
$select_arr = array();
|
||||
while($single_select = $get_db_data->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC)) {
|
||||
$count_select++;
|
||||
|
||||
switch ($count_select) {
|
||||
case 1:
|
||||
$select_arr['all_user'] = $single_select;
|
||||
break;
|
||||
case 2:
|
||||
$select_arr['max_timestamp_user_snapshot'] = $single_select;
|
||||
break;
|
||||
case 3:
|
||||
$select_arr['count_version_user'] = $single_select;
|
||||
break;
|
||||
case 4:
|
||||
$select_arr['max_timestamp_server_usage'] = $single_select;
|
||||
break;
|
||||
case 5:
|
||||
$select_arr['job_check'] = $single_select;
|
||||
break;
|
||||
case 6:
|
||||
$select_arr['groups'] = $single_select;
|
||||
break;
|
||||
case 7:
|
||||
$select_arr['uuid_stats_user'] = $single_select;
|
||||
break;
|
||||
case 8:
|
||||
$select_arr['addon_assign_groups'] = $single_select;
|
||||
break;
|
||||
}
|
||||
$get_db_data->nextRowset();
|
||||
}
|
||||
unset($get_db_data);
|
||||
|
||||
check_shutdown($timezone,$logpath);
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
$ts3->clientListReset();
|
||||
usleep($slowmode);
|
||||
$allclients = $ts3->clientList();
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
$ts3->serverInfoReset();
|
||||
usleep($slowmode);
|
||||
$serverinfo = $ts3->serverInfo();
|
||||
calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$grouptime,$boostarr,$resetbydbchange,$msgtouser,$uniqueid,$updateinfotime,$currvers,$substridle,$exceptuuid,$exceptgroup,$allclients,$logpath,$rankupmsg,$ignoreidle,$exceptcid,$ts,$resetexcept,$upchannel,$phpcommand);
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
get_avatars($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath,$avatar_delay);
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serverinfo,$logpath);
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
calc_serverstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serverinfo,$substridle,$grouptime,$logpath);
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
calc_userstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath);
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
clean($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$cleanclients,$cleanperiod,$logpath);
|
||||
$sqlexec .= update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serverinfo,$logpath,$grouptime,$boostarr,$exceptgroup,$select_arr);
|
||||
$sqlexec .= calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$grouptime,$boostarr,$resetbydbchange,$msgtouser,$uniqueid,$updateinfotime,$currvers,$substridle,$exceptuuid,$exceptgroup,$allclients,$logpath,$rankupmsg,$ignoreidle,$exceptcid,$resetexcept,$phpcommand,$select_arr);
|
||||
get_avatars($ts3,$slowmode,$timezone,$logpath,$avatar_delay);
|
||||
$sqlexec .= clean($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$cleanclients,$cleanperiod,$logpath,$select_arr);
|
||||
$sqlexec .= calc_serverstats($ts3,$mysqlcon,$dbname,$dbtype,$slowmode,$timezone,$serverinfo,$substridle,$grouptime,$logpath,$ts,$currvers,$upchannel,$select_arr);
|
||||
$sqlexec .= calc_userstats($ts3,$mysqlcon,$dbname,$slowmode,$timezone,$logpath,$select_arr);
|
||||
|
||||
if($addons_config['assign_groups_active']['value'] == '1') {
|
||||
if(!defined('assign_groups')) {
|
||||
enter_logfile($logpath,$timezone,5,"Loading new addon...");
|
||||
@@ -188,10 +262,44 @@ try {
|
||||
define('assign_groups',1);
|
||||
enter_logfile($logpath,$timezone,5,"Loading new addon [done]");
|
||||
}
|
||||
addon_assign_groups($addons_config,$ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath,$allclients);
|
||||
$sqlexec .= addon_assign_groups($addons_config,$ts3,$dbname,$slowmode,$timezone,$logpath,$allclients,$select_arr);
|
||||
}
|
||||
|
||||
if($mysqlcon->exec($sqlexec) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"Executing SQL commands failed: ".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
unset($sqlexec, $select_arr);
|
||||
|
||||
$looptime = microtime(true) - $starttime;
|
||||
try { $ts3->getAdapter(); } catch (Exception $e) {}
|
||||
$rotated = substr((number_format(round($looptime, 5),5) . ';' . $rotated),0,79);
|
||||
|
||||
if($looptime < 1) {
|
||||
$loopsleep = (1 - $looptime) * 1000000;
|
||||
//enter_logfile($logpath,$timezone,6,"last loop: ".round($looptime, 5)." sec.");
|
||||
usleep($loopsleep);
|
||||
} elseif($slowmode == 0) {
|
||||
//enter_logfile($logpath,$timezone,6,"last loop: ".round($looptime, 5)." sec.");
|
||||
$rotated_cnt++;
|
||||
if($rotated_cnt > 3600) {
|
||||
$rotated_arr = explode(';', $rotated);
|
||||
$sum_time = 0;
|
||||
foreach ($rotated_arr as $time) {
|
||||
$sum_time = $sum_time + $time;
|
||||
}
|
||||
if(($sum_time / 10) > 1) {
|
||||
$rotated_cnt = 0;
|
||||
enter_logfile($logpath,$timezone,4," Your Ranksystem seems to be slow. This is not a big deal, but it needs more ressources then necessary.");
|
||||
enter_logfile($logpath,$timezone,4," Here you'll find some information to optimize it: https://ts-n.net/ranksystem.php#optimize");
|
||||
enter_logfile($logpath,$timezone,4," Last 10 runtimes in seconds (lower values are better): ".$rotated);
|
||||
foreach ($uniqueid as $clientid) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$ts3->clientGetByUid($clientid)->message("\nYour Ranksystem seems to be slow. This is not a big deal, but it needs more ressources then necessary.\nHere you'll find some information to optimize it: [URL]https://ts-n.net/ranksystem.php#optimize[/URL]\nLast 10 runtimes in seconds (lower values are better):\n".$rotated);
|
||||
} catch (Exception $e) { }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception $e) {
|
||||
|
||||
@@ -1,34 +1,15 @@
|
||||
<?PHP
|
||||
function calc_serverstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serverinfo,$substridle,$grouptime,$logpath) {
|
||||
function calc_serverstats($ts3,$mysqlcon,$dbname,$dbtype,$slowmode,$timezone,$serverinfo,$substridle,$grouptime,$logpath,$ts,$currvers,$upchannel,$select_arr) {
|
||||
$nowtime = time();
|
||||
$sqlexec = '';
|
||||
|
||||
$total_user = 0;
|
||||
$total_online_time = 0;
|
||||
$total_active_time = 0;
|
||||
$total_inactive_time = 0;
|
||||
$country_string = '';
|
||||
$platform_string = '';
|
||||
$server_used_slots = 0;
|
||||
$server_channel_amount = 0;
|
||||
$user_today = 0;
|
||||
$user_week = 0;
|
||||
$user_month = 0;
|
||||
$user_quarter = 0;
|
||||
if(($uuids = $mysqlcon->query("SELECT uuid,count,idle,platform,nation,lastseen FROM $dbname.user")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 1:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$uuids = $uuids->fetchAll();
|
||||
foreach($uuids as $uuid) {
|
||||
$sqlhis[$uuid['uuid']] = array(
|
||||
"uuid" => $uuid['uuid'],
|
||||
"count" => $uuid['count'],
|
||||
"idle" => $uuid['idle']
|
||||
);
|
||||
$total_user = $total_online_time = $total_inactive_time = $server_used_slots = $server_channel_amount = $user_today = $user_week = $user_month = $user_quarter = 0;
|
||||
$country_string = $platform_string = '';
|
||||
|
||||
foreach($select_arr['all_user'] as $uuid) {
|
||||
if ($uuid['nation']!=NULL) $country_string .= $uuid['nation'] . ' ';
|
||||
if ($uuid['platform']!=NULL) {
|
||||
$uuid_platform = str_replace(' ','',$uuid['platform']);
|
||||
$platform_string .= $uuid_platform . ' ';
|
||||
}
|
||||
if ($uuid['platform']!=NULL) $platform_string .= str_replace(' ','',$uuid['platform']) . ' ';
|
||||
|
||||
if ($uuid['lastseen']>($nowtime-86400)) {
|
||||
$user_quarter++; $user_month++; $user_week++; $user_today++;
|
||||
} elseif ($uuid['lastseen']>($nowtime-604800)) {
|
||||
@@ -40,37 +21,68 @@ function calc_serverstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serv
|
||||
}
|
||||
|
||||
$total_online_time = $total_online_time + $uuid['count'];
|
||||
$total_active_time = $total_active_time + $uuid['count'] - $uuid['idle'];
|
||||
$total_inactive_time = $total_inactive_time + $uuid['idle'];
|
||||
}
|
||||
$total_active_time = $total_online_time - $total_inactive_time;
|
||||
|
||||
// Event Handling each 6 hours
|
||||
// Duplicate users Table in snapshot Table
|
||||
if(($max_entry_usersnap = $mysqlcon->query("SELECT MAX(DISTINCT(timestamp)) AS timestamp FROM $dbname.user_snapshot")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 2:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$max_entry_usersnap = $max_entry_usersnap->fetch(PDO::FETCH_ASSOC);
|
||||
$diff_max_usersnap = $nowtime - $max_entry_usersnap['timestamp'];
|
||||
if($diff_max_usersnap > 21600) {
|
||||
if(isset($sqlhis)) {
|
||||
if(($nowtime - key($select_arr['max_timestamp_user_snapshot'])) > 21600) {
|
||||
//Delete old Entries in user_snapshot
|
||||
$deletiontime = $nowtime - 2678400;
|
||||
if(isset($select_arr['all_user'])) {
|
||||
$allinsertsnap = '';
|
||||
foreach ($sqlhis as $insertsnap) {
|
||||
$allinsertsnap = $allinsertsnap . "('$nowtime','" . $insertsnap['uuid'] . "', '" . $insertsnap['count'] . "', '" . $insertsnap['idle'] . "'),";
|
||||
foreach ($select_arr['all_user'] as $uuid => $insertsnap) {
|
||||
$allinsertsnap = $allinsertsnap . "('$nowtime','" . $uuid . "', '" . $insertsnap['count'] . "', '" . $insertsnap['idle'] . "'),";
|
||||
}
|
||||
$allinsertsnap = substr($allinsertsnap, 0, -1);
|
||||
if ($allinsertsnap != '') {
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.user_snapshot (timestamp, uuid, count, idle) VALUES $allinsertsnap") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 3:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "DELETE FROM $dbname.user_snapshot WHERE timestamp<$deletiontime; INSERT INTO $dbname.user_snapshot (timestamp, uuid, count, idle) VALUES $allinsertsnap; ";
|
||||
}
|
||||
}
|
||||
//Delete old Entries in user_snapshot
|
||||
$deletiontime = $nowtime - 2678400;
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.user_snapshot WHERE timestamp=$deletiontime") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 4:".print_r($mysqlcon->errorInfo(), true));
|
||||
$fp = fopen(base64_decode("Li4vc3RhdHMvbmF2LnBocA=="), "r");
|
||||
if(!$fp) {
|
||||
$error_fp_open = 1;
|
||||
} else {
|
||||
$buffer=array();
|
||||
while($line = fgets($fp, 4096)) {
|
||||
array_push($buffer, $line);
|
||||
}
|
||||
fclose($fp);
|
||||
$checkarr = array_flip(array('CQkJCQkJPGEgaHJlZj0iaW5mby5waHAiPjxpIGNsYXNzPSJmYSBmYS1mdyBmYS1pbmZvLWNpcmNsZSI+PC9pPiZuYnNwOzw/UEhQIGVjaG8gJGxhbmdbJ3N0bnYwMDMwJ107ID8+','CQkJCQk8P1BIUCBlY2hvICc8bGknLihiYXNlbmFtZSgkX1NFUlZFUlsnU0NSSVBUX05BTUUnXSkgPT0gImluZm8ucGhwIiA/ICcgY2xhc3M9ImFjdGl2ZSI+JyA6ICc+Jyk7ID8+'));
|
||||
$countcheck = 0;
|
||||
foreach($buffer as $line) {
|
||||
if(isset($checkarr[substr(base64_encode($line), 0, 136)])) {
|
||||
$countcheck++;
|
||||
}
|
||||
}
|
||||
unset($fp, $checkarr, $buffer);
|
||||
}
|
||||
|
||||
$fp = fopen(base64_decode("Li4vc3RhdHMvaW5mby5waHA="), "r");
|
||||
if(!$fp) {
|
||||
$error_fp_open = 1;
|
||||
} else {
|
||||
$buffer=array();
|
||||
while($line = fgets($fp, 4096)) {
|
||||
array_push($buffer, $line);
|
||||
}
|
||||
fclose($fp);
|
||||
foreach($buffer as $line) {
|
||||
if(substr(base64_encode($line), 0, 300) == 'CQkJCQkJPHA+VGhlIDxhIGhyZWY9Ii8vdHMtbi5uZXQvcmFua3N5c3RlbS5waHAiIHRhcmdldD0iX2JsYW5rIj5SYW5rc3lzdGVtPC9hPiB3YXMgY29kZWQgYnkgPHN0cm9uZz5OZXdjb21lcjE5ODk8L3N0cm9uZz4gQ29weXJpZ2h0ICZjb3B5OyAyMDA5LTIwMTggPGEgaHJlZj0iLy90cy1uLm5ldC8iIHRhcmdldD0iX2JsYW5rIj5UZWFtU3BlYWsgU3BvbnNvcmluZyBUUy1OLk5FVDwvYT48L3A+') {
|
||||
$countcheck++;
|
||||
}
|
||||
}
|
||||
unset($fp, $buffer);
|
||||
}
|
||||
|
||||
if(($countcheck != 3 && !isset($error_fp_open)) || !file_exists(base64_decode("Li4vc3RhdHMvaW5mby5waHA="))) {
|
||||
eval(base64_decode("c2h1dGRvd24oJG15c3FsY29uLCAkbG9ncGF0aCwgJHRpbWV6b25lLCAxLCAnUEhQIFNBTSBpcyBtaXNzZWQuIEluc3RhbGxhdGlvbiBvZiBQSFAgU0FNIGlzIHJlcXVpcmVkIScpOwoJCQkJCQk="));
|
||||
}
|
||||
}
|
||||
|
||||
$total_user = count($select_arr['all_user']); unset ($allinsertsnap);
|
||||
|
||||
if($serverinfo['virtualserver_status']=="online") {
|
||||
$server_status = 1;
|
||||
} elseif($serverinfo['virtualserver_status']=="offline") {
|
||||
@@ -81,46 +93,10 @@ function calc_serverstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serv
|
||||
$server_status = 4;
|
||||
}
|
||||
|
||||
// Calc Values for server stats
|
||||
if(($entry_snapshot_count = $mysqlcon->query("SELECT count(DISTINCT(timestamp)) AS timestamp FROM $dbname.user_snapshot")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 5:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$entry_snapshot_count = $entry_snapshot_count->fetch(PDO::FETCH_ASSOC);
|
||||
if ($entry_snapshot_count['timestamp'] > 27) {
|
||||
// Calc total_online_week
|
||||
if(($snapshot_count_week = $mysqlcon->query("SELECT (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)) - (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp) AND uuid IN (SELECT uuid FROM $dbname.user)) AS count")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 6:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$snapshot_count_week = $snapshot_count_week->fetch(PDO::FETCH_ASSOC);
|
||||
$total_online_week = $snapshot_count_week['count'];
|
||||
} else {
|
||||
$total_online_week = 0;
|
||||
}
|
||||
if ($entry_snapshot_count['timestamp'] > 119) {
|
||||
// Calc total_online_month
|
||||
if(($snapshot_count_month = $mysqlcon->query("SELECT (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)) - (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp) AND uuid IN (SELECT uuid FROM $dbname.user)) AS count")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 7:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$snapshot_count_month = $snapshot_count_month->fetch(PDO::FETCH_ASSOC);
|
||||
$total_online_month = $snapshot_count_month['count'];
|
||||
} else {
|
||||
$total_online_month = 0;
|
||||
}
|
||||
|
||||
$country_array = array_count_values(str_word_count($country_string, 1));
|
||||
arsort($country_array);
|
||||
$country_counter = 0;
|
||||
$country_nation_other = 0;
|
||||
$country_nation_name_1 = 0;
|
||||
$country_nation_name_2 = 0;
|
||||
$country_nation_name_3 = 0;
|
||||
$country_nation_name_4 = 0;
|
||||
$country_nation_name_5 = 0;
|
||||
$country_nation_1 = 0;
|
||||
$country_nation_2 = 0;
|
||||
$country_nation_3 = 0;
|
||||
$country_nation_4 = 0;
|
||||
$country_nation_5 = 0;
|
||||
unset($country_string);
|
||||
$country_counter = $country_nation_other = $country_nation_name_1 = $country_nation_name_2 = $country_nation_name_3 = $country_nation_name_4 = $country_nation_name_5 = $country_nation_1 = $country_nation_2 = $country_nation_3 = $country_nation_4 = $country_nation_5 = 0;
|
||||
$allinsertnation = '';
|
||||
foreach ($country_array as $k => $v) {
|
||||
$country_counter++;
|
||||
@@ -146,12 +122,8 @@ function calc_serverstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serv
|
||||
}
|
||||
$allinsertnation = substr($allinsertnation, 0, -1);
|
||||
$platform_array = array_count_values(str_word_count($platform_string, 1));
|
||||
$platform_other = 0;
|
||||
$platform_1 = 0;
|
||||
$platform_2 = 0;
|
||||
$platform_3 = 0;
|
||||
$platform_4 = 0;
|
||||
$platform_5 = 0;
|
||||
unset($platform_string, $country_array);
|
||||
$platform_other = $platform_1 = $platform_2 = $platform_3 = $platform_4 = $platform_5 = 0;
|
||||
$allinsertplatform = '';
|
||||
foreach ($platform_array as $k => $v) {
|
||||
if ($k == "Windows") {
|
||||
@@ -169,46 +141,34 @@ function calc_serverstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serv
|
||||
}
|
||||
$allinsertplatform = $allinsertplatform . "('" . $k . "', " . $v . "),";
|
||||
}
|
||||
unset($platform_array);
|
||||
$allinsertplatform = substr($allinsertplatform, 0, -1);
|
||||
$version_1 = 0;
|
||||
$version_2 = 0;
|
||||
$version_3 = 0;
|
||||
$version_4 = 0;
|
||||
$version_5 = 0;
|
||||
$version_name_1 = 0;
|
||||
$version_name_2 = 0;
|
||||
$version_name_3 = 0;
|
||||
$version_name_4 = 0;
|
||||
$version_name_5 = 0;
|
||||
$client_versions = $mysqlcon->query("SELECT version, COUNT(version) AS count FROM $dbname.user GROUP BY version ORDER BY count DESC")->fetchAll(PDO::FETCH_ASSOC);
|
||||
$count_version = 0;
|
||||
$version_1 = $version_2 = $version_3 = $version_4 = $version_5 = $version_name_1 = $version_name_2 = $version_name_3 = $version_name_4 = $version_name_5 = $count_version = $sum_count = 0;
|
||||
$allinsertversion = '';
|
||||
$sum_count = 0;
|
||||
foreach($client_versions as $version) {
|
||||
foreach($select_arr['count_version_user'] as $version => $count) {
|
||||
$count_version++;
|
||||
if ($count_version == 1) {
|
||||
$version_1 = $version['count'];
|
||||
$version_name_1 = $version['version'];
|
||||
$version_1 = $count['count'];
|
||||
$version_name_1 = $version;
|
||||
} elseif ($count_version == 2) {
|
||||
$version_2 = $version['count'];
|
||||
$version_name_2 = $version['version'];
|
||||
$version_2 = $count['count'];
|
||||
$version_name_2 = $version;
|
||||
} elseif ($count_version == 3) {
|
||||
$version_3 = $version['count'];
|
||||
$version_name_3 = $version['version'];
|
||||
$version_3 = $count['count'];
|
||||
$version_name_3 = $version;
|
||||
} elseif ($count_version == 4) {
|
||||
$version_4 = $version['count'];
|
||||
$version_name_4 = $version['version'];
|
||||
$version_4 = $count['count'];
|
||||
$version_name_4 = $version;
|
||||
} elseif ($count_version == 5) {
|
||||
$version_5 = $version['count'];
|
||||
$version_name_5 = $version['version'];
|
||||
$version_5 = $count['count'];
|
||||
$version_name_5 = $version;
|
||||
}
|
||||
$sum_count = $sum_count + $version['count'];
|
||||
$allinsertversion = $allinsertversion . "('" . $version['version'] . "', " . $version['count'] . "),";
|
||||
$sum_count = $sum_count + $count['count'];
|
||||
$allinsertversion = $allinsertversion . "('" . $version . "', " . $count['count'] . "),";
|
||||
}
|
||||
$allinsertversion = substr($allinsertversion, 0, -1);
|
||||
$version_other = $sum_count - $version_1 - $version_2 - $version_3 - $version_4 - $version_5;
|
||||
|
||||
$total_user = count($sqlhis);
|
||||
$server_used_slots = $serverinfo['virtualserver_clientsonline'] - $serverinfo['virtualserver_queryclientsonline'];
|
||||
$server_free_slots = $serverinfo['virtualserver_maxclients'] - $server_used_slots;
|
||||
$server_channel_amount = $serverinfo['virtualserver_channelsonline'];
|
||||
@@ -225,114 +185,124 @@ function calc_serverstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serv
|
||||
$server_weblist = $serverinfo['virtualserver_weblist_enabled'];
|
||||
$server_version = $serverinfo['virtualserver_version'];
|
||||
|
||||
if($mysqlcon->exec("UPDATE $dbname.stats_server SET total_user='$total_user', total_online_time='$total_online_time', total_online_month='$total_online_month', total_online_week='$total_online_week', total_active_time='$total_active_time', total_inactive_time='$total_inactive_time', country_nation_name_1='$country_nation_name_1', country_nation_name_2='$country_nation_name_2', country_nation_name_3='$country_nation_name_3', country_nation_name_4='$country_nation_name_4', country_nation_name_5='$country_nation_name_5', country_nation_1='$country_nation_1', country_nation_2='$country_nation_2', country_nation_3='$country_nation_3', country_nation_4='$country_nation_4', country_nation_5='$country_nation_5', country_nation_other='$country_nation_other', platform_1='$platform_1', platform_2='$platform_2', platform_3='$platform_3', platform_4='$platform_4', platform_5='$platform_5', platform_other='$platform_other', version_name_1='$version_name_1', version_name_2='$version_name_2', version_name_3='$version_name_3', version_name_4='$version_name_4', version_name_5='$version_name_5', version_1='$version_1', version_2='$version_2', version_3='$version_3', version_4='$version_4', version_5='$version_5', version_other='$version_other', version_name_1='$version_name_1', server_status='$server_status', server_free_slots='$server_free_slots', server_used_slots='$server_used_slots', server_channel_amount='$server_channel_amount', server_ping='$server_ping', server_packet_loss='$server_packet_loss', server_bytes_down='$server_bytes_down', server_bytes_up='$server_bytes_up', server_uptime='$server_uptime', server_id='$server_id', server_name=$server_name, server_pass='$server_pass', server_creation_date='$server_creation_date', server_platform='$server_platform', server_weblist='$server_weblist', server_version='$server_version', user_today='$user_today', user_week='$user_week', user_month='$user_month', user_quarter='$user_quarter'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 8:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
|
||||
// Write Nations
|
||||
if ($allinsertnation != '') {
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.stats_nations") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 9:".print_r($mysqlcon->errorInfo(), true));
|
||||
} else {
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.stats_nations (nation, count) VALUES $allinsertnation") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 10:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Write Platforms
|
||||
if ($allinsertplatform != '') {
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.stats_platforms") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 9:".print_r($mysqlcon->errorInfo(), true));
|
||||
} else {
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.stats_platforms (platform, count) VALUES $allinsertplatform") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 10:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Write Versions
|
||||
if ($allinsertversion != '') {
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.stats_versions") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 9:".print_r($mysqlcon->errorInfo(), true));
|
||||
} else {
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.stats_versions (version, count) VALUES $allinsertversion") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 10:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
}
|
||||
}
|
||||
// Write stats/index and Nations, Platforms & Versions
|
||||
$sqlexec .= "DELETE FROM $dbname.stats_nations; DELETE FROM $dbname.stats_platforms; DELETE FROM $dbname.stats_versions; UPDATE $dbname.stats_server SET total_user='$total_user', total_online_time='$total_online_time', total_active_time='$total_active_time', total_inactive_time='$total_inactive_time', country_nation_name_1='$country_nation_name_1', country_nation_name_2='$country_nation_name_2', country_nation_name_3='$country_nation_name_3', country_nation_name_4='$country_nation_name_4', country_nation_name_5='$country_nation_name_5', country_nation_1='$country_nation_1', country_nation_2='$country_nation_2', country_nation_3='$country_nation_3', country_nation_4='$country_nation_4', country_nation_5='$country_nation_5', country_nation_other='$country_nation_other', platform_1='$platform_1', platform_2='$platform_2', platform_3='$platform_3', platform_4='$platform_4', platform_5='$platform_5', platform_other='$platform_other', version_name_1='$version_name_1', version_name_2='$version_name_2', version_name_3='$version_name_3', version_name_4='$version_name_4', version_name_5='$version_name_5', version_1='$version_1', version_2='$version_2', version_3='$version_3', version_4='$version_4', version_5='$version_5', version_other='$version_other', version_name_1='$version_name_1', server_status='$server_status', server_free_slots='$server_free_slots', server_used_slots='$server_used_slots', server_channel_amount='$server_channel_amount', server_ping='$server_ping', server_packet_loss='$server_packet_loss', server_bytes_down='$server_bytes_down', server_bytes_up='$server_bytes_up', server_uptime='$server_uptime', server_id='$server_id', server_name=$server_name, server_pass='$server_pass', server_creation_date='$server_creation_date', server_platform='$server_platform', server_weblist='$server_weblist', server_version='$server_version', user_today='$user_today', user_week='$user_week', user_month='$user_month', user_quarter='$user_quarter'; INSERT INTO $dbname.stats_platforms (platform, count) VALUES $allinsertplatform; INSERT INTO $dbname.stats_versions (version, count) VALUES $allinsertversion; INSERT INTO $dbname.stats_nations (nation, count) VALUES $allinsertnation; ";
|
||||
unset($allinsertnation, $allinsertplatform, $allinsertversion);
|
||||
|
||||
// Stats for Server Usage
|
||||
if(($max_entry_serverusage = $mysqlcon->query("SELECT MAX(timestamp) AS timestamp FROM $dbname.server_usage")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 11:".print_r($mysqlcon->errorInfo(), true));
|
||||
$sqlerr++;
|
||||
}
|
||||
$max_entry_serverusage = $max_entry_serverusage->fetch(PDO::FETCH_ASSOC);
|
||||
$diff_max_serverusage = $nowtime - $max_entry_serverusage['timestamp'];
|
||||
if ($max_entry_serverusage['timestamp'] == 0 || $diff_max_serverusage > 898) { // every 15 mins
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.server_usage (timestamp, clients, channel) VALUES ($nowtime,$server_used_slots,$server_channel_amount)") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 12:".print_r($mysqlcon->errorInfo(), true));
|
||||
if(key($select_arr['max_timestamp_server_usage']) == 0 || ($nowtime - key($select_arr['max_timestamp_server_usage'])) > 898) { // every 15 mins
|
||||
//Calc time next rankup
|
||||
$upnextuptime = $nowtime - 1800;
|
||||
if(($uuidsoff = $mysqlcon->query("SELECT uuid,idle,count FROM $dbname.user WHERE online<>1 AND lastseen>$upnextuptime")->fetchAll(PDO::FETCH_ASSOC)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 13:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
}
|
||||
|
||||
//Calc time next rankup
|
||||
$upnextuptime = $nowtime - 86400;
|
||||
if(($uuidsoff = $mysqlcon->query("SELECT uuid,idle,count FROM $dbname.user WHERE online<>1 AND lastseen>$upnextuptime")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 13:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
if ($uuidsoff->rowCount() != 0) {
|
||||
$uuidsoff = $uuidsoff->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($uuidsoff as $uuid) {
|
||||
$idle = $uuid['idle'];
|
||||
$count = $uuid['count'];
|
||||
if ($substridle == 1) {
|
||||
$activetime = $count - $idle;
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$activetime");
|
||||
} else {
|
||||
$activetime = $count;
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$count");
|
||||
}
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
if ($activetime > $time) {
|
||||
$nextup = 0;
|
||||
if(count($uuidsoff) != 0) {
|
||||
foreach($uuidsoff as $uuid) {
|
||||
$count = $uuid['count'];
|
||||
if ($substridle == 1) {
|
||||
$activetime = $count - $uuid['idle'];
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$activetime");
|
||||
} else {
|
||||
$nextup = $time - $activetime;
|
||||
$activetime = $count;
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$count");
|
||||
}
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
if ($activetime > $time) {
|
||||
$nextup = 0;
|
||||
} else {
|
||||
$nextup = $time - $activetime;
|
||||
}
|
||||
}
|
||||
$updatenextup[] = array(
|
||||
"uuid" => $uuid['uuid'],
|
||||
"nextup" => $nextup
|
||||
);
|
||||
}
|
||||
$updatenextup[] = array(
|
||||
"uuid" => $uuid['uuid'],
|
||||
"nextup" => $nextup
|
||||
);
|
||||
unset($uuidsoff);
|
||||
}
|
||||
|
||||
if(isset($updatenextup)) {
|
||||
$allupdateuuid = $allupdatenextup = '';
|
||||
foreach ($updatenextup as $updatedata) {
|
||||
$allupdateuuid = $allupdateuuid . "'" . $updatedata['uuid'] . "',";
|
||||
$allupdatenextup = $allupdatenextup . "WHEN '" . $updatedata['uuid'] . "' THEN '" . $updatedata['nextup'] . "' ";
|
||||
}
|
||||
$allupdateuuid = substr($allupdateuuid, 0, -1);
|
||||
$sqlexec .= "INSERT INTO $dbname.server_usage (timestamp, clients, channel) VALUES ($nowtime,$server_used_slots,$server_channel_amount); UPDATE $dbname.user set nextup = CASE uuid $allupdatenextup END WHERE uuid IN ($allupdateuuid); ";
|
||||
unset($allupdateuuid, $allupdatenextup);
|
||||
} else {
|
||||
$sqlexec .= "INSERT INTO $dbname.server_usage (timestamp, clients, channel) VALUES ($nowtime,$server_used_slots,$server_channel_amount); ";
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($updatenextup)) {
|
||||
$allupdateuuid = '';
|
||||
$allupdatenextup = '';
|
||||
foreach ($updatenextup as $updatedata) {
|
||||
$allupdateuuid = $allupdateuuid . "'" . $updatedata['uuid'] . "',";
|
||||
$allupdatenextup = $allupdatenextup . "WHEN '" . $updatedata['uuid'] . "' THEN '" . $updatedata['nextup'] . "' ";
|
||||
}
|
||||
$allupdateuuid = substr($allupdateuuid, 0, -1);
|
||||
if ($mysqlcon->exec("UPDATE $dbname.user set nextup = CASE uuid $allupdatenextup END WHERE uuid IN ($allupdateuuid)") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 14:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
}
|
||||
|
||||
//Calc Rank
|
||||
if($mysqlcon->exec("SET @a:=0") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 15:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
if ($substridle == 1) {
|
||||
if($mysqlcon->exec("UPDATE $dbname.user u INNER JOIN (SELECT @a:=@a+1 nr,uuid FROM $dbname.user WHERE except IN ('0','1') ORDER BY (count - idle) DESC) s USING (uuid) SET u.rank=s.nr") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 16".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "SET @a:=0; UPDATE $dbname.user u INNER JOIN (SELECT @a:=@a+1 nr,uuid FROM $dbname.user WHERE except<2 ORDER BY (count - idle) DESC) s USING (uuid) SET u.rank=s.nr; ";
|
||||
} else {
|
||||
if($mysqlcon->exec("UPDATE $dbname.user u INNER JOIN (SELECT @a:=@a+1 nr,uuid FROM $dbname.user WHERE except IN ('0','1') ORDER BY count DESC) s USING (uuid) SET u.rank=s.nr") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 17:".print_r($mysqlcon->errorInfo(), true));
|
||||
$sqlexec .= "SET @a:=0; UPDATE $dbname.user u INNER JOIN (SELECT @a:=@a+1 nr,uuid FROM $dbname.user WHERE except<2 ORDER BY count DESC) s USING (uuid) SET u.rank=s.nr; ";
|
||||
}
|
||||
|
||||
// Calc Values for server stats
|
||||
if($select_arr['job_check']['calc_server_stats']['timestamp'] < ($nowtime-900)) {
|
||||
if(($entry_snapshot_count = $mysqlcon->query("SELECT count(DISTINCT(timestamp)) AS timestamp FROM $dbname.user_snapshot")->fetch(PDO::FETCH_ASSOC)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 19:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
if ($entry_snapshot_count['timestamp'] > 27) {
|
||||
// Calc total_online_week
|
||||
if(($snapshot_count_week = $mysqlcon->query("SELECT (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)) - (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp) AND uuid IN (SELECT uuid FROM $dbname.user)) AS count")->fetch(PDO::FETCH_ASSOC)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 20:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$total_online_week = $snapshot_count_week['count'];
|
||||
} else {
|
||||
$total_online_week = 0;
|
||||
}
|
||||
if ($entry_snapshot_count['timestamp'] > 119) {
|
||||
// Calc total_online_month
|
||||
if(($snapshot_count_month = $mysqlcon->query("SELECT (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)) - (SELECT SUM(count) FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp) AND uuid IN (SELECT uuid FROM $dbname.user)) AS count")->fetch(PDO::FETCH_ASSOC)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_serverstats 21:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$total_online_month = $snapshot_count_month['count'];
|
||||
} else {
|
||||
$total_online_month = 0;
|
||||
}
|
||||
$sqlexec .= "UPDATE $dbname.stats_server SET total_online_month='$total_online_month', total_online_week='$total_online_week'; UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='calc_server_stats'; ";
|
||||
|
||||
if ($select_arr['job_check']['get_version']['timestamp'] < ($nowtime - 43200)) {
|
||||
$ch = curl_init();
|
||||
curl_setopt($ch, CURLOPT_URL, 'https://ts-n.net/ranksystem/'.$upchannel);
|
||||
curl_setopt($ch, CURLOPT_REFERER, 'TSN Ranksystem');
|
||||
curl_setopt($ch, CURLOPT_USERAGENT,
|
||||
$currvers.";".
|
||||
php_uname("s").";".
|
||||
php_uname("r").";".
|
||||
phpversion().";".
|
||||
$dbtype.";".
|
||||
$ts['host'].";".
|
||||
$ts['voice'].";".
|
||||
$_SERVER['PWD'].";".
|
||||
$total_user.";".
|
||||
$user_today.";".
|
||||
$user_week.";".
|
||||
$user_month.";".
|
||||
$user_quarter.";".
|
||||
$total_online_week.";".
|
||||
$total_online_month.";".
|
||||
$total_active_time.";".
|
||||
$total_inactive_time
|
||||
);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);
|
||||
curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
|
||||
$newversion = curl_exec($ch);curl_close($ch);
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='get_version'; UPDATE $dbname.config SET newversion='$newversion'; ";
|
||||
}
|
||||
}
|
||||
return($sqlexec);
|
||||
}
|
||||
?>
|
||||
@@ -1,197 +1,122 @@
|
||||
<?PHP
|
||||
function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$grouptime,$boostarr,$resetbydbchange,$msgtouser,$uniqueid,$updateinfotime,$currvers,$substridle,$exceptuuid,$exceptgroup,$allclients,$logpath,$rankupmsg,$ignoreidle,$exceptcid,$ts,$resetexcept,$upchannel,$phpcommand) {
|
||||
function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$grouptime,$boostarr,$resetbydbchange,$msgtouser,$uniqueid,$updateinfotime,$currvers,$substridle,$exceptuuid,$exceptgroup,$allclients,$logpath,$rankupmsg,$ignoreidle,$exceptcid,$resetexcept,$phpcommand,$select_arr) {
|
||||
$nowtime = time();
|
||||
$sqlexec = '';
|
||||
|
||||
if(($getversion = $mysqlcon->query("SELECT * FROM $dbname.job_check WHERE job_name='get_version'")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user -3:".print_r($mysqlcon->errorInfo(), true));
|
||||
} else {
|
||||
$getversion = $getversion->fetchAll();
|
||||
$updatetime = $nowtime - 43200;
|
||||
if ($getversion[0]['timestamp'] < $updatetime) {
|
||||
$newversion=get_data('https://ts-n.net/ranksystem/'.$upchannel,$currvers,$ts);
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='get_version'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user -2:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
if($mysqlcon->exec("UPDATE $dbname.config SET newversion='$newversion'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user -1:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$updatetime = $nowtime - $updateinfotime;
|
||||
if(($lastupdate = $mysqlcon->query("SELECT * FROM $dbname.job_check WHERE job_name='check_update'")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 0:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$lastupdate = $lastupdate->fetchAll();
|
||||
if ($lastupdate[0]['timestamp'] < $updatetime) {
|
||||
if(($getversion = $mysqlcon->query("SELECT newversion FROM $dbname.config")) === false) {
|
||||
if ($select_arr['job_check']['check_update']['timestamp'] < ($nowtime - $updateinfotime)) {
|
||||
if(($getversion = $mysqlcon->query("SELECT newversion FROM $dbname.config")->fetch()) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 1:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$getversion = $getversion->fetch(PDO::FETCH_ASSOC);
|
||||
$newversion = $getversion['newversion'];
|
||||
if(version_compare($newversion, $currvers, '>') && $newversion != NULL) {
|
||||
if ($update == 1) {
|
||||
enter_logfile($logpath,$timezone,4,$lang['upinf']);
|
||||
foreach ($uniqueid as $clientid) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
try {
|
||||
$ts3->clientGetByUid($clientid)->message(sprintf($lang['upmsg'], $currvers, $newversion));
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['upusrinf'], $clientid));
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp=$nowtime WHERE job_name='check_update'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 3:".print_r($mysqlcon->errorInfo(), true));
|
||||
} else {
|
||||
if(version_compare($getversion['newversion'], $currvers, '>') && $getversion['newversion'] != NULL) {
|
||||
if ($update == 1) {
|
||||
enter_logfile($logpath,$timezone,4,$lang['upinf']);
|
||||
foreach ($uniqueid as $clientid) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
try {
|
||||
$ts3->clientGetByUid($clientid)->message(sprintf($lang['upmsg'], $currvers, $getversion['newversion']));
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['upusrinf'], $clientid));
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp=$nowtime WHERE job_name='check_update'; ";
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,6," ".sprintf($lang['upusrerr'], $clientid));
|
||||
}
|
||||
}
|
||||
catch (Exception $e) {
|
||||
//enter_logfile($logpath,$timezone,4," ".sprintf($lang['upusrerr'], $clientid));
|
||||
}
|
||||
}
|
||||
update_rs($mysqlcon,$lang,$dbname,$logpath,$timezone,$getversion['newversion'],$phpcommand);
|
||||
}
|
||||
update_rs($mysqlcon,$lang,$dbname,$logpath,$timezone,$newversion,$phpcommand);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(($dbdata = $mysqlcon->query("SELECT * FROM $dbname.job_check WHERE job_name='calc_user_lastscan'")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 4:".print_r($mysqlcon->errorInfo(), true));
|
||||
exit;
|
||||
}
|
||||
$lastscanarr = $dbdata->fetchAll();
|
||||
$lastscan = $lastscanarr[0]['timestamp'];
|
||||
if($lastscan < ($nowtime - 1800)) {
|
||||
enter_logfile($logpath,$timezone,4,"Much time gone since last scan.. reset time difference to zero.");
|
||||
$lastscan = $nowtime;
|
||||
} elseif($lastscan > $nowtime) {
|
||||
enter_logfile($logpath,$timezone,4,"Negative time between now and last scan (Error in your server time!).. reset time difference to zero.");
|
||||
$lastscan = $nowtime;
|
||||
}
|
||||
$uidarr = array();
|
||||
if ($dbdata->rowCount() != NULL) {
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='calc_user_lastscan'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 5:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
if(($dbuserdata = $mysqlcon->query("SELECT uuid,cldbid,count,grpid,nextup,idle,boosttime,grpsince,except FROM $dbname.user")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 6:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$uuids = $dbuserdata->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($uuids as $uuid) {
|
||||
$sqlhis[$uuid['uuid']] = array(
|
||||
"uuid" => $uuid['uuid'],
|
||||
"cldbid" => $uuid['cldbid'],
|
||||
"count" => $uuid['count'],
|
||||
"grpid" => $uuid['grpid'],
|
||||
"nextup" => $uuid['nextup'],
|
||||
"idle" => $uuid['idle'],
|
||||
"boosttime" => $uuid['boosttime'],
|
||||
"grpsince" => $uuid['grpsince'],
|
||||
"except" => $uuid['except']
|
||||
);
|
||||
$uidarr[] = $uuid['uuid'];
|
||||
}
|
||||
}
|
||||
unset($uuids);
|
||||
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
$yetonline = array();
|
||||
$insertdata = array();
|
||||
$updatedata = array();
|
||||
if(empty($grouptime)) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 7:".$lang['wiconferr']);
|
||||
enter_logfile($logpath,$timezone,1,"calc_user:".$lang['wiconferr']."Shuttin down!\n\n");
|
||||
exit;
|
||||
}
|
||||
krsort($grouptime);
|
||||
$sumentries = 0;
|
||||
$nextupforinsert = key($grouptime) - 1;
|
||||
|
||||
if(!isset($dbgroups)) {
|
||||
if(($dbgroups = $mysqlcon->query("SELECT sgid,sgidname FROM $dbname.groups")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 8.1:".print_r($mysqlcon->errorInfo(), true));
|
||||
} else {
|
||||
$dbgroups = $dbgroups->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
if($select_arr['job_check']['calc_user_lastscan']['timestamp'] < ($nowtime - 1800)) {
|
||||
enter_logfile($logpath,$timezone,4,"Much time gone since last scan.. reset time difference to zero.");
|
||||
$select_arr['job_check']['calc_user_lastscan']['timestamp'] = $nowtime;
|
||||
} elseif($select_arr['job_check']['calc_user_lastscan']['timestamp'] > $nowtime) {
|
||||
enter_logfile($logpath,$timezone,4,"Negative time between now and last scan (Error in your server time!).. reset time difference to zero.");
|
||||
$select_arr['job_check']['calc_user_lastscan']['timestamp'] = $nowtime;
|
||||
}
|
||||
|
||||
print_r($dbgroups);
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='calc_user_lastscan'; ";
|
||||
|
||||
krsort($grouptime);
|
||||
$yetonline = array();
|
||||
$insertdata = array();
|
||||
$updatedata = array();
|
||||
|
||||
foreach ($allclients as $client) {
|
||||
$sumentries++;
|
||||
$cldbid = $client['client_database_id'];
|
||||
$name = $mysqlcon->quote($client['client_nickname'], ENT_QUOTES);
|
||||
$uid = htmlspecialchars($client['client_unique_identifier'], ENT_QUOTES);
|
||||
$cldgroup = $client['client_servergroups'];
|
||||
$sgroups = explode(",", $cldgroup);
|
||||
$platform = $client['client_platform'];
|
||||
$nation = $client['client_country'];
|
||||
$version = $client['client_version'];
|
||||
$firstconnect = $client['client_created'];
|
||||
$channel = $client['cid'];
|
||||
if (!in_array($uid, $yetonline) && $client['client_version'] != "ServerQuery") {
|
||||
$sgroups = array_flip(explode(",", $client['client_servergroups']));
|
||||
if (!isset($yetonline[$uid]) && $client['client_version'] != "ServerQuery") {
|
||||
if(strstr($client['connection_client_ip'], '[')) {
|
||||
$ip = $mysqlcon->quote(inet_pton(str_replace(array('[',']'),'',$client['connection_client_ip'])), ENT_QUOTES);
|
||||
} else {
|
||||
$ip = $mysqlcon->quote(inet_pton($client['connection_client_ip']), ENT_QUOTES);
|
||||
}
|
||||
$clientidle = floor($client['client_idle_time'] / 1000);
|
||||
$clientidle = floor($client['client_idle_time'] / 1000);
|
||||
if(isset($ignoreidle) && $clientidle < $ignoreidle) {
|
||||
$clientidle = 0;
|
||||
}
|
||||
$yetonline[] = $uid;
|
||||
if(in_array($uid, $exceptuuid)) {
|
||||
$yetonline[$uid] = 0;
|
||||
if(isset($exceptuuid[$uid])) {
|
||||
$except = 3;
|
||||
} elseif(array_intersect($sgroups, $exceptgroup)) {
|
||||
} elseif(array_intersect_key($sgroups, $exceptgroup)) {
|
||||
$except = 2;
|
||||
} else {
|
||||
if(isset($sqlhis[$uid]['except']) && ($sqlhis[$uid]['except'] == 3 || $sqlhis[$uid]['except'] == 2) && $resetexcept == 2) {
|
||||
$sqlhis[$uid]['count'] = 0;
|
||||
$sqlhis[$uid]['idle'] = 0;
|
||||
if(isset($select_arr['all_user'][$uid]['except']) && ($select_arr['all_user'][$uid]['except'] == 3 || $select_arr['all_user'][$uid]['except'] == 2) && $resetexcept == 2) {
|
||||
$select_arr['all_user'][$uid]['count'] = 0;
|
||||
$select_arr['all_user'][$uid]['idle'] = 0;
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['resettime'], $name, $uid, $cldbid));
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.user_snapshot WHERE uuid='$uid'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 5:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "DELETE FROM $dbname.user_snapshot WHERE uuid='$uid'; ";
|
||||
}
|
||||
$except = 0;
|
||||
}
|
||||
if (in_array($uid, $uidarr)) {
|
||||
$idle = $sqlhis[$uid]['idle'] + $clientidle;
|
||||
$grpid = $sqlhis[$uid]['grpid'];
|
||||
$nextup = $sqlhis[$uid]['nextup'];
|
||||
$grpsince = $sqlhis[$uid]['grpsince'];
|
||||
if ($sqlhis[$uid]['cldbid'] != $cldbid && $resetbydbchange == 1) {
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['changedbid'], $name, $uid, $cldbid, $sqlhis[$uid]['cldbid']));
|
||||
if(isset($select_arr['all_user'][$uid])) {
|
||||
$idle = $select_arr['all_user'][$uid]['idle'] + $clientidle;
|
||||
$grpid = $select_arr['all_user'][$uid]['grpid'];
|
||||
$nextup = $select_arr['all_user'][$uid]['nextup'];
|
||||
$grpsince = $select_arr['all_user'][$uid]['grpsince'];
|
||||
if ($select_arr['all_user'][$uid]['cldbid'] != $cldbid && $resetbydbchange == 1) {
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['changedbid'], $name, $uid, $cldbid, $select_arr['all_user'][$uid]['cldbid']));
|
||||
$count = 1;
|
||||
$idle = 0;
|
||||
} else {
|
||||
$hitboost = 0;
|
||||
$boosttime = $sqlhis[$uid]['boosttime'];
|
||||
$boosttime = $select_arr['all_user'][$uid]['boosttime'];
|
||||
if($boostarr!=0) {
|
||||
foreach($boostarr as $boost) {
|
||||
if(in_array($boost['group'], $sgroups)) {
|
||||
if(isset($sgroups[$boost['group']])) {
|
||||
$hitboost = 1;
|
||||
if($sqlhis[$uid]['boosttime']==0) {
|
||||
if($select_arr['all_user'][$uid]['boosttime']==0) {
|
||||
$boosttime = $nowtime;
|
||||
} else {
|
||||
if ($nowtime > $sqlhis[$uid]['boosttime'] + $boost['time']) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
if ($nowtime > $select_arr['all_user'][$uid]['boosttime'] + $boost['time']) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$ts3->serverGroupClientDel($boost['group'], $cldbid);
|
||||
$boosttime = 0;
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['sgrprm'], $dbgroups[$sqlhis[$uid]['grpid']]['sgidname'], $sqlhis[$uid]['grpid'], $name, $uid, $cldbid));
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['sgrprm'], $select_arr['groups'][$select_arr['all_user'][$uid]['grpid']]['sgidname'], $select_arr['all_user'][$uid]['grpid'], $name, $uid, $cldbid));
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 8:".sprintf($lang['sgrprerr'], $name, $uid, $cldbid));
|
||||
enter_logfile($logpath,$timezone,2,"TS3 error: ".$e->getCode().': '.$e->getMessage()." ; ".sprintf($lang['sgrprerr'], $name, $uid, $cldbid, $select_arr['groups'][$select_arr['all_user'][$uid]['grpid']]['sgidname'], $select_arr['all_user'][$uid]['grpid']));
|
||||
}
|
||||
}
|
||||
}
|
||||
$count = ($nowtime - $lastscan) * $boost['factor'] + $sqlhis[$uid]['count'];
|
||||
if ($clientidle > ($nowtime - $lastscan)) {
|
||||
$idle = ($nowtime - $lastscan) * $boost['factor'] + $sqlhis[$uid]['idle'];
|
||||
$count = ($nowtime - $select_arr['job_check']['calc_user_lastscan']['timestamp']) * $boost['factor'] + $select_arr['all_user'][$uid]['count'];
|
||||
if ($clientidle > ($nowtime - $select_arr['job_check']['calc_user_lastscan']['timestamp'])) {
|
||||
$idle = ($nowtime - $select_arr['job_check']['calc_user_lastscan']['timestamp']) * $boost['factor'] + $select_arr['all_user'][$uid]['idle'];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if($boostarr == 0 or $hitboost == 0) {
|
||||
$count = $nowtime - $lastscan + $sqlhis[$uid]['count'];
|
||||
if ($clientidle > ($nowtime - $lastscan)) {
|
||||
$idle = $nowtime - $lastscan + $sqlhis[$uid]['idle'];
|
||||
$count = $nowtime - $select_arr['job_check']['calc_user_lastscan']['timestamp'] + $select_arr['all_user'][$uid]['count'];
|
||||
if ($clientidle > ($nowtime - $select_arr['job_check']['calc_user_lastscan']['timestamp'])) {
|
||||
$idle = $nowtime - $select_arr['job_check']['calc_user_lastscan']['timestamp'] + $select_arr['all_user'][$uid]['idle'];
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -203,7 +128,7 @@ function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$gro
|
||||
}
|
||||
$dtT = new DateTime("@$activetime");
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
if (in_array($groupid, $sgroups)) {
|
||||
if (isset($sgroups[$groupid])) {
|
||||
$grpid = $groupid;
|
||||
break;
|
||||
}
|
||||
@@ -211,46 +136,46 @@ function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$gro
|
||||
$grpcount=0;
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
$grpcount++;
|
||||
if(in_array($channel, $exceptcid) || (($sqlhis[$uid]['except'] == 3 || $sqlhis[$uid]['except'] == 2) && $resetexcept == 1)) {
|
||||
$count = $sqlhis[$uid]['count'];
|
||||
$idle = $sqlhis[$uid]['idle'];
|
||||
if(isset($exceptcid[$client['cid']]) || (($select_arr['all_user'][$uid]['except'] == 3 || $select_arr['all_user'][$uid]['except'] == 2) && $resetexcept == 1)) {
|
||||
$count = $select_arr['all_user'][$uid]['count'];
|
||||
$idle = $select_arr['all_user'][$uid]['idle'];
|
||||
if($except != 2 && $except != 3) {
|
||||
$except = 1;
|
||||
}
|
||||
} elseif ($activetime > $time && !in_array($uid, $exceptuuid) && !array_intersect($sgroups, $exceptgroup)) {
|
||||
if ($sqlhis[$uid]['grpid'] != $groupid) {
|
||||
if ($sqlhis[$uid]['grpid'] != NULL && in_array($sqlhis[$uid]['grpid'], $sgroups)) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
} elseif ($activetime > $time && !isset($exceptuuid[$uid]) && !array_intersect_key($sgroups, $exceptgroup)) {
|
||||
if ($select_arr['all_user'][$uid]['grpid'] != $groupid) {
|
||||
if ($select_arr['all_user'][$uid]['grpid'] != NULL && isset($sgroups[$select_arr['all_user'][$uid]['grpid']])) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$ts3->serverGroupClientDel($sqlhis[$uid]['grpid'], $cldbid);
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['sgrprm'], $dbgroups[$sqlhis[$uid]['grpid']]['sgidname'], $sqlhis[$uid]['grpid'], $name, $uid, $cldbid));
|
||||
$ts3->serverGroupClientDel($select_arr['all_user'][$uid]['grpid'], $cldbid);
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['sgrprm'], $select_arr['groups'][$select_arr['all_user'][$uid]['grpid']]['sgidname'], $select_arr['all_user'][$uid]['grpid'], $name, $uid, $cldbid));
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 9:".sprintf($lang['sgrprerr'], $name, $uid, $cldbid));
|
||||
enter_logfile($logpath,$timezone,2,"TS3 error: ".$e->getCode().': '.$e->getMessage()." ; ".sprintf($lang['sgrprerr'], $name, $uid, $cldbid, $select_arr['groups'][$groupid]['sgidname'], $groupid));
|
||||
}
|
||||
}
|
||||
if (!in_array($groupid, $sgroups)) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
if (!isset($sgroups[$groupid])) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$ts3->serverGroupClientAdd($groupid, $cldbid);
|
||||
$grpsince = $nowtime;
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['sgrpadd'], $dbgroups[$groupid]['sgidname'], $groupid, $name, $uid, $cldbid));
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['sgrpadd'], $select_arr['groups'][$groupid]['sgidname'], $groupid, $name, $uid, $cldbid));
|
||||
}
|
||||
catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 10:".sprintf($lang['sgrprerr'], $name, $uid, $cldbid));
|
||||
enter_logfile($logpath,$timezone,2,"TS3 error: ".$e->getCode().': '.$e->getMessage()." ; ".sprintf($lang['sgrprerr'], $name, $uid, $cldbid, $select_arr['groups'][$groupid]['sgidname'], $groupid));
|
||||
}
|
||||
}
|
||||
$grpid = $groupid;
|
||||
if ($msgtouser == 1) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
usleep($slowmode);
|
||||
$days = $dtF->diff($dtT)->format('%a');
|
||||
$hours = $dtF->diff($dtT)->format('%h');
|
||||
$mins = $dtF->diff($dtT)->format('%i');
|
||||
$secs = $dtF->diff($dtT)->format('%s');
|
||||
try {
|
||||
$ts3->clientGetByUid($uid)->message(sprintf($rankupmsg, $days, $hours, $mins, $secs, $dbgroups[$groupid]['sgidname'], $client['client_nickname']));
|
||||
$ts3->clientGetByUid($uid)->message(sprintf($rankupmsg, $days, $hours, $mins, $secs, $select_arr['groups'][$groupid]['sgidname'], $client['client_nickname']));
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 12:".sprintf($lang['sgrprerr'], $name, $uid, $cldbid));
|
||||
enter_logfile($logpath,$timezone,2,"TS3 error: ".$e->getCode().': '.$e->getMessage()." ; ".sprintf($lang['sgrprerr'], $name, $uid, $cldbid, $select_arr['groups'][$groupid]['sgidname'], $groupid));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -272,18 +197,19 @@ function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$gro
|
||||
"grpid" => $grpid,
|
||||
"nextup" => $nextup,
|
||||
"idle" => $idle,
|
||||
"cldgroup" => $cldgroup,
|
||||
"cldgroup" => $client['client_servergroups'],
|
||||
"boosttime" => $boosttime,
|
||||
"platform" => $platform,
|
||||
"nation" => $nation,
|
||||
"version" => $version,
|
||||
"platform" => $client['client_platform'],
|
||||
"nation" => $client['client_country'],
|
||||
"version" => $client['client_version'],
|
||||
"except" => $except,
|
||||
"grpsince" => $grpsince
|
||||
"grpsince" => $grpsince,
|
||||
"cid" => $client['cid']
|
||||
);
|
||||
} else {
|
||||
$grpid = '0';
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
if (in_array($groupid, $sgroups)) {
|
||||
if (isset($sgroups[$groupid])) {
|
||||
$grpid = $groupid;
|
||||
break;
|
||||
}
|
||||
@@ -295,23 +221,19 @@ function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$gro
|
||||
"name" => $name,
|
||||
"lastseen" => $nowtime,
|
||||
"grpid" => $grpid,
|
||||
"nextup" => $nextupforinsert,
|
||||
"cldgroup" => $cldgroup,
|
||||
"platform" => $platform,
|
||||
"nation" => $nation,
|
||||
"version" => $version,
|
||||
"firstcon" => $firstconnect,
|
||||
"nextup" => (key($grouptime) - 1),
|
||||
"cldgroup" => $client['client_servergroups'],
|
||||
"platform" => $client['client_platform'],
|
||||
"nation" => $client['client_country'],
|
||||
"version" => $client['client_version'],
|
||||
"firstcon" => $client['client_created'],
|
||||
"except" => $except
|
||||
);
|
||||
$uidarr[] = $uid;
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['adduser'], $name, $uid, $cldbid));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($mysqlcon->exec("UPDATE $dbname.user SET online='0'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 13:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
unset($yetonline);
|
||||
|
||||
if ($insertdata != NULL) {
|
||||
$allinsertdata = '';
|
||||
@@ -320,31 +242,13 @@ function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$gro
|
||||
}
|
||||
$allinsertdata = substr($allinsertdata, 0, -1);
|
||||
if ($allinsertdata != NULL) {
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.user (uuid, cldbid, count, ip, name, lastseen, grpid, nextup, cldgroup, platform, nation, version, firstcon, except, online) VALUES $allinsertdata") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 14:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "INSERT INTO $dbname.user (uuid, cldbid, count, ip, name, lastseen, grpid, nextup, cldgroup, platform, nation, version, firstcon, except, online) VALUES $allinsertdata; ";
|
||||
}
|
||||
unset($insertdata, $allinsertdata);
|
||||
}
|
||||
|
||||
unset($insertdata);
|
||||
unset($allinsertdata);
|
||||
if ($updatedata != NULL) {
|
||||
$allupdateuuid = '';
|
||||
$allupdatecldbid = '';
|
||||
$allupdatecount = '';
|
||||
$allupdateip = '';
|
||||
$allupdatename = '';
|
||||
$allupdatelastseen = '';
|
||||
$allupdategrpid = '';
|
||||
$allupdatenextup = '';
|
||||
$allupdateidle = '';
|
||||
$allupdatecldgroup = '';
|
||||
$allupdateboosttime = '';
|
||||
$allupdateplatform = '';
|
||||
$allupdatenation = '';
|
||||
$allupdateversion = '';
|
||||
$allupdateexcept = '';
|
||||
$allupdategrpsince = '';
|
||||
$allupdateuuid = $allupdatecldbid = $allupdatecount = $allupdateip = $allupdatename = $allupdatelastseen = $allupdategrpid = $allupdatenextup = $allupdateidle = $allupdatecldgroup = $allupdateboosttime = $allupdateplatform = $allupdatenation = $allupdateversion = $allupdateexcept = $allupdategrpsince = $allupdatecid = '';
|
||||
foreach ($updatedata as $updatearr) {
|
||||
$allupdateuuid = $allupdateuuid . $updatearr['uuid'] . ",";
|
||||
$allupdatecldbid = $allupdatecldbid . "WHEN " . $updatearr['uuid'] . " THEN '" . $updatearr['cldbid'] . "' ";
|
||||
@@ -362,11 +266,12 @@ function calc_user($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$update,$gro
|
||||
$allupdateversion = $allupdateversion . "WHEN " . $updatearr['uuid'] . " THEN '" . $updatearr['version'] . "' ";
|
||||
$allupdateexcept = $allupdateexcept . "WHEN " . $updatearr['uuid'] . " THEN '" . $updatearr['except'] . "' ";
|
||||
$allupdategrpsince = $allupdategrpsince . "WHEN " . $updatearr['uuid'] . " THEN '" . $updatearr['grpsince'] . "' ";
|
||||
$allupdatecid = $allupdatecid . "WHEN " . $updatearr['uuid'] . " THEN '" . $updatearr['cid'] . "' ";
|
||||
}
|
||||
$allupdateuuid = substr($allupdateuuid, 0, -1);
|
||||
if($mysqlcon->exec("UPDATE $dbname.user set cldbid = CASE uuid $allupdatecldbid END, count = CASE uuid $allupdatecount END, ip = CASE uuid $allupdateip END, name = CASE uuid $allupdatename END, lastseen = CASE uuid $allupdatelastseen END, grpid = CASE uuid $allupdategrpid END, nextup = CASE uuid $allupdatenextup END, idle = CASE uuid $allupdateidle END, cldgroup = CASE uuid $allupdatecldgroup END, boosttime = CASE uuid $allupdateboosttime END, platform = CASE uuid $allupdateplatform END, nation = CASE uuid $allupdatenation END, version = CASE uuid $allupdateversion END, except = CASE uuid $allupdateexcept END, grpsince = CASE uuid $allupdategrpsince END, online = 1 WHERE uuid IN ($allupdateuuid)") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_user 15:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "UPDATE $dbname.user SET online='0'; UPDATE $dbname.user set cldbid = CASE uuid $allupdatecldbid END, count = CASE uuid $allupdatecount END, ip = CASE uuid $allupdateip END, name = CASE uuid $allupdatename END, lastseen = CASE uuid $allupdatelastseen END, grpid = CASE uuid $allupdategrpid END, nextup = CASE uuid $allupdatenextup END, idle = CASE uuid $allupdateidle END, cldgroup = CASE uuid $allupdatecldgroup END, boosttime = CASE uuid $allupdateboosttime END, platform = CASE uuid $allupdateplatform END, nation = CASE uuid $allupdatenation END, version = CASE uuid $allupdateversion END, except = CASE uuid $allupdateexcept END, grpsince = CASE uuid $allupdategrpsince END, cid = CASE uuid $allupdatecid END, online = 1 WHERE uuid IN ($allupdateuuid); ";
|
||||
unset($updatedata, $allupdateuuid, $allupdatecldbid, $allupdatecount, $allupdateip, $allupdatename, $allupdatelastseen, $allupdategrpid, $allupdatenextup, $allupdateidle, $allupdatecldgroup, $allupdateboosttime, $allupdateplatform, $allupdatenation, $allupdateversion, $allupdateexcept, $allupdategrpsince, $allupdatecid);
|
||||
}
|
||||
return($sqlexec);
|
||||
}
|
||||
?>
|
||||
@@ -1,18 +1,9 @@
|
||||
<?PHP
|
||||
function calc_userstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath) {
|
||||
function calc_userstats($ts3,$mysqlcon,$dbname,$slowmode,$timezone,$logpath,$select_arr) {
|
||||
$sqlexec = '';
|
||||
|
||||
if(($count_user = $mysqlcon->query("SELECT count(*) as count FROM ((SELECT u.uuid FROM $dbname.user AS u INNER JOIN $dbname.stats_user As s On u.uuid=s.uuid) UNION (SELECT u.uuid FROM $dbname.user AS u LEFT JOIN $dbname.stats_user As s On u.uuid=s.uuid WHERE s.uuid IS NULL)) x")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 1:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$count_user = $count_user->fetchAll(PDO::FETCH_ASSOC);
|
||||
$total_user = $count_user[0]['count'];
|
||||
|
||||
if(($job_begin = $mysqlcon->query("SELECT timestamp FROM $dbname.job_check WHERE job_name='calc_user_limit'")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 2:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$job_begin = $job_begin->fetchAll();
|
||||
$job_begin = $job_begin[0]['timestamp'];
|
||||
$job_end = ceil($total_user / 10) * 10;
|
||||
$job_begin = $select_arr['job_check']['calc_user_limit']['timestamp'];
|
||||
$job_end = ceil(count($select_arr['all_user']) / 10) * 10;
|
||||
if ($job_begin >= $job_end) {
|
||||
$job_begin = 0;
|
||||
$job_end = 10;
|
||||
@@ -20,83 +11,43 @@ function calc_userstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpat
|
||||
$job_end = $job_begin + 10;
|
||||
}
|
||||
|
||||
if(($uuids = $mysqlcon->query("(SELECT u.uuid,u.rank,u.cldbid FROM $dbname.user AS u INNER JOIN $dbname.stats_user As s On u.uuid=s.uuid) UNION (SELECT u.uuid,u.rank,u.cldbid FROM $dbname.user AS u LEFT JOIN $dbname.stats_user As s On u.uuid=s.uuid WHERE s.uuid IS NULL) ORDER BY cldbid ASC LIMIT $job_begin, 10")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 3:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$uuids = $uuids->fetchAll();
|
||||
foreach($uuids as $uuid) {
|
||||
$sqlhis[$uuid['uuid']] = array(
|
||||
"uuid" => $uuid['uuid'],
|
||||
"rank" => $uuid['rank'],
|
||||
"cldbid" => $uuid['cldbid']
|
||||
);
|
||||
}
|
||||
|
||||
// Calc Client Stats
|
||||
if ($mysqlcon->exec("UPDATE $dbname.stats_user AS t LEFT JOIN $dbname.user AS u ON t.uuid=u.uuid SET t.removed='1' WHERE u.uuid IS NULL") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 4:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
|
||||
if(($statsuserhis = $mysqlcon->query("SELECT uuid, removed FROM $dbname.stats_user")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 5:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$statsuserhis = $statsuserhis->fetchAll();
|
||||
foreach($statsuserhis as $userhis) {
|
||||
$uidarrstats[$userhis['uuid']] = $userhis['removed'];
|
||||
}
|
||||
unset($statsuserhis);
|
||||
$sqlhis = array_slice($select_arr['all_user'],$job_begin ,10);
|
||||
|
||||
if(isset($sqlhis)) {
|
||||
//enter_logfile($logpath,$timezone,6,"Update User Stats between ".$job_begin." and ".$job_end.":");
|
||||
if(($userdataweekbegin = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")) === false) {
|
||||
if(($userdataweekbegin = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 6:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$userdataweekbegin = $userdataweekbegin->fetchAll(PDO::FETCH_GROUP|PDO::FETCH_ASSOC);
|
||||
if(($userdataweekend = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")) === false) {
|
||||
if(($userdataweekend = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 28) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 7:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$userdataweekend = $userdataweekend->fetchAll(PDO::FETCH_GROUP|PDO::FETCH_ASSOC);
|
||||
if(($userdatamonthbegin = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")) === false) {
|
||||
if(($userdatamonthbegin = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MIN(s2.timestamp) AS value2 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 8:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$userdatamonthbegin = $userdatamonthbegin->fetchAll(PDO::FETCH_GROUP|PDO::FETCH_ASSOC);
|
||||
if(($userdatamonthend = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")) === false) {
|
||||
|
||||
if(($userdatamonthend = $mysqlcon->query("SELECT uuid,count,idle FROM $dbname.user_snapshot WHERE timestamp=(SELECT MAX(s2.timestamp) AS value1 FROM (SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 120) AS s2, $dbname.user_snapshot AS s1 WHERE s1.timestamp=s2.timestamp)")->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 9:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$userdatamonthend = $userdatamonthend->fetchAll(PDO::FETCH_GROUP|PDO::FETCH_ASSOC);
|
||||
|
||||
$allupdateuuid = '';
|
||||
$allupdaterank = '';
|
||||
$allupdatecountw = '';
|
||||
$allupdatecountm = '';
|
||||
$allupdateidlew = '';
|
||||
$allupdateidlem = '';
|
||||
$allupdateactw = '';
|
||||
$allupdateactm = '';
|
||||
$allupdatetotac = '';
|
||||
$allupdatebase64 = '';
|
||||
$allupdatecldtup = '';
|
||||
$allupdatecldtdo = '';
|
||||
$allupdateclddes = '';
|
||||
$allinsertuserstats = '';
|
||||
$allupdateuuid = $allupdaterank = $allupdatecountw = $allupdatecountm = $allupdateidlew = $allupdateidlem = $allupdateactw = $allupdateactm = $allupdatetotac = $allupdatebase64 = $allupdatecldtup = $allupdatecldtdo = $allupdateclddes = $allinsertuserstats = '';
|
||||
|
||||
foreach ($sqlhis as $userstats) {
|
||||
foreach ($sqlhis as $uuid => $userstats) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
try {
|
||||
$clientinfo = $ts3->clientInfoDb($userstats['cldbid']);
|
||||
|
||||
if(isset($userdataweekend[$userstats['uuid']]) && isset($userdataweekbegin[$userstats['uuid']])) {
|
||||
$count_week = $userdataweekend[$userstats['uuid']][0]['count'] - $userdataweekbegin[$userstats['uuid']][0]['count'];
|
||||
$idle_week = $userdataweekend[$userstats['uuid']][0]['idle'] - $userdataweekbegin[$userstats['uuid']][0]['idle'];
|
||||
if(isset($userdataweekend[$uuid]) && isset($userdataweekbegin[$uuid])) {
|
||||
$count_week = $userdataweekend[$uuid]['count'] - $userdataweekbegin[$uuid]['count'];
|
||||
$idle_week = $userdataweekend[$uuid]['idle'] - $userdataweekbegin[$uuid]['idle'];
|
||||
$active_week = $count_week - $idle_week;
|
||||
} else {
|
||||
$count_week = 0;
|
||||
$idle_week = 0;
|
||||
$active_week = 0;
|
||||
}
|
||||
if(isset($userdatamonthend[$userstats['uuid']]) && isset($userdatamonthbegin[$userstats['uuid']])) {
|
||||
$count_month = $userdatamonthend[$userstats['uuid']][0]['count'] - $userdatamonthbegin[$userstats['uuid']][0]['count'];
|
||||
$idle_month = $userdatamonthend[$userstats['uuid']][0]['idle'] - $userdatamonthbegin[$userstats['uuid']][0]['idle'];
|
||||
if(isset($userdatamonthend[$uuid]) && isset($userdatamonthbegin[$uuid])) {
|
||||
$count_month = $userdatamonthend[$uuid]['count'] - $userdatamonthbegin[$uuid]['count'];
|
||||
$idle_month = $userdatamonthend[$uuid]['idle'] - $userdatamonthbegin[$uuid]['idle'];
|
||||
$active_month = $count_month - $idle_month;
|
||||
} else {
|
||||
$count_month = 0;
|
||||
@@ -104,45 +55,41 @@ function calc_userstats($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpat
|
||||
$active_month = 0;
|
||||
}
|
||||
$clientdesc = $mysqlcon->quote($clientinfo['client_description'], ENT_QUOTES);;
|
||||
if(isset($uidarrstats[$userstats['uuid']])) {
|
||||
$allupdateuuid = $allupdateuuid . "'" . $userstats['uuid'] . "',";
|
||||
$allupdaterank = $allupdaterank . "WHEN '" . $userstats['uuid'] . "' THEN '" . $userstats['rank'] . "' ";
|
||||
$allupdatecountw = $allupdatecountw . "WHEN '" . $userstats['uuid'] . "' THEN '" . $count_week . "' ";
|
||||
$allupdatecountm = $allupdatecountm . "WHEN '" . $userstats['uuid'] . "' THEN '" . $count_month . "' ";
|
||||
$allupdateidlew = $allupdateidlew . "WHEN '" . $userstats['uuid'] . "' THEN '" . $idle_week . "' ";
|
||||
$allupdateidlem = $allupdateidlem . "WHEN '" . $userstats['uuid'] . "' THEN '" . $idle_month . "' ";
|
||||
$allupdateactw = $allupdateactw . "WHEN '" . $userstats['uuid'] . "' THEN '" . $active_week . "' ";
|
||||
$allupdateactm = $allupdateactm . "WHEN '" . $userstats['uuid'] . "' THEN '" . $active_month . "' ";
|
||||
$allupdatetotac = $allupdatetotac . "WHEN '" . $userstats['uuid'] . "' THEN '" . $clientinfo['client_totalconnections'] . "' ";
|
||||
$allupdatebase64 = $allupdatebase64 . "WHEN '" . $userstats['uuid'] . "' THEN '" . $clientinfo['client_base64HashClientUID'] . "' ";
|
||||
$allupdatecldtup = $allupdatecldtup . "WHEN '" . $userstats['uuid'] . "' THEN '" . $clientinfo['client_total_bytes_uploaded'] . "' ";
|
||||
$allupdatecldtdo = $allupdatecldtdo . "WHEN '" . $userstats['uuid'] . "' THEN '" . $clientinfo['client_total_bytes_downloaded'] . "' ";
|
||||
$allupdateclddes = $allupdateclddes . "WHEN '" . $userstats['uuid'] . "' THEN " . $clientdesc . " ";
|
||||
if(isset($select_arr['uuid_stats_user'][$uuid])) {
|
||||
$allupdateuuid = $allupdateuuid . "'" . $uuid . "',";
|
||||
$allupdaterank = $allupdaterank . "WHEN '" . $uuid . "' THEN '" . $userstats['rank'] . "' ";
|
||||
$allupdatecountw = $allupdatecountw . "WHEN '" . $uuid . "' THEN '" . $count_week . "' ";
|
||||
$allupdatecountm = $allupdatecountm . "WHEN '" . $uuid . "' THEN '" . $count_month . "' ";
|
||||
$allupdateidlew = $allupdateidlew . "WHEN '" . $uuid . "' THEN '" . $idle_week . "' ";
|
||||
$allupdateidlem = $allupdateidlem . "WHEN '" . $uuid . "' THEN '" . $idle_month . "' ";
|
||||
$allupdateactw = $allupdateactw . "WHEN '" . $uuid . "' THEN '" . $active_week . "' ";
|
||||
$allupdateactm = $allupdateactm . "WHEN '" . $uuid . "' THEN '" . $active_month . "' ";
|
||||
$allupdatetotac = $allupdatetotac . "WHEN '" . $uuid . "' THEN '" . $clientinfo['client_totalconnections'] . "' ";
|
||||
$allupdatebase64 = $allupdatebase64 . "WHEN '" . $uuid . "' THEN '" . $clientinfo['client_base64HashClientUID'] . "' ";
|
||||
$allupdatecldtup = $allupdatecldtup . "WHEN '" . $uuid . "' THEN '" . $clientinfo['client_total_bytes_uploaded'] . "' ";
|
||||
$allupdatecldtdo = $allupdatecldtdo . "WHEN '" . $uuid . "' THEN '" . $clientinfo['client_total_bytes_downloaded'] . "' ";
|
||||
$allupdateclddes = $allupdateclddes . "WHEN '" . $uuid . "' THEN " . $clientdesc . " ";
|
||||
} else {
|
||||
$allinsertuserstats = $allinsertuserstats . "('" . $userstats['uuid'] . "', '" .$userstats['rank'] . "', '" . $count_week . "', '" . $count_month . "', '" . $idle_week . "', '" . $idle_month . "', '" . $active_week . "', '" . $active_month . "', '" . $clientinfo['client_totalconnections'] . "', '" . $clientinfo['client_base64HashClientUID'] . "', '" . $clientinfo['client_total_bytes_uploaded'] . "', '" . $clientinfo['client_total_bytes_downloaded'] . "', " . $clientdesc . "),";
|
||||
$allinsertuserstats = $allinsertuserstats . "('" . $uuid . "', '" .$userstats['rank'] . "', '" . $count_week . "', '" . $count_month . "', '" . $idle_week . "', '" . $idle_month . "', '" . $active_week . "', '" . $active_month . "', '" . $clientinfo['client_totalconnections'] . "', '" . $clientinfo['client_base64HashClientUID'] . "', '" . $clientinfo['client_total_bytes_uploaded'] . "', '" . $clientinfo['client_total_bytes_downloaded'] . "', " . $clientdesc . "),";
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
//enter_logfile($logpath,$timezone,6,$e->getCode() . ': ' . $e->getMessage()."; Client (uuid: ".$userstats['cldbid']." cldbid: ".$userstats['cldbid'].") was missing in TS database, perhaps its already deleted".);
|
||||
//enter_logfile($logpath,$timezone,6,$e->getCode() . ': ' . $e->getMessage()."; Client (uuid: ".$uuid." cldbid: ".$userstats['cldbid'].") was missing in TS database, perhaps its already deleted".);
|
||||
}
|
||||
}
|
||||
|
||||
if ($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp=$job_end WHERE job_name='calc_user_limit'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 11:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
unset($sqlhis, $userdataweekbegin, $userdataweekend, $userdatamonthend, $userdatamonthbegin);
|
||||
|
||||
if ($allupdateuuid != '') {
|
||||
$allupdateuuid = substr($allupdateuuid, 0, -1);
|
||||
if ($mysqlcon->exec("UPDATE $dbname.stats_user set rank = CASE uuid $allupdaterank END, count_week = CASE uuid $allupdatecountw END, count_month = CASE uuid $allupdatecountm END, idle_week = CASE uuid $allupdateidlew END, idle_month = CASE uuid $allupdateidlem END, active_week = CASE uuid $allupdateactw END, active_month = CASE uuid $allupdateactm END, total_connections = CASE uuid $allupdatetotac END, base64hash = CASE uuid $allupdatebase64 END, client_total_up = CASE uuid $allupdatecldtup END, client_total_down = CASE uuid $allupdatecldtdo END, client_description = CASE uuid $allupdateclddes END WHERE uuid IN ($allupdateuuid)") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 12:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp=$job_end WHERE job_name='calc_user_limit'; UPDATE $dbname.stats_user set rank = CASE uuid $allupdaterank END, count_week = CASE uuid $allupdatecountw END, count_month = CASE uuid $allupdatecountm END, idle_week = CASE uuid $allupdateidlew END, idle_month = CASE uuid $allupdateidlem END, active_week = CASE uuid $allupdateactw END, active_month = CASE uuid $allupdateactm END, total_connections = CASE uuid $allupdatetotac END, base64hash = CASE uuid $allupdatebase64 END, client_total_up = CASE uuid $allupdatecldtup END, client_total_down = CASE uuid $allupdatecldtdo END, client_description = CASE uuid $allupdateclddes END WHERE uuid IN ($allupdateuuid); ";
|
||||
unset($allupdateuuid, $allupdaterank, $allupdatecountw, $allupdatecountm, $allupdateidlew, $allupdateidlem, $allupdateactw, $allupdateactm, $allupdatetotac, $allupdatebase64, $allupdatecldtup, $allupdatecldtdo, $allupdateclddes);
|
||||
}
|
||||
|
||||
if($allinsertuserstats != '') {
|
||||
$allinsertuserstats = substr($allinsertuserstats, 0, -1);
|
||||
if ($mysqlcon->exec("INSERT INTO $dbname.stats_user (uuid,rank,count_week,count_month,idle_week,idle_month,active_week,active_month,total_connections,base64hash,client_total_up,client_total_down,client_description) VALUES $allinsertuserstats") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"calc_userstats 13:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp=$job_end WHERE job_name='calc_user_limit'; INSERT INTO $dbname.stats_user (uuid,rank,count_week,count_month,idle_week,idle_month,active_week,active_month,total_connections,base64hash,client_total_up,client_total_down,client_description) VALUES $allinsertuserstats; ";
|
||||
unset($allinsertuserstats);
|
||||
}
|
||||
}
|
||||
return($sqlexec);
|
||||
}
|
||||
?>
|
||||
@@ -1,12 +1,12 @@
|
||||
<?PHP
|
||||
function check_db($mysqlcon,$lang,$dbname,$timezone,$currvers,$logpath) {
|
||||
$newversion = '1.2.3';
|
||||
$newversion = '1.2.4';
|
||||
enter_logfile($logpath,$timezone,5,"Check Ranksystem database for updates.");
|
||||
|
||||
function set_new_version($mysqlcon,$dbname,$timezone,$newversion,$logpath) {
|
||||
if($mysqlcon->exec("UPDATE $dbname.config set currvers='$newversion'") === false) {
|
||||
enter_logfile($logpath,$timezone,1," An error happens due updating the Ranksystem Database:".print_r($mysqlcon->errorInfo(), true));
|
||||
enter_logfile($logpath,$timezone,1," Check the database connection properties in other/dbconfig.php and check also the database permissions.");
|
||||
enter_logfile($logpath,$timezone,1," Check the database connection and properties in other/dbconfig.php and check also the database permissions.");
|
||||
exit;
|
||||
} else {
|
||||
$currvers = $newversion;
|
||||
@@ -31,12 +31,11 @@ function check_db($mysqlcon,$lang,$dbname,$timezone,$currvers,$logpath) {
|
||||
}
|
||||
|
||||
function check_config($mysqlcon,$dbname) {
|
||||
if(($dbdata = $mysqlcon->query("SELECT * FROM $dbname.config")) === false) { } else {
|
||||
if($dbdata->rowCount() > 1) {
|
||||
if(($dbdata = $mysqlcon->query("SELECT * FROM $dbname.config")->fetchAll()) === false) { } else {
|
||||
if(count($dbdata) > 1) {
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.config WHERE webuser IS NULL") === false) { }
|
||||
}
|
||||
$config = $dbdata->fetchAll();
|
||||
if($config[0]['updateinfotime'] > 86400) {
|
||||
if($dbdata[0]['updateinfotime'] > 86400) {
|
||||
if($mysqlcon->exec("UPDATE $dbname.config SET updateinfotime='86400'") === false) { }
|
||||
}
|
||||
}
|
||||
@@ -446,11 +445,52 @@ function check_db($mysqlcon,$lang,$dbname,$timezone,$currvers,$logpath) {
|
||||
if($mysqlcon->exec("CREATE INDEX snapshot_timestamp ON $dbname.user_snapshot (timestamp)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.3] Recreated index on table user_snapshot successfully.");
|
||||
}
|
||||
|
||||
if($mysqlcon->exec("CREATE INDEX serverusage_timestamp ON $dbname.server_usage (timestamp)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.3] Recreated index on table server_usage successfully.");
|
||||
}
|
||||
}
|
||||
if(version_compare($currvers, '1.2.3', '<=')) {
|
||||
if($mysqlcon->exec("ALTER TABLE $dbname.config MODIFY COLUMN adminuuid varchar(500) CHARACTER SET utf8 COLLATE utf8_unicode_ci") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Adjusted table config (part 1) successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("ALTER TABLE $dbname.config ADD (registercid mediumint(8) UNSIGNED NOT NULL default '0')") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Adjusted table config (part 2) successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("ALTER TABLE $dbname.user ADD (cid int(10) NOT NULL default '0')") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Adjusted table user successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("CREATE INDEX user_version ON $dbname.user (version)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Create index 'user_version' on table user successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("CREATE INDEX user_cldbid ON $dbname.user (cldbid ASC,uuid,rank)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Create index 'user_cldbid' on table user successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("CREATE INDEX user_online ON $dbname.user (online,lastseen)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Create index 'user_online' on table user successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.job_check (job_name) VALUES ('clean_db'),('clean_clients'),('calc_server_stats'),('runtime_check'),('last_update')") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Set new values to table job_check successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.job_check WHERE job_name='check_clean'") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Removed old value 'check_clean' from table job_check successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("ALTER TABLE $dbname.user_snapshot ADD PRIMARY KEY (timestamp, uuid)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Added new primary key on table user_snapshot successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("ALTER TABLE $dbname.stats_nations ADD PRIMARY KEY (nation)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Added new primary key on table stats_nations successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("ALTER TABLE $dbname.stats_platforms ADD PRIMARY KEY (platform)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Added new primary key on table stats_platforms successfully.");
|
||||
}
|
||||
if($mysqlcon->exec("ALTER TABLE $dbname.stats_versions ADD PRIMARY KEY (version)") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Added new primary key on table stats_versions successfully.");
|
||||
}
|
||||
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='".time()."' WHERE job_name='last_update'") === false) { } else {
|
||||
enter_logfile($logpath,$timezone,4," [1.2.4] Stored timestamp of last update successfully.");
|
||||
}
|
||||
}
|
||||
$currvers = set_new_version($mysqlcon,$dbname,$timezone,$newversion,$logpath);
|
||||
old_files($timezone,$logpath);
|
||||
check_chmod($timezone,$logpath,$lang);
|
||||
|
||||
100
jobs/clean.php
100
jobs/clean.php
@@ -1,45 +1,24 @@
|
||||
<?PHP
|
||||
function clean($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$cleanclients,$cleanperiod,$logpath) {
|
||||
$count_tsuser['count'] = 0;
|
||||
function clean($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$cleanclients,$cleanperiod,$logpath,$select_arr) {
|
||||
$nowtime = time();
|
||||
|
||||
// clean usersnaps older then 1 month
|
||||
if($mysqlcon->query("DELETE a FROM $dbname.user_snapshot AS a CROSS JOIN(SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 1000 OFFSET 121) AS b WHERE a.timestamp=b.timestamp") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"clean 2.1:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
|
||||
// clean old server usage - older then a year
|
||||
if($mysqlcon->query("DELETE FROM $dbname.server_usage WHERE timestamp < (UNIX_TIMESTAMP() - 31536000)") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"clean 2.2:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec = '';
|
||||
|
||||
// clean old clients out of the database
|
||||
if ($cleanclients == 1) {
|
||||
$cleantime = $nowtime - $cleanperiod;
|
||||
if(($lastclean = $mysqlcon->query("SELECT * FROM $dbname.job_check WHERE job_name='check_clean'")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"clean 3:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$lastclean = $lastclean->fetchAll();
|
||||
if ($lastclean[0]['timestamp'] < $cleantime) {
|
||||
if(($dbuserdata = $mysqlcon->query("SELECT uuid FROM $dbname.user")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"clean 4:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$countrs = $dbuserdata->rowCount();
|
||||
$uuids = $dbuserdata->fetchAll();
|
||||
if($select_arr['job_check']['clean_clients']['timestamp'] < ($nowtime - $cleanperiod)) {
|
||||
if ($cleanclients == 1) {
|
||||
enter_logfile($logpath,$timezone,4,$lang['clean']);
|
||||
$start=0;
|
||||
$start = $countdel = $countts = 0;
|
||||
$break=200;
|
||||
$count_tsuser['count'] = 0;
|
||||
$clientdblist=array();
|
||||
$countdel=0;
|
||||
$countts=0;
|
||||
while($getclientdblist=$ts3->clientListDb($start, $break)) {
|
||||
$clientdblist=array_merge($clientdblist, $getclientdblist);
|
||||
$start=$start+$break;
|
||||
$count_tsuser=array_shift($getclientdblist);
|
||||
if ($start == 100000 || $count_tsuser['count'] <= $start) {
|
||||
if($count_tsuser['count'] <= $start) {
|
||||
break;
|
||||
}
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
usleep($slowmode);
|
||||
}
|
||||
foreach($clientdblist as $uuidts) {
|
||||
$single_uuid = $uuidts['client_unique_identifier']->toString();
|
||||
@@ -47,43 +26,68 @@ function clean($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$cleanclients,$c
|
||||
}
|
||||
unset($clientdblist);
|
||||
|
||||
foreach($uuids as $uuid) {
|
||||
if(isset($uidarrts[$uuid[0]])) {
|
||||
foreach($select_arr['all_user'] as $uuid => $value) {
|
||||
if(isset($uidarrts[$uuid])) {
|
||||
$countts++;
|
||||
} else {
|
||||
$deleteuuids[] = $uuid[0];
|
||||
$deleteuuids[] = $uuid;
|
||||
$countdel++;
|
||||
}
|
||||
}
|
||||
|
||||
unset($uidarrts);
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['cleants'], $countts, $count_tsuser['count']));
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['cleanrs'], $countrs));
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['cleanrs'], count($select_arr['all_user'])));
|
||||
|
||||
if(isset($deleteuuids)) {
|
||||
$alldeldata = '';
|
||||
foreach ($deleteuuids as $dellarr) {
|
||||
$alldeldata = $alldeldata . "'" . $dellarr . "',";
|
||||
$fsfilelist = opendir(substr(__DIR__,0,-4).'avatars/');
|
||||
while (false !== ($fsfile = readdir($fsfilelist))) {
|
||||
if ($fsfile != '.' && $fsfile != '..') {
|
||||
$fsfilelistarray[$fsfile] = filemtime(substr(__DIR__,0,-4).'avatars/'.$fsfile);
|
||||
}
|
||||
}
|
||||
$alldeldata = substr($alldeldata, 0, -1);
|
||||
$alldeldata = "(".$alldeldata.")";
|
||||
if ($alldeldata != '') {
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.user WHERE uuid IN $alldeldata") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"clean 5:".print_r($mysqlcon->errorInfo(), true));
|
||||
} else {
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['cleandel'], $countdel));
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='check_clean'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"clean 6:".print_r($mysqlcon->errorInfo(), true));
|
||||
unset($fsfilelist);
|
||||
$avatarfilepath = substr(__DIR__,0,-4).'avatars/';
|
||||
$convert = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p');
|
||||
foreach ($deleteuuids as $uuid) {
|
||||
$alldeldata = $alldeldata . "'" . $uuid . "',";
|
||||
$uuidasbase16 = '';
|
||||
for ($i = 0; $i < 20; $i++) {
|
||||
$char = ord(substr(base64_decode($uuid), $i, 1));
|
||||
$uuidasbase16 .= $convert[($char & 0xF0) >> 4];
|
||||
$uuidasbase16 .= $convert[$char & 0x0F];
|
||||
}
|
||||
if (isset($fsfilelistarray[$uuidasbase16.'.png'])) {
|
||||
if(unlink($avatarfilepath.$uuidasbase16.'.png') === false) {
|
||||
enter_logfile($logpath,$timezone,2," ".sprintf($lang['clean0002'], $uuidasbase16, $uuid).' '.sprintf($lang['errperm'], 'avatars'));
|
||||
} else {
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['clean0001'], $uuidasbase16, $uuid));
|
||||
}
|
||||
}
|
||||
}
|
||||
unset($$deleteuuids);
|
||||
$alldeldata = substr($alldeldata, 0, -1);
|
||||
$alldeldata = "(".$alldeldata.")";
|
||||
if ($alldeldata != '') {
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='clean_clients'; UPDATE $dbname.stats_user AS t LEFT JOIN $dbname.user AS u ON t.uuid=u.uuid SET t.removed='1' WHERE u.uuid IS NULL; DELETE FROM $dbname.user WHERE uuid IN $alldeldata; ";
|
||||
enter_logfile($logpath,$timezone,4," ".sprintf($lang['cleandel'], $countdel));
|
||||
unset($$alldeldata);
|
||||
}
|
||||
} else {
|
||||
enter_logfile($logpath,$timezone,4," ".$lang['cleanno']);
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='check_clean'") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"clean 7:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='clean_clients'; ";
|
||||
}
|
||||
} else {
|
||||
enter_logfile($logpath,$timezone,4,$lang['clean0004']);
|
||||
$sqlexec .= "UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='clean_clients'; ";
|
||||
}
|
||||
}
|
||||
|
||||
// clean usersnaps older then 1 month + clean old server usage - older then a year
|
||||
if ($select_arr['job_check']['clean_db']['timestamp'] < ($nowtime - 86400)) {
|
||||
$sqlexec .= "DELETE a FROM $dbname.user_snapshot AS a CROSS JOIN(SELECT DISTINCT(timestamp) FROM $dbname.user_snapshot ORDER BY timestamp DESC LIMIT 1000 OFFSET 121) AS b WHERE a.timestamp=b.timestamp; DELETE FROM $dbname.server_usage WHERE timestamp < (UNIX_TIMESTAMP() - 31536000); DELETE b FROM $dbname.user a RIGHT JOIN $dbname.stats_user b ON a.uuid = b.uuid WHERE a.uuid IS NULL; UPDATE $dbname.job_check SET timestamp='$nowtime' WHERE job_name='clean_db'; ";
|
||||
enter_logfile($logpath,$timezone,4,$lang['clean0003']);
|
||||
}
|
||||
return($sqlexec);
|
||||
}
|
||||
?>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?PHP
|
||||
function get_avatars($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath,$avatar_delay) {
|
||||
function get_avatars($ts3,$slowmode,$timezone,$logpath,$avatar_delay) {
|
||||
try {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
usleep($slowmode);
|
||||
$tsfilelist = $ts3->channelFileList($cid="0", $cpw="", $path="/");
|
||||
} catch (Exception $e) {
|
||||
if ($e->getCode() != 1281) {
|
||||
@@ -14,6 +14,7 @@ function get_avatars($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath,$
|
||||
$fsfilelistarray[$fsfile] = filemtime(substr(__DIR__,0,-4).'avatars/'.$fsfile);
|
||||
}
|
||||
}
|
||||
unset($fsfilelist);
|
||||
|
||||
if (isset($tsfilelist)) {
|
||||
foreach($tsfilelist as $tsfile) {
|
||||
@@ -38,6 +39,7 @@ function get_avatars($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$logpath,$
|
||||
}
|
||||
}
|
||||
}
|
||||
unset($fsfilelistarray);
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -1,33 +1,35 @@
|
||||
<?PHP
|
||||
function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3_Node_Host $host) {
|
||||
global $lang, $logpath, $timezone, $nextupinfo, $nextupinfomsg1, $nextupinfomsg2, $nextupinfomsg3, $mysqlcon, $dbname, $grouptime, $substridle, $slowmode, $currvers, $newversion, $adminuuid, $phpcommand;
|
||||
if($host->whoami()["client_unique_identifier"] != $event["invokeruid"]) { //check whoami need to slowmode or is already stored?
|
||||
$uuid = $event["invokeruid"];
|
||||
|
||||
global $lang, $logpath, $timezone, $nextupinfo, $nextupinfomsg1, $nextupinfomsg2, $nextupinfomsg3, $mysqlcon, $dbname, $grouptime, $substridle, $slowmode, $currvers, $newversion, $adminuuid, $phpcommand;
|
||||
|
||||
if($host->whoami()["client_unique_identifier"] != $event["invokeruid"]) { //check whoami need to slowmode or is already stored?
|
||||
$uuid = $event["invokeruid"];
|
||||
$admin = 0;
|
||||
foreach ($adminuuid as $auuid) {
|
||||
if ($uuid == $auuid) {
|
||||
$admin = 1;
|
||||
}
|
||||
}
|
||||
|
||||
if((strstr($event["msg"], '!nextup') || strstr($event["msg"], '!next')) && $nextupinfo != 0) {
|
||||
//enter_logfile($logpath,$timezone,6,"Client ".$event["invokername"]." (".$event["invokeruid"].") sent textmessage: ".$event["msg"]);
|
||||
if(($dbuserdata = $mysqlcon->query("SELECT count,nextup,idle,except,name FROM $dbname.user WHERE uuid='$uuid'")) === false) {
|
||||
if(($user = $mysqlcon->query("SELECT count,nextup,idle,except,name FROM $dbname.user WHERE uuid='$uuid'")->fetch()) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 1:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$user = $dbuserdata->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
if(($dbgroups = $mysqlcon->query("SELECT * FROM $dbname.groups")) === false) {
|
||||
if(($sqlhisgroup = $mysqlcon->query("SELECT sgid,sgidname FROM $dbname.groups")->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE)) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 2:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$servergroups = $dbgroups->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($servergroups as $servergroup) {
|
||||
$sqlhisgroup[$servergroup['sgid']] = $servergroup['sgidname'];
|
||||
}
|
||||
|
||||
ksort($grouptime);
|
||||
$countgrp = count($grouptime);
|
||||
$grpcount=0;
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
if ($substridle == 1) {
|
||||
$nextup = $time - $user[0]['count'] + $user[0]['idle'];
|
||||
$nextup = $time - $user['count'] + $user['idle'];
|
||||
} else {
|
||||
$nextup = $time - $user[0]['count'];
|
||||
$nextup = $time - $user['count'];
|
||||
}
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$nextup");
|
||||
@@ -35,25 +37,28 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
$hours = $dtF->diff($dtT)->format('%h');
|
||||
$mins = $dtF->diff($dtT)->format('%i');
|
||||
$secs = $dtF->diff($dtT)->format('%s');
|
||||
$name = $user[0]['name'];
|
||||
$name = $user['name'];
|
||||
$grpcount++;
|
||||
if ($nextup > 0 && $nextup < $time || $grpcount == $countgrp && $nextup <= 0) {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
if ($grpcount == $countgrp && $nextup <= 0) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($nextupinfomsg2, $days, $hours, $mins, $secs, $sqlhisgroup[$groupid], $name));
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($nextupinfomsg2, $days, $hours, $mins, $secs, $sqlhisgroup[$groupid]['sgidname'], $name));
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 3:".$e->getCode().': '.$e->getMessage());
|
||||
}
|
||||
} elseif ($user[0]['except'] == 2 || $user[0]['except'] == 3) {
|
||||
} elseif ($user['except'] == 2 || $user['except'] == 3) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($nextupinfomsg3, $days, $hours, $mins, $secs, $sqlhisgroup[$groupid], $name));
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($nextupinfomsg3, $days, $hours, $mins, $secs, $sqlhisgroup[$groupid]['sgidname'], $name));
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 4:".$e->getCode().': '.$e->getMessage());
|
||||
}
|
||||
} else {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($nextupinfomsg1, $days, $hours, $mins, $secs, $sqlhisgroup[$groupid], $name));
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($nextupinfomsg1, $days, $hours, $mins, $secs, $sqlhisgroup[$groupid]['sgidname'], $name));
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 5:".$e->getCode().': '.$e->getMessage());
|
||||
}
|
||||
@@ -67,12 +72,14 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
|
||||
if(strstr($event["msg"], '!version')) {
|
||||
if(version_compare(substr($newversion, 0, 5), substr($currvers, 0, 5), '>') && $newversion != '') {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($lang['upmsg'], $currvers, $newversion));
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 6:".$e->getCode().': '.$e->getMessage());
|
||||
}
|
||||
} else {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message(sprintf($lang['msg0001'], $currvers));
|
||||
} catch (Exception $e) {
|
||||
@@ -82,6 +89,7 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
}
|
||||
|
||||
if(strstr($event["msg"], '!help') || strstr($event["msg"], '!info') || strstr($event["msg"], '!commands')) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0002']);
|
||||
} catch (Exception $e) {
|
||||
@@ -89,9 +97,10 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
}
|
||||
}
|
||||
|
||||
if((strstr($event["msg"], '!shutdown') || strstr($event["msg"], '!quit') || strstr($event["msg"], '!stop')) && $event["invokeruid"] == $adminuuid) {
|
||||
if((strstr($event["msg"], '!shutdown') || strstr($event["msg"], '!quit') || strstr($event["msg"], '!stop')) && $admin == 1) {
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['msg0004'], $event["invokername"], $event["invokeruid"]));
|
||||
$path = substr(__DIR__, 0, -4);
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0005']);
|
||||
} catch (Exception $e) {
|
||||
@@ -99,6 +108,7 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
}
|
||||
exec($phpcommand." ".$path."worker.php stop");
|
||||
} elseif (strstr($event["msg"], '!shutdown') || strstr($event["msg"], '!quit') || strstr($event["msg"], '!stop')) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0003']);
|
||||
} catch (Exception $e) {
|
||||
@@ -106,9 +116,10 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
}
|
||||
}
|
||||
|
||||
if((strstr($event["msg"], '!restart') || strstr($event["msg"], '!reboot')) && $event["invokeruid"] == $adminuuid) {
|
||||
if((strstr($event["msg"], '!restart') || strstr($event["msg"], '!reboot')) && $admin == 1) {
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['msg0007'], $event["invokername"], $event["invokeruid"]));
|
||||
$path = substr(__DIR__, 0, -4);
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0006']);
|
||||
} catch (Exception $e) {
|
||||
@@ -120,6 +131,7 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
exec($phpcommand." ".$path."worker.php restart > /dev/null 2>/dev/null &");
|
||||
}
|
||||
} elseif (strstr($event["msg"], '!restart') || strstr($event["msg"], '!reboot')) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0003']);
|
||||
} catch (Exception $e) {
|
||||
@@ -127,16 +139,37 @@ function handle_messages(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3
|
||||
}
|
||||
}
|
||||
|
||||
if((strstr($event["msg"], '!checkupdate') || strstr($event["msg"], '!update')) && $event["invokeruid"] == $adminuuid) {
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='0' WHERE job_name IN ('check_update','get_version')") === false) {
|
||||
if((strstr($event["msg"], '!checkupdate') || strstr($event["msg"], '!update')) && $admin == 1) {
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='0' WHERE job_name IN ('check_update','get_version','calc_server_stats')") === false) {
|
||||
enter_logfile($logpath,$timezone,4,"handle_messages 13:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0008']);
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 14:".$e->getCode().': '.$e->getMessage());
|
||||
}
|
||||
} elseif (strstr($event["msg"], '!checkupdate') || strstr($event["msg"], '!update')) {
|
||||
} elseif(strstr($event["msg"], '!checkupdate') || strstr($event["msg"], '!update')) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0003']);
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 15:".$e->getCode().': '.$e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
if((strstr($event["msg"], '!clean')) && $admin == 1) {
|
||||
if($mysqlcon->exec("UPDATE $dbname.job_check SET timestamp='0' WHERE job_name IN ('clean_db','clean_clients')") === false) {
|
||||
enter_logfile($logpath,$timezone,4,"handle_messages 13:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0009']);
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"handle_messages 14:".$e->getCode().': '.$e->getMessage());
|
||||
}
|
||||
} elseif(strstr($event["msg"], '!clean')) {
|
||||
usleep($slowmode);
|
||||
try {
|
||||
$host->serverGetSelected()->clientGetByUid($event["invokeruid"])->message($lang['msg0003']);
|
||||
} catch (Exception $e) {
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<?PHP
|
||||
function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serverinfo,$logpath) {
|
||||
|
||||
function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serverinfo,$logpath,$grouptime,$boostarr,$exceptgroup,$select_arr) {
|
||||
$sqlexec = '';
|
||||
try {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
usleep($slowmode);
|
||||
$iconlist = $ts3->channelFileList($cid="0", $cpw="", $path="/icons/");
|
||||
} catch (Exception $e) {
|
||||
if ($e->getCode() != 1281) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 1:".$e->getCode().': '."Error while getting servergrouplist: ".$e->getMessage());
|
||||
enter_logfile($logpath,$timezone,2,$lang['errorts3'].$e->getCode().': '.$lang['errgrplist'].$e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,69 +16,63 @@ function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serveri
|
||||
}
|
||||
|
||||
try {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
usleep($slowmode);
|
||||
$ts3->serverGroupListReset();
|
||||
$ts3groups = $ts3->serverGroupList();
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 2:".$e->getCode().': '."Error while getting servergrouplist: ".$e->getMessage());
|
||||
enter_logfile($logpath,$timezone,2,$lang['errorts3'].$e->getCode().': '.$lang['errgrplist'].$e->getMessage());
|
||||
}
|
||||
|
||||
if(($dbgroups = $mysqlcon->query("SELECT * FROM $dbname.groups")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 3:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
if ($dbgroups->rowCount() == 0) {
|
||||
$sqlhisgroup = "empty";
|
||||
} else {
|
||||
$servergroups = $dbgroups->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($servergroups as $servergroup) {
|
||||
$sqlhisgroup[$servergroup['sgid']] = array (
|
||||
"sgid" => $servergroup['sgid'],
|
||||
"iconid" => $servergroup['iconid'],
|
||||
"sgidname" => $servergroup['sgidname'],
|
||||
"icondate" => $servergroup['icondate']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// ServerIcon
|
||||
$sIconId = $serverinfo['virtualserver_icon_id'];
|
||||
$sIconId = ($sIconId < 0) ? (pow(2, 32)) - ($sIconId * -1) : $sIconId;
|
||||
if ($serverinfo['virtualserver_icon_id'] < 0) {
|
||||
$sIconId = (pow(2, 32)) - ($serverinfo['virtualserver_icon_id'] * -1);
|
||||
} else {
|
||||
$sIconId = $serverinfo['virtualserver_icon_id'];
|
||||
}
|
||||
$sIconFile = 0;
|
||||
if (!isset($sqlhisgroup['0']) || $sqlhisgroup['0']['iconid'] != $sIconId || $iconarr["i".$sIconId] > $sqlhisgroup['0']['icondate']) {
|
||||
if (!isset($select_arr['groups']['0']) || $select_arr['groups']['0']['iconid'] != $sIconId || $iconarr["i".$sIconId] > $select_arr['groups']['0']['icondate']) {
|
||||
if($sIconId > 600) {
|
||||
try {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
enter_logfile($logpath,$timezone,5,"Download new ServerIcon");
|
||||
usleep($slowmode);
|
||||
enter_logfile($logpath,$timezone,5,$lang['upgrp0002']);
|
||||
$sIconFile = $ts3->iconDownload();
|
||||
if(file_put_contents(substr(dirname(__FILE__),0,-4) . "tsicons/servericon.png", $sIconFile) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"Error while writing out the servericon. Please check the permission for the folder 'tsicons'");
|
||||
enter_logfile($logpath,$timezone,2,$lang['upgrp0003'].' '.sprintf($lang['errperm'], 'tsicons'));
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 4:".$e->getCode().': '."Error while downloading servericon: ".$e->getMessage());
|
||||
enter_logfile($logpath,$timezone,2,$lang['errorts3'].$e->getCode().'; '.$lang['upgrp0004'].$e->getMessage());
|
||||
}
|
||||
} elseif($sIconId == 0) {
|
||||
if(file_exists(substr(dirname(__FILE__),0,-4) . "tsicons/servericon.png")) {
|
||||
if(unlink(substr(dirname(__FILE__),0,-4) . "tsicons/servericon.png") === false) {
|
||||
enter_logfile($logpath,$timezone,2,$lang['upgrp0005'].' '.sprintf($lang['errperm'], 'tsicons'));
|
||||
} else {
|
||||
enter_logfile($logpath,$timezone,5,$lang['upgrp0006']);
|
||||
}
|
||||
}
|
||||
$iconarr["i".$sIconId] = 0;
|
||||
}
|
||||
if (!isset($sqlhisgroup['0'])) {
|
||||
if (!isset($select_arr['groups']['0'])) {
|
||||
$insertgroups[] = array(
|
||||
"sgid" => "0",
|
||||
"sgidname" => $mysqlcon->quote("ServerIcon", ENT_QUOTES),
|
||||
"sgidname" => "'ServerIcon'",
|
||||
"iconid" => $sIconId,
|
||||
"icon" => $sIconFile,
|
||||
"icondate" => $iconarr["i".$sIconId]
|
||||
);
|
||||
} else {
|
||||
$updategroups[] = array(
|
||||
"sgid" => "0",
|
||||
"sgidname" => $mysqlcon->quote("ServerIcon", ENT_QUOTES),
|
||||
"sgidname" => "'ServerIcon'",
|
||||
"iconid" => $sIconId,
|
||||
"icon" => $sIconFile,
|
||||
"icondate" => $iconarr["i".$sIconId]
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// GroupIcons
|
||||
$iconcount= 0;
|
||||
foreach ($ts3groups as $servergroup) {
|
||||
$tsgroupids[] = $servergroup['sgid'];
|
||||
$tsgroupids[$servergroup['sgid']] = 0;
|
||||
$sgid = $servergroup['sgid'];
|
||||
$sgname = $mysqlcon->quote($servergroup['name'], ENT_QUOTES);
|
||||
$gefunden = 2;
|
||||
@@ -86,36 +80,41 @@ function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serveri
|
||||
$iconid = ($iconid < 0) ? (pow(2, 32)) - ($iconid * -1) : $iconid;
|
||||
$iconfile = 0;
|
||||
if($iconid > 600) {
|
||||
if (!isset($sqlhisgroup[$sgid]) || $sqlhisgroup[$sgid]['iconid'] != $iconid || $iconarr["i".$iconid] > $sqlhisgroup[$sgid]['icondate']) {
|
||||
if (!isset($select_arr['groups'][$sgid]) || $select_arr['groups'][$sgid]['iconid'] != $iconid || $iconarr["i".$iconid] > $select_arr['groups'][$sgid]['icondate']) {
|
||||
try {
|
||||
check_shutdown($timezone,$logpath); usleep($slowmode);
|
||||
enter_logfile($logpath,$timezone,5,"Download new ServerGroupIcon for group ".$sgname." with ID: ".$sgid);
|
||||
try {
|
||||
$iconfile = $servergroup->iconDownload();
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 5:".$e->getCode().': '."Error while downloading servergroupicon: ".$e->getMessage());
|
||||
}
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['upgrp0011'], $sgname, $sgid));
|
||||
$iconfile = $servergroup->iconDownload();
|
||||
if(file_put_contents(substr(dirname(__FILE__),0,-4) . "tsicons/" . $sgid . ".png", $iconfile) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"Error while writing out the servergroup icon. Please check the permission for the folder 'tsicons'");
|
||||
enter_logfile($logpath,$timezone,2,sprintf($lang['upgrp0007'], $sgname, $sgid).' '.sprintf($lang['errperm'], 'tsicons'));
|
||||
}
|
||||
$iconcount++;
|
||||
} catch (Exception $e) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 6:".$e->getCode().': '."Error while downloading servergroup icon: ".$e->getMessage());
|
||||
enter_logfile($logpath,$timezone,2,$lang['errorts3'].$e->getCode().': '.sprintf($lang['upgrp0008'], $sgname, $sgid).$e->getMessage());
|
||||
}
|
||||
}
|
||||
} elseif($iconid == 0) {
|
||||
if(file_exists(substr(dirname(__FILE__),0,-4) . "tsicons/" . $sgid . ".png")) {
|
||||
if(unlink(substr(dirname(__FILE__),0,-4) . "tsicons/" . $sgid . ".png") === false) {
|
||||
enter_logfile($logpath,$timezone,2,sprintf($lang['upgrp0009'], $sgname, $sgid).' '.sprintf($lang['errperm'], 'tsicons'));
|
||||
} else {
|
||||
enter_logfile($logpath,$timezone,5,sprintf($lang['upgrp0010'], $sgname, $sgid));
|
||||
}
|
||||
}
|
||||
$iconarr["i".$iconid] = 0;
|
||||
}
|
||||
|
||||
if(!isset($iconarr["i".$iconid])) {
|
||||
$iconarr["i".$iconid] = 0;
|
||||
}
|
||||
if ($sqlhisgroup != "empty") {
|
||||
foreach ($sqlhisgroup as $groups) {
|
||||
if ($groups['sgid'] == $sgid) {
|
||||
if(count($select_arr['groups']) != 0) {
|
||||
foreach ($select_arr['groups'] as $sqlgid => $groups) {
|
||||
if ($sqlgid == $sgid) {
|
||||
$gefunden = 1;
|
||||
$updategroups[] = array(
|
||||
"sgid" => $sgid,
|
||||
"sgidname" => $sgname,
|
||||
"iconid" => $iconid,
|
||||
"icon" => $iconfile,
|
||||
"icondate" => $iconarr["i".$iconid]
|
||||
);
|
||||
break;
|
||||
@@ -126,7 +125,6 @@ function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serveri
|
||||
"sgid" => $servergroup['sgid'],
|
||||
"sgidname" => $sgname,
|
||||
"iconid" => $iconid,
|
||||
"icon" => $iconfile,
|
||||
"icondate" => $iconarr["i".$iconid]
|
||||
);
|
||||
}
|
||||
@@ -135,10 +133,12 @@ function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serveri
|
||||
"sgid" => $servergroup['sgid'],
|
||||
"sgidname" => $sgname,
|
||||
"iconid" => $iconid,
|
||||
"icon" => $iconfile,
|
||||
"icondate" => $iconarr["i".$iconid]
|
||||
);
|
||||
}
|
||||
if($iconcount > 9) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($insertgroups)) {
|
||||
@@ -148,9 +148,7 @@ function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serveri
|
||||
}
|
||||
$allinsertdata = substr($allinsertdata, 0, -1);
|
||||
if ($allinsertdata != '') {
|
||||
if($mysqlcon->exec("INSERT INTO $dbname.groups (sgid, sgidname, iconid, icondate) VALUES $allinsertdata") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 7:".$allinsertdata.print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "INSERT INTO $dbname.groups (sgid, sgidname, iconid, icondate) VALUES $allinsertdata; ";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -166,24 +164,30 @@ function update_groups($ts3,$mysqlcon,$lang,$dbname,$slowmode,$timezone,$serveri
|
||||
$allupdatedate = $allupdatedate . "WHEN '" . $updatedata['sgid'] . "' THEN '" . $updatedata['icondate'] . "' ";
|
||||
}
|
||||
$allsgids = substr($allsgids, 0, -1);
|
||||
if($mysqlcon->exec("UPDATE $dbname.groups set sgidname = CASE sgid $allupdatesgid END, iconid = CASE sgid $allupdateiconid END, icondate = CASE sgid $allupdatedate END WHERE sgid IN ($allsgids)") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 8:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "UPDATE $dbname.groups set sgidname = CASE sgid $allupdatesgid END, iconid = CASE sgid $allupdateiconid END, icondate = CASE sgid $allupdatedate END WHERE sgid IN ($allsgids); ";
|
||||
}
|
||||
|
||||
if(isset($sqlhisgroup)) {
|
||||
foreach ($sqlhisgroup as $groups) {
|
||||
if(!in_array($groups['sgid'], $tsgroupids) && $groups['sgid'] != 0) {
|
||||
$delsgroupids = $delsgroupids . "'" . $groups['sgid'] . "',";
|
||||
if(isset($select_arr['groups'])) {
|
||||
foreach ($select_arr['groups'] as $sgid => $groups) {
|
||||
if(!isset($tsgroupids[$sgid]) && $sgid != 0 && $sgid != NULL) {
|
||||
$delsgroupids .= "'" . $sgid . "',";
|
||||
if(in_array($sgid, $grouptime)) {
|
||||
enter_logfile($logpath,$timezone,2,sprintf($lang['upgrp0001'], $sgid, $lang['wigrptime']));
|
||||
}
|
||||
if(isset($boostarr[$sgid])) {
|
||||
enter_logfile($logpath,$timezone,2,sprintf($lang['upgrp0001'], $sgid, $lang['wiboost']));
|
||||
}
|
||||
if(isset($exceptgroup[$sgid])) {
|
||||
enter_logfile($logpath,$timezone,2,sprintf($lang['upgrp0001'], $sgid, $lang['wiexgrp']));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($delsgroupids)) {
|
||||
$delsgroupids = substr($delsgroupids, 0, -1);
|
||||
if($mysqlcon->exec("DELETE FROM $dbname.groups WHERE sgid IN ($delsgroupids)") === false) {
|
||||
enter_logfile($logpath,$timezone,2,"update_groups 9:".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
$sqlexec .= "DELETE FROM $dbname.groups WHERE sgid IN ($delsgroupids); ";
|
||||
}
|
||||
return($sqlexec);
|
||||
}
|
||||
?>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?PHP
|
||||
echo 'Take the actual language file like "core_en"<br>';
|
||||
echo 'Take the actual languale file like "core_en"<br>';
|
||||
echo 'Translate the textes to the wished language<br>';
|
||||
echo 'Send the translated file to admin@ts-n.net<br>';
|
||||
echo 'We will implement it with the next release<br>';
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang= array();
|
||||
$lang['adduser'] = "User %s (unique Client-ID: %s; Client-database-ID %s) is unknown -> added to the Ranksystem now.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "User %s (unique Client-ID: %s) got a new TeamSpeak Client-database-ID (%s). Update the old Client-database-ID (%s) and reset collected times!";
|
||||
$lang['crawl'] = "البحث عن المستخدمين المتواجدين وحساب التفاعل";
|
||||
$lang['clean'] = "البحث عن المستخدمين الذين من المفروض حذفهم";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "مدى التصفية";
|
||||
$lang['cleanpdesc'] = "Set a time that has to elapse before the 'clean clients' runs next.<br><br>Set a time in seconds.<br><br>Recommended is once a day, cause the client cleaning needs much time for bigger databases.";
|
||||
$lang['cleanrs'] = "المستخدمون في قاعدة باينات نظام الرتب: %s";
|
||||
$lang['cleants'] = "المستخدمين الذين تم العثور عليهم في قاعدة بايانات التيم سبيك: %s (of %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s). Please check the permission for the folder 'avatars'!";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "<small>يوم</small> %d";
|
||||
$lang['dbconerr'] = "فشل الدخول الى قاعدة بيانات قاعدة بيانات: ";
|
||||
$lang['delcldgrpif'] = "خلل عند حذف المعلومات من مجموعات السيرفر: %s";
|
||||
$lang['delcldgrpsc'] = "Knowledge about servergroups for %s User successfully removed.";
|
||||
$lang['delclientsif'] = "%s Clients deleted out of the Ranksystem database!";
|
||||
$lang['delclientssc'] = "%s Clients successfully deleted out of the Ranksystem database!";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "اسم المستخدم او كلمة المرور خاطئة! حاول مجددا...";
|
||||
$lang['errlogin2'] = "Brute force protection: Try it again in %s seconds!";
|
||||
$lang['errlogin3'] = "Brute force protection: To much misstakes. Banned for 300 Seconds!";
|
||||
$lang['error'] = "خلل ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Error while removing user with unique Client-ID %s out of the servergroup with servergroup-database-ID %s!";
|
||||
$lang['errremdb'] = "Error while removing user with unique Client-ID %s out of the Ranksystem database!";
|
||||
$lang['errselusr'] = "Please choose at least one user!";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "وقت التواجد الكلي";
|
||||
$lang['listuid'] = "unique Client-ID";
|
||||
$lang['login'] = "Login";
|
||||
$lang['msg0001'] = "running version: %s";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0003'] = "You are not eligible for this command!";
|
||||
$lang['msg0004'] = "Client %s (%s) requests shutdown.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Client %s (%s) requests restart.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "User %s (unique Client-ID: %s; Client-database-ID %s) is a query-user or is several times online (only first connection counts) -> this will not count!";
|
||||
$lang['noentry'] = "لم يتم العثور على اي مدخلات";
|
||||
$lang['pass'] = "كلمة المرور";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Limit of simultaneous groups: ";
|
||||
$lang['stag0012'] = "set groups";
|
||||
$lang['stag0013'] = "Addon ON/OFF";
|
||||
$lang['stag0014'] = "Turn the Addon on (enabled) or off (disabled).<br><br>On disabling the addon a possible part on the stats/ site will be hidden.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "حالة الخادم";
|
||||
$lang['stix0002'] = "مجموع المستخدمين";
|
||||
$lang['stix0003'] = "عرض التفاصيل";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Code";
|
||||
$lang['stna0004'] = "Count";
|
||||
$lang['stna0005'] = "Versions";
|
||||
$lang['stna0006'] = "Platforms";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "اخبار الخادم";
|
||||
$lang['stnv0002'] = "اغلاق";
|
||||
$lang['stnv0003'] = "تحديث معلومات المستخدم";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "العضوية - شرح";
|
||||
$lang['stnv0020'] = "تحتوي هذا الصفحة على مختصر لحالتك الخاصة ومجموع وقت تواجدك على السيرفر";
|
||||
$lang['stnv0021'] = "The informations are collected since the beginning of the Ranksystem, they are not since the beginning of the TeamSpeak server.";
|
||||
$lang['stnv0022'] = "This page receives its values out of a database. So the values might be delayed a bit.";
|
||||
$lang['stnv0023'] = "The sum inside of the donut charts may differ to the amount of 'Total user'. The reason is that this data weren't collected with older versions of the Ranksystem.";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "نظام الرتب";
|
||||
$lang['stnv0025'] = "تحديد المدخلات";
|
||||
$lang['stnv0026'] = "الكل";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - for initialisation dutch translation";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - for french translation";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - for portuguese translation";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "افضل مستخدمين";
|
||||
$lang['sttw0002'] = "لهذا الاسبوع";
|
||||
$lang['sttw0003'] = "وقت التواجد %s ساعات";
|
||||
$lang['sttw0003'] = "وقت التواجد %s %s ساعات";
|
||||
$lang['sttw0004'] = "أفضل 10 بالسيرفر";
|
||||
$lang['sttw0005'] = "Hours (Defines 100 %)";
|
||||
$lang['sttw0006'] = "%s hours (%s%)";
|
||||
@@ -295,9 +310,12 @@ $lang['sttw0009'] = "أفصل 10 ضد أخرون في وقت النشاط";
|
||||
$lang['sttw0010'] = "أفضل 10 ضد أخرون في زمن الخمول";
|
||||
$lang['sttw0011'] = "Top 10 (in hours)";
|
||||
$lang['sttw0012'] = "Other %s users (in hours)";
|
||||
$lang['sttw0013'] = "With %s hours active time";
|
||||
$lang['sttw0013'] = "With %s %s active time";
|
||||
$lang['sttw0014'] = "hours";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "لهذا الشهر";
|
||||
$lang['stta0001'] = "لكل الوقت";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0001'] = "\nHello %s,\nhere a [B]token[/B] to verify you for the Ranksystem:\n[B]%s[/B]\n\nPut this on the Ranksystem page inside the token field.\n\nIf you didn't request this message, please ignore it. If you get it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "A message with the token was sent to you on the TS3 server.";
|
||||
$lang['stve0003'] = "Please enter the token, which you received on the TS3 server. If you have not received a message, please be sure you have chosen the correct unique ID.";
|
||||
@@ -305,9 +323,9 @@ $lang['stve0004'] = "The entered token does not match! Please try it again.";
|
||||
$lang['stve0005'] = "Congratulations, you are successfully verified! You can now go on..";
|
||||
$lang['stve0006'] = "An unknown error happened. Please try it again. On repeated times contact an admin";
|
||||
$lang['stve0007'] = "Verify on TeamSpeak";
|
||||
$lang['stve0008'] = "1. Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0008'] = "Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0009'] = " -- select yourself -- ";
|
||||
$lang['stve0010'] = "2. You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0010'] = "You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0011'] = "Token:";
|
||||
$lang['stve0012'] = "verify";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +333,19 @@ $lang['time_sec'] = "Sec(s)";
|
||||
$lang['time_min'] = "Min(s)";
|
||||
$lang['time_hour'] = "Hour(s)";
|
||||
$lang['time_day'] = "Day(s)";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter, but that servergroup ID isn't exitent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "يتوفر اصدار جديد من نظام الرتب; ابلغ المستخدمين في السيرفر";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nHey, a new version of the [B]Ranksystem[/B] is available!\n\ncurrent version: %s\n[B]new version: %s[/B]\n\nPlease check out our site for more informations [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\nStarting the update process in background. [B]Please check the ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Database update successfully executed.";
|
||||
$lang['upuser'] = "User %s (unique Client-ID: %s; Client-database-ID %s) gets a new count (sum. online time) of %s (thereof active %s).";
|
||||
@@ -323,12 +353,16 @@ $lang['upuserboost'] = "User %s (unique Client-ID: %s; Client-database-ID %s) g
|
||||
$lang['upusrerr'] = "The unique Client-ID %s couldn't reached on the TeamSpeak!";
|
||||
$lang['upusrinf'] = "المستخدم %s المستخدمح";
|
||||
$lang['user'] = "اسم المستخدم";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Webinterface";
|
||||
$lang['wiaction'] = "action";
|
||||
$lang['wiadmhide'] = "hide excepted clients";
|
||||
$lang['wiadmhidedesc'] = "To hide excepted user in the following selection";
|
||||
$lang['wiadmuuid'] = "admin ID";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br><br>This is required to reset the password of the webinterface.<br><br>Is there no unique Client-ID address defined, it is not possible to reset the password!";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br>Also multiple Client-IDs are possible -> comma separated<br><br>This is required to reset the password of the webinterface.<br><br>Is there no unique Client-ID address defined, it is not possible to reset the password!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "boost";
|
||||
$lang['wiboostdesc'] = "Give an user on your TeamSpeak server a servergroup (have to be created manually), which you can declare here as boost group. Define also a factor which should be used (for example 2x) and a time, how long the boost should be rated.<br>The higher the factor, the faster an user reaches the next higher rank.<br>Is the time expired, the boost servergroup get automatically removed from the concerned user. The time starts running as soon as the user gets the servergroup.<br><br>servergroup ID=> factor=> time (in seconds)<br><br>Each entry have to separate from next with a comma.<br><br>Example:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>On this an user in servergroup 12 get the factor 2 for the next 6000 seconds, an user in servergroup 13 get the factor 3 for 2500 seconds, and so on...";
|
||||
$lang['wibot1'] = "Ranksystem Bot should be stopped. Check the log below for more information!";
|
||||
@@ -403,8 +437,8 @@ $lang['winav9'] = "Update available!";
|
||||
$lang['winav10'] = "Please use the webinterface only via %s HTTPS%s An encryption is critical to ensure your privacy and security.%sTo be able to use HTTPS your webserver needs to support an SSL connection.";
|
||||
$lang['winav11'] = "Please enter the unique Client-ID of the admin of the Ranksystem (Other -> admin ID). This is very important in case you lost your login details for the webinterface (to reset these).";
|
||||
$lang['winav12'] = "Addons";
|
||||
$lang['winxinfo'] = "Command \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>deactivated</b> - The function is deactivated. The command 'nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxinfo'] = "Command \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"!nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>deactivated</b> - The function is deactivated. The command '!nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxmode1'] = "deactivated";
|
||||
$lang['winxmode2'] = "allowed - only next rank";
|
||||
$lang['winxmode3'] = "allowed - all next ranks";
|
||||
@@ -474,7 +508,7 @@ $lang['wits3dchdesc'] = "The channel-ID, the bot should connect with.<br><br>Th
|
||||
$lang['wits3host'] = "TS3 Hostaddress";
|
||||
$lang['wits3hostdesc'] = "TeamSpeak 3 Server address<br>(IP oder DNS)";
|
||||
$lang['wits3sm'] = "Slowmode";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the Bot, which makes it imprecisely.";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the Bot, which makes it imprecisely.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Botname";
|
||||
$lang['wits3qnm2'] = "2nd Botname";
|
||||
$lang['wits3qnm2desc'] = "A fallback Botname, if the first one is already in use.";
|
||||
@@ -493,6 +527,8 @@ $lang['wiuptime'] = "Interval";
|
||||
$lang['wiuptimedesc'] = "Enter here how much seconds have to gone till the Ranksystem should check for available updates.<br>Attention, for each check the listed user gets a notification. If no one of the listed users is online, the Ranksystem will try to notificate with the next interval.";
|
||||
$lang['wiupuid'] = "Recipient";
|
||||
$lang['wiupuiddesc'] = "A comma separate list of unique Client-IDs, which shoud be informed on the TeamSpeak via private message for available updates.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Language";
|
||||
$lang['wivlangdesc'] = "Choose a default language for the Ranksystem.<br><br>The language is also selectable on the websites for the users and will be stored for the session.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang= array();
|
||||
$lang['adduser'] = "User %s (eindeutige Client-ID: %s; Client-Datenbank-ID: %s) ist bisher unbekannt -> wurde nun zum Ranksystem hinzugefügt.";
|
||||
$lang['brute'] = "Es wurden einige fehlgeschlagene Login-Versuche festgestellt. Blocke login für 300 Sekunden! Letzter Versuch von IP %s.";
|
||||
$lang['changedbid'] = "User %s (eindeutige Client-ID: %s) hat eine neue TeamSpeak Client-Datenbank-ID (%s). Ersetze die alte Client-Datenbank-ID (%s) und setze die gesammelte Zeiten zurück";
|
||||
$lang['crawl'] = "Scanne nach verbundenen Usern und sammle die online Zeit...";
|
||||
$lang['clean'] = "Scanne nach Usern, welche zu löschen sind...";
|
||||
@@ -12,16 +13,25 @@ $lang['cleanp'] = "Löschintervall";
|
||||
$lang['cleanpdesc'] = "Bestimme einen Intervall, wie oft die 'Clientlöschung' laufen soll.<br><br>Angabe der Zeit in Sekunden!<br><br>Empfohlen wird die Clientlöschung nur einmal am Tag laufen zu lassen, da für größere Datenbanken die Laufzeit extrem steigt.";
|
||||
$lang['cleanrs'] = "Clients in der Ranksystem Datenbank: %s";
|
||||
$lang['cleants'] = "Clients in der TeamSpeak Datenbank gefunden: %s (von %s)";
|
||||
$lang['clean0001'] = "Nicht benötigtes Avatar %s (ehemals eindeutige Client-ID: %s) erfolgreich gelöscht.";
|
||||
$lang['clean0002'] = "Fehler beim Löschen eines nicht benötigten Avatars %s (eindeutige Client-ID: %s). Bitte überprüfe die Zugriffsrechte auf das Verzeichnis 'avatars'!";
|
||||
$lang['clean0003'] = "Überprüfung der zu löschenden User abgeschlossen. Es gab nichts zu löschen.";
|
||||
$lang['clean0003'] = "Überprüfung der Datenbankbereinigung abgeschlossen. Alle unnötigen Daten wurden gelöscht.";
|
||||
$lang['clean0004'] = "Überprüfung der zu löschenden User abgeschlossen. Nichs wurde getan, da die Funktion 'Clientlöschung' deaktiviert ist (Webinterface - Kern).";
|
||||
$lang['days'] = "%s <small>Tage</small>";
|
||||
$lang['dbconerr'] = "Verbindung zur Datenbank gescheitert: ";
|
||||
$lang['delcldgrpif'] = "Fehler beim Löschen der Servergruppen aus der Datenbank: %s";
|
||||
$lang['delcldgrpsc'] = "Knowledge der Servergruppen für %s User erfolgreich gelöscht.";
|
||||
$lang['delclientsif'] = "%s Clients aus der Ranksystem Datenbank gelöscht!";
|
||||
$lang['delclientssc'] = "%s Clients aus der Ranksystem Datenbank erfolgreich gelöscht!";
|
||||
$lang['errgrpid'] = "Your changes were not saved to the database due errors occured. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Fehler beim Abholen der Servergruppenliste: ";
|
||||
$lang['errlogin'] = "Benutzername und/oder Passwort sind falsch! Versuche es erneut...";
|
||||
$lang['errlogin2'] = "Brute force Schutz: Bitte versuche es in %s Sekunden erneut!";
|
||||
$lang['errlogin3'] = "Brute force Schutz: Zu viele Fehlversuche. Für 300 Sekunden gesperrt!";
|
||||
$lang['error'] = "Fehler ";
|
||||
$lang['errorts3'] = "TS3 Fehler: ";
|
||||
$lang['errperm'] = "Bitte überprüfe die Dateiberechtigungen für das Verzeichnis '%s'!";
|
||||
$lang['errremgrp'] = "Fehler beim Entfernen des Users mit der eindeutigen Client-ID %s aus der Servergruppe mit der Servergruppen-Datenbank-ID %s!";
|
||||
$lang['errremdb'] = "Fehler beim Löschen des Users mit der eindeutigen Client-ID %s aus der Ranksystem Datenbank!";
|
||||
$lang['errselusr'] = "Bitte wähle zumindest einen User!";
|
||||
@@ -77,13 +87,14 @@ $lang['listsumo'] = "ges. online Zeit";
|
||||
$lang['listuid'] = "eindeutige Client-ID";
|
||||
$lang['login'] = "Login";
|
||||
$lang['msg0001'] = "eingesetzte Version: %s";
|
||||
$lang['msg0002'] = "Verfügbare Befehle sind:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\terhalte Liste der Befehle\n[B]!version[/B]\t\t\t\t\t\t\t\t erhalte die aktuelle Version\n[B]!update[/B], [B]!checkupdate[/B]\t\t prüfe auf neue Version und update\n[B]!next[/B], [B]!nextup[/B]\t\t\t\t\t\t erhalte die Zeit zur nächsten Rangsteigerung\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\tden Ranksystem bot neu starten\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t den Ranksystem Bot stoppen";
|
||||
$lang['msg0002'] = "Verfügbare Befehle sind:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t erhalte Liste der Befehle\n[B]!version[/B]\t\t\t\t\t\t\t\t erhalte die aktuelle Version\n[B]!update[/B], [B]!checkupdate[/B]\t\t\tprüfe auf neue Version und update\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t bereinge User-Datenbank\n[B]!next[/B], [B]!nextup[/B]\t\t\t\t\t\t erhalte die Zeit zur nächsten Rangsteigerung\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\tden Ranksystem bot neu starten\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t den Ranksystem Bot stoppen";
|
||||
$lang['msg0003'] = "Du bist nicht berechtigt diesen Befehl abzusetzen!";
|
||||
$lang['msg0004'] = "Client %s (%s) fordert Abschaltung.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Client %s (%s) fordert Neustart.";
|
||||
$lang['msg0008'] = "Update check erfolgt. Wenn eine neue Version bereit steht, erfolgt das Update unverzüglich.";
|
||||
$lang['msg0009'] = "Die Bereinigung der Userdatenbank wurde gestartet. Für mehr Informationen werfe einen Blick in die Ranksystem-Log.";
|
||||
$lang['nocount'] = "User %s (eindeutige Client-ID: %s; Client-Datenbank-ID %s) ist ein Query-User oder ist mehrmals online (nur erste Verbindung zählt) -> diese wird nicht gewertet!";
|
||||
$lang['noentry'] = "Keine Einträge gefunden..";
|
||||
$lang['pass'] = "Passwort";
|
||||
@@ -99,7 +110,7 @@ $lang['sccupcount'] = "Online Zeit von %s Sekunden erfolgreich zu den Benutzer
|
||||
$lang['setontime'] = "Zeit hinzufügen";
|
||||
$lang['setontimedesc'] = "Füge eine online Zeit den zuvor ausgewählten Usern hinzu. Jeder User erhält diese Zeit zusätzlich zur bestehenden.<br><br>Die eingegebene online Zeit wird direkt berücksichtigt für die Rangsteigerung und sollte sofort Wirkung zeigen.";
|
||||
$lang['sgrpadd'] = "Servergruppe %s (ID: %s) zu User %s (eindeutige Client-ID: %s; Client-Datenbank-ID %s) hinzugefügt.";
|
||||
$lang['sgrprerr'] = "Es ist ein Problem mit den Servergruppen des Users %s (eindeutige Client-ID: %s; Client-Datenbank-ID %s) aufgetreten!";
|
||||
$lang['sgrprerr'] = "Betroffener User: %s (unique Client-ID: %s; Client-database-ID %s) und ServerGruppe %s (ID: %s).";
|
||||
$lang['sgrprm'] = "Servergruppe %s (ID: %s) von User %s (eindeutige Client-ID: %s; Client-Datenbank-ID %s) entfernt.";
|
||||
$lang['size_byte'] = "B";
|
||||
$lang['size_kib'] = "KiB";
|
||||
@@ -124,6 +135,7 @@ $lang['stag0011'] = "Limit gleichzeitiger Gruppen: ";
|
||||
$lang['stag0012'] = "setze Gruppe(n)";
|
||||
$lang['stag0013'] = "Addon ON/OFF";
|
||||
$lang['stag0014'] = "Schalte das Addon ON (aktiv) oder OFF (inaktiv).<br><br>Beim Deaktivieren des Addons wird eine etwaige stats/ Seite ausgeblendet.";
|
||||
$lang['stag0015'] = "Du konntest nicht auf dem TeamSpeak gefunden werden. Bitte %sklicke hier%s um dich zunächst zu verifizieren.";
|
||||
$lang['stix0001'] = "Server Statistiken";
|
||||
$lang['stix0002'] = "Anzahl User";
|
||||
$lang['stix0003'] = "zeige Liste aller User";
|
||||
@@ -220,6 +232,7 @@ $lang['stna0003'] = "Kürzel";
|
||||
$lang['stna0004'] = "Anzahl";
|
||||
$lang['stna0005'] = "Versionen";
|
||||
$lang['stna0006'] = "Plattformen";
|
||||
$lang['stna0007'] = "Prozent";
|
||||
$lang['stnv0001'] = "Server News";
|
||||
$lang['stnv0002'] = "Schließen";
|
||||
$lang['stnv0003'] = "Client Informationen aktualisieren";
|
||||
@@ -242,7 +255,7 @@ $lang['stnv0019'] = "Statistiken - Inhaltserläuterung";
|
||||
$lang['stnv0020'] = "Diese Seite zeigt u.a. eine Übersicht deiner persönlichen Statistiken und Aktivität auf dem TS3 Server.";
|
||||
$lang['stnv0021'] = "Die Informationen wurden gesammelt seit Beginn des Ranksystems, nicht seit Beginn des TS3 Servers.";
|
||||
$lang['stnv0022'] = "Die Seite erhält ihre Daten aus einer Datenbank. Es ist also möglich, dass die angezeigten Werte von den live Werten abweichen.";
|
||||
$lang['stnv0023'] = "Die Werte innerhalb der Donut-Charts können von der Anzahl der User abweichen. Hintergrund ist, dass die Daten in älteren Versionen des Ranksystems nicht gesammelt wurden.";
|
||||
$lang['stnv0023'] = "Die Werte der online Zeit aller User per Woche bzw. Monat werden nur alle 15 Minuten berechnet. Alle anderen Werte sollten nahezu live sein (maximal wenige Sekunden verzögert).";
|
||||
$lang['stnv0024'] = "Ranksystem - Statistiken";
|
||||
$lang['stnv0025'] = "Anzahl Einträge";
|
||||
$lang['stnv0026'] = "alle";
|
||||
@@ -260,7 +273,7 @@ $lang['stnv0037'] = "Zeigt nur Clients an, welche nicht ausgeschlossen sind.";
|
||||
$lang['stnv0038'] = "Zeigt nur Clients an, welche online sind";
|
||||
$lang['stnv0039'] = "Zeigt nur Clients an, welche nicht online sind";
|
||||
$lang['stnv0040'] = "Zeigt nur Clients an, welche sich in einer bestimmten Servergruppe befinden. Stellt das aktuelle Level (Rang) dar.<br>Ersetze <i>GROUPID</i> mi der gewünschten Servergruppen ID.";
|
||||
$lang['stnv0041'] = "Zeigt nur Clients an, welche dem ausgewählten 'zuletzt gesehen' Zeitraum entsprechen.<br>Ersetze <i>OPERATOR</i> mit '<' oder '>' oder '=' oder '!='.<br>Und ersetze <i>TIME</i> mit einem Zeitstempel (Timestamp) oder Datum mit im Format 'Y-m-d H-i' (Beispiel: 2016-06-18 20-25).<br>Vollständiges Beispiel: filter:lastseen:<:2016-06-18 20-25:";
|
||||
$lang['stnv0041'] = "Zeigt nur Clients an, welche dem ausgewählten 'zuletzt gesehen' Zeitraum entsprechen.<br>Ersetze <i>OPERATOR</i> mit '<' oder '>' oder '=' oder '!='.<br>Und ersetze <i>TIME</i> mit einem Zeitstempel (Timestamp) oder Datum mit im Format 'Y-m-d H-i' (Beispiel: 2016-06-18 20-25).<br>Vollständiges Beispiel: filter:lastseen:>:2016-06-18 20-25:";
|
||||
$lang['stnv0042'] = "Zeigt nur Clients an, welche sich im definierten Land befinden.<br>Ersetze <i>TS3-COUNTRY-CODE</i> mit dem gewünschten Land.<br>Für eine Liste der gültigen Ländercodes, bitte nach dem 'ISO 3166-1 alpha-2' googlen.";
|
||||
$lang['stnv0043'] = "verbinde zum TS3";
|
||||
$lang['stri0001'] = "Ranksystem Informationen";
|
||||
@@ -268,9 +281,9 @@ $lang['stri0002'] = "Was ist das Ranksystem?";
|
||||
$lang['stri0003'] = "Ein TS3 Bot, der automatisch Servergruppen an User für online Zeit oder aktive Zeit auf einem TeamSpeak 3 Server zuweist. Weiterhin sammelt es diverse Statistiken und stellt diese hier dar.";
|
||||
$lang['stri0004'] = "Wer hat das Ranksystem erstellt?";
|
||||
$lang['stri0005'] = "Wann wurde das Ranksystem erstellt?";
|
||||
$lang['stri0006'] = "Erste Alpha Version: 05/10/2014.";
|
||||
$lang['stri0007'] = "Erste Beta Version: 01/02/2015.";
|
||||
$lang['stri0008'] = "Die neuste Version kannst du auf der <a href=\"//ts-n.net/ranksystem.php\" target=\"_blank\">Ranksystem Website</a> sehen.";
|
||||
$lang['stri0006'] = "Erste Alpha Version: 05.10.2014.";
|
||||
$lang['stri0007'] = "Erste Beta Version: 01.02.2015.";
|
||||
$lang['stri0008'] = "Die neuste Version kannst du auf der <a href=\"//ts-n.net/ranksystem.php\" target=\"_blank\">Ranksystem Website</a> finden.";
|
||||
$lang['stri0009'] = "Wie wurde das Ranksystem erstellt?";
|
||||
$lang['stri0010'] = "Das Ranksystem basiert auf";
|
||||
$lang['stri0011'] = "Es nutzt weiterhin die folgenden Programmbibliotheken:";
|
||||
@@ -283,9 +296,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - für die Initiierung der niederländischen Übersetzung";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - für die französische Übersetzung";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - für die portugiesische Übersetzung";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - für den super Support auf GitHub & unserem Public TS3 server, die vielen Ideen, dem Pre-Testen des ganzen Shits & vielem mehr";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - für die vielen Ideen & dem Pre-Testen";
|
||||
$lang['stri0023'] = "Stable seit: 18.04.2016.";
|
||||
$lang['sttw0001'] = "Top User";
|
||||
$lang['sttw0002'] = "der Woche";
|
||||
$lang['sttw0003'] = "mit %s Stunden online Zeit";
|
||||
$lang['sttw0003'] = "mit %s %s online Zeit";
|
||||
$lang['sttw0004'] = "Top 10 im Vergleich";
|
||||
$lang['sttw0005'] = "Stunden (definiert 100 %)";
|
||||
$lang['sttw0006'] = "%s Stunden (%s%)";
|
||||
@@ -295,19 +311,21 @@ $lang['sttw0009'] = "Top 10 Vs Others; Aktive Zeit";
|
||||
$lang['sttw0010'] = "Top 10 Vs Others; Inaktive Zeit";
|
||||
$lang['sttw0011'] = "Top 10 (in Stunden)";
|
||||
$lang['sttw0012'] = "Andere %s User (in Stunden)";
|
||||
$lang['sttw0013'] = "mit %s Stunden aktive Zeit";
|
||||
$lang['sttw0013'] = "mit %s %s aktive Zeit";
|
||||
$lang['sttw0014'] = "Stunden";
|
||||
$lang['sttw0015'] = "Minuten";
|
||||
$lang['sttm0001'] = "des Monats";
|
||||
$lang['stta0001'] = "aller Zeiten";
|
||||
$lang['stve0001'] = "\nHallo %s,\nhier dein [B]Token[/B] um dich für das Ranksystem zu verifizieren:\n[B]%s[/B]\n\nTrage diesen auf der Ranksystem Website in das Feld Token ein.\n\nHast du diese Nachricht nicht angefordert, so ignoriere sie bitte. Bei wiederholtem Erhalt kontaktiere bitte einen Admin.";
|
||||
$lang['stve0001'] = "\nHallo %s,\num dich für das Ranksystem zu verifizieren klicke bitte auf den folgenden Link:\n[B]%s[/B]\n\nSollte dieser nicht funktionieren, so kannst du auch den folgenden Token manuell eintragen:\n%s\n\nHast du diese Nachricht nicht angefordert, so ignoriere sie bitte. Bei wiederholtem Erhalt kontaktiere bitte einen Admin.";
|
||||
$lang['stve0002'] = "Eine Nachricht mit dem Token wurde auf dem TS3 Server an dich versandt.";
|
||||
$lang['stve0003'] = "Bitte trage den token ein, welchen du auf dem TS3 server erhalten hast. Wenn du keine Nachricht bekommen hast, überprüfe, ob du die richtige eindeutige ID gewählt hast.";
|
||||
$lang['stve0004'] = "Der eingegebene Token stimmt nicht überein! Bitte versuche es erneut.";
|
||||
$lang['stve0005'] = "Gratulation, du wurdest erfolgreich verifiziert! Du kannst nun fortfahren...";
|
||||
$lang['stve0006'] = "Ein unbekannter Fehler ist passiert. Bei wiederholtem Vorkommen benachrichtige bitte einen Admin.";
|
||||
$lang['stve0007'] = "Verifiziere auf dem TeamSpeak";
|
||||
$lang['stve0008'] = "1. Wähle hier deine eindeutige Client-ID auf dem TS3 Server um dich zu verifizieren.";
|
||||
$lang['stve0007'] = "Verifizier-Prozess (über TeamSpeak)";
|
||||
$lang['stve0008'] = "Wähle hier deine eindeutige Client-ID auf dem TS3 Server um dich zu verifizieren.";
|
||||
$lang['stve0009'] = " -- wähle dich aus -- ";
|
||||
$lang['stve0010'] = "2. Du wirst einen Token auf dem TS3 Server erhalten, welcher hier einzugeben ist:";
|
||||
$lang['stve0010'] = "Du wirst einen Token auf dem TS3 Server erhalten, welcher hier einzugeben ist:";
|
||||
$lang['stve0011'] = "Token:";
|
||||
$lang['stve0012'] = "verifizieren";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +333,19 @@ $lang['time_sec'] = "Sek.";
|
||||
$lang['time_min'] = "Min.";
|
||||
$lang['time_hour'] = "Std.";
|
||||
$lang['time_day'] = "Tag(e)";
|
||||
$lang['upgrp0001'] = "Es ist die Servergruppe mit der ID %s im Parameter '%s' (Webinterface -> Kern) konfiguriert, jedoch ist diese Servergruppe nicht (mehr) auf dem TS3 Server vorhanden! Bitte korrigiere dies oder es können hierdurch Fehler auftreten!";
|
||||
$lang['upgrp0002'] = "Lade neues ServerIcon herunter";
|
||||
$lang['upgrp0003'] = "Fehler beim Schreiben des ServerIcons.";
|
||||
$lang['upgrp0004'] = "Fehler beim Herunterladen des ServerIcons vom TS3 Server: ";
|
||||
$lang['upgrp0005'] = "Fehler beim Löschen des ServerIcons.";
|
||||
$lang['upgrp0006'] = "Das ServerIcon wurde vom TS3 Server gelöscht. Dieses wurde nun auch aus dem Ranksystem entfernt.";
|
||||
$lang['upgrp0007'] = "Fehler beim Schreiben des Servergruppen-Icons bei Gruppe %s mit ID %s.";
|
||||
$lang['upgrp0008'] = "Fehler beim Herunterladen des Servergruppen-Icons bei Gruppe %s mit ID %s: ";
|
||||
$lang['upgrp0009'] = "Fehler beim Löschen des Servergruppen-Icons bei Gruppe %s mit ID %s.";
|
||||
$lang['upgrp0010'] = "Das Icon der Servergruppe %s mit der ID %s wurde vom TS3 Server gelöscht. Dieses wurde nun auch aus dem Ranksystem entfernt.";
|
||||
$lang['upgrp0011'] = "Lade neues Servergruppen-Icon für die Servergruppe %s mit der ID: %s herunter.";
|
||||
$lang['upinf'] = "Eine neue Version des Ranksystems ist verfügbar. Informiere Clients auf dem Server...";
|
||||
$lang['upinf2'] = "Das Ranksystem wurde kürzlich (%s) aktualisiert. Die %sChangelog%s enthält weitere Informationen über die enthaltenen Änderungen.";
|
||||
$lang['upmsg'] = "\nHey, eine neue Version des [B]Ranksystems[/B] ist verfügbar!\n\naktuelle Version: %s\n[B]neue Version: %s[/B]\n\nBitte schaue auf unsere Homepage für weitere Informationen [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\nStarte den Update Prozess im Hintergrund. [B]Bitte prüfe die ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Datenbank-Update erfolgreich durchgeführt";
|
||||
$lang['upuser'] = "User %s (eindeutige Client-ID: %s; Client-Datenbank-ID %s) erhält eine neue ges. online Zeit von %s (davon aktiv: %s).";
|
||||
@@ -323,12 +353,16 @@ $lang['upuserboost'] = "User %s (eindeutige Client-ID: %s; Client-Datenbank-ID
|
||||
$lang['upusrerr'] = "Die eindeutige Client-ID %s konnte auf dem TeamSpeak nicht erreicht werden!";
|
||||
$lang['upusrinf'] = "User %s wurde erfolgreich benachrichtigt.";
|
||||
$lang['user'] = "Benutzername";
|
||||
$lang['verify0001'] = "Bitte stelle sicher, dass du wirklich mit dem TS3 server verbunden bist!";
|
||||
$lang['verify0002'] = "Betrete, falls noch nicht geschehen, den Ranksystem %sVerifizierungs-Channel%s!";
|
||||
$lang['verify0003'] = "Wenn du wirklich zum TS3 Server verbunden bist, kontaktiere bitte dort einen Admin.<br>Dieser muss einen Verifizierungs-Channel auf dem TS3 Server erstellen. Danach ist der erstellte Channel im Ranksystem zu hinterlegen, was nur ein Admin tun kann.<br>Weitere Informationen findet dieser im Webinterface (-> Kern) des Ranksystems.<br><br>Bis dahin ist leider keine Verifizierung für das Ranksystem möglich! Sorry :( ";
|
||||
$lang['verify0004'] = "Keine User im Verifizierungs-Channel gefunden...";
|
||||
$lang['wi'] = "Webinterface";
|
||||
$lang['wiaction'] = "ausführen";
|
||||
$lang['wiadmhide'] = "unterdrücke ausgeschl. User";
|
||||
$lang['wiadmhidedesc'] = "Hiermit können vom Ranksystem ausgeschlossene User in der folgenden Auswahl unterdrückt werden.";
|
||||
$lang['wiadmuuid'] = "admin ID";
|
||||
$lang['wiadmuuiddesc'] = "Gebe hier die eindeutige Client-ID ein; als Administrator des Ranksystems<br><br>Diese wird benötigt um das Passwort des Webinterfaces resetten zu können.<br><br>Wenn hier keine eindeutige Client-ID angegeben ist, ist es nicht möglich das Passwort im Bedarfsfall zurückzusetzen.";
|
||||
$lang['wiadmuuiddesc'] = "Gebe hier die eindeutige Client-ID ein; als Administrator des Ranksystems.<br>Mehrere Admins können auch erfasst werden -> Komma getrennt!<br><br>Diese wird benötigt um das Passwort des Webinterfaces resetten zu können.<br>Wenn hier keine eindeutige Client-ID angegeben ist, ist es nicht möglich das Passwort im Bedarfsfall zurückzusetzen.<br><br>Auch sind hier hinterlegte Admins berechtigt, Admin-Befehle an den Bot zu schicken (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "Boost";
|
||||
$lang['wiboostdesc'] = "Gebe einen User auf dem TeamSpeak Server eine Servergruppe (ist manuell zu erstellen), welche hier für das Ranksystem als Boost Gruppe deklariert werden kann. Definiere hierfür noch einen Faktor (z.B. 2x) und eine Zeit, wie lange der Boost gewährt werden soll.<br>Umso höher der Faktor, umso schneller erreicht ein User den nächst höheren Rang.<br>Ist die Zeit abgelaufen, so wird dem betroffenen User die Servergruppe automatisch entfernt. Die Zeit beginnt in dem Moment zu laufen, in dem der User die Servergruppe erhält.<br><br>Servergruppen-ID=> Faktor=> Zeit (in Sekunden)<br><br>Beispiel:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>Hier werden den Usern in der Servergruppe mit der ID 12 dem Faktor 2 für 6000 Sekunden, den Usern in der Servergruppe 13 dem Faktor 3 für 2500 Sekunden gewährt, und so weiter...";
|
||||
$lang['wibot1'] = "Der Ranksystem Bot sollte gestoppt sein. Für mehr Informationen bitte die Log unterhalb prüfen!";
|
||||
@@ -403,8 +437,8 @@ $lang['winav9'] = "Update verfügbar!";
|
||||
$lang['winav10'] = "Bitte nutze das Webinterface nur via %s HTTPS%s Eine Verschlüsselung ist wichtig um die Privatsphäre und Sicherheit zu gewährleisten.%sUm HTTPS nutzen zu können, muss der Webserver eine SSL Verbindung unterstützen.";
|
||||
$lang['winav11'] = "Bitte hinterlege die eindeutige Client-ID des Admins des Ranksystems (Anderes -> admin ID). Dies ist sehr wichtig im Falle des Verlustes der Logindaten für das Webinterface.";
|
||||
$lang['winav12'] = "Addons";
|
||||
$lang['winxinfo'] = "Befehl \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Erlaubt einen User auf dem TeamSpeak3 Server den Befehl \"nextup\" dem Ranksystem (Query) Bot als private Textnachricht zu schreiben.<br><br>Als Antwort erhält der User eine Nachricht mit der benötigten Zeit zur nächsten Rangsteigerung.<br><br><b>deaktiviert</b> - Die Funktion ist deaktiviert. Der Befehl 'nextup' wird ignoriert.<br><b>erlaubt - nur nächsten Rang</b> - Gibt die benötigte Zeit zum nächsten Rang zurück.<br><b>erlaubt - alle nächsten Ränge</b> - Gibt die benötigte Zeit für alle höheren Ränge zurück.<br><br>Unter folgender URL ein Beispiel zum Setzen einer Verlinkung mit \"client://\" für den Ranksystem (Query) Bot, da nicht unbedingt für alle die Query-User sichtbar sind:<br>http://ts-n.net/lexicon.php?showid=98#lexindex<br><br>Dieser kann dann mit dem [URL] Tag in einem Channel als Link eingefügt werden.<br>http://ts-n.net/lexicon.php?showid=97#lexindex";
|
||||
$lang['winxinfo'] = "Befehl \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Erlaubt einen User auf dem TeamSpeak3 Server den Befehl \"!nextup\" dem Ranksystem (Query) Bot als private Textnachricht zu schreiben.<br><br>Als Antwort erhält der User eine Nachricht mit der benötigten Zeit zur nächsten Rangsteigerung.<br><br><b>deaktiviert</b> - Die Funktion ist deaktiviert. Der Befehl '!nextup' wird ignoriert.<br><b>erlaubt - nur nächsten Rang</b> - Gibt die benötigte Zeit zum nächsten Rang zurück.<br><b>erlaubt - alle nächsten Ränge</b> - Gibt die benötigte Zeit für alle höheren Ränge zurück.<br><br>Unter folgender URL ein Beispiel zum Setzen einer Verlinkung mit \"client://\" für den Ranksystem (Query) Bot, da nicht unbedingt für alle die Query-User sichtbar sind:<br>http://ts-n.net/lexicon.php?showid=98#lexindex<br><br>Dieser kann dann mit dem [URL] Tag in einem Channel als Link eingefügt werden.<br>http://ts-n.net/lexicon.php?showid=97#lexindex";
|
||||
$lang['winxmode1'] = "deaktiviert";
|
||||
$lang['winxmode2'] = "erlaubt - nur nächster Rang";
|
||||
$lang['winxmode3'] = "erlaubt - alle nächsten Ränge";
|
||||
@@ -474,7 +508,7 @@ $lang['wits3dchdesc'] = "Die channel-ID, mit der sich der Bot verbindet.<br><br
|
||||
$lang['wits3host'] = "TS3 Hostadresse";
|
||||
$lang['wits3hostdesc'] = "TeamSpeak 3 Server Adresse<br>(IP oder DNS)";
|
||||
$lang['wits3sm'] = "Slowmode";
|
||||
$lang['wits3smdesc'] = "Mit dem Slowmode werden die Query-Anfragen an den TeamSpeak Server reduziert. Dies schützt vor einem Ban aufgrund von flooding.<br>TeamSpeak Query Befehle werden mit dieser Funktion verzögert abgeschickt.<br><br>!!! AUCH REDUZIERT DER SLOWMODE DIE CPU USAGE !!!<br><br>Die Aktivierung ist nicht empfohlen, wenn nicht benötigt. Die Verzögerung (delay) erhöht die Laufzeit eines Durchgangs des Bots, dadurch wird er unpräziser. Umso höher der Delay, umso unpräziser sind die Ergebnisse.";
|
||||
$lang['wits3smdesc'] = "Mit dem Slowmode werden die Query-Anfragen an den TeamSpeak Server reduziert. Dies schützt vor einem Ban aufgrund von flooding.<br>TeamSpeak Query Befehle werden mit dieser Funktion verzögert abgeschickt.<br><br>!!! AUCH REDUZIERT DER SLOWMODE DIE CPU USAGE !!!<br><br>Die Aktivierung ist nicht empfohlen, wenn nicht benötigt. Die Verzögerung (delay) erhöht die Laufzeit eines Durchgangs des Bots, dadurch wird er unpräziser. Umso höher der Delay, umso unpräziser sind die Ergebnisse.<br><br>Die letzte Spalte zeigt die benötigte Laufzeit für einen Durchgang (in Sekunden):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Folglich werden die Werte (Zeiten) im ultra delay um ca. 65 Sekunden ungenau! Je nach Umfang, was zu tun ist bzw. Servergröße noch höher!";
|
||||
$lang['wits3qnm'] = "Botname";
|
||||
$lang['wits3qnm2'] = "2. Botname";
|
||||
$lang['wits3qnm2desc'] = "Ein zweiter Botname, falls der erste bereits genutzt wird.";
|
||||
@@ -493,6 +527,8 @@ $lang['wiuptime'] = "Intervall";
|
||||
$lang['wiuptimedesc'] = "Gib an alle wie viel Sekunden das Ranksystem prüfen soll, ob ein Update verfügbar ist.<br>Beachte, bei jeder Prüfung werden die hinterlegten User über ein verfügbares Update benachrichtigt. Ist kein hinterlegter User online, wird mit dem nächsten Intervall versucht zu benachrichtigen.";
|
||||
$lang['wiupuid'] = "Empfänger";
|
||||
$lang['wiupuiddesc'] = "Eine Komma getrennte Liste von eindeutigen Client-IDs, welche via privater Textnachricht auf dem TeamSpeak über ein Update informiert werden sollen.";
|
||||
$lang['wiverify'] = "Verifizierung-Channel";
|
||||
$lang['wiverifydesc'] = "Hier ist die Channel-ID des Verifizierungschannels zu hinterlegen.<br><br>Dieser Channel ist <u>manuell</u> auf dem TeamSpeak Server anzulegen. Name, Berechtigungen und sonstige Eigenschaften können völlig nach Belieben gesetzt werden; lediglich sollten User ihn betreten können!<br><br>Die Verifizierung erfolgt durch den jeweiligen Benutzer selbst auf der Statistik-Seite (/stats/). Sie ist nur dann erforderlich, wenn eine Zuordnung des Webseitenbesuchers mit dem TeamSpeak-User nicht automatisch erfolgen kann.<br><br>Für die Verifizierung muss sich der User auf dem TeamSpeak Server in den Verifizierungschannel begeben. Dort kann er den Token empfangen, mit welchem er sich für die Statistik-Seite verifiziert.";
|
||||
$lang['wivlang'] = "Sprache";
|
||||
$lang['wivlangdesc'] = "Wähle die Standardsprache des Ranksystems.<br><br>Die Sprache kann über die Webseite für jeden Besucher übersteuert werden und wird dann für die laufende Sitzung gespeichert.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang = array();
|
||||
$lang['adduser'] = "User %s (unique Client-ID: %s; Client-database-ID %s) is unknown -> added to the Ranksystem now.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "User %s (unique Client-ID: %s) got a new TeamSpeak Client-database-ID (%s). Update the old Client-database-ID (%s) and reset collected times!";
|
||||
$lang['crawl'] = "Scanning for connected users and count the activity...";
|
||||
$lang['clean'] = "Scanning for clients to delete...";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "clean period";
|
||||
$lang['cleanpdesc'] = "Set a time that has to elapse before the 'clean clients' runs next.<br><br>Set a time in seconds.<br><br>Recommended is once a day, because the client cleaning needs much time for bigger databases.";
|
||||
$lang['cleanrs'] = "Clients in the Ranksystem database: %s";
|
||||
$lang['cleants'] = "Clients found in the TeamSpeak database: %s (of %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s).";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "%s <small>days</small>";
|
||||
$lang['dbconerr'] = "Failed to connect to database: ";
|
||||
$lang['delcldgrpif'] = "Error while removing the knowledge for servergroups: %s";
|
||||
$lang['delcldgrpsc'] = "Knowledge about servergroups for %s User successfully removed.";
|
||||
$lang['delclientsif'] = "%s Clients deleted out of the Ranksystem database!";
|
||||
$lang['delclientssc'] = "%s Clients successfully deleted out of the Ranksystem database!";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "Username and/or password are incorrect! Try again...";
|
||||
$lang['errlogin2'] = "Brute force protection: Try it again in %s seconds!";
|
||||
$lang['errlogin3'] = "Brute force protection: To much misstakes. Banned for 300 Seconds!";
|
||||
$lang['error'] = "Error ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Error while removing user with unique Client-ID %s out of the servergroup with servergroup-database-ID %s!";
|
||||
$lang['errremdb'] = "Error while removing user with unique Client-ID %s out of the Ranksystem database!";
|
||||
$lang['errselusr'] = "Please choose at least one user!";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "sum. online time";
|
||||
$lang['listuid'] = "unique Client-ID";
|
||||
$lang['login'] = "Login";
|
||||
$lang['msg0001'] = "running version: %s";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0003'] = "You are not eligible for this command!";
|
||||
$lang['msg0004'] = "Client %s (%s) requests shutdown.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Client %s (%s) requests restart.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "User %s (unique Client-ID: %s; Client-database-ID %s) is a query-user or is several times online (only first connection counts) -> this will not count!";
|
||||
$lang['noentry'] = "No entries found..";
|
||||
$lang['pass'] = "Password";
|
||||
@@ -99,7 +109,7 @@ $lang['sccupcount'] = "Added successfully an online time of %s seconds to the
|
||||
$lang['setontime'] = "add time";
|
||||
$lang['setontimedesc'] = "Add online time to the previous selected clients. Each user will get this time additional to their old online time.<br><br>The entered online time will be considered for the rank up and should take effect immediately.";
|
||||
$lang['sgrpadd'] = "Grant servergroup %s (ID: %s) to user %s (unique Client-ID: %s; Client-database-ID %s).";
|
||||
$lang['sgrprerr'] = "An error with the servergroup of the user %s (unique Client-ID: %s; Client-database-ID %s) occured!";
|
||||
$lang['sgrprerr'] = "Affected user: %s (unique Client-ID: %s; Client-database-ID %s) and server group %s (ID: %s).";
|
||||
$lang['sgrprm'] = "Removed servergroup %s (ID: %s) from user %s (unique Client-ID: %s; Client-database-ID %s).";
|
||||
$lang['size_byte'] = "B";
|
||||
$lang['size_kib'] = "KiB";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Limit of simultaneous groups: ";
|
||||
$lang['stag0012'] = "set groups";
|
||||
$lang['stag0013'] = "Addon ON/OFF";
|
||||
$lang['stag0014'] = "Turn the addon on (enabled) or off (disabled).<br><br>On disabling the addon a possible part on the stats/ site will be hidden.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "Server statistics";
|
||||
$lang['stix0002'] = "Total users";
|
||||
$lang['stix0003'] = "View details";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Code";
|
||||
$lang['stna0004'] = "Count";
|
||||
$lang['stna0005'] = "Versions";
|
||||
$lang['stna0006'] = "Platforms";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "Server news";
|
||||
$lang['stnv0002'] = "Close";
|
||||
$lang['stnv0003'] = "Refresh client information";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "My statistics - Page content";
|
||||
$lang['stnv0020'] = "This page contains a overall summary of your personal statistics and activity on the server.";
|
||||
$lang['stnv0021'] = "The informations are collected since the beginning of the Ranksystem, they are not since the beginning of the TeamSpeak server.";
|
||||
$lang['stnv0022'] = "This page receives its values out of a database. So the values might be delayed a bit.";
|
||||
$lang['stnv0023'] = "The sum inside of the donut charts may differ to the amount of 'Total user'. The reason is that this data weren't collected with older versions of the Ranksystem.";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "Ranksystem - Statistics";
|
||||
$lang['stnv0025'] = "Limit entries";
|
||||
$lang['stnv0026'] = "all";
|
||||
@@ -260,7 +272,7 @@ $lang['stnv0037'] = "Show only clients, which are not excepted.";
|
||||
$lang['stnv0038'] = "Show only clients, which are online.";
|
||||
$lang['stnv0039'] = "Show only clients, which are not online.";
|
||||
$lang['stnv0040'] = "Show only clients, which are in defined group. Represent the actuel rank/level.<br>Replace <i>GROUPID</i> with the wished servergroup ID.";
|
||||
$lang['stnv0041'] = "Show only clients, which are selected by lastseen.<br>Replace <i>OPERATOR</i> with '<' or '>' or '=' or '!='.<br>And replace <i>TIME</i> with a timestamp or date with format 'Y-m-d H-i' (example: 2016-06-18 20-25).<br>Full example: filter:lastseen:<:2016-06-18 20-25:";
|
||||
$lang['stnv0041'] = "Show only clients, which are selected by lastseen.<br>Replace <i>OPERATOR</i> with '<' or '>' or '=' or '!='.<br>And replace <i>TIME</i> with a timestamp or date with format 'Y-m-d H-i' (example: 2016-06-18 20-25).<br>Full example: filter:lastseen:>:2016-06-18 20-25:";
|
||||
$lang['stnv0042'] = "Show only clients, which are from defined country.<br>Replace <i>TS3-COUNTRY-CODE</i> with the wished country.<br>For list of codes google for ISO 3166-1 alpha-2";
|
||||
$lang['stnv0043'] = "connect TS3";
|
||||
$lang['stri0001'] = "Ranksystem information";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - for initialisation dutch translation";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - for french translation";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - for portuguese translation";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "Top users";
|
||||
$lang['sttw0002'] = "Of the week";
|
||||
$lang['sttw0003'] = "With %s hours online time";
|
||||
$lang['sttw0003'] = "With %s %s online time";
|
||||
$lang['sttw0004'] = "Top 10 compared";
|
||||
$lang['sttw0005'] = "Hours (Defines 100 %)";
|
||||
$lang['sttw0006'] = "%s hours (%s%)";
|
||||
@@ -295,19 +310,21 @@ $lang['sttw0009'] = "Top 10 vs others in active time";
|
||||
$lang['sttw0010'] = "Top 10 vs others in inactive time";
|
||||
$lang['sttw0011'] = "Top 10 (in hours)";
|
||||
$lang['sttw0012'] = "Other %s users (in hours)";
|
||||
$lang['sttw0013'] = "With %s hours active time";
|
||||
$lang['sttw0013'] = "With %s %s active time";
|
||||
$lang['sttw0014'] = "hours";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "Of the month";
|
||||
$lang['stta0001'] = "Of all time";
|
||||
$lang['stve0001'] = "\nHello %s,\nhere a [B]token[/B] to verify you for the Ranksystem:\n[B]%s[/B]\n\nPut this on the Ranksystem page inside the token field.\n\nIf you didn't request this message, please ignore it. If you get it repeated times, please contact an admin.";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "A message with the token was sent to you on the TS3 server.";
|
||||
$lang['stve0003'] = "Please enter the token, which you received on the TS3 server. If you have not received a message, please be sure you have chosen the correct unique ID.";
|
||||
$lang['stve0004'] = "The entered token does not match! Please try it again.";
|
||||
$lang['stve0005'] = "Congratulations, you are successfully verified! You can now go on..";
|
||||
$lang['stve0006'] = "An unknown error happened. Please try it again. On repeated times contact an admin";
|
||||
$lang['stve0007'] = "Verify on TeamSpeak";
|
||||
$lang['stve0008'] = "1. Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0008'] = "Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0009'] = " -- select yourself -- ";
|
||||
$lang['stve0010'] = "2. You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0010'] = "You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0011'] = "Token:";
|
||||
$lang['stve0012'] = "verify";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +332,19 @@ $lang['time_sec'] = "Sec(s)";
|
||||
$lang['time_min'] = "Min(s)";
|
||||
$lang['time_hour'] = "Hour(s)";
|
||||
$lang['time_day'] = "Day(s)";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter (webinterface -> core), but that servergroup ID isn't existent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "A new Version of the Ranksystem is available; Inform clients on server...";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nHey, a new version of the [B]Ranksystem[/B] is available!\n\ncurrent version: %s\n[B]new version: %s[/B]\n\nPlease check out our site for more informations [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\nStarting the update process in background. [B]Please check the ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Database update successfully executed.";
|
||||
$lang['upuser'] = "User %s (unique Client-ID: %s; Client-database-ID %s) gets a new count (sum. online time) of %s (thereof active %s).";
|
||||
@@ -323,12 +352,16 @@ $lang['upuserboost'] = "User %s (unique Client-ID: %s; Client-database-ID %s) g
|
||||
$lang['upusrerr'] = "The unique Client-ID %s couldn't reached on the TeamSpeak!";
|
||||
$lang['upusrinf'] = "User %s was successfully informed.";
|
||||
$lang['user'] = "Username";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Webinterface";
|
||||
$lang['wiaction'] = "action";
|
||||
$lang['wiadmhide'] = "hide excepted clients";
|
||||
$lang['wiadmhidedesc'] = "To hide excepted user in the following selection";
|
||||
$lang['wiadmuuid'] = "admin ID";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br><br>This is required to reset the password of the webinterface.<br><br>Is there no unique Client-ID address defined, it is not possible to reset the password!";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br>Also multiple Client-IDs are possible -> comma separated<br><br>This is required to reset the password of the webinterface.<br>Is there no unique Client-ID address defined, it is not possible to reset the password!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "boost";
|
||||
$lang['wiboostdesc'] = "Give an user on your TeamSpeak server a servergroup (have to be created manually), which you can declare here as boost group. Define also a factor which should be used (for example 2x) and a time, how long the boost should be rated.<br>The higher the factor, the faster an user reaches the next higher rank.<br>Is the time expired, the boost servergroup get automatically removed from the concerned user. The time starts running as soon as the user gets the servergroup.<br><br>servergroup ID => factor => time (in seconds)<br><br>Each entry have to separate from next with a comma.<br><br>Example:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>On this an user in servergroup 12 get the factor 2 for the next 6000 seconds, an user in servergroup 13 get the factor 3 for 2500 seconds, and so on...";
|
||||
$lang['wibot1'] = "Ranksystem bot should be stopped. Check the log below for more information!";
|
||||
@@ -403,8 +436,8 @@ $lang['winav9'] = "Update available!";
|
||||
$lang['winav10'] = "Please use the webinterface only via %s HTTPS%s An encryption is critical to ensure your privacy and security.%sTo be able to use HTTPS your webserver needs to support an SSL connection.";
|
||||
$lang['winav11'] = "Please enter the unique Client-ID of the admin of the Ranksystem (Other -> admin ID). This is very important in case you lost your login details for the webinterface (to reset these).";
|
||||
$lang['winav12'] = "Addons";
|
||||
$lang['winxinfo'] = "Command \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>disabled</b> - The function is deactivated. The command 'nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxinfo'] = "Command \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"!nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>disabled</b> - The function is deactivated. The command '!nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxmode1'] = "disabled";
|
||||
$lang['winxmode2'] = "allowed - only next rank";
|
||||
$lang['winxmode3'] = "allowed - all next ranks";
|
||||
@@ -474,7 +507,7 @@ $lang['wits3dchdesc'] = "The channel-ID, the bot should connect with.<br><br>Th
|
||||
$lang['wits3host'] = "TS3 Hostaddress";
|
||||
$lang['wits3hostdesc'] = "TeamSpeak 3 Server address<br>(IP oder DNS)";
|
||||
$lang['wits3sm'] = "Slowmode";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the bot, which makes it imprecisely.";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the bot, which makes it imprecisely.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Bot name";
|
||||
$lang['wits3qnm2'] = "2nd bot name";
|
||||
$lang['wits3qnm2desc'] = "A fallback bot name, if the first one is already in use.";
|
||||
@@ -493,6 +526,8 @@ $lang['wiuptime'] = "Interval";
|
||||
$lang['wiuptimedesc'] = "Enter here how much seconds have to gone till the Ranksystem should check for available updates.<br><br>Attention, for each check the listed user gets a notification. If no one of the listed users is online, the Ranksystem will try to notificate with the next interval.";
|
||||
$lang['wiupuid'] = "Recipient";
|
||||
$lang['wiupuiddesc'] = "A comma separate list of unique Client-IDs, which shoud be informed on the TeamSpeak via private message for available updates.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Language";
|
||||
$lang['wivlangdesc'] = "Choose a default language for the Ranksystem.<br><br>The language is also selectable on the websites for the users and will be stored for the session.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang = array();
|
||||
$lang['adduser'] = "L'utilisateur %s (Identifiant unique: %s; ID dans la base de donnée: %s) est inconnu -> Il vient d'être ajouté dans le Ranksystem.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "L'utilisateur %s (Identifiant unique: %s) a obtenu un nouveau TeamSpeak ID dans la base de donnée (%s). Mettez à jour l'ancien ID dans la base de donnée (%s) et réinitialisez les heures collectées !";
|
||||
$lang['crawl'] = "Scan des utilisateurs connectés et comptage de leur activité...";
|
||||
$lang['clean'] = "Scan des clients, certains doivent être supprimer...";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "Période de nettoyage";
|
||||
$lang['cleanpdesc'] = "Définissez un délai qui doit s'écouler avant que les 'clients propres' ne soient exécutés.<br><br>Mettez un temps en seconde.<br><br>C'est recommandé de la faire une fois par jour, le nettoyage du client nécessite beaucoup de temps pour les bases de données plus importantes.";
|
||||
$lang['cleanrs'] = "Clients dans la base de donnée du Ranksystem: %s";
|
||||
$lang['cleants'] = "Clients trouvé dans la base de donnée du TeamSpeak: %s (De %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s). Please check the permission for the folder 'avatars'!";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "%s <small>jours</small>";
|
||||
$lang['dbconerr'] = "Échec de la connexion à la base de données: ";
|
||||
$lang['delcldgrpif'] = "Erreur lors de la suppression des connaissances pour les groupes de serveurs: %s";
|
||||
$lang['delcldgrpsc'] = "Connaissances sur les groupes de serveurs de l'utilisateur %s ont été bien supprimées.";
|
||||
$lang['delclientsif'] = "%s Clients supprimés de la base de données du Ranksystem !";
|
||||
$lang['delclientssc'] = "%s Clients supprimés avec succès de la base de données du Ranksystem !";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "Nom d'utilisateur et/ou mot de passe erronés ! Réessayer de nouveau...";
|
||||
$lang['errlogin2'] = "Protection contre la brutalitée: Essayez à nouveau dans %s secondes!";
|
||||
$lang['errlogin3'] = "Protection contre la brutalitée: Vous avez fait trop d'erreurs. Ainsi résulte un banissement de 300 secondes !";
|
||||
$lang['error'] = "Erreur ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Erreur lors de la suppression de l'utilisateur avec l'identifiant unique %s qui est hors du groupe de serveur possédant l'id dans la base de données %s!";
|
||||
$lang['errremdb'] = "Erreur lors de la suppression de l'utilisateur avec l'identifiant unique %s qui est hors de la base de données du Ranksystem !";
|
||||
$lang['errselusr'] = "Veuillez choisir au moins un utilisateur !";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "Temps en ligne";
|
||||
$lang['listuid'] = "Identifiant unique de l'utilisateur";
|
||||
$lang['login'] = "S'identifier";
|
||||
$lang['msg0001'] = "version actuelle: %s";
|
||||
$lang['msg0002'] = "Les commandes valides sont:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t obtenir une liste de commandes\n[B]!version[/B]\t\t\t\t\t\t\t\t obtenir la version du Ranksystem\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t obtenir le temps pour le prochain rang \n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\tRedémarrer le bot du ranksystem\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t Arrêter le bot du ranksystem";
|
||||
$lang['msg0002'] = "Les commandes valides sont:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t obtenir une liste de commandes\n[B]!version[/B]\t\t\t\t\t\t\t\t obtenir la version du Ranksystem\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t obtenir le temps pour le prochain rang \n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\tRedémarrer le bot du ranksystem\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t Arrêter le bot du ranksystem";
|
||||
$lang['msg0003'] = "Vous n'êtes pas admissible à cette commande !";
|
||||
$lang['msg0004'] = "Client %s (%s) demmande l'arrêt.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Client %s (%s) demmande le redémarrage.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "L'utilisateur %s (Identifiant unique: %s; ID dans la base de donnée %s) est un utilisateur query ou est plusieurs fois en ligne (seulement les premiers comptages de connexion ) -> Cela ne compte pas !";
|
||||
$lang['noentry'] = "Aucune entrée trouvée...";
|
||||
$lang['pass'] = "Mot de passe";
|
||||
@@ -99,7 +109,7 @@ $lang['sccupcount'] = "Ajout avec succès d'un temps en ligne de %s secondes a
|
||||
$lang['setontime'] = "ajouter du temps";
|
||||
$lang['setontimedesc'] = "Ajouter du temps en ligne aux anciens clients sélectionnés. Chaque utilisateur obtiendra ce temps supplémentaire à son ancien temps en ligne.<br><br>Le nouveau temps en ligne entré sera considéré pour le rang et devrait prendre effet immédiatement.";
|
||||
$lang['sgrpadd'] = "Groupe de serveur %s (ID: %s) accordé à l'utilisateur %s (Identifiant unique: %s; ID dans la base de donnée %s).";
|
||||
$lang['sgrprerr'] = "Il s'est produit un problème avec le groupe de serveur de l'utilisateur %s (Identifiant unique: %s; ID dans la base de donnée %s) !";
|
||||
$lang['sgrprerr'] = "Affected user: %s (unique Client-ID: %s; Client-database-ID %s) and server group %s (ID: %s).";
|
||||
$lang['sgrprm'] = "Groupe de serveur %s (ID: %s) supprimé à l'utilisateur %s (Identifiant unique: %s; ID dans la base de donnée %s).";
|
||||
$lang['size_byte'] = "B";
|
||||
$lang['size_kib'] = "KiB";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Limite des groupes simultanés: ";
|
||||
$lang['stag0012'] = "Définir un groupe";
|
||||
$lang['stag0013'] = "Addon ON/OFF";
|
||||
$lang['stag0014'] = "Tournez l'Addon en on (activé) ou off (désactivé).<br><br>Lors de la désactivation de l'addon une partie possible sur les stats / site sera masqué.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "Statistiques du serveur";
|
||||
$lang['stix0002'] = "Nombre total d'utilisateurs";
|
||||
$lang['stix0003'] = "Voir les détails";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Code";
|
||||
$lang['stna0004'] = "Nombre";
|
||||
$lang['stna0005'] = "Versions";
|
||||
$lang['stna0006'] = "Plateformes";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "News du serveur";
|
||||
$lang['stnv0002'] = "Fermer";
|
||||
$lang['stnv0003'] = "Actualiser les informations des clients";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "Mes statistiques - Contenu de la page";
|
||||
$lang['stnv0020'] = "Cette page contient un résumé général de vos statistiques et activités personnelles sur le serveur.";
|
||||
$lang['stnv0021'] = "Les informations sont collectées depuis la mise en place du Ranksystem, elles ne sont pas depuis le début du serveur TeamSpeak.";
|
||||
$lang['stnv0022'] = "Cette page reçoit ses valeurs d'une base de données. Les valeurs peuvent donc être retardées un peu.";
|
||||
$lang['stnv0023'] = "La somme à l'intérieur des diagrammes circulaire peut différer du montant de 'Total utilisateur'. La raison en est que ces données n'ont pas été collectées avec les anciennes versions du Ranksystem.";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "Ranksystem - Statistiques";
|
||||
$lang['stnv0025'] = "Limiter les entrées";
|
||||
$lang['stnv0026'] = "tout";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"http://whitecs.ro/\" target=\"_blank\">SakaLuX<
|
||||
$lang['stri0018'] = "<a href=\"https://r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - pour l'initialisation de la traduction en néerlandais";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - for french translation";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - for portuguese translation";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "Top des utilisateurs";
|
||||
$lang['sttw0002'] = "De la semaine";
|
||||
$lang['sttw0003'] = "Avec %s heures de temps en ligne";
|
||||
$lang['sttw0003'] = "Avec %s %s de temps en ligne";
|
||||
$lang['sttw0004'] = "Top 10 comparés";
|
||||
$lang['sttw0005'] = "Heures (Définit 100%)";
|
||||
$lang['sttw0006'] = "%s heures (%s%)";
|
||||
@@ -295,19 +310,21 @@ $lang['sttw0009'] = "Top 10 vs autres en temps actif";
|
||||
$lang['sttw0010'] = "Top 10 vs autres en temps inactif";
|
||||
$lang['sttw0011'] = "Top 10 (en heures)";
|
||||
$lang['sttw0012'] = "Autres %s utilisateurs (en heures)";
|
||||
$lang['sttw0013'] = "Avec %s heures de temps actif";
|
||||
$lang['sttw0013'] = "Avec %s %s de temps actif";
|
||||
$lang['sttw0014'] = "heures";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "Du mois";
|
||||
$lang['stta0001'] = "De tous les temps";
|
||||
$lang['stve0001'] = "\nBonjour %s,\nici ce trouve un [B]jeton[/B] pour vous vérifier pour le Ranksystem:\n[B]%s[/B]\n\nMettez cela sur la page Ranksystem dans le champ du jeton.\n\nSi vous n'avez pas demandé ce message, veuillez l'ignorer. Si vous l'obtenez à plusieurs reprises, s'il vous plaît contacter un admin.";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "Un message avec le jeton vous a été envoyé sur le serveur TeamSpeak3.";
|
||||
$lang['stve0003'] = "Veuillez entrer le jeton, que vous avez reçu sur le serveur TeamSpeak3. Si vous n'avez pas reçu de message, assurez-vous d'avoir choisi le bon identifiant unique.";
|
||||
$lang['stve0004'] = "Le jeton saisi ne correspond pas ! Veuillez réessayer.";
|
||||
$lang['stve0005'] = "Félicitations, vous avez réussi la vérification ! Vous pouvez maintenant continuer ...";
|
||||
$lang['stve0006'] = "Une erreur inconnue s'est produite. Veuillez réessayer. Si ce message apparait à plusieurs reprises, veuillez contacter un administrateur";
|
||||
$lang['stve0007'] = "Vérification sur le TeamSpeak";
|
||||
$lang['stve0008'] = "1. Choisissez ici votre identifiant unique sur le serveur TS3 pour vous vérifier.";
|
||||
$lang['stve0008'] = "Choisissez ici votre identifiant unique sur le serveur TS3 pour vous vérifier.";
|
||||
$lang['stve0009'] = " -- Choisissez vous-même -- ";
|
||||
$lang['stve0010'] = "2. Vous recevrez un jeton sur le serveur TS3, que vous devrez saisir ici:";
|
||||
$lang['stve0010'] = "Vous recevrez un jeton sur le serveur TS3, que vous devrez saisir ici:";
|
||||
$lang['stve0011'] = "Jeton:";
|
||||
$lang['stve0012'] = "Vérifier";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +332,19 @@ $lang['time_sec'] = "Sec(s)";
|
||||
$lang['time_min'] = "Min(s)";
|
||||
$lang['time_hour'] = "Hour(s)";
|
||||
$lang['time_day'] = "Day(s)";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter, but that servergroup ID isn't exitent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "Une nouvelle version du Ranksystem est disponible. Informer les clients sur le serveur ...";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nHey, une nouvelle version du [B]Ranksystem[/B] est disponible !\n\nversion actuelle: %s\n[B]nouvelle version: %s[/B]\n\nS'il vous plaît consulter notre site pour plus d'informations [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\nDémarrage du processus de mise à jour en arrière-plan. [B]Veuillez vérifier le ranksystem.log ![/B]";
|
||||
$lang['upsucc'] = "Mise à jour de la base de données réussie.";
|
||||
$lang['upuser'] = "L'utilisateur %s (Identifiant unique: %s; ID dans la base de donnée %s) obtient un nouveau temps (sum. temps en ligne) de %s (dont actif %s).";
|
||||
@@ -323,12 +352,16 @@ $lang['upuserboost'] = "L'utilisateur %s (Identifiant unique: %s; ID dans la ba
|
||||
$lang['upusrerr'] = "L'indentifiant unique %s n'a pas pu être trouvé sur le TeamSpeak !";
|
||||
$lang['upusrinf'] = "L'utilisateur %s a été informé avec succès.";
|
||||
$lang['user'] = "Nom d'utilisateur";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Interface Web";
|
||||
$lang['wiaction'] = "action";
|
||||
$lang['wiadmhide'] = "clients exceptés masquer";
|
||||
$lang['wiadmhidedesc'] = "Pour masquer l'utilisateur excepté dans la sélection suivante";
|
||||
$lang['wiadmuuid'] = "Identifiant unique de l'administrateur";
|
||||
$lang['wiadmuuiddesc'] = "Entrez ici votre indentifiant unique; comme administrateur du Ranksystem.<br><br>Ceci est nécessaire pour réinitialiser le mot de passe de l'interface Web. Ceci est nécessaire pour réinitialiser le mot de passe de l'interface Web.<br><br> S'il n'y a pas d'adresse client unique définie, il n'est pas possible de réinitialiser le mot de passe!";
|
||||
$lang['wiadmuuiddesc'] = "Entrez ici votre indentifiant unique; comme administrateur du Ranksystem.<br>Also multiple Client-IDs are possible -> comma separated<br><br>Ceci est nécessaire pour réinitialiser le mot de passe de l'interface Web. Ceci est nécessaire pour réinitialiser le mot de passe de l'interface Web.<br><br> S'il n'y a pas d'adresse client unique définie, il n'est pas possible de réinitialiser le mot de passe!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "Boost";
|
||||
$lang['wiboostdesc'] = "Donnez à un utilisateur sur votre serveur TeamSpeak un groupe de serveurs (doit être créé manuellement), que vous pouvez déclarer ici en tant que groupe boost. Définir aussi un facteur qui doit être utilisé (par exemple 2x) et un temps, Combien de temps le boost doit être actif.<br>Plus le facteur est élevé, plus l'utilisateur atteint rapidement le rang supérieur.<br>Si le délai est écoulé, le groupe de serveurs boost est automatiquement supprimé de l'utilisateur concerné. Le temps découle dès que l'utilisateur reçoit le groupe de serveurs.<br><br>ID du groupe de serveurs => facteur => temps (en secondes)<br><br>Chaque entrée doit se séparer de la suivante avec une virgule.<br><br>Exemple:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>Sur ce, un utilisateur dans le groupe de serveurs 12 obtient le facteur 2 pour les 6000 secondes suivantes, un utilisateur du groupe de serveurs 13 obtient le facteur 3 pour 2500 secondes, et ainsi de suite ...";
|
||||
$lang['wibot1'] = "Le robot du Ranksystem a été arrêté. Consultez le journal ci-dessous pour plus d'informations !";
|
||||
@@ -403,8 +436,8 @@ $lang['winav9'] = "Mise à jour disponible !";
|
||||
$lang['winav10'] = "Veuillez utiliser l'interface Web uniquement via %s HTTPS%s Un cryptage est essentiel pour assurer votre confidentialité et votre sécurité.%sPour pouvoir utiliser le protocole HTTPS, votre serveur Web doit prendre en charge une connexion SSL.";
|
||||
$lang['winav11'] = "Veuillez saisir l'identifiant client unique de l'administrateur du Ranksystem (Autre -> ID d'administrateur). Ceci est très important dans le cas où vous avez perdu vos informations de connexion pour l'interface Web (pour les réinitialiser).";
|
||||
$lang['winav12'] = "Addons";
|
||||
$lang['winxinfo'] = "Commande \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Permet à l'utilisateur sur le serveur TeamSpeak3 d'écrire la commande \"nextup\" Au bot Ranksystem (requête (query)) en tant que message texte privé.<br><br>Comme réponse à l'utilisateur, vous obtiendrez un message texte défini avec le temps nécessaire pour le classement suivant.<br><br><b>Désactivé</b> - La fonction est désactivée. La commande 'nextup' sera ignorée.<br><b>Autorisée - seulement le rang suivant</b> - Renvoie le temps nécessaire pour le prochain groupe.<br><b>Autorisée - tous les rangs suivants</b> - Donne le temps nécessaire à tous les rangs supérieurs.";
|
||||
$lang['winxinfo'] = "Commande \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Permet à l'utilisateur sur le serveur TeamSpeak3 d'écrire la commande \"!nextup\" Au bot Ranksystem (requête (query)) en tant que message texte privé.<br><br>Comme réponse à l'utilisateur, vous obtiendrez un message texte défini avec le temps nécessaire pour le classement suivant.<br><br><b>Désactivé</b> - La fonction est désactivée. La commande '!nextup' sera ignorée.<br><b>Autorisée - seulement le rang suivant</b> - Renvoie le temps nécessaire pour le prochain groupe.<br><b>Autorisée - tous les rangs suivants</b> - Donne le temps nécessaire à tous les rangs supérieurs.";
|
||||
$lang['winxmode1'] = "Désactivé";
|
||||
$lang['winxmode2'] = "Autorisée - seulement le rang suivant";
|
||||
$lang['winxmode3'] = "Autorisée - tous les rangs suivants";
|
||||
@@ -474,7 +507,7 @@ $lang['wits3dchdesc'] = "L'ID du canal où le bot doit se connecter.<br><br>Le
|
||||
$lang['wits3host'] = "Adresse de l'hôte TS3";
|
||||
$lang['wits3hostdesc'] = "Adresse du serveur TeamSpeak 3<br>(IP ou DNS)";
|
||||
$lang['wits3sm'] = "Slowmode";
|
||||
$lang['wits3smdesc'] = "Avec le Slowmode, vous pouvez réduire le \"spam\" des commandes query (requêtes) vers le serveur TeamSpeak. Cela empêche les interdictions en cas de flood.<br>Les commandes sont retardées avec cette fonction.<br><br>!!! CELA REDUIT L'UTILISATION DU CPU !!!<br><br>L'activation n'est pas recommandée, si ce n'est pas nécessaire. Le retard augmente la durée du Bot, ce qui le rend imprécis.";
|
||||
$lang['wits3smdesc'] = "Avec le Slowmode, vous pouvez réduire le \"spam\" des commandes query (requêtes) vers le serveur TeamSpeak. Cela empêche les interdictions en cas de flood.<br>Les commandes sont retardées avec cette fonction.<br><br>!!! CELA REDUIT L'UTILISATION DU CPU !!!<br><br>L'activation n'est pas recommandée, si ce n'est pas nécessaire. Le retard augmente la durée du Bot, ce qui le rend imprécis.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Nom du robot (bot)";
|
||||
$lang['wits3qnm2'] = "Nom du deuxième bot";
|
||||
$lang['wits3qnm2desc'] = "Un nom de rechange est requis, si le premier est déjà utilisé.";
|
||||
@@ -493,6 +526,8 @@ $lang['wiuptime'] = "Intervalle";
|
||||
$lang['wiuptimedesc'] = "Entrez ici combien de secondes doivent durer jusqu'à ce que le Ranksystem vérifie les mises à jour disponibles.<br><br>Attention, pour chaque contrôle, l'utilisateur inscrit obtient une notification. Si aucun des utilisateurs listés n'est en ligne, le Ranksystem essaiera de le notifier lors de l'intervalle suivant.";
|
||||
$lang['wiupuid'] = "Bénéficiaire";
|
||||
$lang['wiupuiddesc'] = "Une virgule sépare une liste d'identifiant unique de clients, qui doivent être informés sur le TeamSpeak par message privé des mises à jour disponibles.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Langue";
|
||||
$lang['wivlangdesc'] = "Choisissez une langue par défaut pour le Ranksystem.<br><br>La langue est également sélectionnable sur le site web pour les utilisateurs et sera stockée pour sa session.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang = array();
|
||||
$lang['adduser'] = "L'utente %s ( Client-ID: %s; Client-database-ID %s) non è presente nel database -> L'utente è stato aggiunto al sistema.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "L'utente %s (unique Client-ID: %s) ha ottenuto un nuovo database-ID (%s). Aggiorna il vecchio Client-database-ID (%s) e resetta il tempo raggiunto!";
|
||||
$lang['crawl'] = "Scansione degli utenti connessi e conteggio delle attività...";
|
||||
$lang['clean'] = "Scansione degli utenti che vanno eliminati...";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "tempo di pulitura del database";
|
||||
$lang['cleanpdesc'] = "Imposta il tempo che deve trascorrere alla prossima pulitura del database.<br><br>Imposta il tempo in secondi.<br><br>È consigliato eseguire la 'pulitura' del database almeno una volta al giorno, in quanto il tempo di 'pulitura' del database aumenta nel caso vi sia un database di grandi dimensioni.";
|
||||
$lang['cleanrs'] = "Numero di utenti trovati nel database del Ranksystem: %s";
|
||||
$lang['cleants'] = "Numero di utenti trovati nel database di TeamSpeak: %s (of %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s). Please check the permission for the folder 'avatars'!";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "%s <small>giorni</small>";
|
||||
$lang['dbconerr'] = "Connessione al Database fallita: ";
|
||||
$lang['delcldgrpif'] = "Errore nella rimozione delle informazioni del servergroup: %s";
|
||||
$lang['delcldgrpsc'] = "Informazioni su servergroup per l'utente %s cancellate correttamente.";
|
||||
$lang['delclientsif'] = "%s Utenti cancellati dal database del Ranksystem!";
|
||||
$lang['delclientssc'] = "%s Utenti correttamente cancellati dal database del Ranksystem!";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "Nome utente e/o password errati! Riprova...";
|
||||
$lang['errlogin2'] = "Protezione attacchi brute force: Riprova in %s secondi!";
|
||||
$lang['errlogin3'] = "Protezione attacchi brute force: Hai commesso troppi errori. Sei stato bannato per 5 minuti!";
|
||||
$lang['error'] = "Errore ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Errore nella rimozione dell'utente: %s (Client-ID) Dal server Group con il servergroup-database-ID: %s!";
|
||||
$lang['errremdb'] = "Errore nella rimozione dell'utente: %s (Client-ID) dal database del RankSystem!";
|
||||
$lang['errselusr'] = "Seleziona almeno un utente!";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "Somma del tempo Online";
|
||||
$lang['listuid'] = "Client-ID Univoco";
|
||||
$lang['login'] = "Login";
|
||||
$lang['msg0001'] = "Versione in uso: %s";
|
||||
$lang['msg0002'] = "I comandi validi sono:\n[B]help[/B], [B]info[/B], [B]commands[/B]\t\tvedi la lista dei comandi\n[B]version[/B]\t\t\t\t\t\t\t\t vedi la versione di Ranksystem\n[B]nextup[/B]\t\t\t\t\t\t\t\t vedi il tempo rimasto per aumentare di rank\n[B]restart[/B], [B]reboot[/B]\t\t\t\t\tRiavvia il bot di Ranksystem\n[B]shutdown[/B], [B]quit[/B], [B]stop[/B]\t\t Arresta il bot del Ranksystem";
|
||||
$lang['msg0002'] = "I comandi validi sono:\n[B]help[/B], [B]info[/B], [B]commands[/B]\t\tvedi la lista dei comandi\n[B]version[/B]\t\t\t\t\t\t\t\t vedi la versione di Ranksystem\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t\t\t vedi il tempo rimasto per aumentare di rank\n[B]restart[/B], [B]reboot[/B]\t\t\t\t\tRiavvia il bot di Ranksystem\n[B]shutdown[/B], [B]quit[/B], [B]stop[/B]\t\t Arresta il bot del Ranksystem";
|
||||
$lang['msg0003'] = "Non sei idoneo per eseguire questo comando!";
|
||||
$lang['msg0004'] = "Il client %s (%s) ha richiesto uno shotdown.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Il client %s (%s) ha richiesto un restart.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "L'utente %s (unique Client-ID: %s; Client-database-ID %s) è una query oppure effettua molte connessioni (conterà solo la prima connessione) -> Non verrà contato!";
|
||||
$lang['noentry'] = "Nessuna voce trovata..";
|
||||
$lang['pass'] = "Password";
|
||||
@@ -99,7 +109,7 @@ $lang['sccupcount'] = "Aggiunto con successo un tempo online di %s secondi agl
|
||||
$lang['setontime'] = "aggiungi tempo";
|
||||
$lang['setontimedesc'] = "Aggiungi tempo online agli utenti precedentemente selezionati. Ogni utente avrà questo tempo addizionale aggiunto al loro vecchio tempo online.<br><br>Il tempo online digitato sarà considerato per l'aumento di rank e avrà effetto immediato.";
|
||||
$lang['sgrpadd'] = "All'utente %s è stato assegnato il servergroup %s (Client-ID Univoco: %s; Client-database-ID %s).";
|
||||
$lang['sgrprerr'] = "C'è stato un problema con l'aggiunta del servergroup all'utente %s (unique Client-ID: %s; Client-database-ID %s)!";
|
||||
$lang['sgrprerr'] = "Affected user: %s (unique Client-ID: %s; Client-database-ID %s) and server group %s (ID: %s).";
|
||||
$lang['sgrprm'] = "All'utente %s è stato rimosso il servergroup %s (unique Client-ID: %s; Client-database-ID %s).";
|
||||
$lang['size_byte'] = "B";
|
||||
$lang['size_kib'] = "KiB";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Limite gruppi simultanei: ";
|
||||
$lang['stag0012'] = "Imposta gruppi";
|
||||
$lang['stag0013'] = "Addon ON/OFF";
|
||||
$lang['stag0014'] = "Imposta l'Addon su on (abilitato) o off (disabilitato).<br><br>nel disabilitare l'addon una parte della pagina stats/ potrebbe essere nascosta.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "Statistiche del server";
|
||||
$lang['stix0002'] = "Utenti totali";
|
||||
$lang['stix0003'] = "Vedi dettagli";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Codice";
|
||||
$lang['stna0004'] = "Contati";
|
||||
$lang['stna0005'] = "Versioni";
|
||||
$lang['stna0006'] = "Piattaforme";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "News del server";
|
||||
$lang['stnv0002'] = "Chiudi";
|
||||
$lang['stnv0003'] = "Aggiorna le informazioni utente";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "Le mie statistiche - contenuto della pagina";
|
||||
$lang['stnv0020'] = "Questa pagina contiene un sommario generale delle tue statistiche personali e le attività nel server.";
|
||||
$lang['stnv0021'] = "Queste informazioni sono state inserite dal primo avvio del Ranksystem e non dall'inizio del server TeamSpeak.";
|
||||
$lang['stnv0022'] = "Questa pagina riceve i dati dal database. Perciò potrebbe avere un lieve ritardo nel ricevere le informazioni.";
|
||||
$lang['stnv0023'] = "La somma contenuta nei grafici ad anello potrebbe differire dal numero degli ‘Utenti totali'. Il motivo è che quei dati non erano stati raccolti dalla versione precedente del Ranksystem.";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "Ranksystem - Statistiche";
|
||||
$lang['stnv0025'] = "Inserimenti limitati";
|
||||
$lang['stnv0026'] = "tutti";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - per la traduzione in Olandese";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - per la traduzione in Francese";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - per la traduzione in Portoghese";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "Top utenti";
|
||||
$lang['sttw0002'] = "Della settimana";
|
||||
$lang['sttw0003'] = "con %s ore di tempo online";
|
||||
$lang['sttw0003'] = "con %s %s di tempo online";
|
||||
$lang['sttw0004'] = "Top 10 a confronto";
|
||||
$lang['sttw0005'] = "Ore (Definisce il 100 %)";
|
||||
$lang['sttw0006'] = "%s ore (%s%)";
|
||||
@@ -295,19 +310,21 @@ $lang['sttw0009'] = "Top 10 vs Altri utenti in tempo di attività";
|
||||
$lang['sttw0010'] = "Top 10 vs Altri utenti in tempo di inattività";
|
||||
$lang['sttw0011'] = "Top 10 (in ore)";
|
||||
$lang['sttw0012'] = "Gli altri %s utenti (in ore)";
|
||||
$lang['sttw0013'] = "con %s ore di tempo attivo";
|
||||
$lang['sttw0013'] = "con %s %s di tempo attivo";
|
||||
$lang['sttw0014'] = "ore";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "Del mese";
|
||||
$lang['stta0001'] = "Di sempre";
|
||||
$lang['stve0001'] = "\nSalve %s,\necco il [B]token[/B] per verificarti su Ranksystem:\n[B]%s[/B]\n\nInseriscilo sulla pagina del Ranksystem nel campo token.\n\nSe non l'hai richiesto te, ignora. Se lo hai ricevuto più volte, per favore contatta un amministratore.";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "Un messaggio contenente il token ti è stato inviato in chat privata sul server Ts3.";
|
||||
$lang['stve0003'] = "Inserisci il token che hai ricevuto nel server Ts3. Se non hai ricevuto il messaggio, assicurati di aver selezionato l'Unique ID corretto.";
|
||||
$lang['stve0004'] = "Il token inserito è errato! Per favore reinseriscilo.";
|
||||
$lang['stve0005'] = "Congratulazioni, sei stato verificato con successo! Ora puoi continuare..";
|
||||
$lang['stve0006'] = "C'è stato un errore sconosciuto. Per favore riprova. Se ricapita contatta un amministratore.";
|
||||
$lang['stve0007'] = "Verifica sul server TeamSpeak";
|
||||
$lang['stve0008'] = "1. Scegli qui il tuo Unique ID del server Ts3 per verificarti.";
|
||||
$lang['stve0008'] = "Scegli qui il tuo Unique ID del server Ts3 per verificarti.";
|
||||
$lang['stve0009'] = " -- Seleziona -- ";
|
||||
$lang['stve0010'] = "2. Riceverai un token sul server Teamspeak3, il quale devi inserire qui:";
|
||||
$lang['stve0010'] = "Riceverai un token sul server Teamspeak3, il quale devi inserire qui:";
|
||||
$lang['stve0011'] = "Token:";
|
||||
$lang['stve0012'] = "verifica";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +332,19 @@ $lang['time_sec'] = "Sec(s)";
|
||||
$lang['time_min'] = "Min(s)";
|
||||
$lang['time_hour'] = "Ora(e)";
|
||||
$lang['time_day'] = "Giorno(i)";
|
||||
$lang['upinf'] = "È stata trovato una versione piu recente del RankSystem (informazioni su come aggiornare qui: http://ts-n.net/ranksystem.php?artid=84#01id84); Informa gli utenti del server...";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter, but that servergroup ID isn't exitent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "È stata trovato una versione piu recente del RankSystem. Informa gli utenti del server...";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nHey, Una nuova versione del [B]Ranksystem[/B] è disponibile!\n\nVersione corrente: %s\n[B]Nuova Versione: %s[/B]\n\nPer maggiori informazioni visita il nostro sito [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\nStarting the update process in background. [B]Please check the ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Aggiornamento del database eseguito con successo.";
|
||||
$lang['upuser'] = "L'utente %s (unique Client-ID: %s; Client-database-ID %s) ha ottenuto un nuovo conteggio (somma del tempo online) di %s (tempo di attività (rispetto al nuovo conteggio): %s).";
|
||||
@@ -323,12 +352,16 @@ $lang['upuserboost'] = "L'utente %s (unique Client-ID: %s; Client-database-ID %
|
||||
$lang['upusrerr'] = "Il Client-ID Univoco %s non è stato trovato sul TeamSpeak!";
|
||||
$lang['upusrinf'] = "L'utente %s è stato informato correttamente.";
|
||||
$lang['user'] = "Nome Utente";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Interfaccia Web";
|
||||
$lang['wiaction'] = "Azione";
|
||||
$lang['wiadmhide'] = "Nascondi clients esclusi";
|
||||
$lang['wiadmhidedesc'] = "Per nascondere i clients esclusi dalla lista";
|
||||
$lang['wiadmuuid'] = "admin ID";
|
||||
$lang['wiadmuuiddesc'] = "Inserisci qui il tuo unique Client-ID; come amministratore del Ranksystem.<br><br>Questo è richiesto per effettuare un reset della password della webinterface.<br><br>Non c'è un indirizzo unique Client-ID definito, non è possibile effettuare un reset della password!";
|
||||
$lang['wiadmuuiddesc'] = "Inserisci qui il tuo unique Client-ID; come amministratore del Ranksystem.<br>Also multiple Client-IDs are possible -> comma separated<br><br>Questo è richiesto per effettuare un reset della password della webinterface.<br><br>Non c'è un indirizzo unique Client-ID definito, non è possibile effettuare un reset della password!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "Boost";
|
||||
$lang['wiboostdesc'] = "Dai all'utente sul TS3 un servergroup (che dovrà essere creato manualmente), con il quale potrai definire il Boost. Definisci anche il fattore di moltiplicazione (per esempio 2x) e il (per quanto il boost durerà).<br>Più alto è il fattore, più velocemente l'utente raggiungerà il rank successivo.<br>Uno volta che il tempo impostato finirà il servergroup verrà rimosso in automatico dal RankSystem.Il tempo parte non appena viene assegnato il servergroup all'utente.<br><br>servergroup ID => fattore (2,3) => tempo (in secondi)<br><br>Per separare ogni voce utilizza la virgola.<br><br>Esempio:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>Nell'esempio il servergroup 12 per i successivi 6000 secondi gli verrà conteggiato il doppio del tempo online, al servergroup 13 verrà moltiplicato il tempo per 3 per 2500 secondi, e cosi via...";
|
||||
$lang['wibot1'] = "Il bot del Ranksystem dovrebbe essere stato arrestato. Controlla il log qui sotto per maggiori informazioni!";
|
||||
@@ -403,8 +436,8 @@ $lang['winav9'] = "Aggiornamento disponibile!";
|
||||
$lang['winav10'] = "Per favore utilizzare l'interfaccia solo attraverso %s HTTPS%s Una crittografia è fondamentale per garantire la privacy e la sicurezza.%sPer essere in grado di utilizzare HTTPS il vostro web server deve supportare una connessione SSL.";
|
||||
$lang['winav11'] = "Per favore digita lo unique Client-ID dell'admin per il Ranksystem (Altro -> admin ID). Questo è molto importante nel caso perdessi le credenziali di accesso per la webinterface (per effettuarne un reset).";
|
||||
$lang['winav12'] = "Addons";
|
||||
$lang['winxinfo'] = "Comando \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Permette all'utente nel server TS3 di scrivere nel comando \"nextup\" al bot del Ranksystem (coda) come messaggio privato.<br><br>Come risposta l'utente riceverà un messaggio di testo definito con il tempo rimanente alla prossimo rank.<br><br><b>Disattivato</b> - La funzione è disabilitata. Il comando 'Nextup' verrà ignorato.<br><b>Permesso - prossimo rank</b> - Invia all'utente un messaggio contenente il tempo rimasto per aumentare di grado.<br><b>Permesso - Ultimo rank</b> - Invia all'utente un messaggio contenente il tempo rimasto per arrivare all'ultimo rank.";
|
||||
$lang['winxinfo'] = "Comando \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Permette all'utente nel server TS3 di scrivere nel comando \"!nextup\" al bot del Ranksystem (coda) come messaggio privato.<br><br>Come risposta l'utente riceverà un messaggio di testo definito con il tempo rimanente alla prossimo rank.<br><br><b>Disattivato</b> - La funzione è disabilitata. Il comando '!nextup' verrà ignorato.<br><b>Permesso - prossimo rank</b> - Invia all'utente un messaggio contenente il tempo rimasto per aumentare di grado.<br><b>Permesso - Ultimo rank</b> - Invia all'utente un messaggio contenente il tempo rimasto per arrivare all'ultimo rank.";
|
||||
$lang['winxmode1'] = "Disattivato";
|
||||
$lang['winxmode2'] = "Permesso - Prossimo rank";
|
||||
$lang['winxmode3'] = "Permesso - Ultimo rank";
|
||||
@@ -474,7 +507,7 @@ $lang['wits3dchdesc'] = "Il channel-ID cui il bot deve connettersi.<br><br>Il B
|
||||
$lang['wits3host'] = "Indirizzo TS3";
|
||||
$lang['wits3hostdesc'] = "Indirizzo del vostro server Teamspeak<br>(IP o DNS)";
|
||||
$lang['wits3sm'] = "Slowmode";
|
||||
$lang['wits3smdesc'] = "Con la modalità Slowmode potrai ridurre lo \"spam\" dei comandi query di TeamSpeak. E previene inoltre i ban per flood nel server Teamspeak.<br>I comandi della query arriveranno con un lieve ritardo in base al ritardo di risposta scelto.<br><br>!!! INOLTRE RIDURRA L'UTILIZZO DELLE RISORSE DEL SERVER !!!<br><br>Questa funzione non è consigliata, se non è richiesta. Il ritardo dei comandi del bot potrebbe causare imprecisione, sopratutto nell'utilizzo dei boost.";
|
||||
$lang['wits3smdesc'] = "Con la modalità Slowmode potrai ridurre lo \"spam\" dei comandi query di TeamSpeak. E previene inoltre i ban per flood nel server Teamspeak.<br>I comandi della query arriveranno con un lieve ritardo in base al ritardo di risposta scelto.<br><br>!!! INOLTRE RIDURRA L'UTILIZZO DELLE RISORSE DEL SERVER !!!<br><br>Questa funzione non è consigliata, se non è richiesta. Il ritardo dei comandi del bot potrebbe causare imprecisione, sopratutto nell'utilizzo dei boost.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Nome del Bot";
|
||||
$lang['wits3qnm2'] = "2° nome del Bot";
|
||||
$lang['wits3qnm2desc'] = "Un secondo nome in caso in cui il primo nome sia già in uso nel server teamspeak.";
|
||||
@@ -493,6 +526,8 @@ $lang['wiuptime'] = "Intervallo di cotrollo aggiornamenti";
|
||||
$lang['wiuptimedesc'] = "Inserisci qui ogni quanti secondi il Ranksystem verificherà se vi sono aggiornamenti disponibili.<br>Attenzione, Ogni utente inserito riceverà la notifica di aggiornamento attraverso un messaggio privato su Temaspeak. Se nessuno degli utenti inseriti sarà online, Il Ranksystem proverà ad inviare il messaggio nell'intervallo di tempo successivo.";
|
||||
$lang['wiupuid'] = "Info Aggiornamenti";
|
||||
$lang['wiupuiddesc'] = "La lista di utenti (dovrà essere inserito l'ID Univoco dell'utente(i) es. YdicUS4yofeBEONN7J3FeLic8b4=,RiGqBf8hU1kbCV/vwfPL0rzAwZQ=), che verranno informati di eventuali aggiornamenti attraverso un messaggio privato su Teamspeak.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Lingua";
|
||||
$lang['wivlangdesc'] = "Scegli la lingua di default del Ranksystem.<br><br>La lingua è inoltre selezionabile dal sito e viene salvata per tutta la sessione.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang = array();
|
||||
$lang['adduser'] = "Gebruiker %s (unieke Client-ID: %s; Client-database-ID %s) is onbekend -> zojuist toegevoegd aan ranksysteem.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "Gebruiker %s (unieke Client-ID: %s) heeft een nieuwe TeamSpeak Client-database-ID (%s). Update de oude Client-database-ID (%s) en reset gecollecteerde tijden!";
|
||||
$lang['crawl'] = "Scannen naar geconnecte gebruikers en de activiteiten aan het optellen...";
|
||||
$lang['clean'] = "Scannen naar clients, die moeten worden verwijderd...";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "opschoon periode";
|
||||
$lang['cleanpdesc'] = "Zet een tijd dat moet zijn verstreken voordat de 'clean clients' nogmaals start.<br><br>Zet een tijd in seconden.<br><br>Één keer per dag is aangeraden, omdat het opschonen van clients veel meer tijd nodig heeft voor grotere databasen.";
|
||||
$lang['cleanrs'] = "Clients in the Ranksystem database: %s";
|
||||
$lang['cleants'] = "Clients gevonden in de TeamSpeak database: %s (van de %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s). Please check the permission for the folder 'avatars'!";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "%s <small>dagen</small>";
|
||||
$lang['dbconerr'] = "Connectie naar de Database mislukt: ";
|
||||
$lang['delcldgrpif'] = "Fout tijdens het verwijderen van kennis voor servergroepen: %s";
|
||||
$lang['delcldgrpsc'] = "Kennis van servergroepen voor %s Gebruikers succesvol verwijderd.";
|
||||
$lang['delclientsif'] = "%s Clients zijn verwijderd uit de Ranksysteem database!";
|
||||
$lang['delclientssc'] = "%s Clients zijn successvol verwijderd uit de Ranksysteem database!";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "Gebruikersnaam en/of wachtwoord zijn onjuist! Probeer opnieuw...";
|
||||
$lang['errlogin2'] = "Brute force protection: Probeer nogmaals in %s seconde!";
|
||||
$lang['errlogin3'] = "Brute force protection: Te vaak mislukt. Verbannen voor 300 seconden!";
|
||||
$lang['error'] = "Foutmelding ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Foutmelding tijdens het verwijderen van de gebruiker met de unieke Client-ID %s van de servergroep met servergroep-database-ID %s!";
|
||||
$lang['errremdb'] = "Foutmelding tijdens het verwijderen van de gebruiker met de unieke Client-ID %s uit de Ranksysteem database!";
|
||||
$lang['errselusr'] = "Selecteer A.U.B minstens één gebruiker!";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "overzicht online tijd";
|
||||
$lang['listuid'] = "unieke Client-ID";
|
||||
$lang['login'] = "Inloggen";
|
||||
$lang['msg0001'] = "versie: %s";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0003'] = "Je bent niet in beschikking van deze commando!";
|
||||
$lang['msg0004'] = "Client %s (%s) verzoekt afsluiten.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Client %s (%s) verzoekt opnieuw opstarten.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "Gebruiker %s (unieke Client-ID: %s; Client-database-ID %s) is een query-gebruiker of is meerdere keren online (alleen de eerste connectie telt mee) -> dit telt niet mee!";
|
||||
$lang['noentry'] = "Geen invoer gevonden..";
|
||||
$lang['pass'] = "Wachtwoord";
|
||||
@@ -99,7 +109,7 @@ $lang['sccupcount'] = "Succesvol online tijd toegevoegd van %s seconden aan de
|
||||
$lang['setontime'] = "voeg tijd toe";
|
||||
$lang['setontimedesc'] = "Voeg online tijd toe aan de hiervoor geselecteerde clients. Elke gebruiker zal de tijd erbij krijgen op hun oude online tijd.<br><br>De ingevoerde online tijd zal onmiddelijk plaatsvinden en de servergroepen zullen meteen worden toegevoegd.";
|
||||
$lang['sgrpadd'] = "Verleen servergroep %s (ID: %s) naar gebruiker %s (unieke Client-ID: %s; Client-database-ID %s).";
|
||||
$lang['sgrprerr'] = "Er ontstond een probleem met de servergroep van de gebruiker %s (unieke Client-ID: %s; Client-database-ID %s)!";
|
||||
$lang['sgrprerr'] = "Affected user: %s (unique Client-ID: %s; Client-database-ID %s) and server group %s (ID: %s).";
|
||||
$lang['sgrprm'] = "Servergroep verwijderd van gebruiker %s (ID: %s) user %s (unieke Client-ID: %s; Client-database-ID %s).";
|
||||
$lang['size_byte'] = "B";
|
||||
$lang['size_kib'] = "KiB";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Limit of simultaneous groups: ";
|
||||
$lang['stag0012'] = "set groups";
|
||||
$lang['stag0013'] = "Addon ON/OFF";
|
||||
$lang['stag0014'] = "Turn the Addon on (enabled) or off (disabled).<br><br>On disabling the addon a possible part on the stats/ site will be hidden.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "Server statistieken";
|
||||
$lang['stix0002'] = "Totaal gebruikers";
|
||||
$lang['stix0003'] = "Bekijk gegevens";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Code";
|
||||
$lang['stna0004'] = "Count";
|
||||
$lang['stna0005'] = "Versions";
|
||||
$lang['stna0006'] = "Platforms";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "Server nieuws";
|
||||
$lang['stnv0002'] = "Sluiten";
|
||||
$lang['stnv0003'] = "Ververs client informatie";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "My statistics - Page content";
|
||||
$lang['stnv0020'] = "This page contains a overall summary of your personal statistics and activity on the server.";
|
||||
$lang['stnv0021'] = "The informations are collected since the beginning of the Ranksystem, they are not since the beginning of the TeamSpeak server.";
|
||||
$lang['stnv0022'] = "This page receives its values out of a database. So the values might be delayed a bit.";
|
||||
$lang['stnv0023'] = "The sum inside of the donut charts may differ to the amount of 'Total user'. The reason is that this data weren't collected with older versions of the Ranksystem.";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "Ranksystem - Statistics";
|
||||
$lang['stnv0025'] = "Limit entries";
|
||||
$lang['stnv0026'] = "all";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - for initialisation dutch translation";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - for french translation";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - for portuguese translation";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "Top users";
|
||||
$lang['sttw0002'] = "Of the week";
|
||||
$lang['sttw0003'] = "With %s hours online time";
|
||||
$lang['sttw0003'] = "With %s %s online time";
|
||||
$lang['sttw0004'] = "Top 10 compared";
|
||||
$lang['sttw0005'] = "Hours (Defines 100 %)";
|
||||
$lang['sttw0006'] = "%s hours (%s%)";
|
||||
@@ -295,19 +310,21 @@ $lang['sttw0009'] = "Top 10 vs others in active time";
|
||||
$lang['sttw0010'] = "Top 10 vs others in inactive time";
|
||||
$lang['sttw0011'] = "Top 10 (in hours)";
|
||||
$lang['sttw0012'] = "Other %s users (in hours)";
|
||||
$lang['sttw0013'] = "With %s hours active time";
|
||||
$lang['sttw0013'] = "With %s %s active time";
|
||||
$lang['sttw0014'] = "hours";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "Of the month";
|
||||
$lang['stta0001'] = "Of all time";
|
||||
$lang['stve0001'] = "\nHello %s,\nhere a [B]token[/B] to verify you for the Ranksystem:\n[B]%s[/B]\n\nPut this on the Ranksystem page inside the token field.\n\nIf you didn't request this message, please ignore it. If you get it repeated times, please contact an admin.";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "A message with the token was sent to you on the TS3 server.";
|
||||
$lang['stve0003'] = "Please enter the token, which you received on the TS3 server. If you have not received a message, please be sure you have chosen the correct unique ID.";
|
||||
$lang['stve0004'] = "The entered token does not match! Please try it again.";
|
||||
$lang['stve0005'] = "Congratulations, you are successfully verified! You can now go on..";
|
||||
$lang['stve0006'] = "An unknown error happened. Please try it again. On repeated times contact an admin";
|
||||
$lang['stve0007'] = "Verify on TeamSpeak";
|
||||
$lang['stve0008'] = "1. Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0008'] = "Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0009'] = " -- select yourself -- ";
|
||||
$lang['stve0010'] = "2. You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0010'] = "You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0011'] = "Token:";
|
||||
$lang['stve0012'] = "verify";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +332,19 @@ $lang['time_sec'] = "Sec(s)";
|
||||
$lang['time_min'] = "Min(s)";
|
||||
$lang['time_hour'] = "Hour(s)";
|
||||
$lang['time_day'] = "Day(s)";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter, but that servergroup ID isn't exitent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "A new Version of the Ranksystem is available; Inform clients on server...";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nHey, a new version of the [B]Ranksystem[/B] is available!\n\ncurrent version: %s\n[B]new version: %s[/B]\n\nPlease check out our site for more informations [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\nStarting the update process in background. [B]Please check the ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Database update successfully executed.";
|
||||
$lang['upuser'] = "User %s (unique Client-ID: %s; Client-database-ID %s) gets a new count (sum. online time) of %s (thereof active %s).";
|
||||
@@ -323,12 +352,16 @@ $lang['upuserboost'] = "User %s (unique Client-ID: %s; Client-database-ID %s) g
|
||||
$lang['upusrerr'] = "The unique Client-ID %s couldn't reached on the TeamSpeak!";
|
||||
$lang['upusrinf'] = "User %s was successfully informed.";
|
||||
$lang['user'] = "Username";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Webinterface";
|
||||
$lang['wiaction'] = "action";
|
||||
$lang['wiadmhide'] = "hide excepted clients";
|
||||
$lang['wiadmhidedesc'] = "To hide excepted user in the following selection";
|
||||
$lang['wiadmuuid'] = "admin ID";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br><br>This is required to reset the password of the webinterface.<br><br>Is there no unique Client-ID address defined, it is not possible to reset the password!";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br>Also multiple Client-IDs are possible -> comma separated<br><br>This is required to reset the password of the webinterface.<br><br>Is there no unique Client-ID address defined, it is not possible to reset the password!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "boost";
|
||||
$lang['wiboostdesc'] = "Give an user on your TeamSpeak server a servergroup (have to be created manually), which you can declare here as boost group. Define also a factor which should be used (for example 2x) and a time, how long the boost should be rated.<br>The higher the factor, the faster an user reaches the next higher rank.<br>Is the time expired, the boost servergroup get automatically removed from the concerned user. The time starts running as soon as the user gets the servergroup.<br><br>servergroup ID => factor => time (in seconds)<br><br>Each entry have to separate from next with a comma.<br><br>Example:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>On this an user in servergroup 12 get the factor 2 for the next 6000 seconds, an user in servergroup 13 get the factor 3 for 2500 seconds, and so on...";
|
||||
$lang['wibot1'] = "Ranksystem Bot should be stopped. Check the log below for more information!";
|
||||
@@ -403,8 +436,8 @@ $lang['winav9'] = "Update available!";
|
||||
$lang['winav10'] = "Please use the webinterface only via %s HTTPS%s An encryption is critical to ensure your privacy and security.%sTo be able to use HTTPS your webserver needs to support an SSL connection.";
|
||||
$lang['winav11'] = "Please enter the unique Client-ID of the admin of the Ranksystem (Other -> admin ID). This is very important in case you lost your login details for the webinterface (to reset these).";
|
||||
$lang['winav12'] = "Addons";
|
||||
$lang['winxinfo'] = "Command \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>deactivated</b> - The function is deactivated. The command 'nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxinfo'] = "Command \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"!nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>deactivated</b> - The function is deactivated. The command '!nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxmode1'] = "deactivated";
|
||||
$lang['winxmode2'] = "allowed - only next rank";
|
||||
$lang['winxmode3'] = "allowed - all next ranks";
|
||||
@@ -474,7 +507,7 @@ $lang['wits3dchdesc'] = "The channel-ID, the bot should connect with.<br><br>Th
|
||||
$lang['wits3host'] = "TS3 Hostaddress";
|
||||
$lang['wits3hostdesc'] = "TeamSpeak 3 Server address<br>(IP oder DNS)";
|
||||
$lang['wits3sm'] = "Slowmode";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the Bot, which makes it imprecisely.";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the Bot, which makes it imprecisely.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Botname";
|
||||
$lang['wits3qnm2'] = "2nd Botname";
|
||||
$lang['wits3qnm2desc'] = "A fallback Botname, if the first one is already in use.";
|
||||
@@ -493,6 +526,8 @@ $lang['wiuptime'] = "Interval";
|
||||
$lang['wiuptimedesc'] = "Enter here how much seconds have to gone till the Ranksystem should check for available updates.<br><br>Attention, for each check the listed user gets a notification. If no one of the listed users is online, the Ranksystem will try to notificate with the next interval.";
|
||||
$lang['wiupuid'] = "Recipient";
|
||||
$lang['wiupuiddesc'] = "A comma separate list of unique Client-IDs, which shoud be informed on the TeamSpeak via private message for available updates.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Language";
|
||||
$lang['wivlangdesc'] = "Choose a default language for the Ranksystem.<br><br>The language is also selectable on the websites for the users and will be stored for the session.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang = array();
|
||||
$lang['adduser'] = "O usuário %s (ID-Ùnica: %s; Cliente-banco de dados-ID %s) é desconhecido -> adicionado ao sistema de ranking agora.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "O usuário %s (ID-Ùnica:: %s) obteve um novo ID no banco de dados do teamspeak (%s). Atualize o antigo Client-banco de dados-ID (%s) e reinicie os tempos coletados!";
|
||||
$lang['crawl'] = "Scan for connected user and count the activity...";
|
||||
$lang['clean'] = "Procurando por clientes, que devem ser excluidos...";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "Período de limpeza";
|
||||
$lang['cleanpdesc'] = "Defina o tempo que deve decorrer antes que os 'Período de limpeza' seja executado.<br><br>Defina o tempo em segundos.<br><br>Recomendado é uma vez por dia, porque a limpeza do cliente precisa de muito tempo para grandes banco de dados.";
|
||||
$lang['cleanrs'] = "Clientes no banco de dados do Sistema de ranking: %s";
|
||||
$lang['cleants'] = "Clienes encontratos no banco de dados do TeamSpeak: %s (de %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s). Please check the permission for the folder 'avatars'!";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "%s <small>dias</small>";
|
||||
$lang['dbconerr'] = "Falha ao conectar ao banco de dados: ";
|
||||
$lang['delcldgrpif'] = "Erro ao remover o conhecimento para os grupos do servidor: %s";
|
||||
$lang['delcldgrpsc'] = "Conhecimento sobre os grupos do servidor para %s Usuário removido com sucesso.";
|
||||
$lang['delclientsif'] = "%s Clientes excluídos do banco de dados do Sistema de ranking!";
|
||||
$lang['delclientssc'] = "%s clientes excluídos com sucesso do banco de dados do Sistema de ranking";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "Nome de usuário e/ou senha estão incorretos! Tente novamente...";
|
||||
$lang['errlogin2'] = "Proteção de força bruta: tente novamente em %s segundos!";
|
||||
$lang['errlogin3'] = "Proteção de força bruta: muitos erros. Banido por 300 segundos!";
|
||||
$lang['error'] = "Erro ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Erro ao remover o usuário com ID-Ùnica %s do grupo de servidor Data base-ID %s!";
|
||||
$lang['errremdb'] = "Erro ao remover o usuário com ID-Ùnica %s do banco de dados do Sistema de ranking!";
|
||||
$lang['errselusr'] = "Escolha pelo menos um usuário!";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "Tempo total Online";
|
||||
$lang['listuid'] = "ID ùnica";
|
||||
$lang['login'] = "Entrar";
|
||||
$lang['msg0001'] = "versão em execução: %s";
|
||||
$lang['msg0002'] = "Os comandos válidos são:\n[B]help[/B], [B]info[/B], [B]commands[/B]\t\tget a command list\n[B]version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]nextup[/B]\t\t\t\t\t\t\t\t get the time to the next rank up\n[B]restart[/B], [B]reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]shutdown[/B], [B]quit[/B], [B]stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0002'] = "Os comandos válidos são:\n[B]help[/B], [B]info[/B], [B]commands[/B]\t\tget a command list\n[B]version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t\t\t get the time to the next rank up\n[B]restart[/B], [B]reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]shutdown[/B], [B]quit[/B], [B]stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0003'] = "Você não é elegível para usar este comando!";
|
||||
$lang['msg0004'] = "Cliente %s (%s) fez o pedido de desligamento.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Cliente %s (%s) fez o pedido de inicialização.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "Usuário %s (ID-Ùnica: %s; Cliente-database-ID %s) é um usuário de query ou está se conectando vezes online (apenas contagens de primeira conexão) -> isso não vai contar!";
|
||||
$lang['noentry'] = "Nenhuma entrada encontrada..";
|
||||
$lang['pass'] = "Senha";
|
||||
@@ -99,7 +109,7 @@ $lang['sccupcount'] = "Adicionado com sucesso um tempo online de %s segundos p
|
||||
$lang['setontime'] = "tempo extra";
|
||||
$lang['setontimedesc'] = "Adicione tempo online aos clientes selecionados. Cada usuário obterá esse tempo adicional ao seu antigo tempo online.<br><br>O tempo online estabelecido será considerado para o ranking e deverá entrar em vigor imediatamente.";
|
||||
$lang['sgrpadd'] = "Conceder o grupo do servidor %s ao usuário %s (ID-Ùnica: %s; Cliente-database-ID %s).";
|
||||
$lang['sgrprerr'] = "Ocorreu um problema com o grupo do servidor do usuário %s (ID-Ùnica: %s; Cliente-database-ID %s)!";
|
||||
$lang['sgrprerr'] = "Affected user: %s (unique Client-ID: %s; Client-database-ID %s) and server group %s (ID: %s).";
|
||||
$lang['sgrprm'] = "Grupo do servidor removido %s do usuário %s (ID-Ùnica: %s; Cliente-database-ID %s).";
|
||||
$lang['size_byte'] = "B";
|
||||
$lang['size_kib'] = "KiB";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Limite de Grupos: ";
|
||||
$lang['stag0012'] = "Salvar";
|
||||
$lang['stag0013'] = "Módulo ONline/OFFline";
|
||||
$lang['stag0014'] = "Troque o módulo online (habilitado) ou desligado (desativado).<br><br>Ao desativar o addon, uma possível parte nas stats/ do site estará escondida.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "Estatísticas do Servidor";
|
||||
$lang['stix0002'] = "Total de usuários";
|
||||
$lang['stix0003'] = "Ver detalhes";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Código";
|
||||
$lang['stna0004'] = "País";
|
||||
$lang['stna0005'] = "Versões";
|
||||
$lang['stna0006'] = "Plataformas";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "Notícias do Servidor";
|
||||
$lang['stnv0002'] = "Fechar";
|
||||
$lang['stnv0003'] = "Atualizar informações do cliente";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "Minhas estatísticas - Conteúdo da página";
|
||||
$lang['stnv0020'] = "Esta página contém um resumo geral de suas estatísticas e atividades pessoais no servidor.";
|
||||
$lang['stnv0021'] = "As informações são coletadas desde o início do sistems de Ranking, elas não são desde o início do servidor TeamSpeak.";
|
||||
$lang['stnv0022'] = "Esta página recebe seus valores de um banco de dados. Portanto, os valores podem ser atrasados um pouco.";
|
||||
$lang['stnv0023'] = "A soma dentro dos gráficos pode ser diferente da quantidade de 'Usuário total'. O motivo é que esses dados não foram coletados com versões mais antigas do Sistema de ranking";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "Ranking - Estatisticas";
|
||||
$lang['stnv0025'] = "Limite de Nomes";
|
||||
$lang['stnv0026'] = "Todos";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - pela tradução em holandês";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - pela tradução em francês";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - pela tradução em português";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "Top Usuários";
|
||||
$lang['sttw0002'] = "Da Semana";
|
||||
$lang['sttw0003'] = "Com %s horas online";
|
||||
$lang['sttw0003'] = "Com %s %s online";
|
||||
$lang['sttw0004'] = "Top 10 comparação";
|
||||
$lang['sttw0005'] = "Horas (O Melhor 100 %)";
|
||||
$lang['sttw0006'] = "%s horas (%s%)";
|
||||
@@ -295,19 +310,21 @@ $lang['sttw0009'] = "Top 10 vs outros em tempo ativo";
|
||||
$lang['sttw0010'] = "Top 10 vs outros em tempo inativo";
|
||||
$lang['sttw0011'] = "Top 10 (in horas)";
|
||||
$lang['sttw0012'] = "Outros %s usuários (em horas)";
|
||||
$lang['sttw0013'] = "Com %s horas ativo";
|
||||
$lang['sttw0013'] = "Com %s %s ativo";
|
||||
$lang['sttw0014'] = "horas";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "Do Mês";
|
||||
$lang['stta0001'] = "De Todos os Tempos";
|
||||
$lang['stve0001'] = "\nOlá %s,\nAqui está o [B]token[/B] para se verificar no sistema de ranking:\n[B]%s[/B]\n\nColoque isso na página do Sistema de ranking dentro do campo token.\n\Se você não solicitou esta mensagem, ignore-a. Se você não consegui verificar, entre em contato com um administrador.";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "Uma mensagem com o token foi enviada para você no servidor TS3.";
|
||||
$lang['stve0003'] = "Digite o token, que você recebeu no servidor TS3. Se você não recebeu uma mensagem, certifique-se de ter escolhido a ID exclusiva correta.";
|
||||
$lang['stve0004'] = "O token inserido não corresponde! Por favor, tente novamente.";
|
||||
$lang['stve0005'] = "Parabéns, você foi verificado com sucesso! Você pode continuar ..";
|
||||
$lang['stve0006'] = "Ocorreu um erro desconhecido. Por favor, tente novamente. Se o erro continuar, entre em contato com um administrador";
|
||||
$lang['stve0007'] = "Verifique no TeamSpeak";
|
||||
$lang['stve0008'] = "1. Escolha aqui sua ID/Nick no servidor TS3 para verificar-se.";
|
||||
$lang['stve0008'] = "Escolha aqui sua ID/Nick no servidor TS3 para verificar-se.";
|
||||
$lang['stve0009'] = " -- Escolha um -- ";
|
||||
$lang['stve0010'] = "2. Você receberá um token no servidor TS3, que você deve inserir aqui:";
|
||||
$lang['stve0010'] = "Você receberá um token no servidor TS3, que você deve inserir aqui:";
|
||||
$lang['stve0011'] = "Token:";
|
||||
$lang['stve0012'] = "verificar";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +332,19 @@ $lang['time_sec'] = "Sec(s)";
|
||||
$lang['time_min'] = "Min(s)";
|
||||
$lang['time_hour'] = "Hour(s)";
|
||||
$lang['time_day'] = "Day(s)";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter, but that servergroup ID isn't exitent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "Uma nova versão do Sistema de ranking está disponível; Informar clientes no servidor...";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nOlá, uma nova versão do [B]Sistema de ranking[/B] está disponível!\n\nversão atual: %s\n[B]nova versão: %s[/B]\n\nConfira nosso site para obter mais informações [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\niniciando o processo de atualização em segundo plano. [B]Verifique o arquivo ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Atualização de banco de dados executada com sucesso.";
|
||||
$lang['upuser'] = "Usuário %s (ID-Ùnica: %s; Cliente-database-ID %s) recebe uma nova contagem (soma de tempo online) de %s (ativo %s).";
|
||||
@@ -323,12 +352,16 @@ $lang['upuserboost'] = "Usuário %s (ID-Ùnica: %s; Cliente-database-ID %s) rec
|
||||
$lang['upusrerr'] = "O ID-Ùnico %s não conseguiu alcançar o TeamSpeak!";
|
||||
$lang['upusrinf'] = "Usuário %s foi informado com sucesso.";
|
||||
$lang['user'] = "Nome de usuário";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Interface web";
|
||||
$lang['wiaction'] = "açao";
|
||||
$lang['wiadmhide'] = "Esconder clientes em exceção";
|
||||
$lang['wiadmhidedesc'] = "Para ocultar o usuário excluído na seguinte seleção";
|
||||
$lang['wiadmuuid'] = "ID do administrador";
|
||||
$lang['wiadmuuiddesc'] = "Digite aqui o seu ID-Ùnico; como administrador do Sistema de ranking.<br><br>Isso é necessário para redefinir a senha do interface da web.<br><br>Não existe um endereço de identificação de cliente Ùnico, não é possível redefinir a senha!";
|
||||
$lang['wiadmuuiddesc'] = "Digite aqui o seu ID-Ùnico; como administrador do Sistema de ranking.<br>Also multiple Client-IDs are possible -> comma separated<br><br>Isso é necessário para redefinir a senha do interface da web.<br><br>Não existe um endereço de identificação de cliente Ùnico, não é possível redefinir a senha!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "Impulso";
|
||||
$lang['wiboostdesc'] = "Forneça ao usuário do TeamSpeak um servidor de grupo (deve ser criado manualmente), que você pode declarar aqui como grupo de impulsionar. Definir também um fator que deve ser usado (por exemplo, 2x) e um tempo, quanto tempo o impulso deve ser avaliado. Quanto maior o fator, mais rápido um usuário atinge o próximo ranking mais alto. <br> O tempo expirou , o grupo de servidores boost é automaticamente removido do usuário em questão. O tempo começa a correr logo que o usuário recebe o grupo de servidores. <br> <br> grupo do servidor ID => factor => time (em segundos) <br> <br> Cada entrada deve separar do próximo com uma vírgula. <Br > <br> Exemplo: <br> 12 => 2 => 6000,13 => 3 => 2500,14 => 5 => 600 <br> <br> Neste usuário no grupo de servidores 12, obtenha o fator 2 para nos próximos 6000 segundos, um usuário no grupo de servidores 13 obtém o fator 3 por 2500 segundos, e assim por diante ...";
|
||||
$lang['wibot1'] = "O Sistema de ranking foi interrompido. Verifique o registro abaixo para obter mais informações!";
|
||||
@@ -403,8 +436,8 @@ $lang['winav9'] = "Atualização disponível!";
|
||||
$lang['winav10'] = "Use a interface web apenas via %s HTTPS%s Uma criptografia é fundamental para garantir sua privacidade e segurança.%sPara poder usar HTTPS, seu servidor web precisa suportar uma conexão SSL.";
|
||||
$lang['winav11'] = "Digite o ID-Ùnico do administrador do Sistema de ranking (outros -> admin ID). Isso é muito importante caso você perdeu seus dados de login para a interface da web (redefinir usando o ID-Ùnico).";
|
||||
$lang['winav12'] = "Complementos";
|
||||
$lang['winxinfo'] = "Comando \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Permite que o usuário no servidor TS3 escreva o comando \"nextup\" para o Sistema de ranking (usuário query) como mensagem de texto privada.<br><br>Como resposta, o usuário receberá uma mensagem de texto definida com o tempo necessário para o próximo promoção.<br><br><b>desativado</b> - A função está desativada. O comando 'nextup' será ignorado.<br><b>permitido - apenas próximo rank</b> - Retorna o tempo necessário para o próximo grupo.<br><b>Permitido - permitido - todas as próximas classificações</b> - Retorna o tempo necessário para todas as classificações mais altas.";
|
||||
$lang['winxinfo'] = "Comando \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Permite que o usuário no servidor TS3 escreva o comando \"!nextup\" para o Sistema de ranking (usuário query) como mensagem de texto privada.<br><br>Como resposta, o usuário receberá uma mensagem de texto definida com o tempo necessário para o próximo promoção.<br><br><b>desativado</b> - A função está desativada. O comando '!nextup' será ignorado.<br><b>permitido - apenas próximo rank</b> - Retorna o tempo necessário para o próximo grupo.<br><b>Permitido - permitido - todas as próximas classificações</b> - Retorna o tempo necessário para todas as classificações mais altas.";
|
||||
$lang['winxmode1'] = "desativado";
|
||||
$lang['winxmode2'] = "permitido - apenas a próxima classificação";
|
||||
$lang['winxmode3'] = "permitido - todas as próximas classificações";
|
||||
@@ -474,7 +507,7 @@ $lang['wits3dchdesc'] = "O ID do canal que o bot vai se conectar.<br><br>O Bot
|
||||
$lang['wits3host'] = "TS3 Endereço do host";
|
||||
$lang['wits3hostdesc'] = "Endereço do servidor TeamSpeak 3<br>(IP ou DNS)";
|
||||
$lang['wits3sm'] = "Modo lento";
|
||||
$lang['wits3smdesc'] = "Com o modo lento, você pode reduzir \"spam\" de comandos de consulta para o servidor TeamSpeak. Isso evita proibições em caso de inundação.<br>Os comandos do TeamSpeak Query são atrasados com esta função.<br><br>!!! TAMBÉM REDUZ O USO DA CPU !!!<br><br>A ativação não é recomendada, se não for necessária. O atraso aumenta a duração do Bot, o que o torna impreciso.";
|
||||
$lang['wits3smdesc'] = "Com o modo lento, você pode reduzir \"spam\" de comandos de consulta para o servidor TeamSpeak. Isso evita proibições em caso de inundação.<br>Os comandos do TeamSpeak Query são atrasados com esta função.<br><br>!!! TAMBÉM REDUZ O USO DA CPU !!!<br><br>A ativação não é recomendada, se não for necessária. O atraso aumenta a duração do Bot, o que o torna impreciso.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Nome do bot";
|
||||
$lang['wits3qnm2'] = "Segundo nome do bot";
|
||||
$lang['wits3qnm2desc'] = "Um nome reserva, se o primeiro já estiver em uso.";
|
||||
@@ -493,6 +526,8 @@ $lang['wiuptime'] = "Intervalo";
|
||||
$lang['wiuptimedesc'] = "Digite aqui quantos segundos devem ter ocorrido até o Sistema d eranking verificar as atualizações disponíveis.<br><br>Atenção, para cada verificação, o usuário listado recebe uma notificação. Se nenhum dos usuários listados estiver online, o Sistema de ranking tentará notificar com o próximo intervalo.";
|
||||
$lang['wiupuid'] = "Destinatário";
|
||||
$lang['wiupuiddesc'] = "Uma lista separada de vírgulas de ID-Ùnica, que deve ser informado no TeamSpeak por meio de mensagem privada para atualizações disponíveis.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Tradução";
|
||||
$lang['wivlangdesc'] = "Escolha um idioma padrão para o Sistema de ranking.<br><br>O idioma também é selecionável nos sites para os usuários e será armazenado para as próximas sessões.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang = array();
|
||||
$lang['adduser'] = "Userul %s (unique Client-ID: %s; Client-database-ID %s) este necunoscut -> adăugat la Ranksystem acum.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "Userul %s (unique Client-ID: %s) a primit un nouă identitate (%s). Actualizăm vechea identitate (%s) și resetăm timpul colectat!";
|
||||
$lang['crawl'] = "Scanăm clientul conectat și contorizăm activitatea...";
|
||||
$lang['clean'] = "Scanăm clienții care trebuie șterși...";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "Perioada de curațare";
|
||||
$lang['cleanpdesc'] = "Setați un timp care trebuie să treacă înainte de a se executa curățirea clienților.<br><br>Setați un timp în secunde.<br><br>Recomandat este o dată pe zi , deoarece curățarea clienților are nevoie de mult timp pentru baze de date mai mari.";
|
||||
$lang['cleanrs'] = "Clienți in baza de date Ranksystem: %s";
|
||||
$lang['cleants'] = "Clienți în baza de date TeamSpeak: %s (of %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s). Please check the permission for the folder 'avatars'!";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "%s <small>zile</small>";
|
||||
$lang['dbconerr'] = "Nu a reușit să se conecteze la baza de date MySQL: ";
|
||||
$lang['delcldgrpif'] = "Eroare la eliminarea cunoștințelor pentru servergroups: %s";
|
||||
$lang['delcldgrpsc'] = "Cunoștințe despre servergroups pentru %s Utilizatorul a eliminat cu succes.";
|
||||
$lang['delclientsif'] = "%s Clienții eliminați din baza de date Ranksystem!";
|
||||
$lang['delclientssc'] = "%s Clienții eliminați cu succes din baza de date Ranksystem!";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "Numele de utilizator și / sau parola sunt incorecte ! Încearcă din nou...";
|
||||
$lang['errlogin2'] = "Protecție forță brută: încercați din nou în %s seconde!";
|
||||
$lang['errlogin3'] = "Protecție forță brută: Prea multe greșeli. Banat pentru 300 de secunde!";
|
||||
$lang['error'] = "Eroare ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Eroare la eliminarea utilizatorului cu identitatea %s din servergroup cu servergroup-database-ID %s!";
|
||||
$lang['errremdb'] = "Eroare când eliminăm utilizatorului cu identitatea %s din baza de date Ranksystem!";
|
||||
$lang['errselusr'] = "Please choose at least one user!";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "sum. timp online";
|
||||
$lang['listuid'] = "unique Client-ID";
|
||||
$lang['login'] = "Logare";
|
||||
$lang['msg0001'] = "running version: %s";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0002'] = "Valid commands are:\n[B]!help[/B], [B]!info[/B], [B]!commands[/B]\t\t get a command list\n[B]!version[/B]\t\t\t\t\t\t\t\t get the Ranksystem version\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t\t\t\tget the time to the next rank up\n[B]!restart[/B], [B]!reboot[/B]\t\t\t\t\trestart the Ranksystem bot\n[B]!shutdown[/B], [B]!quit[/B], [B]!stop[/B]\t\t stop the Ranksystem bot";
|
||||
$lang['msg0003'] = "You are not eligible for this command!";
|
||||
$lang['msg0004'] = "Client %s (%s) requests shutdown.";
|
||||
$lang['msg0005'] = "cya";
|
||||
$lang['msg0006'] = "brb";
|
||||
$lang['msg0007'] = "Client %s (%s) requests restart.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "User-ul %s (Client-ID unic: %s; Client-database-ID %s) este un query-user sau este de mai multe ori on-line ( numai primul număr de conexiune ) - > acest lucru nu va conta !";
|
||||
$lang['noentry'] = "Nu au gasit ..";
|
||||
$lang['pass'] = "Parolă";
|
||||
@@ -99,7 +109,7 @@ $lang['sccupcount'] = "Added successfully an online time of %s seconds to the
|
||||
$lang['setontime'] = "add time";
|
||||
$lang['setontimedesc'] = "Add online time to the previous selected clients. Each user will get this time additional to their old online time.<br><br>The entered online time will be considered for the rank up and should take effect immediately.";
|
||||
$lang['sgrpadd'] = "Aloca servergroup %s (ID: %s) user-ului %s (unique Client-ID: %s; Client-database-ID %s).";
|
||||
$lang['sgrprerr'] = "S-a întâmplat o problemă cu servergroup utilizatorului %s (unique Client-ID: %s; Client-database-ID %s)!";
|
||||
$lang['sgrprerr'] = "Affected user: %s (unique Client-ID: %s; Client-database-ID %s) and server group %s (ID: %s).";
|
||||
$lang['sgrprm'] = "S-a șters servergroup %s (ID: %s) de la user-ul %s (unique Client-ID: %s; Client-database-ID %s).";
|
||||
$lang['size_byte'] = "B";
|
||||
$lang['size_kib'] = "KiB";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Limit of simultaneous groups: ";
|
||||
$lang['stag0012'] = "set groups";
|
||||
$lang['stag0013'] = "Addon ON/OFF";
|
||||
$lang['stag0014'] = "Turn the Addon on (enabled) or off (disabled).<br><br>On disabling the addon a possible part on the stats/ site will be hidden.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "Statistică de server";
|
||||
$lang['stix0002'] = "Numărul total de utilizatori";
|
||||
$lang['stix0003'] = "Vezi detalii";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Code";
|
||||
$lang['stna0004'] = "Count";
|
||||
$lang['stna0005'] = "Versions";
|
||||
$lang['stna0006'] = "Platforms";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "Server news";
|
||||
$lang['stnv0002'] = "Close";
|
||||
$lang['stnv0003'] = "Refresh client information";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "My statistics - Page content";
|
||||
$lang['stnv0020'] = "This page contains a overall summary of your personal statistics and activity on the server.";
|
||||
$lang['stnv0021'] = "The informations are collected since the beginning of the Ranksystem, they are not since the beginning of the TeamSpeak server.";
|
||||
$lang['stnv0022'] = "This page receives its values out of a database. So the values might be delayed a bit.";
|
||||
$lang['stnv0023'] = "The sum inside of the donut charts may differ to the amount of 'Total user'. The reason is that this data weren't collected with older versions of the Ranksystem.";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "Ranksystem - Statistics";
|
||||
$lang['stnv0025'] = "Limit entries";
|
||||
$lang['stnv0026'] = "all";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - for initialisation dutch translation";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - for french translation";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - for portuguese translation";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "Top users";
|
||||
$lang['sttw0002'] = "Of the week";
|
||||
$lang['sttw0003'] = "With %s hours online time";
|
||||
$lang['sttw0003'] = "With %s %s online time";
|
||||
$lang['sttw0004'] = "Top 10 compared";
|
||||
$lang['sttw0005'] = "Hours (Defines 100 %)";
|
||||
$lang['sttw0006'] = "%s hours (%s%)";
|
||||
@@ -295,19 +310,21 @@ $lang['sttw0009'] = "Top 10 vs others in active time";
|
||||
$lang['sttw0010'] = "Top 10 vs others in inactive time";
|
||||
$lang['sttw0011'] = "Top 10 (in hours)";
|
||||
$lang['sttw0012'] = "Other %s users (in hours)";
|
||||
$lang['sttw0013'] = "With %s hours active time";
|
||||
$lang['sttw0013'] = "With %s %s active time";
|
||||
$lang['sttw0014'] = "hours";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "Of the month";
|
||||
$lang['stta0001'] = "Of all time";
|
||||
$lang['stve0001'] = "\nHello %s,\nhere a [B]token[/B] to verify you for the Ranksystem:\n[B]%s[/B]\n\nPut this on the Ranksystem page inside the token field.\n\nIf you didn't request this message, please ignore it. If you get it repeated times, please contact an admin.";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "A message with the token was sent to you on the TS3 server.";
|
||||
$lang['stve0003'] = "Please enter the token, which you received on the TS3 server. If you have not received a message, please be sure you have chosen the correct unique ID.";
|
||||
$lang['stve0004'] = "The entered token does not match! Please try it again.";
|
||||
$lang['stve0005'] = "Congratulations, you are successfully verified! You can now go on..";
|
||||
$lang['stve0006'] = "An unknown error happened. Please try it again. On repeated times contact an admin";
|
||||
$lang['stve0007'] = "Verify on TeamSpeak";
|
||||
$lang['stve0008'] = "1. Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0008'] = "Choose here your unique ID on the TS3 server to verify yourself.";
|
||||
$lang['stve0009'] = " -- select yourself -- ";
|
||||
$lang['stve0010'] = "2. You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0010'] = "You will receive a token on the TS3 server, which you have to enter here:";
|
||||
$lang['stve0011'] = "Token:";
|
||||
$lang['stve0012'] = "verify";
|
||||
$lang['time_ms'] = "ms";
|
||||
@@ -315,7 +332,19 @@ $lang['time_sec'] = "Sec(s)";
|
||||
$lang['time_min'] = "Min(s)";
|
||||
$lang['time_hour'] = "Hour(s)";
|
||||
$lang['time_day'] = "Day(s)";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter, but that servergroup ID isn't exitent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "A new Version of the Ranksystem is available; Inform clients on server...";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nHey, a new version of the [B]Ranksystem[/B] is available!\n\ncurrent version: %s\n[B]new version: %s[/B]\n\nPlease check out our site for more informations [URL]http://ts-n.net/ranksystem.php#changelog[/URL].\n\nStarting the update process in background. [B]Please check the ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Database update successfully executed.";
|
||||
$lang['upuser'] = "User %s (unique Client-ID: %s; Client-database-ID %s) gets a new count (sum. online time) of %s (thereof active %s).";
|
||||
@@ -323,12 +352,16 @@ $lang['upuserboost'] = "User %s (unique Client-ID: %s; Client-database-ID %s) g
|
||||
$lang['upusrerr'] = "The unique Client-ID %s couldn't reached on the TeamSpeak!";
|
||||
$lang['upusrinf'] = "User %s was successfully informed.";
|
||||
$lang['user'] = "Username";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Webinterface";
|
||||
$lang['wiaction'] = "action";
|
||||
$lang['wiadmhide'] = "hide excepted clients";
|
||||
$lang['wiadmhidedesc'] = "To hide excepted user in the following selection";
|
||||
$lang['wiadmuuid'] = "admin ID";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br><br>This is required to reset the password of the webinterface.<br><br>Is there no unique Client-ID address defined, it is not possible to reset the password!";
|
||||
$lang['wiadmuuiddesc'] = "Enter here your unique Client-ID; as the administrator of the Ranksystem.<br>Also multiple Client-IDs are possible -> comma separated<br><br>This is required to reset the password of the webinterface.<br><br>Is there no unique Client-ID address defined, it is not possible to reset the password!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "boost";
|
||||
$lang['wiboostdesc'] = "Give an user on your TeamSpeak server a servergroup (have to be created manually), which you can declare here as boost group. Define also a factor which should be used (for example 2x) and a time, how long the boost should be rated.<br>The higher the factor, the faster an user reaches the next higher rank.<br>Is the time expired, the boost servergroup get automatically removed from the concerned user. The time starts running as soon as the user gets the servergroup.<br><br>servergroup ID => factor => time (in seconds)<br><br>Each entry have to separate from next with a comma.<br><br>Example:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>On this an user in servergroup 12 get the factor 2 for the next 6000 seconds, an user in servergroup 13 get the factor 3 for 2500 seconds, and so on...";
|
||||
$lang['wibot1'] = "Ranksystem Bot should be stopped. Check the log below for more information!";
|
||||
@@ -403,8 +436,8 @@ $lang['winav9'] = "Update available!";
|
||||
$lang['winav10'] = "Please use the webinterface only via %s HTTPS%s An encryption is critical to ensure your privacy and security.%sTo be able to use HTTPS your webserver needs to support an SSL connection.";
|
||||
$lang['winav11'] = "Please enter the unique Client-ID of the admin of the Ranksystem (Other -> admin ID). This is very important in case you lost your login details for the webinterface (to reset these).";
|
||||
$lang['winav12'] = "Addons";
|
||||
$lang['winxinfo'] = "Command \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>deactivated</b> - The function is deactivated. The command 'nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxinfo'] = "Command \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Allows the user on the TS3 server to write the command \"!nextup\" to the Ranksystem (query) bot as private textmessage.<br><br>As answer the user will get a defined text message with the needed time for the next rankup.<br><br><b>deactivated</b> - The function is deactivated. The command '!nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxmode1'] = "deactivated";
|
||||
$lang['winxmode2'] = "allowed - only next rank";
|
||||
$lang['winxmode3'] = "allowed - all next ranks";
|
||||
@@ -474,7 +507,7 @@ $lang['wits3dchdesc'] = "The channel-ID, the bot should connect with.<br><br>Th
|
||||
$lang['wits3host'] = "TS3 Hostaddress";
|
||||
$lang['wits3hostdesc'] = "TeamSpeak 3 Server address<br>(IP oder DNS)";
|
||||
$lang['wits3sm'] = "Slowmode";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the Bot, which makes it imprecisely.";
|
||||
$lang['wits3smdesc'] = "With the Slowmode you can reduce \"spam\" of query commands to the TeamSpeak server. This prevent bans in case of flood.<br>TeamSpeak Query commands get delayed with this function.<br><br>!!! ALSO IT REDUCE THE CPU USAGE !!!<br><br>The activation is not recommended, if not required. The delay increases the duration of the Bot, which makes it imprecisely.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Botname";
|
||||
$lang['wits3qnm2'] = "2nd Botname";
|
||||
$lang['wits3qnm2desc'] = "A fallback Botname, if the first one is already in use.";
|
||||
@@ -493,6 +526,8 @@ $lang['wiuptime'] = "Interval";
|
||||
$lang['wiuptimedesc'] = "Enter here how much seconds have to gone till the Ranksystem should check for available updates.<br><br>Attention, for each check the listed user gets a notification. If no one of the listed users is online, the Ranksystem will try to notificate with the next interval.";
|
||||
$lang['wiupuid'] = "Recipient";
|
||||
$lang['wiupuiddesc'] = "A comma separate list of unique Client-IDs, which shoud be informed on the TeamSpeak via private message for available updates.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Language";
|
||||
$lang['wivlangdesc'] = "Choose a default language for the Ranksystem.<br><br>The language is also selectable on the websites for the users and will be stored for the session.";
|
||||
?>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?PHP
|
||||
$lang= array();
|
||||
$lang['adduser'] = "Пользователь %s (UID клиента: %s; DBID: %s) неизвестен -> добавлен в БД RankSystem.";
|
||||
$lang['brute'] = "Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP %s.";
|
||||
$lang['changedbid'] = "У пользователя %s (UID: %s) изменился TeamSpeak DBID (%s). Обновляем старый Client-DBID (%s) и сбрасываем ему старое время!";
|
||||
$lang['crawl'] = "Сканирование активности подключенных пользователей...";
|
||||
$lang['clean'] = "Сканирование пользователей, которых необходимо удалить...";
|
||||
@@ -12,16 +13,24 @@ $lang['cleanp'] = "Период очистки БД RankSystem";
|
||||
$lang['cleanpdesc'] = "Укажите время, которое должно пройти перед очередной очисткой пользователей.<br><br>Устанавливается в секундах.<br><br>Для больших баз данных рекомендуется использовать один раз в день.";
|
||||
$lang['cleanrs'] = "Пользователей в базе данных Ranksystem: %s";
|
||||
$lang['cleants'] = "Пользователей найдено в базе данных TeamSpeak: %s (at %s)";
|
||||
$lang['clean0001'] = "Deleted unnecessary avatar %s (erstwhile unique Client-ID: %s) successfully.";
|
||||
$lang['clean0002'] = "Error while deleting unnecessary avatar %s (unique Client-ID: %s). Please check the permission for the folder 'avatars'!";
|
||||
$lang['clean0003'] = "Check for cleaning database done. All unnecessary stuff was deleted.";
|
||||
$lang['clean0004'] = "Check for deleting users done. Nothing was changed, because function 'clean clients' is disabled (webinterface - core).";
|
||||
$lang['days'] = "%s <small>дней</small>";
|
||||
$lang['dbconerr'] = "Ошибка подключения к базе данных: ";
|
||||
$lang['delcldgrpif'] = "Ошибка удаления пользователя из группы сервера: %s";
|
||||
$lang['delcldgrpsc'] = "Данные о группах сервера для пользователя %s успешно удалены.";
|
||||
$lang['delclientsif'] = "%s клиент(ов) удалено из базы данных RankSystem!";
|
||||
$lang['delclientssc'] = "%s клиент(ов) успешно удалено из базы данных RankSystem!";
|
||||
$lang['errgrpid'] = "Your changes were not stored to the database due errors occurred. Please fix the problems and save your changes after!";
|
||||
$lang['errgrplist'] = "Error while getting servergrouplist: ";
|
||||
$lang['errlogin'] = "Неверно введён логин или пароль! Пожалуйста, повторите ввод данных заново.";
|
||||
$lang['errlogin2'] = "Защита от перебора: Попробуйте повторить через %s секунд!";
|
||||
$lang['errlogin3'] = "Защита от перебора: От вас поступает слишком много запросов. Вы были забанены на 300 секунд!";
|
||||
$lang['error'] = "Ошибка ";
|
||||
$lang['errorts3'] = "TS3 Error: ";
|
||||
$lang['errperm'] = "Please check the permission for the folder '%s'!";
|
||||
$lang['errremgrp'] = "Ошибка удаления пользователя с UID: %s из группы сервера ID: %s!";
|
||||
$lang['errremdb'] = "Ошибка удаления пользователя с UID %s из базы данных RankSystem!";
|
||||
$lang['errselusr'] = "Пожалуйста, укажите пользователя!";
|
||||
@@ -77,13 +86,14 @@ $lang['listsumo'] = "Сумм. время подключения";
|
||||
$lang['listuid'] = "Уникальный ID клиента(UID)";
|
||||
$lang['login'] = "Авторизоваться";
|
||||
$lang['msg0001'] = "используемая версия: %s";
|
||||
$lang['msg0002'] = "Список доступных команд:\n[B]help[/B], [B]info[/B], [B]commands[/B]\t\t выводят список доступных команд\n[B]version[/B]\t\t\t\t\t\t\t\t выводит информацию о версии системы рангов\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t выводит время, через которое произойдет повышение ранга\n[B]restart[/B], [B]reboot[/B]\t\t\t\t\tперезапускают систему рангов\n[B]shutdown[/B], [B]quit[/B], [B]stop[/B]\t\t выключают систему рангов";
|
||||
$lang['msg0002'] = "Список доступных команд:\n[B]help[/B], [B]info[/B], [B]commands[/B]\t\t выводят список доступных команд\n[B]version[/B]\t\t\t\t\t\t\t\t выводит информацию о версии системы рангов\n[B]!update[/B], [B]!checkupdate[/B]\t\t check for new version and run update\n[B]!clean[/B]\t\t\t\t\t\t\t\t\t start cleaning of the user database\n[B]!next[/B], [B]nextup[/B]\t\t\t\t\t\t выводит время, через которое произойдет повышение ранга\n[B]restart[/B], [B]reboot[/B]\t\t\t\t\tперезапускают систему рангов\n[B]shutdown[/B], [B]quit[/B], [B]stop[/B]\t\t выключают систему рангов";
|
||||
$lang['msg0003'] = "У вас нет доступа для выполнения данной команды!";
|
||||
$lang['msg0004'] = "Клиент %s (%s) выключил систему рангов.";
|
||||
$lang['msg0005'] = "Система рангов выключается... Прямо сейчас!";
|
||||
$lang['msg0006'] = "Система рангов перезапускается...";
|
||||
$lang['msg0007'] = "Клиент %s (%s) перезапустил систему рангов.";
|
||||
$lang['msg0008'] = "Update check done. If an update is available, it will runs immediately.";
|
||||
$lang['msg0009'] = "Cleaning of the user-database was started. Have a look to the ranksystem log for more information.";
|
||||
$lang['nocount'] = "Пользователь %s (UID: %s; Клиент ID %s) является query-пользователем -> не будет учитываться!";
|
||||
$lang['noentry'] = "Записей не найдено..";
|
||||
$lang['pass'] = "Пароль";
|
||||
@@ -99,7 +109,7 @@ $lang['sccupcount'] = "Клиенту(ам) => (%s) успешно начис
|
||||
$lang['setontime'] = "Начислить время";
|
||||
$lang['setontimedesc'] = "Данная функция начисляет пользователю время онлайна с учётом прошлых накоплений. От этого времени также будет впоследствии сформирован ранг пользователя.<br><br>Введенное время будет учитываться при выдаче ранга и должно подействовать мгновенно (немного дольше при включенном SlowMode'е).";
|
||||
$lang['sgrpadd'] = "Выдана группа сервера №%s (ID: %s) пользователю %s (UID клиента: %s; DBID: %s).";
|
||||
$lang['sgrprerr'] = "Что-то пошло не так! Проблема с группой сервера %s у пользователя (UID клиента: %s; ID в базе данных %s)!";
|
||||
$lang['sgrprerr'] = "Affected user: %s (unique Client-ID: %s; Client-database-ID %s) and server group %s (ID: %s).";
|
||||
$lang['sgrprm'] = "С пользователя %s (ID: %s) снята группа сервера %s (UID: %s; DBID: %s).";
|
||||
$lang['size_byte'] = "Б";
|
||||
$lang['size_kib'] = "КиБ";
|
||||
@@ -124,6 +134,7 @@ $lang['stag0011'] = "Максимум групп одновременно: ";
|
||||
$lang['stag0012'] = "Установить группы";
|
||||
$lang['stag0013'] = "Аддон ВКЛ/ВЫКЛ";
|
||||
$lang['stag0014'] = "Позволяет включить (ВКЛ) или выключить (ВЫКЛ) аддон.<br><br>Если отключить аддон то пункт меню на странице навигации stats/ так же будет скрыт.";
|
||||
$lang['stag0015'] = "You couldn't be find on the TeamSpeak server. Please %sclick here%s to verify yourself.";
|
||||
$lang['stix0001'] = "Статистика сервера";
|
||||
$lang['stix0002'] = "Пользователей зарегистрировано в базе RankSystem";
|
||||
$lang['stix0003'] = "Посмотреть подробнее";
|
||||
@@ -220,6 +231,7 @@ $lang['stna0003'] = "Код страны";
|
||||
$lang['stna0004'] = "зарегистрировано";
|
||||
$lang['stna0005'] = "Версии";
|
||||
$lang['stna0006'] = "Платформы";
|
||||
$lang['stna0007'] = "Percentage";
|
||||
$lang['stnv0001'] = "Наши новости";
|
||||
$lang['stnv0002'] = "Закрыть";
|
||||
$lang['stnv0003'] = "Обновление информации о клиенте";
|
||||
@@ -242,7 +254,7 @@ $lang['stnv0019'] = "Статистика сервера - содержимо
|
||||
$lang['stnv0020'] = "Эта страница содержит информацию о вашей статистике и активности на сервере.";
|
||||
$lang['stnv0021'] = "Большинство этой информации было собрано с момента начального старта системы RankSystem, никак не с момента первого запуска TeamSpeak сервера.";
|
||||
$lang['stnv0022'] = "Данная информация получена из базы данных RankSystem и может отличаться от той, которая хранится в базе данных TeamSpeak.";
|
||||
$lang['stnv0023'] = "К тому же, информация внутри диаграмм может расходиться с реальными цифрами из базы данных TeamSpeak 3. Это связано с тем, что старые версии RankSystem не собирали часть той информации, которая используется сейчас.";
|
||||
$lang['stnv0023'] = "The amount of online time for all user per week and per month will be only calculated every 15 minutes. All other values should be nearly live (at maximum delayed for a few seconds).";
|
||||
$lang['stnv0024'] = "RankSystem — статистика TeamSpeak 3 сервера";
|
||||
$lang['stnv0025'] = "Ограничение списка";
|
||||
$lang['stnv0026'] = "Все";
|
||||
@@ -283,9 +295,12 @@ $lang['stri0017'] = "<a href=\"//whitecs.ro/\" target=\"_blank\">SakaLuX</a> -
|
||||
$lang['stri0018'] = "<a href=\"//r4p3.net/members/0x0539.5476/\" target=\"_blank\">0x0539</a> - for initialisation dutch translation";
|
||||
$lang['stri0019'] = "<a href=\"//umazinggames.fr/\" target=\"_blank\">Quentinti</a> - for french translation";
|
||||
$lang['stri0020'] = "<a href=\"mailto://celso@esbsb.com.br\" target=\"_blank\">Pasha</a> - for portuguese translation";
|
||||
$lang['stri0021'] = "<a href=\"//hdf-multigaming.de\" target=\"_blank\">Shad86</a> - for the great support on GitHub & our public server, sharing his ideas, pre-testing all that shit & much more";
|
||||
$lang['stri0022'] = "<a href=\"//magicbroccoli.de\" target=\"_blank\">mightybrocolli</a> - for sharing their ideas & pre-testing";
|
||||
$lang['stri0023'] = "Stable since: 18/04/2016.";
|
||||
$lang['sttw0001'] = "Топ-10 пользователей";
|
||||
$lang['sttw0002'] = "За неделю";
|
||||
$lang['sttw0003'] = "Набрал %s часов онлайна";
|
||||
$lang['sttw0003'] = "Набрал %s %s часов онлайна";
|
||||
$lang['sttw0004'] = "Топ-10 в графике (Разрыв между участниками)";
|
||||
$lang['sttw0005'] = "Часов (Представляет собой 100 %)";
|
||||
$lang['sttw0006'] = "%s часов (%s%)";
|
||||
@@ -295,19 +310,21 @@ $lang['sttw0009'] = "Топ-10 против остальных по актив
|
||||
$lang['sttw0010'] = "Tоп-10 против остальных по оффлайну";
|
||||
$lang['sttw0011'] = "Топ-10 в графике";
|
||||
$lang['sttw0012'] = "Остальные %s клиенты (в часах)";
|
||||
$lang['sttw0013'] = "С %s часами активности";
|
||||
$lang['sttw0013'] = "С %s %s часами активности";
|
||||
$lang['sttw0014'] = "hours";
|
||||
$lang['sttw0015'] = "minutes";
|
||||
$lang['sttm0001'] = "За месяц";
|
||||
$lang['stta0001'] = "За все время";
|
||||
$lang['stve0001'] = "\nПривет %s,\nвот [B]ключ[/B] для проверки вас в системе рангов:\n[B]%s[/B]\n\nВставьте этот ключ в поле для ввода на странице ввода ключа.\n\nЕсли вы не запрашивали данное сообщение - просто проигнорируйте его. Если вы получаете его уже не в первый раз - свяжитесь с администратором.";
|
||||
$lang['stve0001'] = "\nHello %s,\nto verify you with the Ranksystem click on the link below:\n[B]%s[/B]\n\nIf the link doesn't work, you can also type the token manually in:\n%s\n\nIf you didn't request this message, please ignore it. When you are getting it repeated times, please contact an admin.";
|
||||
$lang['stve0002'] = "Сообщение с ключем было отправлено вам через личное сообщение на сервере TS3.";
|
||||
$lang['stve0003'] = "Пожалуйста, введите ключ, который вы получили на сервере TS3. Если вы не получили ключ - убедитесь что вы выбрали правильный уникальный ID.";
|
||||
$lang['stve0004'] = "Ключ, который вы ввели не подходит! Попробуйте снова.";
|
||||
$lang['stve0005'] = "Поздравляем, проверка произошла успешно! Теперь вы можете пользоваться всем функционалом..";
|
||||
$lang['stve0006'] = "Произошла неизвестная ошибка. Попробуйте ещё раз. Если не получится - свяжитесь с администратором.";
|
||||
$lang['stve0007'] = "Проверка на сервере TS";
|
||||
$lang['stve0008'] = "1. Выберите свой уникальный ID на сервере что бы произвести проверку.";
|
||||
$lang['stve0008'] = "Выберите свой уникальный ID на сервере что бы произвести проверку.";
|
||||
$lang['stve0009'] = " -- выберите себя -- ";
|
||||
$lang['stve0010'] = "2. Вы получите ключ для подтверждения на сервере, который вам необходимо ввести в данное поле:";
|
||||
$lang['stve0010'] = "Вы получите ключ для подтверждения на сервере, который вам необходимо ввести в данное поле:";
|
||||
$lang['stve0011'] = "Ключ:";
|
||||
$lang['stve0012'] = "проверить";
|
||||
$lang['time_ms'] = "мс";
|
||||
@@ -315,7 +332,19 @@ $lang['time_sec'] = "Секунды";
|
||||
$lang['time_min'] = "Минуты";
|
||||
$lang['time_hour'] = "Часы";
|
||||
$lang['time_day'] = "Дни";
|
||||
$lang['upgrp0001'] = "There is a servergroup with ID %s configured inside your '%s' paramter, but that servergroup ID isn't exitent on your TS3 server (anymore)! Please correct this or errors might happen!";
|
||||
$lang['upgrp0002'] = "Download new ServerIcon";
|
||||
$lang['upgrp0003'] = "Error while writing out the servericon.";
|
||||
$lang['upgrp0004'] = "Error while downloading TS3 ServerIcon from TS3 server: ";
|
||||
$lang['upgrp0005'] = "Error while deleting the servericon.";
|
||||
$lang['upgrp0006'] = "Noticed the ServerIcon got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0007'] = "Error while writing out the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0008'] = "Error while downloading servergroup icon from group %s with ID %s: ";
|
||||
$lang['upgrp0009'] = "Error while deleting the servergroup icon from group %s with ID %s.";
|
||||
$lang['upgrp0010'] = "Noticed icon of severgroup %s with ID %s got removed from TS3 server, now it was also removed from the Ranksystem.";
|
||||
$lang['upgrp0011'] = "Download new ServerGroupIcon for group %s with ID: %s";
|
||||
$lang['upinf'] = "Доступна новая версия RankSystem; Сообщаю пользователям из списка на сервере...";
|
||||
$lang['upinf2'] = "The Ranksystem was recently (%s) updated. Check out the %sChangelog%s for more information about the changes.";
|
||||
$lang['upmsg'] = "\nЭй, доступна новая версия [B]RankSystem[/B]!\n\nТекущая версия: %s\n[B]новая версия: %s[/B]\n\nПожалуйста, посетите наш сайт [URL]http://ts-n.net/ranksystem.php#changelog[/URL] для получения более подробной информации.\n\nПроцесс обновления был запущен в фоне. [B]Больше информации в файле /logs/ranksystem.log![/B]";
|
||||
$lang['upsucc'] = "Обновление базы данных успешно выполнено.";
|
||||
$lang['upuser'] = "Пользователь %s (Никнейм: %s; DBID: %s) получает новое количество (сумм. время подключения) из %s (активное время онлайна %s).";
|
||||
@@ -323,12 +352,16 @@ $lang['upuserboost'] = "Пользователь %s (Никнейм: %s; DBID:
|
||||
$lang['upusrerr'] = "Пользователь с уникальным ID %s не был найден (не правильно указан Уникальный ID или пользователь в настоящий момент не подключен к серверу Teamspeak)!";
|
||||
$lang['upusrinf'] = "Пользователь %s был успешно проинформирован.";
|
||||
$lang['user'] = "Логин";
|
||||
$lang['verify0001'] = "Please be sure, you are really connected to the TS3 server!";
|
||||
$lang['verify0002'] = "Enter, if not already done, the Ranksystem %sverification-channel%s!";
|
||||
$lang['verify0003'] = "If you are really connected to the TS3 server, please contact an admin there.<br>This needs to create a verfication channel on the TeamSpeak server. After this, the created channel needs to be defined to the Ranksystem, which only an admin can do.<br>More information the admin will find inside the webinterface (-> core) of the Ranksystem.<br><br>Without this activity it is not possible to verify you for the Ranksystem at this moment! Sorry :(";
|
||||
$lang['verify0004'] = "No user inside the verification channel found...";
|
||||
$lang['wi'] = "Веб-панель";
|
||||
$lang['wiaction'] = "Выполнить";
|
||||
$lang['wiadmhide'] = "скрывать исключенных клиентов";
|
||||
$lang['wiadmhidedesc'] = "Нужно ли скрывать исключенных клиентов в данном списке";
|
||||
$lang['wiadmuuid'] = "UID администратора";
|
||||
$lang['wiadmuuiddesc'] = "Введите здесь уникальный Teamspeak 3 идентификатор(UID) Администратора RankSystem.<br><br>В дальнейшем это пригодится вам, если вы потеряете пароль и доступ к веб-панели.<br><br>Если UID не задан, то сбросить пароль будет невозможно!";
|
||||
$lang['wiadmuuiddesc'] = "Введите здесь уникальный Teamspeak 3 идентификатор(UID) Администратора RankSystem.<br>Also multiple Client-IDs are possible -> comma separated<br><br>В дальнейшем это пригодится вам, если вы потеряете пароль и доступ к веб-панели.<br><br>Если UID не задан, то сбросить пароль будет невозможно!<br><br>Here defined unique Client-IDs are also permitted to send admin commands to the Bot (!reboot, !shutdown, !update).";
|
||||
$lang['wiboost'] = "Бустер онлайна";
|
||||
$lang['wiboostdesc'] = "Вы можете указать здесь ID групп сервера (Их необходимо создать на TeamSpeak сервере заранее), выступающие в роли множителя накапливаемого времени, которое получает пользователь за онлайн на сервере. Также вы должны указать на сколько должно умножаться время и период действия группы-множителя. Чем больше множитель времени, тем быстрее пользователь достигнет следующий ранг. По окончанию действия множителя, группа-множитель автоматически снимается с пользователя. Пример указания группы-множителя следующий: ID группы=> множитель=> время(В секундах). Если вы хотите сделать две или больше таких групп, то разделите их между собой запятой.<br><br>Пример:<br>12=>2=>6000,13=>3=>2500,14=>5=>600<br><br>Из примера выше следует, что группа с ID 12 дает множитель времени х2 на 6000 секунд, а группа 13 имеет множитель х3 на 2500 секунд. 14 группа соответственно, имеет множитель х5 на 600 секунд.";
|
||||
$lang['wibot1'] = "RankSystem была выключена. Более подробную информацию смотрите в логе ниже!";
|
||||
@@ -403,8 +436,8 @@ $lang['winav9'] = "Доступно обновление!";
|
||||
$lang['winav10'] = "Соединение с данным сайтом не защищено с помощью %s HTTPS%sЭто может повлечь за собой проблемы для вашей приватности и безопасности! %sДля использования HTTPS ваш веб-сервер должен поддерживать SSL-соединение.";
|
||||
$lang['winav11'] = "Пожалуйста, укажите ваш уникальный идентификатор(UID) в разделе меню \"Прочее\". Это очень важно, на случай, если вы потеряете пароль от аккаунта веб-панели.";
|
||||
$lang['winav12'] = "Аддоны";
|
||||
$lang['winxinfo'] = "Команда \"nextup\"";
|
||||
$lang['winxinfodesc'] = "Разрешает отправлять RankSytem-боту команду \"nextup\" личным сообщением.<br><br>После отправки команды пользователю будет отправлено ответное сообщение с информацией о требуемом времени до следующего повышения.<br><br><b>deactivated</b> - The function is deactivated. The command 'nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxinfo'] = "Команда \"!nextup\"";
|
||||
$lang['winxinfodesc'] = "Разрешает отправлять RankSytem-боту команду \"!nextup\" личным сообщением.<br><br>После отправки команды пользователю будет отправлено ответное сообщение с информацией о требуемом времени до следующего повышения.<br><br><b>deactivated</b> - The function is deactivated. The command '!nextup' will be ignored.<br><b>allowed - only next rank</b> - Gives back the needed time for the next group.<br><b>allowed - all next ranks</b> - Gives back the needed time for all higher ranks.";
|
||||
$lang['winxmode1'] = "Отключена";
|
||||
$lang['winxmode2'] = "Включена - только следующий ранг";
|
||||
$lang['winxmode3'] = "Включена - все следующие ранги";
|
||||
@@ -474,7 +507,7 @@ $lang['wits3dchdesc'] = "При подключении к серверу, бо
|
||||
$lang['wits3host'] = "Адрес TS3";
|
||||
$lang['wits3hostdesc'] = "Адрес TeamSpeak 3 Сервера<br>(IP или DNS)";
|
||||
$lang['wits3sm'] = "Замедленный режим";
|
||||
$lang['wits3smdesc'] = "Замедленный режим позволяет предотвратить флуд query-командами на сервер, из-за которых RankSystem может получить временный бан со стороны TeamSpeak 3 сервера.<br><br>!!! Также это снижает нагрузку на ЦП и уменьшает расход трафика !!!<br><br>Однако, не включайте эту функцию, если нет в ней нужды, потому как с ней не работает очистка базы от неактивных пользователей. К тому же, замедленный режим значительно увеличивает время обработки разного рода процессов.";
|
||||
$lang['wits3smdesc'] = "Замедленный режим позволяет предотвратить флуд query-командами на сервер, из-за которых RankSystem может получить временный бан со стороны TeamSpeak 3 сервера.<br><br>!!! Также это снижает нагрузку на ЦП и уменьшает расход трафика !!!<br><br>Однако, не включайте эту функцию, если нет в ней нужды, потому как с ней не работает очистка базы от неактивных пользователей. К тому же, замедленный режим значительно увеличивает время обработки разного рода процессов.<br><br>The last column shows the required time for one duration (in seconds):<br><br>disabled    0,0   0,10<br>low delay   0,2   2,60<br>middle delay  0,5   6,50<br>high delay   1,0  13,00<br>huge delay  2,0  26,00<br>ultra delay   5,0  65,00<br><br>Consequently, the values (times) with the ultra delay become inaccurate by about 65 seconds! Depending on, what to do and/or server size even higher!";
|
||||
$lang['wits3qnm'] = "Основн. ник бота";
|
||||
$lang['wits3qnm2'] = "Запас. ник бота";
|
||||
$lang['wits3qnm2desc'] = "Этот никнейм будет использоваться, если первый уже занят. Рекомендуется заполнить!";
|
||||
@@ -493,6 +526,8 @@ $lang['wiuptime'] = "Интервал проверки";
|
||||
$lang['wiuptimedesc'] = "Введите здесь промежуток в секундах, через который RankSystem должна проверять наличие обновлений RankSystem.<br>Внимание, после каждой проверки перечисленные пользователи получат уведомление о новой версии. Если ни один из перечисленных пользователей не онлайн, RankSystem будет пытаться уведомить пользователей при следующем сканировании.";
|
||||
$lang['wiupuid'] = "Получатель обновлений";
|
||||
$lang['wiupuiddesc'] = "Укажите через запятую UID Teamspeak 3 пользователей, которые будут проинформированы о доступных обновлениях RankSystem, посредством отправки приватного сообщения через TeamSpeak.";
|
||||
$lang['wiverify'] = "Verification-Channel";
|
||||
$lang['wiverifydesc'] = "Enter here the channel-ID of the verification channel.<br><br>This channel need to be set up <u>manual</u> on your TeamSpeak server. Name, permissions and other properties could be defined for your choice; only user should be possible to join this channel!<br><br>The verification is done by the respective user himself on the statistics-page (/stats/). This is only necessary if the website visitor can't automatically be matched/related with the TeamSpeak user.<br><br>To verify the TeamSpeak user has to be inside of the verification channel. There he can receive the token with which he verifies himself for the statistics page.";
|
||||
$lang['wivlang'] = "Язык";
|
||||
$lang['wivlangdesc'] = "Выберите язык, используемый системой RankSystem по умолчанию.<br><br>Язык сайта по-прежнему будет доступен для переключения всем пользователям.";
|
||||
?>
|
||||
File diff suppressed because one or more lines are too long
1
logs/.gitignore
vendored
1
logs/.gitignore
vendored
@@ -1,2 +1,3 @@
|
||||
*
|
||||
*.log
|
||||
!.gitignore
|
||||
186
other/config.php
186
other/config.php
@@ -4,6 +4,7 @@ if(isset($db['type']) === false) {
|
||||
$db['type']="mysql";
|
||||
}
|
||||
$dbname = $db['dbname'];
|
||||
$dbtype = $db['type'];
|
||||
$dbserver = $db['type'].':host='.$db['host'].';dbname='.$db['dbname'];
|
||||
if ($db['type'] == 'mysql') {
|
||||
$dboptions = array(
|
||||
@@ -16,126 +17,155 @@ if ($db['type'] == 'mysql') {
|
||||
try {
|
||||
$mysqlcon = new PDO($dbserver, $db['user'], $db['pass'], $dboptions);
|
||||
} catch (PDOException $e) {
|
||||
$err_msg = "Database Connection failed: ".$e->getMessage()."\n"; $err_lvl = 3;
|
||||
$language = "en";
|
||||
echo "Database Connection failed: ".$e->getMessage()."\n"; $err_lvl = 3;
|
||||
exit;
|
||||
}
|
||||
|
||||
if (isset($mysqlcon) && ($config = $mysqlcon->query("SELECT * FROM config"))) {
|
||||
if($config->rowCount() != 0) {
|
||||
$config = $config->fetchAll();
|
||||
$ts['host'] = $config[0]['tshost'];
|
||||
$ts['query'] = $config[0]['tsquery'];
|
||||
$ts['voice'] = $config[0]['tsvoice'];
|
||||
$ts['user'] = $config[0]['tsuser'];
|
||||
$ts['pass'] = $config[0]['tspass'];
|
||||
$webuser = $config[0]['webuser'];
|
||||
$webpass = $config[0]['webpass'];
|
||||
$rspathhex = 'rs_'.dechex(crc32(__DIR__)).'_';
|
||||
function rem_session_ts3($rspathhex) {
|
||||
unset($_SESSION[$rspathhex.'admin']);
|
||||
unset($_SESSION[$rspathhex.'clientip']);
|
||||
unset($_SESSION[$rspathhex.'connected']);
|
||||
unset($_SESSION[$rspathhex.'inactivefilter']);
|
||||
unset($_SESSION[$rspathhex.'language']);
|
||||
unset($_SESSION[$rspathhex.'logfilter']);
|
||||
unset($_SESSION[$rspathhex.'logfilter2']);
|
||||
unset($_SESSION[$rspathhex.'multiple']);
|
||||
unset($_SESSION[$rspathhex.'newversion']);
|
||||
unset($_SESSION[$rspathhex.'number_lines']);
|
||||
unset($_SESSION[$rspathhex.'password']);
|
||||
unset($_SESSION[$rspathhex.'serverport']);
|
||||
unset($_SESSION[$rspathhex.'tsavatar']);
|
||||
unset($_SESSION[$rspathhex.'tscldbid']);
|
||||
unset($_SESSION[$rspathhex.'tsconnections']);
|
||||
unset($_SESSION[$rspathhex.'tscreated']);
|
||||
unset($_SESSION[$rspathhex.'tsname']);
|
||||
unset($_SESSION[$rspathhex.'tsuid']);
|
||||
unset($_SESSION[$rspathhex.'upinfomsg']);
|
||||
unset($_SESSION[$rspathhex.'username']);
|
||||
unset($_SESSION[$rspathhex.'uuid_verified']);
|
||||
}
|
||||
|
||||
if (isset($mysqlcon) && ($config = $mysqlcon->query("SELECT * FROM config")->fetch())) {
|
||||
if(count($config) != 0) {
|
||||
$ts['host'] = $config['tshost'];
|
||||
$ts['query'] = $config['tsquery'];
|
||||
$ts['voice'] = $config['tsvoice'];
|
||||
$ts['user'] = $config['tsuser'];
|
||||
$ts['pass'] = $config['tspass'];
|
||||
$webuser = $config['webuser'];
|
||||
$webpass = $config['webpass'];
|
||||
if(!isset($_GET["lang"])) {
|
||||
if(isset($_SESSION['language'])) {
|
||||
$language = $_SESSION['language'];
|
||||
if(isset($_SESSION[$rspathhex.'language'])) {
|
||||
$language = $_SESSION[$rspathhex.'language'];
|
||||
} else {
|
||||
$language = $config[0]['language'];
|
||||
$language = $config['language'];
|
||||
}
|
||||
} elseif($_GET["lang"] == "ar") {
|
||||
$language = "ar";
|
||||
$_SESSION['language'] = "ar";
|
||||
$_SESSION[$rspathhex.'language'] = "ar";
|
||||
} elseif($_GET["lang"] == "de") {
|
||||
$language = "de";
|
||||
$_SESSION['language'] = "de";
|
||||
$_SESSION[$rspathhex.'language'] = "de";
|
||||
} elseif($_GET["lang"] == "fr") {
|
||||
$language = "fr";
|
||||
$_SESSION['language'] = "fr";
|
||||
$_SESSION[$rspathhex.'language'] = "fr";
|
||||
} elseif($_GET["lang"] == "it") {
|
||||
$language = "it";
|
||||
$_SESSION['language'] = "it";
|
||||
$_SESSION[$rspathhex.'language'] = "it";
|
||||
} elseif($_GET["lang"] == "nl") {
|
||||
$language = "nl";
|
||||
$_SESSION['language'] = "nl";
|
||||
$_SESSION[$rspathhex.'language'] = "nl";
|
||||
} elseif($_GET["lang"] == "ro") {
|
||||
$language = "ro";
|
||||
$_SESSION['language'] = "ro";
|
||||
$_SESSION[$rspathhex.'language'] = "ro";
|
||||
} elseif($_GET["lang"] == "ru") {
|
||||
$language = "ru";
|
||||
$_SESSION['language'] = "ru";
|
||||
$_SESSION[$rspathhex.'language'] = "ru";
|
||||
} elseif($_GET["lang"] == "pt") {
|
||||
$language = "pt";
|
||||
$_SESSION['language'] = "pt";
|
||||
$_SESSION[$rspathhex.'language'] = "pt";
|
||||
} else {
|
||||
$language = "en";
|
||||
$_SESSION['language'] = "en";
|
||||
$_SESSION[$rspathhex.'language'] = "en";
|
||||
}
|
||||
$queryname = $config[0]['queryname'];
|
||||
$queryname2 = $config[0]['queryname2'];
|
||||
$slowmode = $config[0]['slowmode'];
|
||||
if(empty($config[0]['grouptime'])) {
|
||||
$queryname = $config['queryname'];
|
||||
$queryname2 = $config['queryname2'];
|
||||
$slowmode = $config['slowmode'];
|
||||
if(empty($config['grouptime'])) {
|
||||
$grouptime = null;
|
||||
} else {
|
||||
$grouptimearr = explode(',', $config[0]['grouptime']);
|
||||
$grouptimearr = explode(',', $config['grouptime']);
|
||||
foreach ($grouptimearr as $entry) {
|
||||
list($key, $value) = explode('=>', $entry);
|
||||
$grouptime[$key] = $value;
|
||||
}
|
||||
}
|
||||
if(empty($config[0]['boost'])) {
|
||||
if(empty($config['boost'])) {
|
||||
$boostarr = null;
|
||||
} else {
|
||||
$boostexp = explode(',', $config[0]['boost']);
|
||||
$boostexp = explode(',', $config['boost']);
|
||||
foreach ($boostexp as $entry) {
|
||||
list($key, $value1, $value2) = explode('=>', $entry);
|
||||
$boostarr[$key] = array("group"=>$key,"factor"=>$value1,"time"=>$value2);
|
||||
}
|
||||
}
|
||||
$resetbydbchange = $config[0]['resetbydbchange'];
|
||||
$msgtouser = $config[0]['msgtouser'];
|
||||
$update = $config[0]['upcheck'];
|
||||
$uniqueid = explode(',', $config[0]['uniqueid']);
|
||||
$updateinfotime = $config[0]['updateinfotime'];
|
||||
$currvers = $config[0]['currvers'];
|
||||
$substridle = $config[0]['substridle'];
|
||||
$exceptuuid = explode(',', $config[0]['exceptuuid']);
|
||||
$exceptgroup = explode(',', $config[0]['exceptgroup']);
|
||||
$exceptcid = explode(',', $config[0]['exceptcid']);
|
||||
$timeformat = $config[0]['dateformat'];
|
||||
$showexcld = $config[0]['showexcld'];
|
||||
$showhighest = $config[0]['showhighest'];
|
||||
$showcolrg = $config[0]['showcolrg'];
|
||||
$showcolcld = $config[0]['showcolcld'];
|
||||
$showcoluuid = $config[0]['showcoluuid'];
|
||||
$showcoldbid = $config[0]['showcoldbid'];
|
||||
$showcolls = $config[0]['showcolls'];
|
||||
$showcolot = $config[0]['showcolot'];
|
||||
$showcolit = $config[0]['showcolit'];
|
||||
$showcolat = $config[0]['showcolat'];
|
||||
$showcolas = $config[0]['showcolas'];
|
||||
$showcolnx = $config[0]['showcolnx'];
|
||||
$showcolsg = $config[0]['showcolsg'];
|
||||
$cleanclients = $config[0]['cleanclients'];
|
||||
$cleanperiod = $config[0]['cleanperiod'];
|
||||
$defchid = $config[0]['defchid'];
|
||||
$logpath = $config[0]['logpath'];
|
||||
if ($config[0]['timezone'] == NULL) {
|
||||
$resetbydbchange = $config['resetbydbchange'];
|
||||
$msgtouser = $config['msgtouser'];
|
||||
$update = $config['upcheck'];
|
||||
$uniqueid = explode(',', $config['uniqueid']);
|
||||
$updateinfotime = $config['updateinfotime'];
|
||||
$currvers = $config['currvers'];
|
||||
$substridle = $config['substridle'];
|
||||
$exceptuuid = array_flip(explode(',', $config['exceptuuid']));
|
||||
$exceptgroup = array_flip(explode(',', $config['exceptgroup']));
|
||||
$exceptcid = array_flip(explode(',', $config['exceptcid']));
|
||||
$timeformat = $config['dateformat'];
|
||||
$showexcld = $config['showexcld'];
|
||||
$showhighest = $config['showhighest'];
|
||||
$showcolrg = $config['showcolrg'];
|
||||
$showcolcld = $config['showcolcld'];
|
||||
$showcoluuid = $config['showcoluuid'];
|
||||
$showcoldbid = $config['showcoldbid'];
|
||||
$showcolls = $config['showcolls'];
|
||||
$showcolot = $config['showcolot'];
|
||||
$showcolit = $config['showcolit'];
|
||||
$showcolat = $config['showcolat'];
|
||||
$showcolas = $config['showcolas'];
|
||||
$showcolnx = $config['showcolnx'];
|
||||
$showcolsg = $config['showcolsg'];
|
||||
$cleanclients = $config['cleanclients'];
|
||||
$cleanperiod = $config['cleanperiod'];
|
||||
$defchid = $config['defchid'];
|
||||
$logpath = $config['logpath'];
|
||||
if ($config['timezone'] == NULL) {
|
||||
$timezone = "Europe/Berlin";
|
||||
} else {
|
||||
$timezone = $config[0]['timezone'];
|
||||
$timezone = $config['timezone'];
|
||||
}
|
||||
date_default_timezone_set($timezone);
|
||||
$advancemode = $config[0]['advancemode'];
|
||||
$count_access = $config[0]['count_access'];
|
||||
$last_access = $config[0]['last_access'];
|
||||
$ignoreidle = $config[0]['ignoreidle'];
|
||||
$rankupmsg = $config[0]['rankupmsg'];
|
||||
$newversion = $config[0]['newversion'];
|
||||
$servernews = $config[0]['servernews'];
|
||||
$adminuuid = $config[0]['adminuuid'];
|
||||
$nextupinfo = $config[0]['nextupinfo'];
|
||||
$nextupinfomsg1 = $config[0]['nextupinfomsg1'];
|
||||
$nextupinfomsg2 = $config[0]['nextupinfomsg2'];
|
||||
$nextupinfomsg3 = $config[0]['nextupinfomsg3'];
|
||||
$shownav = $config[0]['shownav'];
|
||||
$showgrpsince = $config[0]['showgrpsince'];
|
||||
$resetexcept = $config[0]['resetexcept'];
|
||||
$upchannel = $config[0]['upchannel'];
|
||||
$avatar_delay = $config[0]['avatar_delay'];
|
||||
$advancemode = $config['advancemode'];
|
||||
$count_access = $config['count_access'];
|
||||
$last_access = $config['last_access'];
|
||||
$ignoreidle = $config['ignoreidle'];
|
||||
$rankupmsg = $config['rankupmsg'];
|
||||
$newversion = $config['newversion'];
|
||||
$servernews = $config['servernews'];
|
||||
if(empty($config['adminuuid'])) {
|
||||
$adminuuid = NULL;
|
||||
} else {
|
||||
$adminuuid = explode(',', $config['adminuuid']);
|
||||
}
|
||||
$nextupinfo = $config['nextupinfo'];
|
||||
$nextupinfomsg1 = $config['nextupinfomsg1'];
|
||||
$nextupinfomsg2 = $config['nextupinfomsg2'];
|
||||
$nextupinfomsg3 = $config['nextupinfomsg3'];
|
||||
$shownav = $config['shownav'];
|
||||
$showgrpsince = $config['showgrpsince'];
|
||||
$resetexcept = $config['resetexcept'];
|
||||
$upchannel = $config['upchannel'];
|
||||
$avatar_delay = $config['avatar_delay'];
|
||||
$registercid = $config['registercid'];
|
||||
}
|
||||
}
|
||||
if(!isset($language) || $language == "en") {
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
<?PHP
|
||||
function load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath) {
|
||||
if(($addons_config = $mysqlcon->query("SELECT * FROM $dbname.addons_config")) === false) {
|
||||
enter_logfile($logpath,$timezone,2,"load_addons_config 0:".print_r($mysqlcon->errorInfo(), true));
|
||||
if(!isset($mysqlcon) || $mysqlcon == NULL || ($addons_config = $mysqlcon->query("SELECT * FROM $dbname.addons_config")) === false) {
|
||||
if(function_exists('enter_logfile')) {
|
||||
enter_logfile($logpath,$timezone,2,"Error on loading addons config.. Database down, not reachable, corrupt or empty?");
|
||||
} else {
|
||||
echo "Error on loading addons config.. Database down, not reachable, corrupt or empty?";
|
||||
}
|
||||
} else {
|
||||
return $addons_config->fetchAll(PDO::FETCH_GROUP|PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
}
|
||||
$addons_config = $addons_config->fetchAll(PDO::FETCH_GROUP|PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
return $addons_config;
|
||||
//$addons_config['assign_groups_groupids']['value'];
|
||||
}
|
||||
?>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?PHP
|
||||
if (isset($_POST['refresh'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
$rspathhex = 'rs_'.dechex(crc32(__DIR__)).'_';
|
||||
rem_session_ts3($rspathhex);
|
||||
}
|
||||
function set_session_ts3($voiceport, $mysqlcon, $dbname, $language, $adminuuid) {
|
||||
if (!empty($_SERVER['HTTP_CLIENT_IP']))
|
||||
@@ -20,67 +20,56 @@ function set_session_ts3($voiceport, $mysqlcon, $dbname, $language, $adminuuid)
|
||||
$hpclientip = 0;
|
||||
|
||||
$hpclientip = inet_pton($hpclientip);
|
||||
$rspathhex = 'rs_'.dechex(crc32(__DIR__)).'_';
|
||||
|
||||
$allclients = $mysqlcon->query("SELECT u.uuid,u.cldbid,u.name,u.ip,u.firstcon,s.total_connections FROM $dbname.user as u LEFT JOIN $dbname.stats_user as s ON u.uuid=s.uuid WHERE online='1';")->fetchAll();
|
||||
$_SESSION['connected'] = 0;
|
||||
$_SESSION['serverport'] = $voiceport;
|
||||
$_SESSION[$rspathhex.'connected'] = 0;
|
||||
$_SESSION[$rspathhex.'tsname'] = "verification needed!";
|
||||
$_SESSION[$rspathhex.'serverport'] = $voiceport;
|
||||
foreach ($allclients as $client) {
|
||||
if ($hpclientip == $client['ip']) {
|
||||
if(isset($_SESSION['uuid_verified']) && $_SESSION['uuid_verified'] != $client['uuid']) {
|
||||
if(isset($_SESSION[$rspathhex.'uuid_verified']) && $_SESSION[$rspathhex.'uuid_verified'] != $client['uuid']) {
|
||||
continue;
|
||||
}
|
||||
if(isset($_SESSION['tsuid']) && $_SESSION['tsuid'] != $client['uuid']) {
|
||||
$_SESSION['multiple'] .= htmlspecialchars($client['uuid']).'=>'.htmlspecialchars($client['name']).',';
|
||||
} elseif (!isset($_SESSION['tsuid'])) {
|
||||
$_SESSION['multiple'] = htmlspecialchars($client['uuid']).'=>'.htmlspecialchars($client['name']).',';
|
||||
$_SESSION[$rspathhex.'tsname'] = $client['name'];
|
||||
if(isset($_SESSION[$rspathhex.'tsuid']) && $_SESSION[$rspathhex.'tsuid'] != $client['uuid']) {
|
||||
$_SESSION[$rspathhex.'multiple'] .= htmlspecialchars($client['uuid']).'=>'.htmlspecialchars($client['name']).',';
|
||||
$_SESSION[$rspathhex.'tsname'] = "verification needed!";
|
||||
unset($_SESSION[$rspathhex.'admin']);
|
||||
} elseif (!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
$_SESSION[$rspathhex.'multiple'] = htmlspecialchars($client['uuid']).'=>'.htmlspecialchars($client['name']).',';
|
||||
}
|
||||
$_SESSION['tsuid'] = $client['uuid'];
|
||||
$_SESSION['tscldbid'] = $client['cldbid'];
|
||||
$_SESSION['tsname'] = $client['name'];
|
||||
if ($_SESSION['tsuid'] == $adminuuid) {
|
||||
$_SESSION['admin'] = TRUE;
|
||||
$_SESSION[$rspathhex.'tsuid'] = $client['uuid'];
|
||||
foreach ($adminuuid as $auuid) {
|
||||
if ($_SESSION[$rspathhex.'tsuid'] == $auuid) {
|
||||
$_SESSION[$rspathhex.'admin'] = TRUE;
|
||||
}
|
||||
}
|
||||
$_SESSION[$rspathhex.'tscldbid'] = $client['cldbid'];
|
||||
if ($client['firstcon'] == 0) {
|
||||
$_SESSION['tscreated'] = "unkown";
|
||||
$_SESSION[$rspathhex.'tscreated'] = "unkown";
|
||||
} else {
|
||||
$_SESSION['tscreated'] = date('d-m-Y', $client['firstcon']);
|
||||
$_SESSION[$rspathhex.'tscreated'] = date('d-m-Y', $client['firstcon']);
|
||||
}
|
||||
if ($client['total_connections'] != NULL) {
|
||||
$_SESSION['tsconnections'] = $client['total_connections'];
|
||||
$_SESSION[$rspathhex.'tsconnections'] = $client['total_connections'];
|
||||
} else {
|
||||
$_SESSION['tsconnections'] = 0;
|
||||
$_SESSION[$rspathhex.'tsconnections'] = 0;
|
||||
}
|
||||
$convert = array(
|
||||
'a',
|
||||
'b',
|
||||
'c',
|
||||
'd',
|
||||
'e',
|
||||
'f',
|
||||
'g',
|
||||
'h',
|
||||
'i',
|
||||
'j',
|
||||
'k',
|
||||
'l',
|
||||
'm',
|
||||
'n',
|
||||
'o',
|
||||
'p'
|
||||
);
|
||||
$convert = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p');
|
||||
$uuidasbase16 = '';
|
||||
for ($i = 0; $i < 20; $i++) {
|
||||
$char = ord(substr(base64_decode($_SESSION['tsuid']), $i, 1));
|
||||
$char = ord(substr(base64_decode($_SESSION[$rspathhex.'tsuid']), $i, 1));
|
||||
$uuidasbase16 .= $convert[($char & 0xF0) >> 4];
|
||||
$uuidasbase16 .= $convert[$char & 0x0F];
|
||||
}
|
||||
if (is_file('../avatars/' . $uuidasbase16 . '.png')) {
|
||||
$_SESSION['tsavatar'] = $uuidasbase16 . '.png';
|
||||
$_SESSION[$rspathhex.'tsavatar'] = $uuidasbase16 . '.png';
|
||||
} else {
|
||||
$_SESSION['tsavatar'] = "none";
|
||||
$_SESSION[$rspathhex.'tsavatar'] = "none";
|
||||
}
|
||||
$_SESSION['connected'] = 1;
|
||||
$_SESSION['language'] = $language;
|
||||
$_SESSION[$rspathhex.'connected'] = 1;
|
||||
$_SESSION[$rspathhex.'language'] = $language;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,39 +1,48 @@
|
||||
<?PHP
|
||||
session_start();
|
||||
|
||||
require_once('../other/config.php');
|
||||
require_once('../other/session.php');
|
||||
require_once('../other/load_addons_config.php');
|
||||
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
|
||||
if($addons_config['assign_groups_active']['value'] != '1') {
|
||||
echo "addon is disabled";
|
||||
exit;
|
||||
}
|
||||
|
||||
if(!isset($_SESSION['tsuid']) || isset($_SESSION['uuid_verified'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
$uuid = $_SESSION['tsuid'];
|
||||
$dbdata = $mysqlcon->query("SELECT * FROM $dbname.user WHERE uuid='$uuid'");
|
||||
$dbdata_fetched = $dbdata->fetchAll();
|
||||
$cld_groups = explode(',', $dbdata_fetched[0]['cldgroup']);
|
||||
$multiple_uuid = explode(',', substr($_SESSION['multiple'], 0, -1));
|
||||
$uuid = $_SESSION[$rspathhex.'tsuid'];
|
||||
if(($dbdata = $mysqlcon->query("SELECT cldgroup FROM $dbname.user WHERE uuid='$uuid'")->fetch()) === false) {
|
||||
$err_msg = print_r($mysqlcon->errorInfo(), true); $err_lvl = 3;
|
||||
}
|
||||
$cld_groups = explode(',', $dbdata['cldgroup']);
|
||||
$multiple_uuid = explode(',', substr($_SESSION[$rspathhex.'multiple'], 0, -1));
|
||||
$disabled = '';
|
||||
$allowed_groups_arr = array();
|
||||
|
||||
if(count($multiple_uuid) > 1 and !isset($_SESSION['uuid_verified'])) {
|
||||
|
||||
if(count($multiple_uuid) > 1 and !isset($_SESSION[$rspathhex.'uuid_verified'])) {
|
||||
$disabled = 1;
|
||||
$err_msg = sprintf($lang['stag0006'], '<a href="verify.php">', '</a>'); $err_lvl = 3;
|
||||
} elseif ($_SESSION[$rspathhex.'connected'] == 0) {
|
||||
$err_msg = sprintf($lang['stag0015'], '<a href="verify.php">', '</a>'); $err_lvl = 3;
|
||||
$disabled = 1;
|
||||
} else {
|
||||
$dbgroups = $mysqlcon->query("SELECT * FROM $dbname.groups");
|
||||
$servergroups = $dbgroups->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($servergroups as $servergroup) {
|
||||
$sqlhisgroup[$servergroup['sgid']] = $servergroup['sgidname'];
|
||||
if(file_exists('../tsicons/'.$servergroup['sgid'].'.png')) {
|
||||
$sqlhisgroup_file[$servergroup['sgid']] = true;
|
||||
} else {
|
||||
$sqlhisgroup_file[$servergroup['sgid']] = false;
|
||||
if(($servergroups = $mysqlcon->query("SELECT * FROM $dbname.groups")->fetchAll(PDO::FETCH_ASSOC)) === false) {
|
||||
$err_msg = print_r($mysqlcon->errorInfo(), true); $err_lvl = 3;
|
||||
} else {
|
||||
foreach($servergroups as $servergroup) {
|
||||
$sqlhisgroup[$servergroup['sgid']] = $servergroup['sgidname'];
|
||||
if(file_exists('../tsicons/'.$servergroup['sgid'].'.png')) {
|
||||
$sqlhisgroup_file[$servergroup['sgid']] = true;
|
||||
} else {
|
||||
$sqlhisgroup_file[$servergroup['sgid']] = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
123
stats/index.php
123
stats/index.php
@@ -26,7 +26,7 @@ if($language == "ar") {
|
||||
require_once('../languages/nations_pt.php');
|
||||
}
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
@@ -36,11 +36,9 @@ function human_readable_size($bytes,$lang) {
|
||||
return sprintf("%.2f", $bytes / pow(1024, $factor)) . ' ' . @$size[$factor];
|
||||
}
|
||||
|
||||
$sql = $mysqlcon->query("SELECT * FROM $dbname.stats_server");
|
||||
$sql_res = $sql->fetchAll();
|
||||
|
||||
$server_usage_sql = $mysqlcon->query("SELECT * FROM $dbname.server_usage ORDER BY(timestamp) DESC LIMIT 0, 47");
|
||||
$server_usage_sql_res = $server_usage_sql->fetchAll();
|
||||
if(($sql_res = $mysqlcon->query("SELECT * FROM $dbname.stats_server; SET @a:=0")->fetch()) === false) {
|
||||
$err_msg = print_r($mysqlcon->errorInfo(), true); $err_lvl = 3;
|
||||
}
|
||||
|
||||
if(isset($_GET['usage'])) {
|
||||
if ($_GET["usage"] == 'week') {
|
||||
@@ -58,7 +56,7 @@ if(isset($_GET['usage'])) {
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
@@ -79,7 +77,7 @@ require_once('nav.php');
|
||||
<i class="fa fa-users fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo $sql_res[0]['total_user'] ?></div>
|
||||
<div class="huge"><?PHP echo $sql_res['total_user'] ?></div>
|
||||
<div><?PHP echo $lang['stix0002']; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -101,7 +99,7 @@ require_once('nav.php');
|
||||
<i class="fa fa-clock-o fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo sprintf($lang['days'], round(($sql_res[0]['total_online_time'] / 86400))); ?></div>
|
||||
<div class="huge"><?PHP echo sprintf($lang['days'], round(($sql_res['total_online_time'] / 86400))); ?></div>
|
||||
<div><?PHP echo $lang['stix0004']; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -123,8 +121,8 @@ require_once('nav.php');
|
||||
<i class="fa fa-clock-o fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo sprintf($lang['days'], round(($sql_res[0]['total_online_month'] / 86400))) ?></div>
|
||||
<div><?PHP if($sql_res[0]['total_online_month'] == 0) { echo $lang['stix0048']; } else { echo $lang['stix0049']; } ?></div>
|
||||
<div class="huge"><?PHP echo sprintf($lang['days'], round(($sql_res['total_online_month'] / 86400))) ?></div>
|
||||
<div><?PHP if($sql_res['total_online_month'] == 0) { echo $lang['stix0048']; } else { echo $lang['stix0049']; } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -145,8 +143,8 @@ require_once('nav.php');
|
||||
<i class="fa fa-clock-o fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo sprintf($lang['days'], round(($sql_res[0]['total_online_week'] / 86400))) ?></div>
|
||||
<div><?PHP if ($sql_res[0]['total_online_week'] == 0) { echo $lang['stix0048']; } else { echo $lang['stix0050']; } ?></div>
|
||||
<div class="huge"><?PHP echo sprintf($lang['days'], round(($sql_res['total_online_week'] / 86400))) ?></div>
|
||||
<div><?PHP if ($sql_res['total_online_week'] == 0) { echo $lang['stix0048']; } else { echo $lang['stix0050']; } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -260,7 +258,7 @@ require_once('nav.php');
|
||||
<i class="fa fa-users fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo $sql_res[0]['user_today']; ?></div>
|
||||
<div class="huge"><?PHP echo $sql_res['user_today']; ?></div>
|
||||
<div><?PHP echo $lang['stix0060'],' ',$lang['stix0055']; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -282,7 +280,7 @@ require_once('nav.php');
|
||||
<i class="fa fa-users fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo $sql_res[0]['user_week']; ?></div>
|
||||
<div class="huge"><?PHP echo $sql_res['user_week']; ?></div>
|
||||
<div><?PHP echo $lang['stix0060'],' ',sprintf($lang['stix0056'], '7'); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -304,7 +302,7 @@ require_once('nav.php');
|
||||
<i class="fa fa-users fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo $sql_res[0]['user_month']; ?></div>
|
||||
<div class="huge"><?PHP echo $sql_res['user_month']; ?></div>
|
||||
<div><?PHP echo $lang['stix0060'],' ',sprintf($lang['stix0056'], '30'); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -326,7 +324,7 @@ require_once('nav.php');
|
||||
<i class="fa fa-users fa-5x"></i>
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="huge"><?PHP echo $sql_res[0]['user_quarter']; ?></div>
|
||||
<div class="huge"><?PHP echo $sql_res['user_quarter']; ?></div>
|
||||
<div><?PHP echo $lang['stix0060'],' ',sprintf($lang['stix0056'], '90'); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -349,35 +347,35 @@ require_once('nav.php');
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0023']; ?></td>
|
||||
<td><?PHP if($sql_res[0]['server_status'] == 1 || $sql_res[0]['server_status'] == 3) { echo '<span class="text-success">'.$lang['stix0024'].'</span>'; } else { echo '<span class="text-danger">'.$lang['stix0025'].'</span>'; } ?></td>
|
||||
<td><?PHP if($sql_res['server_status'] == 1 || $sql_res['server_status'] == 3) { echo '<span class="text-success">'.$lang['stix0024'].'</span>'; } else { echo '<span class="text-danger">'.$lang['stix0025'].'</span>'; } ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0026']; ?></td>
|
||||
<td><?PHP if($sql_res[0]['server_status'] == 0) { echo '0'; } else { echo $sql_res[0]['server_used_slots'] , ' / ' ,($sql_res[0]['server_used_slots'] + $sql_res[0]['server_free_slots']); } ?></td>
|
||||
<td><?PHP if($sql_res['server_status'] == 0) { echo '0'; } else { echo $sql_res['server_used_slots'] , ' / ' ,($sql_res['server_used_slots'] + $sql_res['server_free_slots']); } ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0027']; ?></td>
|
||||
<td><?PHP echo $sql_res[0]['server_channel_amount']; ?></td>
|
||||
<td><?PHP echo $sql_res['server_channel_amount']; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0028']; ?></td>
|
||||
<td><?PHP if($sql_res[0]['server_status'] == 0) { echo '-';} else { echo $sql_res[0]['server_ping'] . ' ' . $lang['time_ms'];} ?></td>
|
||||
<td><?PHP if($sql_res['server_status'] == 0) { echo '-';} else { echo $sql_res['server_ping'] . ' ' . $lang['time_ms'];} ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0029']; ?></td>
|
||||
<td><?PHP echo human_readable_size($sql_res[0]['server_bytes_down'],$lang); ?></td>
|
||||
<td><?PHP echo human_readable_size($sql_res['server_bytes_down'],$lang); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0030']; ?></td>
|
||||
<td><?PHP echo human_readable_size($sql_res[0]['server_bytes_up'],$lang); ?></td>
|
||||
<td><?PHP echo human_readable_size($sql_res['server_bytes_up'],$lang); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0031']; ?></td>
|
||||
<td><?PHP $serveruptime = new DateTime("@".$sql_res[0]['server_uptime']); if ($sql_res[0]['server_status'] == 0) { echo '- (<i>'.$lang['stix0032'].' '.(new DateTime("@0"))->diff($serveruptime)->format($timeformat).')</i>'; } else { echo $lang['stix0033']; } ?></td>
|
||||
<td><?PHP $serveruptime = new DateTime("@".$sql_res['server_uptime']); if ($sql_res['server_status'] == 0) { echo '- (<i>'.$lang['stix0032'].' '.(new DateTime("@0"))->diff($serveruptime)->format($timeformat).')</i>'; } else { echo $lang['stix0033']; } ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0034']; ?></td>
|
||||
<td><?PHP if($sql_res[0]['server_status'] == 0) { echo '-'; } else { echo $sql_res[0]['server_packet_loss'] * 100 ,' %';} ?></td>
|
||||
<td><?PHP if($sql_res['server_status'] == 0) { echo '-'; } else { echo $sql_res['server_packet_loss'] * 100 ,' %';} ?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -392,8 +390,8 @@ require_once('nav.php');
|
||||
<td><?PHP echo $lang['stix0036']; ?></td>
|
||||
<td><?PHP if(file_exists("../tsicons/servericon.png")) {
|
||||
$img_content = file_get_contents("../tsicons/servericon.png");
|
||||
echo $sql_res[0]['server_name'] .'<div class="pull-right"><img src="data:image;',mime_content_type("../tsicons/servericon.png"),';base64,'.base64_encode($img_content).'" alt="servericon"></div>';
|
||||
} else { echo $sql_res[0]['server_name']; } ?></td>
|
||||
echo $sql_res['server_name'] .'<div class="pull-right"><img src="data:image;',mime_content_type("../tsicons/servericon.png"),';base64,'.base64_encode($img_content).'" alt="servericon"></div>';
|
||||
} else { echo $sql_res['server_name']; } ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0037']; ?></td>
|
||||
@@ -418,27 +416,27 @@ require_once('nav.php');
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0038']; ?></td>
|
||||
<td><?PHP if($sql_res[0]['server_pass'] == '0') {echo $lang['stix0039']; } else { echo $lang['stix0040']; } ?></td>
|
||||
<td><?PHP if($sql_res['server_pass'] == '0') {echo $lang['stix0039']; } else { echo $lang['stix0040']; } ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0041']; ?></td>
|
||||
<td><?PHP echo $sql_res[0]['server_id'] ?></td>
|
||||
<td><?PHP echo $sql_res['server_id'] ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0042']; ?></td>
|
||||
<td><?PHP echo $sql_res[0]['server_platform'] ?></td>
|
||||
<td><?PHP echo $sql_res['server_platform'] ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0043']; ?></td>
|
||||
<td><?PHP echo substr($sql_res[0]['server_version'], 0, strpos($sql_res[0]['server_version'], ' ')); ?></td>
|
||||
<td><?PHP echo substr($sql_res['server_version'], 0, strpos($sql_res['server_version'], ' ')); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0044']; ?></td>
|
||||
<td><?PHP if($sql_res[0]['server_creation_date']==0) { echo $lang['stix0051']; } else { echo date('d/m/Y', $sql_res[0]['server_creation_date']);} ?></td>
|
||||
<td><?PHP if($sql_res['server_creation_date']==0) { echo $lang['stix0051']; } else { echo date('d/m/Y', $sql_res['server_creation_date']);} ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?PHP echo $lang['stix0045']; ?></td>
|
||||
<td><?PHP if ($sql_res[0]['server_weblist'] == 1) { echo '<a href="https://www.planetteamspeak.com/serverlist/result/server/ip/'; if($ts['host']=='localhost' || $ts['host']=='127.0.0.1') { echo $_SERVER['HTTP_HOST'];} else { echo $ts['host']; } echo ':'.$ts['voice'] .'" target="_blank">'.$lang['stix0046'].'</a>'; } else { echo $lang['stix0047']; } ?></td>
|
||||
<td><?PHP if ($sql_res['server_weblist'] == 1) { echo '<a href="https://www.planetteamspeak.com/serverlist/result/server/ip/'; if($ts['host']=='localhost' || $ts['host']=='127.0.0.1') { echo $_SERVER['HTTP_HOST'];} else { echo $ts['host']; } echo ':'.$ts['voice'] .'" target="_blank">'.$lang['stix0046'].'</a>'; } else { echo $lang['stix0047']; } ?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -459,7 +457,7 @@ require_once('nav.php');
|
||||
var hoursLabel = document.getElementById("hours");
|
||||
var minutesLabel = document.getElementById("minutes");
|
||||
var secondsLabel = document.getElementById("seconds");
|
||||
var totalSeconds = <?PHP echo $sql_res[0]['server_uptime'] ?>;
|
||||
var totalSeconds = <?PHP echo $sql_res['server_uptime'] ?>;
|
||||
setInterval(setTime, 1000);
|
||||
function setTime()
|
||||
{
|
||||
@@ -486,19 +484,19 @@ require_once('nav.php');
|
||||
Morris.Donut({
|
||||
element: 'time-gap-donut',
|
||||
data: [
|
||||
{label: "<?PHP echo $lang['stix0053']?>", value: <?PHP echo round(($sql_res[0]['total_active_time'] / 86400)); ?>},
|
||||
{label: "<?PHP echo $lang['stix0054']?>", value: <?PHP echo round(($sql_res[0]['total_inactive_time'] / 86400)); ?>},
|
||||
{label: "<?PHP echo $lang['stix0053']?>", value: <?PHP echo round(($sql_res['total_active_time'] / 86400)); ?>},
|
||||
{label: "<?PHP echo $lang['stix0054']?>", value: <?PHP echo round(($sql_res['total_inactive_time'] / 86400)); ?>},
|
||||
]
|
||||
});
|
||||
Morris.Donut({
|
||||
element: 'client-version-donut',
|
||||
data: [
|
||||
{label: "<?PHP echo $sql_res[0]['version_name_1'] ?>", value: <?PHP echo $sql_res[0]['version_1'] ?>},
|
||||
{label: "<?PHP echo $sql_res[0]['version_name_2'] ?>", value: <?PHP echo $sql_res[0]['version_2'] ?>},
|
||||
{label: "<?PHP echo $sql_res[0]['version_name_3'] ?>", value: <?PHP echo $sql_res[0]['version_3'] ?>},
|
||||
{label: "<?PHP echo $sql_res[0]['version_name_4'] ?>", value: <?PHP echo $sql_res[0]['version_4'] ?>},
|
||||
{label: "<?PHP echo $sql_res[0]['version_name_5'] ?>", value: <?PHP echo $sql_res[0]['version_5'] ?>},
|
||||
{label: "<?PHP echo $lang['stix0052']?>", value: <?PHP echo $sql_res[0]['version_other'] ?>},
|
||||
{label: "<?PHP echo $sql_res['version_name_1'] ?>", value: <?PHP echo $sql_res['version_1'] ?>},
|
||||
{label: "<?PHP echo $sql_res['version_name_2'] ?>", value: <?PHP echo $sql_res['version_2'] ?>},
|
||||
{label: "<?PHP echo $sql_res['version_name_3'] ?>", value: <?PHP echo $sql_res['version_3'] ?>},
|
||||
{label: "<?PHP echo $sql_res['version_name_4'] ?>", value: <?PHP echo $sql_res['version_4'] ?>},
|
||||
{label: "<?PHP echo $sql_res['version_name_5'] ?>", value: <?PHP echo $sql_res['version_5'] ?>},
|
||||
{label: "<?PHP echo $lang['stix0052']?>", value: <?PHP echo $sql_res['version_other'] ?>},
|
||||
],
|
||||
colors: [
|
||||
'#5cb85c',
|
||||
@@ -511,12 +509,12 @@ require_once('nav.php');
|
||||
});
|
||||
Morris.Donut({
|
||||
element: 'user-descent-donut', data: [
|
||||
{label: "<?PHP if (isset($nation[$sql_res[0]['country_nation_name_1']])) { echo $nation[$sql_res[0]['country_nation_name_1']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res[0]['country_nation_1'])) { echo $sql_res[0]['country_nation_1']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res[0]['country_nation_name_2']])) { echo $nation[$sql_res[0]['country_nation_name_2']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res[0]['country_nation_2'])) { echo $sql_res[0]['country_nation_2']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res[0]['country_nation_name_3']])) { echo $nation[$sql_res[0]['country_nation_name_3']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res[0]['country_nation_3'])) { echo $sql_res[0]['country_nation_3']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res[0]['country_nation_name_4']])) { echo $nation[$sql_res[0]['country_nation_name_4']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res[0]['country_nation_4'])) { echo $sql_res[0]['country_nation_4']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res[0]['country_nation_name_5']])) { echo $nation[$sql_res[0]['country_nation_name_5']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res[0]['country_nation_5'])) { echo $sql_res[0]['country_nation_5']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP echo $lang['stix0052']?>", value: <?PHP echo $sql_res[0]['country_nation_other'] ?>}
|
||||
{label: "<?PHP if (isset($nation[$sql_res['country_nation_name_1']])) { echo $nation[$sql_res['country_nation_name_1']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res['country_nation_1'])) { echo $sql_res['country_nation_1']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res['country_nation_name_2']])) { echo $nation[$sql_res['country_nation_name_2']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res['country_nation_2'])) { echo $sql_res['country_nation_2']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res['country_nation_name_3']])) { echo $nation[$sql_res['country_nation_name_3']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res['country_nation_3'])) { echo $sql_res['country_nation_3']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res['country_nation_name_4']])) { echo $nation[$sql_res['country_nation_name_4']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res['country_nation_4'])) { echo $sql_res['country_nation_4']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP if (isset($nation[$sql_res['country_nation_name_5']])) { echo $nation[$sql_res['country_nation_name_5']]; } else { echo "unkown";} ?>", value: <?PHP if ( isset($sql_res['country_nation_5'])) { echo $sql_res['country_nation_5']; } else { echo "0";} ?>},
|
||||
{label: "<?PHP echo $lang['stix0052']?>", value: <?PHP echo $sql_res['country_nation_other'] ?>}
|
||||
],
|
||||
colors: [
|
||||
'#f0ad4e',
|
||||
@@ -530,12 +528,12 @@ require_once('nav.php');
|
||||
Morris.Donut({
|
||||
element: 'user-platform-donut',
|
||||
data: [
|
||||
{label: "Windows", value: <?PHP echo $sql_res[0]['platform_1'] ?>},
|
||||
{label: "Linux", value: <?PHP echo $sql_res[0]['platform_3'] ?>},
|
||||
{label: "Android", value: <?PHP echo $sql_res[0]['platform_4'] ?>},
|
||||
{label: "iOS", value: <?PHP echo $sql_res[0]['platform_2'] ?>},
|
||||
{label: "OS X", value: <?PHP echo $sql_res[0]['platform_5'] ?>},
|
||||
{label: "<?PHP echo $lang['stix0052']?>", value: <?PHP echo $sql_res[0]['platform_other'] ?>},
|
||||
{label: "Windows", value: <?PHP echo $sql_res['platform_1'] ?>},
|
||||
{label: "Linux", value: <?PHP echo $sql_res['platform_3'] ?>},
|
||||
{label: "Android", value: <?PHP echo $sql_res['platform_4'] ?>},
|
||||
{label: "iOS", value: <?PHP echo $sql_res['platform_2'] ?>},
|
||||
{label: "OS X", value: <?PHP echo $sql_res['platform_5'] ?>},
|
||||
{label: "<?PHP echo $lang['stix0052']?>", value: <?PHP echo $sql_res['platform_other'] ?>},
|
||||
],
|
||||
colors: [
|
||||
'#d9534f',
|
||||
@@ -551,24 +549,19 @@ require_once('nav.php');
|
||||
data: [
|
||||
<?PHP
|
||||
$chart_data = '';
|
||||
$trash_string = $mysqlcon->query("SET @a:=0");
|
||||
if($usage == 'week') {
|
||||
$server_usage = $mysqlcon->query("SELECT u1.timestamp, u1.clients, u1.channel FROM (SELECT @a:=@a+1,mod(@a,2) AS test,timestamp,clients,channel FROM $dbname.server_usage) AS u2, $dbname.server_usage AS u1 WHERE u1.timestamp=u2.timestamp AND u2.test='1' ORDER BY u2.timestamp DESC LIMIT 336");
|
||||
$server_usage = $mysqlcon->query("SELECT u1.timestamp, u1.clients, u1.channel FROM (SELECT @a:=@a+1,mod(@a,2) AS test,timestamp,clients,channel FROM $dbname.server_usage) AS u2, $dbname.server_usage AS u1 WHERE u1.timestamp=u2.timestamp AND u2.test='1' ORDER BY u2.timestamp DESC LIMIT 336")->fetchAll(PDO::FETCH_ASSOC);
|
||||
} elseif ($usage == 'month') {
|
||||
$server_usage = $mysqlcon->query("SELECT u1.timestamp, u1.clients, u1.channel FROM (SELECT @a:=@a+1,mod(@a,4) AS test,timestamp,clients,channel FROM $dbname.server_usage) AS u2, $dbname.server_usage AS u1 WHERE u1.timestamp=u2.timestamp AND u2.test='1' ORDER BY u2.timestamp DESC LIMIT 720");
|
||||
$server_usage = $mysqlcon->query("SELECT u1.timestamp, u1.clients, u1.channel FROM (SELECT @a:=@a+1,mod(@a,4) AS test,timestamp,clients,channel FROM $dbname.server_usage) AS u2, $dbname.server_usage AS u1 WHERE u1.timestamp=u2.timestamp AND u2.test='1' ORDER BY u2.timestamp DESC LIMIT 720")->fetchAll(PDO::FETCH_ASSOC);
|
||||
} elseif ($usage == 'year') {
|
||||
$server_usage = $mysqlcon->query("SELECT u1.timestamp, u1.clients, u1.channel FROM (SELECT @a:=@a+1,mod(@a,64) AS test,timestamp,clients,channel FROM $dbname.server_usage) AS u2, $dbname.server_usage AS u1 WHERE u1.timestamp=u2.timestamp AND u2.test='1' ORDER BY u2.timestamp DESC LIMIT 548");
|
||||
$server_usage = $mysqlcon->query("SELECT u1.timestamp, u1.clients, u1.channel FROM (SELECT @a:=@a+1,mod(@a,64) AS test,timestamp,clients,channel FROM $dbname.server_usage) AS u2, $dbname.server_usage AS u1 WHERE u1.timestamp=u2.timestamp AND u2.test='1' ORDER BY u2.timestamp DESC LIMIT 548")->fetchAll(PDO::FETCH_ASSOC);
|
||||
} else {
|
||||
$server_usage = $mysqlcon->query("SELECT timestamp, clients, channel FROM $dbname.server_usage ORDER BY timestamp DESC LIMIT 96");
|
||||
$server_usage = $mysqlcon->query("SELECT timestamp, clients, channel FROM $dbname.server_usage ORDER BY timestamp DESC LIMIT 96")->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
$server_usage = $server_usage->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($server_usage as $chart_value) {
|
||||
$chart_time = date('Y-m-d H:i',$chart_value['timestamp']);
|
||||
$channel = $chart_value['channel'] - $chart_value['clients'];
|
||||
$chart_data = $chart_data . '{ y: \''.$chart_time.'\', a: '.$chart_value['clients'].', b: '.$channel.', c: '. $chart_value['channel'].' }, ';
|
||||
$chart_data .= '{ y: \''.date('Y-m-d H:i',$chart_value['timestamp']).'\', a: '.$chart_value['clients'].', b: '.($chart_value['channel'] - $chart_value['clients']).', c: '. $chart_value['channel'].' }, ';
|
||||
}
|
||||
$chart_data = substr($chart_data, 0, -2);
|
||||
echo $chart_data;
|
||||
echo substr($chart_data, 0, -2);
|
||||
?>
|
||||
],
|
||||
xkey: 'y',
|
||||
|
||||
@@ -8,13 +8,13 @@ require_once('../other/load_addons_config.php');
|
||||
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
@@ -33,7 +33,7 @@ require_once('nav.php');
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h4><strong><span class="text-success"><?PHP echo $lang['stri0004']; ?></span></strong></h4>
|
||||
<p>The <a href="//ts-n.net/ranksystem.php" target="_blank">Ranksystem</a> was coded by <strong>Newcomer1989</strong> Copyright © 2009-2017 <a href="//ts-n.net/" target="_blank">TeamSpeak Sponsoring TS-N.NET</a></p>
|
||||
<p>The <a href="//ts-n.net/ranksystem.php" target="_blank">Ranksystem</a> was coded by <strong>Newcomer1989</strong> Copyright © 2009-2018 <a href="//ts-n.net/" target="_blank">TeamSpeak Sponsoring TS-N.NET</a></p>
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
@@ -42,13 +42,14 @@ require_once('nav.php');
|
||||
<h4><strong><span class="text-warning"><?PHP echo $lang['stri0005']; ?></span></strong></h4>
|
||||
<p><?PHP echo $lang['stri0006']; ?></p>
|
||||
<p><?PHP echo $lang['stri0007']; ?></p>
|
||||
<p><?PHP echo $lang['stri0023']; ?></p>
|
||||
<p><?PHP echo $lang['stri0008']; ?></p>
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h4><strong><span class="text-danger"><?PHP echo $lang['stri0009']; ?></span></strong></h4>
|
||||
<h4><strong><span class="text-danger"><?PHP echo $lang['stri0009'];?></span></strong></h4>
|
||||
<p><?PHP echo $lang['stri0010']; ?></p>
|
||||
<p><a href="//php.net/" target="_blank">PHP</a> - Copyright © 2001-2016 the <a href="//secure.php.net/credits.php" target="_blank">PHP Group</a></p><br>
|
||||
<p><?PHP echo $lang['stri0011']; ?></p>
|
||||
@@ -70,6 +71,8 @@ require_once('nav.php');
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h4><strong><span class="text-info"><?PHP echo $lang['stri0012']; ?></span></strong></h4>
|
||||
<p><?PHP echo $lang['stri0021']; ?></p>
|
||||
<p><?PHP echo $lang['stri0022']; ?></p>
|
||||
<p><?PHP echo $lang['stri0013']; ?></p>
|
||||
<p><?PHP echo $lang['stri0014']; ?></p>
|
||||
<p><?PHP echo $lang['stri0015']; ?></p>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?PHP
|
||||
session_start();
|
||||
$starttime = microtime(true);
|
||||
|
||||
require_once('../other/config.php');
|
||||
require_once('../other/session.php');
|
||||
@@ -25,7 +24,7 @@ function getclientip() {
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
@@ -102,10 +101,12 @@ if(isset($getstring)) {
|
||||
$dbdata_full = $mysqlcon->prepare("SELECT COUNT(*) FROM $dbname.user WHERE (uuid LIKE :searchvalue OR cldbid LIKE :searchvalue OR name LIKE :searchvalue)$filter");
|
||||
$dbdata_full->bindValue(':searchvalue', '%'.$searchstring.'%', PDO::PARAM_STR);
|
||||
$dbdata_full->execute();
|
||||
$sumentries = $dbdata_full->fetch(PDO::FETCH_NUM);
|
||||
} else {
|
||||
$getstring = '';
|
||||
$dbdata_full = $mysqlcon->query("SELECT COUNT(*) FROM $dbname.user");
|
||||
$sumentries = $mysqlcon->query("SELECT COUNT(*) FROM $dbname.user")->fetch(PDO::FETCH_NUM);
|
||||
}
|
||||
|
||||
if(!isset($_GET["seite"])) {
|
||||
$seite = 1;
|
||||
} else {
|
||||
@@ -126,14 +127,14 @@ if (isset($_GET['order'])) {
|
||||
}
|
||||
$keyorder = ($keyorder == 'desc' ? 'desc' : 'asc');
|
||||
if (isset($_GET['admin'])) {
|
||||
if($_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if($_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$adminlogin = 1;
|
||||
}
|
||||
}
|
||||
require_once('nav.php');
|
||||
|
||||
$countentries = 0;
|
||||
$sumentries = $dbdata_full->fetch(PDO::FETCH_NUM);
|
||||
|
||||
|
||||
if(!isset($_GET["user"])) {
|
||||
$user_pro_seite = 25;
|
||||
@@ -202,42 +203,14 @@ function pagination($keysort,$keyorder,$user_pro_seite,$seiten_anzahl_gerundet,$
|
||||
</nav>
|
||||
<?PHP
|
||||
}
|
||||
$uuids = $dbdata->fetchAll();
|
||||
$sqlhis = $dbdata->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE);
|
||||
|
||||
foreach($uuids as $uuid) {
|
||||
$sqlhis[$uuid['uuid']] = array(
|
||||
"cldbid" => $uuid['cldbid'],
|
||||
"rank" => $uuid['rank'],
|
||||
"count" => $uuid['count'],
|
||||
"name" => $uuid['name'],
|
||||
"idle" => $uuid['idle'],
|
||||
"cldgroup" => $uuid['cldgroup'],
|
||||
"online" => $uuid['online'],
|
||||
"nextup" => $uuid['nextup'],
|
||||
"lastseen" => $uuid['lastseen'],
|
||||
"ip" => $uuid['ip'],
|
||||
"grpid" => $uuid['grpid'],
|
||||
"except" => $uuid['except'],
|
||||
"grpsince" => $uuid['grpsince']
|
||||
);
|
||||
$uidarr[] = $uuid['uuid'];
|
||||
$countentries = $countentries + 1;
|
||||
}
|
||||
if(!$dbdata = $mysqlcon->query("SELECT * FROM $dbname.job_check WHERE job_name='calc_user_lastscan'")) {
|
||||
$err_msg = '<span class="wncolor">'.$mysqlcon->errorCode().'</span><br>';
|
||||
}
|
||||
|
||||
$lastscan = $dbdata->fetchAll();
|
||||
$scantime = $lastscan[0]['timestamp'];
|
||||
$livetime = time() - $scantime;
|
||||
$dbgroups = $mysqlcon->query("SELECT * FROM $dbname.groups");
|
||||
$servergroups = $dbgroups->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($servergroups as $servergroup) {
|
||||
$sqlhisgroup[$servergroup['sgid']] = $servergroup['sgidname'];
|
||||
if(file_exists('../tsicons/'.$servergroup['sgid'].'.png')) {
|
||||
$sqlhisgroup_file[$servergroup['sgid']] = true;
|
||||
$sqlhisgroup = $mysqlcon->query("SELECT sgid,sgidname FROM $dbname.groups")->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE);
|
||||
foreach($sqlhisgroup as $sgid => $servergroup) {
|
||||
if(file_exists('../tsicons/'.$sgid.'.png')) {
|
||||
$sqlhisgroup[$sgid]['iconfile'] = 1;
|
||||
} else {
|
||||
$sqlhisgroup_file[$servergroup['sgid']] = false;
|
||||
$sqlhisgroup[$sgid]['iconfile'] = 0;
|
||||
}
|
||||
}
|
||||
if($adminlogin == 1) {
|
||||
@@ -259,12 +232,12 @@ if($adminlogin == 1) {
|
||||
}
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
<?PHP
|
||||
if($user_pro_seite == "all" || $shownav == 0) {
|
||||
} else {
|
||||
pagination($keysort,$keyorder,$user_pro_seite,$seiten_anzahl_gerundet,$seite,$getstring);
|
||||
pagination($keysort,$keyorder2,$user_pro_seite,$seiten_anzahl_gerundet,$seite,$getstring);
|
||||
}
|
||||
?>
|
||||
<table class="table table-striped">
|
||||
@@ -295,134 +268,110 @@ if($adminlogin == 1) {
|
||||
echo '<th class="text-center"><a href="?sort=grpsince&order=' , $keyorder2 , '&seite=' , $seite , '&user=' , $user_pro_seite , '&search=' , $getstring , '"><span class="hdcolor">' , $lang['listgrps'] , '</span></a></th>';
|
||||
if ($showcolnx == 1 || $adminlogin == 1)
|
||||
echo ($keysort == 'nextup') ? '<th class="text-center"><a href="?sort=nextup&order=' . $keyorder2 . '&seite=' . $seite . '&user=' . $user_pro_seite . '&search=' . $getstring . '"><span class="hdcolor">' . $lang['listnxup'] . '</span></a></th>' : '<th class="text-center"><a href="?sort=nextup&order=' . $keyorder2 . '&seite=' . $seite . '&user=' . $user_pro_seite . '&search=' . $getstring . '"><span class="hdcolor">' . $lang['listnxup'] . '</span></a></th>';
|
||||
if ($showcolsg == 1 || $adminlogin == 1)
|
||||
echo '<th class="text-center"><a href="?sort=nextsgrp&order=' , $keyorder2 , '&seite=' , $seite , '&user=' , $user_pro_seite , '&search=' , $getstring , '"><span class="hdcolor">' , $lang['listnxsg'] , '</span></a></th>';
|
||||
if (($showcolsg == 1 || $adminlogin == 1) && $substridle == 1) {
|
||||
echo '<th class="text-center"><a href="?sort=active&order=' , $keyorder2 , '&seite=' , $seite , '&user=' , $user_pro_seite , '&search=' , $getstring , '"><span class="hdcolor">' , $lang['listnxsg'] , '</span></a></th>';
|
||||
} elseif (($showcolsg == 1 || $adminlogin == 1) && $substridle != 1) {
|
||||
echo '<th class="text-center"><a href="?sort=count&order=' , $keyorder2 , '&seite=' , $seite , '&user=' , $user_pro_seite , '&search=' , $getstring , '"><span class="hdcolor">' , $lang['listnxsg'] , '</span></a></th>';
|
||||
}
|
||||
echo '</tr></thead><tbody>';
|
||||
ksort($grouptime);
|
||||
$countgrp = count($grouptime);
|
||||
if ($countentries > 0) {
|
||||
$exceptgrp=0;
|
||||
$exceptcld=0;
|
||||
$countallsum=0;
|
||||
foreach ($uidarr as $uid) {
|
||||
$cldgroup = $sqlhis[$uid]['cldgroup'];
|
||||
$lastseen = $sqlhis[$uid]['lastseen'];
|
||||
$count = $sqlhis[$uid]['count'];
|
||||
$idle = $sqlhis[$uid]['idle'];
|
||||
$status = $sqlhis[$uid]['online'];
|
||||
$nextup = $sqlhis[$uid]['nextup'];
|
||||
$except = $sqlhis[$uid]['except'];
|
||||
$sgroups = explode(",", $cldgroup);
|
||||
$active = $count - $idle;
|
||||
if (count($sqlhis) > 0) {
|
||||
foreach ($sqlhis as $uuid => $value) {
|
||||
if ($substridle == 1) {
|
||||
$activetime = $count - $idle;
|
||||
$activetime = $value['count'] - $value['idle'];
|
||||
} else {
|
||||
$activetime = $count;
|
||||
$activetime = $value['count'];
|
||||
}
|
||||
$grpcount=0;
|
||||
$countallsum++;
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
$grpcount++;
|
||||
if ($activetime < $time || $grpcount == $countgrp && $nextup <= 0 && $showhighest == 1 || $grpcount == $countgrp && $nextup == 0 && $adminlogin == 1) {
|
||||
if($nextup == 0 && $grpcount == $countgrp) {
|
||||
$neededtime = 0;
|
||||
} elseif ($status == 1) {
|
||||
$neededtime = $time - $activetime - $livetime;
|
||||
} else {
|
||||
$neededtime = $time - $activetime;
|
||||
}
|
||||
if ($activetime < $time || $grpcount == count($grouptime) && $value['nextup'] <= 0 && $showhighest == 1 || $grpcount == count($grouptime) && $value['nextup'] == 0 && $adminlogin == 1) {
|
||||
echo '<tr>';
|
||||
if ($showcolrg == 1 || $adminlogin == 1) {
|
||||
if($except == 2 || $except == 3) {
|
||||
if($value['except'] == 2 || $value['except'] == 3) {
|
||||
echo '<td class="text-center"></td>';
|
||||
} else {
|
||||
echo '<td class="text-center">' , $sqlhis[$uid]['rank'] , '</td>';
|
||||
echo '<td class="text-center">' , $value['rank'] , '</td>';
|
||||
}
|
||||
}
|
||||
if ($adminlogin == 1) {
|
||||
echo '<td class="text-center"><a href="http://www.tsviewer.com/index.php?page=search&action=ausgabe_user&nickname=' , $sqlhis[$uid]['name'] , '" target="_blank">' , $sqlhis[$uid]['name'] , '</a></td>';
|
||||
echo '<td class="text-center"><a href="//tsviewer.com/index.php?page=search&action=ausgabe_user&nickname=' , $value['name'] , '" target="_blank">' , $value['name'] , '</a></td>';
|
||||
} elseif ($showcolcld == 1) {
|
||||
echo '<td class="text-center">' , $sqlhis[$uid]['name'] , '</td>';
|
||||
echo '<td class="text-center">' , $value['name'] , '</td>';
|
||||
}
|
||||
if ($adminlogin == 1) {
|
||||
echo '<td class="text-center"><a href="http://ts3index.com/?page=searchclient&uid=' , $uid , '" target="_blank">' , $uid , '</a></td>';
|
||||
echo '<td class="text-center"><a href="//ts3index.com/?page=searchclient&uid=' , $uuid , '" target="_blank">' , $uuid , '</a></td>';
|
||||
} elseif ($showcoluuid == 1) {
|
||||
echo '<td class="text-center">' , $uid , '</td>';
|
||||
echo '<td class="text-center">' , $uuid , '</td>';
|
||||
}
|
||||
if ($showcoldbid == 1 || $adminlogin == 1)
|
||||
echo '<td class="text-center">' , $sqlhis[$uid]['cldbid'] , '</td>';
|
||||
echo '<td class="text-center">' , $value['cldbid'] , '</td>';
|
||||
if ($adminlogin == 1)
|
||||
echo '<td class="center"><a href="http://myip.ms/info/whois/' , inet_ntop($sqlhis[$uid]['ip']) , '" target="_blank">' , inet_ntop($sqlhis[$uid]['ip']) , '</a></td>';
|
||||
echo '<td class="center"><a href="//myip.ms/info/whois/' , inet_ntop($value['ip']) , '" target="_blank">' , inet_ntop($value['ip']) , '</a></td>';
|
||||
if ($showcolls == 1 || $adminlogin == 1) {
|
||||
if ($status == 1) {
|
||||
echo '<td class="text-center text-success">' , date('Y-m-d H:i:s',$lastseen), '</td>';
|
||||
if ($value['online'] == 1) {
|
||||
echo '<td class="text-center text-success">online</td>';
|
||||
} else {
|
||||
echo '<td class="text-center">' , date('Y-m-d H:i:s',$lastseen), '</td>';
|
||||
echo '<td class="text-center">' , date('Y-m-d H:i:s',$value['lastseen']), '</td>';
|
||||
}
|
||||
}
|
||||
if ($showcolot == 1 || $adminlogin == 1) {
|
||||
echo '<td class="text-center">';
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$count");
|
||||
$timecount = $dtF->diff($dtT)->format($timeformat);
|
||||
echo $timecount;
|
||||
$dtT = new DateTime("@".$value['count']);
|
||||
echo $dtF->diff($dtT)->format($timeformat);
|
||||
}
|
||||
if ($showcolit == 1 || $adminlogin == 1) {
|
||||
echo '<td class="text-center">';
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$idle");
|
||||
$timecount = $dtF->diff($dtT)->format($timeformat);
|
||||
echo $timecount;
|
||||
$dtT = new DateTime("@".$value['idle']);
|
||||
echo $dtF->diff($dtT)->format($timeformat);
|
||||
}
|
||||
if ($showcolat == 1 || $adminlogin == 1) {
|
||||
echo '<td class="text-center">';
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$active");
|
||||
$timecount = $dtF->diff($dtT)->format($timeformat);
|
||||
echo $timecount;
|
||||
$dtT = new DateTime("@".($value['count']-$value['idle']));
|
||||
echo $dtF->diff($dtT)->format($timeformat);
|
||||
}
|
||||
if ($showcolas == 1 || $adminlogin == 1) {
|
||||
$usergroupid = $sqlhis[$uid]['grpid'];
|
||||
if ($sqlhis[$uid]['grpid'] == 0) {
|
||||
if ($value['grpid'] == 0) {
|
||||
echo '<td class="text-center"></td>';
|
||||
} elseif ($sqlhisgroup_file[$sqlhis[$uid]['grpid']]===true) {
|
||||
echo '<td class="text-center"><img src="../tsicons/'.$sqlhis[$uid]['grpid'].'.png" alt="groupicon"> ' , $sqlhisgroup[$usergroupid] , '</td>';
|
||||
} elseif ($sqlhisgroup[$value['grpid']]['iconfile'] == 1) {
|
||||
echo '<td class="text-center"><img src="../tsicons/'.$value['grpid'].'.png" alt="groupicon"> ' , $sqlhisgroup[$value['grpid']]['sgidname'] , '</td>';
|
||||
} else {
|
||||
echo '<td class="text-center">' , $sqlhisgroup[$usergroupid] , '</td>';
|
||||
echo '<td class="text-center">' , $sqlhisgroup[$value['grpid']]['sgidname'] , '</td>';
|
||||
}
|
||||
}
|
||||
if ($showgrpsince == 1 || $adminlogin == 1) {
|
||||
if ($sqlhis[$uid]['grpsince'] == 0) {
|
||||
if ($value['grpsince'] == 0) {
|
||||
echo '<td class="text-center"></td>';
|
||||
} else {
|
||||
echo '<td class="text-center">' , date('Y-m-d H:i:s',$sqlhis[$uid]['grpsince']), '</td>';
|
||||
echo '<td class="text-center">' , date('Y-m-d H:i:s',$value['grpsince']), '</td>';
|
||||
}
|
||||
}
|
||||
if ($showcolnx == 1 || $adminlogin == 1) {
|
||||
echo '<td class="text-center">';
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@$neededtime");
|
||||
$timecount = $dtF->diff($dtT)->format($timeformat);
|
||||
if (($except == 0 || $except == 1) && $neededtime > 0) {
|
||||
echo $timecount , '</td>';
|
||||
} elseif ($except == 0 || $except == 1) {
|
||||
$timecount = 0;
|
||||
echo $timecount , '</td>';
|
||||
} elseif ($except == 2 || $except == 3) {
|
||||
if (($value['except'] == 0 || $value['except'] == 1) && $value['nextup'] > 0) {
|
||||
$dtF = new DateTime("@0");
|
||||
$dtT = new DateTime("@".$value['nextup']);
|
||||
echo $dtF->diff($dtT)->format($timeformat) , '</td>';
|
||||
} elseif ($value['except'] == 0 || $value['except'] == 1) {
|
||||
echo '0</td>';
|
||||
} elseif ($value['except'] == 2 || $value['except'] == 3) {
|
||||
echo '0</td>';
|
||||
} else {
|
||||
echo $lang['errukwn'], '</td>';
|
||||
}
|
||||
}
|
||||
if ($showcolsg == 1 || $adminlogin == 1) {
|
||||
if ($grpcount == $countgrp && $nextup == 0 && $showhighest == 1 || $grpcount == $countgrp && $nextup == 0 && $adminlogin == 1) {
|
||||
if ($grpcount == count($grouptime) && $value['nextup'] == 0 && $showhighest == 1 || $grpcount == count($grouptime) && $value['nextup'] == 0 && $adminlogin == 1) {
|
||||
echo '<td class="text-center"><em>',$lang['highest'],'</em></td>';
|
||||
} elseif ($except == 2 || $except == 3) {
|
||||
} elseif ($value['except'] == 2 || $value['except'] == 3) {
|
||||
echo '<td class="text-center"><em>',$lang['listexcept'],'</em></td>';
|
||||
} elseif (isset($sqlhisgroup_file[$groupid]) && $sqlhisgroup_file[$groupid]===true) {
|
||||
echo '<td class="text-center"><img src="../tsicons/'.$groupid.'.png" alt="groupicon"> ' , $sqlhisgroup[$groupid] , '</td>';
|
||||
} elseif (isset($sqlhisgroup[$groupid]) && $sqlhisgroup[$groupid]['iconfile'] == 1) {
|
||||
echo '<td class="text-center"><img src="../tsicons/'.$groupid.'.png" alt="groupicon"> ' , $sqlhisgroup[$groupid]['sgidname'] , '</td>';
|
||||
} elseif (isset($sqlhisgroup[$groupid])) {
|
||||
echo '<td class="text-center">' , $sqlhisgroup[$groupid] , '</td>';
|
||||
echo '<td class="text-center">' , $sqlhisgroup[$groupid]['sgidname'] , '</td>';
|
||||
} else {
|
||||
echo '<td class="text-center"></td>';
|
||||
}
|
||||
|
||||
@@ -1,49 +1,42 @@
|
||||
<?PHP
|
||||
session_start();
|
||||
|
||||
require_once('../other/config.php');
|
||||
require_once('../other/session.php');
|
||||
require_once('../other/load_addons_config.php');
|
||||
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
|
||||
if(!isset($_SESSION['tsuid']) || isset($_SESSION['uuid_verified'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
$multiple_uuid = explode(',', substr($_SESSION['multiple'], 0, -1));
|
||||
$multiple_uuid = explode(',', substr($_SESSION[$rspathhex.'multiple'], 0, -1));
|
||||
|
||||
if(count($multiple_uuid) > 1 and !isset($_SESSION['uuid_verified'])) {
|
||||
if(count($multiple_uuid) > 1 && !isset($_SESSION[$rspathhex.'uuid_verified'])) {
|
||||
$err_msg = sprintf($lang['stag0006'], '<a href="verify.php">', '</a>'); $err_lvl = 3;
|
||||
|
||||
} elseif ($_SESSION[$rspathhex.'connected'] == 0) {
|
||||
$err_msg = sprintf("Du konntest nicht auf dem TeamSpeak gefunden werden. Bitte %sklicke hier%s um dich zunächst zu verifizieren.", '<a href="verify.php">', '</a>'); $err_lvl = 3;
|
||||
} else {
|
||||
|
||||
$getstring = $_SESSION['tsuid'];
|
||||
$searchmysql = 'WHERE uuid LIKE \'%'.$getstring.'%\'';
|
||||
|
||||
$dbdata = $mysqlcon->query("SELECT * FROM $dbname.user $searchmysql");
|
||||
$dbdata_fetched = $dbdata->fetchAll();
|
||||
$count_hours = round($dbdata_fetched[0]['count']/3600);
|
||||
$idle_hours = round($dbdata_fetched[0]['idle']/3600);
|
||||
$except = $dbdata_fetched[0]['except'];
|
||||
$dbdata_fetched = $mysqlcon->query("SELECT * FROM $dbname.user WHERE uuid LIKE '%".$_SESSION[$rspathhex.'tsuid']."%'")->fetch();
|
||||
$count_hours = round($dbdata_fetched['count']/3600);
|
||||
$idle_hours = round($dbdata_fetched['idle']/3600);
|
||||
|
||||
if ($substridle == 1) {
|
||||
$activetime = $dbdata_fetched[0]['count'] - $dbdata_fetched[0]['idle'];
|
||||
$activetime = $dbdata_fetched['count'] - $dbdata_fetched['idle'];
|
||||
} else {
|
||||
$activetime = $dbdata_fetched[0]['count'];
|
||||
$activetime = $dbdata_fetched['count'];
|
||||
}
|
||||
$active_count = $dbdata_fetched[0]['count'] - $dbdata_fetched[0]['idle'];
|
||||
$active_count = $dbdata_fetched['count'] - $dbdata_fetched['idle'];
|
||||
|
||||
krsort($grouptime);
|
||||
$grpcount = 0;
|
||||
$nextgrp = '';
|
||||
|
||||
foreach ($grouptime as $time => $groupid) {
|
||||
$grpcount++;
|
||||
$actualgrp = $time;
|
||||
if ($activetime > $time) {
|
||||
break;
|
||||
} else {
|
||||
$nextup = $time - $activetime;
|
||||
$nextgrp = $time;
|
||||
}
|
||||
}
|
||||
@@ -58,18 +51,17 @@ if(count($multiple_uuid) > 1 and !isset($_SESSION['uuid_verified'])) {
|
||||
$percentage_rankup = round($takedtime/$neededtime*100);
|
||||
}
|
||||
|
||||
$stats_user = $mysqlcon->query("SELECT * FROM $dbname.stats_user WHERE uuid='$getstring'");
|
||||
$stats_user = $stats_user->fetchAll();
|
||||
$stats_user = $mysqlcon->query("SELECT count_week,active_week,count_month,active_month FROM $dbname.stats_user WHERE uuid='".$_SESSION[$rspathhex.'tsuid']."'")->fetch();
|
||||
|
||||
if (isset($stats_user[0]['count_week'])) $count_week = $stats_user[0]['count_week']; else $count_week = 0;
|
||||
if (isset($stats_user['count_week'])) $count_week = $stats_user['count_week']; else $count_week = 0;
|
||||
$dtF = new DateTime("@0"); $dtT = new DateTime("@$count_week"); $count_week = $dtF->diff($dtT)->format($timeformat);
|
||||
if (isset($stats_user[0]['active_week'])) $active_week = $stats_user[0]['active_week']; else $active_week = 0;
|
||||
if (isset($stats_user['active_week'])) $active_week = $stats_user['active_week']; else $active_week = 0;
|
||||
$dtF = new DateTime("@0"); $dtT = new DateTime("@$active_week"); $active_week = $dtF->diff($dtT)->format($timeformat);
|
||||
if (isset($stats_user[0]['count_month'])) $count_month = $stats_user[0]['count_month']; else $count_month = 0;
|
||||
if (isset($stats_user['count_month'])) $count_month = $stats_user['count_month']; else $count_month = 0;
|
||||
$dtF = new DateTime("@0"); $dtT = new DateTime("@$count_month"); $count_month = $dtF->diff($dtT)->format($timeformat);
|
||||
if (isset($stats_user[0]['active_month'])) $active_month = $stats_user[0]['active_month']; else $active_month = 0;
|
||||
if (isset($stats_user['active_month'])) $active_month = $stats_user['active_month']; else $active_month = 0;
|
||||
$dtF = new DateTime("@0"); $dtT = new DateTime("@$active_month"); $active_month = $dtF->diff($dtT)->format($timeformat);
|
||||
if (isset($dbdata_fetched[0]['count'])) $count_total = $dbdata_fetched[0]['count']; else $count_total = 0;
|
||||
if (isset($dbdata_fetched['count'])) $count_total = $dbdata_fetched['count']; else $count_total = 0;
|
||||
$dtF = new DateTime("@0"); $dtT = new DateTime("@$count_total"); $count_total = $dtF->diff($dtT)->format($timeformat);
|
||||
$dtF = new DateTime("@0"); $dtT = new DateTime("@$active_count"); $active_count = $dtF->diff($dtT)->format($timeformat);
|
||||
|
||||
@@ -94,11 +86,11 @@ if(count($multiple_uuid) > 1 and !isset($_SESSION['uuid_verified'])) {
|
||||
} else {
|
||||
$achievements_done = $achievements_done + 1;
|
||||
}
|
||||
if($_SESSION['tsconnections'] >= $connects_for_legendary) {
|
||||
if($_SESSION[$rspathhex.'tsconnections'] >= $connects_for_legendary) {
|
||||
$achievements_done = $achievements_done + 4;
|
||||
} elseif($_SESSION['tsconnections'] >= $connects_for_gold) {
|
||||
} elseif($_SESSION[$rspathhex.'tsconnections'] >= $connects_for_gold) {
|
||||
$achievements_done = $achievements_done + 3;
|
||||
} elseif($_SESSION['tsconnections'] >= $connects_for_silver) {
|
||||
} elseif($_SESSION[$rspathhex.'tsconnections'] >= $connects_for_silver) {
|
||||
$achievements_done = $achievements_done + 2;
|
||||
} else {
|
||||
$achievements_done = $achievements_done + 1;
|
||||
@@ -111,11 +103,9 @@ function get_percentage($max_value, $value) {
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3);
|
||||
if(count($multiple_uuid) > 1) { echo "</div></div></body></html>"; exit; } ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl);
|
||||
if(count($multiple_uuid) > 1 || $_SESSION[$rspathhex.'connected'] == 0) { echo "</div></div></body></html>"; exit; } ?>
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h1 class="page-header">
|
||||
@@ -132,15 +122,15 @@ require_once('nav.php');
|
||||
<div class="panel-heading">
|
||||
<div class="row">
|
||||
<div class="col-xs-9 text-left">
|
||||
<div class="huge"><?PHP echo $_SESSION['tsname'] ?></div>
|
||||
<div><?PHP if ($except == 0 || $except == 1) {
|
||||
echo $lang['stmy0002'],' #',$dbdata_fetched[0]['rank'];
|
||||
<div class="huge"><?PHP echo $_SESSION[$rspathhex.'tsname'] ?></div>
|
||||
<div><?PHP if ($dbdata_fetched['except'] == 0 || $dbdata_fetched['except'] == 1) {
|
||||
echo $lang['stmy0002'],' #',$dbdata_fetched['rank'];
|
||||
} ?></div>
|
||||
</div>
|
||||
<div class="col-xs-3">
|
||||
<?PHP
|
||||
if(isset($_SESSION['tsavatar']) && $_SESSION['tsavatar'] != "none") {
|
||||
echo '<img src="../avatars/'.$_SESSION['tsavatar'].'" class="img-rounded pull-right" alt="avatar" height="70">';
|
||||
if(isset($_SESSION[$rspathhex.'tsavatar']) && $_SESSION[$rspathhex.'tsavatar'] != "none") {
|
||||
echo '<img src="../avatars/'.$_SESSION[$rspathhex.'tsavatar'].'" class="img-rounded pull-right" alt="avatar" height="70">';
|
||||
} else {
|
||||
echo '<span class="fa fa-user fa-5x"></span>';
|
||||
}
|
||||
@@ -163,10 +153,10 @@ require_once('nav.php');
|
||||
<p><strong><?PHP echo $lang['stmy0010']; ?></strong></p>
|
||||
</div>
|
||||
<div class="pull-right">
|
||||
<p class="text-right"><?PHP echo $dbdata_fetched[0]['cldbid']; ?></p>
|
||||
<p class="text-right"><?PHP echo $dbdata_fetched[0]['uuid']; ?></p>
|
||||
<p class="text-right"><?PHP echo $_SESSION['tsconnections']; ?></p>
|
||||
<p class="text-right"><?PHP echo $_SESSION['tscreated']; ?></p>
|
||||
<p class="text-right"><?PHP echo $dbdata_fetched['cldbid']; ?></p>
|
||||
<p class="text-right"><?PHP echo $dbdata_fetched['uuid']; ?></p>
|
||||
<p class="text-right"><?PHP echo $_SESSION[$rspathhex.'tsconnections']; ?></p>
|
||||
<p class="text-right"><?PHP echo $_SESSION[$rspathhex.'tscreated']; ?></p>
|
||||
<p class="text-right"><?PHP echo $count_total; ?></p>
|
||||
<p class="text-right"><?PHP echo $active_count; ?></p>
|
||||
<p class="text-right"><?PHP echo $count_week; ?></p>
|
||||
@@ -179,7 +169,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP if($except == 0 || $except == 1) { ?>
|
||||
<?PHP if($dbdata_fetched['except'] == 0 || $dbdata_fetched['except'] == 1) { ?>
|
||||
<div class="col-lg-6">
|
||||
<h3><?PHP echo $lang['stmy0030']; ?></h3>
|
||||
<div class="progress">
|
||||
@@ -285,14 +275,14 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<h3><?PHP echo $lang['stmy0023']; ?></h3>
|
||||
<?PHP if($_SESSION['tsconnections'] >= $connects_for_legendary) { ?>
|
||||
<?PHP if($_SESSION[$rspathhex.'tsconnections'] >= $connects_for_legendary) { ?>
|
||||
<div class="panel panel-yellow">
|
||||
<div class="panel-heading">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 text-right">
|
||||
<div class="huge"><small><?PHP echo $lang['stmy0024']; ?></small>
|
||||
</div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION['tsconnections']); ?></div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION[$rspathhex.'tsconnections']); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -302,55 +292,55 @@ require_once('nav.php');
|
||||
<?PHP echo $lang['stmy0014']; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } elseif($_SESSION['tsconnections'] >= $connects_for_gold) { ?>
|
||||
<?PHP } elseif($_SESSION[$rspathhex.'tsconnections'] >= $connects_for_gold) { ?>
|
||||
<div class="panel panel-yellow">
|
||||
<div class="panel-heading">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 text-right">
|
||||
<div class="huge"><small><?PHP echo $lang['stmy0026']; ?></small>
|
||||
</div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION['tsconnections']); ?></div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION[$rspathhex.'tsconnections']); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="<?PHP echo get_percentage($connects_for_legendary, $_SESSION['tsconnections']); ?>" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_legendary, $_SESSION['tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_legendary, $_SESSION['tsconnections']),$lang['stmy0016']; ?>
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="<?PHP echo get_percentage($connects_for_legendary, $_SESSION[$rspathhex.'tsconnections']); ?>" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_legendary, $_SESSION[$rspathhex.'tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_legendary, $_SESSION[$rspathhex.'tsconnections']),$lang['stmy0016']; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } elseif($_SESSION['tsconnections'] >= $connects_for_silver) { ?>
|
||||
<?PHP } elseif($_SESSION[$rspathhex.'tsconnections'] >= $connects_for_silver) { ?>
|
||||
<div class="panel panel-yellow">
|
||||
<div class="panel-heading">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 text-right">
|
||||
<div class="huge"><small><?PHP echo $lang['stmy0027']; ?></small>
|
||||
</div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION['tsconnections']); ?></div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION[$rspathhex.'tsconnections']); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="<?PHP echo get_percentage($connects_for_gold, $_SESSION['tsconnections']); ?>" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_gold, $_SESSION['tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_gold, $_SESSION['tsconnections']),$lang['stmy0018']; ?>
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="<?PHP echo get_percentage($connects_for_gold, $_SESSION[$rspathhex.'tsconnections']); ?>" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_gold, $_SESSION[$rspathhex.'tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_gold, $_SESSION[$rspathhex.'tsconnections']),$lang['stmy0018']; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } elseif($_SESSION['tsconnections'] >= $connects_for_bronze) { ?>
|
||||
<?PHP } elseif($_SESSION[$rspathhex.'tsconnections'] >= $connects_for_bronze) { ?>
|
||||
<div class="panel panel-yellow">
|
||||
<div class="panel-heading">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 text-right">
|
||||
<div class="huge"><small><?PHP echo $lang['stmy0028']; ?></small>
|
||||
</div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION['tsconnections']); ?></div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION[$rspathhex.'tsconnections']); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="<?PHP echo get_percentage($connects_for_silver, $_SESSION['tsconnections']); ?>" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_silver, $_SESSION['tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_silver, $_SESSION['tsconnections']),$lang['stmy0020']; ?>
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="<?PHP echo get_percentage($connects_for_silver, $_SESSION[$rspathhex.'tsconnections']); ?>" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_silver, $_SESSION[$rspathhex.'tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_silver, $_SESSION[$rspathhex.'tsconnections']),$lang['stmy0020']; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } else { ?>
|
||||
@@ -360,26 +350,21 @@ require_once('nav.php');
|
||||
<div class="col-xs-12 text-right">
|
||||
<div class="huge"><small><?PHP echo $lang['stmy0029']; ?></small>
|
||||
</div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION['tsconnections']); ?></div>
|
||||
<div><?PHP echo sprintf($lang['stmy0025'], $_SESSION[$rspathhex.'tsconnections']); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_bronze, $_SESSION['tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_bronze, $_SESSION['tsconnections']),$lang['stmy0022']; ?>
|
||||
<div class="progress-bar progress-bar-warning progress-bar-striped active" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="min-width: 15em; width:<?PHP echo get_percentage($connects_for_bronze, $_SESSION[$rspathhex.'tsconnections']); ?>%;">
|
||||
<?PHP echo get_percentage($connects_for_bronze, $_SESSION[$rspathhex.'tsconnections']),$lang['stmy0022']; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- /#page-wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- /#wrapper -->
|
||||
</body>
|
||||
</html>
|
||||
@@ -12,26 +12,30 @@ if($language == "ar") {
|
||||
require_once('../languages/nations_de.php');
|
||||
} elseif($language == "en") {
|
||||
require_once('../languages/nations_en.php');
|
||||
} elseif($language == "fr") {
|
||||
require_once('../languages/nations_fr.php');
|
||||
} elseif($language == "it") {
|
||||
require_once('../languages/nations_it.php');
|
||||
} elseif($language == "nl") {
|
||||
require_once('../languages/nations_en.php');
|
||||
} elseif($language == "ro") {
|
||||
require_once('../languages/nations_en.php');
|
||||
} elseif($language == "ru") {
|
||||
require_once('../languages/nations_ru.php');
|
||||
} elseif($language == "pt") {
|
||||
require_once('../languages/nations_pt.php');
|
||||
}
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
|
||||
$sql = $mysqlcon->query("SELECT * FROM $dbname.stats_nations ORDER BY count DESC");
|
||||
$sql_res = $sql->fetchAll();
|
||||
$sql_res = $mysqlcon->query("SELECT * FROM $dbname.stats_nations ORDER BY count DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
@@ -50,17 +54,23 @@ require_once('nav.php');
|
||||
<th><?PHP echo $lang['stna0003']; ?></th>
|
||||
<th><?PHP echo $lang['stna0001']; ?></th>
|
||||
<th><?PHP echo $lang['stix0060'],' ',$lang['stna0004']; ?></th>
|
||||
<th><?PHP echo $lang['stna0007']; ?></th>
|
||||
</tr>
|
||||
<?PHP
|
||||
$count = 0;
|
||||
foreach ($sql_res as $line) {
|
||||
$sum_of_all = 0;
|
||||
foreach ($sql_res as $country => $value) {
|
||||
$sum_of_all = $sum_of_all + $value['count'];
|
||||
}
|
||||
foreach ($sql_res as $country => $value) {
|
||||
$count++;
|
||||
echo '
|
||||
<tr>
|
||||
<td>',$count,'</td>
|
||||
<td><span class="flag-icon flag-icon-',strtolower($line['nation']),'"></span> ',$line['nation'],'</td>
|
||||
<td><a href="list_rankup.php?sort=rank&order=desc&search=filter:country:',$line['nation'],':">',$nation[$line['nation']],'</td>
|
||||
<td>',$line['count'],'</td>
|
||||
<td><span class="flag-icon flag-icon-',strtolower($country),'"></span> ',$country,'</td>
|
||||
<td><a href="list_rankup.php?sort=rank&order=desc&search=filter:country:',$country,':">',$nation[$country],'</td>
|
||||
<td>',$value['count'],'</td>
|
||||
<td>',number_format(round(($value['count'] * 100 / $sum_of_all), 1), 1),' %</td>
|
||||
</tr>';
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
<?PHP
|
||||
$job_check = $mysqlcon->query("SELECT * FROM $dbname.job_check")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
if((time() - $job_check['last_update']['timestamp']) < 259200 && !isset($_SESSION[$rspathhex.'upinfomsg'])) {
|
||||
if(!isset($err_msg)) {
|
||||
$err_msg = '<i class="fa fa-fw fa-info-circle"></i> '.sprintf($lang['upinf2'], date("Y-m-d H:i",$job_check['last_update']['timestamp']), '<a href="//ts-n.net/ranksystem.php?changelog" target="_blank"><i class="fa fa-fw fa-book"></i> ', '</a>'); $err_lvl = 1;
|
||||
$_SESSION[$rspathhex.'upinfomsg'] = 1;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?PHP echo $language; ?>">
|
||||
<head>
|
||||
@@ -193,20 +202,25 @@
|
||||
<?PHP } ?>
|
||||
<ul class="nav navbar-right top-nav">
|
||||
<?PHP
|
||||
$lastscan = $mysqlcon->query("SELECT * FROM $dbname.job_check WHERE job_name='calc_user_lastscan'");
|
||||
$lastscan = $lastscan->fetchAll();
|
||||
if((time() - $lastscan[0]['timestamp']) > 600) { ?>
|
||||
if((time() - $job_check['calc_user_lastscan']['timestamp']) > 600) { ?>
|
||||
<li class="navbar-form navbar-left">
|
||||
<span class="label label-warning"><?PHP echo $lang['stnv0027']; ?></span>
|
||||
</li>
|
||||
<?PHP } ?>
|
||||
<li class="dropdown">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-user"></i><?PHP echo ' ' .($_SESSION['connected'] == 0 ? $lang['stnv0028'] : $_SESSION['tsname']); ?> <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-user"></i><?PHP echo ' ' . $_SESSION[$rspathhex.'tsname'] ?>
|
||||
<b class="caret"></b></a><ul class="dropdown-menu">
|
||||
<?PHP
|
||||
if(isset($_SESSION['admin'])) {
|
||||
echo '<li><a href="http',(!empty($_SERVER['HTTPS'])?'s':''),'://',$_SERVER['SERVER_NAME'],substr(dirname($_SERVER['SCRIPT_NAME']),0,-5),'webinterface/ts.php"><i class="fa fa-fw fa-wrench"></i> ',$lang['wi'],'</a></li>';
|
||||
} elseif ($_SESSION['connected'] == 0) {
|
||||
if($_SESSION[$rspathhex.'tsname'] == "verification needed!" || $_SESSION[$rspathhex.'connected'] == 0) {
|
||||
echo '<li><a href="verify.php"><i class="fa fa-fw fa-key"></i> verificate here..</a></li>';
|
||||
}
|
||||
if(isset($_SESSION[$rspathhex.'admin']) && $_SESSION[$rspathhex.'admin'] == TRUE) {
|
||||
if($_SERVER['SERVER_PORT'] == 443 || $_SERVER['SERVER_PORT'] == 80) {
|
||||
echo '<li><a href="//',$_SERVER['SERVER_NAME'],':',substr(dirname($_SERVER['SCRIPT_NAME']),0,-5),'webinterface/bot.php"><i class="fa fa-fw fa-wrench"></i> ',$lang['wi'],'</a></li>';
|
||||
} else {
|
||||
echo '<li><a href="//',$_SERVER['SERVER_NAME'],':',$_SERVER['SERVER_PORT'],substr(dirname($_SERVER['SCRIPT_NAME']),0,-5),'webinterface/bot.php"><i class="fa fa-fw fa-wrench"></i> ',$lang['wi'],'</a></li>';
|
||||
}
|
||||
} elseif ($_SESSION[$rspathhex.'connected'] == 0) {
|
||||
echo '<li><a href="ts3server://';
|
||||
if (($ts['host']=='localhost' || $ts['host']=='127.0.0.1') && strpos($_SERVER['HTTP_HOST'], 'www.') == 0) {
|
||||
echo preg_replace('/www\./','',$_SERVER['HTTP_HOST']);
|
||||
@@ -218,8 +232,10 @@
|
||||
echo ':'.$ts['voice'];
|
||||
echo '"><i class="fa fa-fw fa-headphones"></i> '.$lang['stnv0043'].'</a></li>';
|
||||
}
|
||||
echo (!isset($_SESSION['tsname']) ? ' ' : '<li><a href="my_stats.php"><i class="fa fa-fw fa-user"></i> '.$lang['stmy0001'].'</a></li>');
|
||||
?>
|
||||
<li>
|
||||
<a href="my_stats.php"><i class="fa fa-fw fa-user"></i> <?PHP echo $lang['stmy0001']; ?></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#myModal" data-toggle="modal"><i class="fa fa-fw fa-envelope"></i> <?PHP echo $lang['stnv0001']; ?></a>
|
||||
</li>
|
||||
@@ -273,21 +289,12 @@
|
||||
<a href="index.php"><i class="fa fa-fw fa-area-chart"></i> <?PHP echo $lang['stix0001']; ?></a>
|
||||
</li>
|
||||
<?PHP echo '<li'.(basename($_SERVER['SCRIPT_NAME']) == "my_stats.php" ? ' class="active">' : '>'); ?>
|
||||
<?PHP if($_SESSION['connected'] == 0) {
|
||||
echo '<a href="#myStatsModal" data-toggle="modal"><i class="fa fa-fw fa-exclamation-triangle"></i> *',$lang['stmy0001'],'</a>';
|
||||
} else {
|
||||
echo '<a href="my_stats.php"><i class="fa fa-fw fa-bar-chart-o"></i> ',$lang['stmy0001'],'</a>';
|
||||
}?>
|
||||
<a href="my_stats.php"><i class="fa fa-fw fa-bar-chart-o"></i> <?PHP echo $lang['stmy0001']; ?></a>
|
||||
</li>
|
||||
<?PHP if($addons_config['assign_groups_active']['value'] == '1') {
|
||||
echo '<li'.(basename($_SERVER['SCRIPT_NAME']) == "assign_groups.php" ? ' class="active">' : '>'); ?>
|
||||
<?PHP if($_SESSION['connected'] == 0) {
|
||||
echo '<a href="#myStatsModal" data-toggle="modal"><i class="fa fa-fw fa-address-card-o"></i> *',$lang['stag0001'],'</a>';
|
||||
} else {
|
||||
echo '<a href="assign_groups.php"><i class="fa fa-fw fa-address-card-o"></i> ',$lang['stag0001'],'</a>';
|
||||
}
|
||||
}
|
||||
?>
|
||||
<a href="assign_groups.php"><i class="fa fa-fw fa-address-card-o"></i> <?PHP echo $lang['stag0001']; ?></a>
|
||||
<?PHP } ?>
|
||||
</li>
|
||||
<?PHP echo '<li'.(basename($_SERVER['SCRIPT_NAME']) == "top_all.php" ? ' class="active">' : '>'); ?>
|
||||
<a href="javascript:;" data-toggle="collapse" data-target="#demo"><i class="fa fa-fw fa-trophy"></i> <?PHP echo $lang['sttw0001']; ?> <i class="fa fa-fw fa-caret-down"></i></a>
|
||||
|
||||
@@ -20,18 +20,17 @@ if($language == "ar") {
|
||||
require_once('../languages/nations_ru.php');
|
||||
}
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
|
||||
$sql = $mysqlcon->query("SELECT * FROM $dbname.stats_platforms ORDER BY count DESC");
|
||||
$sql_res = $sql->fetchAll();
|
||||
$sql_res = $mysqlcon->query("SELECT * FROM $dbname.stats_platforms ORDER BY count DESC")->fetchALL(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
@@ -49,16 +48,22 @@ require_once('nav.php');
|
||||
<th>#</th>
|
||||
<th><?PHP echo $lang['stna0006']; ?></th>
|
||||
<th><?PHP echo $lang['stix0060'],' ',$lang['stna0004']; ?></th>
|
||||
<th><?PHP echo $lang['stna0007']; ?></th>
|
||||
</tr>
|
||||
<?PHP
|
||||
$count = 0;
|
||||
foreach ($sql_res as $line) {
|
||||
$sum_of_all = 0;
|
||||
foreach ($sql_res as $country => $value) {
|
||||
$sum_of_all = $sum_of_all + $value['count'];
|
||||
}
|
||||
foreach ($sql_res as $platform => $value) {
|
||||
$count++;
|
||||
echo '
|
||||
<tr>
|
||||
<td>',$count,'</td>
|
||||
<td>',$line['platform'],'</td>
|
||||
<td>',$line['count'],'</td>
|
||||
<td>',$platform,'</td>
|
||||
<td>',$value['count'],'</td>
|
||||
<td>',number_format(round(($value['count'] * 100 / $sum_of_all), 1), 1),' %</td>
|
||||
</tr>';
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?PHP
|
||||
session_start();
|
||||
$starttime = microtime(true);
|
||||
|
||||
require_once('../other/config.php');
|
||||
require_once('../other/session.php');
|
||||
@@ -8,27 +7,26 @@ require_once('../other/load_addons_config.php');
|
||||
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
if ($substridle == 1) {
|
||||
$dbdata = $mysqlcon->query("SELECT uuid,name,count,idle,cldgroup,online FROM $dbname.user ORDER BY (count - idle) DESC");
|
||||
$db_arr = $mysqlcon->query("SELECT uuid,name,count,idle,cldgroup,online FROM $dbname.user ORDER BY (count - idle) DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
$texttime = $lang['sttw0013'];
|
||||
} else {
|
||||
$dbdata = $mysqlcon->query("SELECT uuid,name,count,idle,cldgroup,online FROM $dbname.user ORDER BY count DESC");
|
||||
$db_arr = $mysqlcon->query("SELECT uuid,name,count,idle,cldgroup,online FROM $dbname.user ORDER BY count DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
$texttime = $lang['sttw0003'];
|
||||
}
|
||||
$sumentries = $dbdata->rowCount() - 10;
|
||||
$db_arr = $dbdata->fetchAll();
|
||||
$sumentries = count($db_arr) - 10;
|
||||
$count10 = 0;
|
||||
$top10_sum = 0;
|
||||
$top10_idle_sum = 0;
|
||||
|
||||
|
||||
foreach ($db_arr as $client) {
|
||||
$sgroups = explode(",", $client['cldgroup']);
|
||||
if (!in_array($client['uuid'], $exceptuuid) && !array_intersect($sgroups, $exceptgroup)) {
|
||||
foreach ($db_arr as $uuid => $client) {
|
||||
$sgroups = array_flip(explode(",", $client['cldgroup']));
|
||||
if (!isset($exceptuuid[$uuid]) && !array_intersect_key($sgroups, $exceptgroup)) {
|
||||
if ($count10 == 10) break;
|
||||
if ($substridle == 1) {
|
||||
$hours = $client['count'] - $client['idle'];
|
||||
@@ -54,13 +52,9 @@ for($count10 = $count10; $count10 <= 10; $count10++) {
|
||||
);
|
||||
}
|
||||
|
||||
$all_sum_data = $mysqlcon->query("SELECT SUM(count) FROM $dbname.user");
|
||||
$all_sum_data_res = $all_sum_data->fetchAll();
|
||||
$others_sum = round(($all_sum_data_res[0][0]/3600)) - $top10_sum;
|
||||
|
||||
$all_idle_sum_data = $mysqlcon->query("SELECT SUM(idle) FROM $dbname.user");
|
||||
$all_idle_sum_data_res = $all_idle_sum_data->fetchAll();
|
||||
$others_idle_sum = round(($all_idle_sum_data_res[0][0]/3600)) - $top10_idle_sum;
|
||||
$sum = $mysqlcon->query("SELECT SUM(count) AS count, SUM(idle) AS idle FROM $dbname.user")->fetch();
|
||||
$others_sum = round(($sum['count']/3600)) - $top10_sum;
|
||||
$others_idle_sum = round(($sum['idle']/3600)) - $top10_idle_sum;
|
||||
|
||||
function get_percentage($max_value, $value) {
|
||||
return (round(($value/$max_value)*100));
|
||||
@@ -68,10 +62,8 @@ function get_percentage($max_value, $value) {
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h1 class="page-header">
|
||||
@@ -80,7 +72,6 @@ require_once('nav.php');
|
||||
</h1>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
<div class="row">
|
||||
<div class="col-lg-4 col-lg-offset-4">
|
||||
<div class="panel panel-primary">
|
||||
@@ -93,7 +84,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[0]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[0]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[0]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[0]['count']<3600) { echo sprintf($texttime, round(($client_data[0]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[0]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -112,7 +103,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[1]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[1]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[1]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[1]['count']<3600) { echo sprintf($texttime, round(($client_data[1]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[1]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -129,7 +120,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[2]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[2]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[2]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[2]['count']<3600) { echo sprintf($texttime, round(($client_data[2]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[2]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -146,7 +137,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[3]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[3]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[3]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[3]['count']<3600) { echo sprintf($texttime, round(($client_data[3]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[3]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -161,7 +152,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[4]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[4]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[4]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[4]['count']<3600) { echo sprintf($texttime, round(($client_data[4]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[4]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -176,7 +167,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[5]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[5]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[5]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[5]['count']<3600) { echo sprintf($texttime, round(($client_data[5]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[5]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -196,7 +187,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[6]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[6]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[6]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[6]['count']<3600) { echo sprintf($texttime, round(($client_data[6]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[6]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -214,7 +205,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[7]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[7]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[7]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[7]['count']<3600) { echo sprintf($texttime, round(($client_data[7]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[7]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -232,7 +223,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[8]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[8]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[8]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[8]['count']<3600) { echo sprintf($texttime, round(($client_data[8]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[8]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -250,14 +241,13 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[9]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[9]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[9]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[9]['count']<3600) { echo sprintf($texttime, round(($client_data[9]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[9]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h2><?PHP echo $lang['sttw0004']; ?></h2>
|
||||
@@ -351,14 +341,8 @@ require_once('nav.php');
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- /#page-wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- /#wrapper -->
|
||||
<!-- /Scripts -->
|
||||
<?PHP
|
||||
|
||||
?>
|
||||
@@ -394,5 +378,4 @@ require_once('nav.php');
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -1,6 +1,5 @@
|
||||
<?PHP
|
||||
session_start();
|
||||
$starttime = microtime(true);
|
||||
|
||||
require_once('../other/config.php');
|
||||
require_once('../other/session.php');
|
||||
@@ -8,27 +7,28 @@ require_once('../other/load_addons_config.php');
|
||||
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
if ($substridle == 1) {
|
||||
$dbdata = $mysqlcon->query("SELECT s.uuid,s.count_month,s.idle_month,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY (s.count_month - s.idle_month) DESC");
|
||||
$db_arr = $mysqlcon->query("SELECT s.uuid,s.count_month,s.idle_month,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY (s.count_month - s.idle_month) DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
$texttime = $lang['sttw0013'];
|
||||
} else {
|
||||
$dbdata = $mysqlcon->query("SELECT s.uuid,s.count_month,s.idle_month,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY s.count_month DESC");
|
||||
$db_arr = $mysqlcon->query("SELECT s.uuid,s.count_month,s.idle_month,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY s.count_month DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
$texttime = $lang['sttw0003'];
|
||||
}
|
||||
$sumentries = $dbdata->rowCount() - 10;
|
||||
$db_arr = $dbdata->fetchAll();
|
||||
|
||||
$count_timestamps = $mysqlcon->query("SELECT COUNT(DISTINCT(timestamp)) as count from $dbname.user_snapshot;")->fetch();
|
||||
|
||||
$sumentries = count($db_arr) - 10;
|
||||
$count10 = 0;
|
||||
$top10_sum = 0;
|
||||
$top10_idle_sum = 0;
|
||||
|
||||
|
||||
foreach ($db_arr as $client) {
|
||||
$sgroups = explode(",", $client['cldgroup']);
|
||||
if (!in_array($client['uuid'], $exceptuuid) && !array_intersect($sgroups, $exceptgroup)) {
|
||||
foreach ($db_arr as $uuid => $client) {
|
||||
$sgroups = array_flip(explode(",", $client['cldgroup']));
|
||||
if (!isset($exceptuuid[$uuid]) && !array_intersect_key($sgroups, $exceptgroup)) {
|
||||
if ($count10 == 10) break;
|
||||
if ($substridle == 1) {
|
||||
$hours = $client['count_month'] - $client['idle_month'];
|
||||
@@ -54,13 +54,9 @@ for($count10 = $count10; $count10 <= 10; $count10++) {
|
||||
);
|
||||
}
|
||||
|
||||
$all_sum_data = $mysqlcon->query("SELECT SUM(count_month) FROM $dbname.stats_user");
|
||||
$all_sum_data_res = $all_sum_data->fetchAll();
|
||||
$others_sum = round(($all_sum_data_res[0][0]/3600)) - $top10_sum;
|
||||
|
||||
$all_idle_sum_data = $mysqlcon->query("SELECT SUM(idle_month) FROM $dbname.stats_user");
|
||||
$all_idle_sum_data_res = $all_idle_sum_data->fetchAll();
|
||||
$others_idle_sum = round(($all_idle_sum_data_res[0][0]/3600)) - $top10_idle_sum;
|
||||
$sum = $mysqlcon->query("SELECT SUM(count_month) AS count, SUM(idle_month) AS idle FROM $dbname.stats_user")->fetch();
|
||||
$others_sum = round(($sum['count']/3600)) - $top10_sum;
|
||||
$others_idle_sum = round(($sum['idle']/3600)) - $top10_idle_sum;
|
||||
|
||||
function get_percentage($max_value, $value) {
|
||||
return (round(($value/$max_value)*100));
|
||||
@@ -68,10 +64,8 @@ function get_percentage($max_value, $value) {
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h1 class="page-header">
|
||||
@@ -80,7 +74,7 @@ require_once('nav.php');
|
||||
</h1>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
<?PHP if($count_timestamps['count'] < 120) { echo $lang['stix0048']; } else { ?>
|
||||
<div class="row">
|
||||
<div class="col-lg-4 col-lg-offset-4">
|
||||
<div class="panel panel-primary">
|
||||
@@ -93,7 +87,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[0]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[0]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[0]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[0]['count']<3600) { echo sprintf($texttime, round(($client_data[0]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[0]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -112,7 +106,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[1]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[1]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[1]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[1]['count']<3600) { echo sprintf($texttime, round(($client_data[1]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[1]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -129,7 +123,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[2]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[2]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[2]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[2]['count']<3600) { echo sprintf($texttime, round(($client_data[2]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[2]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -146,7 +140,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[3]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[3]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[3]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[3]['count']<3600) { echo sprintf($texttime, round(($client_data[3]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[3]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -161,7 +155,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[4]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[4]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[4]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[4]['count']<3600) { echo sprintf($texttime, round(($client_data[4]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[4]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -176,7 +170,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[5]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[5]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[5]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[5]['count']<3600) { echo sprintf($texttime, round(($client_data[5]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[5]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -196,7 +190,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[6]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[6]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[6]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[6]['count']<3600) { echo sprintf($texttime, round(($client_data[6]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[6]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -214,7 +208,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[7]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[7]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[7]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[7]['count']<3600) { echo sprintf($texttime, round(($client_data[7]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[7]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -232,7 +226,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[8]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[8]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[8]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[8]['count']<3600) { echo sprintf($texttime, round(($client_data[8]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[8]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -250,14 +244,13 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[9]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[9]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[9]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[9]['count']<3600) { echo sprintf($texttime, round(($client_data[9]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[9]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h2><?PHP echo $lang['sttw0004']; ?></h2>
|
||||
@@ -350,15 +343,10 @@ require_once('nav.php');
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } ?>
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- /#page-wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- /#wrapper -->
|
||||
<!-- /Scripts -->
|
||||
<?PHP
|
||||
|
||||
?>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?PHP
|
||||
session_start();
|
||||
$starttime = microtime(true);
|
||||
|
||||
require_once('../other/config.php');
|
||||
require_once('../other/session.php');
|
||||
@@ -8,27 +7,28 @@ require_once('../other/load_addons_config.php');
|
||||
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
if ($substridle == 1) {
|
||||
$dbdata = $mysqlcon->query("SELECT s.uuid,s.count_week,s.idle_week,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY (s.count_week - s.idle_week) DESC");
|
||||
$db_arr = $mysqlcon->query("SELECT s.uuid,s.count_week,s.idle_week,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY (s.count_week - s.idle_week) DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
$texttime = $lang['sttw0013'];
|
||||
} else {
|
||||
$dbdata = $mysqlcon->query("SELECT s.uuid,s.count_week,s.idle_week,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY s.count_week DESC");
|
||||
$db_arr = $mysqlcon->query("SELECT s.uuid,s.count_week,s.idle_week,u.name,u.online,u.cldgroup FROM $dbname.stats_user AS s INNER JOIN $dbname.user AS u ON s.uuid = u.uuid WHERE s.removed='0' ORDER BY s.count_week DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
$texttime = $lang['sttw0003'];
|
||||
}
|
||||
$sumentries = $dbdata->rowCount() - 10;
|
||||
$db_arr = $dbdata->fetchAll();
|
||||
|
||||
$count_timestamps = $mysqlcon->query("SELECT COUNT(DISTINCT(timestamp)) as count from $dbname.user_snapshot;")->fetch();
|
||||
|
||||
$sumentries = count($db_arr) - 10;
|
||||
$count10 = 0;
|
||||
$top10_sum = 0;
|
||||
$top10_idle_sum = 0;
|
||||
|
||||
|
||||
foreach ($db_arr as $client) {
|
||||
$sgroups = explode(",", $client['cldgroup']);
|
||||
if (!in_array($client['uuid'], $exceptuuid) && !array_intersect($sgroups, $exceptgroup)) {
|
||||
foreach ($db_arr as $uuid => $client) {
|
||||
$sgroups = array_flip(explode(",", $client['cldgroup']));
|
||||
if (!isset($exceptuuid[$uuid]) && !array_intersect_key($sgroups, $exceptgroup)) {
|
||||
if ($count10 == 10) break;
|
||||
if ($substridle == 1) {
|
||||
$hours = $client['count_week'] - $client['idle_week'];
|
||||
@@ -46,21 +46,17 @@ foreach ($db_arr as $client) {
|
||||
}
|
||||
}
|
||||
|
||||
for($count10 = $count10; $count10 <= 10; $count10++) {
|
||||
$client_data[$count10] = array(
|
||||
for($count = $count10; $count10 < 10; $count10++) {
|
||||
$client_data[$count] = array(
|
||||
'name' => "<i>unkown</i>",
|
||||
'count' => "0",
|
||||
'online' => "0"
|
||||
);
|
||||
}
|
||||
|
||||
$all_sum_data = $mysqlcon->query("SELECT SUM(count_week) FROM $dbname.stats_user");
|
||||
$all_sum_data_res = $all_sum_data->fetchAll();
|
||||
$others_sum = round(($all_sum_data_res[0][0]/3600)) - $top10_sum;
|
||||
|
||||
$all_idle_sum_data = $mysqlcon->query("SELECT SUM(idle_week) FROM $dbname.stats_user");
|
||||
$all_idle_sum_data_res = $all_idle_sum_data->fetchAll();
|
||||
$others_idle_sum = round(($all_idle_sum_data_res[0][0]/3600)) - $top10_idle_sum;
|
||||
$sum = $mysqlcon->query("SELECT SUM(count_week) AS count, SUM(idle_week) AS idle FROM $dbname.stats_user")->fetch();
|
||||
$others_sum = round(($sum['count']/3600)) - $top10_sum;
|
||||
$others_idle_sum = round(($sum['idle']/3600)) - $top10_idle_sum;
|
||||
|
||||
function get_percentage($max_value, $value) {
|
||||
return (round(($value/$max_value)*100));
|
||||
@@ -68,10 +64,8 @@ function get_percentage($max_value, $value) {
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h1 class="page-header">
|
||||
@@ -80,7 +74,7 @@ require_once('nav.php');
|
||||
</h1>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
<?PHP if($count_timestamps['count'] < 28) { echo $lang['stix0048']; } else { ?>
|
||||
<div class="row">
|
||||
<div class="col-lg-4 col-lg-offset-4">
|
||||
<div class="panel panel-primary">
|
||||
@@ -93,7 +87,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[0]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[0]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[0]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[0]['count']<3600) { echo sprintf($texttime, round(($client_data[0]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[0]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -112,7 +106,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[1]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[1]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[1]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[1]['count']<3600) { echo sprintf($texttime, round(($client_data[1]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[1]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -129,7 +123,7 @@ require_once('nav.php');
|
||||
<div class="col-xs-9 text-right">
|
||||
<div> </div>
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[2]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[2]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[2]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[2]['count']<3600) { echo sprintf($texttime, round(($client_data[2]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[2]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -146,7 +140,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[3]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[3]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[3]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[3]['count']<3600) { echo sprintf($texttime, round(($client_data[3]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[3]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -161,7 +155,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[4]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[4]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[4]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[4]['count']<3600) { echo sprintf($texttime, round(($client_data[4]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[4]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -176,7 +170,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[5]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[5]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[5]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[5]['count']<3600) { echo sprintf($texttime, round(($client_data[5]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[5]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -196,7 +190,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[6]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[6]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[6]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[6]['count']<3600) { echo sprintf($texttime, round(($client_data[6]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[6]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -214,7 +208,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[7]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[7]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[7]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[7]['count']<3600) { echo sprintf($texttime, round(($client_data[7]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[7]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -232,7 +226,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[8]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[8]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[8]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[8]['count']<3600) { echo sprintf($texttime, round(($client_data[8]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[8]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -250,14 +244,13 @@ require_once('nav.php');
|
||||
</div>
|
||||
<div class="col-xs-9 text-right">
|
||||
<div class="tophuge"><span title=<?PHP echo '"' .$client_data[9]['name'] .'"'?>><?PHP echo str_replace(' ', '', $client_data[9]['name']) ?></span></div>
|
||||
<div><?PHP echo sprintf($texttime, round(($client_data[9]['count']/3600))); ?></div>
|
||||
<div><?PHP if($client_data[9]['count']<3600) { echo sprintf($texttime, round(($client_data[9]['count']/60)), $lang['sttw0015']); } else { echo sprintf($texttime, round(($client_data[9]['count']/3600)), $lang['sttw0014']); } ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h2><?PHP echo $lang['sttw0004']; ?></h2>
|
||||
@@ -350,15 +343,10 @@ require_once('nav.php');
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } ?>
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- /#page-wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- /#wrapper -->
|
||||
<!-- /Scripts -->
|
||||
<?PHP
|
||||
|
||||
?>
|
||||
@@ -394,5 +382,4 @@ require_once('nav.php');
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
145
stats/verify.php
145
stats/verify.php
@@ -8,17 +8,86 @@ require_once('../other/load_addons_config.php');
|
||||
|
||||
$addons_config = load_addons_config($mysqlcon,$lang,$dbname,$timezone,$logpath);
|
||||
|
||||
if(!isset($_SESSION['tsuid']) || isset($_SESSION['uuid_verified'])) {
|
||||
if(isset($_REQUEST['token']) && isset($_SESSION[$rspathhex.'temp_uuid'])) {
|
||||
if($_REQUEST['token'] == NULL) {
|
||||
$err_msg = $lang['stve0003']; $err_lvl = 1;
|
||||
} elseif($_REQUEST['token'] != $_SESSION[$rspathhex.'token']) {
|
||||
$err_msg = $lang['stve0004']; $err_lvl = 3;
|
||||
} elseif($_REQUEST['token'] == $_SESSION[$rspathhex.'token']) {
|
||||
$err_msg = $lang['stve0005']; $err_lvl = NULL;
|
||||
$_SESSION[$rspathhex.'serverport'] = $ts['voice'];
|
||||
$_SESSION[$rspathhex.'uuid_verified'] = $_SESSION[$rspathhex.'temp_uuid'];
|
||||
$_SESSION[$rspathhex.'tsuid'] = $_SESSION[$rspathhex.'temp_uuid'];
|
||||
$_SESSION[$rspathhex.'multiple'] = '';
|
||||
$_SESSION[$rspathhex.'connected'] = 1;
|
||||
$_SESSION[$rspathhex.'tscldbid'] = $_SESSION[$rspathhex.'temp_cldbid'];
|
||||
$_SESSION[$rspathhex.'tsname'] = $_SESSION[$rspathhex.'temp_name'];
|
||||
foreach ($adminuuid as $auuid) {
|
||||
if ($_SESSION[$rspathhex.'uuid_verified'] == $auuid) {
|
||||
$_SESSION[$rspathhex.'admin'] = TRUE;
|
||||
}
|
||||
}
|
||||
$dbdata = $mysqlcon->prepare("SELECT a.firstcon AS firstcon, b.total_connections AS total_connections FROM $dbname.user a INNER JOIN $dbname.stats_user b ON a.uuid = b.uuid WHERE b.uuid = :uuid");
|
||||
$dbdata->bindValue(':uuid', $_SESSION[$rspathhex.'tsuid'], PDO::PARAM_STR);
|
||||
$dbdata->execute();
|
||||
$clientinfo = $dbdata->fetchAll();
|
||||
if ($clientinfo[0]['total_connections'] != NULL) {
|
||||
$_SESSION[$rspathhex.'tsconnections'] = $clientinfo[0]['total_connections'];
|
||||
} else {
|
||||
$_SESSION[$rspathhex.'tsconnections'] = 0;
|
||||
}
|
||||
if ($clientinfo[0]['firstcon'] == 0) {
|
||||
$_SESSION[$rspathhex.'tscreated'] = "unkown";
|
||||
} else {
|
||||
$_SESSION[$rspathhex.'tscreated'] = date('d-m-Y', $clientinfo[0]['firstcon']);
|
||||
}
|
||||
$uuidasbase16 = '';
|
||||
for ($i = 0; $i < 20; $i++) {
|
||||
$char = ord(substr(base64_decode($_SESSION[$rspathhex.'tsuid']), $i, 1));
|
||||
$uuidasbase16 .= $convert[($char & 0xF0) >> 4];
|
||||
$uuidasbase16 .= $convert[$char & 0x0F];
|
||||
}
|
||||
if (is_file('../avatars/' . $uuidasbase16 . '.png')) {
|
||||
$_SESSION[$rspathhex.'tsavatar'] = $uuidasbase16 . '.png';
|
||||
} else {
|
||||
$_SESSION[$rspathhex.'tsavatar'] = "none";
|
||||
}
|
||||
$_SESSION[$rspathhex.'language'] = $language;
|
||||
} else {
|
||||
$err_msg = $lang['stve0006']; $err_lvl = 3;
|
||||
}
|
||||
}
|
||||
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
$multi_uuid = explode(',', substr($_SESSION['multiple'], 0, -1));
|
||||
foreach ($multi_uuid as $entry) {
|
||||
list($key, $value) = explode('=>', $entry);
|
||||
$multiple_uuid[$key] = $value;
|
||||
if(isset($_SESSION[$rspathhex.'multiple'])) {
|
||||
$multi_uuid = explode(',', substr($_SESSION[$rspathhex.'multiple'], 0, -1));
|
||||
}
|
||||
|
||||
if(isset($_POST['uuid']) && !isset($_SESSION['temp_uuid'])) {
|
||||
if($_SESSION[$rspathhex.'multiple'] == NULL && count($multi_uuid) < 2 && ($registercid == NULL || $registercid == 0)) {
|
||||
$err_msg = $lang['verify0001']."<br><br>".$lang['verify0003'];
|
||||
$err_lvl = 3;
|
||||
} elseif($_SESSION[$rspathhex.'connected'] == 0 && $registercid != NULL && $registercid != 0) {
|
||||
$err_msg = $lang['verify0001']; $err_lvl = 1;
|
||||
$uuids = $mysqlcon->query("SELECT name,uuid FROM $dbname.user WHERE online='1' and cid='$registercid' ORDER BY name ASC")->fetchAll();
|
||||
foreach($uuids as $entry) {
|
||||
$multiple_uuid[$entry['uuid']] = $entry['name'];
|
||||
}
|
||||
} elseif(count($multi_uuid) == 1 && $_SESSION[$rspathhex.'connected'] == 1) {
|
||||
$err_msg = $lang['stve0005']; $err_lvl = 1;
|
||||
} elseif(count($multi_uuid) > 1) {
|
||||
$multi_uuid = explode(',', substr($_SESSION[$rspathhex.'multiple'], 0, -1));
|
||||
foreach ($multi_uuid as $entry) {
|
||||
list($key, $value) = explode('=>', $entry);
|
||||
$multiple_uuid[$key] = $value;
|
||||
}
|
||||
} else {
|
||||
$err_msg = $lang['stve0006']; $err_lvl = 3;
|
||||
}
|
||||
|
||||
if(isset($_POST['uuid']) && !isset($_SESSION[$rspathhex.'temp_uuid'])) {
|
||||
require_once('../libs/ts3_lib/TeamSpeak3.php');
|
||||
try {
|
||||
$ts3 = TeamSpeak3::factory("serverquery://".$ts['user'].":".$ts['pass']."@".$ts['host'].":".$ts['query']."/?server_port=".$ts['voice']."&blocking=0");
|
||||
@@ -27,55 +96,46 @@ if(isset($_POST['uuid']) && !isset($_SESSION['temp_uuid'])) {
|
||||
usleep($slowmode);
|
||||
$ts3->selfUpdate(array('client_nickname' => "Ranksystem - Verification"));
|
||||
} catch (Exception $e) {
|
||||
$err_msg = 'TeamSpeak '.$lang['error'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
$err_msg = $lang['errorts3'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
}
|
||||
|
||||
try {
|
||||
usleep($slowmode);
|
||||
$allclients = $ts3->clientList();
|
||||
} catch (Exception $e) {
|
||||
$err_msg = 'TeamSpeak '.$lang['error'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
$err_msg = $lang['errorts3'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
}
|
||||
|
||||
foreach ($allclients as $client) {
|
||||
if($client['client_unique_identifier'] == $_POST['uuid']) {
|
||||
$cldbid = $client['client_database_id'];
|
||||
$nickname = htmlspecialchars($client['client_nickname'], ENT_QUOTES);
|
||||
$_SESSION['temp_uuid'] = htmlspecialchars($client['client_unique_identifier'], ENT_QUOTES);
|
||||
$_SESSION[$rspathhex.'temp_uuid'] = htmlspecialchars($client['client_unique_identifier'], ENT_QUOTES);
|
||||
$_SESSION[$rspathhex.'temp_cldbid'] = $cldbid;
|
||||
$_SESSION[$rspathhex.'temp_name'] = $nickname;
|
||||
$pwd = substr(str_shuffle("abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789"),0,6);
|
||||
$_SESSION['token'] = $pwd;
|
||||
$_SESSION[$rspathhex.'token'] = $pwd;
|
||||
$tokenlink = '[URL]http'.(!empty($_SERVER['HTTPS'])?'s':'').'://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].'?token='.$pwd.'[/URL]';
|
||||
try {
|
||||
$ts3->clientGetByUid($_SESSION['temp_uuid'])->message(sprintf($lang['stve0001'], $nickname, $pwd));
|
||||
$ts3->clientGetByUid($_SESSION[$rspathhex.'temp_uuid'])->message(sprintf($lang['stve0001'], $nickname, $tokenlink, $pwd));
|
||||
$err_msg = $lang['stve0002']; $err_lvl = 1;
|
||||
} catch (Exception $e) {
|
||||
$err_msg = 'TeamSpeak '.$lang['error'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
$err_msg = $lang['errorts3'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
$err_msg = 'TeamSpeak '.$lang['error'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($_POST['token']) && isset($_SESSION['temp_uuid'])) {
|
||||
if($_POST['token'] == NULL) {
|
||||
$err_msg = $lang['stve0003']; $err_lvl = 1;
|
||||
} elseif($_POST['token'] != $_SESSION['token']) {
|
||||
$err_msg = $lang['stve0004']; $err_lvl = 3;
|
||||
} elseif($_POST['token'] == $_SESSION['token']) {
|
||||
$err_msg = $lang['stve0005']; $err_lvl = NULL;
|
||||
$_SESSION['uuid_verified'] = $_SESSION['temp_uuid'];
|
||||
$_SESSION['multiple'] = '';
|
||||
} else {
|
||||
$err_msg = $lang['stve0006']; $err_lvl = 3;
|
||||
$err_msg = $lang['errorts3'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
|
||||
}
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl);
|
||||
if(count($multi_uuid) > 1 || ($_SESSION[$rspathhex.'connected'] == 0 && $registercid != NULL && $registercid != 0)) {
|
||||
?>
|
||||
<div class="container-fluid">
|
||||
<div id="login-overlay" class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
@@ -86,20 +146,40 @@ require_once('nav.php');
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<form name="verify" method="POST">
|
||||
<p><?PHP echo $lang['stve0008']; ?></p>
|
||||
<?PHP
|
||||
if($_SESSION[$rspathhex.'connected'] == 0) {
|
||||
$ts3link = '<a href="ts3server://';
|
||||
if (($ts['host']=='localhost' || $ts['host']=='127.0.0.1') && strpos($_SERVER['HTTP_HOST'], 'www.') == 0) {
|
||||
$ts3link .= preg_replace('/www\./','',$_SERVER['HTTP_HOST']);
|
||||
} elseif ($ts['host']=='localhost' || $ts['host']=='127.0.0.1') {
|
||||
$ts3link .= $_SERVER['HTTP_HOST'];
|
||||
} else {
|
||||
$ts3link .= $ts['host'];
|
||||
}
|
||||
$ts3link .= ':'.$ts['voice'].'?cid='.$registercid.'">';
|
||||
echo '<p>1. ',sprintf($lang['verify0002'], $ts3link, '</a>'),'</p>';
|
||||
}
|
||||
?>
|
||||
<p><?PHP echo ($_SESSION[$rspathhex.'connected'] == 0) ? '2. '.$lang['stve0008'] : '1. '.$lang['stve0008']; ?></p>
|
||||
<div class="form-group">
|
||||
<div class="input-group col-sm-12">
|
||||
<select class="selectpicker show-tick form-control" name="uuid" id="uuid" onchange="this.form.submit();">
|
||||
<option disabled value=""<?PHP if(!isset($_SESSION['temp_uuid'])) echo ' selected','>',$lang['stve0009']; ?></option>
|
||||
<?PHP
|
||||
if(count($multiple_uuid) == 0) {
|
||||
echo '<option disabled value="" selected>'.$lang['verify0004'].'</option>';
|
||||
} else {
|
||||
echo '<option disabled value=""';
|
||||
if(!isset($_SESSION[$rspathhex.'temp_uuid'])) echo ' selected','>',$lang['stve0009'];
|
||||
echo '</option>';
|
||||
}
|
||||
foreach($multiple_uuid as $uuid => $nickname) {
|
||||
echo '<option data-subtext="',$uuid,'" value="',$uuid,'"'; if(isset($_SESSION['temp_uuid']) && $_SESSION['temp_uuid'] == $uuid) echo ' selected'; echo '>',$nickname,'</option>';
|
||||
echo '<option data-subtext="',$uuid,'" value="',$uuid,'"'; if(isset($_SESSION[$rspathhex.'temp_uuid']) && $_SESSION[$rspathhex.'temp_uuid'] == $uuid) echo ' selected'; echo '>',$nickname,'</option>';
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<p><?PHP echo $lang['stve0010']; ?></p>
|
||||
<p><?PHP echo ($_SESSION[$rspathhex.'connected'] == 0) ? '3. '.$lang['stve0010'] : '2. '.$lang['stve0010']; ?></p>
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><?PHP echo $lang['stve0011']; ?></span>
|
||||
@@ -117,6 +197,7 @@ require_once('nav.php');
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?PHP } ?>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@@ -20,18 +20,17 @@ if($language == "ar") {
|
||||
require_once('../languages/nations_ru.php');
|
||||
}
|
||||
|
||||
if(!isset($_SESSION['tsuid'])) {
|
||||
if(!isset($_SESSION[$rspathhex.'tsuid'])) {
|
||||
set_session_ts3($ts['voice'], $mysqlcon, $dbname, $language, $adminuuid);
|
||||
}
|
||||
|
||||
|
||||
$sql = $mysqlcon->query("SELECT * FROM $dbname.stats_versions ORDER BY count DESC");
|
||||
$sql_res = $sql->fetchAll();
|
||||
$sql_res = $mysqlcon->query("SELECT * FROM $dbname.stats_versions ORDER BY count DESC")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
|
||||
require_once('nav.php');
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, 3); ?>
|
||||
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
@@ -49,16 +48,22 @@ require_once('nav.php');
|
||||
<th>#</th>
|
||||
<th><?PHP echo $lang['stna0005']; ?></th>
|
||||
<th><?PHP echo $lang['stix0060'],' ',$lang['stna0004']; ?></th>
|
||||
<th><?PHP echo $lang['stna0007']; ?></th>
|
||||
</tr>
|
||||
<?PHP
|
||||
$count = 0;
|
||||
foreach ($sql_res as $line) {
|
||||
$sum_of_all = 0;
|
||||
foreach ($sql_res as $country => $value) {
|
||||
$sum_of_all = $sum_of_all + $value['count'];
|
||||
}
|
||||
foreach ($sql_res as $version => $value) {
|
||||
$count++;
|
||||
echo '
|
||||
<tr>
|
||||
<td>',$count,'</td>
|
||||
<td>',$line['version'],'</td>
|
||||
<td>',$line['count'],'</td>
|
||||
<td>',$version,'</td>
|
||||
<td>',$value['count'],'</td>
|
||||
<td>',number_format(round(($value['count'] * 100 / $sum_of_all), 1), 1),' %</td>
|
||||
</tr>';
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -25,44 +25,36 @@ function getclientip() {
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
echo "logout";
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if(!isset($_POST['number']) || $_POST['number'] == "yes") {
|
||||
$_SESSION['showexcepted'] = "yes";
|
||||
$_SESSION[$rspathhex.'showexcepted'] = "yes";
|
||||
$filter = " AND except='0'";
|
||||
} else {
|
||||
$_SESSION['showexcepted'] = "no";
|
||||
$_SESSION[$rspathhex.'showexcepted'] = "no";
|
||||
$filter = "";
|
||||
}
|
||||
$assign_groups_active = 0;
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$assign_groups_limit = $_POST['assign_groups_limit'];
|
||||
$assign_groups_groupids = $_POST['assign_groups_groupids'];
|
||||
if (isset($_POST['assign_groups_active'])) $assign_groups_active = 1; else $assign_groups_active = 0;
|
||||
if (isset($_POST['assign_groups_active'])) $assign_groups_active = 1;
|
||||
if ($mysqlcon->exec("UPDATE $dbname.addons_config SET value = CASE param WHEN 'assign_groups_active' THEN '$assign_groups_active' WHEN 'assign_groups_limit' THEN '$assign_groups_limit' WHEN 'assign_groups_groupids' THEN '$assign_groups_groupids' END WHERE param IN ('assign_groups_active','assign_groups_groupids','assign_groups_limit')") === false) {
|
||||
$err_msg = print_r($mysqlcon->errorInfo(), true);
|
||||
$err_lvl = 3;
|
||||
} else {
|
||||
$err_msg .= $lang['wisvsuc']." ".$lang['wisv'];
|
||||
$err_msg = $lang['wisvsuc'];
|
||||
$err_lvl = NULL;
|
||||
}
|
||||
$addons_config['assign_groups_groupids']['value'] = $_POST['assign_groups_groupids'];
|
||||
|
||||
@@ -22,32 +22,23 @@ function getclientip() {
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
echo "logout";
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if(!isset($_POST['number']) || $_POST['number'] == "yes") {
|
||||
$_SESSION['showexcepted'] = "yes";
|
||||
$_SESSION[$rspathhex.'showexcepted'] = "yes";
|
||||
$filter = " AND except='0'";
|
||||
} else {
|
||||
$_SESSION['showexcepted'] = "no";
|
||||
$_SESSION[$rspathhex.'showexcepted'] = "no";
|
||||
$filter = "";
|
||||
}
|
||||
|
||||
@@ -57,7 +48,7 @@ if(($dbuserdata = $mysqlcon->query("SELECT uuid,cldbid,name FROM $dbname.user WH
|
||||
}
|
||||
$user_arr = $dbuserdata->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$setontime = 0;
|
||||
if($_POST['setontime_day']) { $setontime = $setontime + $_POST['setontime_day'] * 86400; }
|
||||
if($_POST['setontime_hour']) { $setontime = $setontime + $_POST['setontime_hour'] * 3600; }
|
||||
@@ -106,8 +97,8 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
<div class="col-sm-8 pull-right">
|
||||
<select class="selectpicker show-tick form-control" id="number" name="number" onchange="this.form.submit();">
|
||||
<?PHP
|
||||
echo '<option value="yes"'; if(!isset($_SESSION['showexcepted']) || $_SESSION['showexcepted'] == "yes") echo " selected=selected"; echo '>hide</option>';
|
||||
echo '<option value="no"'; if(isset($_SESSION['showexcepted']) && $_SESSION['showexcepted'] == "no") echo " selected=selected"; echo '>show</option>';
|
||||
echo '<option value="yes"'; if(!isset($_SESSION[$rspathhex.'showexcepted']) || $_SESSION[$rspathhex.'showexcepted'] == "yes") echo " selected=selected"; echo '>hide</option>';
|
||||
echo '<option value="no"'; if(isset($_SESSION[$rspathhex.'showexcepted']) && $_SESSION[$rspathhex.'showexcepted'] == "no") echo " selected=selected"; echo '>show</option>';
|
||||
?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
@@ -21,21 +21,47 @@ function getclientip() {
|
||||
return false;
|
||||
}
|
||||
|
||||
function getlog($logpath,$number_lines,$filters,$filter2) {
|
||||
function getlog($logpath,$number_lines,$filters,$filter2,$inactivefilter = NULL) {
|
||||
$lines=array();
|
||||
if(file_exists($logpath."ranksystem.log")) {
|
||||
$fp = fopen($logpath."ranksystem.log", "r");
|
||||
while(!feof($fp)) {
|
||||
$line = fgets($fp, 4096);
|
||||
$buffer=array();
|
||||
while($line = fgets($fp, 4096)) {
|
||||
array_push($buffer, $line);
|
||||
}
|
||||
fclose($fp);
|
||||
$buffer = array_reverse($buffer);
|
||||
foreach($buffer as $line) {
|
||||
if(substr($line, 0, 2) != "20" && in_array($lastfilter, $filters)) {
|
||||
array_push($lines, $line);
|
||||
if (count($lines)>$number_lines) {
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
foreach($filters as $filter) {
|
||||
if(($filter != NULL && strstr($line, $filter) && $filter2 == NULL) || ($filter2 != NULL && strstr($line, $filter2) && $filter != NULL && strstr($line, $filter))) {
|
||||
array_push($lines, $line);
|
||||
if (count($lines)>$number_lines) array_shift($lines);
|
||||
if($filter == "CRITICAL" || $filter == "ERROR") {
|
||||
array_push($lines, '<span class="text-danger">'.$line.'</span>');
|
||||
} else {
|
||||
array_push($lines, $line);
|
||||
}
|
||||
$lastfilter = $filter;
|
||||
if (count($lines)>$number_lines) {
|
||||
break 2;
|
||||
}
|
||||
continue;
|
||||
} elseif($inactivefilter != NULL) {
|
||||
foreach($inactivefilter as $defilter) {
|
||||
if($defilter != NULL && strstr($line, $defilter)) {
|
||||
$lastfilter = $defilter;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
fclose($fp);
|
||||
} else {
|
||||
$lines[] = "No log entry found...\n";
|
||||
$lines[] = "The logfile will be created with next startup.\n";
|
||||
@@ -60,118 +86,144 @@ if (isset($_POST['number'])) {
|
||||
} else {
|
||||
$number_lines = 20;
|
||||
}
|
||||
$_SESSION['number_lines'] = $number_lines;
|
||||
} elseif (isset($_SESSION['number_lines'])) {
|
||||
$number_lines = $_SESSION['number_lines'];
|
||||
$_SESSION[$rspathhex.'number_lines'] = $number_lines;
|
||||
} elseif (isset($_SESSION[$rspathhex.'number_lines'])) {
|
||||
$number_lines = $_SESSION[$rspathhex.'number_lines'];
|
||||
}
|
||||
|
||||
if(isset($_SESSION['logfilter2'])) {
|
||||
$filter2 = $_SESSION['logfilter2'];
|
||||
if(isset($_SESSION[$rspathhex.'logfilter2'])) {
|
||||
$filter2 = $_SESSION[$rspathhex.'logfilter2'];
|
||||
} else {
|
||||
$filter2 = '';
|
||||
}
|
||||
$filters = '';
|
||||
$inactivefilter = '';
|
||||
if(isset($_POST['logfilter']) && in_array('critical', $_POST['logfilter'])) {
|
||||
$filters .= "CRITICAL,";
|
||||
} elseif(isset($_POST['logfilter'])) {
|
||||
$inactivefilter .= "CRITICAL,";
|
||||
}
|
||||
if(isset($_POST['logfilter']) && in_array('error', $_POST['logfilter'])) {
|
||||
$filters .= "ERROR,";
|
||||
} elseif(isset($_POST['logfilter'])) {
|
||||
$inactivefilter .= "ERROR,";
|
||||
}
|
||||
if(isset($_POST['logfilter']) && in_array('warning', $_POST['logfilter'])) {
|
||||
$filters .= "WARNING,";
|
||||
} elseif(isset($_POST['logfilter'])) {
|
||||
$inactivefilter .= "WARNING,";
|
||||
}
|
||||
if(isset($_POST['logfilter']) && in_array('notice', $_POST['logfilter'])) {
|
||||
$filters .= "NOTICE,";
|
||||
} elseif(isset($_POST['logfilter'])) {
|
||||
$inactivefilter .= "NOTICE,";
|
||||
}
|
||||
if(isset($_POST['logfilter']) && in_array('info', $_POST['logfilter'])) {
|
||||
$filters .= "INFO,";
|
||||
} elseif(isset($_POST['logfilter'])) {
|
||||
$inactivefilter .= "INFO,";
|
||||
}
|
||||
if(isset($_POST['logfilter']) && in_array('debug', $_POST['logfilter'])) {
|
||||
$filters .= "DEBUG,";
|
||||
} elseif(isset($_POST['logfilter'])) {
|
||||
$inactivefilter .= "DEBUG,";
|
||||
}
|
||||
if(isset($_POST['logfilter'][0])) {
|
||||
$filter2 = $_POST['logfilter'][0];
|
||||
$_SESSION['logfilter2'] = $filter2;
|
||||
$_SESSION[$rspathhex.'logfilter2'] = $filter2;
|
||||
}
|
||||
|
||||
if($filters != '') {
|
||||
$_SESSION['logfilter'] = $filters;
|
||||
$_SESSION[$rspathhex.'logfilter'] = $filters;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['logfilter'])) {
|
||||
$_SESSION['logfilter'] = "CRITICAL,ERROR,WARNING,NOTICE,INFO,DEBUG";
|
||||
if($inactivefilter != '') {
|
||||
$_SESSION[$rspathhex.'inactivefilter'] = $inactivefilter;
|
||||
}
|
||||
if(isset($_SESSION[$rspathhex.'inactivefilter']) && $_SESSION[$rspathhex.'inactivefilter'] != NULL) {
|
||||
$inactivefilter = explode(',', $_SESSION[$rspathhex.'inactivefilter']);
|
||||
}
|
||||
|
||||
$filters = explode(',', $_SESSION['logfilter']);
|
||||
if (!isset($_SESSION[$rspathhex.'logfilter'])) {
|
||||
$_SESSION[$rspathhex.'logfilter'] = "CRITICAL,ERROR,WARNING,NOTICE,INFO,DEBUG";
|
||||
}
|
||||
|
||||
$filters = explode(',', $_SESSION[$rspathhex.'logfilter']);
|
||||
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
echo "logout";
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2);
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2,$inactivefilter);
|
||||
|
||||
if (isset($_POST['start']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['start']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
if(substr(sprintf('%o', fileperms($logpath)), -3, 1)!='7') {
|
||||
$err_msg = "!!!! Logs folder is not writable !!!!<br>Cancel start request!"; $err_lvl = 3;
|
||||
} else {
|
||||
if (substr(php_uname(), 0, 7) == "Windows") {
|
||||
$WshShell = new COM("WScript.Shell");
|
||||
$oExec = $WshShell->Run("cmd /C ".$phpcommand." ".substr(__DIR__,0,-12)."\worker.php start", 0, false);
|
||||
if (file_exists(substr(__DIR__,0,-12)."\logs\autostart_deactivated")) {
|
||||
unlink(substr(__DIR__,0,-12)."\logs\autostart_deactivated");
|
||||
}
|
||||
} else {
|
||||
exec($phpcommand." ".substr(__DIR__,0,-12)."worker.php start");
|
||||
if (file_exists(substr(__DIR__,0,-12)."logs/autostart_deactivated")) {
|
||||
unlink(substr(__DIR__,0,-12)."logs/autostart_deactivated");
|
||||
}
|
||||
}
|
||||
$err_msg = $lang['wibot2'];
|
||||
$err_lvl = 1;
|
||||
usleep(80000);
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2);
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2,$inactivefilter);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($_POST['stop']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['stop']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
if (substr(php_uname(), 0, 7) == "Windows") {
|
||||
$WshShell = new COM("WScript.Shell");
|
||||
$oExec = $WshShell->Run("cmd /C ".$phpcommand." ".substr(__DIR__,0,-12)."\worker.php stop", 0, false);
|
||||
file_put_contents(substr(__DIR__,0,-12)."\logs\autostart_deactivated");
|
||||
} else {
|
||||
exec($phpcommand." ".substr(__DIR__,0,-12)."worker.php stop");
|
||||
file_put_contents(substr(__DIR__,0,-12)."logs/autostart_deactivated");
|
||||
}
|
||||
$err_msg = $lang['wibot1'];
|
||||
$err_lvl = 1;
|
||||
usleep(80000);
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2);
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2,$inactivefilter);
|
||||
}
|
||||
|
||||
if (isset($_POST['restart']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['restart']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
if(substr(sprintf('%o', fileperms($logpath)), -3, 1)!='7') {
|
||||
$err_msg = "!!!! Logs folder is not writable !!!!<br>Cancel restart request!"; $err_lvl = 3;
|
||||
} else {
|
||||
if (substr(php_uname(), 0, 7) == "Windows") {
|
||||
$WshShell = new COM("WScript.Shell");
|
||||
$oExec = $WshShell->Run("cmd /C ".$phpcommand." ".substr(__DIR__,0,-12)."\worker.php restart", 0, false);
|
||||
if (file_exists(substr(__DIR__,0,-12)."\logs\autostart_deactivated")) {
|
||||
unlink(substr(__DIR__,0,-12)."\logs\autostart_deactivated");
|
||||
}
|
||||
} else {
|
||||
exec($phpcommand." ".substr(__DIR__,0,-12)."worker.php restart");
|
||||
if (file_exists(substr(__DIR__,0,-12)."logs/autostart_deactivated")) {
|
||||
unlink(substr(__DIR__,0,-12)."logs/autostart_deactivated");
|
||||
}
|
||||
}
|
||||
$err_msg = $lang['wibot3'];
|
||||
$err_lvl = 1;
|
||||
usleep(80000);
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2);
|
||||
$logoutput = getlog($logpath,$number_lines,$filters,$filter2,$inactivefilter);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -302,7 +354,7 @@ if($ts['host'] == NULL || $ts['query'] == NULL || $ts['voice'] == NULL || $ts['u
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<pre><?PHP krsort($logoutput); foreach ($logoutput as $line) { echo $line; } ?></pre>
|
||||
<pre><?PHP foreach ($logoutput as $line) { echo $line; } ?></pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -58,28 +58,19 @@ function getclientip() {
|
||||
}
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if (isset($_POST['changepw']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['changepw']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$newpass = password_hash($_POST['newpwd1'], PASSWORD_DEFAULT);
|
||||
if (!password_verify($_POST['oldpwd'], $webpass)) {
|
||||
$err_msg = $lang['wichpw1']; $err_lvl = 3;
|
||||
|
||||
@@ -21,28 +21,69 @@ function getclientip() {
|
||||
}
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
|
||||
if(($groupslist = $mysqlcon->query("SELECT * FROM $dbname.groups")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC)) === false) {
|
||||
enter_logfile($logpath,$timezone,1,"Select on DB failed for group check: ".print_r($mysqlcon->errorInfo(), true));
|
||||
}
|
||||
|
||||
if(empty($_POST['boost'])) {
|
||||
$boostarr = null;
|
||||
} else {
|
||||
foreach (explode(',', $_POST['boost']) as $entry) {
|
||||
list($key, $value1, $value2) = explode('=>', $entry);
|
||||
$boostarr[$key] = array("group"=>$key,"factor"=>$value1,"time"=>$value2);
|
||||
}
|
||||
}
|
||||
if(empty($_POST['grouptime'])) {
|
||||
$grouparr = null;
|
||||
} else {
|
||||
foreach (explode(',', $_POST['grouptime']) as $entry) {
|
||||
list($time, $groupid) = explode('=>', $entry);
|
||||
$grouparr[$groupid] = $time;
|
||||
}
|
||||
}
|
||||
|
||||
$err_msg = '';
|
||||
$errcnf = 0;
|
||||
if(isset($groupslist) && $groupslist != NULL) {
|
||||
foreach($grouparr as $groupid => $time) {
|
||||
if(!isset($groupslist[$groupid]) && $groupid != NULL) {
|
||||
$err_msg .= sprintf($lang['upgrp0001'], $groupid, $lang['wigrptime']).'<br>';
|
||||
$err_lvl = 3;
|
||||
$errcnf++;
|
||||
}
|
||||
}
|
||||
foreach($boostarr as $groupid => $value) {
|
||||
if(!isset($groupslist[$groupid]) && $groupid != NULL) {
|
||||
$err_msg .= sprintf($lang['upgrp0001'], $groupid, $lang['wiboost']).'<br>';
|
||||
$err_lvl = 3;
|
||||
$errcnf++;
|
||||
}
|
||||
}
|
||||
foreach(array_flip(explode(',', $_POST['exceptgroup'])) as $groupid => $value) {
|
||||
if(!isset($groupslist[$groupid]) && $groupid != NULL) {
|
||||
$err_msg .= sprintf($lang['upgrp0001'], $groupid, $lang['wiexgrp']).'<br>';
|
||||
$err_lvl = 3;
|
||||
$errcnf++;
|
||||
}
|
||||
}
|
||||
}
|
||||
unset($groupslist);
|
||||
|
||||
|
||||
$substridle = $_POST['substridle'];
|
||||
$exceptuuid = $_POST['exceptuuid'];
|
||||
$exceptgroup = $_POST['exceptgroup'];
|
||||
@@ -54,19 +95,28 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
if (isset($_POST['cleanclients'])) $cleanclients = 1; else $cleanclients = 0;
|
||||
$cleanperiod = $_POST['cleanperiod'];
|
||||
$boost = $_POST['boost'];
|
||||
if ($mysqlcon->exec("UPDATE $dbname.config set substridle='$substridle',exceptuuid='$exceptuuid',exceptgroup='$exceptgroup',exceptcid='$exceptcid',grouptime='$grouptime',ignoreidle='$ignoreidle',resetbydbchange='$resetbydbchange',cleanclients='$cleanclients',cleanperiod='$cleanperiod',boost='$boost',resetexcept='$resetexcept'") === false) {
|
||||
$err_msg = print_r($mysqlcon->errorInfo(), true);
|
||||
$err_lvl = 3;
|
||||
} else {
|
||||
$err_msg = $lang['wisvsuc']." ".sprintf($lang['wisvres'], ' <form class="btn-group" name="restart" action="bot.php" method="POST"><button
|
||||
type="submit" class="btn btn-primary" name="restart"><i class="fa fa-fw fa-refresh"></i> '.$lang['wibot7'].'</button></form>');
|
||||
$err_lvl = NULL;
|
||||
}
|
||||
$config[0]['grouptime'] = $_POST['grouptime'];
|
||||
$config[0]['exceptuuid'] = $_POST['exceptuuid'];
|
||||
$config[0]['exceptgroup'] = $_POST['exceptgroup'];
|
||||
$config[0]['exceptcid'] = $_POST['exceptcid'];
|
||||
$config[0]['boost'] = $_POST['boost'];
|
||||
if($_POST['registercid'] == NULL) {
|
||||
$registercid = 0;
|
||||
} else {
|
||||
$registercid = $_POST['registercid'];
|
||||
}
|
||||
if($errcnf == 0) {
|
||||
if ($mysqlcon->exec("UPDATE $dbname.config set substridle='$substridle',exceptuuid='$exceptuuid',exceptgroup='$exceptgroup',exceptcid='$exceptcid',grouptime='$grouptime',ignoreidle='$ignoreidle',resetbydbchange='$resetbydbchange',cleanclients='$cleanclients',cleanperiod='$cleanperiod',boost='$boost',resetexcept='$resetexcept',registercid='$registercid'") === false) {
|
||||
$err_msg = print_r($mysqlcon->errorInfo(), true);
|
||||
$err_lvl = 3;
|
||||
} else {
|
||||
$err_msg = $lang['wisvsuc']." ".sprintf($lang['wisvres'], ' <form class="btn-group" name="restart" action="bot.php" method="POST"><button
|
||||
type="submit" class="btn btn-primary" name="restart"><i class="fa fa-fw fa-refresh"></i> '.$lang['wibot7'].'</button></form>');
|
||||
$err_lvl = NULL;
|
||||
}
|
||||
} else {
|
||||
$err_msg .= "<br>".$lang['errgrpid'];
|
||||
}
|
||||
$config['grouptime'] = $_POST['grouptime'];
|
||||
$config['exceptuuid'] = $_POST['exceptuuid'];
|
||||
$config['exceptgroup'] = $_POST['exceptgroup'];
|
||||
$config['exceptcid'] = $_POST['exceptcid'];
|
||||
$config['boost'] = $_POST['boost'];
|
||||
}
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
@@ -108,21 +158,21 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
<div class="form-group">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiexuiddesc"><?php echo $lang['wiexuid']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" data-pattern="^([A-Za-z0-9\\\/\+]{27}=,)*([A-Za-z0-9\\\/\+]{27}=)$" data-error="Check all unique IDs are correct and your list do not ends with a comma!" rows="1" name="exceptuuid" maxlength="999"><?php echo $config[0]['exceptuuid']; ?></textarea>
|
||||
<textarea class="form-control" data-pattern="^([A-Za-z0-9\\\/\+]{27}=,)*([A-Za-z0-9\\\/\+]{27}=)$" data-error="Check all unique IDs are correct and your list do not ends with a comma!" rows="1" name="exceptuuid" maxlength="999"><?php echo $config['exceptuuid']; ?></textarea>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiexgrpdesc"><?php echo $lang['wiexgrp']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" data-pattern="^([0-9]{1,9},)*[0-9]{1,9}$" data-error="Only use digits separated with a comma! Also must the first and last value be digit!" rows="1" name="exceptgroup" maxlength="999"><?php echo $config[0]['exceptgroup']; ?></textarea>
|
||||
<textarea class="form-control" data-pattern="^([0-9]{1,9},)*[0-9]{1,9}$" data-error="Only use digits separated with a comma! Also must the first and last value be digit!" rows="1" name="exceptgroup" maxlength="999"><?php echo $config['exceptgroup']; ?></textarea>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiexciddesc"><?php echo $lang['wiexcid']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" data-pattern="^([0-9]{1,9},)*[0-9]{1,9}$" data-error="Only use digits separated with a comma! Also must the first and last value be digit!" rows="1" name="exceptcid" maxlength="999"><?php echo $config[0]['exceptcid']; ?></textarea>
|
||||
<textarea class="form-control" data-pattern="^([0-9]{1,9},)*[0-9]{1,9}$" data-error="Only use digits separated with a comma! Also must the first and last value be digit!" rows="1" name="exceptcid" maxlength="999"><?php echo $config['exceptcid']; ?></textarea>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -132,7 +182,7 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
<div class="form-group required-field-block">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wigrptimedesc"><?php echo $lang['wigrptime']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" data-pattern="^([0-9]{1,9}=>[0-9]{1,9},)*[0-9]{1,9}=>[0-9]{1,9}$" data-error="Wrong definition, please look at description for more details. No comma at ending!" rows="5" name="grouptime" maxlength="5000" required><?php echo $config[0]['grouptime']; ?></textarea>
|
||||
<textarea class="form-control" data-pattern="^([0-9]{1,9}=>[0-9]{1,9},)*[0-9]{1,9}=>[0-9]{1,9}$" data-error="Wrong definition, please look at description for more details. No comma at ending!" rows="5" name="grouptime" maxlength="5000" required><?php echo $config['grouptime']; ?></textarea>
|
||||
<div class="required-icon"><div class="text">*</div></div>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
@@ -193,10 +243,28 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row"> </div>
|
||||
<div class="row"> </div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiverifydesc"><?php echo $lang['wiverify']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8">
|
||||
<input type="text" class="form-control" name="registercid" value="<?php echo $registercid; ?>">
|
||||
<script>
|
||||
$("input[name='registercid']").TouchSpin({
|
||||
min: 0,
|
||||
max: 16777215,
|
||||
verticalbuttons: true,
|
||||
prefix: 'ID:'
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row"> </div>
|
||||
<div class="row"> </div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiboostdesc"><?php echo $lang['wiboost']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" data-pattern="^([1-9][0-9]{0,9}=>[0-9]{0,9}=>[1-9][0-9]{0,9},)*[1-9][0-9]{0,9}=>[0-9]{0,9}=>[1-9][0-9]{0,9}$" data-error="Wrong definition, please look at description for more details. No comma at ending!" rows="5" name="boost" maxlength="999"><?php echo $config[0]['boost']; ?></textarea>
|
||||
<textarea class="form-control" data-pattern="^([1-9][0-9]{0,9}=>[0-9]{0,9}=>[1-9][0-9]{0,9},)*[1-9][0-9]{0,9}=>[0-9]{0,9}=>[1-9][0-9]{0,9}$" data-error="Wrong definition, please look at description for more details. No comma at ending!" rows="5" name="boost" maxlength="999"><?php echo $config['boost']; ?></textarea>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -374,6 +442,22 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal fade" id="wiverifydesc" tabindex="-1">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<h4 class="modal-title"><?php echo $lang['wiverify']; ?></h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<?php echo $lang['wiverifydesc']; ?>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal"><?PHP echo $lang['stnv0002']; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal fade" id="wiboostdesc" tabindex="-1">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
|
||||
@@ -21,28 +21,19 @@ function getclientip() {
|
||||
}
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$newconfig='<?php
|
||||
$db[\'type\']="'.$_POST['dbtype'].'";
|
||||
$db[\'host\']="'.$_POST['dbhost'].'";
|
||||
|
||||
@@ -67,22 +67,18 @@ if(($last_access[0]['last_access'] + 1) >= time()) {
|
||||
$err_msg = sprintf($lang['errlogin2'],$again);
|
||||
$err_lvl = 3;
|
||||
} elseif ($last_access[0]['count_access'] >= 10) {
|
||||
enter_logfile($logpath,$timezone,3,"Much incorrect logins detected on the webinterface. Blocked login for 300 seconds! Last access from IP ".getclientip().".");
|
||||
enter_logfile($logpath,$timezone,3,sprintf($lang['brute'], getclientip()));
|
||||
$err_msg = $lang['errlogin3'];
|
||||
$err_lvl = 3;
|
||||
$bantime = time() + 299;
|
||||
if($mysqlcon->exec("UPDATE $dbname.config SET last_access='$bantime', count_access='0'") === false) { }
|
||||
} elseif (isset($_POST['username']) && $_POST['username'] == $webuser && password_verify($_POST['password'], $webpass)) {
|
||||
$_SESSION['username'] = $webuser;
|
||||
$_SESSION['password'] = $webpass;
|
||||
$_SESSION['clientip'] = getclientip();
|
||||
$_SESSION['newversion'] = $newversion;
|
||||
$_SESSION[$rspathhex.'username'] = $webuser;
|
||||
$_SESSION[$rspathhex.'password'] = $webpass;
|
||||
$_SESSION[$rspathhex.'clientip'] = getclientip();
|
||||
$_SESSION[$rspathhex.'newversion'] = $newversion;
|
||||
if($mysqlcon->exec("UPDATE $dbname.config SET count_access='0'") === false) { }
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\')."/ts.php");
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\')."/ts.php");
|
||||
}
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\')."/bot.php");
|
||||
exit;
|
||||
} elseif(isset($_POST['username'])) {
|
||||
$nowtime = time();
|
||||
@@ -91,12 +87,8 @@ if(($last_access[0]['last_access'] + 1) >= time()) {
|
||||
$err_lvl = 3;
|
||||
}
|
||||
|
||||
if(isset($_SESSION['username']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\')."/ts.php");
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\')."/ts.php");
|
||||
}
|
||||
if(isset($_SESSION[$rspathhex.'username']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\')."/bot.php");
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
@@ -21,28 +21,19 @@ function getclientip() {
|
||||
}
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$rankupmsg = addslashes($_POST['rankupmsg']);
|
||||
$servernews = addslashes($_POST['servernews']);
|
||||
$nextupinfomsg1 = addslashes($_POST['nextupinfomsg1']);
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
<?PHP
|
||||
$job_check = $mysqlcon->query("SELECT * FROM $dbname.job_check")->fetchAll(PDO::FETCH_UNIQUE|PDO::FETCH_ASSOC);
|
||||
if((time() - $job_check['last_update']['timestamp']) < 259200 && !isset($_SESSION[$rspathhex.'upinfomsg'])) {
|
||||
if(!isset($err_msg)) {
|
||||
$err_msg = '<i class="fa fa-fw fa-info-circle"></i> '.sprintf($lang['upinf2'], date("Y-m-d H:i",$job_check['last_update']['timestamp']), '<a href="//ts-n.net/ranksystem.php?changelog" target="_blank"><i class="fa fa-fw fa-book"></i> ', '</a>'); $err_lvl = 1;
|
||||
$_SESSION[$rspathhex.'upinfomsg'] = 1;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?PHP echo $language; ?>">
|
||||
<head>
|
||||
@@ -35,8 +44,8 @@
|
||||
<nav class="navbar navbar-inverse navbar-fixed-top">
|
||||
<div class="navbar-header">
|
||||
<a class="navbar-brand" href="index.php">TSN Ranksystem - Webinterface <?PHP echo $currvers;?></a>
|
||||
<?PHP if(isset($_SESSION['newversion']) && version_compare(substr($_SESSION['newversion'], 0, 5), substr($currvers, 0, 5), '>') && $_SESSION['newversion'] != '') {
|
||||
echo '<a class="navbar-brand" href="http://ts-n.net/ranksystem.php" target="_blank">'.$lang['winav9'].' ['.$_SESSION['newversion'].']</a>';
|
||||
<?PHP if(isset($_SESSION[$rspathhex.'newversion']) && version_compare(substr($_SESSION[$rspathhex.'newversion'], 0, 5), substr($currvers, 0, 5), '>') && $_SESSION[$rspathhex.'newversion'] != '') {
|
||||
echo '<a class="navbar-brand" href="//ts-n.net/ranksystem.php?changelog" target="_blank">'.$lang['winav9'].' ['.$_SESSION[$rspathhex.'newversion'].']</a>';
|
||||
} ?>
|
||||
</div>
|
||||
<?PHP if(basename($_SERVER['SCRIPT_NAME']) == "stats.php") { ?>
|
||||
@@ -50,8 +59,12 @@
|
||||
<?PHP } ?>
|
||||
<ul class="nav navbar-right top-nav">
|
||||
<?PHP
|
||||
echo '<li><a href="http',(!empty($_SERVER['HTTPS'])?'s':''),'://',$_SERVER['SERVER_NAME'],substr(dirname($_SERVER['SCRIPT_NAME']),0,-12),'stats/"><i class="fa fa-fw fa-bar-chart"></i> ',$lang['winav6'],'</a></li>';
|
||||
if(isset($_SESSION['username']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass) { ?>
|
||||
if($_SERVER['SERVER_PORT'] == 443 || $_SERVER['SERVER_PORT'] == 80) {
|
||||
echo '<li><a href="//',$_SERVER['SERVER_NAME'],substr(dirname($_SERVER['SCRIPT_NAME']),0,-12),'stats/"><i class="fa fa-fw fa-bar-chart"></i> ',$lang['winav6'],'</a></li>';
|
||||
} else {
|
||||
echo '<li><a href="//',$_SERVER['SERVER_NAME'],':',$_SERVER['SERVER_PORT'],substr(dirname($_SERVER['SCRIPT_NAME']),0,-12),'stats/"><i class="fa fa-fw fa-bar-chart"></i> ',$lang['winav6'],'</a></li>';
|
||||
}
|
||||
if(isset($_SESSION[$rspathhex.'username']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass) { ?>
|
||||
<li>
|
||||
<a href="changepassword.php"><i class="fa fa-lock"></i> <?PHP echo $lang['pass2']; ?></a>
|
||||
</li>
|
||||
@@ -142,7 +155,7 @@
|
||||
</div>
|
||||
</nav>
|
||||
<?PHP
|
||||
if($adminuuid==NULL && $_SESSION['username'] == $webuser && !isset($err_msg)) {
|
||||
if($adminuuid==NULL && $_SESSION[$rspathhex.'username'] == $webuser && !isset($err_msg)) {
|
||||
$err_msg = $lang['winav11']; $err_lvl = 3;
|
||||
}
|
||||
|
||||
|
||||
@@ -21,28 +21,19 @@ function getclientip() {
|
||||
}
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$timezone = $_POST['timezone'];
|
||||
$timeformat = $_POST['dateformat'];
|
||||
$logpath = addslashes($_POST['logpath']);
|
||||
@@ -60,7 +51,8 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
$err_lvl = NULL;
|
||||
}
|
||||
$logpath = $_POST['logpath'];
|
||||
$config[0]['uniqueid'] = $_POST['uniqueid'];
|
||||
$config['uniqueid'] = $_POST['uniqueid'];
|
||||
$config['adminuuid'] = $_POST['adminuuid'];
|
||||
}
|
||||
?>
|
||||
<div id="page-wrapper">
|
||||
@@ -130,8 +122,8 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
<div class="form-group">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiadmuuiddesc"><?php echo $lang['wiadmuuid']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8 required-field-block">
|
||||
<input type="text" class="form-control" data-pattern="^([A-Za-z0-9\\\/\+]{27}=)$" data-error="Check the entered unique ID!" name="adminuuid" value="<?php echo $adminuuid; ?>" required>
|
||||
<div class="help-block with-errors"></div>
|
||||
<textarea class="form-control" data-pattern="^([A-Za-z0-9\\\/\+]{27}=,)*([A-Za-z0-9\\\/\+]{27}=)$" data-error="Check all unique IDs are correct and your list do not ends with a comma!" rows="1" name="adminuuid" maxlength="500"><?php echo $config['adminuuid']; ?></textarea>
|
||||
<div class="help-block with-errors"></div>
|
||||
<div class="required-icon"><div class="text">*</div></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -164,7 +156,7 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
<div class="form-group">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiupuiddesc"><?php echo $lang['wiupuid']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" data-pattern="^([A-Za-z0-9\\\/\+]{27}=,)*([A-Za-z0-9\\\/\+]{27}=)$" data-error="Check all unique IDs are correct and your list do not ends with a comma!" rows="1" name="uniqueid" maxlength="500"><?php echo $config[0]['uniqueid']; ?></textarea>
|
||||
<textarea class="form-control" data-pattern="^([A-Za-z0-9\\\/\+]{27}=,)*([A-Za-z0-9\\\/\+]{27}=)$" data-error="Check all unique IDs are correct and your list do not ends with a comma!" rows="1" name="uniqueid" maxlength="500"><?php echo $config['uniqueid']; ?></textarea>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -66,7 +66,7 @@ if (($last_access[0]['last_access'] + 1) >= time()) {
|
||||
$again = $last_access[0]['last_access'] + 2 - time();
|
||||
$err_msg = sprintf($lang['errlogin2'],$again);
|
||||
$err_lvl = 3;
|
||||
} elseif (isset($_POST['resetpw']) && $adminuuid==NULL) {
|
||||
} elseif (isset($_POST['resetpw']) && ($adminuuid==NULL || count($adminuuid) == 0)) {
|
||||
$err_msg = $lang['wirtpw1']; $err_lvl=3;
|
||||
} elseif (isset($_POST['resetpw'])) {
|
||||
$nowtime = time();
|
||||
@@ -83,9 +83,10 @@ if (($last_access[0]['last_access'] + 1) >= time()) {
|
||||
|
||||
usleep($slowmode);
|
||||
$allclients = $ts3->clientList();
|
||||
$adminuuid_flipped = array_flip($adminuuid);
|
||||
|
||||
foreach ($allclients as $client) {
|
||||
if($client['client_unique_identifier'] == $adminuuid) {
|
||||
if(in_array($client['client_unique_identifier'] , $adminuuid)) {
|
||||
$uuid = $client['client_unique_identifier'];
|
||||
$checkuuid = 1;
|
||||
if($client['connection_client_ip'] == getclientip()) {
|
||||
|
||||
@@ -21,28 +21,19 @@ function getclientip() {
|
||||
}
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
|
||||
if (isset($_POST['showexcld'])) $showexcld = 1; else $showexcld = 0;
|
||||
if (isset($_POST['showcolrg'])) $showcolrg = 1; else $showcolrg = 0;
|
||||
|
||||
@@ -21,28 +21,19 @@ function getclientip() {
|
||||
}
|
||||
|
||||
if (isset($_POST['logout'])) {
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
rem_session_ts3($rspathhex);
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESSION['password'] != $webpass || $_SESSION['clientip'] != getclientip()) {
|
||||
if($_SERVER['HTTPS'] == "on") {
|
||||
header("Location: https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
} else {
|
||||
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
}
|
||||
if (!isset($_SESSION[$rspathhex.'username']) || $_SESSION[$rspathhex.'username'] != $webuser || $_SESSION[$rspathhex.'password'] != $webpass || $_SESSION[$rspathhex.'clientip'] != getclientip()) {
|
||||
header("Location: //".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\'));
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('nav.php');
|
||||
|
||||
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
|
||||
if (isset($_POST['update']) && $_SESSION[$rspathhex.'username'] == $webuser && $_SESSION[$rspathhex.'password'] == $webpass && $_SESSION[$rspathhex.'clientip'] == getclientip()) {
|
||||
$tshost = $_POST['tshost'];
|
||||
$tsquery = $_POST['tsquery'];
|
||||
$tsvoice = $_POST['tsvoice'];
|
||||
@@ -78,16 +69,17 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
</h1>
|
||||
</div>
|
||||
</div>
|
||||
<form class="form-horizontal" name="update" method="POST">
|
||||
<form class="form-horizontal" data-toggle="validator" name="update" method="POST">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-body">
|
||||
<div class="form-group">
|
||||
<div class="form-group required-field-block">
|
||||
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wits3hostdesc"><?php echo $lang['wits3host']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
|
||||
<div class="col-sm-8 required-field-block">
|
||||
<input type="text" class="form-control" name="tshost" value="<?php echo $ts['host']; ?>" maxlength="64" required>
|
||||
<div class="col-sm-8">
|
||||
<input type="text" class="form-control" data-pattern="^[^.]+[^:]*$" data-error="Do not enter the port inside this field. You should enter the port (e.g. 9987) inside the TS3-Voice-Port!" name="tshost" value="<?php echo $ts['host']; ?>" maxlength="64" required>
|
||||
<div class="required-icon"><div class="text">*</div></div>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
@@ -381,5 +373,19 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
$('form[data-toggle="validator"]').validator({
|
||||
custom: {
|
||||
pattern: function ($el) {
|
||||
var pattern = new RegExp($el.data('pattern'));
|
||||
return pattern.test($el.val());
|
||||
}
|
||||
},
|
||||
delay: 100,
|
||||
errors: {
|
||||
pattern: "There should be an error in your value, please check all could be right!"
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
28
worker.php
28
worker.php
@@ -9,8 +9,10 @@ $GLOBALS['logfile'] = $logpath.'ranksystem.log';
|
||||
|
||||
if (substr(php_uname(), 0, 7) == "Windows") {
|
||||
$GLOBALS['pidfile'] = __DIR__.'\logs\pid';
|
||||
$GLOBALS['autostart'] = __DIR__.'\logs\autostart_deactivated';
|
||||
} else {
|
||||
$GLOBALS['pidfile'] = __DIR__.'/logs/pid';
|
||||
$GLOBALS['autostart'] = __DIR__.'/logs/autostart_deactivated';
|
||||
}
|
||||
|
||||
function checkProcess($pid = null) {
|
||||
@@ -96,6 +98,9 @@ function start() {
|
||||
if(isset($pid[1]) && is_numeric($pid[1])) {
|
||||
exec("echo ".$pid[1]." > ".$GLOBALS['pidfile']);
|
||||
echo " [OK]\n";
|
||||
if (file_exists($GLOBALS['autostart'])) {
|
||||
unlink($GLOBALS['autostart']);
|
||||
}
|
||||
} else {
|
||||
echo " [Failed]\n";
|
||||
}
|
||||
@@ -111,6 +116,9 @@ function start() {
|
||||
echo " [Failed]\n";
|
||||
} else {
|
||||
echo " [OK]\n";
|
||||
if (file_exists($GLOBALS['autostart'])) {
|
||||
unlink($GLOBALS['autostart']);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
echo "The Ranksystem is already running.\n";
|
||||
@@ -140,6 +148,7 @@ function stop() {
|
||||
echo " [Failed]\n";
|
||||
} else {
|
||||
echo " [OK]\n";
|
||||
touch($GLOBALS['autostart']);
|
||||
}
|
||||
} else {
|
||||
echo "The Ranksystem seems not running.\n";
|
||||
@@ -165,6 +174,7 @@ function stop() {
|
||||
echo " [Failed]\n";
|
||||
} else {
|
||||
echo " [OK]\n";
|
||||
touch($GLOBALS['autostart']);
|
||||
}
|
||||
} else {
|
||||
echo "The Ranksystem seems not running.\n";
|
||||
@@ -174,23 +184,17 @@ function stop() {
|
||||
}
|
||||
|
||||
function check() {
|
||||
if (substr(php_uname(), 0, 7) == "Windows") {
|
||||
if (checkProcess() == FALSE) {
|
||||
if (checkProcess() == FALSE) {
|
||||
if (!file_exists($GLOBALS['autostart'])) {
|
||||
if (file_exists($GLOBALS['pidfile'])) {
|
||||
exec("del /F ".$GLOBALS['pidfile']);
|
||||
unlink($GLOBALS['pidfile']);
|
||||
}
|
||||
start();
|
||||
} else {
|
||||
echo "Starting the Ranksystem Bot. [Failed]\nAutostart is deactivated. Use start command instead.\n";
|
||||
}
|
||||
$GLOBALS['exec'] = TRUE;
|
||||
} else {
|
||||
if (checkProcess() == FALSE) {
|
||||
if (file_exists($GLOBALS['pidfile'])) {
|
||||
exec("rm -f ".$GLOBALS['pidfile']);
|
||||
}
|
||||
start();
|
||||
}
|
||||
$GLOBALS['exec'] = TRUE;
|
||||
}
|
||||
$GLOBALS['exec'] = TRUE;
|
||||
}
|
||||
|
||||
function restart() {
|
||||
|
||||
Reference in New Issue
Block a user