var BrowserDetect = 
{
	init: function () 
	{
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) 
	{
		for (var i=0;i<data.length;i++)	
		{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) 
			{
				if (dataString.indexOf(data[i].subString) != -1)
				{
					return data[i].identity;
				}
			}
			else if (dataProp)
			{
				return data[i].identity;
			}
		}
	},
	searchVersion: function (dataString) 
	{
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1)
		{
			return;
		}
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: 
	[
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : 
	[
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};


function Cart()
{
	var drop = $('cart');
	$$('li div.item','li div.item1').each(function(item)
	{
		item.addEvent('mousedown', function(e) 
		{
			e = new Event(e).stop();
			
			/// ХАК ДЛЯ IE
			var size = this.getCoordinates();
			if(window.ie && BrowserDetect.version == 7) // Хак для IE7
			{
				size.left = size.left - 254; // Размер выявлен опытным путём и из-за этого могут быть глюки :) Но пока глюков нет, всё работает ровно :) Вообщем если что будет не так работать в IE7, то смотреть сюда %)
			}
			/// ХАК ДЛЯ IE
		
			var clone = this.clone().setStyles({'opacity': 0.7, 'position': 'absolute'}).setStyles(size).addEvent('emptydrop', function() 
			{
				this.remove();
				drop.removeEvents();
			}).inject($(document.body));
			

			drop.addEvents(
			{
				'drop': function() 
				{
					drop.removeEvents();
					clone.remove();
					AJAXsend(item.id,'add');
				}				
			});

			var drag = clone.makeDraggable(
			{
				droppables: [drop]
			});

			drag.start(e);
		});
	});
};

function Bigger(from_size,to_size,time)
{
	var arrays = new Array();
	var arraysa = new Array();
	var working = new Array();
	var sizes = new Array();
						
	$('menu').getElements('img').each(function(item,index)
	{
		item.setStyle('width',from_size);
		sizes[index] = item.getStyle('width');
		
		$$('#lhref' + (index+1),item.getParent().getParent().getParent()).each(function(item1,index1)
		{
			item1.addEvent('mouseenter',function() // когда задеваем мышкой
			{						
				working[index] = 'true';
				arraysa['lhref' + (index+1)] = $('lhref' + (index+1)).className;
				arraysa['ahref' + (index+1)] = $('lhref' + (index+1)).className;
				
				
				$('lhref' + (index+1)).className='selected';
				$('ahref' + (index+1)).className='selected';
				$('ahref' + (index+1)).addClass('active');
									
				arrays[index] = new Fx.Styles(item,{duration:time, wait:false}).start({'width':to_size, 'marginLeft': [-38, -48], 'top': [-40, -60]}).addEvent('onComplete',function()
				{
					item.src = "/design/standart/images/icons/icons" + (index+1) + "-big.png";
					working[index] = 'false';
				});
			});
							
			item1.addEvent('mouseleave',function()
			{						
				$('lhref' + (index+1)).className=arraysa['lhref' + (index+1)];
				$('ahref' + (index+1)).className='';
									
				if(working[index] == 'true')
				{
					arrays[index].chain(function()
					{						
						new Fx.Styles(item,{duration:time, wait:false}).start({'width':sizes[index], 'marginLeft': [-48, -38], 'top': [-60, -40]}).addEvent('onComplete',function()
						{
							item.src = "/design/standart/images/icons/icons" + (index+1) + "-small.png";
						});
					});
				}
				else
				{
					new Fx.Styles(item,{duration:time, wait:false}).start({'width':sizes[index], 'marginLeft': [-48, -38], 'top': [-60, -40]}).addEvent('onComplete',function()
					{
						item.src = "/design/standart/images/icons/icons" + (index+1) + "-small.png";
					});
				}
			});	
		});
	});
}
					
function CSSRewrite() // Аналог css.js только кое что из того впихнуто ручками в код %)
{
	$$("div.header").each(function(object,number)
	{
		object.innerHTML = "<div class='phone'><!-- --></div>" + object.innerHTML;
	});
						
	$$("div.instantBasket div.withTurtle").each(function(object,number)
	{
		object.innerHTML = "<div class='turtle' id='turtle'><!-- --></div>" + object.innerHTML;
	});
						
	$$("div.footer").each(function(object,number)
	{
		object.innerHTML = "<div class='img'><!-- --></div>" + object.innerHTML;
	});
						
	$$("div.header ul.menu").each(function(object,number)
	{
		object.outerHTML = "<div class='menuWrap'>" + object.outerHTML + "</div>";
	});
						
	$$("div.searchBlock input[type=image]").each(function(object,number)
	{
		object.addClass('b');
	});
						
	$$("div.searchBlock input[type=text]").each(function(object,number)
	{
		object.addClass('inp');
	});
						
	$$("div.loginBlock input[type=text]").each(function(object,number)
	{
		object.addClass('i');
	});
						
	$$("div.loginBlock input[type=password]").each(function(object,number)
	{
		object.addClass('i');
	});
						
	$$("div.loginBlock input[type=image]").each(function(object,number)
	{
		object.addClass('b');
	});
						
	$$("div.loginBlock li").each(function(object,number)
	{
		if(number == (($$("div.loginBlock li").length)-1))
		{
			object.addClass('last');
		}
	});
						
	$$("table.tableT01 tr").each(function(object,number) // Оч. крутая штука для выставления чётным TR в таблице определенного класса %)
	{
		if(0 == number%2) // Если TR четная %)
		{
			object.getElements('td').each(function(object1,number1)
			{
				object1.addClass("odd");
			});
		};					
	});
}
					
window.addEvent('domready', function()
{
	CSSRewrite(); // Для CSS вместо css.js :)
	
	Bigger(77,100,100); // Первый парамерт - начальный размер, второй параметр - конечный размер до которого увеличивать, третий - время за которое надо увеличить или уменьшить %)
						
	BrowserDetect.init(); // Определяем браузер, нужно для таскалки в корзину (в IE7 неправильно определяются координаты элемента)
						
	//Cart(); // Собственно запускаем таскалки %)
});


	window.addEvent('domready', function() {
		//var myVerticalSlide = new Fx.Slide('hidden_tech_items');
		//myVerticalSlide.hide();
		var v_slide_flag = true;
    if ($('vertical_slide'))
    {
    $('vertical_slide').addEvent('click', function(e) {
			e.stop();
			myVerticalSlide.toggle();
			myVerticalSlide.addEvent('onComplete', function() {
				if(v_slide_flag) {
					$('vertical_slide').set('html', 'Больше параметров');
					$('vertical_slide').className = 'more_param_btm';
				} else {
					$('vertical_slide').set('html', 'Меньше параметров');
					$('vertical_slide').className = 'more_param_top';
				}
				
			});	
			v_slide_flag = !v_slide_flag;
		});  }
	
	/*
		function showhide(item)
		{
      		if($('hidden_tech_items').getStyle('display')=='none')
      		{
        		$('hidden_tech_items').setStyle('display','block');
        		item.innerHTML="Меньше параметров";
      		}
      		else
      		{
        		$('hidden_tech_items').setStyle('display','none');
        		item.innerHTML="Больше параметров";
      		}
   		}
		*/
	});

		window.addEvent('domready', function() {
	      if ($('select_all') && $$(".vendors label") && $$(".vendors label.checked")) {
		  var flag = true;
		  //alert($$(".vendors label").length + " - " + $$(".vendors label.checked").length);
		  window.addEvent('load', function() {
			  if($$(".vendors label").length == $$(".vendors label.checked").length) {
				$('select_all').set('html', 'Снять выделение');
				flag = false;
			  } else {
				$('select_all').set('html', 'Выделить все');
				flag = true;
			  }
					$('select_all').addEvent('click', function(e){
						if(flag) {
							this.set('html', 'Снять выделение');
							FancyForm.all();
						} else {
							this.set('html', 'Выделить все');
							FancyForm.none();
						}
						flag = !flag;
					});
			}
			)};
		});

var tabs = [
 [ 'tab1','tab2','tab3','tab4' ], // это названия табов для первой хрени
 [ 'tab5','tab6','tab7','tab8' ] // это названия табов для второй хрени
];
function change_tab( tab_set,tab_id )
{
    var links = $( 'tabs_' + tab_set ).getElements( 'a' );
    $$( '#tabs_' + tab_set + ' a' ).removeClass( 'current' );
    for( var i=0;i<tabs[ tab_set ].length;i++ )
    {
        $( tabs[ tab_set ][ i ] ).addClass( 'unviz' );
        if( i==tab_id )
        {
            $( tabs[ tab_set ][ i ] ).removeClass( 'unviz' );
            $( links[ i ] ).addClass( 'current' );
        }
    }
    return false;
}

