начата работа по выводу избранного + странное выравнивание строчек

This commit is contained in:
Krivchikov Dmitry 2014-09-26 21:45:24 +04:00
parent 2a253676b4
commit 7a762de04d
3 changed files with 78 additions and 64 deletions

View File

@ -21,13 +21,13 @@ class IndexController extends Controller
self::addScript('/js/app.js?ver=' . App::getConfig('version')); self::addScript('/js/app.js?ver=' . App::getConfig('version'));
self::addScript('/js/jquery.cookie.js'); 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/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/leaflet.markercluster.js');
self::addScript('/js/fotorama.js'); self::addScript('/js/fotorama.js');
self::addStyle('/css/style.css?ver='.App::getConfig('version')); self::addStyle('/css/style.css?ver=' . App::getConfig('version'));
self::addStyle('http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css'); self::addStyle('http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css');
self::addStyle('/css/bootstrap.min.css'); self::addStyle('/css/bootstrap.min.css');
self::addStyle('/css/bootstrap-theme.min.css'); self::addStyle('/css/bootstrap-theme.min.css');
@ -36,7 +36,7 @@ class IndexController extends Controller
self::addStyle('/css/MarkerCluster.Default.css'); self::addStyle('/css/MarkerCluster.Default.css');
self::addStyle('/css/fotorama.css'); self::addStyle('/css/fotorama.css');
if (!App::$user ) if (!App::$user)
self::addScript('//ulogin.ru/js/ulogin.js'); self::addScript('//ulogin.ru/js/ulogin.js');
$category = Category::model()->getAll(array('order' => 'ord ASC')); $category = Category::model()->getAll(array('order' => 'ord ASC'));
@ -46,41 +46,45 @@ class IndexController extends Controller
{ {
$routes = Route::model()->getByAuthor(App::$user->id); $routes = Route::model()->getByAuthor(App::$user->id);
self::addVar('user', App::$user->id); self::addVar('user', App::$user->id);
} } else
else
{ {
self::addVar('user', '0'); 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();
}
self::addVar('isAdmin', (int) (App::$user && App::$user->isAdmin == 1));
$res = App::DB()->query("SELECT COUNT(`id`) pointsCount FROM `points`")->fetch(PDO::FETCH_ASSOC); $res = App::DB()->query("SELECT COUNT(`id`) pointsCount FROM `points`")->fetch(PDO::FETCH_ASSOC);
App::setConfig('title', $res['pointsCount'].' или даже больше поводов не сидеть дома'); App::setConfig('title', $res['pointsCount'] . ' или даже больше поводов не сидеть дома');
self::addVar('pointsCount', $res['pointsCount']); self::addVar('pointsCount', $res['pointsCount']);
$og = array(); $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']; $id = (int) $_GET['point'];
$point = Point::model()->getByPK($id); $point = Point::model()->getByPK($id);
$point->name = htmlspecialchars($point->name); $point->name = htmlspecialchars($point->name);
$point->descriptionHtml = htmlspecialchars($point->description); $point->descriptionHtml = htmlspecialchars($point->description);
$point->descriptionHtml .= ' Посмотреть на карте: http://wikipoints.ru/?point='.$id; $point->descriptionHtml .= ' Посмотреть на карте: http://wikipoints.ru/?point=' . $id;
$point->descriptionHtml .= ' #wikipoints'; $point->descriptionHtml .= ' #wikipoints';
$og['title'] = $point->name . ' [wikipoints.ru]'; $og['title'] = $point->name . ' [wikipoints.ru]';
$og['description'] = $point->descriptionHtml; $og['description'] = $point->descriptionHtml;
$og['site_name'] = 'WikiPoints - '.$res['pointsCount'].' или даже больше поводов не сидеть дома'; $og['site_name'] = 'WikiPoints - ' . $res['pointsCount'] . ' или даже больше поводов не сидеть дома';
$og['type'] = 'article'; $og['type'] = 'article';
$og['url'] = 'http://wikipoints.ru/?point='.$id; $og['url'] = 'http://wikipoints.ru/?point=' . $id;
$og['image'] = $point->getImg(); $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['title'] = 'Случайная точка на wikipoints.ru';
$og['description'] = 'Загляните сюда: http://vk.com/wikipoints Случайная точка на карте - лучший способ узнать что-то новое!'; $og['description'] = 'Загляните сюда: http://vk.com/wikipoints Случайная точка на карте - лучший способ узнать что-то новое!';
$og['site_name'] = 'WikiPoints - '.$res['pointsCount'].' или даже больше поводов не сидеть дома'; $og['site_name'] = 'WikiPoints - ' . $res['pointsCount'] . ' или даже больше поводов не сидеть дома';
$og['type'] = 'article'; $og['type'] = 'article';
$og['url'] = 'http://wikipoints.ru/?point=random'; $og['url'] = 'http://wikipoints.ru/?point=random';
$og['image'] = 'http://wikipoints.ru/img/compas.jpg'; $og['image'] = 'http://wikipoints.ru/img/compas.jpg';
@ -90,6 +94,7 @@ class IndexController extends Controller
'categories' => $category, 'categories' => $category,
'user' => App::$user, 'user' => App::$user,
'routes' => $routes, 'routes' => $routes,
'favorites' => $favorites,
'og' => $og, 'og' => $og,
)); ));
} }
@ -113,11 +118,11 @@ class IndexController extends Controller
$source = file_get_contents('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']); $source = file_get_contents('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']);
$uLoginUser = json_decode($source, true); $uLoginUser = json_decode($source, true);
//var_dump($uLoginUser);die; //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']); $user = User::model()->getByUID($uLoginUser['identity']);
if( !$user->id ) if (!$user->id)
{ {
$user = $user->add(array( $user = $user->add(array(
'uid' => $uLoginUser['identity'], 'uid' => $uLoginUser['identity'],
@ -160,7 +165,7 @@ class IndexController extends Controller
static function actionTest() static function actionTest()
{ {
var_dump( Favorite::model()->getAllMy() ); var_dump(Favorite::model()->getAllMy());
} }
} }

View File

@ -2,6 +2,7 @@
class Favorite extends Model class Favorite extends Model
{ {
function __construct($fromArray = array()) function __construct($fromArray = array())
{ {
$this->_tableName_ = 'favorites'; $this->_tableName_ = 'favorites';
@ -20,13 +21,14 @@ class Favorite extends Model
if (!App::$user || !App::$user->id || !$pointId) if (!App::$user || !App::$user->id || !$pointId)
return false; return false;
$res = self::model()->getAll(array('where' => '`userId` = '.(int)App::$user->id.' AND `pointId` = '.(int)$pointId, 'limit'=>1)); $res = self::model()->getAll(array('where' => '`userId` = ' . (int) App::$user->id . ' AND `pointId` = ' . (int) $pointId, 'limit' => 1));
if ($res) if ($res)
{ {
return boolval(Favorite::model()->delete($res->id)); return boolval(Favorite::model()->delete($res->id));
} else { } else
return Favorite::model()->add(array('userId'=>App::$user->id, 'pointId'=>$pointId)); {
return Favorite::model()->add(array('userId' => App::$user->id, 'pointId' => $pointId));
} }
} }
@ -35,7 +37,7 @@ class Favorite extends Model
if (!App::$user || !App::$user->id) if (!App::$user || !App::$user->id)
return false; return false;
return $this->getAll(array('where' => '`userId` = '.(int)App::$user->id)); return $this->getAll(array('where' => '`userId` = ' . (int) App::$user->id));
} }
public function checkIsMy($pointId) public function checkIsMy($pointId)
@ -43,7 +45,7 @@ class Favorite extends Model
if (!App::$user || !App::$user->id || !$pointId) if (!App::$user || !App::$user->id || !$pointId)
return false; return false;
return boolval($this->getAll(array('where' => '`userId` = '.(int)App::$user->id.' AND `pointId` = '.(int)$pointId))); return boolval($this->getAll(array('where' => '`userId` = ' . (int) App::$user->id . ' AND `pointId` = ' . (int) $pointId)));
} }
}
}

View File

@ -79,6 +79,13 @@
<div id="boxUser"> <div id="boxUser">
<h3>Профиль</h3> <h3>Профиль</h3>
<a class="btn btn-default" type="button" href="/index/logout"><span class="glyphicon glyphicon-ban-circle"></span> Выйти</a> <a class="btn btn-default" type="button" href="/index/logout"><span class="glyphicon glyphicon-ban-circle"></span> Выйти</a>
<hr/>
<?php var_dump($favorite); ?>
<?php if (false && $favorites): ?>
<?php foreach ($favorites as $favorite) : ?>
<?= $favorite->point->name ?><br/>
<?php endforeach; ?>
<?php endif; ?>
</div> </div>
</div> </div>
<?= $user ? '' : self::renderPartial('modals/login.php', null, true) ?> <?= $user ? '' : self::renderPartial('modals/login.php', null, true) ?>