Ejemplo n.º 1
0
 /**
  * Fields Form Design array.
  *
  * @var  array
  */
 public static function wr_contactform_get_field()
 {
     $listField = array('fields' => array('form_style' => array('type' => 'hidden', 'name' => 'wr_contactform[form_style]'), 'form_settings' => array('type' => 'hidden', 'name' => 'wr_contactform[form_settings]'), 'form_type' => array('type' => 'select', 'name' => 'wr_contactform[form_type]', 'attributes' => array('id' => 'jform_form_type', 'style' => 'width:130px', 'class' => 'jsn-input-fluid'), 'choices' => array('1' => 'Single page', '2' => 'Multiple pages')), 'list_email_send_to' => array('type' => 'hidden', 'name' => 'wr_contactform[list_email_send_to]'), 'list_email_send_to_submitter' => array('type' => 'hidden', 'name' => 'wr_contactform[list_email_send_to_submitter]'), 'content_email_send_to' => array('type' => 'hidden', 'name' => 'wr_contactform[content_email_send_to]'), 'content_email_send_to_submitter' => array('type' => 'hidden', 'name' => 'wr_contactform[content_email_send_to_submitter]'), 'form_post_action_data' => array('type' => 'hidden', 'name' => 'wr_contactform[form_post_action_data]'), 'action_save_submissions' => array('type' => 'radio', 'name' => 'wr_contactform[action_save_submissions]', 'choices' => array('Yes' => 'Yes', 'No' => 'No'), 'default' => 'Yes'), 'form_post_action' => array('type' => 'select', 'name' => 'wr_contactform[form_post_action]', 'choices' => WR_Contactform_Helpers_Contactform::get_link_types(), 'attributes' => array('id' => 'jform_form_post_action', 'class' => 'jsn-input-fluid')), 'form_post_action_data' => array('name' => __('Action Data', WR_CONTACTFORM_TEXTDOMAIN), 'id' => 'form_post_action_data', 'type' => 'action-data', 'items' => WR_Contactform_Helpers_Contactform::get_single_item_button_bar())));
     $getListField = apply_filters('wr_contactform_list_field_settings_form', $listField);
     if (!empty($getListField)) {
         $listField = $getListField;
     }
     return $listField;
 }
Ejemplo n.º 2
0
 /**
  *  set default action
  */
 public function default_action()
 {
     $formId = !empty($_GET['form_id']) ? (int) $_GET['form_id'] : 0;
     if (!empty($formId)) {
         $meta = get_post_meta((int) $formId);
         $formStyle = new stdClass();
         if (!empty($meta['form_style'][0])) {
             $formStyle = json_decode($meta['form_style'][0]);
         }
         $customCss = '';
         $globalFormStyle = get_option('wr_contactform_style');
         $formStyleCustom = new stdClass();
         if (!empty($formStyle)) {
             $formStyleCustom = $formStyle;
             $customCss = !empty($formStyleCustom->custom_css) ? $formStyleCustom->custom_css : '';
             if (!empty($globalFormStyle)) {
                 $globalFormStyle = json_decode($globalFormStyle);
                 if (!empty($globalFormStyle->themes_style)) {
                     foreach ($globalFormStyle->themes_style as $key => $value) {
                         $formStyleCustom->themes_style->{$key} = $value;
                     }
                 }
                 if (!empty($globalFormStyle->themes)) {
                     foreach ($globalFormStyle->themes as $key => $value) {
                         $formStyleCustom->themes[] = $value;
                     }
                 }
             }
         }
         if (!empty($formStyleCustom->theme) && !empty($formStyleCustom->themes_style) && $formStyleCustom->theme != 'wr-style-light' && $formStyleCustom->theme != 'wr-style-dark') {
             $theme = str_replace('wr-style-', '', $formStyleCustom->theme);
             if (!empty($formStyleCustom->themes_style->{$theme})) {
                 $formStyleCustom = json_decode($formStyleCustom->themes_style->{$theme});
             }
         }
         header('Content-Type: text/css;X-Content-Type-Options: nosniff;');
         echo '' . WR_Contactform_Helpers_Contactform::generate_style_pages($formStyleCustom, '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group', '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.ui-state-highlight', '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .control-label', '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-block,' . '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-inline,' . '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-block span.label', '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .label-important,' . '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .label-important .badge-important', '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .controls input,' . '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .controls select,' . '#wr_form_' . $formId . '.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .controls textarea');
         echo ' ' . $customCss;
         exit;
     }
 }
