#114 seperated teamspeak from wow server saimod, small fixes

This commit is contained in:
Ulf Gebhardt 2016-05-10 16:19:20 +02:00
parent d8f76febc2
commit b99bfccdc2
16 changed files with 94 additions and 31 deletions

View File

@ -1,6 +1,7 @@
<?php
require_once dirname(__FILE__).'/saimod_mojotrollz_servers/autoload.inc';
require_once dirname(__FILE__).'/saimod_mojotrollz_server_handling/autoload.inc';
require_once dirname(__FILE__).'/saimod_mojotrollz_teamspeak/autoload.inc';
require_once dirname(__FILE__).'/saimod_mojotrollz_beta/autoload.inc';
require_once dirname(__FILE__).'/saimod_mojotrollz_downloads/autoload.inc';
require_once dirname(__FILE__).'/saimod_mojotrollz_npc_vendor_template/autoload.inc';

View File

@ -28,7 +28,7 @@ class saimod_mojotrollz_beta extends \SYSTEM\SAI\SaiModule {
$vars = \array_merge($vars, \SYSTEM\PAGE\text::tag('time'));
return \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_mojotrollz_beta/tpl/beta.tpl'))->SERVERPATH(), $vars);}
public static function html_li_menu(){return '<li class=""><a data-toggle="tooltip" data-placement="left" title="Mojotrollz Beta Codes" href="#!mojotrollz_beta"><span class="glyphicon glyphicon-user" aria-hidden="true"></span>&nbsp;&nbsp;Mojotrollz Beta</a></li>';}
public static function html_li_menu(){return '<li class=""><a data-toggle="tooltip" data-placement="left" title="Mojotrollz Beta Codes" href="#!mojotrollz_beta"><span class="glyphicon glyphicon-user" aria-hidden="true"></span>&nbsp;&nbsp;Beta</a></li>';}
public static function right_public(){return false;}
public static function right_right(){return \SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI);}
public static function js(){return array(new \PSAI('saimod_mojotrollz_beta/js/saimod_mojotrollz_beta.js'));}

View File

