Example #1
0
 /**
  * Public function that creates a single instance
  */
 public static function getInstance()
 {
     if (!isset(self::$_instance)) {
         self::$_instance = new self();
     }
     return self::$_instance;
 }
Example #2
0
 /**
  * Show submission data.
  *
  * @param array $tag_params
  * @param array $children
  */
 public function tag_SubmissionFields($tag_params, $children)
 {
     global $language;
     $conditions = array();
     $form_field_manager = ContactForm_FormFieldManager::getInstance();
     $submission_manager = ContactForm_SubmissionManager::getInstance();
     $submission_field_manager = ContactForm_SubmissionFieldManager::getInstance();
     // get conditional parameters
     $submission_id = null;
     if (isset($tag_params['submission'])) {
         $submission_id = fix_id($tag_params['submission']);
     }
     // we require submission to be specified
     if (is_null($submission_id)) {
         trigger_error('Submission fields tag: No submission id specified.', E_USER_NOTICE);
         return;
     }
     // get submission for specified id
     $submission = $submission_manager->getSingleItem($submission_manager->getFieldNames(), array('id' => $submission_id));
     if (!is_object($submission)) {
         trigger_error('Submission fields tag: Unknown submission.', E_USER_NOTICE);
         return;
     }
     // get form fields
     $raw_fields = $form_field_manager->getItems($form_field_manager->getFieldNames(), array('form' => $submission->form));
     $fields = array();
     foreach ($raw_fields as $field) {
         $fields[$field->id] = $field;
     }
     // load submission data
     $items = $submission_field_manager->getItems($submission_field_manager->getFieldNames(), array('submission' => $submission->id));
     // load template
     $template = $this->loadTemplate($tag_params, 'submission_field.xml');
     if (count($items) > 0) {
         foreach ($items as $item) {
             $field = $fields[$item->field];
             $text = $field->name;
             if (!empty($field->placeholder[$language])) {
                 $text = $field->placeholder[$language];
             }
             if (!empty($field->label[$language])) {
                 $text = $field->label[$language];
             }
             $params = array('submission' => $submission->id, 'form' => $submission->form, 'field' => $item->field, 'value' => $item->value, 'label' => $field->label, 'placeholder' => $field->placeholder, 'text' => $text, 'type' => $field->type, 'name' => $field->name);
             $template->restoreXML();
             $template->setLocalParams($params);
             $template->parse();
         }
     }
 }