Merge pull request #2909 from jake-mw/crm-14472
[civicrm-core.git] / CRM / Core / Form / Renderer.php
index 9bb1046e304d7bf93868ea7a4457c4b32d7a8ba9..19297c8173500e085981551ae7c1ec89565f69d6 100644 (file)
@@ -1,9 +1,9 @@
 <?php
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.4                                                |
+ | CiviCRM version 4.5                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013                                |
+ | Copyright CiviCRM LLC (c) 2004-2014                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
@@ -28,7 +28,7 @@
 /**
  *
  * @package CRM
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
  * $Id$
  *
  */
@@ -122,7 +122,7 @@ class CRM_Core_Form_Renderer extends HTML_QuickForm_Renderer_ArraySmarty {
       if ($element->getAttribute('data-api-entity') && $element->getAttribute('data-entity-value')) {
         $this->renderFrozenEntityRef($el, $element);
       }
-      $el['html'] = '<div class="crm-frozen-field">' . $el['html'] . '</div>';
+      $el['html'] = '<span class="crm-frozen-field">' . $el['html'] . '</span>';
     }
     // Active form elements
     else {
@@ -130,7 +130,7 @@ class CRM_Core_Form_Renderer extends HTML_QuickForm_Renderer_ArraySmarty {
         $this->addOptionsEditLink($el, $element);
       }
 
-      if ($element->getType() == 'group' && $element->getAttribute('unselectable')) {
+      if ($element->getType() == 'group' && $element->getAttribute('allowClear')) {
         $this->appendUnselectButton($el, $element);
       }
     }
@@ -211,7 +211,6 @@ class CRM_Core_Form_Renderer extends HTML_QuickForm_Renderer_ArraySmarty {
     }
     if ($val) {
       $entity = $field->getAttribute('data-api-entity');
-      $select = json_decode($field->getAttribute('data-select-params'), TRUE);
       $api = json_decode($field->getAttribute('data-api-params'), TRUE);
       $params = CRM_Utils_Array::value('params', $api, array());
       // Support serialized values
@@ -224,10 +223,6 @@ class CRM_Core_Form_Renderer extends HTML_QuickForm_Renderer_ArraySmarty {
         $field->removeAttribute('class');
       }
       if (!empty($result['values'])) {
-        // Simplify array for single selects - makes client-side code simpler (but feels somehow wrong)
-        if (empty($select['multiple'])) {
-          $result['values'] = $result['values'][0];
-        }
         $field->setAttribute('data-entity-value', json_encode($result['values']));
       }
     }
@@ -242,10 +237,6 @@ class CRM_Core_Form_Renderer extends HTML_QuickForm_Renderer_ArraySmarty {
   function renderFrozenEntityRef(&$el, $field) {
     $entity = $field->getAttribute('data-api-entity');
     $vals = json_decode($field->getAttribute('data-entity-value'), TRUE);
-    // Hack for single-entity @see self::preProcessEntityRef
-    if (isset($vals['id'])) {
-      $vals = array($vals);
-    }
     $display = array();
     foreach ($vals as $val) {
       // Format contact as link