Пример #1
0
 public function postVote()
 {
     Input::merge(array_map('trim', Input::all()));
     $input = Input::all();
     $rules = array('MCUsername' => 'required|max:40', 'g-recaptcha-response' => 'required|recaptcha', 'sid' => 'required');
     $v = Validator::make($input, $rules);
     $sid = $input['sid'];
     $server = DB::table('mcservers')->where('mcs_id', '=', $sid)->first();
     if (!count($server)) {
         return Redirect::to('/minecraft/' . $sid)->withErrors("Ocorreu um erro com a validação do servidor");
     }
     if ($v->passes()) {
         if (mcservers::playerHasVoted($sid, $input['MCUsername']) || mcservers::ipHasVoted($sid, $_SERVER["HTTP_CF_CONNECTING_IP"])) {
             return Redirect::to('/minecraft/' . $sid)->withErrors("Já votaste hoje");
         }
         if ($server->mcs_votifier == 1) {
             $votifier = Votifier::newVote($server->mcs_ip, $server->mcs_vport, $server->mcs_votifierkey, $input['MCUsername']);
             if ($votifier == false) {
                 return Redirect::to('/minecraft/' . $sid)->withErrors("Não foi possivel enviar o voto para o servidor, porfavor contacta o admininstrador do mesmo");
             }
         }
         if (Auth::check()) {
             DB::table('users')->where('id', Auth::user()->id)->update(array('votes' => Auth::user()->votes + 1));
             utilities::log("Voted On Server " . $server->mcs_name);
         }
         DB::table('mcservers')->where('mcs_id', $sid)->update(array('mcs_tvotes' => $server->mcs_tvotes + 1, 'mcs_mvotes' => $server->mcs_mvotes + 1));
         DB::table('mcserversvotes')->insert(array('mcsv_sid' => $sid, 'mcsv_player' => $input['MCUsername'], 'mcsv_ip' => $_SERVER["HTTP_CF_CONNECTING_IP"], 'mcsv_day' => date("j"), 'mcsv_month' => date("n"), 'mcsv_year' => date("Y")));
         return Redirect::to('/minecraft/' . $sid)->With('success', 'Voto Registado!');
     } else {
         return Redirect::to('/minecraft/' . $sid)->withErrors($v);
     }
 }
Пример #2
0
$players[4] = 0;
//3 dias atraz
$players[3] = 0;
//2 dias atraz
$players[2] = 0;
//1 dias atraz
$players[1] = 0;
$servers = DB::table('mcservers')->where('mcs_uid', '=', Auth::user()->id)->get();
foreach ($servers as $server) {
    $players[7] = $players[7] + mcservers::getAVGPlayersMC($server->mcs_id, date("j", strtotime('-7 days')), date("n", strtotime('-7 days')), date("Y", strtotime('-7 days')));
    $players[6] = $players[6] + mcservers::getAVGPlayersMC($server->mcs_id, date("j", strtotime('-6 days')), date("n", strtotime('-6 days')), date("Y", strtotime('-6 days')));
    $players[5] = $players[5] + mcservers::getAVGPlayersMC($server->mcs_id, date("j", strtotime('-5 days')), date("n", strtotime('-5 days')), date("Y", strtotime('-5 days')));
    $players[4] = $players[4] + mcservers::getAVGPlayersMC($server->mcs_id, date("j", strtotime('-4 days')), date("n", strtotime('-4 days')), date("Y", strtotime('-4 days')));
    $players[3] = $players[3] + mcservers::getAVGPlayersMC($server->mcs_id, date("j", strtotime('-3 days')), date("n", strtotime('-3 days')), date("Y", strtotime('-3 days')));
    $players[2] = $players[2] + mcservers::getAVGPlayersMC($server->mcs_id, date("j", strtotime('-2 days')), date("n", strtotime('-2 days')), date("Y", strtotime('-2 days')));
    $players[1] = $players[1] + mcservers::getAVGPlayersMC($server->mcs_id, date("j", strtotime('-1 days')), date("n", strtotime('-1 days')), date("Y", strtotime('-1 days')));
}
?>
@extends('layout.panel')
@section('css')
	{{ HTML::style(URL::to('/resources/css/morris.css')) }}
@stop
@section('body')
				<div class="row">
					<div class="col-lg-12">
						<h1 class="page-header">Painel De Controlo</h1>
					<div class="panel panel-default">
						<div class="panel-heading">
							<i class="fa fa-bar-chart-o fa-fw"></i> Média De Jogadores Online Por Dia
						</div>
						<!-- /.panel-heading -->
Пример #3
0
<?php

