release 1.1.2

This commit is contained in:
root
2016-10-30 21:38:27 +01:00
parent ab76128c42
commit 5620db46eb
39 changed files with 1687 additions and 415 deletions

View File

@@ -43,32 +43,207 @@ if (!isset($_SESSION['username']) || $_SESSION['username'] != $webuser || $_SESS
require_once('nav.php');
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
if(!isset($_POST['number']) || $_POST['number'] == "yes") {
$_SESSION['showexcepted'] = "yes";
$filter = " AND except='0'";
} else {
$_SESSION['showexcepted'] = "no";
$filter = "";
}
if(($dbuserdata = $mysqlcon->query("SELECT uuid,cldbid,name FROM $dbname.user WHERE 1=1$filter ORDER BY name ASC")) === false) {
$err_msg = "DB Error: ".print_r($mysqlcon->errorInfo(), true); $err_lvl = 3;
}
$user_arr = $dbuserdata->fetchAll(PDO::FETCH_ASSOC);
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
$setontime = 0;
if($_POST['setontime_day']) { $setontime = $setontime + $_POST['setontime_day'] * 86400; }
if($_POST['setontime_hour']) { $setontime = $setontime + $_POST['setontime_hour'] * 3600; }
if($_POST['setontime_min']) { $setontime = $setontime + $_POST['setontime_min'] * 60; }
if($_POST['setontime_sec']) { $setontime = $setontime + $_POST['setontime_sec']; }
if($setontime == 0) {
$err_msg = $lang['errseltime']; $err_lvl = 3;
} elseif($_POST['user'] == NULL) {
$err_msg = $lang['errselusr']; $err_lvl = 3;
} else {
$allupdateuuid = '';
foreach($_POST['user'] as $user) {
$allupdateuuid .= "'".$user."',";
}
$allupdateuuid = substr($allupdateuuid, 0, -1);
if($mysqlcon->exec("UPDATE $dbname.user set count = count + $setontime WHERE uuid IN ($allupdateuuid)") === false) {
$err_msg = $lang['isntwidbmsg'].print_r($mysqlcon->errorInfo(), true); $err_lvl = 3;
} else {
if($mysqlcon->exec("UPDATE $dbname.user_snapshot set count = count + $setontime WHERE uuid IN ($allupdateuuid)") === false) { }
$err_msg = sprintf($lang['sccupcount'],$setontime,$allupdateuuid); $err_lvl = NULL;
}
}
}
?>
<div id="page-wrapper">
<?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">
Special Functions
<?php echo $lang['wihladm1']; ?>
</h1>
</div>
</div>
<div class="row">&nbsp;</div>
<!-- <form id="update" method="POST"></form> -->
<form name="post" method="POST">
<div class="form-horizontal">
<div class="row">
<div class="text-center">
The functions (delete clients/ clear Ranksystem/ edit clients online time) will come back with one of the next releases...
<div class="col-md-3">
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-body">
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiadmhidedesc"><?php echo $lang['wiadmhide']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<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>';
?>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wiselclddesc"><?php echo $lang['wiselcld']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<select class="selectpicker show-tick form-control" data-live-search="true" multiple name="user[]">
<?PHP
foreach ($user_arr as $user) {
echo '<option value="',$user['uuid'],'" data-subtext="UUID: ',$user['uuid'],'; DBID: ',$user['cldbid'],'">',$user['name'],'</option>';
}
?>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#setontimedesc"><?php echo $lang['setontime']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<input type="text" class="form-control" name="setontime_day">
<script>
$("input[name='setontime_day']").TouchSpin({
min: 0,
max: 106751991167299,
verticalbuttons: true,
prefix: 'Day(s):'
});
</script>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#setontimedesc"></label>
<div class="col-sm-8">
<input type="text" class="form-control" name="setontime_hour">
<script>
$("input[name='setontime_hour']").TouchSpin({
min: 0,
max: 23,
verticalbuttons: true,
prefix: 'Hour(s):'
});
</script>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#setontimedesc"></label>
<div class="col-sm-8">
<input type="text" class="form-control" name="setontime_min">
<script>
$("input[name='setontime_min']").TouchSpin({
min: 0,
max: 59,
verticalbuttons: true,
prefix: 'Min.:'
});
</script>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#setontimedesc"></label>
<div class="col-sm-8">
<input type="text" class="form-control" name="setontime_sec">
<script>
$("input[name='setontime_sec']").TouchSpin({
min: 0,
max: 59,
verticalbuttons: true,
prefix: 'Sec:'
});
</script>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">&nbsp;</div>
<div class="row">
<div class="text-center">
<button type="submit" class="btn btn-primary" name="update"><?php echo $lang['wisvconf']; ?></button>
</div>
</div>
<div class="row">&nbsp;</div>
</div>
</form>
</div>
</div>
</div>
<div class="modal fade" id="wiselclddesc" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['wiselcld']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['wiselclddesc']; ?>
</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="setontimedesc" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['setontime']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['setontimedesc']; ?>
</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="wiadmhidedesc" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['wiadmhide']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['wiadmhidedesc']; ?>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal"><?PHP echo $lang['stnv0002']; ?></button>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -59,6 +59,9 @@ if (isset($_POST['number'])) {
} else {
$number_lines = 20;
}
$_SESSION['number_lines'] = $number_lines;
} elseif (isset($_SESSION['number_lines'])) {
$number_lines = $_SESSION['number_lines'];
}
$filters = '';
@@ -81,11 +84,15 @@ if (isset($_POST['logfilter']) && in_array('debug', $_POST['logfilter'])) {
$filters .= "DEBUG,";
}
if (!isset($_POST['logfilter'])) {
$filters = "CRITICAL,ERROR,WARNING,NOTICE,INFO,DEBUG";
if($filters != '') {
$_SESSION['logfilter'] = $filters;
}
$filters = explode(',', $filters);
if (!isset($_SESSION['logfilter'])) {
$_SESSION['logfilter'] = "CRITICAL,ERROR,WARNING,NOTICE,INFO,DEBUG";
}
$filters = explode(',', $_SESSION['logfilter']);
if (isset($_POST['logout'])) {
echo "logout";

View File

@@ -0,0 +1,140 @@
<?PHP
session_start();
require_once('../other/config.php');
function enter_logfile($logpath,$timezone,$loglevel,$logtext) {
$file = $logpath.'ranksystem.log';
if ($loglevel == 1) {
$loglevel = " CRITICAL ";
} elseif ($loglevel == 2) {
$loglevel = " ERROR ";
} elseif ($loglevel == 3) {
$loglevel = " WARNING ";
} elseif ($loglevel == 4) {
$loglevel = " NOTICE ";
} elseif ($loglevel == 5) {
$loglevel = " INFO ";
}
$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);
if (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");
fwrite($loghandle, DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''))->setTimeZone(new DateTimeZone($timezone))->format("Y-m-d H:i:s.u ")." NOTICE Restart Bot to continue with new log file...\n");
fclose($loghandle);
$file2 = "$file.old";
if (file_exists($file2)) unlink($file2);
rename($file, $file2);
if (substr(php_uname(), 0, 7) == "Windows") {
exec("del /F ".substr(__DIR__,0,-12).'logs/pid');
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("cmd /C php ".substr(__DIR__,0,-12)."worker.php start", 0, false);
exit;
} else {
exec("rm -f ".substr(__DIR__,0,-12).'logs/pid');
exec("php ".substr(__DIR__,0,-12)."worker.php start");
exit;
}
}
}
function getclientip() {
if (!empty($_SERVER['HTTP_CLIENT_IP']))
return $_SERVER['HTTP_CLIENT_IP'];
elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
return $_SERVER['HTTP_X_FORWARDED_FOR'];
elseif(!empty($_SERVER['HTTP_X_FORWARDED']))
return $_SERVER['HTTP_X_FORWARDED'];
elseif(!empty($_SERVER['HTTP_FORWARDED_FOR']))
return $_SERVER['HTTP_FORWARDED_FOR'];
elseif(!empty($_SERVER['HTTP_FORWARDED']))
return $_SERVER['HTTP_FORWARDED'];
elseif(!empty($_SERVER['REMOTE_ADDR']))
return $_SERVER['REMOTE_ADDR'];
else
return false;
}
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']), '/\\'));
}
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']), '/\\'));
}
exit;
}
require_once('nav.php');
if (isset($_POST['changepw']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
$newpass = password_hash($_POST['newpwd1'], PASSWORD_DEFAULT);
if (!password_verify($_POST['oldpwd'], $webpass)) {
$err_msg = $lang['wichpw1']; $err_lvl = 3;
} elseif ($_POST['newpwd1'] != $_POST['newpwd2'] || $_POST['newpwd1'] == NULL) {
$err_msg = $lang['wichpw2']; $err_lvl = 3;
} elseif ($mysqlcon->exec("UPDATE $dbname.config set webpass='$newpass'") === false) {
$err_msg = print_r($mysqlcon->errorInfo(), true); $err_lvl = 3;
} else {
enter_logfile($logpath,$timezone,3,sprintf($lang['wichpw3'],getclientip()));
$err_msg = $lang['wisvsuc']; $err_lvl = NULL;
}
}
?>
<div id="page-wrapper">
<?PHP if(isset($err_msg)) error_handling($err_msg, $err_lvl); ?>
<div class="container-fluid">
<div id="login-overlay" class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myModalLabel"><?PHP echo $lang['wichpw4'].' - '.$lang['wi']; ?></h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-xs-12">
<form id="resetForm" method="POST">
<div class="form-group">
<label for="password" class="control-label"><?PHP echo $lang['pass3']; ?>:</label>
<div class="input-group-justified">
<input type="password" class="form-control" name="oldpwd" data-toggle="password" data-placement="before" placeholder="<?PHP echo $lang['pass3']; ?>">
</div>
</div>
<p>&nbsp;</p>
<div class="form-group">
<label for="password" class="control-label"><?PHP echo $lang['pass4']; ?>:</label>
<div class="input-group-justified">
<input type="password" class="form-control" name="newpwd1" data-toggle="password" data-placement="before" placeholder="<?PHP echo $lang['pass4']; ?>">
</div>
</div>
<div class="form-group">
<label for="password" class="control-label"><?PHP echo $lang['pass4']; ?> (<?PHP echo $lang['repeat']; ?>):</label>
<div class="input-group-justified">
<input type="password" class="form-control" name="newpwd2" data-toggle="password" data-placement="before" placeholder="<?PHP echo $lang['pass4']; ?> (<?PHP echo $lang['repeat']; ?>)">
</div>
</div>
<br>
<p>
<button type="submit" class="btn btn-success btn-block" name="changepw"><?PHP echo $lang['wichpw4']; ?></button>
</p>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -54,7 +54,7 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
$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'") === false) {
$err_msg = print_r($mysqlcon->errorInfo());
$err_msg = print_r($mysqlcon->errorInfo(), true);
$err_lvl = 3;
} else {
$err_msg = $lang['wisvsuc']." ".$lang['wisvres'];

View File

@@ -57,7 +57,7 @@ function getclientip() {
}
if(($last_access = $mysqlcon->query("SELECT last_access,count_access FROM $dbname.config")) === false) {
$err_msg .= print_r($mysqlcon->errorInfo());
$err_msg .= print_r($mysqlcon->errorInfo(), true);
}
$last_access = $last_access->fetchAll();
@@ -119,7 +119,12 @@ require_once('nav.php');
</div>
</div>
<br>
<button type="submit" class="btn btn-success btn-block"><?PHP echo $lang['login']; ?></button>
<p>
<button type="submit" class="btn btn-success btn-block"><?PHP echo $lang['login']; ?></button>
</p>
<p class="small text-right">
<a href="resetpassword.php"><?PHP echo $lang['pass5']; ?></a>
</p>
</form>
</div>
</div>

View File

@@ -45,9 +45,13 @@ require_once('nav.php');
if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass && $_SESSION['clientip'] == getclientip()) {
$rankupmsg = addslashes($_POST['rankupmsg']);
$servernews = addslashes($_POST['servernews']);
$nextupinfomsg1 = addslashes($_POST['nextupinfomsg1']);
$nextupinfomsg2 = addslashes($_POST['nextupinfomsg2']);
$nextupinfomsg3 = addslashes($_POST['nextupinfomsg3']);
if (isset($_POST['msgtouser'])) $msgtouser = 1; else $msgtouser = 0;
if ($mysqlcon->exec("UPDATE $dbname.config set msgtouser='$msgtouser',rankupmsg='$rankupmsg',servernews='$servernews'") === false) {
$err_msg = print_r($mysqlcon->errorInfo());
if (isset($_POST['nextupinfo'])) $nextupinfo = 1; else $nextupinfo = 0;
if ($mysqlcon->exec("UPDATE $dbname.config set msgtouser='$msgtouser',rankupmsg='$rankupmsg',servernews='$servernews',nextupinfo='$nextupinfo',nextupinfomsg1='$nextupinfomsg1',nextupinfomsg2='$nextupinfomsg2',nextupinfomsg3='$nextupinfomsg3'") === false) {
$err_msg = print_r($mysqlcon->errorInfo(), true);
$err_lvl = 3;
} else {
$err_msg = $lang['wisvsuc']." ".$lang['wisvres'];
@@ -55,6 +59,9 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
}
$rankupmsg = $_POST['rankupmsg'];
$servernews = $_POST['servernews'];
$nextupinfomsg1 = $_POST['nextupinfomsg1'];
$nextupinfomsg2 = $_POST['nextupinfomsg2'];
$nextupinfomsg3 = $_POST['nextupinfomsg3'];
}
?>
<div id="page-wrapper">
@@ -69,18 +76,6 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
<form class="form-horizontal" name="update" method="POST">
<div class="row">
<div class="col-md-6">
<div class="panel-body">
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wimsgsndesc"><?php echo $lang['wimsgsn']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<textarea class="form-control" rows="15" name="servernews"><?php echo $servernews; ?></textarea>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-body">
@@ -102,6 +97,48 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
<div class="panel-body">
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wimsgsndesc"><?php echo $lang['wimsgsn']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<textarea class="form-control" rows="15" name="servernews"><?php echo $servernews; ?></textarea>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-body">
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#winxinfodesc"><?php echo $lang['winxinfo']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<?PHP if ($nextupinfo == 1) {
echo '<input id="switch-animate" type="checkbox" checked data-size="mini" name="nextupinfo" value="',$nextupinfo,'">';
} else {
echo '<input id="switch-animate" type="checkbox" data-size="mini" name="nextupinfo" value="',$nextupinfo,'">';
} ?>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#winxmsgdesc1"><?php echo $lang['winxmsg1']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<textarea class="form-control" rows="5" name="nextupinfomsg1"><?php echo $nextupinfomsg1; ?></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#winxmsgdesc2"><?php echo $lang['winxmsg2']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<textarea class="form-control" rows="5" name="nextupinfomsg2"><?php echo $nextupinfomsg2; ?></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#winxmsgdesc3"><?php echo $lang['winxmsg3']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<textarea class="form-control" rows="5" name="nextupinfomsg3"><?php echo $nextupinfomsg3; ?></textarea>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">&nbsp;</div>
@@ -147,7 +184,8 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
</div><div class="modal fade" id="wimsgsndesc" tabindex="-1">
</div>
<div class="modal fade" id="wimsgsndesc" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
@@ -163,5 +201,69 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
<div class="modal fade" id="winxinfodesc" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['winxinfo']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['winxinfodesc']; ?>
</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="winxmsgdesc1" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['winxmsg1']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['winxmsgdesc1']; ?>
</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="winxmsgdesc2" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['winxmsg2']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['winxmsgdesc2']; ?>
</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="winxmsgdesc3" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['winxmsg3']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['winxmsgdesc3']; ?>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal"><?PHP echo $lang['stnv0002']; ?></button>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -64,7 +64,12 @@
</ul>
<?PHP } ?>
<ul class="nav navbar-right top-nav">
<?PHP if(isset($_SESSION['username']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass) { ?>
<?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>&nbsp;',$lang['winav6'],'</a></li>';
if(isset($_SESSION['username']) && $_SESSION['username'] == $webuser && $_SESSION['password'] == $webpass) { ?>
<li>
<a href="changepassword.php"><i class="fa fa-lock"></i>&nbsp;<?PHP echo $lang['pass2']; ?></a>
</li>
<li>
<form class="navbar-form navbar-center" method="post">
<div class="form-group">
@@ -119,7 +124,12 @@
</li>
<li class="divider"></li>
<?PHP echo '<li'.(basename($_SERVER['SCRIPT_NAME']) == "admin.php" ? ' class="active">' : '>'); ?>
<a href="admin.php"><i class="fa fa-fw fa-users"></i>&nbsp;<?PHP echo $lang['winav7']; ?></a>
<a href="javascript:;" data-toggle="collapse" data-target="#demo"><i class="fa fa-fw fa-users"></i>&nbsp;<?PHP echo $lang['winav7']; ?>&nbsp;<i class="fa fa-fw fa-caret-down"></i></a>
<ul id="demo" class="collapse">
<li>
<a href="admin.php"><?PHP echo $lang['wihladm1']; ?></a>
</li>
</ul>
</li>
<li class="divider"></li>
<?PHP echo '<li'.(basename($_SERVER['SCRIPT_NAME']) == "bot.php" ? ' class="active">' : '>'); ?>
@@ -129,7 +139,11 @@
</div>
</nav>
<?PHP
if(!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != "on") {
if($adminuuid==NULL && $_SESSION['username'] == $webuser && !isset($err_msg)) {
$err_msg = $lang['winav11']; $err_lvl = 3;
}
if(!isset($_SERVER['HTTPS']) && !isset($err_msg) || $_SERVER['HTTPS'] != "on" && !isset($err_msg)) {
$host = "<a href=\"https://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\\')."\">";
$err_msg = sprintf($lang['winav10'], $host,'</a>!<br>', '<br>'); $err_lvl = 2;
}

View File

@@ -50,8 +50,9 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
if (isset($_POST['upcheck'])) $upcheck = 1; else $upcheck = 0;
$updateinfotime = $_POST['updateinfotime'];
$uniqueid = $_POST['uniqueid'];
if ($mysqlcon->exec("UPDATE $dbname.config set timezone='$timezone',dateformat='$dateformat',logpath='$logpath',language='$language',upcheck='$upcheck',updateinfotime='$updateinfotime',uniqueid='$uniqueid'") === false) {
$err_msg = print_r($mysqlcon->errorInfo());
$adminuuid = $_POST['adminuuid'];
if ($mysqlcon->exec("UPDATE $dbname.config set timezone='$timezone',dateformat='$dateformat',logpath='$logpath',language='$language',upcheck='$upcheck',updateinfotime='$updateinfotime',uniqueid='$uniqueid',adminuuid='$adminuuid'") === false) {
$err_msg = print_r($mysqlcon->errorInfo(), true);
$err_lvl = 3;
} else {
$err_msg = $lang['wisvsuc']." ".$lang['wisvres'];
@@ -120,7 +121,14 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
<div class="col-md-6 ">
<div class="col-md-6">
<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">
<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; ?>">
<div class="help-block with-errors"></div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-body">
<div class="form-group">
@@ -282,6 +290,22 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
<div class="modal fade" id="wiadmuuiddesc" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['wiadmuuid']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['wiadmuuiddesc']; ?>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal"><?PHP echo $lang['stnv0002']; ?></button>
</div>
</div>
</div>
</div>
<script>
$('form[data-toggle="validator"]').validator({
custom: {

View File

@@ -0,0 +1,157 @@
<?PHP
session_start();
require_once('../other/config.php');
function enter_logfile($logpath,$timezone,$loglevel,$logtext) {
$file = $logpath.'ranksystem.log';
if ($loglevel == 1) {
$loglevel = " CRITICAL ";
} elseif ($loglevel == 2) {
$loglevel = " ERROR ";
} elseif ($loglevel == 3) {
$loglevel = " WARNING ";
} elseif ($loglevel == 4) {
$loglevel = " NOTICE ";
} elseif ($loglevel == 5) {
$loglevel = " INFO ";
}
$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);
if (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");
fwrite($loghandle, DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''))->setTimeZone(new DateTimeZone($timezone))->format("Y-m-d H:i:s.u ")." NOTICE Restart Bot to continue with new log file...\n");
fclose($loghandle);
$file2 = "$file.old";
if (file_exists($file2)) unlink($file2);
rename($file, $file2);
if (substr(php_uname(), 0, 7) == "Windows") {
exec("del /F ".substr(__DIR__,0,-12).'logs/pid');
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("cmd /C php ".substr(__DIR__,0,-12)."worker.php start", 0, false);
exit;
} else {
exec("rm -f ".substr(__DIR__,0,-12).'logs/pid');
exec("php ".substr(__DIR__,0,-12)."worker.php start");
exit;
}
}
}
function getclientip() {
if (!empty($_SERVER['HTTP_CLIENT_IP']))
return $_SERVER['HTTP_CLIENT_IP'];
elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
return $_SERVER['HTTP_X_FORWARDED_FOR'];
elseif(!empty($_SERVER['HTTP_X_FORWARDED']))
return $_SERVER['HTTP_X_FORWARDED'];
elseif(!empty($_SERVER['HTTP_FORWARDED_FOR']))
return $_SERVER['HTTP_FORWARDED_FOR'];
elseif(!empty($_SERVER['HTTP_FORWARDED']))
return $_SERVER['HTTP_FORWARDED'];
elseif(!empty($_SERVER['REMOTE_ADDR']))
return $_SERVER['REMOTE_ADDR'];
else
return false;
}
if(($last_access = $mysqlcon->query("SELECT last_access,count_access FROM $dbname.config")) === false) {
$err_msg .= print_r($mysqlcon->errorInfo(), true);
}
$last_access = $last_access->fetchAll();
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) {
$err_msg = $lang['wirtpw1']; $err_lvl=3;
} elseif (isset($_POST['resetpw'])) {
$nowtime = time();
if($mysqlcon->exec("UPDATE $dbname.config SET last_access='$nowtime', count_access = count_access + 1") === false) { }
require_once(substr(__DIR__,0,-12).'ts3_lib/TeamSpeak3.php');
try {
$ts3 = TeamSpeak3::factory("serverquery://".$ts['user'].":".$ts['pass']."@".$ts['host'].":".$ts['query']."/?server_port=".$ts['voice']."&blocking=0");
try {
usleep($slowmode);
$ts3->selfUpdate(array('client_nickname' => "Ranksystem - Reset Password"));
} catch (Exception $e) { }
usleep($slowmode);
$allclients = $ts3->clientList();
foreach ($allclients as $client) {
if($client['client_unique_identifier'] == $adminuuid) {
$uuid = $client['client_unique_identifier'];
$checkuuid = 1;
if($client['connection_client_ip'] == getclientip()) {
$checkip = 1;
}
}
}
if (!isset($checkuuid)) {
$err_msg = $lang['wirtpw2']; $err_lvl = 3;
} elseif (!isset($checkip)) {
$err_msg = $lang['wirtpw3']; $err_lvl = 3;
} else {
usleep($slowmode);
$pwd = substr(str_shuffle("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789#*+;:-_~?=%&$<24>!()"),0,12);
$webpass = password_hash($pwd, PASSWORD_DEFAULT);
if($mysqlcon->exec("UPDATE $dbname.config set webpass='$webpass', last_access='0'") === false) {
$err_msg = $lang['isntwidbmsg'].print_r($mysqlcon->errorInfo(), true); $err_lvl = 3;
} else {
try {
$ts3->clientGetByUid($uuid)->message(sprintf($lang['wirtpw4'], $webuser, $pwd, '[URL=http'.(!empty($_SERVER['HTTPS'])?"s":"").'://'.$_SERVER['SERVER_NAME'].dirname($_SERVER['SCRIPT_NAME']).']','[/URL]'));
$err_msg = sprintf($lang['wirtpw5'],'<a href="http'.(!empty($_SERVER['HTTPS'])?"s":"").'://'.$_SERVER['SERVER_NAME'].dirname($_SERVER['SCRIPT_NAME']).'/">','</a>'); $err_lvl = 1;
enter_logfile($logpath,$timezone,3,sprintf($lang['wirtpw6'],getclientip()));
} catch (Exception $e) {
$err_msg = 'TeamSpeak '.$lang['error'].$e->getCode().': '.$e->getMessage(); $err_lvl = 3;
}
}
}
} catch (Exception $e) {
$err_msg = 'TeamSpeak '.$lang['error'].$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); ?>
<div class="container-fluid">
<div id="login-overlay" class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myModalLabel"><?PHP echo $lang['wirtpw7'].' - '.$lang['wi']; ?></h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-xs-12">
<form id="resetForm" method="POST">
<p><?PHP echo $lang['wirtpw8']; ?></p>
<p><?PHP echo $lang['wirtpw9']; ?>
<ul>
<li><?PHP echo $lang['wirtpw10']; ?></li>
<li><?PHP echo $lang['wirtpw11']; ?></li>
<li><?PHP echo $lang['wirtpw12']; ?></li>
</ul>
</p>
<br>
<p>
<button type="submit" class="btn btn-success btn-block" name="resetpw"><?PHP echo $lang['wirtpw7']; ?></button>
</p>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -57,8 +57,10 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
if (isset($_POST['showcolnx'])) $showcolnx = 1; else $showcolnx = 0;
if (isset($_POST['showcolsg'])) $showcolsg = 1; else $showcolsg = 0;
if (isset($_POST['showhighest'])) $showhighest = 1; else $showhighest = 0;
if ($mysqlcon->exec("UPDATE $dbname.config set showexcld='$showexcld',showcolrg='$showcolrg',showcolcld='$showcolcld',showcoluuid='$showcoluuid',showcoldbid='$showcoldbid',showcolls='$showcolls',showcolot='$showcolot',showcolit='$showcolit',showcolat='$showcolat',showcolas='$showcolas',showcolnx='$showcolnx',showcolsg='$showcolsg',showhighest='$showhighest'") === false) {
$err_msg = print_r($mysqlcon->errorInfo());
if (isset($_POST['showgrpsince'])) $showgrpsince = 1; else $showgrpsince = 0;
if (isset($_POST['shownav'])) $shownav = 1; else $shownav = 0;
if ($mysqlcon->exec("UPDATE $dbname.config set showexcld='$showexcld',showcolrg='$showcolrg',showcolcld='$showcolcld',showcoluuid='$showcoluuid',showcoldbid='$showcoldbid',showcolls='$showcolls',showcolot='$showcolot',showcolit='$showcolit',showcolat='$showcolat',showcolas='$showcolas',showcolnx='$showcolnx',showcolsg='$showcolsg',showhighest='$showhighest',showgrpsince='$showgrpsince',shownav='$shownav'") === false) {
$err_msg = print_r($mysqlcon->errorInfo(), true);
$err_lvl = 3;
} else {
$err_msg = $lang['wisvsuc'];
@@ -78,19 +80,7 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
<form class="form-horizontal" name="update" method="POST">
<div class="row">
<div class="col-md-3">
</div>
<div class="col-md-6">
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wishexclddesc"><?php echo $lang['wishexcld']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<?PHP if ($showexcld == 1) {
echo '<input class="switch-animate" type="checkbox" checked data-size="mini" name="showexcld" value="',$showexcld,'">';
} else {
echo '<input class="switch-animate" type="checkbox" data-size="mini" name="showexcld" value="',$showexcld,'">';
} ?>
</div>
</div>
<div class="panel panel-default">
<div class="panel-body">
<div class="form-group">
@@ -183,6 +173,16 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
} ?>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wishcolgsdesc"><?php echo $lang['wishcolgs']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<?PHP if ($showgrpsince == 1) {
echo '<input class="switch-animate" type="checkbox" checked data-size="mini" name="showgrpsince" value="',$showgrpsince,'">';
} else {
echo '<input class="switch-animate" type="checkbox" data-size="mini" name="showgrpsince" value="',$showgrpsince,'">';
} ?>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wishcolnxdesc"><?php echo $lang['wishcolnx']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
@@ -205,7 +205,18 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
<div class="row">&nbsp;</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wishexclddesc"><?php echo $lang['wishexcld']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<?PHP if ($showexcld == 1) {
echo '<input class="switch-animate" type="checkbox" checked data-size="mini" name="showexcld" value="',$showexcld,'">';
} else {
echo '<input class="switch-animate" type="checkbox" data-size="mini" name="showexcld" value="',$showexcld,'">';
} ?>
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wishhiclddesc"><?php echo $lang['wishhicld']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
@@ -216,6 +227,17 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
} ?>
</div>
</div>
<div class="row">&nbsp;</div>
<div class="form-group">
<label class="col-sm-4 control-label" data-toggle="modal" data-target="#wishnavdesc"><?php echo $lang['wishnav']; ?><i class="help-hover glyphicon glyphicon-question-sign"></i></label>
<div class="col-sm-8">
<?PHP if ($shownav == 1) {
echo '<input class="switch-animate" type="checkbox" checked data-size="mini" name="shownav" value="',$shownav,'">';
} else {
echo '<input class="switch-animate" type="checkbox" data-size="mini" name="shownav" value="',$shownav,'">';
} ?>
</div>
</div>
</div>
</div>
<div class="row">&nbsp;</div>
@@ -390,6 +412,22 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
<div class="modal fade" id="wishcolgsdesc" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['wishcolgs']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['wishcolgsdesc']; ?>
</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="wishcolnxdesc" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
@@ -438,5 +476,21 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
</div>
</div>
</div>
<div class="modal fade" id="wishnavdesc" 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">&times;</span></button>
<h4 class="modal-title"><?php echo $lang['wishnav']; ?></h4>
</div>
<div class="modal-body">
<?php echo $lang['wishnavdesc']; ?>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal"><?PHP echo $lang['stnv0002']; ?></button>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -53,7 +53,7 @@ if (isset($_POST['update']) && $_SESSION['username'] == $webuser && $_SESSION['p
$defchid = $_POST['defchid'];
$slowmode = $_POST['slowmode'];
if ($mysqlcon->exec("UPDATE $dbname.config set tshost='$tshost',tsquery='$tsquery',tsvoice='$tsvoice',tsuser='$tsuser',tspass='$tspass',queryname='$queryname',queryname2='$queryname2',slowmode='$slowmode',defchid='$defchid'") === false) {
$err_msg = print_r($mysqlcon->errorInfo());
$err_msg = print_r($mysqlcon->errorInfo(), true);
$err_lvl = 3;
} else {
$err_msg = $lang['wisvsuc']." ".$lang['wisvres'];