initial code for CRM-16089
authorTim Mallezie <tim.mallezie@chiro.be>
Tue, 10 Mar 2015 20:52:50 +0000 (21:52 +0100)
committerTim Mallezie <tim.mallezie@chiro.be>
Tue, 10 Mar 2015 20:52:50 +0000 (21:52 +0100)
CRM/Core/Form.php
CRM/Event/Form/ManageEvent/EventInfo.php

index 3b70af47c69f4118805d96baaf0d3abfc1d9a022..5add53d7b4e79d203e6490c9eb633b7fb87659f9 100644 (file)
@@ -125,6 +125,13 @@ class CRM_Core_Form extends HTML_QuickForm_Page {
    * @var CRM_Core_Controller
    */
   public $controller;
+  
+  /**
+   * Api entity name
+   * 
+   * @var string
+   */
+  public $entityName;
 
   /**
    * Constants for attributes for various form elements
@@ -1051,7 +1058,12 @@ class CRM_Core_Form extends HTML_QuickForm_Page {
    */
   public function addSelect($name, $props = array(), $required = FALSE) {
     if (!isset($props['entity'])) {
-      $props['entity'] = CRM_Utils_Api::getEntityName($this);
+      if(isset($this->entityName)){
+        $props['entity'] = $this->entityName;
+      }
+      else {
+        $props['entity'] = CRM_Utils_Api::getEntityName($this);
+      }
     }
     if (!isset($props['field'])) {
       $props['field'] = strrpos($name, '[') ? rtrim(substr($name, 1 + strrpos($name, '[')), ']') : $name;
index 89d27e45048b9c9a1fc7d46e5f3813d5d2eb10e7..bdb10a2cb4d6d0b0e8403fdfb4938210c26addce 100644 (file)
@@ -187,6 +187,8 @@ class CRM_Event_Form_ManageEvent_EventInfo extends CRM_Event_Form_ManageEvent {
     // add event title, make required if this is not a template
     $this->add('text', 'title', ts('Event Title'), $attributes['event_title'], !$this->_isTemplate);
 
+    // We must specify the entity api name when using an addSelect
+    $this->entityName = 'Event';
     $this->addSelect('event_type_id',
       array('onChange' => "CRM.buildCustomData( 'Event', this.value );"),
       TRUE