$code = "q2nQNl8k4xlfPEa8kEBCqIixrnxn8jJwgY6cgzYA6AixW3nX7kdVbBNbuNpO";
if (!isset($_GET['a'])) {
    die;
} elseif ($_GET['a'] != $code) {
    die;
}
$day = date("j");
$month = date("n");
$year = date("Y");
$servers = DB::table('mcservers')->get();
foreach ($servers as $server) {
    if ($server->mcs_qport == null) {
        mcservers::checkNoQuery($server->mcs_id, $server->mcs_ip, $server->mcs_port, $day, $month, $year);
    } else {
        mcservers::checkQuery($server->mcs_id, $server->mcs_ip, $server->mcs_qport, $day, $month, $year);
    }
}
settings::set('lastCheck', time());
banners::generateMC();
Пример #4
0
 public static function checkQuery($sid, $ip, $port, $day, $month, $year, $timeout = 2)
 {
     $timer = MicroTime(true);
     $query = new MinecraftQuery();
     try {
         $query->Connect($ip, $port, $timeout);
     } catch (MinecraftQueryException $e) {
         $Exception = $e;
     }
     $timer = Number_Format(MicroTime(true) - $timer, 2, '.', '');
     return $query;
     $info = $query->GetInfo();
     if ($info === false) {
         DB::table('mcserverschecks')->insert(array('mcsc_sid' => $sid, 'mcsc_online' => 0, 'mcsc_players' => 0, 'mcsc_ping' => 0, 'mcsc_day' => $day, 'mcsc_month' => $month, 'mcsc_year' => $year));
         DB::table('mcservers')->where('mcs_id', $sid)->update(array('mcs_players' => 0, 'mcs_status' => 0));
     } else {
         DB::table('mcserverschecks')->insert(array('mcsc_sid' => $sid, 'mcsc_online' => 1, 'mcsc_players' => $info["Players"], 'mcsc_ping' => $timer, 'mcsc_day' => $day, 'mcsc_month' => $month, 'mcsc_year' => $year));
         DB::table('mcservers')->where('mcs_id', $sid)->update(array('mcs_maxplayers' => $info["MaxPlayers"], 'mcs_players' => $info["Players"], 'mcs_status' => 1, 'mcs_map' => substr($info["Map"], 0, 50), 'mcs_plugins' => substr($info["Plugins"], 0, 255), 'mcs_motd' => mcservers::motd(substr($info["HostName"], 0, 255))));
     }
 }
