$.provide('ware.banners').injectFlash=function(path,targetUrl,width,height,quality)
{if(!ware.banners.injectFlash._lastIndex)
ware.banners.injectFlash._lastIndex=0;ware.banners.injectFlash._lastIndex++;var id='g_banners-index'+ware.banners.injectFlash._lastIndex;document.write('<span id="'+id+'"></span>');var flashvars={};var params={wmode:'transparent',movie:path,quality:quality||'high'};if(targetUrl)
{flashvars.url=targetUrl;params.url=targetUrl;}
swfobject.embedSWF(path,id,width,height,"7.0.0","/media/express_install.swf",flashvars,params,{});};

$.provide('ware.basket').ChangeTariffOptions=function(linkElement)
{if(ware.basket.ChangeTariffOptions.__disableConstructor)
return;var thisObj=this;linkElement.live('click',function(e)
{e.preventDefault();var query=new QueryStringParser($(e.currentTarget).attr('href'));wait.show('mouse');new shopMf.services.Request('goods.getTariffOptionsHtml',{goodId:query.goodId,pos:query.pos,showTotalPrice:1,showOk:1},function(tariffOptionsHtml){if(tariffOptionsHtml!=''){thisObj._showTariffOptions(tariffOptionsHtml,query.pos);}},null,function(){wait.hide();});});};ware.basket.ChangeTariffOptions.prototype._showTariffOptions=function(tariffOptionsHtml,pos)
{var modal=new my.modal.ModalContent({title:'Выбор тарифных опций',content:tariffOptionsHtml});modal._doAlign();var tariffOptions=$('.g_goods_tariffOptions',modal.getContentElement());tariffOptions.show();new my.goods.TariffOptionsLivePrice(tariffOptions,null,tariffOptions.attr('data-basePrice'));var thisObj=this;$('.g_button.to-ok',modal.getContentElement()).click(function(e)
{thisObj._saveTariffOptions(pos,$('input[name="tariffOptions[]"]',tariffOptions).fieldValue());e.preventDefault();});};ware.basket.ChangeTariffOptions.prototype._saveTariffOptions=function(pos,tariffOptionsIds)
{wait.show('mouse');new shopMf.services.Request('goods.setTariffOptions',{pos:pos,tariffOptionsIds:tariffOptionsIds.join(',')},null,null,function(){wait.hide();my.modal.closeAll();my.advbasket.refresh();});};

$.provide('ware.basket').DeleteItem=function(buttonElement,requestClass)
{if(ware.basket.DeleteItem.__disableConstructor)
return;$(buttonElement).click(function(e)
{var item=$(e.currentTarget).closest('.item');var pos=$('input[name="pos"]',item).val();var gid=$('input[name="gid"]',item).val();var serial=$('input[name="serial"]',item).val();if(!requestClass)
requestClass=ware.basket.Request;new requestClass({action:serial?'delete_num':'delete',gi:gid,pos:pos},{onSuccess:function()
{if(serial)
basket.css.enable_nums(serial);}});e.preventDefault();});};

$.provide('ware.basket').DisplayToggle=function(basketElement)
{if(ware.basket.DisplayToggle.__disableConstructor)
return;this._basketElement=basketElement;};ware.basket.DisplayToggle.prototype.toggle=function(onToggle)
{this.recountGlobalContentHeight(true);if($('.content_bar',this._basketElement).css('display')=='none')
this.show(onToggle);else
this.hide(onToggle);};ware.basket.DisplayToggle.prototype.show=function(onShow)
{$('.head_bar a.toggle',this._basketElement).removeClass('open').addClass('close');var animation='slideDown';var speed=200;if(($.browser.msie&&$.browser.version<=7)||($.browser.opera&&parseFloat($.browser.version)<9.6))
{animation='show';speed=0;}
var thisObj=this;$('.content_bar',this._basketElement)[animation](speed,function()
{thisObj.recountGlobalContentHeight();if(onShow)
onShow();});this._setCookie(1);};ware.basket.DisplayToggle.prototype.hide=function(onHide)
{$('.head_bar a.toggle',this._basketElement).removeClass('close').addClass('open');var animation='slideUp';var speed=200;if(($.browser.msie&&$.browser.version<=7)||($.browser.opera&&parseFloat($.browser.version)<9.6))
{animation='hide';speed=0;}
var thisObj=this;$('.content_bar',this._basketElement)[animation](speed,function()
{thisObj.recountGlobalContentHeight();if(onHide)
onHide();});this._setCookie(0);};ware.basket.DisplayToggle.prototype._setCookie=function(switch_index)
{document.cookie='switch_index='+switch_index+'; max-age='+(60*60*24);};ware.basket.DisplayToggle.prototype.recountGlobalContentHeight=function(without_content)
{if(($.browser.msie&&$.browser.version<=7)||$.browser.opera)
return false;if(parseInt($('.g_layouts_page').css('bottom'))==0)
return false;var basket_height=$('.g_layouts_page>.wrapper>.container>.footer').outerHeight()-$('.g_layouts_page>.wrapper>.container>.footer>.grassTopPartHeight').height();if(without_content)
{var content=$('.content_bar',this._basketElement);if(content.css('display')!='none')
basket_height-=content.outerHeight();}
$('.g_layouts_page').css('bottom',basket_height+'px');};

