diff --git a/ground/controllers/IndexController.php b/ground/controllers/IndexController.php index 1d2b9c9..e95558f 100644 --- a/ground/controllers/IndexController.php +++ b/ground/controllers/IndexController.php @@ -4,14 +4,14 @@ class IndexController extends Controller { /** - * Действие по умолчанию + * Действие по умолчанию */ static function actionIndex() { - self::addScript('/js/jquery-2.1.0.min.js'); - self::addScript('/js/jquery-ui-1.10.4.custom.min.js'); + self::addScript('/js/jquery-2.1.0.min.js'); + self::addScript('/js/jquery-ui-1.10.4.custom.min.js'); self::addScript('/js/bootstrap.min.js'); - self::addScript('http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js'); + self::addScript('http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js'); self::addScript('http://maps.google.com/maps/api/js?v=3&sensor=false'); self::addScript('/js/tile/Google.js'); @@ -21,22 +21,22 @@ class IndexController extends Controller self::addScript('/js/app.js?ver=' . App::getConfig('version')); self::addScript('/js/jquery.cookie.js'); - self::addScript('/js/map.js?ver='.App::getConfig('version')); + self::addScript('/js/map.js?ver=' . App::getConfig('version')); self::addScript('/js/leaflet-routing-machine.js'); - self::addScript('/js/route.js?ver='.App::getConfig('version')); + self::addScript('/js/route.js?ver=' . App::getConfig('version')); self::addScript('/js/leaflet.markercluster.js'); self::addScript('/js/fotorama.js'); - self::addStyle('/css/style.css?ver='.App::getConfig('version')); - self::addStyle('http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css'); - self::addStyle('/css/bootstrap.min.css'); - self::addStyle('/css/bootstrap-theme.min.css'); + self::addStyle('/css/style.css?ver=' . App::getConfig('version')); + self::addStyle('http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css'); + self::addStyle('/css/bootstrap.min.css'); + self::addStyle('/css/bootstrap-theme.min.css'); self::addStyle('/css/leaflet-routing-machine.css'); self::addStyle('/css/MarkerCluster.css'); self::addStyle('/css/MarkerCluster.Default.css'); self::addStyle('/css/fotorama.css'); - if (!App::$user ) + if (!App::$user) self::addScript('//ulogin.ru/js/ulogin.js'); $category = Category::model()->getAll(array('order' => 'ord ASC')); @@ -45,42 +45,46 @@ class IndexController extends Controller if (App::$user && App::$user->id) { $routes = Route::model()->getByAuthor(App::$user->id); - self::addVar('user', App::$user->id); - } - else - { - self::addVar('user', '0'); - } + self::addVar('user', App::$user->id); + } else + { + self::addVar('user', '0'); + } - self::addVar('isAdmin', (int)(App::$user && App::$user->isAdmin == 1) ); + $favorites = array(); + if (App::$user && App::$user->id) + { + $favorites = Favorite::model()->getAllMy(); + } - $res = App::DB()->query("SELECT COUNT(`id`) pointsCount FROM `points`")->fetch(PDO::FETCH_ASSOC); - App::setConfig('title', $res['pointsCount'].' или даже больше поводов не сидеть дома'); + 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'])) + 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 .= ' Посмотреть на карте: http://wikipoints.ru/?point=' . $id; $point->descriptionHtml .= ' #wikipoints'; $og['title'] = $point->name . ' [wikipoints.ru]'; $og['description'] = $point->descriptionHtml; - $og['site_name'] = 'WikiPoints - '.$res['pointsCount'].' или даже больше поводов не сидеть дома'; + $og['site_name'] = 'WikiPoints - ' . $res['pointsCount'] . ' или даже больше поводов не сидеть дома'; $og['type'] = 'article'; - $og['url'] = 'http://wikipoints.ru/?point='.$id; + $og['url'] = 'http://wikipoints.ru/?point=' . $id; $og['image'] = $point->getImg(); - } - else if(isset($_GET['point']) && $_GET['point'] && strtolower($_GET['point']) == 'random') + } 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['site_name'] = 'WikiPoints - ' . $res['pointsCount'] . ' или даже больше поводов не сидеть дома'; $og['type'] = 'article'; $og['url'] = 'http://wikipoints.ru/?point=random'; $og['image'] = 'http://wikipoints.ru/img/compas.jpg'; @@ -90,6 +94,7 @@ class IndexController extends Controller 'categories' => $category, 'user' => App::$user, 'routes' => $routes, + 'favorites' => $favorites, 'og' => $og, )); } @@ -113,20 +118,20 @@ class IndexController extends Controller $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'); + $uLoginUser['identity'] = md5($uLoginUser['uid'] . $uLoginUser['network'] . '=P'); $user = User::model()->getByUID($uLoginUser['identity']); - if( !$user->id ) + 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'], - )); + 'uid' => $uLoginUser['identity'], + 'nick' => $uLoginUser['nickname'], + 'name' => $uLoginUser['first_name'], + 'profile' => $uLoginUser['profile'], + 'network' => $uLoginUser['network'], + 'photo' => $uLoginUser['photo_big'], + )); if (!$user) { @@ -157,10 +162,10 @@ class IndexController extends Controller print($xml->asXML()); } - static function actionTest() - { + static function actionTest() + { - var_dump( Favorite::model()->getAllMy() ); - } + var_dump(Favorite::model()->getAllMy()); + } } diff --git a/ground/models/Favorite.php b/ground/models/Favorite.php index 49ea852..9492d88 100644 --- a/ground/models/Favorite.php +++ b/ground/models/Favorite.php @@ -2,6 +2,7 @@ class Favorite extends Model { + function __construct($fromArray = array()) { $this->_tableName_ = 'favorites'; @@ -15,35 +16,36 @@ class Favorite extends Model return new self(); } - public static function addRemove($pointId) - { - if (!App::$user || !App::$user->id || !$pointId) - return false; - - $res = self::model()->getAll(array('where' => '`userId` = '.(int)App::$user->id.' AND `pointId` = '.(int)$pointId, 'limit'=>1)); - - if ($res) - { - return boolval(Favorite::model()->delete($res->id)); - } else { - return Favorite::model()->add(array('userId'=>App::$user->id, 'pointId'=>$pointId)); - } - } - - public function getAllMy() + public static function addRemove($pointId) { - if (!App::$user || !App::$user->id) - return false; + if (!App::$user || !App::$user->id || !$pointId) + return false; - return $this->getAll(array('where' => '`userId` = '.(int)App::$user->id)); + $res = self::model()->getAll(array('where' => '`userId` = ' . (int) App::$user->id . ' AND `pointId` = ' . (int) $pointId, 'limit' => 1)); + + if ($res) + { + return boolval(Favorite::model()->delete($res->id)); + } else + { + return Favorite::model()->add(array('userId' => App::$user->id, 'pointId' => $pointId)); + } } - public function checkIsMy($pointId) + public function getAllMy() { - if (!App::$user || !App::$user->id || !$pointId) - return false; + if (!App::$user || !App::$user->id) + return false; - return boolval($this->getAll(array('where' => '`userId` = '.(int)App::$user->id.' AND `pointId` = '.(int)$pointId))); + return $this->getAll(array('where' => '`userId` = ' . (int) App::$user->id)); } + + public function checkIsMy($pointId) + { + if (!App::$user || !App::$user->id || !$pointId) + return false; + + return boolval($this->getAll(array('where' => '`userId` = ' . (int) App::$user->id . ' AND `pointId` = ' . (int) $pointId))); + } + } - diff --git a/ground/views/indexTemplate.php b/ground/views/indexTemplate.php index 5a34d3f..fee7284 100644 --- a/ground/views/indexTemplate.php +++ b/ground/views/indexTemplate.php @@ -79,6 +79,13 @@
= $user ? '' : self::renderPartial('modals/login.php', null, true) ?>