$(document).ready(function(){

 if($("body").find('div#cwp_basket').length>0 && $("body").find("div.wpcf7-mail-sent-ok").length>0){
// if($("body").find('div#cwp_basket').length>0 && $("body").find("div.wpcf7-mail-sent-ng").length>0){
  var cooka = '';
  if(document.cookie && document.cookie != '') {
   var split = document.cookie.split(';');
   for (var i=0; i<split.length; i++) {
    cooka = trim(decodeURIComponent(split[i]));
    if(cooka.match(/^cwp_item__/)){
     $.cookie(cooka.split('=')[0],null,{path:'/'});
    }
   }
  }
  $('#cwp_basket').html('<p>Спасибо, ваш заказ принят.</p>');
  $("form.wpcf7-form").text('');
  $("form.wpcf7-form").hide();
  //location.href = '/basket/';
 }else{
  get_basket();
 }
 
 if($("form.wpcf7-form").find("textarea[name=order]").length>0){
  $('form.wpcf7-form textarea[name=order]').hide();
 }

 $("input.cwp_num").keypress(function(event) {
  var controlKeys = [8, 9, 13, 35, 36, 37, 39];
  var isControlKey = controlKeys.join(",").match(new RegExp(event.which));
  //if(!event.which || (49 <= event.which && event.which <= 57) || (48 == event.which && $(this).attr("value")) || isControlKey){ 
  if(!event.which || (48 <= event.which && event.which <= 57) || isControlKey) { 
   return;
  }else{
   event.preventDefault();
  }
 });

 $("a.cwp_order").click(function(event){
  var basket = false;
  if($("body").find('div#cwp_basket').length>0){
   basket = true;
  }
  num = $(this).parent().find("input.cwp_num").val();
  var name = '';
  if($("body").find(".cwp_title").length>0){
   name = $(".cwp_title").text();
  }
  if(num){
   params = num + $(this).attr('href');
   arr = params.split("#");
   c_name = 'cwp_item__' + arr[1] + '__' + arr[2];
   prev = $.cookie(c_name);
   if(prev){
    name = prev.split("#")[3];
    if(num>0){
     parr = prev.split("#");
	 if(parr[0] != arr[0]){
      mtext = 'Новое значение для товара установлено';
	 }else{
      alert('Данный товар уже находится у вас в корзине с тем же количеством');
	  return false;
	 }
	}else{
     $.cookie(c_name,null,{path:'/'});
	 if(!basket){
      alert('Товар удален из корзины');
	  check_basket();
	 }else{
      location.reload();
     }
	 return false;
	}
   }else{
    if(num>0){
     mtext = 'Товар помещен в вашу корзину';
	}else{
     alert('Неверное количество');
	 return false;
	}
   }
   $.cookie(c_name,params+'#'+ name,{path:'/'});
   check_basket();
   if(!basket){
    alert(mtext + "\n\nАртикул: "+arr[2]+"\nКоличество: "+arr[0]);
   }
   if(basket){
    location.reload();
   }
  }
  
  return false;
 });

 $('form.wpcf7-form').submit(function(e){

 var fields = new Array(); 
  fields[0] = 'your-name#Не заполнено обязательное поле «Ваше имя»';
  fields[1] = 'your-email#Не заполнено обязательное поле «Ваш E-mail»';
  fields[2] = 'phone#Не заполнено обязательное поле «Телефон»';
  for(var i=0;i<fields.length;i++){
   tmp = fields[i].split('#');
   if(trim($('form.wpcf7-form input[name='+tmp[0]+']').val()) == ''){
    alert(tmp[1]);
	return false;
   }
  }

  var order = '';
  if($("body").find('div#cwp_basket').length>0){
   var cookies = new Array();
   var cooka = '';
   var cooka_arr = new Array();
   var j = 0;
   if(document.cookie && document.cookie != '') {
    var split = document.cookie.split(';');
    for (var i=0; i<split.length; i++) {
     cooka = trim(decodeURIComponent(split[i]));
     if(cooka.match(/^cwp_item__/)){
      cooka_arr[j++] = cooka.split('=')[1].split('#');
     }
    }
   }
  }
  if(cooka_arr.length>0){
   for(i=0;i<cooka_arr.length;i++){
    order += "\n"+(i+1)+'. '+cooka_arr[i][4]+' (http://'+window.location.hostname+'/?p='+cooka_arr[i][1]+') ';
	//order += "\n"+'Арт: '+cooka_arr[i][2]+' Цена: '+cooka_arr[i][3]+' Кол-во: '+cooka_arr[i][0]+"\n";
	order += "\n"+'Арт: '+cooka_arr[i][2]+' Кол-во: '+cooka_arr[i][0]+"\n";
   }
   $('form.wpcf7-form textarea[name=order]').text(order);
  }
  //return false;
 })
 
 check_basket();
 
});