Ejemplo n.º 3
0
    /**
     * generate HTML Pages
     *
     * @param   Object  $postId          Post Id
     * @param   Object  $formId          Form Id
     * @param   String  $formName        Form Name
     * @param   String  $formType        Form Type
     * @param   String  $topContent      Module Top content
     * @param   String  $bottomContent   Module Bottom Content
     * @param   String  $showTitle       State Show Title Form
     * @param   String  $showDes         State Show Description Form
     *
     * @return string
     */
    public static function generate_html_pages($postId, $formId, $formName, $formType = '', $topContent = '', $bottomContent = '', $showTitle = false, $showDes = false)
    {
        $html = '';
        $assets = array();
        // add Filter apply assets
        load_plugin_textdomain(WR_CONTACTFORM_TEXTDOMAIN, false, WR_CONTACTFORM_TEXTDOMAIN . '/frontend/languages/');
        //$assets[ ] = 'wr-contactform-jquery-ui-css';
        $loadBootstrap = get_option('wr_contactform_load_bootstrap_css', 1);
        if ($loadBootstrap != '0' && $loadBootstrap != 0) {
            $assets[] = 'wr-bootstrap2-css';
        }
        $items = get_post_meta((int) $postId);
        $formPages = self::get_form_content((int) $formId);
        $scheme = parse_url(get_site_url(), PHP_URL_SCHEME);
        /* define language */
        $arrayTranslated = array('The password must contain minimum %mi% and maximum %mx% character(s)', 'Both email addresses must be the same.', 'The number cannot be less than', 'The number cannot be greater than', 'WR_CONTACTFORM_DATE_HOUR_TEXT', 'WR_CONTACTFORM_DATE_MINUTE_TEXT', 'WR_CONTACTFORM_DATE_CLOSE_TEXT', 'Prev', 'Next', 'Today', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Wk', 'The information cannot contain more than', 'The information cannot contain less than', 'WR_CONTACTFORM_CAPTCHA_PUBLICKEY', 'WR_CONTACTFORM_BUTTON_BACK', 'WR_CONTACTFORM_BUTTON_NEXT', 'WR_CONTACTFORM_BUTTON_RESET', 'WR_CONTACTFORM_BUTTON_SUBMIT', 'This field can not be empty, please enter required information.', 'The information is invalid, please correct.');
        /* Check load JS */
        $checkLoadJS = array();
        $checkLoadJSTipsy = false;
        $formSettings = !empty($items['form_settings'][0]) ? json_decode($items['form_settings'][0]) : '';
        if ($formPages) {
            $formStyleCustom = new stdClass();
            if (!empty($items['form_style'][0])) {
                $formStyleCustom = json_decode($items['form_style'][0]);
            }
            $dataSumbission = '';
            $classForm = !empty($formStyleCustom->layout) ? $formStyleCustom->layout : '';
            $formTheme = !empty($formStyleCustom->theme) ? $formStyleCustom->theme : '';
            if (!$formType) {
                wp_enqueue_style('contactform_form_' . $formId, site_url() . '/?wr-cf-gadget=contactform-style&action=default&form_id=' . $formId);
                $html .= "<div class=\"wr-contactform jsn-master\" data-form-name='" . $formName . "' id='wr_form_" . $formId . "'><div class=\"jsn-bootstrap\">";
                $html .= $topContent;
                $html .= "<form name='form_{$formName}' id='form_{$formName}' action=\"" . site_url() . '/?wr-cf-gadget=contactform-frontend&action=default&task=form.save&form_id=' . $formId . "\" method=\"post\" class=\"form-validate {$classForm} \" enctype=\"multipart/form-data\" >";
                $html .= "<span class=\"hide wr-language\" style=\"display:none;\" data-value='" . json_encode(WR_Contactform_Helpers_Contactform::get_translated($arrayTranslated)) . "'></span>";
                $html .= '<span class="hide wr-base-url" style="display:none;" data-value="' . get_site_url() . '"></span>';
                $html .= '<div id="page-loading" class="jsn-bgloading"><i class="jsn-icon32 jsn-icon-loading"></i></div>';
                $html .= '<div class="jsn-row-container ' . $formTheme . '">';
            }
            $html .= '<div class="message-contactform"> </div>';
            include_once WR_CONTACTFORM_PATH . 'helpers/form.php';
            foreach ($formPages as $i => $contentForm) {
                $pageContainer = !empty($contentForm->page_container) && json_decode($contentForm->page_container) ? $contentForm->page_container : '[[{"columnName":"left","columnClass":"span12"}]]';
                $formContent = isset($contentForm->page_content) ? json_decode($contentForm->page_content) : '';
                $htmlForm = '';
                if (!empty($formContent)) {
                    foreach ($formContent as $content) {
                        if (!empty($content->options->instruction) || !empty($content->instruction)) {
                            $checkLoadJSTipsy = true;
                        }
                        if (!empty($content->type)) {
                            $checkLoadJS[$content->type] = $content->type;
                        }
                    }
                    $htmlForm .= WR_Contactform_Helpers_Form::generate($formContent, $dataSumbission, $pageContainer);
                }
                $html .= "<div data-value=\"{$contentForm->page_id}\" class=\"jsn-form-content hide\">{$htmlForm}";
                if ($i + 1 == count($formPages)) {
                    $global_captcha_setting = get_option('wr_contactform_global_captcha_setting', 2);
                    if ($global_captcha_setting != 0) {
                        if (!empty($formSettings->form_captcha) && $formSettings->form_captcha == 1) {
                            if ($scheme == 'https') {
                                $html .= '<script type="text/javascript" src="https://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>';
                            } else {
                                $html .= '<script type="text/javascript" src="http://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>';
                            }
                            $html .= '<div id="' . md5(date('Y-m-d H:i:s') . $i . $formName) . '"  publickey="' . WR_CONTACTFORM_CAPTCHA_PUBLICKEY . '" class="form-captcha control-group"></div>';
                        } else {
                            if (!empty($formSettings->form_captcha) && $formSettings->form_captcha == 2 || $global_captcha_setting == 1) {
                                include_once WR_CONTACTFORM_PATH . 'libraries/3rd-party/securimage/securimage.php';
                                $img = new Securimage();
                                $img->case_sensitive = true;
                                // true to use case sensitve codes - not recommended
                                $img->image_bg_color = new Securimage_Color('#ffffff');
                                // image background color
                                $img->text_color = new Securimage_Color('#000000');
                                // captcha text color
                                $img->num_lines = 0;
                                // how many lines to draw over the image
                                $img->line_color = new Securimage_Color('#0000CC');
                                // color of lines over the image
                                $img->namespace = $formName;
                                $img->signature_color = new Securimage_Color(rand(0, 64), rand(64, 128), rand(128, 255));
                                // random signature color
                                ob_start();
                                $img->show(WR_CONTACTFORM_PATH . 'libraries/3rd-party/securimage/backgrounds/bg4.png');
                                $dataCaptcha = base64_encode(ob_get_clean());
                                $html .= '<div class="control-group wr-captcha-block">
										<div class="controls">
										<div class="row-fluid"><img src="data:image/png;base64,' . $dataCaptcha . '" alt="CAPTCHA" /></div>
										<input type="text" id="wr-captcha" name="captcha" autocomplete="off" placeholder="' . __('Captcha', WR_CONTACTFORM_TEXTDOMAIN) . '">
										</div>
										</div>';
                            }
                        }
                    }
                }
                $html .= '</div>';
            }
            $btnNext = !empty($formSettings->form_btn_next_text) ? $formSettings->form_btn_next_text : 'Next';
            $btnPrev = !empty($formSettings->form_btn_prev_text) ? $formSettings->form_btn_prev_text : 'Prev';
            $btnSubmit = !empty($formSettings->form_btn_submit_text) ? $formSettings->form_btn_submit_text : 'Submit';
            $btnReset = !empty($formSettings->form_btn_reset_text) ? $formSettings->form_btn_reset_text : 'Reset';
            $btnNextStyle = !empty($formStyleCustom->button_next_color) ? $formStyleCustom->button_next_color : 'btn  btn-primary';
            $btnPrevStyle = !empty($formStyleCustom->button_prev_color) ? $formStyleCustom->button_prev_color : 'btn';
            $btnSubmitStyle = !empty($formStyleCustom->button_submit_color) ? $formStyleCustom->button_submit_color : 'btn  btn-primary';
            $btnResetStyle = !empty($formStyleCustom->button_reset_color) ? $formStyleCustom->button_reset_color : 'btn';
            $btnPosition = !empty($formStyleCustom->button_position) ? $formStyleCustom->button_position : 'btn-toolbar';
            $htmlBtnReset = '';
            if (!empty($formSettings->form_state_btn_reset_text) && $formSettings->form_state_btn_reset_text == 'Yes') {
                $htmlBtnReset = '<button class="' . $btnResetStyle . ' reset" onclick="return false;">' . __($btnReset, WR_CONTACTFORM_TEXTDOMAIN) . '</button>';
            }
            $html .= '<div class="form-actions">
									<div class="' . $btnPosition . '">
									    <button class="' . $btnPrevStyle . ' prev hide" onclick="return false;">' . __($btnPrev, WR_CONTACTFORM_TEXTDOMAIN) . '</button>
									    <button class="' . $btnNextStyle . ' next hide" onclick="return false;">' . __($btnNext, WR_CONTACTFORM_TEXTDOMAIN) . '</button>
									    <button type="submit" class="' . $btnSubmitStyle . ' jsn-form-submit hide" >' . __($btnSubmit, WR_CONTACTFORM_TEXTDOMAIN) . '</button>
									    ' . $htmlBtnReset . '
									</div>
								     </div>';
            $postAction = isset($items['form_post_action'][0]) ? $items['form_post_action'][0] : '';
            $postActionData = isset($items['form_post_action_data'][0]) ? $items['form_post_action_data'][0] : '';
            $html .= '<input type="hidden" name="form_name" value="' . $formName . '" />';
            if (!$formType) {
                $html .= '</div>';
                $html .= '<input type="hidden" name="form_id" value="' . $formId . '" />';
                $html .= '<input type="hidden" id="form_post_action" name="form_post_action" value="' . $postAction . '" />';
                $html .= '<input type="hidden" name="form_post_action_data" value=\'' . htmlentities(json_encode(unserialize($postActionData)), ENT_QUOTES, 'UTF-8') . '\' />';
                $html .= '</form>';
                $html .= $bottomContent;
                $html .= '</div></div>';
            }
            /* Load JS */
            if (!empty($checkLoadJS['date'])) {
                $assets[] = 'wr-jquery-ui-css';
            }
            wp_enqueue_script('jquery');
            //$assets[ ] = 'wr-jquery-json-js';
            $assets[] = 'wr-jquery-placeholder-js';
            if ($checkLoadJSTipsy) {
                $assets[] = 'wr-jquery-tipsy-css';
                $assets[] = 'wr-jquery-tipsy-js';
            }
            $assets[] = 'wr-jquery-scrollto-js';
            $loadBootstrapJs = get_option('wr_contactform_load_bootstrap_js', 1);
            if ($loadBootstrapJs != '0' && $loadBootstrapJs != 0) {
                $assets[] = 'wr-frontend-contactform-bootstrap-js';
            }
            if (!empty($checkLoadJS['date'])) {
                wp_enqueue_script('jquery-ui');
                wp_enqueue_script('jquery-ui-datepicker');
                $assets[] = 'wr-jquery-daterangepicker-js';
                $assets[] = 'wr-jquery-timepicker-js';
            }
            if (!empty($checkLoadJS['google-maps'])) {
                if ($scheme == 'https') {
                    $assets[] = 'wr-https-googlemaps-api-js';
                } else {
                    $assets[] = 'wr-http-googlemaps-api-js';
                }
                $assets[] = 'wr-googlemaps-ui-js';
                $assets[] = 'wr-googlemaps-services-js';
                $assets[] = 'wr-googlemaps-extensions-js';
            }
            $getFilterAssets = apply_filters('wr_contactform_filter_frontend_load_assets', $assets, $checkLoadJS);
            if (!empty($getFilterAssets)) {
                $assets = $getFilterAssets;
            }
            $assets[] = 'wr-frontend-contactform-js';
        }
        $assets[] = 'wr-bootstrap2-icomoon-css';
        $assets[] = 'wr-bootstrap2-jsn-gui-css';
        $assets[] = 'wr-frontend-contactform-css';
        WR_CF_Init_Assets::load($assets);
        return $html;
    }
    /**
     *  set default action
     */
    public function default_action()
    {
        require_once ABSPATH . 'wp-admin/includes/admin.php';
        auth_redirect();
        header('Content-Type: application/javascript');
        $mainContent = array();
        /* Create filter get js main content submissions */
        $mainContent = apply_filters('wr_contactform_js_submissions_main_content', $mainContent);
        $listForm = new stdClass();
        $forms = get_posts(array('post_type' => 'wr_cf_post_type', 'post_status' => 'any', 'numberposts' => '999999'));
        if (!empty($forms)) {
            foreach ($forms as $f) {
                $meta = get_post_meta((int) $f->ID);
                if (!empty($meta['form_id'][0])) {
                    $fID = (int) $meta['form_id'][0];
                } else {
                    $fID = (int) $f->ID;
                }
                $fielForm = WR_Contactform_Helpers_Contactform::get_filed_by_form_id($fID);
                if (!empty($fielForm)) {
                    $column = array();
                    $column['date_created'] = __('Date Submitted', WR_CONTACTFORM_TEXTDOMAIN);
                    foreach ($fielForm as $field) {
                        if (!empty($field->field_id) && !empty($field->field_type) && !in_array($field->field_type, array('static-content', 'google-maps'))) {
                            $column[$field->field_id] = !empty($field->field_title) ? $field->field_title : '';
                        }
                    }
                    $column['ip'] = __('IP Address', WR_CONTACTFORM_TEXTDOMAIN);
                    $column['browser'] = __('Browser', WR_CONTACTFORM_TEXTDOMAIN);
                    $column['os'] = __('Operating System', WR_CONTACTFORM_TEXTDOMAIN);
                    $listForm->{$fID} = $column;
                }
            }
        }
        global $wp_version;
        if (version_compare($wp_version, '4.3', '>=')) {
            // version is 4.3 or higher
            $javascript = '(function ($) {
					    $(function () {
						var listForm = $.parseJSON(\'' . json_encode($listForm) . '\');

						$("#wpbody-content .wrap h1").html("Submissions ");
					    $("#wpbody-content .wrap h1").append(
					       $("<input/>",{"type":"button","class":"button","id":"btn-contactform-export","value":"Export"})
					    );
					    $(".jsn-modal-overlay,.jsn-modal-indicator").remove();
					                $("body").append($("<div/>", {
					                    "class":"jsn-modal-overlay",
					                    "style":"z-index: 1000; display: inline;"
					                })).append($("<div/>", {
					                    "class":"jsn-modal-indicator",
					                    "style":"display:block"
					                })).addClass("jsn-loading-page");
					        $("#wpbody .wrap h2 a.add-new-h2").remove();
					        $("#search-submit").val(\'Search...\');
					        var exportField = $("<ul/>", {"class":"container-export jsn-items-list ui-sortable"}).append(
					            $("<li/>",{"class":"jsn-item field-disabled"}).append(
					                 $("<label/>", {"class":"uf-check-all checkbox"}).append(
							                $("<input/>", {"id":"contactform-export-checkall", "type":"checkbox", "name":"contactform_field_export[]"})
							            ).append("Check All")
					            )
					        )
					        $("#adv-settings .metabox-prefs label").each(function () {
					            $(exportField).append(
					                $("<li/>", {"class":"field jsn-item"}).append(
					                    $("<label/>", {"class":"checkbox"}).append(
					                        $("<input/>", {"type":"checkbox", "value":$(this).find("input[type=checkbox]").val()})
					                    ).append($(this).text())
					                )
					            )
					        });
				            var count = $(".subsubsub .count").text();
				            count = count.replace("(","");
				            count = count.replace(")","");
					        if( $("#the-list>.no-items").length>0 && parseInt(count)<1){
								$("#btn-contactform-export,#wr-submission-filter-date,#clear-submit,.actions.bulkactions").remove();
								$("#the-list>.no-items .colspanchange").html("No submissions found.");
								$("#post-query-submit").hide();
								$.checkColspan();

					         }
							$("#dropdown_wr_form_id").change(function(){
								$(this).parents("form").submit();
							})
							if($("#dropdown_wr_form_id").val()=="-1"){
									$("table.wp-list-table").hide();
									$("#post-query-submit").hide();
							}
					        $("#clear-submit").click(function(){
								//$("#dropdown_wr_form_id option[value=-1]").attr("selected","selected");
								$("#wr-submission-filter-date").val("");
							//	$("#post-search-input").val("");
								return false;

					        });
					        $(".bulkactions select[name=action] option[value=edit]").remove();
				            $("#wr-submission-filter-date").daterangepicker({
	                        startDate:moment().subtract("days", 29),
	                        endDate:moment(),
	                        showDropdowns:true,
	                        showWeekNumbers:true,
	                        ranges:{
	                            "Today":[moment(), moment()],
	                            "Yesterday":[moment().subtract("days", 1), moment().subtract("days", 1)],
	                            "Last 7 Days":[moment().subtract("days", 6), moment()],
	                            "Last 30 Days":[moment().subtract("days", 29), moment()]
	                        },
	                        beforeShow:function(input) {
						        $(input).css({
						            "position": "relative",
						            "z-index": 999999
						        });
						    },
	                        opens:"right",
	                        buttonClasses:["btn btn-default"],
	                        applyClass:"btn-small btn-primary",
	                        cancelClass:"btn-small",
	                        format:"MM/DD/YYYY",
	                        separator:" - ",
	                        locale:{
	                            applyLabel:"Apply",
	                            fromLabel:"From",
	                            toLabel:"To",
	                            customRangeLabel:"Custom Range",
	                            daysOfWeek:["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
	                            monthNames:["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
	                            firstDay:1
		                        }
		                    });
		                    $(".daterangepicker").addClass("jsn-bootstrap hide");

					        $("body").addClass("jsn-master");
					        $("#dialog-export").remove();
					        $("#btn-contactform-export").after(
					            $("<div/>", {
					                "id":"dialog-export"
					            }).append(
					                $("<div/>", {
					                    "class":"ui-dialog-content-inner jsn-bootstrap"
					                }).append(
					                    $("<form/>", {"action":"?wr-cf-gadget=contactform-export&action=default", "method":"post", "id":"contactform_form_export"}).append(exportField).append(
					                        $("<input/>", {"type":"hidden", "name":"form_id", "id":"form_id"})
					                    ).append(
					                        $("<input/>", {"type":"hidden", "name":"task", "id":"task"})
					                    ).append(
					                        $("<input/>", {"type":"hidden", "name":"fieldExport", "id":"fieldExport"})
					                    ).append(
					                        $("<input/>", {"type":"hidden", "name":"exportType", "id":"exportType"})
					                    ).append(
					                        $("<input/>", {"type":"hidden", "name":"exportDate", "id":"exportDate"})
					                    ).append(
					                        $("<input/>", {"type":"hidden", "name":"form_title", "id":"form_title"})
					                    )
					                )
					            )
					        );
					        ' . implode('', $mainContent) . '
					        $("#dialog-export").dialog({
					            height:600,
					            width:700,
					            title:"Export Submissions Data",
					            draggable:false,
					            resizable:false,
					            autoOpen:false,
					            modal:true,
					            buttons:{
					                Export:function () {
					                    var checkExport = false;
					                    $("#dialog-export .container-export .field.jsn-item input[type=\\"checkbox\\"]").each(function () {
					                        if ($(this).is(\':checked\') == true) {
					                            checkExport = true;
					                        }
					                    });
					                    if (checkExport == false) {
					                        alert(\'Please select the field to get submissions\');
					                        return false;
					                    }
					                    var formID = $("#export_form_id").val();
					                    var exportType = $(".contactform-export-type").val();
					                     var exportDate = $(" #filter_date_submission").val();
					                    var fieldExport = [];
					                    $("#dialog-export .container-export .field.jsn-item input[type=checkbox]").each(function () {
					                        if ($(this).is(\':checked\') == true) {
					                            fieldExport.push($(this).val());
					                        }
					                    });
					                    $("#dialog-export #contactform_form_export #form_id").val(formID);
					                    $("#dialog-export #contactform_form_export #task").val(\'contactform.export\');
					                    $("#dialog-export #contactform_form_export #fieldExport").val(JSON.stringify(fieldExport));
					                    $("#dialog-export #contactform_form_export #exportType").val(exportType);
					                    $("#dialog-export #contactform_form_export #exportDate").val(exportDate);
					                    $("#dialog-export #contactform_form_export #form_title").val($("#dropdown_wr_form_id option:selected").text());
					                    $("#dialog-export #contactform_form_export").submit();

					                    //  $.post("?wr-cf-gadget=contactform-export&action=default", {\'form_id\':formID, \'task\':\'contactform.export\', \'fieldExport\':fieldExport, \'exportType\':exportType, \'form_title\':$("#dropdown_wr_form_id option:selected").text()});
					                },
					                Close:function () {
					                    $(this).dialog("close");
					                }
					            }
					        });
					        var selectForm = $("<select/>",{"id":"export_form_id","class":"input-medium"}).change(function(){
					           $("ul.container-export .field.jsn-item").remove();
					           var getItemForm = listForm[$(this).val()];
					           if(getItemForm){
					                $.each(getItemForm,function(i,val){
					                    $("ul.container-export").append(
					                       $("<li/>", {"class":"field jsn-item"}).append(
							                    $("<label/>", {"class":"checkbox"}).append(
							                        $("<input/>", {"type":"checkbox", "value":i})
							                    ).append(val)
							                )
					                    );
					                })
					           }
					        });

					        $("#dropdown_wr_form_id option").each(function(){
					            var idForm  = $(this).val();
					            var titleForm = $(this).text();
					            var selected = false;
					            if($(this).is(":selected")){
					                selected = true;
					            }
					           $(selectForm).append(
					            $("<option/>",{"value":idForm,"selected":selected}).append(titleForm)
					           );
					        });
					        $(".container-export").before(
					           $("<div/>",{"class":"row-fluid wr-contactform-export-option"}).append(
				                    $("<div/>",{"class":"span8"}).append(
										$("<div/>",{"class":"inline"}).append(selectForm)
						            ).append(
						                 $("<div/>",{"class":"inline"}).append( $("<input/>",{"type":"text","id":"filter_date_submission","title":"Search in submissions date","name":"filter_date_submission","placeholder":"- Select Date -","class":"input-medium"}))
						            ).append(
						                $("<div/>",{"class":"inline"}).append(
						                    $("<input/>",{"class":"btn","type":"button","value":"Clear"}).click(function(){
						                        $("#filter_date_submission").val("");
						                    })
						                )
						            )
					           ).append(
				                    $("<div/>",{"class":"span4"}).append(
				                             $("<div/>", {"class":"wr-contactform-filter-date pull-right"}).append(
					                         $("<span/>").append("Export to:")
							                ).append(
								                $("<select/>", {"name":"contactform_export_type", "class":"contactform-export-type input-small"}).append(
								                    $("<option/>", {"value":"excel", "text":"Excel"})
								                ).append(
								                    $("<option/>", {"value":"csv", "text":"CSV"})
								                )
							                )
							        )
					           )
					        ).sortable({
			                    items:"li:not(.field-disabled)"
			                });
					        $("#contactform_exp_end,#contactform_exp_start").keypress(function (e) {
					            if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
					                return false;
					            }
					        }).change(function () {
					                if ($(this).val() > total) {
					                    $(this).val(total);
					                }
					            })
					        $("#contactform-export-checkall").click(function () {
					            if ($(this).is(\':checked\') == true) {
					                $(this).prop("checked", true);
					                $("#dialog-export .container-export input[type=\\"checkbox\\"]").each(function () {
					                    if ($(this).is(\':checked\') == false) {
					                        $(this).prop("checked", true);
					                    }
					                });
					            } else {
					                $(this).prop("checked", false);
					                $("#dialog-export .container-export input[type=\\"checkbox\\"]").each(function () {
					                    $(this).prop("checked", false);
					                });
					            }
					        });
					        $("#btn-contactform-export").click(function () {
					        $("#dialog-export").dialog("open");
					            $("#filter_date_submission").daterangepicker({
		                        startDate:moment().subtract("days", 29),
		                        endDate:moment(),
		                        showDropdowns:true,
		                        showWeekNumbers:true,
		                        ranges:{
		                            "Today":[moment(), moment()],
		                            "Yesterday":[moment().subtract("days", 1), moment().subtract("days", 1)],
		                            "Last 7 Days":[moment().subtract("days", 6), moment()],
		                            "Last 30 Days":[moment().subtract("days", 29), moment()]
		                        },
		                        beforeShow:function(input) {
							        $(input).css({
							            "position": "relative",
							            "z-index": 999999
							        });
							    },
		                        opens:"right",
		                        buttonClasses:["btn btn-default"],
		                        applyClass:"btn-small btn-primary",
		                        cancelClass:"btn-small",
		                        format:"MM/DD/YYYY",
		                        separator:" - ",
		                        locale:{
		                            applyLabel:"Apply",
		                            fromLabel:"From",
		                            toLabel:"To",
		                            customRangeLabel:"Custom Range",
		                            daysOfWeek:["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
		                            monthNames:["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
		                            firstDay:1
			                        }
			                    });
			                    $(".daterangepicker").addClass("jsn-bootstrap hide");
					        });
					    });
					    setTimeout(function () {
					        $("#adv-settings .metabox-prefs label input[type=checkbox]").change(function(){
					            var columns = [];
					           $("#adv-settings .metabox-prefs label input[type=checkbox]:checked").each(function(){
					                columns.push($(this).val());
					           });
								 $.ajax({
		                            type:"POST",
		                            dataType:"json",
		                            url:"admin-ajax.php?action=wr_contactform_hidden_columns",
		                            data:{
		                                columns:columns,
		                                form_id:$("#dropdown_wr_form_id").val(),
		                            }
		                        });
		                        $.checkColspan();
					        });
					        $.ajax({
	                            type:"GET",
	                            dataType:"json",
	                            url:"admin-ajax.php?action=wr_contactform_hidden_columns",
	                            data:{
	                                form_id:$("#dropdown_wr_form_id").val(),
	                            },
	                            success:function (response) {
	                                if(response){
	                                    $("#adv-settings .metabox-prefs label input[type=checkbox]").each(function(){
	                                        var value = $(this).val();
	                                        var container = $(".wp-list-table").find("#"+value+","+"."+value+",.column-"+value);
							                if($.inArray($(this).val(),response)!=-1){
							                    $(this).attr("checked","checked");
							                     $(container).show();
							                }else{
							                    $(container).hide();
							                     $(this).removeAttr("checked");
							                }
							           });
	                                }else{
	                                    var defaultColumns = ["date_created","ip","browser","os"];
	                                    $("#adv-settings .metabox-prefs label input[type=checkbox]").each(function(){
	                                        var value = $(this).val();
	                                        var container = $(".wp-list-table").find("#"+value+","+"."+value+",.column-"+value);
							                if($.inArray(value,defaultColumns) != -1){
							                    $(container).show();
							                    $(this).attr("checked","checked");
							                }else{
							                     $(this).removeAttr("checked");
							                   $(container).hide();
							                }
							           });
	                                }
	                               $("#wpbody-content").show();
					               $(".jsn-modal-overlay,.jsn-modal-indicator").remove();
					               $.checkColspan();
	                            }
	                        });
					    }, 500);
						$.checkColspan = function(){
							var count = 0;
							$(".wp-list-table thead tr th").each(function(){
								if($(this).width()>1){
									count += 1;
								}
							});
							$("#the-list>.no-items .colspanchange").attr("colspan",count);
						}
					})(jQuery);';
            echo '' . $javascript;
        } else {
            // For WP Version < 4.3
            $javascript = '(function ($) {
				    $(function () {
					var listForm = $.parseJSON(\'' . json_encode($listForm) . '\');
				    $("#wpbody-content .wrap h2").append(
				       $("<input/>",{"type":"button","class":"button","id":"btn-contactform-export","value":"Export"})
				    );
				    $(".jsn-modal-overlay,.jsn-modal-indicator").remove();
				                $("body").append($("<div/>", {
				                    "class":"jsn-modal-overlay",
				                    "style":"z-index: 1000; display: inline;"
				                })).append($("<div/>", {
				                    "class":"jsn-modal-indicator",
				                    "style":"display:block"
				                })).addClass("jsn-loading-page");
				        $("#wpbody .wrap h2 a.add-new-h2").remove();
				        $("#search-submit").val(\'Search...\');
				        var exportField = $("<ul/>", {"class":"container-export jsn-items-list ui-sortable"}).append(
				            $("<li/>",{"class":"jsn-item field-disabled"}).append(
				                 $("<label/>", {"class":"uf-check-all checkbox"}).append(
						                $("<input/>", {"id":"contactform-export-checkall", "type":"checkbox", "name":"contactform_field_export[]"})
						            ).append("Check All")
				            )
				        )
				        $("#adv-settings .metabox-prefs label").each(function () {
				            $(exportField).append(
				                $("<li/>", {"class":"field jsn-item"}).append(
				                    $("<label/>", {"class":"checkbox"}).append(
				                        $("<input/>", {"type":"checkbox", "value":$(this).find("input[type=checkbox]").val()})
				                    ).append($(this).text())
				                )
				            )
				        });
			            var count = $(".subsubsub .count").text();
			            count = count.replace("(","");
			            count = count.replace(")","");
				        if( $("#the-list>.no-items").length>0 && parseInt(count)<1){
							$("#btn-contactform-export,#wr-submission-filter-date,#clear-submit,.actions.bulkactions").remove();
							$("#the-list>.no-items .colspanchange").html("No submissions found.");
							$("#post-query-submit").hide();
							$.checkColspan();

				         }
						$("#dropdown_wr_form_id").change(function(){
							$(this).parents("form").submit();
						})
						if($("#dropdown_wr_form_id").val()=="-1"){
								$("table.wp-list-table").hide();
								$("#post-query-submit").hide();
						}
				        $("#clear-submit").click(function(){
							//$("#dropdown_wr_form_id option[value=-1]").attr("selected","selected");
							$("#wr-submission-filter-date").val("");
						//	$("#post-search-input").val("");
							return false;

				        });
				        $(".bulkactions select[name=action] option[value=edit]").remove();
			            $("#wr-submission-filter-date").daterangepicker({
                        startDate:moment().subtract("days", 29),
                        endDate:moment(),
                        showDropdowns:true,
                        showWeekNumbers:true,
                        ranges:{
                            "Today":[moment(), moment()],
                            "Yesterday":[moment().subtract("days", 1), moment().subtract("days", 1)],
                            "Last 7 Days":[moment().subtract("days", 6), moment()],
                            "Last 30 Days":[moment().subtract("days", 29), moment()]
                        },
                        beforeShow:function(input) {
					        $(input).css({
					            "position": "relative",
					            "z-index": 999999
					        });
					    },
                        opens:"right",
                        buttonClasses:["btn btn-default"],
                        applyClass:"btn-small btn-primary",
                        cancelClass:"btn-small",
                        format:"MM/DD/YYYY",
                        separator:" - ",
                        locale:{
                            applyLabel:"Apply",
                            fromLabel:"From",
                            toLabel:"To",
                            customRangeLabel:"Custom Range",
                            daysOfWeek:["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
                            monthNames:["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
                            firstDay:1
	                        }
	                    });
	                    $(".daterangepicker").addClass("jsn-bootstrap hide");

				        $("body").addClass("jsn-master");
				        $("#dialog-export").remove();
				        $("#btn-contactform-export").after(
				            $("<div/>", {
				                "id":"dialog-export"
				            }).append(
				                $("<div/>", {
				                    "class":"ui-dialog-content-inner jsn-bootstrap"
				                }).append(
				                    $("<form/>", {"action":"?wr-cf-gadget=contactform-export&action=default", "method":"post", "id":"contactform_form_export"}).append(exportField).append(
				                        $("<input/>", {"type":"hidden", "name":"form_id", "id":"form_id"})
				                    ).append(
				                        $("<input/>", {"type":"hidden", "name":"task", "id":"task"})
				                    ).append(
				                        $("<input/>", {"type":"hidden", "name":"fieldExport", "id":"fieldExport"})
				                    ).append(
				                        $("<input/>", {"type":"hidden", "name":"exportType", "id":"exportType"})
				                    ).append(
				                        $("<input/>", {"type":"hidden", "name":"exportDate", "id":"exportDate"})
				                    ).append(
				                        $("<input/>", {"type":"hidden", "name":"form_title", "id":"form_title"})
				                    )
				                )
				            )
				        );
				        ' . implode('', $mainContent) . '
				        $("#dialog-export").dialog({
				            height:600,
				            width:700,
				            title:"Export Submissions Data",
				            draggable:false,
				            resizable:false,
				            autoOpen:false,
				            modal:true,
				            buttons:{
				                Export:function () {
				                    var checkExport = false;
				                    $("#dialog-export .container-export .field.jsn-item input[type=\\"checkbox\\"]").each(function () {
				                        if ($(this).is(\':checked\') == true) {
				                            checkExport = true;
				                        }
				                    });
				                    if (checkExport == false) {
				                        alert(\'Please select the field to get submissions\');
				                        return false;
				                    }
				                    var formID = $("#export_form_id").val();
				                    var exportType = $(".contactform-export-type").val();
				                     var exportDate = $(" #filter_date_submission").val();
				                    var fieldExport = [];
				                    $("#dialog-export .container-export .field.jsn-item input[type=checkbox]").each(function () {
				                        if ($(this).is(\':checked\') == true) {
				                            fieldExport.push($(this).val());
				                        }
				                    });
				                    $("#dialog-export #contactform_form_export #form_id").val(formID);
				                    $("#dialog-export #contactform_form_export #task").val(\'contactform.export\');
				                    $("#dialog-export #contactform_form_export #fieldExport").val(JSON.stringify(fieldExport));
				                    $("#dialog-export #contactform_form_export #exportType").val(exportType);
				                    $("#dialog-export #contactform_form_export #exportDate").val(exportDate);
				                    $("#dialog-export #contactform_form_export #form_title").val($("#dropdown_wr_form_id option:selected").text());
				                    $("#dialog-export #contactform_form_export").submit();

				                    //  $.post("?wr-cf-gadget=contactform-export&action=default", {\'form_id\':formID, \'task\':\'contactform.export\', \'fieldExport\':fieldExport, \'exportType\':exportType, \'form_title\':$("#dropdown_wr_form_id option:selected").text()});
				                },
				                Close:function () {
				                    $(this).dialog("close");
				                }
				            }
				        });
				        var selectForm = $("<select/>",{"id":"export_form_id","class":"input-medium"}).change(function(){
				           $("ul.container-export .field.jsn-item").remove();
				           var getItemForm = listForm[$(this).val()];
				           if(getItemForm){
				                $.each(getItemForm,function(i,val){
				                    $("ul.container-export").append(
				                       $("<li/>", {"class":"field jsn-item"}).append(
						                    $("<label/>", {"class":"checkbox"}).append(
						                        $("<input/>", {"type":"checkbox", "value":i})
						                    ).append(val)
						                )
				                    );
				                })
				           }
				        });

				        $("#dropdown_wr_form_id option").each(function(){
				            var idForm  = $(this).val();
				            var titleForm = $(this).text();
				            var selected = false;
				            if($(this).is(":selected")){
				                selected = true;
				            }
				           $(selectForm).append(
				            $("<option/>",{"value":idForm,"selected":selected}).append(titleForm)
				           );
				        });
				        $(".container-export").before(
				           $("<div/>",{"class":"row-fluid wr-contactform-export-option"}).append(
			                    $("<div/>",{"class":"span8"}).append(
									$("<div/>",{"class":"inline"}).append(selectForm)
					            ).append(
					                 $("<div/>",{"class":"inline"}).append( $("<input/>",{"type":"text","id":"filter_date_submission","title":"Search in submissions date","name":"filter_date_submission","placeholder":"- Select Date -","class":"input-medium"}))
					            ).append(
					                $("<div/>",{"class":"inline"}).append(
					                    $("<input/>",{"class":"btn","type":"button","value":"Clear"}).click(function(){
					                        $("#filter_date_submission").val("");
					                    })
					                )
					            )
				           ).append(
			                    $("<div/>",{"class":"span4"}).append(
			                             $("<div/>", {"class":"wr-contactform-filter-date pull-right"}).append(
				                         $("<span/>").append("Export to:")
						                ).append(
							                $("<select/>", {"name":"contactform_export_type", "class":"contactform-export-type input-small"}).append(
							                    $("<option/>", {"value":"excel", "text":"Excel"})
							                ).append(
							                    $("<option/>", {"value":"csv", "text":"CSV"})
							                )
						                )
						        )
				           )
				        ).sortable({
		                    items:"li:not(.field-disabled)"
		                });
				        $("#contactform_exp_end,#contactform_exp_start").keypress(function (e) {
				            if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
				                return false;
				            }
				        }).change(function () {
				                if ($(this).val() > total) {
				                    $(this).val(total);
				                }
				            })
				        $("#contactform-export-checkall").click(function () {
				            if ($(this).is(\':checked\') == true) {
				                $(this).prop("checked", true);
				                $("#dialog-export .container-export input[type=\\"checkbox\\"]").each(function () {
				                    if ($(this).is(\':checked\') == false) {
				                        $(this).prop("checked", true);
				                    }
				                });
				            } else {
				                $(this).prop("checked", false);
				                $("#dialog-export .container-export input[type=\\"checkbox\\"]").each(function () {
				                    $(this).prop("checked", false);
				                });
				            }
				        });
				        $("#btn-contactform-export").click(function () {
				        $("#dialog-export").dialog("open");
				            $("#filter_date_submission").daterangepicker({
	                        startDate:moment().subtract("days", 29),
	                        endDate:moment(),
	                        showDropdowns:true,
	                        showWeekNumbers:true,
	                        ranges:{
	                            "Today":[moment(), moment()],
	                            "Yesterday":[moment().subtract("days", 1), moment().subtract("days", 1)],
	                            "Last 7 Days":[moment().subtract("days", 6), moment()],
	                            "Last 30 Days":[moment().subtract("days", 29), moment()]
	                        },
	                        beforeShow:function(input) {
						        $(input).css({
						            "position": "relative",
						            "z-index": 999999
						        });
						    },
	                        opens:"right",
	                        buttonClasses:["btn btn-default"],
	                        applyClass:"btn-small btn-primary",
	                        cancelClass:"btn-small",
	                        format:"MM/DD/YYYY",
	                        separator:" - ",
	                        locale:{
	                            applyLabel:"Apply",
	                            fromLabel:"From",
	                            toLabel:"To",
	                            customRangeLabel:"Custom Range",
	                            daysOfWeek:["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
	                            monthNames:["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
	                            firstDay:1
		                        }
		                    });
		                    $(".daterangepicker").addClass("jsn-bootstrap hide");
				        });
				    });
				    setTimeout(function () {
				        $("#adv-settings .metabox-prefs label input[type=checkbox]").change(function(){
				            var columns = [];
				           $("#adv-settings .metabox-prefs label input[type=checkbox]:checked").each(function(){
				                columns.push($(this).val());
				           });
							 $.ajax({
	                            type:"POST",
	                            dataType:"json",
	                            url:"admin-ajax.php?action=wr_contactform_hidden_columns",
	                            data:{
	                                columns:columns,
	                                form_id:$("#dropdown_wr_form_id").val(),
	                            }
	                        });
	                        $.checkColspan();
				        });
				        $.ajax({
                            type:"GET",
                            dataType:"json",
                            url:"admin-ajax.php?action=wr_contactform_hidden_columns",
                            data:{
                                form_id:$("#dropdown_wr_form_id").val(),
                            },
                            success:function (response) {
                                if(response){
                                    $("#adv-settings .metabox-prefs label input[type=checkbox]").each(function(){
                                        var value = $(this).val();
                                        var container = $(".wp-list-table").find("#"+value+","+"."+value+",.column-"+value);
						                if($.inArray($(this).val(),response)!=-1){
						                    $(this).attr("checked","checked");
						                     $(container).show();
						                }else{
						                    $(container).hide();
						                     $(this).removeAttr("checked");
						                }
						           });
                                }else{
                                    var defaultColumns = ["date_created","ip","browser","os"];
                                    $("#adv-settings .metabox-prefs label input[type=checkbox]").each(function(){
                                        var value = $(this).val();
                                        var container = $(".wp-list-table").find("#"+value+","+"."+value+",.column-"+value);
						                if($.inArray(value,defaultColumns) != -1){
						                    $(container).show();
						                    $(this).attr("checked","checked");
						                }else{
						                     $(this).removeAttr("checked");
						                   $(container).hide();
						                }
						           });
                                }
                               $("#wpbody-content").show();
				               $(".jsn-modal-overlay,.jsn-modal-indicator").remove();
				               $.checkColspan();
                            }
                        });
				    }, 500);
					$.checkColspan = function(){
						var count = 0;
						$(".wp-list-table thead tr th").each(function(){
							if($(this).width()>1){
								count += 1;
							}
						});
						$("#the-list>.no-items .colspanchange").attr("colspan",count);
					}
				})(jQuery);';
            echo '' . $javascript;
        }
        exit;
    }
Ejemplo n.º 5
0
 /**
  * Load Form
  *
  * @param   Int  $postId  Post id
  * @param   Int  $formID  Form id
  *
  * @param   Imt  $index   Form Index
  *
  * @return void
  */
 public function load_html_contactform($postId, $formID, $index)
 {
     //form Name
     $formName = md5(date('Y-m-d H:i:s') . $index . rand(999999999, 999999999999));
     //return html form
     return WR_Contactform_Helpers_Contactform::generate_html_pages($postId, $formID, $formName);
 }
Ejemplo n.º 6
0
 /**
  *     get html form
  *
  * @return string
  */
 function get_html_form($formId)
 {
     if (!empty($formId) && is_numeric($formId)) {
         global $wpdb;
         $postId = $wpdb->get_var($wpdb->prepare("SELECT post_id FROM {$wpdb->postmeta} WHERE  meta_key='form_id' AND meta_value=%d", (int) $formId));
         if (empty($postId)) {
             $postId = $formId;
         }
         $formName = md5(date('Y-m-d H:i:s')) . rand(0, 1000);
         echo '' . WR_Contactform_Helpers_Contactform::generate_html_pages($postId, $formId, $formName, 'ajax');
         exit;
     }
 }
Ejemplo n.º 7
0
            $autoload = 'no';
            add_option($key, $value, $deprecated, $autoload);
        }
    }
}
$loadBootstrapCss = get_option('wr_contactform_load_bootstrap_css', 1);
$checkLoadCssBootstrap = '';
if ($loadBootstrapCss != '0' && $loadBootstrapCss != 0) {
    $checkLoadCssBootstrap = 'checked="checked" ';
}
$loadBootstrapJs = get_option('wr_contactform_load_bootstrap_js', 1);
$checkLoadJsBootstrap = '';
if ($loadBootstrapJs != '0' && $loadBootstrapJs != 0) {
    $checkLoadJsBootstrap = 'checked="checked" ';
}
$default_mail_from = get_option('wr_contactform_default_mail_from', WR_Contactform_Helpers_Contactform::get_default_mail_from());
// Captcha setting
$global_captcha_setting = get_option('wr_contactform_global_captcha_setting', 2);
$check_enable_captcha_all = '';
$check_disable_captcha_all = '';
$check_use_individual_setting = '';
switch ($global_captcha_setting) {
    case 1:
        $check_enable_captcha_all = ' checked="checked"';
        break;
    case 0:
        $check_disable_captcha_all = ' checked="checked"';
        break;
    default:
        $check_use_individual_setting = ' checked="checked"';
}
foreach ($formContent as $formPages) {
    $pageContent = json_decode($formPages->page_content);
    $submissionDetail = '';
    $submissionEdit = '';
    foreach ($pageContent as $fields) {
        $key = $fields->id;
        if (isset($fields->type) && $fields->type != 'static-content' && $fields->type != 'google-maps') {
            $submissionDetail .= '<dt>' . $fields->options->label . ':</dt><dd id="' . $key . '">';
            $submissionEdit .= '<div class="control-group ">
<label class="control-label">' . $fields->options->label . ':</label>
<div class="controls">';
            $contentField = '';
            $contentFieldEdit = '';
            $contentFieldDetail = '';
            if (isset($submission->{$key})) {
                $contentField = WR_Contactform_Helpers_Contactform::get_data_field($fields->type, $submission, $key, $this->id, false);
                $contentFieldEdit = $contentField;
                if ($fields->type == 'email') {
                    $contentFieldDetail = !empty($contentField) ? '<a href="mailto:' . $contentField . '">' . $contentField . '</a>' : 'N/A';
                } else {
                    $contentFieldDetail = $contentField;
                }
            }
            //if ( isset( $fields->type ) && $fields->type == 'likert' )
            if (isset($fields->type) && ($fields->type == 'likert' || $fields->type == 'email' || $fields->type == 'file-upload')) {
                $submissionDetail .= $contentFieldDetail ? str_replace('\\n', '<br/>', trim($contentFieldDetail)) : 'N/A';
            } else {
                $submissionDetail .= $contentFieldDetail ? str_replace('\\n', '<br/>', htmlentities(html_entity_decode(trim($contentFieldDetail)))) : 'N/A';
            }
            if (isset($fields->type) && ($fields->type == 'checkboxes' || $fields->type == 'list' || $fields->type == 'paragraph-text')) {
                if ($fields->type == 'checkboxes' || $fields->type == 'list') {
Ejemplo n.º 9
0
 /**
  * Render a custom column in the listing page.
  *
  * @param   array  $column   Column name.
  * @param   array  $post_id  Post id.
  * @param   bool   $return   Return String
  *
  * @return  void
  */
 public static function render_submissions_column($column, $post_id, $return = false, $formID = '')
 {
     $html = '';
     global $wpdb;
     if (in_array($column, array('ip', 'browser', 'os'))) {
         if (empty($formID)) {
             $formID = !empty($_SESSION['wr-contactform']['form_id']) ? $_SESSION['wr-contactform']['form_id'] : '';
         }
         if (!empty($formID) && is_numeric($formID)) {
             $submissionData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$wpdb->prefix}wr_contactform_submission_data WHERE form_id = %d AND field_id = 0 AND submission_id=%d AND field_type=%s ORDER BY submission_data_id ASC", (int) $formID, (int) $post_id, $column));
             $value = !empty($submissionData[0]->submission_data_value) ? $submissionData[0]->submission_data_value : 'N/A';
             if ($return) {
                 return $value;
             } else {
                 _e($value);
             }
         }
     } else {
         if ($column == 'total_submissions') {
             $meta = get_post_meta((int) $post_id);
             if (!empty($meta['form_id'][0])) {
                 $form_id = (int) $meta['form_id'][0];
             } else {
                 $form_id = (int) $post_id;
             }
             $where = '';
             $total = $wpdb->get_var("SELECT COUNT(*) FROM {$wpdb->posts} WHERE (post_status = 'publish' OR post_status = 'trash' OR post_status = 'draft' OR post_status = 'pending') AND (post_content = '" . (int) $form_id . "'  AND post_type = 'wr_cfsb_post_type' ) " . $where);
             return '<a href="edit.php?post_status=all&post_type=wr_cfsb_post_type&action=-1&m=0&paged=1&mode=list&action2=-1&wr_contactform_form_id=' . $form_id . '">' . $total . '</a>';
         } else {
             if ($column == 'form_short_code') {
                 $meta = get_post_meta((int) $post_id);
                 if (!empty($meta['form_id'][0])) {
                     $form_id = (int) $meta['form_id'][0];
                 } else {
                     $form_id = (int) $post_id;
                 }
                 return '[wr_contactform id=' . $form_id . ']';
             } else {
                 if ($column == 'date_created') {
                     $title = '<strong><a title="Edit Submission" href="post.php?post=' . (int) $post_id . '&amp;action=edit" class="row-title">' . get_the_date('m/d/Y H:i:s', (int) $post_id) . '</a></strong>';
                     return $title;
                 } else {
                     $column = str_replace('_', '', $column);
                     if (empty($formID)) {
                         $formID = !empty($_SESSION['wr-contactform']['form_id']) ? $_SESSION['wr-contactform']['form_id'] : '';
                     }
                     if (!empty($formID) && is_numeric($formID) && !empty($column) && is_numeric($column)) {
                         $submissionData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$wpdb->prefix}wr_contactform_submission_data WHERE form_id = %d AND field_id = %d AND submission_id=%d ORDER BY submission_data_id ASC", (int) $formID, (int) $column, (int) $post_id));
                         if (!empty($submissionData[0])) {
                             $getData = WR_Contactform_Helpers_Contactform::get_data_field($submissionData[0]->field_type, $submissionData[0], '', $formID, true, true, 'list');
                             if ($return) {
                                 return $getData;
                             } else {
                                 _e($getData);
                             }
                         }
                     }
                 }
             }
         }
     }
 }
Ejemplo n.º 10
0
 /**
  * Render submissions page.
  *
  * @return  void
  */
 public static function get_submissions_column()
 {
     $column = array();
     if (!empty($_GET['wr_contactform_form_id'])) {
         $_SESSION['wr-contactform']['form_id'] = $_GET['wr_contactform_form_id'];
     }
     $formID = !empty($_SESSION['wr-contactform']['form_id']) ? $_SESSION['wr-contactform']['form_id'] : '';
     if (empty($formID)) {
         $postslist = get_posts(array('post_type' => 'wr_cf_post_type', 'post_status' => 'any', 'numberposts' => '99999'));
         if (!empty($postslist[0]->ID)) {
             $formID = $postslist[0]->ID;
             $_SESSION['wr-contactform']['form_id'] = $formID;
         }
     }
     $column['date_created'] = __('Date Submitted', WR_CONTACTFORM_TEXTDOMAIN);
     if (!empty($formID)) {
         $fielForm = WR_Contactform_Helpers_Contactform::get_filed_by_form_id($formID);
         if (!empty($fielForm)) {
             foreach ($fielForm as $field) {
                 if (!empty($field->field_id) && !empty($field->field_type) && !in_array($field->field_type, array('static-content', 'google-maps'))) {
                     $column['_' . $field->field_id] = !empty($field->field_title) ? $field->field_title : '';
                 }
             }
         }
     }
     $column['ip'] = __('IP Address', WR_CONTACTFORM_TEXTDOMAIN);
     $column['browser'] = __('Browser', WR_CONTACTFORM_TEXTDOMAIN);
     $column['os'] = __('Operating System', WR_CONTACTFORM_TEXTDOMAIN);
     return $column;
 }
Ejemplo n.º 11
0
<?php

/**
 * Created by JetBrains PhpStorm.
 * User: thailv
 * Date: 12/13/13
 * Time: 2:38 PM
 * To change this template use File | Settings | File Templates.
 */
$action = !empty($_GET['email']) ? $_GET['email'] : 0;
$arrayTranslated = array('You must add some form field in your form in order to select it here', 'No form field found', 'You must add some email-type field in your form in order to select it here', '...', 'No email field found', 'Select Field', 'Select Fields', 'e.g. Customer Department', 'e.g. support@yourdomain.com', 'e.g. Thank you for contacting us', 'Click the button on the right to select the form field identifying submitter name', 'Click the button on the right to select the form field identifying submitter email', 'e.g. Contact inquiry');
$languages = WR_Contactform_Helpers_Contactform::get_translated($arrayTranslated);
?>
<div class="jsn-master">
	<div class="jsn-bootstrap">
		<div id="form-loading" class="jsn-bgloading"><i class="jsn-icon32 jsn-icon-loading"></i></div>
		<form action="" class="form-horizontal hide" method="post" name="adminForm" id="wr_email_settings">
			<fieldset>
<?php 
if ($action == 0) {
    echo '<legend>Edit email content being sent to responder</legend>';
} else {
    echo '<legend>Edit email content being sent to specified address(es)</legend>';
}
?>
				<div class="control-group">
					<label class="control-label wr-label-des-tipsy" original-title="<?php 
echo '' . __('WR_CONTACTFORM_EMAIL_SPECIFY_THE_NAME_' . $action, WR_CONTACTFORM_TEXTDOMAIN);
?>
"><?php 
echo '' . __('From', WR_CONTACTFORM_TEXTDOMAIN);
$listTabs = array();
$listTabs['form-design'] = '<li class="active"><a href="#form-design"><i class="icon-list-alt"></i>' . __('Form Design', WR_CONTACTFORM_TEXTDOMAIN) . '</a></li>';
$listTabs['form-action'] = '<li> <a href="#form-action"><i class="icon-magic"></i> ' . __('Form Action', WR_CONTACTFORM_TEXTDOMAIN) . ' </a> </li>';
$getListTabs = apply_filters('wr_contactform_form_edit_list_tabs', $listTabs);
if (!empty($getListTabs)) {
    $listTabs = $getListTabs;
}
$formItems = isset($formItems) ? $formItems : null;
?>
<div class="jsn-master" id="wr_contactform_master">
	<div class="jsn-bootstrap">
		<input type="hidden" name="fix_yoast_wordpress_seo" id="content" value="">
		<div id="style_inline">
			<style class="formstyle">
				<?php 
echo '' . WR_Contactform_Helpers_Contactform::generate_style_pages($formStyle, '.jsn-master #form-design-content .jsn-element-container .jsn-element', '.jsn-master #form-design-content .jsn-element-container .jsn-element.ui-state-edit', '.jsn-master #form-design-content .jsn-element-container .jsn-element .control-label', '', '', '.jsn-master #form-design-content .jsn-element-container .jsn-element .controls input,.jsn-master #form-design-content .jsn-element-container .jsn-element .controls select,.jsn-master #form-design-content .jsn-element-container .jsn-element .controls textarea');
?>
			</style>
			<style class="formstylecustom">
				<?php 
echo '' . !empty($formStyle->custom_css) ? $formStyle->custom_css : '';
?>
			</style>
		</div>
		<div class="jsn-tabs">
			<ul><?php 
echo '' . implode('', $listTabs);
?>
</ul>
			<?php 
do_action('wr_contactform_form_container_tabs', $form, $formStyle, $formSettings, $listPage, $listFontType, $items, $formItems, $formPage);
Ejemplo n.º 13
0
 /**
  * load page on session
  *
  * @return json code
  */
 public function wr_contactform_load_page()
 {
     // Set custom error reporting level
     error_reporting(E_ALL ^ E_NOTICE);
     //set $post
     $post = $_POST;
     //set form id
     $formId = !empty($post['form_id']) ? $post['form_id'] : 0;
     //set default $dataPage
     $dataPage = '';
     //set $pageDefault
     $pageDefault = isset($post['join_page']) ? $post['join_page'] : '';
     if (!empty($post['form_page_name'])) {
         $formPageName = stripslashes($post['form_page_name']);
         $formPage = !empty($_SESSION['form-design-' . $formId]['form_page_' . $formPageName]) ? $_SESSION['form-design-' . $formId]['form_page_' . $formPageName] : '';
         if (isset($post['form_page_old_name']) && $post['form_page_old_name'] != $formPageName) {
             if (!empty($post['form_page_old_content'])) {
                 $formContentOld = is_array($post['form_page_old_content']) ? json_encode($post['form_page_old_content']) : $post['form_page_old_content'];
                 $formOldContent = stripslashes($formContentOld);
                 $_SESSION['form-design-' . $formId]['form_page_' . $post['form_page_old_name']] = $formOldContent;
             }
             if (!empty($post['form_page_old_container'])) {
                 $formContainerOld = is_array($post['form_page_old_container']) ? json_encode($post['form_page_old_container']) : $post['form_page_old_container'];
                 $formContainerOld = stripslashes($formContainerOld);
                 $_SESSION['form-design-' . $formId]['form_container_page_' . $post['form_page_old_name']] = $formContainerOld;
             }
         }
         if (isset($formPage) && $pageDefault != 'defaultPage') {
             if (is_array($formPage)) {
                 $dataPage = json_encode($formPage);
             } else {
                 $dataPage = $formPage;
             }
         } else {
             if (!empty($post['form_id'])) {
                 //set form ID
                 $formId = (int) $post['form_id'];
                 // set form content
                 $formContent = WR_Contactform_Helpers_Contactform::get_form_content($formId);
                 if (!empty($formContent)) {
                     foreach ($formContent as $formContent) {
                         $_SESSION['form-design-' . $formId]['form_page_' . $formContent->page_id] = $formContent->page_content;
                     }
                     $dataPage = !empty($_SESSION['form-design-' . $formId]['form_page_' . $formPageName]) ? $_SESSION['form-design-' . $formId]['form_page_' . $formPageName] : '';
                 }
             } else {
                 $dataPage = !empty($_SESSION['form-design-' . $formId]['form_page_' . $formPageName]) ? $_SESSION['form-design-' . $formId]['form_page_' . $formPageName] : '';
             }
         }
     }
     $containerPage = !empty($_SESSION['form-design-' . $formId]['form_container_page_' . $formPageName]) ? $_SESSION['form-design-' . $formId]['form_container_page_' . $formPageName] : '';
     $containerPage = stripslashes($containerPage);
     if (!empty($post['join_page']) && $post['join_page'] == 'join' && isset($post['form_list_page']) && count($post['form_list_page']) > 1) {
         $dataListPage = array();
         $listPage = $_SESSION['form_list_page'];
         //set default form page index
         $formPageIndex = array();
         //set default count position
         $countPosition = 0;
         //set default list page container
         $listPageContainer = array();
         foreach ($post['form_list_page'] as $index => $listPage) {
             $pageName = stripslashes($listPage[0]);
             if (!empty($pageName) && !empty($post['form_page_name'])) {
                 $positionContainer = array();
                 $pageContent = !empty($_SESSION['form-design-' . $formId]['form_page_' . $pageName]) ? $_SESSION['form-design-' . $formId]['form_page_' . $pageName] : '';
                 $pageContainer = !empty($_SESSION['form-design-' . $formId]['form_container_page_' . $pageName]) ? $_SESSION['form-design-' . $formId]['form_container_page_' . $pageName] : '';
                 $pageContainer = stripslashes($pageContainer);
                 $pageContainer = json_decode($pageContainer);
                 foreach ($pageContainer as $containerDetail) {
                     $countPosition++;
                     foreach ($containerDetail as $cd) {
                         //set $position
                         $position = explode('_', $cd->columnName);
                         //add array list position container
                         $positionContainer[$cd->columnName] = $position[0] . '_' . $countPosition;
                         //set columnName
                         $cd->columnName = $position[0] . '_' . $countPosition;
                         //add array list page container
                         $listPageContainer[$countPosition - 1][] = $cd;
                     }
                 }
                 if (!empty($pageContent) && $pageContent != 'null') {
                     //set default pContent
                     $pContent = array();
                     //set page content
                     $pageContent = json_decode($pageContent);
                     foreach ($pageContent as $pct) {
                         //set position container
                         $pct->position = $positionContainer[$pct->position];
                         //add array list pages content
                         $pContent[] = $pct;
                     }
                     $dataListPage = array_merge($dataListPage, $pContent);
                 }
             }
             if ($index == 0) {
                 $formPageIndex[] = $pageName;
                 $pageName1 = stripslashes($listPage[1]);
                 $formPageIndex[] = $pageName1;
             } else {
                 unset($_SESSION['form-design-' . $formId]['form_page_' . $pageName]);
             }
         }
         $dataListPageEncode = json_encode($dataListPage);
         unset($_SESSION['form-design-' . $formId]['form_list_page']);
         $_SESSION['form-design-' . $formId]['form_page_' . $formPageIndex[0]] = $dataListPageEncode;
         $_SESSION['form-design-' . $formId]['form_list_page'] = json_encode($formPageIndex);
         $_SESSION['form-design-' . $formId]['form_container_page_' . $formPageIndex[0]] = json_encode($listPageContainer);
         echo json_encode(array('dataField' => $dataListPageEncode, 'containerPage' => json_encode($listPageContainer)));
     } else {
         echo json_encode(array('dataField' => $dataPage, 'containerPage' => $containerPage));
     }
     exit;
 }