Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/Workflow/Type.php
Строк: 64
<?php
namespace ConcreteCoreWorkflow;
use 
ConcreteCoreFoundationObject;
use 
Loader;
use 
ConcreteCorePackagePackageList;
class 
Type extends Object {

    public function 
getWorkflowTypeID() {return $this->wftID;}
    public function 
getWorkflowTypeHandle() {return $this->wftHandle;}
    public function 
getWorkflowTypeName() {return $this->wftName;}

    public static function 
getByID($wftID) {
        
$db Loader::db();
        
$row $db->GetRow('select wftID, pkgID, wftHandle, wftName from WorkflowTypes where wftID = ?', array($wftID));
        if (
$row['wftHandle']) {
            
$wt = new static();
            
$wt->setPropertiesFromArray($row);
            return 
$wt;
        }
    }

    public static function 
getList() {
        
$db Loader::db();
        
$list = array();
        
$r $db->Execute('select wftID from WorkflowTypes order by wftID asc');

        while (
$row $r->FetchRow()) {
            
$list[] = static::getByID($row['wftID']);
        }

        
$r->Close();
        return 
$list;
    }

    public static function 
exportList($xml) {
        
$wtypes = static::getList();
        
$db Loader::db();
        
$axml $xml->addChild('workflowtypes');
        foreach(
$wtypes as $wt) {
            
$wtype $axml->addChild('workflowtype');
            
$wtype->addAttribute('handle'$wt->getWorkflowTypeHandle());
            
$wtype->addAttribute('name'$wt->getWorkflowTypeName());
            
$wtype->addAttribute('package'$wt->getPackageHandle());
        }
    }

    public function 
delete() {
        
$db Loader::db();
        
$db->Execute("delete from WorkflowTypes where wftID = ?", array($this->wftID));
    }

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

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

    public static function 
getByHandle($wftHandle) {
        
$db Loader::db();
        
$wftID $db->GetOne('select wftID from WorkflowTypes where wftHandle = ?', array($wftHandle));
        if (
$wftID 0) {
            return 
self::getByID($wftID);
        }
    }

    public static function 
add($wftHandle$wftName$pkg false) {
        
$pkgID 0;
        if (
is_object($pkg)) {
            
$pkgID $pkg->getPackageID();
        }
        
$db Loader::db();
        
$db->Execute('insert into WorkflowTypes (wftHandle, wftName, pkgID) values (?, ?, ?)', array($wftHandle$wftName$pkgID));
        
$id $db->Insert_ID();
        
$est = static::getByID($id);
        return 
$est;
    }

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