')) { $operator = '>'; } elseif(isset($seenvalue[1]) && $seenvalue[1] == '!=') { $operator = '!='; } else { $operator = '='; } $filter .= " AND `lastseen`".$operator."'".$lastseen."'"; } $searchstring = htmlspecialchars_decode($searchstring); 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); $getstring = rawurlencode($getstring); } else { $getstring = ''; $sumentries = $mysqlcon->query("SELECT COUNT(*) FROM `$dbname`.`user`")->fetch(PDO::FETCH_NUM); } if(!isset($_GET["seite"])) { $seite = 1; } else { $_GET["seite"] = preg_replace('/\D/', '', $_GET["seite"]); if($_GET["seite"] > 0) { $seite = $_GET["seite"]; } else { $seite = 1; } } $adminlogin = 0; $sortarr = array_flip(array("name","uuid","cldbid","rank","lastseen","count","idle","active","grpid","grpsince","nextup")); if(isset($_GET['sort']) && isset($sortarr[$_GET['sort']])) { $keysort = $_GET['sort']; } else { $keysort = $cfg['stats_column_default_sort']; } if(isset($_GET['order']) && $_GET['order'] == 'desc') { $keyorder = 'desc'; } elseif(isset($_GET['order']) && $_GET['order'] == 'asc') { $keyorder = 'asc'; } else { $keyorder = $cfg['stats_column_default_order']; } if(isset($_GET['admin'])) { if($_SESSION[$rspathhex.'username'] == $cfg['webinterface_user'] && $_SESSION[$rspathhex.'password'] == $cfg['webinterface_pass'] && $_SESSION[$rspathhex.'clientip'] == getclientip()) { $adminlogin = 1; } } require_once('nav.php'); $countentries = 0; if(!isset($_GET["user"])) { $user_pro_seite = 25; } elseif($_GET['user'] == "all") { $user_pro_seite = $sumentries[0]; } else { $_GET["user"] = preg_replace('/\D/', '', $_GET["user"]); if($_GET["user"] > 0) { $user_pro_seite = $_GET["user"]; } else { $user_pro_seite = 25; } } $start = ($seite * $user_pro_seite) - $user_pro_seite; if ($keysort == 'active' && $keyorder == 'asc') { $dbdata = $mysqlcon->prepare("SELECT `uuid`,`cldbid`,`rank`,`count`,`name`,`idle`,`cldgroup`,`online`,`nextup`,`lastseen`,`grpid`,`except`,`grpsince` FROM `$dbname`.`user` WHERE (`uuid` LIKE :searchvalue OR `cldbid` LIKE :searchvalue OR `name` LIKE :searchvalue)$filter ORDER BY (`count` - `idle`) LIMIT :start, :userproseite"); $dbdata->bindValue(':searchvalue', '%'.$searchstring.'%', PDO::PARAM_STR); $dbdata->bindValue(':start', (int) $start, PDO::PARAM_INT); $dbdata->bindValue(':userproseite', (int) $user_pro_seite, PDO::PARAM_INT); $dbdata->execute(); } elseif ($keysort == 'active' && $keyorder == 'desc') { $dbdata = $mysqlcon->prepare("SELECT `uuid`,`cldbid`,`rank`,`count`,`name`,`idle`,`cldgroup`,`online`,`nextup`,`lastseen`,`grpid`,`except`,`grpsince` FROM `$dbname`.`user` WHERE (`uuid` LIKE :searchvalue OR `cldbid` LIKE :searchvalue OR `name` LIKE :searchvalue)$filter ORDER BY (`idle` - `count`) LIMIT :start, :userproseite"); $dbdata->bindValue(':searchvalue', '%'.$searchstring.'%', PDO::PARAM_STR); $dbdata->bindValue(':start', (int) $start, PDO::PARAM_INT); $dbdata->bindValue(':userproseite', (int) $user_pro_seite, PDO::PARAM_INT); $dbdata->execute(); } elseif ($searchstring == '') { $dbdata = $mysqlcon->prepare("SELECT `uuid`,`cldbid`,`rank`,`count`,`name`,`idle`,`cldgroup`,`online`,`nextup`,`lastseen`,`grpid`,`except`,`grpsince` FROM `$dbname`.`user` WHERE 1=1$filter ORDER BY `$keysort` $keyorder LIMIT :start, :userproseite"); $dbdata->bindValue(':start', (int) $start, PDO::PARAM_INT); $dbdata->bindValue(':userproseite', (int) $user_pro_seite, PDO::PARAM_INT); $dbdata->execute(); } else { $dbdata = $mysqlcon->prepare("SELECT `uuid`,`cldbid`,`rank`,`count`,`name`,`idle`,`cldgroup`,`online`,`nextup`,`lastseen`,`grpid`,`except`,`grpsince` FROM `$dbname`.`user` WHERE (`uuid` LIKE :searchvalue OR `cldbid` LIKE :searchvalue OR `name` LIKE :searchvalue)$filter ORDER BY `$keysort` $keyorder LIMIT :start, :userproseite"); $dbdata->bindValue(':searchvalue', '%'.$searchstring.'%', PDO::PARAM_STR); $dbdata->bindValue(':start', (int) $start, PDO::PARAM_INT); $dbdata->bindValue(':userproseite', (int) $user_pro_seite, PDO::PARAM_INT); $dbdata->execute(); } if($user_pro_seite > 0) { $seiten_anzahl_gerundet = ceil($sumentries[0] / $user_pro_seite); } else { $seiten_anzahl_gerundet = 0; } function pagination($keysort,$keyorder,$user_pro_seite,$seiten_anzahl_gerundet,$seite,$getstring) { ?> fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE); $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[$sgid]['iconfile'] = 0; } } if($adminlogin == 1) { switch ($keyorder) { case "asc": $keyorder2 = "desc&admin=true"; break; case "desc": $keyorder2 = "asc&admin=true"; } $keyorder .= "&admin=true"; } else { switch ($keyorder) { case "asc": $keyorder2 = "desc"; break; case "desc": $keyorder2 = "asc"; } } ?>
' , $lang['listrank'] , ''; if ($cfg['stats_column_client_name_switch'] == 1 || $adminlogin == 1) echo ($keysort == 'name') ? '' : ''; if ($cfg['stats_column_unique_id_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_client_db_id_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_last_seen_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_online_time_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_idle_time_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_active_time_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_current_server_group_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_current_group_since_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_next_rankup_switch'] == 1 || $adminlogin == 1) echo ($keysort == 'nextup') ? '' : ''; if (($cfg['stats_column_next_server_group_switch'] == 1 || $adminlogin == 1) && $cfg['rankup_time_assess_mode'] == 1) { echo ''; } elseif (($cfg['stats_column_next_server_group_switch'] == 1 || $adminlogin == 1) && $cfg['rankup_time_assess_mode'] != 1) { echo ''; } echo ''; ksort($cfg['rankup_definition']); if (count($sqlhis) > 0) { foreach ($sqlhis as $uuid => $value) { if ($cfg['rankup_time_assess_mode'] == 1) { $activetime = $value['count'] - $value['idle']; } else { $activetime = $value['count']; } $grpcount=0; foreach ($cfg['rankup_definition'] as $time => $groupid) { $grpcount++; if ($activetime < $time || $grpcount == count($cfg['rankup_definition']) && $value['nextup'] <= 0 && $cfg['stats_show_clients_in_highest_rank_switch'] == 1 || $grpcount == count($cfg['rankup_definition']) && $value['nextup'] == 0 && $adminlogin == 1) { echo ''; if ($cfg['stats_column_rank_switch'] == 1 || $adminlogin == 1) { if($value['except'] == 2 || $value['except'] == 3) { echo ''; } else { echo ''; } } if ($adminlogin == 1) { echo ''; } elseif ($cfg['stats_column_client_name_switch'] == 1) { echo ''; } if ($adminlogin == 1) { echo ''; } elseif ($cfg['stats_column_unique_id_switch'] == 1) { echo ''; } if ($cfg['stats_column_client_db_id_switch'] == 1 || $adminlogin == 1) echo ''; if ($cfg['stats_column_last_seen_switch'] == 1 || $adminlogin == 1) { if ($value['online'] == 1) { echo ''; } else { echo ''; } } if ($cfg['stats_column_online_time_switch'] == 1 || $adminlogin == 1) { echo ''; } elseif(isset($sqlhisgroup[$value['grpid']]) && $sqlhisgroup[$value['grpid']]['iconfile'] == 1) { echo ''; } elseif(isset($sqlhisgroup[$value['grpid']])) { echo ''; } else { echo ''; } } if ($cfg['stats_column_current_group_since_switch'] == 1 || $adminlogin == 1) { if ($value['grpsince'] == 0) { echo ''; } else { echo ''; } } if ($cfg['stats_column_next_rankup_switch'] == 1 || $adminlogin == 1) { echo ''; } elseif ($value['except'] == 0 || $value['except'] == 1) { echo '0'; } elseif ($value['except'] == 2 || $value['except'] == 3) { echo '0'; } else { echo $lang['errukwn'], ''; } } if ($cfg['stats_column_next_server_group_switch'] == 1 || $adminlogin == 1) { if ($grpcount == count($cfg['rankup_definition']) && $value['nextup'] == 0 && $cfg['stats_show_clients_in_highest_rank_switch'] == 1 || $grpcount == count($cfg['rankup_definition']) && $value['nextup'] == 0 && $adminlogin == 1) { echo ''; } elseif ($value['except'] == 2 || $value['except'] == 3) { echo ''; } elseif (isset($sqlhisgroup[$groupid]) && $sqlhisgroup[$groupid]['iconfile'] == 1) { echo ''; } elseif (isset($sqlhisgroup[$groupid])) { echo ''; } else { echo ''; } } echo ''; break; } } } } else { echo ''; } echo '
' . $lang['listnick'] . '' . $lang['listnick'] . '' , $lang['listuid'] , '' , $lang['listcldbid'] , '' , $lang['listseen'] , '' , $lang['listsumo'] , '' , $lang['listsumi'] , '' , $lang['listsuma'] , '' , $lang['listacsg'] , '' , $lang['listgrps'] , '' . $lang['listnxup'] . '' . $lang['listnxup'] . '' , $lang['listnxsg'] , '' , $lang['listnxsg'] , '
' , $value['rank'] , '' , htmlspecialchars($value['name']) , '' , htmlspecialchars($value['name']) , '' , $uuid , '' , $uuid , '' , $value['cldbid'] , 'online' , date('Y-m-d H:i:s',$value['lastseen']), ''; $dtF = new DateTime("@0"); $dtT = new DateTime("@".round($value['count'])); echo $dtF->diff($dtT)->format($cfg['default_date_format']); } if ($cfg['stats_column_idle_time_switch'] == 1 || $adminlogin == 1) { echo ''; $dtF = new DateTime("@0"); $dtT = new DateTime("@".round($value['idle'])); echo $dtF->diff($dtT)->format($cfg['default_date_format']); } if ($cfg['stats_column_active_time_switch'] == 1 || $adminlogin == 1) { echo ''; $dtF = new DateTime("@0"); $dtT = new DateTime("@".(round($value['count'])-round($value['idle']))); echo $dtF->diff($dtT)->format($cfg['default_date_format']); } if ($cfg['stats_column_current_server_group_switch'] == 1 || $adminlogin == 1) { if ($value['grpid'] == 0) { echo 'groupicon  ' , $sqlhisgroup[$value['grpid']]['sgidname'] , '' , $sqlhisgroup[$value['grpid']]['sgidname'] , '',$lang['unknown'],'' , date('Y-m-d H:i:s',$value['grpsince']), ''; if (($value['except'] == 0 || $value['except'] == 1) && $value['nextup'] > 0) { $dtF = new DateTime("@0"); $dtT = new DateTime("@".$value['nextup']); echo $dtF->diff($dtT)->format($cfg['default_date_format']) , '',$lang['highest'],'',$lang['listexcept'],'groupicon  ' , $sqlhisgroup[$groupid]['sgidname'] , '' , $sqlhisgroup[$groupid]['sgidname'] , '
' , $lang['noentry'] , '
'; if($user_pro_seite != "all") { pagination($keysort,$keyorder,$user_pro_seite,$seiten_anzahl_gerundet,$seite,$getstring); } ?>