Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // CALCULATOR
- function GenerateCalc($params = array()) {
- //init ionrangeslider
- wp_register_script('ionRangeSlider', '//cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.0/js/ion.rangeSlider.min.js', array(), '1' );
- wp_enqueue_script( 'ionRangeSlider' );
- wp_enqueue_style( 'ionrangeslider', '//cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.0/css/ion.rangeSlider.min.css');
- // default parameters
- extract(shortcode_atts(array(
- 'titles' => array(),
- 'values_p3' => array(),
- 'values_p4' => array(),
- 'max_ion' => "",
- 'ion_price' => array()
- ), $params));
- $titles = explode(",", $titles);
- $values_p3 = explode(",", $values_p3);
- $values_p4 = explode(",", $values_p4);
- $ion_price_load = explode(",", $ion_price);
- $calcHtml = "";
- //пластичность
- $calcHtml_type = '<div class="calc_type_wrap">';
- $calcHtml_type .= '<p class="calc_type_title">Пластичность</p>';
- $calcHtml_type .= '<div class="calc_type_line">';
- $calcHtml_type .= '<span class="calc_type_item active">П3</span><span class="calc_type_item">П4</span>';
- $calcHtml_type .= '</div>';
- $calcHtml_type .= '</div>';
- //марка
- $calcHtml_brand = '<div class="calc_brand_wrap">';
- $calcHtml_brand .= '<p class="calc_brand_title">Класс бетона (марка)</p>';
- $calcHtml_brand .= '<div class="calc_brand_line">';
- foreach ($titles as $key => $title) {
- if ($key == 0) $classActive = " active"; else $classActive = "";
- $calcHtml_brand .= '<span class="calc_brand_item'.$classActive.'" data-value_p3="'.$values_p3[$key].'" data-value_p4="'.$values_p4[$key].'">'.$title.'</span>';
- }
- $calcHtml_brand .= '</div>';
- $calcHtml_brand .= '</div>';
- //объем
- $calcHtml_count = '<div class="calc_count_wrap">';
- $calcHtml_count .= '<p class="calc_count_title">Объём</p>';
- $calcHtml_count .= '<div class="calc_count_form">';
- $calcHtml_count .= '<span class="calc_count_form_button" data-action="minus">-</span>';
- $calcHtml_count .= '<input type="text" class="calc_count_form_input" value="1">';
- $calcHtml_count .= '<span class="calc_count_form_label">м<sup>3</sup></span>';
- $calcHtml_count .= '<span class="calc_count_form_button" data-action="plus">+</span>';
- $calcHtml_count .= '</div>';
- $calcHtml_count .= '<div class="calc_count_text">';
- $calcHtml_count .= '<span class="calc_count_text_one">Цена за 1м<sup>3</sup>: <span>'.$values_p3[0].'</span>.</span>';
- $calcHtml_count .= '</div>';
- $calcHtml_count .= '</div>';
- //марка
- $calcHtml_ion = '<div class="calc_ion_wrap">';
- $calcHtml_ion .= '<p class="calc_ion_title">Расстояние</p>';
- $calcHtml_ion .= '<div class="calc_ion_init" max_ion="'.$max_ion.'" data_price="'.$ion_price.'">';
- $calcHtml_ion .= '<input type="text" id="calc_ion_id" name="calc_ion_name" value="" />';
- $calcHtml_ion .= '</div>';
- $calcHtml_ion .= '</div>';
- //итого
- $calcHtml_full = '<div class="calc_full">';
- $calcHtml_full .= '<p class="calc_full_title"><span>Итого</span></p>';
- $load_price = intval($values_p3[0])+intval($ion_price_load[0]);
- $currency = preg_replace('/\d/', '', $values_p3[0]);
- $calcHtml_full .= '<p class="calc_full_values">'.$load_price.$currency.'.</p>';
- $calcHtml_full .= '</div>';
- //форма
- $calcHtml_form = '<form action="#" class="calc_form" data-count="1" data-product="'.$titles[0].'" data-price="'.$values_p3[0].'">';
- $calcHtml_form .= '<input type="text" class="calc_form_input form_phone" placeholder="Номер телефона">';
- $calcHtml_form .= '<input type="text" class="calc_form_input form_address" placeholder="Адрес доставки">';
- $calcHtml_form .= '<button type="submit" class="calc_form_button">Купить</button>';
- $calcHtml_form .= '</form>';
- // генерация калькулятора
- $calcHtml = $calcHtml_type.$calcHtml_brand.$calcHtml_count.$calcHtml_ion.$calcHtml_full.$calcHtml_form;
- return $calcHtml;
- }
- add_shortcode('calcPrice', 'GenerateCalc');
- function ajax_form(){
- $phone = $_REQUEST['phone'];
- $address = $_REQUEST['address'];
- $product = $_REQUEST['product'];
- $price = $_REQUEST['price'];
- $count = $_REQUEST['count'];
- $response = '';
- $thm = 'Заказ с калькулятора';
- $thm = "=?utf-8?b?". base64_encode($thm) ."?=";
- $msg = "Телефон: ".$phone."<br/>";
- if ($address != "") $msg .= "Адрес: ".$address ."<br/>";
- $msg .= "Продукт: ".$product."<br/>
- Цена: ".$price."<br/>
- Количество: ".$count."<br/>";
- $mail_to = "zloycoder@ya.ru";
- $headers = "Content-Type: text/html; charset=utf-8\n";
- $headers .= 'From: Komfort-Lv <roboto@komfort-lv.com.ua>' . "\r\n";
- // Отправляем почтовое сообщение
- if(mail($mail_to, $thm, $msg, $headers)){
- $response = 'Сообщение отправлено';
- }else
- $response = 'Ошибка при отправке';
- // Сообщение о результате отправки почты
- if ( defined( 'DOING_AJAX' ) && DOING_AJAX ){
- echo $response;
- wp_die();
- }
- }
- add_action('wp_ajax_nopriv_ajax_order', 'ajax_form' );
- add_action('wp_ajax_ajax_order', 'ajax_form' );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement