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

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

@ -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());
}
}

View File

@ -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)));
}
}

View File

@ -79,6 +79,13 @@
<div id="boxUser">
<h3>Профиль</h3>
<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>
<?= $user ? '' : self::renderPartial('modals/login.php', null, true) ?>