function getVariablesToAssign($params) { $value = array(); if (!empty($params['parent'])) { $params['property'] = $params['parent'] . "_" . $params['property']; } if (!empty($params['fields'])) { foreach ($params['fields'] as $field) { $criteria = $this->getCriteriaByFieldName($params['property'] . "_" . $field['id']); if (!empty($criteria)) { foreach ($criteria as $criterion) { $value[$field['id']] = $criterion->getValue(); } } } } $criteria = $this->getCriteriaByFieldName($params['property']); if (!empty($criteria)) { $value = array(); foreach ($criteria as $criterion) { $criterion_type = $criterion->getType(); $field_value = $criterion->getFieldValue(); if (!empty($field_value)) { $value[$criterion_type] = SJB_HelperFunctions::getClearVariablesToAssign($field_value); } else { if ($criterion->type == 'tree') { $criterionProperty = $criterion->getProperty(); if (!$criterionProperty->type->displayAsSelectBoxes) { $treeHelper = new SJB_TreeHelper(''); $value = $treeHelper->createTreeObjects($criterion->value); } else { $value = SJB_HelperFunctions::getClearVariablesToAssign($criterion->value); } } else { $value = $value + SJB_HelperFunctions::getClearVariablesToAssign($criterion->getValue()); } } } } else { $value = SJB_HelperFunctions::getClearVariablesToAssign($value); } $res = array('id' => $params['property'], 'value' => $value); if (isset($params['type']) && $params['type'] == 'bool' && $params['property'] !== 'Title') { $params2 = $params; $params2['property'] = 'Title'; $titleProp = $this->getVariablesToAssign($params2); if (!empty($titleProp) && !empty($titleProp['value'])) { $res['title'] = true; $res['value'] = $titleProp['value']; } } if (!empty($params['complexParent'])) { $res['id'] = $params['complexParent'] . ":" . $res['id']; } return $res; }
public function execute() { $treeType = SJB_Request::getVar('userTree', '') ? 'user' : 'listing'; $treeHelper = new SJB_TreeHelper($treeType); $treeHelper->init(); if ($treeHelper->get_displayAsSelectBoxes()) { $treeHelper->displayAsSelectBoxes(); } else { $treeHelper->displayAsTree(); } }