Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/Page/Type/Composer/OutputControl.php
Строк: 90
<?php
namespace ConcreteCorePageTypeComposer;
use 
Loader;
use 
ConcreteCoreFoundationObject;
use 
PageTemplate;
use 
ConcreteCorePageTypeComposerFormLayoutSetControl as PageTypeComposerFormLayoutSetControl;
use 
PageType;
class 
OutputControl extends Object {

    public function 
getPageTypeComposerOutputControlID() {return $this->ptComposerOutputControlID;}
    public function 
getPageTypeComposerFormLayoutSetControlID() {return $this->ptComposerFormLayoutSetControlID;}
    public function 
getPageTypeComposerFormLayoutSetID() {return $this->ptComposerFormLayoutSetID;}

    public static function 
add(PageTypeComposerFormLayoutSetControl $controlPageTemplate $pt) {

        
$set $control->getPageTypeComposerFormLayoutSetObject();
        
$pagetype $set->getPageTypeObject();

        
$db Loader::db();
        
$db->Execute('insert into PageTypeComposerOutputControls (ptID, pTemplateID, ptComposerFormLayoutSetControlID) values (?, ?, ?)', array(
            
$pagetype->getPageTypeID(), $pt->getPageTemplateID(), $control->getPageTypeComposerFormLayoutSetControlID()
        ));
        
$ptComposerOutputControlID $db->Insert_ID();
        return static::
getByID($ptComposerOutputControlID);
    }

    public static function 
getList(PageType $ptPageTemplate $template) {
        
$db Loader::db();
        
// get all output controls for the particular page template.
        
$ptComposerOutputControlIDs $db->GetCol('select ptComposerOutputControlID from PageTypeComposerOutputControls where pTemplateID = ? and ptID = ? order by ptComposerOutputControlID asc', array(
            
$template->getPageTemplateID(), $pt->getPageTypeID()
        ));
        
$list = array();
        foreach(
$ptComposerOutputControlIDs as $ptComposerOutputControlID) {
            
$cm = static::getByID($ptComposerOutputControlID);
            if (
is_object($cm)) {
                
$list[] = $cm;
            }
        }
        return 
$list;
    }

    public static function 
getByID($ptComposerOutputControlID) {
        
$db Loader::db();
        
$r $db->GetRow('select * from PageTypeComposerOutputControls where ptComposerOutputControlID = ?', array($ptComposerOutputControlID));
        if (
is_array($r) && $r['ptComposerOutputControlID']) {
            
$cm = new static;
            
$cm->setPropertiesFromArray($r);
            return 
$cm;
        }
    }

    public static function 
getByPageTypeComposerFormLayoutSetControl(PageTemplate $ptPageTypeComposerFormLayoutSetControl $control) {
        
$db Loader::db();
        
$ptComposerOutputControlID $db->GetOne('select ptComposerOutputControlID from PageTypeComposerOutputControls where pTemplateID = ? and ptComposerFormLayoutSetControlID = ?', array($pt->getPageTemplateID(), $control->getPageTypeComposerFormLayoutSetControlID()));
        if (
$ptComposerOutputControlID) {
            return static::
getByID($ptComposerOutputControlID);
        }
    }

    public function 
delete() {
        
$db Loader::db();
        
$db->Execute('delete from PageTypeComposerOutputControls where ptComposerOutputControlID = ?', array($this->ptComposerOutputControlID));
    }

    public function 
getPageTypeComposerControlOutputLabel() {
        
$control PageTypeComposerFormLayoutSetControl::getByID($this->ptComposerFormLayoutSetControlID);
        return 
$control->getPageTypeComposerControlDisplayLabel();
    }

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