* */ namespace Combodo\iTop\Application\Search; use ApplicationContext; use AttributeDefinition; use AttributeEnumSet; use AttributeExternalField; use AttributeFriendlyName; use AttributeTagSet; use CMDBObjectSet; use Combodo\iTop\Application\Search\CriterionConversion\CriterionToSearchForm; use Combodo\iTop\Application\UI\Base\Component\Form\Form; use Combodo\iTop\Application\UI\Base\Component\Html\Html; use Combodo\iTop\Application\UI\Base\Component\Input\InputFactory; use Combodo\iTop\Application\UI\Base\Component\Panel\Panel; use Combodo\iTop\Application\UI\Base\Layout\UIContentBlock; use CoreException; use DBObjectSearch; use DBObjectSet; use Dict; use Exception; use Expression; use FieldExpression; use IssueLog; use MetaModel; use MissingQueryArgument; use TrueExpression; use UserRights; use utils; use WebPage; class SearchForm { /** * @param \WebPage $oPage * @param \CMDBObjectSet $oSet * @param array $aExtraParams * * @return string */ public function GetSearchForm(WebPage $oPage, CMDBObjectSet $oSet, $aExtraParams = array()) { $oPage->AddUiBlock($this->GetSearchFormUIBlock($oPage, $oSet, $aExtraParams)); return ''; } public function GetSearchFormUIBlock(WebPage $oPage, DBObjectSet $oSet, $aExtraParams = array()) { $oUiBlock = new UIContentBlock(); $oAppContext = new ApplicationContext(); $sClassName = $oSet->GetFilter()->GetClass(); $aListParams = array(); foreach($aExtraParams as $key => $value) { $aListParams[$key] = $value; } // Simple search form if (isset($aExtraParams['currentId'])) { $sSearchFormId = 'sf_'.$aExtraParams['currentId']; } else { $iSearchFormId = utils::GetUniqueId(); $sSearchFormId = 'SimpleSearchForm'.$iSearchFormId; $oUiBlock->AddHtml("