iId; } function getName() { return sanitizeForSQLtoHTML($this->sName); } function setDescription($sNewValue) { $this->sDescription = sanitizeForSQL($sNewValue); } function getDescription() { return sanitizeForSQLtoHTML($this->sDescription); } function setName($sNewValue) { $this->sName = sanitizeForSQL($sNewValue); } function getNamespace() { return $this->sNamespace; } function setNamespace($sNewValue) { $this->sNamespace = $sNewValue; } function getMandatory() { return $this->bMandatory; } function setMandatory($bNewValue) { $this->bMandatory = $bNewValue; } function getIsConditional () { return $this->bIsConditional; } function setIsConditional ($bNewValue) { $this->bIsConditional = $bNewValue; } function getMasterFieldId () { return $this->iMasterFieldId; } function setMasterFieldId ($iNewValue) { $this->iMasterFieldId = $iNewValue; } function getIsGeneric () { return $this->bIsGeneric; } function setIsGeneric ($bNewValue) { $this->bIsGeneric = $bNewValue; } function getIsComplete () { return $this->bIsComplete; } function setIsComplete ($bNewValue) { $this->bIsComplete = $bNewValue; } function getIsComplex () { return $this->bIsComplex; } function setIsComplex ($bNewValue) { $this->bIsComplex = $bNewValue; } function getIsSystem () { return $this->bIsSystem; } function setIsSystem ($bNewValue) { $this->bIsSystem = $bNewValue; } var $_aFieldToSelect = array( "iId" => "id", "sName" => "name", "sDescription" => "description", "sNamespace" => "namespace", "bMandatory" => "mandatory", "bIsConditional" => "is_conditional", "iMasterFieldId" => "master_field", "bIsGeneric" => "is_generic", "bIsComplete" => "is_complete", "bIsComplex" => "is_complex", "bIsSystem" => "is_system", ); // returns TRUE if all children are lookup enabled, false otherwise. function canBeMadeConditional() { if ($this->getIsConditional()) { return false; } // DEBUG return false; } function _table () { return KTUtil::getTableName('fieldsets'); } /* * get document types using this field * for listing displays */ function &getDocumentTypesUsing($aOptions = null) { $bIds = KTUtil::arrayGet($aOptions, 'ids'); $sTable = KTUtil::getTableName('document_type_fieldsets'); $aQuery = array( "SELECT document_type_id FROM $sTable WHERE fieldset_id = ?", array($this->getId()), ); $aIds = DBUtil::getResultArrayKey($aQuery, 'document_type_id'); if ($bIds) { return $aIds; } $aRet = array(); foreach ($aIds as $iID) { $aRet[] =& call_user_func(array('DocumentType', 'get'), $iID); } return $aRet; } // Static function function &get($iId) { return KTEntityUtil::get('KTFieldset', $iId); } function &getList($sWhereClause = null) { return KTEntityUtil::getList2('KTFieldset', $sWhereClause); } function &createFromArray($aOptions) { return KTEntityUtil::createFromArray('KTFieldset', $aOptions); } function &getNonGenericFieldsets($aOptions = null) { $aOptions = KTUtil::meldOptions($aOptions, array( 'multi' => true, )); return KTEntityUtil::getByDict('KTFieldset', array( 'is_generic' => false, 'disabled' => false, ), $aOptions); } function &getGenericFieldsets($aOptions = null) { $aOptions = KTUtil::meldOptions( $aOptions, array('multi' => true,) ); return KTEntityUtil::getByDict('KTFieldset', array( 'is_generic' => true, 'disabled' => false, ), $aOptions); } function &getForDocumentType($oDocumentType, $aOptions = null) { $bIds = KTUtil::arrayGet($aOptions, 'ids'); if (is_object($oDocumentType)) { $iDocumentTypeId = $oDocumentType->getId(); } else { $iDocumentTypeId = $oDocumentType; } $sTable = KTUtil::getTableName('document_type_fieldsets'); $aQuery = array( "SELECT fieldset_id FROM $sTable WHERE document_type_id = ?", array($iDocumentTypeId), ); $aIds = DBUtil::getResultArrayKey($aQuery, 'fieldset_id'); if ($bIds) { return $aIds; } $aRet = array(); foreach ($aIds as $iID) { $aRet[] =& call_user_func(array('KTFieldset', 'get'), $iID); } return $aRet; } function &getAssociatedTypes() { // NOTE: this returns null if we are generic (all is the wrong answer) if ($this->getIsGeneric()) { return array(); } $sTable = KTUtil::getTableName('document_type_fieldsets'); $aQuery = array( "SELECT document_type_id FROM $sTable WHERE fieldset_id = ?", array($this->getId()), ); $aIds = DBUtil::getResultArrayKey($aQuery, 'document_type_id'); $aRet = array(); foreach ($aIds as $iID) { $oType = DocumentType::get($iID); if (!PEAR::isError($oType)) { $aRet[] = $oType; } } return $aRet; } function &getFields() { return DocumentField::getByFieldset($this); } function &getByField($oField) { $oField =& KTUtil::getObject('DocumentField', $oField); $iFieldsetId = $oField->getParentFieldsetId(); return KTFieldset::get($iFieldsetId); } function &getByNamespace($sNamespace) { return KTEntityUtil::getByDict('KTFieldset', array( 'namespace' => $sNamespace, 'disabled' => false, )); } function &getByName($sName) { return KTEntityUtil::getByDict('KTFieldset', array( 'name' => $sName, 'disabled' => false, )); } } ?>