コード例 #1
0
function cp_calculatedfieldsf_export_csv()
{
    $toExclude = array('fcommentarea', 'fsectionbreak', 'fpagebreak', 'fsummary', 'fmedia', 'ffieldset', 'fdiv', 'fbutton');
    if (!is_admin()) {
        return;
    }
    global $wpdb;
    if (!defined('CP_CALCULATEDFIELDSF_ID')) {
        define('CP_CALCULATEDFIELDSF_ID', intval($_GET["cal"]));
    }
    $headers = array("Form ID", "Submission ID", "Time", "IP Address", "email", "Paid", "Final Price", "Coupon");
    $fields = array(0, 1, 2, 3, 4, 5, 6, 7);
    $values = array();
    $form_data = cp_calculatedfieldsf_get_option('form_structure', CP_CALCULATEDFIELDSF_DEFAULT_form_structure);
    $fields_list = cp_calculatedfieldsf_sorting_fields_in_containers($form_data[0]);
    // Get headers and fields
    for ($i = 0; $i < count($fields_list); $i++) {
        $field = $fields_list[$i];
        $fieldType = strtolower($field->ftype);
        if (!in_array($fieldType, $toExclude)) {
            $fields[] = $field->name;
            $headers[] = !empty($field->shortlabel) ? $field->shortlabel : (!empty($field->title) ? $field->title : $field->name);
        }
    }
    // Get rows
    $cond = '';
    if ($_GET["search"] != '') {
        $cond .= " AND (data like '%" . esc_sql($_GET["search"]) . "%' OR paypal_post LIKE '%" . esc_sql($_GET["search"]) . "%')";
    }
    if ($_GET["dfrom"] != '') {
        $cond .= " AND (`time` >= '" . esc_sql($_GET["dfrom"]) . "')";
    }
    if ($_GET["dto"] != '') {
        $cond .= " AND (`time` <= '" . esc_sql($_GET["dto"]) . " 23:59:59')";
    }
    if (CP_CALCULATEDFIELDSF_ID != 0) {
        $cond .= " AND formid=" . CP_CALCULATEDFIELDSF_ID;
    }
    $events_query = "SELECT * FROM " . CP_CALCULATEDFIELDSF_POSTS_TABLE_NAME . " WHERE 1=1 " . $cond . " ORDER BY `time` DESC";
    /**
     * Allows modify the query of messages, passing the query as parameter
     * returns the new query
     */
    $events_query = apply_filters('cpcff_csv_query', $events_query);
    $events = $wpdb->get_results($events_query);
    foreach ($events as $item) {
        $data = array();
        $data = @unserialize($item->paypal_post);
        if ($data === false) {
            continue;
        }
        $value = array($item->formid, $item->id, $item->time, $item->ipaddr, $item->notifyto, $item->paid ? "Yes" : "No", @$data["final_price"], @$data["coupon"]);
        unset($data["final_price"]);
        unset($data["coupon"]);
        $value = array_merge($value, $data);
        $values[] = $value;
    }
    header("Content-type: application/octet-stream");
    header("Content-Disposition: attachment; filename=export.csv");
    // Print headers
    foreach ($headers as $header) {
        echo '"' . str_replace('"', '""', $header) . '",';
    }
    echo "\n";
    // Print rows
    foreach ($values as $item) {
        foreach ($fields as $field) {
            if (!isset($item[$field])) {
                $item[$field] = '';
            }
            if (is_array($item[$field])) {
                $item[$field] = implode($item[$field], ',');
            }
            echo '"' . str_replace('"', '""', $item[$field]) . '",';
        }
        echo "\n";
    }
    exit;
}
コード例 #2
0
function cp_calculatedfieldsf_get_public_form($id)
{
    global $wpdb, $cpcff_default_texts_array;
    global $CP_CFF_global_form_count;
    global $CP_CFF_global_form_count_number;
    $CP_CFF_global_form_count_number++;
    $CP_CFF_global_form_count = "_" . $CP_CFF_global_form_count_number;
    if (!defined('CP_AUTH_INCLUDE')) {
        define('CP_AUTH_INCLUDE', true);
    }
    if ($id != '') {
        $myrows = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $wpdb->prefix . CP_CALCULATEDFIELDSF_FORMS_TABLE . " WHERE id=%d", $id));
    } else {
        $myrows = $wpdb->get_results("SELECT * FROM " . $wpdb->prefix . CP_CALCULATEDFIELDSF_FORMS_TABLE);
    }
    $previous_label = cp_calculatedfieldsf_get_option('vs_text_previousbtn', 'Previous', $id);
    $previous_label = $previous_label == '' ? 'Previous' : $previous_label;
    $next_label = cp_calculatedfieldsf_get_option('vs_text_nextbtn', 'Next', $id);
    $next_label = $next_label == '' ? 'Next' : $next_label;
    $cpcff_texts_array = cp_calculatedfieldsf_get_option('vs_all_texts', $cpcff_default_texts_array, $id);
    $cpcff_texts_array = array_replace_recursive($cpcff_default_texts_array, is_string($cpcff_texts_array) && is_array(unserialize($cpcff_texts_array)) ? unserialize($cpcff_texts_array) : (is_array($cpcff_texts_array) ? $cpcff_texts_array : array()));
    $page_of_label = $cpcff_texts_array['page_of_text']['text'];
    if (CP_CALCULATEDFIELDSF_DEFAULT_DEFER_SCRIPTS_LOADING) {
        wp_deregister_script('query-stringify');
        wp_register_script('query-stringify', plugins_url('/js/jQuery.stringify.js', __FILE__));
        wp_deregister_script('cp_calculatedfieldsf_validate_script');
        wp_register_script('cp_calculatedfieldsf_validate_script', plugins_url('/js/jquery.validate.js', __FILE__));
        wp_enqueue_script('cp_calculatedfieldsf_buikder_script', cp_calculatedfieldsf_get_site_url() . (strpos(cp_calculatedfieldsf_get_site_url(), '?') === false ? '/?' : '&') . 'cp_cff_resources=public', array("jquery", "jquery-ui-core", "jquery-ui-button", "jquery-ui-datepicker", "jquery-ui-widget", "jquery-ui-position", "jquery-ui-tooltip", "query-stringify", "cp_calculatedfieldsf_validate_script", "jquery-ui-slider"), false, true);
        if ($id == '') {
            $id = $myrows[0]->id;
        }
        wp_localize_script('cp_calculatedfieldsf_buikder_script', 'cp_calculatedfieldsf_fbuilder_config' . $CP_CFF_global_form_count, array('obj' => '{"pub":true,"identifier":"' . $CP_CFF_global_form_count . '","messages": {
        	                	"required": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_is_required', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_is_required, $id)) . '",
        	                	"email": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_is_email', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_is_email, $id)) . '",
        	                	"datemmddyyyy": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_datemmddyyyy', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_datemmddyyyy, $id)) . '",
        	                	"dateddmmyyyy": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_dateddmmyyyy', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_dateddmmyyyy, $id)) . '",
        	                	"number": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_number', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_number, $id)) . '",
        	                	"digits": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_digits', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_digits, $id)) . '",
        	                	"max": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_max', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_max, $id)) . '",
        	                	"min": "' . str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_min', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_min, $id)) . '",
    	                    	"previous": "' . str_replace(array('"'), array('\\"'), $previous_label) . '",
    	                    	"next": "' . str_replace(array('"'), array('\\"'), $next_label) . '",
                                "pageof": "' . str_replace(array('"'), array('\\"'), $page_of_label) . '"
        	                }}'));
    } else {
        wp_enqueue_script("jquery");
        wp_enqueue_script("jquery-ui-core");
        wp_enqueue_script("jquery-ui-datepicker");
        wp_enqueue_script("jquery-ui-slider");
    }
    $codes = $wpdb->get_results($wpdb->prepare('SELECT * FROM ' . CP_CALCULATEDFIELDSF_DISCOUNT_CODES_TABLE_NAME . ' WHERE `form_id`=%d', $id));
    @(include dirname(__FILE__) . '/cp_calculatedfieldsf_public_int.inc.php');
    if (!CP_CALCULATEDFIELDSF_DEFAULT_DEFER_SCRIPTS_LOADING) {
        // This code won't be used in most cases. This code is for preventing problems in wrong WP themes and conflicts with third party plugins.
        $plugin_url = plugins_url('', __FILE__);
        $prefix_ui = '';
        if (@file_exists(dirname(_FILE_) . '/../../../wp-includes/js/jquery/ui/jquery.ui.core.min.js')) {
            $prefix_ui = 'jquery.ui.';
        }
        ?>
     <script> if( typeof jQuery != 'undefined' ) var jQueryBK = jQuery.noConflict(); </script>
     <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/jquery.js';
        ?>
'></script>
     <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/ui/' . $prefix_ui . 'core.min.js';
        ?>
'></script>
     <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/ui/' . $prefix_ui . 'datepicker.min.js';
        ?>
'></script>
	 <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/ui/' . $prefix_ui . 'widget.min.js';
        ?>
'></script>
     <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/ui/' . $prefix_ui . 'position.min.js';
        ?>
'></script> 
     <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/ui/' . $prefix_ui . 'tooltip.min.js';
        ?>
'></script>
     <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/ui/' . $prefix_ui . 'mouse.min.js';
        ?>
'></script>
	 <script type='text/javascript' src='<?php 
        echo $plugin_url . '/../../../wp-includes/js/jquery/ui/' . $prefix_ui . 'slider.min.js';
        ?>
'></script>
	 
     <script> 
        var fbuilderjQuery = jQuery.noConflict( ); 
        if( typeof jQueryBK != 'undefined' ) jQuery = jQueryBK;
     </script>
     <script type='text/javascript' src='<?php 
        echo plugins_url('js/jQuery.stringify.js', __FILE__);
        ?>
'></script>
     <script type='text/javascript' src='<?php 
        echo plugins_url('js/jquery.validate.js', __FILE__);
        ?>
'></script>
     <script type='text/javascript'>     
     /* <![CDATA[ */
     var cp_calculatedfieldsf_fbuilder_config<?php 
        echo $CP_CFF_global_form_count;
        ?>
 = {"obj":"{\"pub\":true,\"identifier\":\"<?php 
        echo $CP_CFF_global_form_count;
        ?>
\",\"messages\": {\n    \t                \t\"required\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_is_required', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_is_required, $id));
        ?>
\",\n    \t                \t\"email\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_is_email', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_is_email, $id));
        ?>
\",\n    \t                \t\"datemmddyyyy\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_datemmddyyyy', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_datemmddyyyy, $id));
        ?>
\",\n    \t                \t\"dateddmmyyyy\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_dateddmmyyyy', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_dateddmmyyyy, $id));
        ?>
\",\n    \t                \t\"number\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_number', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_number, $id));
        ?>
\",\n    \t                \t\"digits\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_digits', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_digits, $id));
        ?>
\",\n    \t                \t\"max\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_max', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_max, $id));
        ?>
\",\n    \t                \t\"min\": \"<?php 
        echo str_replace(array('"'), array('\\"'), cp_calculatedfieldsf_get_option('vs_text_min', CP_CALCULATEDFIELDSF_DEFAULT_vs_text_min, $id));
        ?>
\",\"previous\": \"<?php 
        echo str_replace(array('"'), array('\\"'), $previous_label);
        ?>
\",\"next\": \"<?php 
        echo str_replace(array('"'), array('\\"'), $next_label);
        ?>
\",\"pageof\": \"<?php 
        echo str_replace(array('"'), array('\\"'), $page_of_label);
        ?>
\"\n    \t                }}"};
     /* ]]> */
     </script>     
     <script type='text/javascript' src='<?php 
        echo cp_calculatedfieldsf_get_site_url() . (strpos(cp_calculatedfieldsf_get_site_url(), '?') === false ? '/?' : '&') . 'cp_cff_resources=public';
        ?>
'></script>
<?php 
    }
}
コード例 #3
0
        /**
         * Display the form associated to the product
         */
        public function display_form()
        {
            global $post, $woocommerce;
            if ($this->apply_addon()) {
                $product = null;
                if (function_exists('get_product')) {
                    $product = get_product($post->ID);
                } else {
                    $product = new WC_Product($post->ID);
                }
                $form_content = cp_calculatedfieldsf_filter_content($this->form);
                // Initialize form fields
                if (!empty($_SESSION['cp_cff_form_data']) && !empty($_REQUEST['cp_calculatedfieldsf_id']) && !empty($_REQUEST['cp_calculatedfieldsf_pform_psequence'])) {
                    global $wpdb;
                    $result = $wpdb->get_row($wpdb->prepare("SELECT form_data.paypal_post AS paypal_post FROM " . CP_CALCULATEDFIELDSF_POSTS_TABLE_NAME . " AS form_data WHERE form_data.id=%d AND form_data.formid=%d", $_SESSION['cp_cff_form_data'], $_REQUEST['cp_calculatedfieldsf_id']));
                    if (!is_null($result)) {
                        $arr = array();
                        $submitted_data = unserialize($result->paypal_post);
                        foreach ($submitted_data as $key => $val) {
                            if (preg_match('/^fieldname\\d+$/', $key)) {
                                $arr[$key . $_REQUEST['cp_calculatedfieldsf_pform_psequence']] = $val;
                            }
                        }
                        ?>
						<script>
							cpcff_default  = ( typeof cpcff_default != 'undefined' ) ? cpcff_default : {};
							cpcff_default[ 'form_structure<?php 
                        echo $_REQUEST['cp_calculatedfieldsf_pform_psequence'];
                        ?>
' ] = <?php 
                        echo json_encode($arr);
                        ?>
;
						</script>
				<?php 
                    }
                }
                unset($_SESSION['cp_cff_form_data']);
                // Remove the form tags
                if (preg_match('/<form[^>]*>/', $form_content, $match)) {
                    $form_content = str_replace($match[0], '', $form_content);
                    $form_content = preg_replace('/<\\/form>/', '', $form_content);
                }
                $tmp = get_post_meta($post->ID, 'woocommerce_cpcff_calculate_price', true);
                $request_cost = !empty($tmp) ? cp_calculatedfieldsf_get_option('request_cost', false, $this->form['id']) : false;
                echo '<div class="cpcff-woocommerce-wrapper">' . $form_content . (method_exists($woocommerce, 'nonce_field') ? $woocommerce->nonce_field('add_to_cart') : '') . '<input type="hidden" name="woocommerce_cpcff_product" value="' . $post->ID . '" />' . ($request_cost ? '<input type="hidden" name="woocommerce_cpcff_field" value="' . $request_cost . '" /><input type="hidden" name="woocommerce_cpcff_form" value="' . $this->form['id'] . '">' : '') . '</div>';
                $add_to_cart_value = '';
                if ($product->is_type('variable')) {
                    $add_to_cart_value = 'variation';
                } elseif ($product->has_child()) {
                    $add_to_cart_value = 'group';
                } else {
                    $add_to_cart_value = $product->id;
                }
                if (!function_exists('get_product')) {
                    //1.x only
                    if (method_exists($woocommerce, 'nonce_field')) {
                        $woocommerce->nonce_field('add_to_cart');
                    }
                    echo '<input type="hidden" name="add-to-cart" value="' . $add_to_cart_value . '" />';
                } else {
                    echo '<input type="hidden" name="add-to-cart" value="' . $post->ID . '" />';
                }
            }
            echo '<div class="clear"></div>';
        }
                echo $pitem;
                ?>
<br />
					<?php 
            }
            ?>
					</div>
					<div class="clearer"></div>
				</div>
			<?php 
        }
        ?>
  
			</div>
			<?php 
        if (cp_calculatedfieldsf_get_option('enable_submit', '', $id) == '') {
            ?>
			<div id="cp_subbtn<?php 
            echo $CP_CFF_global_form_count;
            ?>
" class="cp_subbtn"><?php 
            _e($button_label);
            ?>
</div>
			<?php 
        }
        ?>
			<div class="clearer"></div>
		</div>
	<?php 
    }
