Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/Tree/Node/NodeType.php
Строк: 72
<?php

namespace ConcreteCoreTreeNode;

use 
ConcreteCoreFoundationObject;
use 
ConcreteCoreTreeNodeNodeType as TreeNodeType;
use 
ConcreteCorePackagePackageList;
use 
Core;
use 
Database;

class 
NodeType extends Object
{
    public function 
getTreeNodeTypeID()
    {
        return 
$this->treeNodeTypeID;
    }

    public function 
getTreeNodeTypeHandle()
    {
        return 
$this->treeNodeTypeHandle;
    }

    public function 
getPackageID()
    {
        return 
$this->pkgID;
    }

    public function 
getPackageHandle()
    {
        return 
PackageList::getHandle($this->pkgID);
    }

    public static function 
add($treeNodeTypeHandle$pkg false)
    {
        
$pkgID 0;
        
$db Database::connection();
        if (
is_object($pkg)) {
            
$pkgID $pkg->getPackageID();
        }

        
$r $db->query("insert into TreeNodeTypes (treeNodeTypeHandle, pkgID) values (?, ?)", array(
            
$treeNodeTypeHandle$pkgID,
        ));

        
$treeNodeTypeID $db->Insert_ID();

        return static::
getByID($treeNodeTypeID);
    }

    public function 
delete()
    {
        
$db Database::connection();
        
$db->Execute('delete from TreeNodeTypes where treeNodeTypeID = ?', array($this->treeNodeTypeID));
    }

    public static function 
getByID($treeNodeTypeID)
    {
        
$db Database::connection();
        
$row $db->GetRow('select * from TreeNodeTypes where treeNodeTypeID = ?', array($treeNodeTypeID));
        if (
is_array($row) && $row['treeNodeTypeID']) {
            
$type = new TreeNodeType();
            
$type->setPropertiesFromArray($row);

            return 
$type;
        }
    }

    public static function 
getByHandle($treeNodeTypeHandle)
    {
        
$db Database::connection();
        
$row $db->GetRow('select * from TreeNodeTypes where treeNodeTypeHandle = ?', array($treeNodeTypeHandle));
        if (
is_array($row) && $row['treeNodeTypeHandle']) {
            
$type = new TreeNodeType();
            
$type->setPropertiesFromArray($row);

            return 
$type;
        }
    }

    public function 
getTreeNodeTypeClass()
    {
        
$txt Core::make('helper/text');
        
$className '\Concrete\Core\Tree\Node\Type\' . $txt->camelcase($this->treeNodeTypeHandle);

        return $className;
    }

    public static function getListByPackage($pkg)
    {
        $db = Database::connection();
        $list = array();
        $r = $db->Execute('
select treeNodeTypeID from TreeNodeTypes where pkgID = ? order by treeNodeTypeID asc', array($pkg->getPackageID()));
        while ($row = $r->FetchRow()) {
            $list[] = TreeNodeType::getByID($row['
treeNodeTypeID']);
        }
        $r->Close();

        return $list;
    }
}
Онлайн: 0
Реклама