// set status selected for array checkboxes
function checkAll()
{
  var boxes = document.getElementsByTagName('input'); for(var index = 0; index < boxes.length; index++) {box = boxes[index]; if (box.type == 'checkbox' && box.className == 'sf_admin_batch_checkbox') box.checked = document.getElementById('sf_admin_list_batch_checkbox').checked } return true;
}

//parse error function
function parseError(data)
{
  $('div.[id*=_error]').hide();
  
  var errors = new Array();
	try {errors = eval( data );} catch(err){}
  var content_error = '';
	for (i = 0; i < (errors.length); i++ )
	{
	  item = errors[i];
	  $('#'+item['name']+'_error .tipLeft').html(item['value']);
    $('#'+item['name']+'_error').show();
	}

  $("input").click(function () {
    $("div.[id*=_error]").fadeOut()
  });
  $("textarea").click(function () {
    $("div.[id*=_error]").fadeOut()
  });
}


// ajax navigate function
function navigate(url, element)
{
  $.post(url, {}, function(data) {
	  $('#'+element).html(data);
	});
  return false;
}


function changeCulture(lang)
{
  $.post(url_home+'/changeCulture', {lang:lang}, function(data) {
    var srtlocation1 = window.location;
    // перезагрузить
    window.location = srtlocation1;
	});
}


function displayLink(elem, class_from, class_to)
{
 for (var i=0; i<elem.childNodes.length;i++)
 {
   if (elem.childNodes[i].className)
   {
     if (elem.childNodes[i].className == class_from)
     {
       elem.childNodes[i].className = class_to;
     }
   }
   displayLink(elem.childNodes[i], class_from, class_to);
 }
}


function changeBigBic(menuId)
{
  $('div.[id*=bigPic_]').hide();
  $('#bigPic_'+menuId).show();
}

function displayMainText()
{
  if ($('#shortTextBlock').css('display') == 'block')
  {
    $('#shortTextBlock').hide();
    $('#textBlock').show();
  }
  else
  {
    $('#shortTextBlock').show();
    $('#textBlock').hide();
  }
}

//================================CART FUNCTION ================================
function changePicPreview(image)
{
  $('#picPreview').attr({'src': image});
}

function checkAmount()
{
  $.post(url_cart+"/amountPerDay", {}, function(data)
  {
    if (data)
    {
      showModalWindow(url_cart+'/popupMessage?message='+data);
    }
    else
      window.location = url_order;
  });
}

function emptyCart()
{
  $.post(url_cart+"/emptyCart", {}, function(data)
  {
    $("#cartBlock").html(data);
  });
}

function addToCart(id, qty, type, action, type_return)
{
  var qtyCart;
  if (action == 'change')
  {
    qtyCart = parseInt($('#qty_'+id+'_'+type).val())+qty;
  }
  else
    qtyCart = qty;

  $.post(url_cart+"/addToCart", {id:id,quantity:qtyCart, type:type, type_return: type_return}, function(data)
  {
    $("#cartBlock").html(data);
    if (type_return == 'big')
    {
      $.post(url_cart+"/getTotal", {}, function(data)
      {
        var amounts = new Array();
        try {amounts = eval( data );} catch(err){}    
        for (i = 0; i < (amounts.length); i++ )
	{
	  item = amounts[i];
          $('#'+item['name']).html(item['value']);
	}
      });
    }
  });
}

function addToCartExistItem()
{
  $.post(url_cart+"/addToCartExistItem", {type: 'product'}, function(data)
  {
    $("#cartBlock").html(data);
  });
}


function deleteFromCart(id, type, type_return)
{
  $.post(url_cart+"/deleteCart", {id:id,type:type, type_return:type_return}, function(data)
  {
    if (type_return == 'big' && data == '')
    {
      window.location = url_home;
    }
    else  
      $("#cartBlock").html(data);
  });
}