if (!defined('CP_AUTH_INCLUDE')) {
    echo 'Direct access not allowed.';
    exit;
}
?>
<link href="<?php 
echo plugins_url('css/stylepublic.css', __FILE__);
?>
" type="text/css" rel="stylesheet" />
<link href="<?php 
echo plugins_url('css/cupertino/jquery-ui-1.8.20.custom.css', __FILE__);
?>
" type="text/css" rel="stylesheet" />
<?php 
$raw_form_str = str_replace("\r", " ", str_replace("\n", " ", cp_calculatedfieldsf_cleanJSON(cp_calculatedfieldsf_get_option('form_structure', CP_CALCULATEDFIELDSF_DEFAULT_form_structure, $id))));
$form_data = json_decode($raw_form_str);
if (is_null($form_data)) {
    $json = new JSON();
    $form_data = $json->unserialize($raw_form_str);
}
if (!is_null($form_data) && isset($form_data[1]) && isset($form_data[1][0]) && isset($form_data[1][0]->formtemplate)) {
    $templatelist = cp_calculatedfieldsf_available_templates();
    if (isset($templatelist[$form_data[1][0]->formtemplate])) {
        print '<link href="' . esc_attr(esc_url($templatelist[$form_data[1][0]->formtemplate]['file'])) . '" type="text/css" rel="stylesheet" />';
        if (isset($templatelist[$form_data[1][0]->formtemplate]['js'])) {
            print '<script src="' . esc_attr(esc_url($templatelist[$form_data[1][0]->formtemplate]['js'])) . '"></script>';
        }
    }
}
$raw_form_str = str_replace('"', '&quot;', esc_attr($raw_form_str));
コード例 #6
0
?>
>Font 1</option>
              <option value="font-2.ttf"<?php 
if ("font-2.ttf" == cp_calculatedfieldsf_get_option('cv_font', CP_CALCULATEDFIELDSF_DEFAULT_cv_font)) {
    echo " selected";
}
?>
>Font 2</option>
              <option value="font-3.ttf"<?php 
if ("font-3.ttf" == cp_calculatedfieldsf_get_option('cv_font', CP_CALCULATEDFIELDSF_DEFAULT_cv_font)) {
    echo " selected";
}
?>
>Font 3</option>
              <option value="font-4.ttf"<?php 
if ("font-4.ttf" == cp_calculatedfieldsf_get_option('cv_font', CP_CALCULATEDFIELDSF_DEFAULT_cv_font)) {
    echo " selected";
}
?>
>Font 4</option>
            </select>            
         </td>              
        </tr>                              
     </table>  
  </div>    
 </div>    

 <?php 
global $cpcff_addons_objs_list, $cpcff_addons_active_list;
if (count($cpcff_addons_active_list)) {
    _e('<h2>Add-Ons Settings:</h2><hr />', 'calculated-fields-form');