예제 #1
0
 /**
  * The initializer code, called before the processing.
  */
 public function init()
 {
     $fields = CRM_Event_BAO_Participant::importableFields($this->_contactType, FALSE);
     $fields['event_id']['title'] = 'Event ID';
     $eventfields =& CRM_Event_BAO_Event::fields();
     $fields['event_title'] = $eventfields['event_title'];
     foreach ($fields as $name => $field) {
         $field['type'] = CRM_Utils_Array::value('type', $field, CRM_Utils_Type::T_INT);
         $field['dataPattern'] = CRM_Utils_Array::value('dataPattern', $field, '//');
         $field['headerPattern'] = CRM_Utils_Array::value('headerPattern', $field, '//');
         $this->addField($name, $field['title'], $field['type'], $field['headerPattern'], $field['dataPattern']);
     }
     $this->_newParticipants = array();
     $this->setActiveFields($this->_mapperKeys);
     // FIXME: we should do this in one place together with Form/MapField.php
     $this->_contactIdIndex = -1;
     $this->_eventIndex = -1;
     $this->_participantStatusIndex = -1;
     $this->_participantRoleIndex = -1;
     $this->_eventTitleIndex = -1;
     $index = 0;
     foreach ($this->_mapperKeys as $key) {
         switch ($key) {
             case 'participant_contact_id':
                 $this->_contactIdIndex = $index;
                 break;
             case 'event_id':
                 $this->_eventIndex = $index;
                 break;
             case 'participant_status':
             case 'participant_status_id':
                 $this->_participantStatusIndex = $index;
                 break;
             case 'participant_role_id':
                 $this->_participantRoleIndex = $index;
                 break;
             case 'event_title':
                 $this->_eventTitleIndex = $index;
                 break;
         }
         $index++;
     }
 }
예제 #2
0
 /**
  * the initializer code, called before the processing
  *
  * @return void
  * @access public
  */
 function init()
 {
     require_once 'CRM/Event/BAO/Participant.php';
     $fields =& CRM_Event_BAO_Participant::importableFields($this->_contactType, false);
     $fields['event_id']['title'] = "Event ID";
     require_once 'CRM/Event/BAO/Event.php';
     $eventfields =& CRM_Event_BAO_Event::fields();
     $fields['event_title'] = $eventfields['event_title'];
     foreach ($fields as $name => $field) {
         $this->addField($name, $field['title'], $field['type'], $field['headerPattern'], $field['dataPattern']);
     }
     $this->_newParticipants = array();
     $this->setActiveFields($this->_mapperKeys);
     // FIXME: we should do this in one place together with Form/MapField.php
     $this->_contactIdIndex = -1;
     $this->_eventIndex = -1;
     $this->_participantStatusIndex = -1;
     $this->_participantRoleIndex = -1;
     $this->_eventTitleIndex = -1;
     $index = 0;
     foreach ($this->_mapperKeys as $key) {
         switch ($key) {
             case 'participant_contact_id':
                 $this->_contactIdIndex = $index;
                 break;
             case 'event_id':
                 $this->_eventIndex = $index;
                 break;
             case 'participant_status':
             case 'participant_status_id':
                 $this->_participantStatusIndex = $index;
                 break;
             case 'participant_role_id':
                 $this->_participantRoleIndex = $index;
                 break;
             case 'event_title':
                 $this->_eventTitleIndex = $index;
                 break;
         }
         $index++;
     }
 }
예제 #3
0
 /**
  * @return array
  */
 public static function &getParticipantFields()
 {
     $fields = CRM_Event_BAO_Participant::importableFields('Individual', TRUE, TRUE);
     return $fields;
 }
예제 #4
0
 /**
  * ImportableFields() method ( Checking the Event's Importable Fields )
  */
 public function testimportableFields()
 {
     $importableFields = CRM_Event_BAO_Participant::importableFields();
     $this->assertNotEquals(count($importableFields), 0, 'Checking array not to be empty.');
     Contact::delete($this->_contactId);
     Event::delete($this->_eventId);
 }
예제 #5
0
 static function &getParticipantFields($onlyParticipant = false)
 {
     require_once 'CRM/Event/BAO/Participant.php';
     $fields =& CRM_Event_BAO_Participant::importableFields('Individual', true, $onlyParticipant);
     return $fields;
 }
예제 #6
0
 static function &getParticipantFields($onlyParticipant = FALSE)
 {
     $fields = CRM_Event_BAO_Participant::importableFields('Individual', TRUE, $onlyParticipant);
     return $fields;
 }