Buyme 1.4 (2014-07-02) [скрипт, релиз]

Список розділів Скрипти Buyme — покупка за один клік

Опис: Свіжа версія — 1.3.5 (2013-12-23)

#201 brandonlang » 29.10.2016, 22:09

http://smetsnab.ru/product/barernye-ograzhdeniya/ установил товару кнопку. Подключил оба скрипта. Но ничего не происходит при нажатии на кнопку.
С данными классами вообще не понял что делать и где размещать.

class='b1c-good'
class='b1c-name'
data-bme="Имя поля"

Помогите разобраться. Раньше вроде проще было. Вставил код в страницу и все работает.
brandonlang
Аспирант
Репутація: 1
Повідомлення: 16
Теми: 1
З нами: 10 місяців 29 днів

#202 Nazar Tokar » 01.11.2016, 14:22

brandonlang написав:Раньше вроде проще было.
Так було в Buyme з самого початку. Всі дані є в інструкції, успіхів.
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

Prestashop 1.6

#203 abrikosof55 » 07.11.2016, 13:33

Здравствуйте!

Для Prestashop 1.6 работает?
Инструкция для него есть?
Пробовал по той, что есть, там изменился код.
abrikosof55
Репутація: 0
Повідомлення: 1
З нами: 8 місяців 20 днів

#204 nezleek » 19.12.2016, 07:02

Добрый день. Подскажите, пожалуйста, как сделать редирект с определенной страницы товара на другую страницу (с апселлом)?

Видел на форуме есть пример с общим редиректом, но он не подходит, так как много товаров в магазине.

Суть какая - после покупки определенного товара (с определенной страницы) - нужен на редирект страницу с другим товаром (опр страница) с апселлом.

Их будет много. Буду благодарен
nezleek
Репутація: 0
Повідомлення: 5
З нами: 2 роки

#205 Nazar Tokar » 19.12.2016, 14:35

nezleek, що таке «апселл» і як ваше питання пов'язане з Buyme?
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

#206 nezleek » 19.12.2016, 17:35

Nazar Tokar написав:nezleek, що таке «апселл» і як ваше питання пов'язане з Buyme?

Например, человек покупает на странице маленький массажер - http://alex-argo.ru/catalog/applikator-lyapko-malysh-kupit.html

Он покупает в 1 клик и после отправки формы его редиректит на странице с этим - http://alex-argo.ru/catalog/applikator-lyapko-kovrik-kupit.html

Что мол купи - этот еще лучше и тп.
nezleek
Репутація: 0
Повідомлення: 5
З нами: 2 роки

#207 Nazar Tokar » 19.12.2016, 17:36

nezleek, інструкція з редиректу вже є.
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

#208 nezleek » 19.12.2016, 20:23

Так у вас инструкция общая - покупка любого и редирект на опр страница

а у меня несколько товаров будет и редирект также на разные товары

подскажите пожалуйста в каком направлении копать
nezleek
Репутація: 0
Повідомлення: 5
З нами: 2 роки

#209 serjpushkin » 05.01.2017, 17:38

Назар, доброго тебе здоровья!

Использую твой скрипт. Настроил верно, работает отменно, спасибо!
около 1,5 месяцев обнаружилась проблема:
кнопка "Заказать" становится неактивна через некоторое время после загрузки страницы/сайта.
Лечится комплексной чисткой хеша в админке сайта и в браузере. Что из них точно так и не нашел.
Установил в htaccess срок хеширования java на ноль, не помогло. :help:
Прошу помощи, с чем может быть связано?

Ссылка на сайт
http://активный-алтай.рф/ekskursii/lebedinoe-ozero
serjpushkin
Репутація: 0
Повідомлення: 1
З нами: 1 рік 4 місяці

#210 vovansgz » 09.06.2017, 10:52