Пример #5
0
 public function postUpdateMCServer()
 {
     Input::merge(array_map('trim', Input::all()));
     $input = Input::all();
     $rules = array('serverName' => 'required|max:100', 'serverDesc' => 'required|max:255', 'serverIp' => 'max:35', 'serverPort' => 'max:6', 'serverAliase' => 'max:100', 'serverVersion' => 'required', 'banner' => 'image|image_size:=468,=60', 'background' => 'image|image_size:>999,>349', 'serverType' => 'required', 'g-recaptcha-response' => 'required|recaptcha');
     $id = DB::table('mcservers')->where('mcs_id', '=', $input['sid'])->where('mcs_uid', '=', Auth::user()->id)->first();
     if (!count($id)) {
         return Redirect::to(URL::to("/panel/servers"))->withInput()->WithErrors("Ocorreu um erro com a validação do servidor");
     }
     $v = Validator::make($input, $rules);
     if ($v->passes()) {
         if (mcservers::getVersion($input['serverVersion']) == false) {
             return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("Ocorreu um erro com a validação da versão");
         }
         if (!mcservers::serverTypeExist($input['serverType'])) {
             return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("Ocorreu um erro com a validação do tipo de Servidor");
         }
         if (isset($input['serverV'])) {
             $input['serverV'] = 1;
             if ($input['serverVPort'] == null) {
                 return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("Para ativar o Votifier tens de preencher a porta");
             }
             if ($input['serverVPKey'] == null) {
                 return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("Para ativar o Votifier tens de preencher a Public Key");
             }
         } else {
             $input['serverV'] = 0;
             $input['serverVPort'] = null;
             $input['serverVPKey'] = null;
         }
         if (Input::hasFile('banner')) {
             $image = Input::file('banner');
             if ($image->getClientOriginalExtension() != "jpg" && $image->getClientOriginalExtension() != "png" && $image->getClientOriginalExtension() != "gif") {
                 return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("As extenções permitidas para os banners são .jpg, .png e .gif");
             }
             if ($image->getSize() > "1000024") {
                 return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("O tamanho maximo do banner é de 1MB");
             }
         }
         if (Input::hasFile('background') && $id->mcs_premium == 1) {
             $background = Input::file('background');
             if ($background->getClientOriginalExtension() != "jpg") {
                 return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("A única extenção permitida para os Backgrounds é .jpg");
             }
             if ($background->getSize() > "2000024") {
                 return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors("O tamanho maximo do background é de 2MB");
             }
             if (file_exists(public_path() . "/resources/images/minecraft/backgrounds/" . $input['sid'] . ".jpg")) {
                 unlink(public_path() . "/resources/images/minecraft/backgrounds/" . $input['sid'] . ".jpg");
             }
             $newImage = imagecreatefromjpeg($background);
             imagejpeg($newImage, public_path() . "/resources/images/minecraft/backgrounds/" . $id->mcs_id . ".jpg", 100);
             utilities::clearCloudflareImageBackground($id->mcs_id, "minecraft");
         }
         if ($id->mcs_premium == 1 && isset($input['header'])) {
             $header = 1;
         } else {
             $header = 0;
         }
         $tags = array();
         if (isset($input['tagAdventure'])) {
             $tags['Adventure'] = 1;
         } else {
             $tags['Adventure'] = 0;
         }
         if (isset($input['tagCreative'])) {
             $tags['Creative'] = 1;
         } else {
             $tags['Creative'] = 0;
         }
         if (isset($input['tagMinigames'])) {
             $tags['Minigames'] = 1;
         } else {
             $tags['Minigames'] = 0;
         }
         if (isset($input['tagPrison'])) {
             $tags['Prison'] = 1;
         } else {
             $tags['Prison'] = 0;
         }
         if (isset($input['tagSurvival'])) {
             $tags['Survival'] = 1;
         } else {
             $tags['Survival'] = 0;
         }
         if (isset($input['tagWhitelist'])) {
             $tags['Whitelist'] = 1;
         } else {
             $tags['Whitelist'] = 0;
         }
         DB::table('mcservers')->where('mcs_id', '=', $id->mcs_id)->update(array('mcs_name' => $input['serverName'], 'mcs_desc' => $input['serverDesc'], 'mcs_website' => $input['serverSite'], 'mcs_header' => $header, 'mcs_msg' => $input['serverMsg'], 'mcs_aliase' => $input['serverAliase'], 'mcs_version' => $input['serverVersion'], 'mcs_votifier' => $input['serverV'], 'mcs_vport' => $input['serverVPort'], 'mcs_votifierkey' => $input['serverVPKey'], 'mcs_serverType' => $input['serverType'], 'mcs_tagAdventure' => $tags['Adventure'], 'mcs_tagCreative' => $tags['Creative'], 'mcs_tagMinigames' => $tags['Minigames'], 'mcs_tagPrison' => $tags['Prison'], 'mcs_tagSurvival' => $tags['Survival'], 'mcs_tagWhitelist' => $tags['Whitelist']));
         utilities::log("Updated Minecraft Server " . $id->mcs_id);
         if (Input::hasFile('banner')) {
             if (file_exists(public_path() . "/resources/images/minecraft/banners/" . $input['sid'] . ".jpg")) {
                 unlink(public_path() . "/resources/images/minecraft/banners/" . $input['sid'] . ".jpg");
             }
             if (file_exists(public_path() . "/resources/images/minecraft/banners/" . $input['sid'] . ".png")) {
                 unlink(public_path() . "/resources/images/minecraft/banners/" . $input['sid'] . ".png");
             }
             if (file_exists(public_path() . "/resources/images/minecraft/banners/" . $input['sid'] . ".gif")) {
                 unlink(public_path() . "/resources/images/minecraft/banners/" . $input['sid'] . ".gif");
             }
             $filename = $id->mcs_id . '.' . $image->getClientOriginalExtension();
             $publicpath = public_path() . '/resources/images/minecraft/banners/' . $filename;
             if ($image->getClientOriginalExtension() == "jpg") {
                 $newImage = imagecreatefromjpeg(Input::file('banner'));
                 imagejpeg($newImage, public_path() . "/resources/images/minecraft/banners/" . $id->mcs_id . ".jpg", 100);
             } elseif ($image->getClientOriginalExtension() == "png") {
                 $newImage = imagecreatefrompng(Input::file('banner'));
                 imagejpeg($newImage, public_path() . "/resources/images/minecraft/banners/" . $id->mcs_id . ".png", 100);
             } elseif ($image->getClientOriginalExtension() == "gif") {
                 $newImage = imagecreatefromgif(Input::file('banner'));
                 imagejpeg($newImage, public_path() . "/resources/images/minecraft/banners/" . $id->mcs_id . ".gif", 100);
             }
         }
         return Redirect::to(URL::to("/panel/servers"))->With('success', 'Servidor Atualizado.');
     } else {
         return Redirect::to(URL::to("/panel/minecraft/" . $id->mcs_id))->withInput()->WithErrors($v);
     }
 }