getNamespace(); $oFieldset =& KTFieldset::get($oField->getParentFieldset()); if ($oFieldset->getName() == 'Tag Cloud') { continue; } //if(is_null($oFieldset->userinfo)){continue;} $aInitialize = array(sprintf("%s: %s", $oFieldset->getName(), $oField->getName()), 'id', 'id', $oField->getId(), $sNamespace); $this->registerCriterion('GenericMetadataCriterion', $sNamespace, null, $aInitialize); } $this->_bGenericRegistered = true; } function registerCriterion($sClassName, $sNamespace = null, $sFilename = null, $aInitialize = null) { $this->_aCriteriaDetails[$sNamespace] = array($sClassName, $sNamespace, $sFilename, $aInitialize); } function &getCriterion($sNamespace) { if(!$this->_bGenericRegistered) { $this->_buildGenericCriteria(); } if (array_key_exists($sNamespace, $this->_aCriteria)) { return $this->_aCriteria[$sNamespace]; } $aDetails = KTUtil::arrayGet($this->_aCriteriaDetails, $sNamespace); if (empty($aDetails)) { return null; } $sFilename = $aDetails[2]; if (!empty($sFilename)) { require_once($sFilename); } $sClassName = $aDetails[0]; $oCriterion =new $sClassName(); if(is_array($aDetails[3])) { call_user_func_array(array(&$oCriterion, 'initialize'), $aDetails[3]); } $this->_aCriteria[$sNamespace] =& $oCriterion; return $oCriterion; } function &getCriteria() { if(!$this->_bGenericRegistered) { $this->_buildGenericCriteria(); } $aRet = array(); foreach (array_keys($this->_aCriteriaDetails) as $sCriteriaName) { $aRet[$sCriteriaName] =& $this->getCriterion($sCriteriaName); } return $aRet; } }