/**
 * Cookie plugin
 *
 * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 *
 */
jQuery.cookie=function(B,I,L){if(typeof I!="undefined"){L=L||{};if(I===null){I="";L.expires=-1}var E="";if(L.expires&&(typeof L.expires=="number"||L.expires.toUTCString)){var F;if(typeof L.expires=="number"){F=new Date();F.setTime(F.getTime()+(L.expires*24*60*60*1000))}else{F=L.expires}E="; expires="+F.toUTCString()}var K=L.path?"; path="+(L.path):"";var G=L.domain?"; domain="+(L.domain):"";var A=L.secure?"; secure":"";document.cookie=[B,"=",encodeURIComponent(I),E,K,G,A].join("")}else{var D=null;if(document.cookie&&document.cookie!=""){var J=document.cookie.split(";");for(var H=0;H<J.length;H++){var C=jQuery.trim(J[H]);if(C.substring(0,B.length+1)==(B+"=")){D=decodeURIComponent(C.substring(B.length+1));break}}}return D}};

$(function() {
   if( $.browser.opera ) {
      var clss = 'image-border-css';
      $('img.' + clss).each( function() {
         $(this).replaceWith('<span class="' + clss + '" style="background:url(' + $(this).attr('src') + ') 0 0 no-repeat; height:' + $(this).height() + 'px; width:' + $(this).width() + 'px;"></span>');
      });
   }
	$('#captcha_reload').click(function(){
      var $c = $(this).parent().find('img').eq(0);
      $c.attr( 'src', $c.attr('src') + '&' + Math.random() )
      return false;
   });
	
	$('.delete').live('click',function(){
      
      $(this).parents('tr').eq(0).remove();    
      remIetemFromCart(
         $(this).attr('item_id')
      );      
      return false;
   });
});

function toCart( item_id, quantity ) {
   var first = 0;
	if( !$.cookie('cid') ) first = 1;
	$.post( '.', { action:'Orders.addItem2Cart', item_id:item_id, quantity:quantity },
      function( result ) {
         if( result.error ) {
            alert("При добавлении товара в корзину возникла ошибка");
         } else {
            alert("Товар добавлен в корзину");
				if( first ) {
					loadCartBlock();
				} else {
					$('#esm-block').replaceWith(result.html);
				}
         }
      },
      'json'
   );
}

function select_delivery_method(dm){
	$("#delivery").val(dm);
	delivery_cost = ( dm == 2 ) ? 0 : parseInt( $("#delivery_price_1").html() );
	$("#total_price").html( parseInt( $("#subtotal_price").html() ) + delivery_cost );
} // Tnd select_delivery_method

function loadCartBlock(){
   $.post( '.', { action:'Orders.getCartBlock' },
      function( result ) {
         if( result.error ) {
            alert( result.error );
         } else {
            $('#esm-block').replaceWith( result.html );
         }//if
      },
      'json'
   );
	//alert(1);
}//loadCartBlock

// если мы находимся в корзине
if( location.pathname.indexOf( '/order' ) === 0 ) {
   
   // current_num нужно, потому что в момент после клика в this находится другой дом-элемент
   var current_num = null;

   var update_cart = function(){
		var quantity = $(this).val();
		var cart_item_id = $(this).attr('cart_item_id');
		$.post( '.', 
         { action:'Orders.changeQuantity', cart_item_id:cart_item_id, quantity:quantity },
         function( result ) {
				//eval( "var result="+res );
            if( result.error ) {
               alert( result.error );
            }
				if( result.html ) {
					loadCartBlock();
					$('#cart_products').next().remove();
					$('#cart_products').next().remove();
               $('#cart_products').replaceWith( result.html );
               if( $( "input[name='delivery_method_id']:checked" ).val() == 2 ) {
                  $("#total_price").html( parseInt( $("#subtotal_price").html() ) );
               } else {
						$("#total_price").html( parseInt( $("#subtotal_price").html() ) + parseInt( $("#delivery_price_1").html() ) );
					}
            }//if
         },
         'json'
      );
   }; // update_cart
   
   $('"#order_form input[name=num]').live("keyup", update_cart).live("paste", update_cart);
}

