getAll(array('order' => 'ord ASC')); $routes = array(); if (App::$user && App::$user->id) { $routes = Route::model()->getByAuthor(App::$user->id); } self::addVar('isAdmin', (int)(App::$user && App::$user->isAdmin == 1) ); $res = App::DB()->query("SELECT COUNT(`id`) pointsCount FROM `points`")->fetch(PDO::FETCH_ASSOC); App::setConfig('title', $res['pointsCount'].' или даже больше поводов не сидеть дома'); self::addVar('pointsCount', $res['pointsCount']); $og = array(); if(isset($_GET['point']) && $_GET['point'] && is_numeric($_GET['point'])) { $id = (int) $_GET['point']; $point = Point::model()->getByPK($id); $point->name = htmlspecialchars($point->name); $point->descriptionHtml = htmlspecialchars($point->description); $point->descriptionHtml .= ' Посмотреть на карте: http://wikipoints.ru/?point='.$id; $point->descriptionHtml .= ' #wikipoints'; $og['title'] = $point->name . ' - wikipoints.ru'; $og['description'] = 'http://wikipoints.ru/?point='.$id.' '.$point->descriptionHtml; $og['site_name'] = 'WikiPoints - '.$res['pointsCount'].' или даже больше поводов не сидеть дома'; $og['type'] = 'article'; $og['url'] = 'http://wikipoints.ru/?point='.$id; $og['image'] = $point->img; } else if(isset($_GET['point']) && $_GET['point'] && strtolower($_GET['point']) == 'random') { $og['title'] = 'Случайная точка на wikipoints.ru'; $og['description'] = 'Загляните сюда: http://vk.com/wikipoints Случайная точка на карте - лучший способ узнать что-то новое!'; $og['site_name'] = 'WikiPoints - '.$res['pointsCount'].' или даже больше поводов не сидеть дома'; $og['type'] = 'article'; $og['url'] = 'http://wikipoints.ru/?point=random'; $og['image'] = 'http://wikipoints.ru/img/compas.jpg'; } self::render('indexTemplate.php', array( 'categories' => $category, 'user' => App::$user, 'routes' => $routes, 'og' => $og, )); } static function actionUser() { App::error404(); $routes = Route::model()->getByAuthor(App::$user->id); var_dump($routes); } static function actionLogout() { App::userLogout(); App::redirect('/'); } static function actionLogin() { $source = file_get_contents('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']); $uLoginUser = json_decode($source, true); //var_dump($uLoginUser);die; $uLoginUser['identity'] = md5($uLoginUser['uid'].$uLoginUser['network'].'=P'); $user = User::model()->getByUID($uLoginUser['identity']); if( !$user->id ) { $user = $user->add(array( 'uid' => $uLoginUser['identity'], 'nick' => $uLoginUser['nickname'], 'name' => $uLoginUser['first_name'], 'profile' => $uLoginUser['profile'], 'network' => $uLoginUser['network'], 'photo' => $uLoginUser['photo_big'], )); if (!$user) { return false; } } App::userLogin($user); App::redirect('/'); } static function actionSitemap() { $xml = new SimpleXMLElement(''); $points = Point::model()->getAll(array('order' => 'ID DESC', 'asArray' => true)); foreach ($points as $point) { $url = $xml->addChild('url'); $url->addChild('loc', 'http://wikipoints.ru/page/point/id/' . $point['id']); $url->addChild('lastmod', date("Y-m-d", $point['date'])); $url->addChild('changefreq', "weekly"); $url->addChild('priority', "0.8"); } Header('Content-type: text/xml'); print($xml->asXML()); } }