//$Id: basket.js,v 1.5 2009/10/14 01:45:32 evg@atom.krasnet.ru Exp $

function addToBasket(jkid)
{
 var value = new Array();
 $('BasketPreviewContentItems').style.display = 'none';
 $('BasketPreviewLoading').style.display = 'block';
 $('BasketPreviewContent').style.display = 'block';
 $('BasketPreviewWrapper').className = 'over';
 value['id'] = 'basket';
 value['a2b'] = 1;
 if ($('qty') && $('qty').value > 1)
 {
    value['a2b'] = $('qty').value;
 }
 if ($('size') && $('size').value)
 {
    value['size'] = $('size').value;
 }
 value['jkid'] = jkid;
 ajaxRequests['basket'] = 'shortBasketDescription';
 var req=new j2httpRequest_js;
 req.onreadystatechange = function()
 {
  if (req.readyState == 4)
  {
   var result=req.responseJS;
   if (result['html'])
   {
    if (ajaxRequests[result['id']] && $(ajaxRequests[result['id']]))
    {
     $(ajaxRequests[result['id']]).innerHTML = result['html'];
     basketPreview();
    }
   }
  }
 }
 if (this.script_name)
 {
  value['script_name'] = this.script_name;
 }
 if (this.tab_name)
 {
  value['tab_name'] = this.tab_name;
 }
 if (this.meta_data)
 {
  value['meta_data'] = this.meta_data;
 }
 req.open('GET', '/assets/templ/include_globals/options.php', true);
 req.send({'mode':'uri','value':value});
 return false;
}

function basketPreview()
{
 var value = new Array();
 value['id'] = 'basket-preview';
 value['bp'] = 0;
 ajaxRequests['basket-preview'] = 'BasketPreviewContentItems';
 var req=new j2httpRequest_js;
 req.onreadystatechange = function()
 {
  if (req.readyState == 4)
  {
   var result=req.responseJS;
   if (result['html'])
   {
    if (ajaxRequests[result['id']] && $(ajaxRequests[result['id']]))
    {
     $('BasketPreviewWrapper').innerHTML = result['html'];
     if ($('BasketPreviewContent').style.display == 'none')
     {
      $('BasketPreviewWrapper').className = '';
     } else
     {
      $('BasketPreviewWrapper').className = 'over';
     }
    }
   }
  }
 }
 if (this.script_name)
 {
  value['script_name'] = this.script_name;
 }
 if (this.tab_name)
 {
  value['tab_name'] = this.tab_name;
 }
 if (this.meta_data)
 {
  value['meta_data'] = this.meta_data;
 }
 req.open('GET', '/assets/templ/include_globals/options.php', true);
 req.send({'mode':'uri','value':value});
 return false;
}

function previewBasketUp(c)
{
 var up = $('BasketPreviewScrollUp');
 var down = $('BasketPreviewScrollDown');
 var len = 50;
 for (i = 0; i < 50; i++)
 {
  if (!$('BasketPreviewItem' + i))
  {
   len = i;
   break;
  }
 }
 var off = 0;
 for (i = 0; i < len; i++)
 {
  if ($('BasketPreviewItem' + i).className != 'BasketPreviewItem')
  {
   off = i;
   break;
  }
 }
 off--;
 if (off < 0)
 {
  off = 0;
 }
 for (i = 0; i < len; i++)
 {
  if (i >= off && i < off + c)
  {
   $('BasketPreviewItem' + i).className = 'BasketPreviewItem over';
  } else
  {
   $('BasketPreviewItem' + i).className = 'BasketPreviewItem';
  }
 }
 if (off == 0)
 {
  up.className = '';
 } else
 {
  up.className = 'over';
 }
 if (off + c < len)
 {
  down.className = 'over';
 } else
 {
  down.className = '';
 }
 return false;
}

function previewBasketDn(c)
{
 var up = $('BasketPreviewScrollUp');
 var down = $('BasketPreviewScrollDown');
 var len = 50;
 for (i = 0; i < 50; i++)
 {
  if (!$('BasketPreviewItem' + i))
  {
   len = i;
   break;
  }
 }
 var off = 0;
 for (i = 0; i < len; i++)
 {
  if ($('BasketPreviewItem' + i).className != 'BasketPreviewItem')
  {
   off = i;
   break;
  }
 }
 off++;
 if (off + c >= len)
 {
  off = len - c;
 }
 if (off < 0)
 {
  off = 0;
 }
 for (i = 0; i < len; i++)
 {
  if (i >= off && i < off + c)
  {
   $('BasketPreviewItem' + i).className = 'BasketPreviewItem over';
  } else
  {
   $('BasketPreviewItem' + i).className = 'BasketPreviewItem';
  }
 }
 if (off == 0)
 {
  up.className = '';
 } else
 {
  up.className = 'over';
 }
 if (off + c < len)
 {
  down.className = 'over';
 } else
 {
  down.className = '';
 }
 return false;
}