function remIetemFromCart( id ) {
   $.get( '.', { action:'Orders.remItemFromCart', id:id },
      function( result ) {
         if( result.error ) {
            alert( result.error );
         } else {
            if( $('#cart_products tr').length == 1 ) {
               location.reload();
            } else {
               loadCartBlock()
               var full_cost = parseInt( result.full_cost );
					$("#subtotal_price").html( full_cost );
					if( $( "input[name='delivery_method_id']:checked" ).val() == 2 ) {
                  $("#total_price").html( full_cost );
               } else {
						$("#total_price").html( full_cost + parseInt( $("#delivery_price_1").html() ) );
					}
					
            } // End if
           
         } // End if
      },
      'json'
   );
}//remIetemFromCart

function ClientBrowse() { this.w=0; this.h=0;
if (self.screen) { this.w=screen.width; this.h=screen.height; }
else if (self.java) { var jkit=java.awt.Toolkit.getDefaultToolkit(); var scrsize=jkit.getScreenSize(); this.w=scrsize.width; this.h=scrsize.height; } return this; }
function OpenWin(url,nwin,w,h,s) { p=new ClientBrowse();
if (w) { leftPos=(p.w-w)/2; } else { w=p.w-100; leftPos=(p.w-w)/2; }
if (h) { topPos=(p.h-h)/2; } else { h=p.h-100; topPos=10; }
(s==1)?null:s=0; (nwin)?null:nwin="win"; var property="left="+leftPos+",top="+topPos+",width="+w+",height="+h+",scrollbars="+s;
return window.open (url,nwin,property); }

var _toCompare = $.cookie('itemsToCompare') ? $.cookie('itemsToCompare').split(/,/) : Array(), _compareCnt = _toCompare.length;
function togleToCompare( el, id ){
   if( _toCompare.in_array(id) ) {
      $(el).text('Добавить для сравнения');
		$(el).removeClass('in');
		for( var key in _toCompare ) {
			if( _toCompare[key] == id ) _toCompare.splice( key, 1 );
		}
      if( --_compareCnt < 2 ) {
         $('a.compare:hidden').css('display', 'block');
			$('a.srav-link:visible').css('display', 'none');
      }
   } else {
      $(el).text('Удалить из сравнения');
		$(el).addClass('in');
      _toCompare.push( parseInt(id) );
      if( ++_compareCnt >= 2 ) {
         $('a.srav-link').css('display', 'block');
			$('a.compare:not(.in)').css('display', 'none');
      }
   } // End if
	$.cookie('itemsToCompare', _toCompare.join(','), {path:'/'});
}


var _compareWin = null;
function compareGoods() {
   if( _compareCnt >= 2 ) {
		if( !_compareWin || _compareWin.closed ) {
			_compareWin = OpenWin('/compare/', 'win', 1000, 600, 1);
		} // End if
		_compareWin.focus();
   } else {
      alert( 'Выделите хотя бы 2 товара' );
   }
   return false;

}

function removeFromCompare(id) {
   if( _toCompare.in_array(id) ) {
		for( var key in _toCompare ) {
			if( _toCompare[key] == id ) _toCompare.splice( key, 1 );
		};
		$.cookie('itemsToCompare', _toCompare.join(','), {path:'/'});
		location.reload();
		if (window.opener && !window.opener.closed) {
			window.opener.location.reload();
		} 
   } else {
      alert( "Такой товар отсутствует в сравнении!" );
   }
   return false;
}

Array.prototype.in_array = function(p_val) {
    for(var i = 0, l = this.length; i < l; i++)  {
        if(this[i] == p_val) {
            return true;
        }
    }
    return false;
}


