Exemplo n.º 1
0
 /**
  * Determine the form name based on the action. This allows us
  * to avoid using  conditional state machine, much more efficient
  * and simpler
  *
  * @param CRM_Core_Controller $controller the controller object
  *
  * @return string the name of the form that will handle the task
  * @access protected
  */
 function taskName($controller, $formName = 'Search')
 {
     // total hack, check POST vars and then session to determine stuff
     // fix value if print button is pressed
     if (CRM_Utils_Array::value('_qf_' . $formName . '_next_print', $_POST)) {
         $value = CRM_Contact_Task::PRINT_CONTACTS;
     } else {
         $value = CRM_Utils_Array::value('task', $_POST);
     }
     if (!isset($value)) {
         $value = $this->_controller->get('task');
     }
     $this->_controller->set('task', $value);
     if ($value) {
         $componentMode = $this->_controller->get('component_mode');
         $modeValue = CRM_Contact_Form_Search::getModeValue($componentMode);
         $taskClassName = $modeValue['taskClassName'];
         return $taskClassName::getTask($value);
     } else {
         return CRM_Contact_Task::getTask($value);
     }
 }
Exemplo n.º 2
0
 /**
  * Determine the form name based on the action. This allows us
  * to avoid using  conditional state machine, much more efficient
  * and simpler
  *
  * @param CRM_Core_Controller $controller
  *   The controller object.
  *
  * @param string $formName
  *
  * @return string
  *   the name of the form that will handle the task
  */
 public function taskName($controller, $formName = 'Search')
 {
     // total hack, check POST vars and then session to determine stuff
     $value = CRM_Utils_Array::value('task', $_POST);
     if (!isset($value)) {
         $value = $this->_controller->get('task');
     }
     $this->_controller->set('task', $value);
     if ($value) {
         $componentMode = $this->_controller->get('component_mode');
         $modeValue = CRM_Contact_Form_Search::getModeValue($componentMode);
         $taskClassName = $modeValue['taskClassName'];
         return $taskClassName::getTask($value);
     } else {
         return CRM_Contact_Task::getTask($value);
     }
 }
Exemplo n.º 3
0
 /**
  * Determine the form name based on the action. This allows us
  * to avoid using  conditional state machine, much more efficient
  * and simpler
  *
  * @param CRM_Core_Controller $controller the controller object
  *
  * @return string the name of the form that will handle the task
  * @access protected
  */
 function taskName($controller, $formName = 'Search')
 {
     // total hack, check POST vars and then session to determine stuff
     // fix value if print button is pressed
     if (CRM_Utils_Array::value('_qf_' . $formName . '_next_print', $_POST)) {
         $value = CRM_Contact_Task::PRINT_CONTACTS;
     } else {
         $value = CRM_Utils_Array::value('task', $_POST);
     }
     if (!isset($value)) {
         $value = $this->_controller->get('task');
     }
     $this->_controller->set('task', $value);
     if ($value) {
         $componentMode = $this->_controller->get('component_mode');
         require_once 'CRM/Contact/Form/Search.php';
         $modeValue = CRM_Contact_Form_Search::getModeValue($componentMode);
         require_once str_replace('_', DIRECTORY_SEPARATOR, $modeValue['taskClassName']) . '.php';
         return eval("return {$modeValue['taskClassName']}::getTask( {$value} );");
     } else {
         return CRM_Contact_Task::getTask($value);
     }
 }