private static function add_field_values_to_csv(&$row)
 {
     foreach (self::$fields as $col) {
         $field_value = isset(self::$entry->metas[$col->id]) ? self::$entry->metas[$col->id] : false;
         // Post values need to be retrieved differently
         if (self::$entry->post_id && ($col->type == 'tag' || isset($col->field_options['post_field']) && $col->field_options['post_field'])) {
             $field_value = FrmProEntryMetaHelper::get_post_value(self::$entry->post_id, $col->field_options['post_field'], $col->field_options['custom_field'], array('truncate' => $col->field_options['post_field'] == 'post_category' ? true : false, 'form_id' => self::$entry->form_id, 'field' => $col, 'type' => $col->type, 'exclude_cat' => isset($col->field_options['exclude_cat']) ? $col->field_options['exclude_cat'] : 0, 'sep' => self::$separator));
         }
         if (in_array($col->type, array('user_id', 'file', 'date', 'data'))) {
             $field_value = FrmProFieldsHelper::get_export_val($field_value, $col, self::$entry);
         } else {
             if (isset($col->field_options['separate_value']) && $col->field_options['separate_value']) {
                 $sep_value = FrmEntriesHelper::display_value($field_value, $col, array('type' => $col->type, 'post_id' => self::$entry->post_id, 'show_icon' => false, 'entry_id' => self::$entry->id, 'sep' => self::$separator, 'embedded_field_id' => isset(self::$entry->embedded_fields) && isset(self::$entry->embedded_fields[$entry->id]) ? 'form' . self::$entry->embedded_fields[self::$entry->id] : 0));
                 $row[$col->id . '_label'] = $sep_value;
                 unset($sep_value);
             }
             $field_value = maybe_unserialize($field_value);
             $field_value = apply_filters('frm_csv_value', $field_value, array('field' => $col));
         }
         $row[$col->id] = $field_value;
         unset($col, $field_value);
     }
 }
Example #2
0
        echo $entry->parent_item_id;
        ?>
</parent_item_id>
        
<?php 
        $metas = $wpdb->get_results($wpdb->prepare("SELECT meta_value, field_id FROM {$wpdb->prefix}frm_item_metas WHERE item_id=%d", $entry->id));
        foreach ($metas as $meta) {
            ?>
		<item_meta>
		    <field_id><?php 
            echo $meta->field_id;
            ?>
</field_id>
		    <meta_value><?php 
            if (isset($fields[$meta->field_id])) {
                $meta->meta_value = FrmProFieldsHelper::get_export_val($meta->meta_value, $fields[$meta->field_id]);
            }
            echo FrmXMLHelper::cdata($meta->meta_value);
            unset($meta);
            ?>
</meta_value>
		</item_meta>
<?php 
        }
        ?>
	</item>
<?php 
        unset($metas);
        if (!empty($entry->post_id)) {
            $old_ids = $item_ids;
            $item_ids = array($entry->post_id);
Example #3
0
echo '"' . __('Timestamp', 'formidable') . '"' . $col_sep . '"' . __('Last Updated', 'formidable') . '"' . $col_sep . '"' . __('Created By', 'formidable') . '"' . $col_sep . '"' . __('Updated By', 'formidable') . '"' . $col_sep . '"' . __('Draft', 'formidable') . '"' . $col_sep . '"IP"' . $col_sep . '"ID"' . $col_sep . '"Key"' . "\n";
// fetch 20 posts at a time rather than loading the entire table into memory
while ($next_set = array_splice($entry_ids, 0, 20)) {
    $where = 'id IN (' . join(',', $next_set) . ')';
    $entries = $frm_entry->getAll($where, '', '', true, false);
    foreach ($entries as $entry) {
        foreach ($form_cols as $col) {
            $field_value = isset($entry->metas[$col->id]) ? $entry->metas[$col->id] : false;
            if (!$field_value and $entry->post_id) {
                $col->field_options = maybe_unserialize($col->field_options);
                if ($col->type == 'tag' || isset($col->field_options['post_field']) && $col->field_options['post_field']) {
                    $field_value = FrmProEntryMetaHelper::get_post_value($entry->post_id, $col->field_options['post_field'], $col->field_options['custom_field'], array('truncate' => $col->field_options['post_field'] == 'post_category' ? true : false, 'form_id' => $entry->form_id, 'field' => $col, 'type' => $col->type, 'exclude_cat' => isset($col->field_options['exclude_cat']) ? $col->field_options['exclude_cat'] : 0, 'sep' => $sep));
                }
            }
            if (in_array($col->type, array('user_id', 'file', 'date', 'data'))) {
                $field_value = FrmProFieldsHelper::get_export_val($field_value, $col);
            } else {
                if (isset($col->field_options['separate_value']) and $col->field_options['separate_value']) {
                    $sep_value = FrmProEntryMetaHelper::display_value($field_value, $col, array('type' => $col->type, 'post_id' => $entry->post_id, 'show_icon' => false, 'entry_id' => $entry->id, 'sep' => $sep));
                    if (is_array($sep_value)) {
                        $sep_value = implode($sep, $sep_value);
                    }
                    $sep_value = FrmProEntriesHelper::encode_value($sep_value, $charset, $to_encoding);
                    $sep_value = str_replace('"', '""', $sep_value);
                    //escape for CSV files.
                    if ($line_break != 'return') {
                        $sep_value = str_replace(array("\r\n", "\r", "\n"), $line_break, $sep_value);
                    }
                    echo '"' . $sep_value . '"' . $col_sep;
                    unset($sep_value);
                }