protected function renderFieldCategory(ConfigFieldCategory $fieldCategory) { $str = ""; $fields = $fieldCategory->getConfigFields(); foreach ($fields as $field) { $str .= "<fieldset>"; $str .= "<legend>" . $field->getName() . "</legend>"; $fieldId = $field->getId(); $cField = new Criteria(); $cField->add(FieldValuePeer::FIELD_ID, $fieldId); /*$c1 = $cField->getNewCriterion(FieldValuePeer::VALUE, $query.'%', Criteria::LIKE); $c2 = $cField->getNewCriterion(FieldValuePeer::VALUE, "", Criteria::NOT_EQUAL); $c1->addAnd($c2); $cField->addAnd($c1);*/ $cField->add(FieldValuePeer::VALUE, "", Criteria::NOT_EQUAL); $cField->addGroupByColumn(FieldValuePeer::VALUE); $cField->addAscendingOrderByColumn(FieldValuePeer::VALUE); $cField->setLimit(15); $values = FieldValuePeer::doSelect($cField); $valueIndex = 0; foreach ($values as $value) { $str .= "<label>" . $value->getValue() . "</label>"; $str .= "<input type=\"checkbox\" name=\"fields[" . $field->getId() . "][{$valueIndex}]\" id=\"fields_" . $field->getId() . "_{$valueIndex}\" value=\"" . $value->getValue() . "\" /><br>"; $valueIndex++; } $str .= "</fieldset>"; } return $str; }