protected function renderDynamicAdvancedSearchRows($panel, $maxCellsPerRow, $form) { assert('$form != null'); $content = $form->errorSummary($this->model); $content .= $this->renderDynamicClausesValidationHelperContent($form); $rowCount = 0; $suffix = $this->getSearchFormId(); $viewClassName = get_class($this); $modelClassName = get_class($this->model->getModel()); $formModelClassName = get_class($this->model); if ($this->model->dynamicClauses != null) { foreach ($this->model->dynamicClauses as $dynamicClause) { $attributeIndexOrDerivedType = ArrayUtil::getArrayValue($dynamicClause, 'attributeIndexOrDerivedType'); if ($attributeIndexOrDerivedType != null) { $searchAttributes = self::resolveSearchAttributeValuesForDynamicRow($dynamicClause, $attributeIndexOrDerivedType); $inputContent = DynamicSearchUtil::renderDynamicSearchAttributeInput($viewClassName, $modelClassName, $formModelClassName, (int) $rowCount, $attributeIndexOrDerivedType, $searchAttributes, $suffix); $content .= DynamicSearchUtil::renderDynamicSearchRowContent($viewClassName, $modelClassName, $formModelClassName, $rowCount, $attributeIndexOrDerivedType, $inputContent, $suffix); $rowCount++; } } } $content .= $this->renderAddExtraRowContent($rowCount); $content .= $this->renderAfterAddExtraRowContent($form); $content .= $this->renderDynamicSearchStructureContent($form); return $content; }
public function actionDynamicSearchAddExtraRow($viewClassName, $modelClassName, $formModelClassName, $rowNumber, $suffix = null) { echo DynamicSearchUtil::renderDynamicSearchRowContent($viewClassName, $modelClassName, $formModelClassName, (int) $rowNumber, null, null, $suffix, true); }