function addQty(id, val)
{
  var curr_qty = $('#qty_'+id+'_product').val();
  var new_qty = parseInt(curr_qty)+val;
  if (new_qty <= 0 ) new_qty = 1;
  $('#qty_'+id+'_product').val(new_qty);
}

function addQtyPerson(val)
{
  var curr_qty = $('#orderQuantity').val();
  var new_qty = parseInt(curr_qty)+parseInt(val);
  
  if (new_qty <= 0 ) new_qty = 0;
  $('#orderQuantity').val(new_qty);
}


function cart_move(type)
{
  var first_display_id = 0;
  var last_display_id = 0;
  var total_count = 0;

  $("tr[id*=cartrow_]").each(function()
  {
    if ($('#'+this.id).css('display') == 'block' && first_display_id == 0) first_display_id = this.id;
    if ($('#'+this.id).css('display') == 'block')
    {
      last_display_id = this.id;
    }
    total_count++;
  });

  var id = last_display_id.replace('cartrow_', '');
  var id1 = first_display_id.replace('cartrow_', '');
//alert(total_count);
  if (parseInt(id1)<(total_count-5) && type == 'down' )
  {
    $('#cartrow_'+(parseInt(id)+1)).css({'display':'block'});
    $('#'+first_display_id).css({'display':'none'});
  }
  else if (type == 'up' && parseInt(id1)<=(total_count-5) && id1 != 0)
  {
    $('#cartrow_'+(parseInt(id1)-1)).css({'display':'block'});
    $('#'+last_display_id).css({'display':'none'});
  }

  return false;
}


/*============================= OTHER ========================================*/
function showModalWindow(url)
{
  showBlock();
  $.post(url,{},
    function(data) {
      $("#popupContBlock").html(data);
      $("#popupContBlock").fadeIn();
      $('#pName').focus()
    });
  return false;
}

function showBlock()
{
  var height = $("#wrap").height();
  $("#shadow").css('height', height+"px");
  $("#shadow").fadeIn();
}

function hideBlock()
{
  $("#popupContBlock").fadeOut();
  $("#shadow").fadeOut();
}

function orderSubmit()
{
  var errors = '';
  //проверяем телефоны

  if (parseInt($('input[name=phoneSet]:checked').val()) <= 0 || $('input[name=phoneSet]:checked').val() == undefined)
  {
    errors = checkPhone('orderCode', 'orderNumber');
  }

  if ( ($('#orderName').val() == '') || ($('#orderName').val() == $('#orderName').attr('placeholder')))
  {
    errors += "{'name':'orderName', 'value':'" +err_empty+ "'},";
  }

  //проверяем адрес
  if ($('input[name=addressSet]:checked').val() <= 0 || $('input[name=addressSet]:checked').val() == undefined)
  {
    if ( ($('#orderAddress').val() == '') || ($('#orderAddress').val() == $('#orderAddress').attr('placeholder')))
    {
      errors += "{'name':'orderAddress','value':'" +err_empty+ "'},";
    }
  }

  if ( ($('#orderQuantity').val() == '') || ($('#orderQuantity').val() <= 0))
  {
    errors += "{'name':'orderQuantity','value':'" +err_personcount+ "'},";
  }

  if(errors !=  '')
  {
    parseError('[' +errors+ ']');
  }
  else
  {
    var address = '';
    if ($('input[name=addressSet]:checked').val() > 0)
    {
      address = $('#addressValue'+$('input[name=addressSet]:checked').val()).val();
    }
    else
    {
      address =  $('#orderAddress').val();
    }

    var code = ''; var phone = ''
    if ($('input[name=phoneSet]:checked').val() > 0)
    {
      code = $('#orderCode'+$('input[name=phoneSet]:checked').val()).val();
      phone = $('#orderNumber'+$('input[name=phoneSet]:checked').val()).val();
    }
    else
    {
      code = $('#orderCode').val();
      phone = $('#orderNumber').val();
    }
    $.post(url_cart+'/submitOrder', {
      personCount:$('#orderQuantity').val(),
      cardNumber:$('#orderCardNumber').val(),
      name:$('#orderName').val(),
      address: address,
      code:code,
      phone:phone
      }, function(data)
    {
      window.location = url_content+'/confirmorder';
    });
  }
}

