Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/Html/Service/Navigation.php
Строк: 90
<?php
namespace ConcreteCoreHtmlService;

use 
Database;
use 
Page;
use 
URL;
use 
User;
use 
ConcreteCoreValidationCSRFToken;

class 
Navigation
{

    
/**
     * Returns a link to a page. Note: this always returns a string.
     * if you really need the URL object, use URL::to($page) instead. Not returning a string was killing a json
     * encode in the sitemap (and could probably screw up other stuff down the line.)
     *
     * @param Page $cObj
     * @return string
     */
    
public function getLinkToCollection($cObj)
    {
        return (string) 
URL::to($cObj);
    }

    
/**
     * Returns an array of collections as a breadcrumb to the current page
     *
     * @param Page $c
     * @return Page[]
     */
    
public function getTrailToCollection($c)
    {
        
$db Database::connection();

        
$cArray = array();
        
$currentcParentID $c->getCollectionParentID();
        if (
$currentcParentID 0) {
            while (
is_numeric($currentcParentID) && $currentcParentID && $currentcParentID) {
                
$q "select cID, cParentID from Pages where cID = '{$currentcParentID}'";
                
$r $db->query($q);
                
$row $r->fetchRow();
                if (
$row['cID']) {
                    
$cArray[] = Page::getByID($row['cID'], 'ACTIVE');
                }

                
$currentcParentID $row['cParentID']; // moving up the tree until we hit 1
            
}
        }

        return 
$cArray;
    }

    
/**
     * Returns the URL of a collection so that it can be clicked on
     *
     * @param Page $cObj
     * @return string
     */
    
public function getCollectionURL($cObj)
    {
        return 
$this->getLinkToCollection($cObj);
    }

    public function 
getLogInOutLink()
    {
        if (!
id(new User())->isLoggedIn()) {
            
$url URL::to('/login');
            
$label t('Log in');
        } else {
            
$url URL::to('/login''logout'id(new Token())->generate('logout'));
            
$label t('Log out');
        }
        return 
sprintf('<a href="%s">%s</a>'$url$label);
    }

}
Онлайн: 3
Реклама