/** * 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; }
/** * 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; } }
/** * 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; }
/** * 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); }
/** * 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; } }
$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') {
/** * 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 . '&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); } } } } } } } }
/** * 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; }
<?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);
/** * 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; }