jQuery.cookie=function(name,value,options) {
  if (typeof value != 'undefined') { // name and value given, set cookie
    options=options || {};
    if (value===null) {
        value='';
        options.expires=-1
    }
    var expires='';
    if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
      var date
      if (typeof options.expires == 'number') {
        date=new Date()
        date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000))
      } else {
        date=options.expires
      }
      expires='; expires='+date.toUTCString()
    }
    var path=options.path?'; path=' + (options.path) : ''
    var domain=options.domain?'; domain=' + (options.domain) : ''
    var secure=options.secure?'; secure' : ''
    document.cookie=[name, '=', encodeURIComponent(value), expires, path, domain, secure].join('')
  } else { // only name given, get cookie
    var cookieValue=null
    if (document.cookie && document.cookie != '') {
      var cookies=document.cookie.split(';')
      for (var i=0; i < cookies.length; i++) {
        var cookie=jQuery.trim(cookies[i])
        // Does this cookie string begin with the name we want?
        if (cookie.substring(0, name.length + 1) == (name + '=')) {
          cookieValue=decodeURIComponent(cookie.substring(name.length + 1))
          break;
        }
      }
    }
    return cookieValue;
  }
}

$(function(){
  $('a.basket-link-add').each(function(){
    var h=this.hash.substr(1).split('/')
  }).click(function(){
    var h=this.hash.substr(1).split('/')
    basketEdit(h[0], h[1], basketNumber(h[0]) + 1)
    basketShow()
    alert("Товар добавлен в корзину")
    return false
  })

  $('#basket input.form-text').change(basketRecount).keypress(function(){setTimeout(basketRecount,100)})

  var f_person=function(s){
    if(typeof(s)!='string')s='fast'
    if($('#edit-person-1')[0].checked){
      $('#natural-person').show(s).find('input').each(function(){if(this.value=='-')this.value=''})
    }else{
      $('#natural-person').hide(s).find('input').each(function(){if(this.value=='')this.value='-'})
    }
    if($('#edit-person-2')[0].checked){
      $('#artificial-person').show(s).find('input').each(function(){if(this.value=='-')this.value=''})
    }else{
      $('#artificial-person').hide(s).find('input').each(function(){if(this.value=='')this.value='-'})
    }
  }
  $('#edit-person-1, #edit-person-2').click(f_person)
  if($('#edit-person-1, #edit-person-2').length)f_person()
})



basketNumber=function(i){
  var b=$.cookie(Drupal.settings.bsk),c=false,r=false,w=typeof(n)=='undefined'
  if(!b||!b.search(/^\d+:\d+:\d+(,\d+:\d+:\d+)*$/)==-1)return 0
  var ba=b.split(',')
  for(var q=0;q<ba.length;q++){
    var a=ba[q].split(':')
    if(a[0]==i)return 1*a[1]
  }
  return 0
}

basketEdit=function(i,p,n){
  var b=$.cookie(Drupal.settings.bsk),c=false,r=false,w=typeof(n)=='undefined',f=false
  if(b&&b!=''&&b.search(/^\d+:\d+:[\d\.]+(,\d+:\d+:[\d\.]+)*$/)==-1){$.cookie(Drupal.settings.bsk,'',{path:Drupal.settings.basePath});b=''}
  if(i<1)return r
  var ba=b&&b!=''?b.split(','):[],s=[]
  for(var q=0;q<ba.length;q++){
    var a=ba[q].split(':'),i0=a[0],n0=a[1],p0=a[2]
    if(i0==i){
      c=true
      if(!w){
        if(n<1)continue
        a=[i,1*n,p]
      }else{
        if(n0==0){
          a=[i,1,p]
        }else{
          continue
        }
      }
      r=true
    }
    s.push(a.join(':'))
  }
  if(!c){
    s.push([i,(w?1:1*n),p].join(':'))
    r=true
  }
  $.cookie(Drupal.settings.bsk,s.join(','),{path:Drupal.settings.basePath})
  return r
}

basketShow=function(){
  var b=$.cookie(Drupal.settings.bsk),ba=b&&b!=''?b.split(','):[],vn=0,vp=0
  for(var q=0;q<ba.length;q++){
    var a=ba[q].split(':')
    vn+=1*a[1]
    vp+=1*a[2]*a[1]
  }
  $('#block-basket').html((vn>0 ?
      '<div class="basket-butt"><a href="'+Drupal.settings.basePath+'basket"><img src="'+Drupal.settings.tpi+'ico_basket.gif" alt="" /></a></div>'+
      '<div class="content"><a href="'+Drupal.settings.basePath+'basket">Корзина</a><strong>Товаров:</strong> '+vn+'<br />'+
      '<strong>Стоимость:</strong> '+(Math.round(vp*100)/100)+'&nbsp;руб</div>' :
      '<div class="content"><br />Корзина пуста<br /><br /></div>'))/*+
      '<input type="submit" value="" class="form-submit" onclick="location.href=\''+Drupal.settings.basePath+'basket\'" />')*/
  basketRecount()
//  alert($.cookie(Drupal.settings.bsk))
}

basketDiscountType=function(){return Drupal.settings.discount[0]}
basketDiscountValue=function(){return Drupal.settings.discount[1]}


basketRecount=function(){
  var $trs=$('#basket tr'), itogo_s=0, itogo_n=0, $i_s=$('#itogo-sum'), $i_n=$('#itogo-num')
  for(var g=0;g<$trs.length;g++){
    var $num=$($trs[g]).find('input[type=text]'), $ep=$($trs[g]).find('.eprice'), $epm=$($trs[g]).find('.epricemult'), ep, epm
    ep=($ep.length)?1*$ep[0].innerHTML:0
    if($num.length){
      $num[0].value=$num[0].value.replace(/\D/,'');
      if($epm.length)$epm[0].innerHTML=ep*$num[0].value
      itogo_n=itogo_n+1*$num[0].value
      itogo_s=itogo_s+ep*$num[0].value
    }
  }
  if (basketDiscountType()==1) {
    itogo_s=itogo_s*(100-basketDiscountValue())/100
  }
  if (basketDiscountType()==2) {
    itogo_s=itogo_s-basketDiscountValue()
  }
  if($i_s.length)$i_s[0].innerHTML=Math.round(itogo_s*100)/100
  if($i_n.length)$i_n[0].innerHTML=Math.round(itogo_n)
}