$.provide('ware.basket').ItemSlider=function(settings)
{if(ware.basket.ItemSlider.__disableConstructor)
return;this._settings=settings;var thisObj=this;this._settings.slideLeftElement.click(function(e)
{if(!thisObj._settings.slideLeftElement.hasClass('disabled'))
thisObj.slideTo('prev');e.preventDefault();});this._settings.slideRightElement.click(function(e)
{if(!thisObj._settings.slideRightElement.hasClass('disabled'))
thisObj.slideTo('next');e.preventDefault();});};ware.basket.ItemSlider.prototype.slideTo=function(to,no_animation)
{var goods_container=this._settings.itemsContainerElement;var goods=$(this._settings.itemSelector,goods_container);var items_count=goods.length;var item_width=$(this._settings.itemSelector,goods_container).outerWidth();var left=parseInt(goods_container.css('left'))||0;if(left%item_width)
return false;var wrapper_width=this._settings.itemsWrapperElement.width();var max_show_items=wrapper_width/item_width;var cur_pos=-left/item_width;var max_pos=items_count-max_show_items;if(max_pos<0)
max_pos=0;var to_pos=this._deref_pos(to,cur_pos,max_pos);this._check_slide_availible(to_pos,items_count,max_show_items);if(to_pos!=cur_pos)
{if(no_animation)
goods_container.css('left',-(to_pos*item_width));else
goods_container.animate({'left':-(to_pos*item_width)},'fast');}};ware.basket.ItemSlider.prototype._deref_pos=function(to,cur_pos,max_pos)
{var to_pos;if(to=='prev')
to_pos=cur_pos-1;else if(to=='next')
to_pos=cur_pos+1;else if(to=='first')
to_pos=0;else if(to=='last')
to_pos=max_pos;else
to_pos=to;if(to_pos>max_pos)
to_pos=max_pos;if(to_pos<0)
to_pos=0;return to_pos;};ware.basket.ItemSlider.prototype._check_slide_availible=function(to_pos,items_count,max_show_items)
{var left_hide_items=to_pos;var right_hide_items=items_count-(to_pos+1)-(max_show_items-1);if(left_hide_items>0)
this._settings.slideLeftElement.removeClass('disabled');else
this._settings.slideLeftElement.addClass('disabled');if(right_hide_items>0)
this._settings.slideRightElement.removeClass('disabled');else
this._settings.slideRightElement.addClass('disabled');};

$.provide('ware.basket').DeleteNumber=function(buttonElement)
{if(ware.basket.DeleteNumber.__disableConstructor)
return;$(buttonElement).click(function(e)
{var item=$(e.currentTarget).closest('.item');var pos=$('input[name="pos"]',item).val();var serial=$('input[name="serial"]',item).val();new ware.basket.RequestPurchase({action:'delete_number',pos:pos},{onSuccess:function()
{if(serial)
basket.css.enable_nums(serial);}});e.preventDefault();});};

$.provide('ware.basket').DeleteTariff=function(buttonElement)
{if(ware.basket.DeleteTariff.__disableConstructor)
return;$(buttonElement).click(function(e)
{var item=$(e.currentTarget).closest('.item');var pos=$('input[name="pos"]',item).val();new ware.basket.RequestPurchase({action:'delete_tariff',pos:pos});e.preventDefault();});};

