• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Help me Please Active Online and afk

Jean Dark

Member
Joined
Jan 6, 2019
Messages
38
Reaction score
14
Location
Unknow
<?php
if(!defined('INITIALIZED'))
exit;

$cache_sec = 1;
$info = array(
0 => array($config['server']['location'], date("d/m/Y")),
1 => array('EUA', date("d/m/Y"))
);

$id=0;
if(isset($_POST['world'])) {
$f = null;
foreach($config['site']['worlds'] as $k => $v)
if($v == $_POST['world']) {
$f = true;
$id = $k;
break;
}
if(!$f)
$_POST['world'] = $config['site']['worlds'][0];
} else $_POST['world'] = $config['site']['worlds'][0];

$order = 'name_asc';
if(isset($_REQUEST['order']) && in_array($_REQUEST['order'], array('name_desc', 'level_asc','level_desc','vocation_asc','vocation_desc')))
$order = $_REQUEST['order'];


if(count($config['site']['worlds']) > 1) {
$main_content ='
<form action="?subtopic=whoisonline" method="post">
<div class="TableContainer">
<table class="Table1" cellpadding="0" cellspacing="0">
<div class="CaptionContainer">
<div class="CaptionInnerContainer">
<span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
<span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
<div class="Text">World Selection</div>
<span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
<span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
<span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
</div>
</div>
<tr>
<td>
<div class="InnerTableContainer">
<table width="100%">
<tr>
<td style="vertical-align:middle" class="LabelV150">World Name:</td>
<td style="width:170px">
<select size="1" name="world" style="width:165px">';
foreach($config['site']['worlds'] as $v)
$main_content .= '<option value="'.$v.'"'.($v == $_POST['world'] ? ' selected="selected"' : '').'>'.$v.'</option>';
$main_content .= '
</select>
</td>
<td style="text-align:left">
<div class="BigButton" style="background-image:url('.$layout_name.'/images/buttons/sbutton.gif)">
<div onmouseover="MouseOverBigButton(this)" onmouseout="MouseOutBigButton(this)"><div class="BigButtonOver" style="background-image:url('.$layout_name.'/images/buttons/sbutton_over.gif)"></div>
<input class="ButtonText" type="image" name="Submit" alt="Submit" src="'.$layout_name.'/images/buttons/_sbutton_submit.gif"/>
</div>
</div>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
</form><br/>
';
}
$main_content .=
'<div class="TableContainer">
<table class="Table1" cellpadding="0" cellspacing="0">
<div class="CaptionContainer">
<div class="CaptionInnerContainer">
<span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
<span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
<div class="Text">World Information</div>
<span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
<span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
<span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
</div>
</div>
<tr>
<td>
<div class="InnerTableContainer">
<table width="100%">
<tr>
<td class="LabelV150">Status:</td>
<td><b><span class="ff_white">O'.($config['status']['serverStatus_online'] == 1 ? 'n' : 'ff').'line</span></td>

</tr>
<tr>
<td class="LabelV150">Players Online:</b></td>
<td>';
$f = 'cache/whoisonline-'.$_POST['world'].'-'.$order.'.tmp';
$ff = 'cache/whoisonline-'.$_POST['world'].'-record.tmp';
if(file_exists($f) && filemtime($f) > (time() - $cache_sec)) {
$cp = file_get_contents($f);
$cached = null;
if(file_exists($f) && filemtime($f) > (time() - $cache_sec)) {
$e = explode('|', file_get_contents($ff));
$n = $e[0];
$c = $e[1];
$cached = true;
}
}
else {
$cp = '';
$n = 0;
$q = 'SELECT * FROM players WHERE world_id='.$id.' AND online=1';
if(in_array($order, array('name_asc','name_desc','level_asc','level_desc')))
$q .= ' ORDER BY '.str_replace('_', ' ', $order);

if(in_array($order, array('vocation_asc','vocation_desc'))) {
$a = array();
foreach($SQL->query($q)->fetchAll() as $p)
$a[] = array($p['name'], $p['level'], $vocation_name[$p['promotion']][$p['vocation']]);
function cmp($a, $b) {
$r = strcmp($a[2], $b[2]);
$r = $GLOBALS['order'] == 'vocation_desc' ? ($r == 1 ? -1 : ($r == -1 ? 1 : 0)) : $r;
return ($r == 0 && $a[1] < $b[1]) ? 1 : $r;
}
usort($a, 'cmp');
foreach($a as $p) {
$n++;
$cp .= '<tr class="'.(is_int($n/2)?'Odd':'Even').'" style="text-align:right"><td style="width:70%;text-align:left"><a href="?subtopic=characters&name='.urlencode($p[0]).'">'.$p[0].'</a></td><td style="width:10%">'.$p[1].'</td><td style="width:20%">'.str_replace(' ','&#160;',$p[2]).'</td></tr>';

}

}
else {
$l = array();

foreach($SQL->query($q)->fetchAll() as $p) {
$n++;
$cp .= '<tr class="'.(is_int($n/2)?'Odd':'Even').'" style="text-align:right">';
$cp .= '<td style="width:70%;text-align:left">';
if($order == 'name_asc') {
$tmp = strtoupper($p['name'][0]);
if(!in_array($tmp, $l)) {
$l[] = $tmp;
$cp .= '<a name="'.$tmp.'"></a>';
}
}
$cp .= ' <div style="position: relative; float: left; height: 32px; width: 32px;">
<div style="position: absolute; left: -32px; top: -32px;">
<img src="./outfit.php?id='.$p['looktype'].'&addons='.$p['lookaddons'].'&head='.$p['lookhead'].'&body='.$p['lookbody'].'&legs='.$p['looklegs'].'&feet='.$p['lookfeet'].'">
</div>
</div><a href="?subtopic=characters&name='.urlencode($p['name']).'">'.$p['name'].'</a></td><td style="width: 10%">'.$p['level'].'</td><td style="width:20%">'.str_replace(' ','&#160;',$vocation_name[$p['promotion']][$p['vocation']]).'</td></tr>';
}

}
file_put_contents($f, $cp);
}
if(!$cached) {
$r=$SQL->query('SELECT MAX(record) as r,MAX(timestamp) as t FROM server_record WHERE world_id='.$id)->fetch();
$c = $r['r'].'</span> players (on '.date('M&#160;d&#160;Y,&#160;H:i:s&#160;T', $r['t']).')';
file_put_contents($ff, $n.'| '.$c);
}
$q = $SQL->query('SELECT name,online,group_id, lookbody, lookfeet, lookhead, looklegs, looktype, lookaddons world_id FROM players WHERE players.group_id > 1 ORDER BY group_id DESC');
$number_of_players_online = 0;
$online = $SQL->query("SELECT COUNT(*) FROM players WHERE online > 0")->fetch();

