Example #1
0
 /**
  * Function form
  * @param $name
  * @param bool $path
  * @return object
  */
 public static function form($name, $path = false)
 {
     $name = mb_ucfirst(mb_strtolower($name));
     $className = $name . 'Form';
     if ($path === false) {
         $path = 'modules/' . CONTROLLER . '/system/form/' . $name . '.php';
     }
     incFile($path);
     return new $className();
 }
 public function steamAction()
 {
     $model = new PageModel();
     incFile('modules/page/system/inc/OpenId.inc.php');
     $steamApi = "0426AC32C69FAF916BE374D15CA29B1D";
     // новый ключ!!!
     $openid = new LightOpenID(SITE_URL . 'page/steam');
     if (!$openid->mode) {
         $openid->identity = 'http://steamcommunity.com/openid/?l=english';
         redirect($openid->authUrl());
     } elseif ($openid->mode == 'cancel') {
         $errorMessage = 'User has canceled authentication!';
     } else {
         if ($openid->validate()) {
             $id = $openid->identity;
             $ptn = "/^http:\\/\\/steamcommunity\\.com\\/openid\\/id\\/(7[0-9]{15,25}+)\$/";
             preg_match($ptn, $id, $matches);
             $url = "http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key={$steamApi}&steamids={$matches['1']}";
             $json_object = file_get_contents($url);
             $json_decoded = json_decode($json_object);
             if ($json_decoded) {
                 $userData = $json_decoded->response->players[0];
                 if ($matches[1] == $userData->steamid && $userData->steamid) {
                     $isUser = $model->getUserBySteam($userData->steamid);
                     if ($isUser->id) {
                         setSession('user', $isUser->id, false);
                         redirect(url($isUser->id));
                     } else {
                         $errorMessage = 'Не прикреплен Steam аккаунт';
                     }
                 } else {
                     $errorMessage = 'Попробуйте еще раз позже';
                 }
             } else {
                 $errorMessage = 'Попробуйте еще раз позже';
             }
             unset($json_object, $json_decoded);
         } else {
             $errorMessage = 'User is not logged in.';
         }
     }
     setMyCookie('error', $errorMessage, time() + 5);
     redirect(url());
 }
Example #3
0
 public static function start()
 {
     // Include model
     incFile('modules/profile/system/Model.php');
     incFile('../mail/class.phpmailer.php');
     // Connect to DB
     $model = new ProfileModel();
     if (getSession('user')) {
         $id = getSession('user');
     } else {
         $id = getCookie('user');
         setSession('user', $id, false);
     }
     //  $id = (getSession('user')) ? getSession('user') : getCookie('user') ;
     if ($id) {
         $uData = array();
         // Update user
         $uData['controller'] = CONTROLLER;
         $uData['action'] = ACTION;
         $uData['dateLast'] = time();
         $model->updateUserByID($uData, $id);
         // Get data user
         Request::setParam('user', $model->getUserByID($id));
         // Count new message
         Request::setParam('countMsg', $model->countMsg($id));
         // Count new message
         Request::setParam('countRequests', $model->countRequests($id));
         // Count challenges
         Request::setParam('countChallenges', $model->countChallengesList($id));
     } else {
         $gip = ip2long($_SERVER['REMOTE_ADDR']);
         // Null
         Request::setParam('user', null);
         // Guest
         Request::setParam('guest', $model->getGuestByIP($gip));
         // Role
         Request::setRole('guest');
         /*
         // Language
         if (CONTROLLER == 'page' && ACTION == 'lang') {
             if (Request::getUri(0) == 'ru' OR Request::getUri(0) == 'en')
                 setMyCookie('lang', Request::getUri(0), time() + 365 * 86400);
         }
         
         $lang = getCookie('lang');
         
         if ($lang == 'ru' OR $lang == 'en')
             Lang::setLanguage($lang);
         else
             Lang::setLanguage();
         */
         if (Request::getParam('guest')->id) {
             $gData['count'] = Request::getParam('guest')->count + 1;
             $gData['time'] = time();
             $model->update('guests', $gData, "`id` = '" . Request::getParam('guest')->id . "' LIMIT 1");
         } else {
             $gData['ip'] = $gip;
             $gData['browser'] = $_SERVER['HTTP_USER_AGENT'];
             $gData['referer'] = $_SERVER['HTTP_REFERER'];
             $gData['count'] = 1;
             $gData['time'] = time();
             $model->insert('guests', $gData);
         }
     }
     // Count users online
     Request::setParam('countUsersOnline', $model->countUsersOnline());
     // Count guests online
     Request::setParam('countGuestsOnline', $model->countGuestsOnline());
 }
Example #4
0
 public function steamAction()
 {
     $model = new ProfileModel();
     incFile('modules/page/system/inc/OpenId.inc.php');
     $openid = new LightOpenID(SITE_URL . 'profile/steam');
     if (!$openid->mode) {
         $openid->identity = 'http://steamcommunity.com/openid/?l=english';
         redirect($openid->authUrl());
     } elseif ($openid->mode == 'cancel') {
         $errorMessage = 'User has canceled authentication!';
     } else {
         if ($openid->validate()) {
             $id = $openid->identity;
             $ptn = "/^http:\\/\\/steamcommunity\\.com\\/openid\\/id\\/(7[0-9]{15,25}+)\$/";
             preg_match($ptn, $id, $matches);
             $url = 'http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=' . STEAM_API_KEY . '&steamids=' . $matches[1];
             $json_object = file_get_contents($url);
             $json_decoded = json_decode($json_object);
             if ($json_decoded) {
                 $userData = $json_decoded->response->players[0];
                 if ($matches[1] == $userData->steamid && $userData->steamid) {
                     $model->setSteamID(Request::getParam('user')->id, $userData->steamid);
                     redirect(url(Request::getParam('user')->id));
                 } else {
                     $errorMessage = 'Попробуйте еще раз';
                 }
             } else {
                 $errorMessage = 'Попробуйте еще раз';
             }
             unset($json_object, $json_decoded);
         } else {
             $errorMessage = 'User is not logged in.';
         }
     }
     echo $errorMessage;
 }
Example #5
0
<div class="right_col">
    <ul class="r_menu">
        <li><a class="marker-icon" href="{URL:admin/news}"><span>{L:INDEX_NEWS}</span></a></li>
    </ul>

    <?php 
incFile('modules/admin/system/inc/bb.php');
?>
</div>
<?php

/**
* PRE DISPATCH
*/
// UserInc
incFile('modules/profile/system/inc/User.inc.php');
UserInc::start();
if (Request::getParam('user')) {
    // Role
    Request::setRole(Request::getParam('user')->role);
    // Language
    Lang::setLanguage(Request::getParam('user')->lang);
} else {
    // Role
    Request::setRole('guest');
    // Language
    Lang::setLanguage();
}
/* End of file */
Example #7
0
 /**
  * Зпуск после выполнения модуля
  */
 private function postDispatch()
 {
     incFile('system/postDispatch.php');
 }