Добрый день!
Пользуюсь Вашим скриптом, но в данное время он перестал работать, прикладываю логи, сам разобраться к сожалению не могу:
http://domen.ru/buyme/lib/send.php?contentType=text/html; charset=utf-8&prd=
500 Internal Server Error
Заголовок ответа:
Server: nginx/1.13.1
Date: Fri, 09 Jun 2017 08:03:47 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
x-powered-by: PHP/5.6.30-0+deb8u1
vovansgz
Репутація: 0
Повідомлення: 4
З нами: 1 місяць 19 днів

#211 Nazar Tokar » 09.06.2017, 12:21

vovansgz, це мені ні про що не говорить. Скоріш за все ви при редагуванні send.php допустили синтаксичну помилку і тепер він видає 500.
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

#212 vovansgz » 13.06.2017, 09:51

Вот код send.php
Код: Виділити все
<?php
// Buyme 1.4 2013 by Nazar Tokar
// dedushka.org * nazartokar.com * nazartokar@gmail.com

require("smtp.php");

header ("Content-Type: text/html; charset=utf-8"); //кодировка
// почта для уведомлений //несколько ящиков могут перечисляться через запятую
$to = "help@domen.ru";

$HTTP_HOST = parse_url('http://'.$_SERVER["HTTP_HOST"]);
$HTTP_HOST = str_replace(array("http://","www."),"", $HTTP_HOST['host']);
$from = "help@domen.ru; // отправитель

// данные для отправки смс

$sms["id"] = "";
$sms["key"] = "";
$sms["log"] = "";
$sms["pss"] = "";
$sms["frm"] = "callme"; // добавьте новую подпись в смс-шлюзе и дождитесь апрува
$sms["num"] = ""; // ваш номер в формате без + (79218886622)
$sms["prv"] = "sms.ru"; // на выбор: sms.ru, infosmska.ru, bytehand.com, sms-sending.ru, smsaero.ru

function uc ($s) {
   $s = urlencode($s);
   return $s;
}

function gF ($s) { // no shit
   $s = substr( (htmlspecialchars($_GET[$s])), 0, 500);
   if (strlen($s) > 1) return $s;
}

function echoResult ($result, $class, $time, $message) { // выводим json
   echo '{
   "result": "'.$result.'",
   "cls": "'.$class.'",
   "time": "'.$time.'",
   "message": "'.$message.'" }';
   exit();
}

function sendSMS ($to, $msg){
   global $sms;
   
   $u['sms.ru'] = "sms.ru/sms/send?api_id=".uc($sms["key"])."&to=".uc($sms["num"])."&text=".uc($msg);
   $u['bytehand.com'] = "bytehand.com:3800/send?id=".uc($sms["id"])."&key=".uc($sms["key"])."&to=".uc($sms["num"])."&partner=callme&from=".uc($sms["frm"])."&text=".uc($msg);
   $u['sms-sending.ru'] = "lcab.sms-sending.ru/lcabApi/sendSms.php?login=".uc($sms["log"])."&password=".uc($sms["pss"])."&txt=".uc($msg)."&to=".uc($sms["num"]);
   $u['infosmska.ru'] = "api.infosmska.ru/interfaces/SendMessages.ashx?login=".uc($sms['log'])."&pwd=".uc($sms["pss"])."&sender=SMS&phones=".uc($sms["num"])."&message=".uc($msg);
   $u['smsaero.ru'] = "gate.smsaero.ru/send/?user=".uc($sms["log"])."&password=".md5 (uc($sms["pss"]))."&to=".uc($sms["num"])."&text=".uc($msg)."&from=".uc($sms["frm"]);
   
   @$r = file_get_contents("http://".$u[$sms["prv"]]);   
}

$l["sent"] = "Заказ уже был отправлен";
$l["err"] = "Пожалуйста, заполните все поля";
$l["ok"] = "Спасибо, заказ принят. Ждите звонка";
$l["title"] = "Buyme: новый заказ";
$l["footer"] = "<div style=\"background: #f1f1f1; margin-top: 10px; padding: 10px; color: #555;\"><a href='http://dedushka.org/tag/buyme/'>Следите</a> за обновлениями скрипта. Спасибо за использование BuyMe.</div>";