$.provide('ware.basket').QuantityModify=function(inputElement,plusElement,minusElement)
{if(ware.basket.QuantityModify.__disableConstructor)
return;$(plusElement).click(function(e)
{var quantity=parseInt(inputElement.val());if(!quantity)
quantity=1;quantity++;inputElement.val(quantity);e.preventDefault();});$(minusElement).click(function(e)
{var quantity=parseInt(inputElement.val());if(!quantity||quantity<=1)
quantity=1;else
quantity--;inputElement.val(quantity);e.preventDefault();});};

$.provide('ware.basket').SaveItem=function(buttonElement)
{if(ware.basket.SaveItem.__disableConstructor)
return;$(buttonElement).click(function(e)
{var item=$(e.currentTarget).closest('.item');var pos=$('input[name="pos"]',item).val();var quantity=parseInt($('.amount input[name="qty"]',item).val());if(!quantity||quantity<=0)
quantity=1;new ware.basket.RequestPurchase({action:'save',pos:pos,qty:quantity});e.preventDefault();});};

$.provide('ware.basket').Request=function(data,settings)
{if(ware.basket.Request.__disableConstructor)
return;this._data=$.extend(true,{qty:1,w_conn:0},data);if(this._data.w_conn)
this._data.w_conn=1;if($.isArray(this._data.tariffOptionsIds))
this._data.tariffOptionsIds=this._data.tariffOptionsIds.join(',');if($.isArray(this._data.additionGoodIds))
this._data.additionGoodIds=this._data.additionGoodIds.join(',');this._settings=$.extend(true,{autoSend:true},settings);this._lastRequestObject=null;this._refresh_by_error=false;if(this._settings.autoSend)
this.send();};ware.basket.Request.prototype.send=function()
{var thisObj=this;this._lastRequestObject=$.ajax({type:'POST',url:config.url.xbasket,data:this._getDataAsXml(),contentType:'text/xml',processData:false,timeout:30000,dataType:'xml',cache:false,beforeSend:function()
{wait.show('mouse');},complete:function()
{wait.hide();},success:function(responseData)
{var basket=$('.g_basket_miniBasket');if(basket.length)
{basket.data('displayToggle').show(function()
{var basketHtml=responseData.getElementsByTagName('html_code')[0].firstChild.nodeValue;var jsEval=responseData.getElementsByTagName('eval')[0].firstChild.nodeValue;if(thisObj._data.action=='add_num'&&thisObj._data.pos)
var action='change_num';else
var action=thisObj._data.action;thisObj._refresh(basketHtml,jsEval,action);});}
if(thisObj._settings.onSuccess)
thisObj._settings.onSuccess();},error:function()
{if(thisObj._settings.onError)
thisObj._settings.onError();if(!thisObj._refresh_by_error)
{var tabIndex;if(thisObj._data.action=='compare')
tabIndex=2;else if(thisObj._data.action=='change_tab')
tabIndex=thisObj._data.open_frame;else
tabIndex=1;new ware.basket.Request({action:'change_tab',open_frame:tabIndex});thisObj._refresh_by_error=1;}
else
thisObj._refresh_by_error=0;}});};ware.basket.Request.prototype.getLastRequestObject=function()
{return this._lastRequestObject;};ware.basket.Request.prototype._getDataAsXml=function()
{var xml='';xml+="<"+"?xml version=\"1.0\" encoding=\"utf-8\"?"+">\n";xml+="<query>\n";(function(obj)
{for(var key in obj)
{if(typeof(obj[key])=='object')
arguments.callee(obj[key]);else if(obj[key]!=null&&obj[key]!=='')
xml+="\t\t<"+key+">"+obj[key]+"</"+key+">\n";}})(this._data);xml+="</query>";return xml;};ware.basket.Request.prototype._refresh=function(html,js_eval,action)
{var inlineBasket=$('.g_basket_miniBasket');var goods=$('.goods_list',inlineBasket);var old_left=parseInt(goods.css('left'));var old_open_frame_is_compare=$('.compare_but',inlineBasket).length;var old_all_goods_quantity={};this._get_goods_quantity(goods,old_all_goods_quantity);if(js_eval)
eval(js_eval);inlineBasket.html(html);init.basket.inlineBasket();init.basket.inlineBasket.purchase();init.basket.inlineBasket.compare();var open_frame_is_compare=$('.compare_but',inlineBasket).length;if(action=='change_tab'&&old_open_frame_is_compare!=open_frame_is_compare)
return;goods=$('.goods_list',inlineBasket);var items=$('.item',goods);var items_count=items.length;if(items_count)
{var wrapper_width=goods.closest('.goods_wrapper').width();var item_width=items.outerWidth();var max_show_items=wrapper_width/item_width;if(items_count>max_show_items)
{var left=old_left;var all_items_width=items_count*item_width;var left_hide_items=-left/item_width;var show_items=items_count-left_hide_items;var old_pos=-old_left/item_width;this._slide_to(old_pos,1);if(action=='add')
{var all_goods_quantity={};this._get_goods_quantity(goods,all_goods_quantity);var slide_to;var num=0;for(var key in old_all_goods_quantity)
{num++;if(old_all_goods_quantity[key].qty!=all_goods_quantity[key].qty)
{slide_to=num;break;}}
if(slide_to!=null)
this._slide_to(slide_to-1);else
this._slide_to('last');}
else if(action=='compare')
{this._slide_to('last');}
else if(action=='add_num')
this._slide_to('last');}}};ware.basket.Request.prototype._get_goods_quantity=function(goods,all_goods_quantity)
{var all_goods=$('.item',goods);all_goods.each(function(key,val)
{var good=$(this);all_goods_quantity[good.attr('id')]={'qty':$('.amount input[name="qty"]',good).val(),'num':key};});};ware.basket.Request.prototype._slide_to=function(to,no_animation)
{$('.g_basket_miniBasket').data('itemSlider').slideTo(to,no_animation);};