function removeFromBasket(id)
{
 var value = new Array();
 $('BasketPreviewContentItems').style.display = 'none';
 $('BasketPreviewLoading').style.display = 'block';
 $('BasketPreviewContent').style.display = 'block';
 $('BasketPreviewWrapper').className = 'over';
 value['id'] = 'basket';
 value['r2b'] = id;
 ajaxRequests['basket'] = 'shortBasketDescription';
 var req=new j2httpRequest_js;
 req.onreadystatechange = function()
 {
  if (req.readyState == 4)
  {
   var result=req.responseJS;
   if (result['html'])
   {
    if (ajaxRequests[result['id']] && $(ajaxRequests[result['id']]))
    {
     $(ajaxRequests[result['id']]).innerHTML = result['html'];
     basketPreview();
    }
   }
  }
 }
 if (this.script_name)
 {
  value['script_name'] = this.script_name;
 }
 if (this.tab_name)
 {
  value['tab_name'] = this.tab_name;
 }
 if (this.meta_data)
 {
  value['meta_data'] = this.meta_data;
 }
 req.open('GET', '/assets/templ/include_globals/options.php', true);
 req.send({'mode':'uri','value':value});
 return false;
}

function closeBasketPreview()
{
 $('BasketPreviewContent').style.display = 'none';
 $('BasketPreviewWrapper').className = '';
 return false;
}

function basketInc(entry_id, maxqty)
{
 var t = $('qty' + entry_id);
 var qty = 1;
 if (t)
 {
  var q = t.innerHTML;
  if (q < 50 && q < maxqty)
  {
   qty = parseInt(q) + 1;
   t.innerHTML = qty;
   return basketQty(entry_id, qty);
  }
 }
 return false;
}

function basketDec(entry_id)
{
 var t = $('qty' + entry_id);
 var qty = 1;
 if (t)
 {
  var q = t.innerHTML;
  qty = parseInt(q) - 1;
  if (qty < 0)
  {
   qty = 0;
  }
  if (qty > 0)
  {
   t.innerHTML = qty;
  }
  return basketQty(entry_id, qty);
 }
 return false;
}

function basketQty(entry_id, qty)
{
 var req = new j2httpRequest_js;
 if (qty == 0)
 {
  return rmArticle(entry_id);
 }
 req.onreadystatechange = function()
 {
  if (req.readyState == 4)
  {
   var result=req.responseJS;
   if (result['handle'] && result['handle']['update'] )
   {
    for (var k in result['handle']['update'])
    {
     var u = $(k);
     if (u)
     {
      u.innerHTML = result['handle']['update'][k];
     }
    }
   }
   var form = $('basketMessage');
   if (form && result['handle'] && result['handle']['html'])
   {
    form.innerHTML = result['handle']['html'];
    form.style.display = 'block';
   }
  }
 }
 req.open('GET', '/assets/templ/include_globals/basket-handler.html', true);
 var n = 'qty[' + entry_id.toString() + ']';
 var q = {'mode':'uri'};
 q[n] = qty;
 var c = $('c');
 if (c && c.value=='GB')
 {
  q['c'] = c.value;
 }
 req.send(q);
 return false;
}

function rmArticle(entry_id, confirm)
{
 var req = new j2httpRequest_js;
 req.onreadystatechange = function()
 {
  if (req.readyState == 4)
  {
   var result=req.responseJS;
   if (result['handle'] && result['handle']['empty'] )
   {
    location.href = '/shop/empty-basket.html';
    return false;
   }
   var form = $('basketMessage');
   if (form)
   {
    if (result['handle'] && result['handle']['html'])
    {
     form.innerHTML = result['handle']['html'];
     form.style.display = 'block';
    } else
    {
     form.style.display = 'none';
    }
   }
   if (result['handle'] && result['handle']['delete'] )
   {
    var del = $(result['handle']['delete']);
    if (del)
    {
     del.style.display = 'none';
    }
   }
   if (result['handle'] && result['handle']['update'] )
   {
    for (var k in result['handle']['update'])
    {
     var u = $(k);
     if (u)
     {
      u.innerHTML = result['handle']['update'][k];
     }
    }
   }
  }
 }
 req.open('GET', '/assets/templ/include_globals/basket-handler.html', true);
 var op = 'd';
 if (confirm)
 {
  op = 'dc';
 }
 var q = {'mode':'uri'};
 q[op] = entry_id;
 var c = $('c');
 if (c && c.value=='GB')
 {
  q['c'] = c.value;
 }
 req.send(q);
 return false;
}

function rmArticleConfirm(entry_id)
{
 return rmArticle(entry_id, true);
}

function selectOrderTab(tab)
{
 var tabs = new Array('track', 'detail', 'print');
 for (i = 0; i < tabs.length; i++)
 {
  if (tabs[i] == tab)
  {
   $('a' + tabs[i]).style.display = 'none';
   $('span' + tabs[i]).style.display = 'inline';
   $('select' + tabs[i]).style.display = 'block';
  } else
  {
   $('a' + tabs[i]).style.display = 'inline';
   $('span' + tabs[i]).style.display = 'none';
   $('select' + tabs[i]).style.display = 'none';
  }
 }
 return false;
}

function expressUpdateMethod(mode, value)
{
 var req=new j2httpRequest_js;
 if (typeof (mode)=='object')
 {
  method='POST';
 } else
 {
  method='GET';
 }
 req.onreadystatechange = function()
 {
  if (req.readyState == 4)
  {
   var result=req.responseJS;
   if (result['html'])
   {
    $('method').innerHTML=result['html'];
   }
  }
 }
 req.open(method, '/assets/templ/include_globals/dmethod.php', true);
 req.send({'mode':mode,'value':value});
 return false;
}
