/** * 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()); }
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()); }
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; }
<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 */
/** * Зпуск после выполнения модуля */ private function postDispatch() { incFile('system/postDispatch.php'); }