$.provide('ware.basket').RequestCompare=function(data,settings)
{if(ware.basket.RequestCompare.__disableConstructor)
return;data=$.extend(true,{open_frame:2},data);ware.basket.RequestCompare.__super.call(this,data,settings);};tools.extendClass(ware.basket.RequestCompare,ware.basket.Request);

$.provide('ware.basket').RequestPurchase=function(data,settings)
{if(ware.basket.RequestPurchase.__disableConstructor)
return;data=$.extend(true,{open_frame:1},data);ware.basket.RequestPurchase.__super.call(this,data,settings);};tools.extendClass(ware.basket.RequestPurchase,ware.basket.Request);

anketa={target:null,domain:location.host,private_persons:{},legal_persons:{},form_tmp:{'private':{'new':{},'edit':{}},'legal':{'new':{},'edit':{}}},form_source:{'private':{},'legal':{}},person_type_toggle:function(e)
{e=e||event;var target=e.target||e.srcElement;var legal_form=$('.legal',anketa.target);var private_form=$('.private',anketa.target);if(target.value=='private'&&legal_form.css('display')!='none')
{legal_form.slideUp('fast',function()
{if(anketa.form_source['private']=='new')
$('.private .not_save',anketa.target).show();else
$('.private .not_save',anketa.target).hide();private_form.slideDown('normal');});}
else if(target.value=='legal'&&private_form.css('display')!='none')
{private_form.slideUp('fast',function()
{if(anketa.form_source['legal']=='new')
$('.legal .not_save',anketa.target).show();else
$('.legal .not_save',anketa.target).hide();legal_form.slideDown('normal');});}
else
{if(anketa.form_source['private']=='new')
$('.private .not_save',anketa.target).show();else
$('.private .not_save',anketa.target).hide();if(anketa.form_source['legal']=='new')
$('.legal .not_save',anketa.target).show();else
$('.legal .not_save',anketa.target).hide();}
return false;},save_form:function(person_type,save_fields)
{var source=anketa.form_source[person_type];if(source=='saved')
return;save_fields.each(function(i,field)
{anketa.form_tmp[person_type][source][field.name]=field.value;});},checked_edit_form:function(e)
{e=e||event;var target=e.target||e.srcElement;var person_form=$(target).closest('.private, .legal');if(person_form.hasClass('private'))
var person_type='private';else
var person_type='legal';var diff_fields_container=$('.new_person',person_form);var diff_fields=$('select, input, textarea',diff_fields_container);$('.copy_addr',diff_fields_container).show();if(person_type=='private')
$('.private .not_save',anketa.target).hide();else
$('.legal .not_save',anketa.target).hide();diff_fields_container.removeClass('disabled');anketa.save_form(person_type,diff_fields);diff_fields.each(function(i,field)
{$(field).removeAttr('disabled');var new_val=anketa.form_tmp[person_type]['edit'][field.name];$(field).val(new_val||'');});anketa.form_source[person_type]='edit';return true;},checked_new_form:function(e)
{e=e||event;var target=e.target||e.srcElement;var person_form=$(target).closest('.private, .legal');if(person_form.hasClass('private'))
var person_type='private';else
var person_type='legal';var diff_fields_container=$('.new_person',person_form);var diff_fields=$('select, input, textarea',diff_fields_container);$('.copy_addr',diff_fields_container).show();if(person_type=='private')
$('.private .not_save',anketa.target).show();else
$('.legal .not_save',anketa.target).show();diff_fields_container.removeClass('disabled');anketa.save_form(person_type,diff_fields);diff_fields.each(function(i,field)
{$(field).removeAttr('disabled');var new_val=anketa.form_tmp[person_type]['new'][field.name];$(field).val(new_val||'');});anketa.form_source[person_type]='new';return true;},checked_saved_form:function(e)
{e=e||event;var target=e.target||e.srcElement;var select=$('select',$(target).closest('li'));var person_id=select.val();var person_form=$(target).closest('.private, .legal');if(person_form.hasClass('private'))
{var person=anketa.private_persons[person_id];var person_type='private';}
else if(person_form.hasClass('legal'))
{var person=anketa.legal_persons[person_id];var person_type='legal';}
else
return false;var diff_fields_container=$('.new_person',person_form);var diff_fields=$('select, input, textarea',diff_fields_container);$('.copy_addr',diff_fields_container).hide();if(person_type=='private')
$('.private .not_save',anketa.target).hide();else
$('.legal .not_save',anketa.target).hide();diff_fields_container.addClass('disabled');diff_fields.attr('disabled','disabled');anketa.save_form(person_type,diff_fields);diff_fields.each(function(i,field)
{var name=field.name
name=name.replace(/^(private_|legal_)/i,'');if((person&&person[name])||person_type=='legal')
field.value=person[name];else if(person_type=='private'&&field.type!='select-one'&&field.type!='select-multiple')
field.value='xxx';else
field.value='';});anketa.form_source[person_type]='saved';return true;},select_saved_form:function(e)
{e=e||event;var target=e.target||e.srcElement;if(target.value=='')
return false;if(!anketa.checked_saved_form(e))
return false;$('input:radio',$(target).closest('li')).attr('checked','checked');},copy_addr:function(e)
{e=e||event;var target=e.target||e.srcElement;var cur_addr=$(target).closest('.legal_address');var not_empty=0;$('select, input, textarea',cur_addr).each(function(i,field)
{if($.trim(field.value))
{not_empty=1;return false;}});if(not_empty&&!confirm('Заменить введённые данные?'))
return false;var form=$(target).closest('form').get(0);$('select, input, textarea',cur_addr).each(function(i,field)
{var donor_name=field.name.replace('legal_address','real_address');field.value=form[donor_name].value;$(field).change().blur();});return false;}};

$.provide('shopMf.ware').RegionSelect=function(regionSelect,cityElement)
{regionSelect=$(regionSelect);cityElement=$(cityElement);if(!regionSelect.length||!cityElement.length)
return;function doSelectRegion()
{var selectedIndex=regionSelect.get(0).selectedIndex;if(selectedIndex<0)
selectedIndex=0;var optionElement=regionSelect.get(0).options[selectedIndex];var regionName=optionElement.text;var cityInput=$('input',cityElement);if(optionElement.getAttribute('data-withoutCity'))
{cityElement.addClass('field_disabled');cityInput.attr('disabled','disabled');cityInput.val(regionName);}
else
{if(cityElement.hasClass('field_disabled'))
cityInput.val('');cityElement.removeClass('field_disabled');cityInput.removeAttr('disabled');}
cityInput.blur();}
regionSelect.change(function(){doSelectRegion();});doSelectRegion();};