$main_content .='<b><span class="ff_white">';
$main_content .= $config['status']['serverStatus_players'] .' </span>(<span class="ff_white">'.$config['status']['serverStatus_players'] .' ' . (($config['status']['serverStatus_players'] > 1) ? '' : '') . '</span> ACTIVE, <span class="ff_white">'.($number_of_players_online-$config['status']['serverStatus_players']).' ' . (($number_of_players_online-$config['status']['serverStatus_players'] > 1) ? '' : '') . '</span> AFK)</b></td>
</tr>
<tr>
<td class="LabelV150">Online Record:</td>
<td><b><span class="ff_white">'.$c.'</b></td>
</tr>
<tr>
<td class="LabelV150">Creation Date:</td>
<td><b>15/06</b></td>
</tr>
<tr>
<td class="LabelV150">Location:</td>
<td><b>Europe</b></td>
</tr>
<tr>
<td class="LabelV150">PvP Type:</b></td>
<td>';
$w=strtolower($config['server']['worldType']);
if(in_array($w, array('pvp','2','normal','open','openpvp')))
$main_content .= '<b>Open PvP</b>';
elseif(in_array($w, array('no-pvp','nopvp','non-pvp','nonpvp','1','safe','optional','optionalpvp')))
$main_content .= 'Optional PvP';
elseif(in_array($w, array('pvp-enforced','pvpenforced','pvp-enfo','pvpenfo','pvpe','enforced','enfo','3','war','hardcore','hardcorepvp')))
$main_content .= '<b>Hardcore PvP</b>';
$main_content .= '</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div><br/>
<div class="TableContainer">
<table class="Table2" cellpadding="0" cellspacing="0">
<div class="CaptionContainer">
<div class="CaptionInnerContainer">
<span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
<span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
<div class="well-header">Players Online';


if($order == 'name_asc')
$main_content .= '<span class="TableHeadlineNavigation"> [
<a href="#A">A</a>
<a href="#B">B</a>
<a href="#C">C</a>
<a href="#D">D</a>
<a href="#E">E</a>
<a href="#F">F</a>
<a href="#G">G</a>
<a href="#H">H</a>
<a href="#I">I</a>
<a href="#J">J</a>
<a href="#K">K</a>
<a href="#L">L</a>
<a href="#M">M</a>
<a href="#N">N</a>
<a href="#O">O</a>
<a href="#P">P</a>
<a href="#Q">Q</a>
<a href="#R">R</a>
<a href="#S">S</a>
<a href="#T">T</a>
<a href="#U">U</a>
<a href="#V">V</a>
<a href="#W">W</a>
<a href="#X">X</a>
<a href="#Y">Y</a>
<a href="#Z">Z</a> ]&#160;&#160;</span>';
$main_content .= '</div>
<span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
<span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
<span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
<span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
</div>
</div>
<tr>
<td>
<div class="InnerTableContainer">
<table width="100%">
<tr class="LabelH">
<td style="text-align:left;width:60%">Name&#160;&#160;<small style="font-weight:normal">[<a href="?subtopic=whoisonline&world='.$POST['world'].'&order=name'.($order == 'name_asc' ? 'desc' : 'asc').'">sort</a>]</small>
<img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'name_asc' ? 'content/order_desc' : ($order == 'name_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td>
<td style="text-align:left;width:10%">Level&#160;&#160;
<small style="font-weight:normal">[<a href="?subtopic=whoisonline&world='.$POST['world'].'&order=level'.($order == 'level_asc' ? 'desc' : 'asc').'">sort</a>]</small>
<img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'level_asc' ? 'content/order_desc' : ($order == 'level_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td>
<td style="text-align:left;width:20%">Vocation&#160;&#160;<small style="font-weight:normal">[<a href="?subtopic=whoisonline&world='.$POST['world'].'&order=vocation'.($order == 'vocation_asc' ? 'desc' : 'asc').'">sort</a>]</small>
<img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'vocation_asc' ? 'content/order_desc' : ($order == 'vocation_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td>
</tr>';

$main_content .= $cp;
if (!$cp){$main_content .='<tr><td colspan="3" align="center"><i>This server no has players online.</i></td></tr>';}
$main_content .='
</table>
</div>
</table>
</div>
</td>
</tr>';
?>
 

Attachments

Solution
This aac is from 20(09/10) ( modified version of gesior200(8?) )
Consider using newer versions;
This aac is from 20(09/10) ( modified version of gesior200(8?) )
Consider using newer versions;
 
Solution
Back
Top