function check_basket(){
 var j = 0;
 var text = 'В&nbsp;корзине<br>товаров<br>нет';
 if(document.cookie && document.cookie != '') {
  var split = document.cookie.split(';');
  for (var i=0; i<split.length; i++) {
   cooka = trim(decodeURIComponent(split[i]));
   if(cooka.match(/^cwp_item__/)){
    j++;
   }
  }
 }
 if(j){
  text = 'Оформить<br>ваш заказ';
 }
 $('#packet span').html(text);
}

function get_basket(){
 if($("body").find('div#cwp_basket').length>0){
 var cookies = new Array();
 var cooka = '';
 var cooka_arr = new Array();
 var j = 0;
 if(document.cookie && document.cookie != '') {
  var split = document.cookie.split(';');
  for (var i=0; i<split.length; i++) {
   cooka = trim(decodeURIComponent(split[i]));
   if(cooka.match(/^cwp_item__/)){
    cooka_arr[j++] = cooka.split('=')[1].split('#');
   }
  }
 }
 //alert(cooka_arr);
 if(cooka_arr.length>0){
  var html = '';
  var total = 0;
  html += "\n"+'<table class="cwp_basket_table">';
  html += "\n"+'<tr>';
  html += "\n"+'<th>Товар</th>';
  html += "\n"+'<th>Количество</th>';
  html += "\n"+'</tr>';
  for(i=0;i<cooka_arr.length;i++){
   html += "\n"+'<tr>';
   html += "\n"+'<td><a href="/?p='+cooka_arr[i][1]+'">'+cooka_arr[i][3]+'</a><br/>'+cooka_arr[i][2]+'</td>';
   html += "\n"+'<td><input class="cwp_num" size="2" maxlength="4" value="'+cooka_arr[i][0]+'" type="text"> ';
   html += "\n"+' – <a class="cwp_order" href="#'+cooka_arr[i][1]+'#'+cooka_arr[i][2]+'">Установить</a></td>';
   html += "\n"+'</tr>'
  }
  html += "\n"+'</table>';
  html += "\n"+'<p>В корзине товаров: <b>'+cooka_arr.length+'</b>';
  $('#cwp_basket').html(html);
 }else{
  $('#cwp_basket').html('Корзина пуста');
  $("form.wpcf7-form").hide();
  $("form.wpcf7-form").text('');
 }
 }
}


function trim(str){
 var str = str.replace(/^\s\s*/, ''),ws = /\s/,i = str.length;
 while (ws.test(str.charAt(--i)));
 return str.slice(0, i + 1);
}

function number_format(number, decimals, dec_point, thousands_sep) {
 number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
 var n = !isFinite(+number) ? 0 : +number,
 prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
 sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
 dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
 s = '',
 toFixedFix = function (n, prec) {
  var k = Math.pow(10, prec);
  return '' + Math.round(n * k) / k;
 };
 s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
 if(s[0].length > 3) {
  s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
 }
 if((s[1] || '').length < prec) {
  s[1] = s[1] || '';
  s[1] += new Array(prec - s[1].length + 1).join('0');
 }
 return s.join(dec);
}