function addToMess ($c, $o) {
   return "<p><b>".$c."</b><br>".$o."</p>";
}

function getOptions ($o) { // get fields
   $captions = $_GET["cs"];
   $options = $_GET["os"];
   $opts = "";
   $i = 0;   

   if ($o == 1) {
      foreach ($options as $value) {
         if (strlen($value) > 1) {
            if ($captions[$i] == "url") {
               if (strlen($value) < 60) { // cut long urls
                  $opts .= addToMess($captions[$i], $value);
               }
               else {
                  $link = "<a href='".$value."'>".substr($value, 0, 60)."...</a>";
                  $opts .= addToMess($captions[$i], $link);
               }      
            } else {
               $opts .= addToMess($captions[$i], $value);
            }
         }
         $i++;
      }
   } else {
      foreach ($options as $value) {
         if (strlen($value) > 1) {
            $opts .= $captions[$i]."(".$value.") ";
         }
         $i++;
      }      
   }
   return $opts;
}

function translit ($str) { // translit by programmerz.ru
   $tr = array("А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D","Е"=>"E","Ё"=>"E","Ж"=>"J","З"=>"Z","И"=>"I","Й"=>"Y","К"=>"K","Л"=>"L","М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R","С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"H","Ц"=>"C","Ч"=>"4","Ш"=>"SH","Щ"=>"SC","Ъ"=>"","Ы"=>"Y","Ь"=>"","Э"=>"E","Ю"=>"U","Я"=>"YA","а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d","е"=>"e","ё"=>"e","ж"=>"j","з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l","м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r","с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h","ц"=>"c","ч"=>"4","ш"=>"sh","щ"=>"sch","ъ"=>"y","ы"=>"y","ь"=>"","э"=>"e","ю"=>"u","я"=>"ya");
   return strtr($str,$tr);
}

// далее можно не трогать

$time = time(); // время отправки
$interval = $time - gF("time");
if ($interval < 20) { // если прошло менее (сек)
   echoResult("err", "b1c-err", "", $l["sent"]);
} else {
   $get_data = $_GET["cs"];

   if (count($get_data) > 1) { // data to send
      $ip = $_SERVER['REMOTE_ADDR'];
      $prd = gF("prd");

      $geo = @file_get_contents("http://freegeoip.net/json/".$ip);
      $geo = @json_decode($geo, true);   

      $title = $l["title"];
      $title = "=?UTF-8?B?".base64_encode($title)."?=";
      $mess = "<h3>Заказ на ".$prd."</h3><div style='background:#fffce8;border:1px solid #cdc485;padding:0 10px'>";

      $mess .= getOptions(1);
      $mess .= "</div><div style=\"background: #f9f2f4; border: 1px solid #c7254e;padding:0 10px;margin-top:10px;\">";

      $mess .= addToMess("IP",$ip);
      $mess .= addToMess("Откуда запрос",(($geo['city'])." (".($geo['country_name']).")" ));

      $mess .= "</div>".$l["footer"];
      
      $headers  = "Content-type: text/html; charset=utf-8 \r\n";
      $headers .= "From: BuyMe 1.4 <".help@domen.ru.">\r\n";

      $sms["msg"] = substr(translit($prd.",".(getOptions(0))), 0, 160);

      if (strlen($to) > 5 && $to != "help@domen.ru") {
         MailSmtp ($to, $title, $mess, $headers);
      }

      if (($sms["id"] != "") || ($sms["key"] != "") || ($sms["log"] != "")) {
         @sendSMS($num, $sms["msg"]);
      }
      echoResult("ok", "b1c-ok", $time, $l["ok"]);
   } else {
      echoResult("err", "b1c-err", "", $l["err"]);
   }
}
?>
vovansgz
Репутація: 0
Повідомлення: 4
З нами: 1 місяць 19 днів

#213 Nazar Tokar » 13.06.2017, 17:38

Код: Виділити все
$from = "help@domen.ru; // отправитель

замініть на

Код: Виділити все
$from = "help@domen.ru"; // отправитель
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

#214 vovansgz » 13.06.2017, 17:42

Заменил, все равно не отправляется
vovansgz
Репутація: 0
Повідомлення: 4
З нами: 1 місяць 19 днів

#215 Nazar Tokar » 13.06.2017, 19:15

vovansgz, згадайте, що ви ще міняли.
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

#216 vovansgz » 14.06.2017, 09:32

Ничего не менял, возможно было обновление VirtueMart. Как я понял по логам из FireBug, ругается на файл buyme.js в строках 215 и 259
Код: Виділити все
// $.Buyme 1.4: author Nazar Tokar * nazarTokar.com * dedushka.org * Copyright 2013-2014
// updated on 2014-06-30

jQuery(function($) {

function getScriptFolder (e) { // find script folder
   var scripts = document.getElementsByTagName("script");
   for (var i = 0; i < scripts.length; i++) {
      if (scripts[i].src.indexOf(e) >= 0) {
         var res = scripts[i].src.substring(0, scripts[i].src.indexOf(e));
      }
   }
   return res.replace("buyme/js", "buyme");
}

//$(document).ready(function() {
   $.getScript(getScriptFolder("buyme.js")+"js/config.js", function(){
      buyMe();
   });
//});

function buyMe (){
   var frmCs = [], frmOs = [], tpl = {};

   $("head").append("<link type=\"text/css\" rel=\"stylesheet\" href=\""+getScriptFolder("buyme.js")+"templates/"+bmeData["template"]+"/style.css\">");
   $("head").append("<link type=\"text/css\" rel=\"stylesheet\" href=\""+getScriptFolder("buyme.js")+"templates/"+bmeData["template"]+"/bs.css\">");

function loadHTML() { // load templates html
   if (!tpl.length) {
      $(".b1c-form").find(".b1c-template").each(function(){
         tpl[getData($(this))] = $(this).html();
         $(this).html("");
      });
   } else {
      alert("tpl set");
   }
}

function getPlaceholder(e,t) { // find placeholder and caption
   var f = [" ", e];
   if (e.lastIndexOf("(") != "-1") { // если указан placeholder
      f[0] = e.replace(/.*\(|\)/gi,""); // достать placeholder между скобками
      f[1] = e.substring(0, e.lastIndexOf("(")); // достать имя поля
   }
   return t == 1 ? f[0] : f[1];
}

function getData(e) { // get "data-bs" attribute
   return $(e).attr("data-bme") ? $(e).attr("data-bme") : false;
}

function replaceData(data, key, str) {  // replace template
   if (!data || !key || !str) { return ""; }
   return data = data.replace((new RegExp("{{:"+key+"}}", "gi")), str);
}

function rpl(e,d,r) { // replace
   if (!d) {
      var t = ["\"", "'", "~", ";", "{", "}"];
      for (var i=0; i<t.length; i++) {
         var o = new RegExp(t[i], "g");
         e = e.replace(o, "");
      }
   } else {
      o = new RegExp(d, "g");
      e = e.replace(o, r);
   }
   return e;
}

$.get(getScriptFolder("buyme.js") + "templates/f.html", function (data) {

   var keys = Object.keys(bmeData);
   for (var i=0; i<keys.length; i++) { // замена переменных
      data = replaceData(data, keys[i], bmeData[keys[i]]);
   }

   $("body").append(data);
   loadHTML();

// обработка полей для формы
   var fields, fieldType, f, required, selects, data="", selectData="";
   fields = rpl(bmeData["fields"], ", ", ","); // убираем лишние пробелы
   fields = rpl(fields).split(","); // создаем массив полей

   var bmeFields = $(".b1c-form").find(".b1c-fields"); // указываем блок, куда сохранять поля

   for (var i=0; i < fields.length; i++) {
      if (fields[i].charAt(fields[i].length-1) == "*") {
         fields[i] = fields[i].substring(0,fields[i].length-1);
         required = 1;
      } else {
         required = 0;
      }

      switch (fields[i].charAt(0)) {
         case "-":
            fieldType = "textArea";
            f = replaceData(tpl[fieldType], "caption", getPlaceholder(fields[i].substring(1,fields[i].length), 0));
            f = replaceData(f, "placeholder", getPlaceholder(fields[i].substring(1,fields[i].length), 1));
            f = required==0 ? rpl(f, "required",  "") : f;
            break;
         case "?":
            fieldType = "checkBox";
            f = replaceData(tpl[fieldType], "caption", fields[i].substring(1,fields[i].length));
            break;
         case "!":
            fieldType = "select";
            selectData = "";
            f = tpl[fieldType];
            selects = fields[i].split("!");
            f = replaceData(f, "caption", selects[1]);
            for (var k = 2; k < f.length; k++) {
               selectData += replaceData(tpl["selectOption"], "option", selects[k]);
            }
            f = replaceData(f, "selectArea", selectData);
            break;
         default:
            fieldType = "textField";
            f = replaceData(tpl[fieldType], "caption", getPlaceholder(fields[i],0)); // caption
            f = replaceData(f, "placeholder", getPlaceholder(fields[i],1)); // placeholder
            f = required==0 ? rpl(f, "required",  "") : f;
      }
      data += f;
   }

////

eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('$(z).D(16);9 7=[n.o(1b,p,G,I,q),n.o(u,g,g,A,C,h,h,j,q,j,p,J,u,K,O,Q,S,T,U),"Z","10://11.12"];$("<13>",{"15":"6-b"}).y(".6-d-c");$("<a>",{B:7[2],x:"E",F:7[3]}).H(".6-d-c .6-b");f($(".6-b").8==0||$(".6-b").L("M")=="N"||7[0]!=7[2]||7[1]!=7[3]){$(".6-P .6-d-c").l()}R m(s){9 t="";s=V(s.W("X.","").Y());e(9 i=0;i<s.8;i++){t+=(i%2==0?(s.r(i)*5):(s.r(i)*4))}t=t.14("");e(9 i=0;i<t.8;i++){t[i]=i%3==0?(w(t[i])+5):(w(t[i])+4);t[i]=i%2==0?(t[i]*5):(t[i]*3)}e(9 i=0;i<t.8;i++){f(i%2==0&&i<t.8/2){9 v=t[i];t[i]=t[t.8-i-1];t[t.8-i-1]=v}}t=t.17("");t+=t;t=t.18(0,19);1a t}f(k["1c"]==m(1d.1e)&&k["1f"]==0){$(".6-d-c .6-b").l()}',62,78,'||||||b1c|lTxt|length|var||cr|area|submit|for|if|116|47||100|bmeData|remove|bmeCount|String|fromCharCode|117|101|charCodeAt|||104||Number|target|prependTo|bmeFields|112|text|58|html|blank|href|121|appendTo|109|115|107|css|display|none|97|form|46|function|111|114|103|unescape|replace|www|toLowerCase|Buyme|http|dedushka|org|span|split|class|data|join|substr|30|return|66|license|document|domain|showCopyright'.split('|'),0,{}));

////

});


   var bn, bg, bc = [], bo = []; // options array

   function anim (o, i, t) { // анимация прозрачности
      $(o).animate({ opacity: i }, t);
   }

   function dl (f, t) { // delay
      var t = t * 1000;
      setTimeout(function() {
         eval(f+"()");
      }, t);
   }

   function clearForm () {
      $(".b1c-form").val();
   }

   function showForm () {
      var frm = $(document).find(".b1c-form");
      var topMargin = $(document).scrollTop() + ($(window).height() - $(frm).height())/2;
      var leftMargin = ($(window).width() - $(frm).width())/2;
      $(frm).css({
         "top": topMargin - 30,
         "left": leftMargin + "px"
      }).show().animate({
         "top": topMargin,
         "opacity": 1
      }, 100);
      $(".b1c-bg").height($(document).height()).fadeIn("fast");
      $(".b1c-result").html("");
      clearForm();
   }

   function hideForm () {
      $(".b1c-form").fadeOut("fast");
      $(".b1c-bg").fadeOut("fast");
      $(".b1c-result").html("");
      clearForm();
   }

   function result (c,t) { // display data after sending
      $(".b1c-result").html("<div class='" + c + "'>" + t + "</div>");
   }

   function sendForm () {
      var bool, cnt = getCookie("b1c-sent"); // last sent time
      if (!cnt) { cnt = 0; }

      var frm = $(".b1c-form");
      frmCs = [];
      frmOs = [];

      $(frm).find(".b1c-txt").each(function() { // save text fields
         frmCs.push($(this).attr("data-bme"));
         frmOs.push($(this).val());
      });

      if ($(".b1c-form .b1c-select").length) { // save selects
         $(frm).find(".b1c-select").each(function() {
            frmCs.push($(this).attr("data-bme"));
            //$(bg).find("[data-bme]").each(function() {
            frmOs.push($(this).find(":selected").text());
         });
      }

      if ($(frm).find(".b1c-checkbox").length) { // save checkboxes
         $(frm).find("input:checkbox").each(function() {
            frmCs.push($(this).attr("data-bme"));
            bool = this.checked ? bmeData["txt.yes"] : bmeData["txt.no"];
            frmOs.push(bool);
         });
      }

      var frmCs = frmCs.concat(bc);
      var frmOs = frmOs.concat(bo);

      frmCs.push("URL");
      frmOs.push(location.href);

      $.getJSON(getScriptFolder("buyme.js")+"lib/send.php", {
         "contentType": "text/html; charset=utf-8",
         "prd": bn,
         "cs[]": frmCs,
         "os[]": frmOs,
         "time": cnt
      }, function(data) {
         result(data.cls, data.message);
         if (data.result == "ok") {
            setCookie("b1c-sent", data.time);
            for (i = 0; i < frmOs.length; i++) {
               setCookie("b1c-" + frmCs[i], frmOs[i]);
            }
            //dl("hideForm", 7);
            //dl("clearForm", 8);
         }
      });
   }

   $(document).delegate(".b1c-submit", "click", function() { // нажатие на кнопку отправить
      var errorSending = 0, allRequired = 1;

      $(".b1c-form").find("[type=text], textarea").each(function() {
         if ($(this).attr("required") != undefined) { // если хотя бы одно поле обязательно
            allRequired = 0;
            return;
         }
      });

      $(".b1c-form").find("[type=text], textarea").each(function() {  // проверяем заполенность полей
         if ($(this).val().length < 1) {
            if (allRequired == 0 && $(this).attr("required") != undefined) {
               $(this).addClass("b1c-txt-err");
               errorSending = 1;
            }
            if (allRequired == 1) {
               $(this).addClass("b1c-txt-err");
               errorSending = 1;
            }
         }
      });

      if (errorSending === 0) {
         result("b1c-send", bmeData["caption.sending"]);
         sendForm();
      } else {
         result("b1c-err", bmeData["caption.error"]);
      }
      return false;
   }); //send data

   $(document).delegate(".b1c-txt", "click", function() { // редактирование полей после ошибки
      $(this).removeClass("b1c-txt-err");
   });

   $(document).delegate(".b1c", "click", function() {
      bc = [];
      bo = []; // clear array

      bg = $(".b1c-good").length == 0 ? $("body") : $(this).closest(".b1c-good");
      bn = $(bg).find(".b1c-name").html().length == 0 ? $(bg).find("h1").text() : $(bg).find(".b1c-name").text();

      $(bg).find("[data-bme]").each(function() {
         var elTag = $(this)[0].nodeName.toLowerCase(); //prop("tagName");
         bc.push($(this).attr("data-bme")); // add field name

         switch (elTag) { // find value
            case "textarea": // textarea
               bo.push($(this).val());
               break;
            case "select": // selects
               bo.push($(this).find(":selected").text());
               break;
            case "input":
               var elType = $(this).attr("type").toLowerCase(); // get input type
               switch (elType){
                  case "text": // text fields
                  case "hidden": // hidden values
                  case "radio": // radio
                     bo.push($(this).val());
                     break;
                  case "checkbox": // guess
                     bo.push($(this).is(":checked") ? bmeData["txt.yes"] : bmeData["txt.no"]);
                     break;
               }
               break;
            default: // div, span, p, etc.
               bo.push($(this).text());
         }
      });

      /*$(bg).find("select").each(function() { // сохраняем селекты
         if ($(this).attr("data-bme") != undefined) {
            bc.push($(this).attr("data-bme"));
            bo.push($(this).find(":selected").text());
         }
      });*/

      $(".b1c-form .b1c-title-name span").html(bn);
      showForm();
      return false;
   });

   $(document).delegate(".b1c-close", "click", function(e) { // close button
      e.preventDefault();
      hideForm();
      return false;
   });

   $(document).delegate(".b1c-bg", "click", function() {
      hideForm();
   });

   $(document).keyup(function(e) { // обработка esc
      if ( ($(".b1c-form").is(":visible")) && (e.keyCode == 27) ) {
         hideForm();
      }
   });

   var ref = getCookie("b1cRef"); // load sent time
   if ((!ref) && (document.referrer)) {
      ref = document.referrer;
      setCookie("b1cRef", ref);
   }

   function getCookie(e) { // get cookie
      var name = e + "=";
      var ca = document.cookie.split(';');
      for (var i = 0; i < ca.length; i++) {
         var c = ca[i].trim();
         if (c.indexOf(name)==0) return c.substring(name.length,c.length);
      }
      return false;
   }

   function setCookie(e,v) { // save cookie
      var d = new Date();
      d.setTime(d.getTime()+(5*24*60*60*1000));
      var expires = "expires="+d.toGMTString();
      document.cookie = e + "=" + v + "; " + expires;
   }
}

}); // $(function($) {...
vovansgz
Репутація: 0
Повідомлення: 4
З нами: 1 місяць 19 днів

