/**
  * @param $atts array (associative) of shortcode inputs
  * @param $content string inner content of short code
  * @return string shortcode content
  */
 public function handleShortcode($atts, $content = null)
 {
     //        echo '<pre>';
     //        print_r($_POST);
     //        echo "\n";
     //        print_r($_FILES);
     //        echo '</pre>';
     $converter = new CFDBPostDataConverter();
     $converter->addExcludeField(self::FORM_TITLE_FIELD);
     $title = isset($_POST[self::FORM_TITLE_FIELD]) ? $_POST[self::FORM_TITLE_FIELD] : 'Untitled';
     $data = $converter->convert($title);
     if ($data) {
         // Call hook to submit data
         do_action_ref_array('cfdb_submit', array(&$data));
     }
 }
 /**
  * @param $atts array of short code attributes
  * @param $content string not used
  * @return void
  */
 public function handleShortcode($atts, $content = null)
 {
     $atts = $this->decodeAttributes($atts);
     if (is_array($atts) && isset($atts['debug']) && $atts['debug'] == 'true') {
         echo '<pre>';
         print_r($_POST);
         echo "\n";
         print_r($_FILES);
         echo '</pre>';
     }
     $converter = new CFDBPostDataConverter();
     $converter->addExcludeField(self::FORM_TITLE_FIELD);
     $title = isset($_POST[self::FORM_TITLE_FIELD]) ? $_POST[self::FORM_TITLE_FIELD] : 'Untitled';
     $data = $converter->convert($title);
     if ($data) {
         // Call hook to submit data
         do_action_ref_array('cfdb_submit', array(&$data));
     }
 }
 public function saveFormData($form_id)
 {
     try {
         $title = get_the_title($form_id);
         $converter = new CFDBPostDataConverter();
         $converter->addExcludeField('post_nonce_field');
         $converter->addExcludeField('form-type');
         $converter->addExcludeField('fms-ajax');
         $converter->addExcludeField('action');
         $data = $converter->convert($title);
         // CFDBPostDataConverter won't capture files how they are organized here
         if (is_array($_FILES) && !empty($_FILES)) {
             foreach ($_FILES as $key => $file) {
                 if (is_array($file['tmp_name'])) {
                     for ($idx = 0; $idx < count($file['tmp_name']); ++$idx) {
                         if (is_uploaded_file($file['tmp_name'][$idx])) {
                             $fileKey = $idx > 0 ? $key . $idx : $key;
                             $data->posted_data[$fileKey] = $file['name'][$idx];
                             $data->uploaded_files[$fileKey] = $file['tmp_name'][$idx];
                         }
                     }
                 }
             }
         }
         return $this->plugin->saveFormData($data);
     } catch (Exception $ex) {
         $this->plugin->getErrorLog()->logException($ex);
     }
     return true;
 }