@ -1,6 +1,6 @@
<?php
namespace SQL;
class DATA_SAIMOD_MOJOTROLLZ_SERVERS extends \SYSTEM\DB\QI {
class DATA_SAIMOD_MOJOTROLLZ_DOWNLOADS extends \SYSTEM\DB\QI {
public static function get_class(){return \get_class();}
public static function files_mysql(){
return array( (new \PSAI('/saimod_mojotrollz_downloads/sql/mysql/system_page.sql'))->SERVERPATH(),

View File

@ -1,4 +1,4 @@
<?php
\SYSTEM\autoload::registerFolder(dirname(__FILE__),'SQL');
\SYSTEM\autoload::registerFolder(dirname(__FILE__).'/qq/','SQL');
\SYSTEM\SQL\setup::register('SQL\\DATA_SAIMOD_MOJOTROLLZ_SERVERS');
\SYSTEM\SQL\setup::register('SQL\\DATA_SAIMOD_MOJOTROLLZ_DOWNLOADS');

View File

@ -1,12 +1,8 @@
function init_saimod_mojotrollz_server(){
{
load_visualisation_mojotrollz_server('vis_ts', 'stats_ts', '#filter_vis_ts', 'Players on Teamspeak', 900,400);
load_visualisation_mojotrollz_server('vis_tbc', 'stats_tbc', '#filter_vis_tbc', 'Players on WoW-TBC', 400,250);
load_visualisation_mojotrollz_server('vis_classic', 'stats_classic', '#filter_vis_classic', 'Players on WoW-Classic', 400,250);
$('#filter_vis_ts').on('change',function(){
load_visualisation_mojotrollz_server('vis_ts', 'stats_ts', '#filter_vis_ts', 'Players on Teamspeak', 900,400);
})
$('#filter_vis_tbc').on('change',function(){
load_visualisation_mojotrollz_server('vis_tbc', 'stats_tbc', '#filter_vis_tbc', 'Players on WoW-TBC', 400,250);
})

View File

@ -14,7 +14,7 @@ class saimod_mojotrollz_server_handling extends \SYSTEM\SAI\SaiModule {
$vars['tbc_players_online'] = self::online_tbc();
$vars['tbc_test_players_online'] = self::online_tbc_test();
return \SYSTEM\PAGE\replace::replaceFile(dirname(__FILE__).'/tpl/main.tpl', $vars);}
public static function html_li_menu(){return '<li class=""><a data-toggle="tooltip" data-placement="left" title="Mojotrollz Server" href="#!mojotrollz_server"><span class="glyphicon glyphicon-home" aria-hidden="true"></span>&nbsp;&nbsp;Mojotrollz Server</a></li>';}
public static function html_li_menu(){return '<li class=""><a data-toggle="tooltip" data-placement="left" title="Mojotrollz Server" href="#!mojotrollz_server"><span class="glyphicon glyphicon-home" aria-hidden="true"></span>&nbsp;&nbsp;WoW Servers</a></li>';}
public static function right_public(){return false;}
public static function right_right(){return \SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI);}
public static function js(){return array(new \PSAI('saimod_mojotrollz_server_handling/js/saimod_mojotrollz_server_handling.js'));}

View File

@ -3,29 +3,6 @@
<div class="panel-body">
<button id="btn_update" class="btn-primary btn btn-sm" style="margin-right: 15px; height: 32px; font-size: 13px;"><span class="glyphicon glyphicon-refresh" aria-hidden="true"></span> Update</button>
<button id="btn_changes" class="btn-warning btn btn-sm" style="margin-right: 15px; height: 32px; font-size: 13px;"><span class="glyphicon glyphicon-search" aria-hidden="true"></span> Find Changes</button>
<br>
<br>
<div id="vis_ts"></div>
<select id="filter_vis_ts">
<option value="2692000">30d</option>
<option value="1209600">14d</option>
<option value="604800">7d</option>
<option value="172800">2d</option>
<option value="86400">1d</option>
<option value="43200">12h</option>
<option value="21600">6h</option>
<option value="14400">4h</option>
<option value="7200">2h</option>
<option value="3600">1h</option>
<option value="1800">30m</option>
<option value="600" selected>10m</option>
<option value="300">5m</option>
<option value="60">1m</option>
<option value="30">30s</option>
<option value="10">10s</option>
<option value="5">5s</option>
<option value="1">1s</option>
</select>
</div>
</div>
<div class="row">

View File

@ -0,0 +1,4 @@
<?php
require_once dirname(__FILE__).'/sql/autoload.inc';
\SYSTEM\autoload::registerFolder(dirname(__FILE__),'SAI');
\SYSTEM\SAI\sai::register('\SAI\saimod_mojotrollz_teamspeak');

View File

@ -0,0 +1,28 @@
function init_saimod_mojotrollz_teamspeak(){
load_visualisation_mojotrollz_server('vis_ts', 'stats_ts', '#filter_vis_ts', 'Players on Teamspeak', 900,400);
$('#filter_vis_ts').on('change',function(){
load_visualisation_mojotrollz_server('vis_ts', 'stats_ts', '#filter_vis_ts', 'Players on Teamspeak', 900,400);
})
}
function load_visualisation_mojotrollz_server(div, stats, filter, name, width, height){
$.getJSON('./sai.php?sai_mod=.SAI.saimod_mojotrollz_teamspeak&action='+stats+'&filter='+$(filter).val(),function(json){
if(!json || json.status != true || !json.result){
return;}
json = json.result;
var data = new google.visualization.DataTable();
first = true;
$.each(json[0], function(key, value){
if(first){
data.addColumn('datetime',key);
first = false;
} else {
data.addColumn('number',key);
}
});
$.each(json, function(key, value){first = true; data.addRow($.map(value, function(v) { if(first){first=false;return [new Date(v)];}else{return [(v == null || parseFloat(v) <= 0) ? parseFloat(0) : parseFloat(v)];}}));});
var options = {title: name, aggregationTarget: 'category', selectionMode: 'multiple', curveType: 'function', /*focusTarget: 'category',*/ chartArea:{left:40,top:40}, vAxis:{logScale: false}, interpolateNulls: false, width: width, height: height};
new google.visualization.LineChart(document.getElementById(div)).draw(data, options);
});
}

View File

@ -0,0 +1,15 @@
<?php
namespace SAI;
class saimod_mojotrollz_teamspeak extends \SYSTEM\SAI\SaiModule {
public static function sai_mod__SAI_saimod_mojotrollz_teamspeak(){
$vars = array();
return \SYSTEM\PAGE\replace::replaceFile(dirname(__FILE__).'/tpl/main.tpl', $vars);}
public static function html_li_menu(){return '<li class=""><a data-toggle="tooltip" data-placement="left" title="Mojotrollz Teamspeak" href="#!mojotrollz_teamspeak"><span class="glyphicon glyphicon-headphones" aria-hidden="true"></span>&nbsp;&nbsp;Teamspeak</a></li>';}
public static function right_public(){return false;}
public static function right_right(){return \SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI);}
public static function js(){return array(new \PSAI('saimod_mojotrollz_teamspeak/js/saimod_mojotrollz_teamspeak.js'));}
//public static function css(){}
public static function sai_mod__SAI_saimod_mojotrollz_teamspeak_action_stats_ts($filter = 600){
return \SYSTEM\LOG\JsonResult::toString(\SQL\STATS_TS::QA(array($filter)));}
}

View File

@ -0,0 +1,9 @@
<?php
namespace SQL;
class DATA_SAIMOD_MOJOTROLLZ_TEAMSPEAK extends \SYSTEM\DB\QI {
public static function get_class(){return \get_class();}
public static function files_mysql(){
return array( (new \PSAI('/saimod_mojotrollz_teamspeak/sql/mysql/system_page.sql'))->SERVERPATH(),
(new \PSAI('/saimod_mojotrollz_teamspeak/sql/mysql/system_api.sql'))->SERVERPATH());
}
}

View File

@ -0,0 +1,4 @@
<?php
\SYSTEM\autoload::registerFolder(dirname(__FILE__),'SQL');
\SYSTEM\autoload::registerFolder(dirname(__FILE__).'/qq/','SQL');
\SYSTEM\SQL\setup::register('SQL\\DATA_SAIMOD_MOJOTROLLZ_TEAMSPEAK');

View File

@ -0,0 +1,2 @@
REPLACE INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5500, 42, 0, 0, '_SAI_saimod_mojotrollz_teamspeak', 'action', NULL);
REPLACE INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5501, 42, 3, 5500, NULL, 'filter', 'INT');

View File

@ -0,0 +1 @@
REPLACE INTO `system_page` (`id`, `group`, `name`, `state`, `parent_id`, `login`, `type`, `div`, `url`, `func`, `php_class`) VALUES (550, 42, 'mojotrollz_teamspeak', 'mojotrollz_teamspeak', -1, 0, 0, '#content', './sai.php?sai_mod=.SAI.saimod_mojotrollz_teamspeak', 'init_saimod_mojotrollz_teamspeak', '\\SAI\\saimod_mojotrollz_teamspeak');

View File

@ -0,0 +1,26 @@
<div class="panel panel-default">
<div class="panel-heading"><h4>Mojotrollz Teamspeak</h4></div>
<div class="panel-body">
<div id="vis_ts"></div>
<select id="filter_vis_ts">
<option value="2692000">30d</option>
<option value="1209600">14d</option>
<option value="604800">7d</option>
<option value="172800">2d</option>
<option value="86400">1d</option>
<option value="43200">12h</option>
<option value="21600">6h</option>
<option value="14400">4h</option>
<option value="7200">2h</option>
<option value="3600">1h</option>
<option value="1800">30m</option>
<option value="600" selected>10m</option>
<option value="300">5m</option>
<option value="60">1m</option>
<option value="30">30s</option>
<option value="10">10s</option>
<option value="5">5s</option>
<option value="1">1s</option>
</select>
</div>
</div>