#217 InMix » 01.07.2017, 06:34

Здравствуйте,

Подскажите пожалуйста, можно ли как-то реализовать над кнопкой отправки чекбокс с ссылкой на пользовательское соглашение (пока не стоит галочка, кнопка отправить будет недоступна/неактивна) ?

Данное дополнение будет актуально для магазинов, которые находятся на территории РФ, в связи с выходом закона "КоАП РФ, Статья 13.11 (О сборе персональных данных)"
InMix
Репутація: 0
Повідомлення: 1
З нами: 27 днів 5 годин

#218 Nazar Tokar » 01.07.2017, 21:03

InMix, додав у свіжій версії 2.5.2, ось документація. Треба додати поле caption.
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

#219 alirus » 10.07.2017, 22:41

Nazar Tokar, Здравствуйте!

Подскажите пожалуйста!
Установил скрипт, все работает из конкретного товара.
Добавил в категории товаров. И возникла проблема. Из страницы конкретного товара отправляет письмо нормально
Из категории товаров при нажатии на кнопку "отправить запрос" висит и ничего не происходит.

Подскажите пожалуйста что я не так сделал. Заранее спасибо за ответ!
Магазин по адресу: gp-market.ru
alirus
Репутація: 0
Повідомлення: 4
З нами: 17 днів 13 годин

#220 Nazar Tokar » 11.07.2017, 18:59

alirus, у вас немає кнопки на сторінці категорії.
Читайте твітер.
Nazar Tokar M
Автор теми, Администратор
Аватар
Звідки: Україна
Репутація: 148
Повідомлення: 2489
Теми: 100
З нами: 4 роки 4 місяці

Поперед.Наст.

Повернутись в Buyme — покупка за один клік

Хто зараз на форумі (базується на активності користувачів за останні 30 хвилин)

Зараз переглядають цей розділ: proaqua і 7 гостей