function registrationSubmit(status)
{
  var errors;
  errors = checkPhone('customers_phone_code', 'customers_phone');
  if ($('#customers_phone_code2').val() || $('#customers_phone2').val())
  {
    errors += checkPhone('customers_phone_code2', 'customers_phone2');
  }
  if ($('#customers_phone_code3').val() || $('#customers_phone3').val())
  {
    errors += checkPhone('customers_phone_code3', 'customers_phone3');
  }
  if ( ($('#customers_first_name').val() == '') )
  {
    errors += "{'name':'customers_first_name','value':'" +err_empty+ "'},";
  }
  if ( ($('#customers_last_name').val() == '') )
  {
    errors += "{'name':'customers_last_name','value':'" +err_empty+ "'},";
  }

  if ( ($('#customers_address').val() == '') || ($('#customers_address').val() == $('#customers_address').attr('placeholder')))
  {
    errors += "{'name':'customers_address','value':'" +err_empty+ "'},";
  }

  var email = $('#customers_email').val();
  var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
  if (email == '')
  {
    errors += "{'name':'customers_email','value':'" +err_empty+ "'},";
  }
  else
  {
    if (!filter.test(email))
    {
      errors += "{'name':'customers_email','value':'" +err_email+ "'},";
    }
  }

  if (status == 'create')
  {
    if ($('#customers_password').val() == '')
    {
      errors += "{'name':'customers_password','value':'" +err_empty+ "'},";
    }
  }
  
  if ($('#customers_password').val() != $('#customers_password_confirmation').val())
  {
    errors += "{'name':'customers_password','value':'" +err_password+ "'},";
  }


  if(errors !=  '')
  {
    parseError('[' +errors+ ']');
  }
  else
  {
    if (status == 'create')
    {
      $.post(url_reg+'/registrationSubmit', {str:$('#registrationForm').serialize()}, function(data)
      {
        hideBlock();
        var srtlocation1 = window.location;
        var srtlocation = "'"+window.location+"'";
        // перезагрузить
        // иначе убрать форму логина если не на корзине
        if (srtlocation.indexOf('order') > 0 )
          window.location = srtlocation1;
        else
        {
          $.post(url_reg+'/updateLoginBlock', {str:$('#loginForm').serialize()}, function(data)
          {
            $('#loginBlock').html(data);
          });
        }

      });
    }
    else
    {
      $.post(url_cabinet+'/updateSubmit', {str:$('#registrationForm').serialize()}, function(data)
      {
        showModalWindow(url_cabinet+'/cabinetConfirmation');
      });
    }
  }
}



function contactSubmit()
{
  var errors;
  errors = checkPhone('content_code', 'content_number');
  
  var email = $('#content_email').val();
  var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
  
  if ($('#content_email').val() != '')
  {
    if (!filter.test(email))
    {
      errors += "{'name':'content_email','value':'" +err_email+ "'},";
    }
  } 
  else
  {
    errors += "{'name':'content_email','value':'" +err_empty+ "'},";
  }
 
  if ($('#content_name').val() == '')
  {
    errors += "{'name':'content_name','value':'" +err_empty+ "'},";
  }
  if ($('#content_text').val() == '')
  {
    errors += "{'name':'content_text','value':'" +err_empty+ "'},";
  }
  if(errors !=  '')
  {
    parseError('[' +errors+ ']');
  }
  else
  {
    $.post(url_send, {text:$('#content_text').val(),name:$('#content_name').val(),code:$('#content_code').val(), phone:$('#content_number').val(), email: $('#content_email').val()}, function(data)
    {
      $('input').val('');
      $('textarea').val('');
      
      window.location = url_content+'/confirmrequest';
    });

  }

}

