if (document.all&&window.ActiveXObject)var IE=true;else if (window.XMLHttpRequest) var MOZ=true;

function copyFieldset(id){
	var fset=byId(id);var uls=byClass('set','UL',fset);
	var ul=uls[0];if(!ul)return;var copyB=_el('INPUT',{'className':'add','type':'button','value':'Add more'});before(fset,ul,copyB);
	var self = this;

	this.remove = function(el){
		var delB = _el('INPUT',{'className':'del','type':'button','value':'Remove'});add(delB,el);
		delB.onclick = function(){
			var tags = ['input','select'];
			del(el);
			var uls = byClass('set','UL',byId(id));
			for(var i=0;i<uls.length;i++){
				for(var k=0;k<tags.length;k++){
					var obs=byTag(tags[k],uls[i]);for(var j=0;j<obs.length;j++)self.reorder(obs[j],i);
				}
			}
		}
	}

	for(var i=1;i<uls.length;i++)self.remove(uls[i]);

	this.reorder = function(o,i){
		var tag = o.tagName;	
		if((tag=='select'&&o.multiple)||(tag=='input'&&o.type=='checkbox')){
			o.name = o.name.replace(/\[([0-9])\]\[\]/,"["+i+"][]");		
		}
		else o.name = o.name.replace(/\[([0-9])\]/,"["+i+"]");	
		var label = byTag('LABEL',o.parentNode)[0];
		var id = o.value?(i+'_'+o.value):o.name;
		o.id = id;attr(label,'for',id);
	};

	copyB.onclick = function(){
		var x = byClass('set','UL',byId(id)).length; 
		var n = ul.cloneNode(true);add(n,fset);var tags = ['input','select'];
    	for(var i=0;i<tags.length;i++){
			var obs=byTag(tags[i],n);
			for(var j=0;j<obs.length;j++){ 	
				if(obs[j].type=='checkbox')obs[j].checked = false;
				else if(tags[i]=='select')obs[j].selectedIndex=-1;
				else obs[j].value='';
				self.reorder(obs[j],x);	
			}
		}
		var spans = byClass('ctrlError','SPAN',n);for(var i=0;i<spans.length;i++)del(spans[i]);
		self.remove(n);			
	};

}


function filterFields(o, type){
	var self=this;self.options = [];

	this.price=function(){
		var price = '0.00';
		var el = document.getElementById('price');
		var sel = self.next.selectedIndex;
		if(sel>=0){
			var n = self.next.options[sel].value;
			var k=0;for(var i=0;i<self.options.length;i++){
				if(n==self.options[i][0]){ 
					var price = self.options[i][3];	
					break;	
				}
			}
		}
		el.value=price;
	};

	this.filter=function(){
		var value=o.options[o.selectedIndex].text;self.next.selectedIndex=-1;	
		var total = next.options.length;for(var i=total-1;i>=0;i--)next.remove(i);var selected=false;next.disabled = 'disabled';
		var k=0;for(var i=0;i<self.options.length;i++){
			if(value==self.options[i][1]){
				if(self.options[i][0]==self.selected)var index=k;
				self.next.disabled='';var opt=_el('OPTION',{'text':self.options[i][2],'value':self.options[i][0]});
				if(IE)self.next.add(opt,k);else add(opt,self.next);
				k++;
			}
		}	
		if(index)self.next.selectedIndex=index;
		if(type=='products'){ self.price(); }
	};
	if(o.type=='select-one'){	
		o.onchange = self.filter;var next = byTag('SELECT',o.parentNode.nextSibling)[0];next.onchange=self.price;var total = next.options.length;
		self.selected=next.options[next.selectedIndex].value;
		for(var i=total-1;i>=0;i--){
			var val=next.options[i].text;var vals=val.toString().split(',');
			if(type=='products'){ self.options[i]=[next.options[i].value,vals[0],vals[1],vals[2]]; }
			else{ self.options[i]=[next.options[i].value,vals[0],vals[1]]; }
			next.remove(i);
		}
		self.next=next;self.filter();
	}
}

function byId(id){return document.getElementById(id);}
function byTag(tag,o){if(o)return o.getElementsByTagName(tag);}
function byClass(cls,tag,where){var res=[];var els=byTag(tag,where);if(els)for(var i=0;i<els.length;i++){var o=els[i];var arr=o.className.split(' ');for (var k=0;k<arr.length;k++)if(arr[k]==cls)res.push(o);}return res;}
function _el(tag,set){var el=document.createElement(tag);for(i in set){if(typeof set[i]=="object")for(k in set[i])el[i][k]=set[i][k];else el[i]=set[i];}return el;}
function attr(o,n,v){if(IE&&n=='class'&&!o.getAttribute('class'))n='className';if(o.nodeType==1){if(v===undefined)return o.getAttribute(n);else {if(v!='')return o.setAttribute(n,v);else o.removeAttribute(n);}}}
function add(o,where){where.appendChild(o);}
function del(o){var d=(typeof(o)=="string")?byId(o):o;if(d)d.parentNode.removeChild(d);return null;}
function byClass(cls,tag,where){var res=[];var els=byTag(tag,where);for(var i=0;i<els.length;i++){var o=els[i];var arr=o.className.split(' ');
for (var k=0;k<arr.length;k++)if(arr[k]==cls)res.push(o);}return res;}
function before(where,el,o){where.insertBefore(o,el);}


function checkBoxes(o){var check = document.getElementsByName("ids[]");for (var i=0; i<check.length; i++)check[i].checked = o.checked;}
function fieldShow(id){document.getElementById(id).parentNode.parentNode.parentNode.parentNode.nextSibling.style.display='';}
function fieldHide(id){document.getElementById(id).parentNode.parentNode.parentNode.parentNode.nextSibling.style.display='none';}

function slideSwitch(id) {
    var $active = $(id + ' li.active');
    if ( $active.length == 0 ) $active = $(id + ' li:last');
    var $next =  $active.next().length ? $active.next()
        : $(id + ' li:first');
    $active.addClass('last-active');
    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}

function pause(ms){
	var date = new Date();
	var curDate = null;
	do { curDate = new Date(); }
	while(curDate-date < ms);
}

function slideBlock(block){
	if($('#' + block)){ $('#' + block).slideToggle(); }
}

$(document).ready(function() {
    $('.mainNav li').hover( 
        function () { 
			$('ul', this).stop(true, true).css('display', 'none'); 
            $('ul', this).stop(true, true).slideDown('normal'); 
        },  
        function () { 
			$('ul', this).stop(true, true).css('display', 'block'); 
            $('ul', this).stop(true, true).slideUp('normal', function(){ $('ul', this).css('display', 'none'); });  
        } 
    ); 

	if(jQuery().popupWindow)$('.popup').popupWindow({height:500,width:800,top:50,left:50}); 
	if(jQuery().yoxview)$('.yoxview').yoxview({skin:'top_menu'});
    setInterval( "slideSwitch('#slideshow')", 5000 );
	setInterval( "slideSwitch('#offersSwitch')", 5000 );
});