function callSubmit()
{
  var errors;
  errors = checkPhone('pCode', 'pNumber');
  if ( ($('#pName').val() == '') || ($('#pName').val() == $('#pName').attr('placeholder')))
  {
    errors += "{'name':'pName', 'value':'" +err_empty+ "'},";
  }
  
  if(errors  != '')
  {
    parseError('[' +errors+ ']');
  }
  else
  {
    $.post(url_reg+'/callSubmit', {str:$('#callbackForm').serialize()}, function(data)
    {
      $('#callbackBlock').html('<div class="center"><center><p>' +caption_callback+ '</p><p>' +caption_callback1+ '</p></center></div>')
    });
  }
}


function checkPhone(codeId, numberId)
{
  var errors = '';

  var code   = $('#'+codeId).val();
  var number = $('#'+numberId).val();

  var codeHolder   = $('#'+codeId).attr('placeholder');
  var numberHolder = $('#'+numberId).attr('placeholder');

  if ( (code == '') || (code == codeHolder))
	{
    errors += "{'name':'" +codeId+ "', 'value':'" +err_empty+ "'},";
	}
	else if (!RegExp("^0", "g").test(code))
	{
    errors += "{'name':'" +codeId+ "', 'value':'" +err_codeFormat+ "'},";
	}
	else if (!RegExp("^0[0-9]{2}$", "g").test(code))
	{
    errors += "{'name':'" +codeId+ "', 'value':'" +err_codeNumber+ "'},";
	}

	if ( (number == '') || (number == numberHolder))
	{
    errors += "{'name':'" +numberId+ "', 'value':'" +err_empty+ "'},";
	}
	else if (!RegExp("^[0-9]{7}$", "g").test(number))
	{
    errors += "{'name':'" +numberId+ "', 'value':'" +err_numberFormat+ "'},";
	}

  return errors;

}

function loginSubmit()
{
  $.post(url_reg+'/signin', {str:$('#loginForm').serialize()}, function(data)
  {
    if ( data ) parseError(data);
    else
    {
      var srtlocation1 = window.location;
      var srtlocation = "'"+window.location+"'";
      // перезагрузить
      // иначе убрать форму логина если не на корзине
      if (srtlocation.indexOf('order') > 0 )
        window.location = srtlocation1;
      else
      {
        $.post(url_reg+'/updateLoginBlock', {str:$('#loginForm').serialize()}, function(data)
        {
          $('#loginBlock').html(data);
        });
      }
    }
  });
}


function logoutSubmit()
{
  $.post(url_reg+'/logoutSubmit', {}, function(data)
  {
      var srtlocation1 = window.location;
      var srtlocation = "'"+window.location+"'";
      // перезагрузить
      // иначе убрать форму логина если не на корзине
      if (srtlocation.indexOf('order') > 0 )
        window.location = srtlocation1;
      else
        $('#loginBlock').html(data);
  });
}

function remindSubmit()
{
  if ($('#customers_email').val() != '')
  {
    $.post(url_reg+'/remindSubmit', {str:$('#remindForm').serialize()}, function(data)
    {
      if ( data ) parseError(data);
      else
      {
        $('#remindBlock').html('<div class="center"><div class="bigPad"><center>' +caption_remind+ '</center></div></div>');
      }
    });
  }
  else
  {
    //показать сообщение об ошибках
    var data = '';
    data = "[{'name':'customers_email', 'value':'" +err_empty+ "'}]"
    parseError(data);
  }
}

function logoutForm(url)
{
  $.post(url_reg+'/logout', {}, function(data)
  {
    if(need_reload == 1)
      window.location = url_order;
    else
    {
      $.post(url_reload, {}, function(data)
      {
        $('#topLink').html(data);
        $.nyroModalRemove();
      });
    }
  });
}

