function cont_mkEl(){
    var div=$(menu[menu.n].typ);
    div.n=menu.n;
    $('cont').wrap.els.push(div);
    menu_fillEl();
}

function cont_fillEl(){
    var typ=menu[menu.n-1].typ;
	var wrap=$(typ).getElement('.hd .wrap');
	wrap.els=new Array();
	var wrap2=$(typ).getElement('.bd .wrap');
	wrap2.els=new Array();
	wrap2.els=wrap2.getElements('.im');
	menu[menu.n-1].els.each(function(item,n){
	  wrap.els=wrap.getElements('.tit');
	});
	cont_iniNav(wrap,menu[menu.n-1],130,0);
	cont_iniNav(wrap2,menu[menu.n-1],340,1);
	var details=$(typ).getElement('.info h3');
	if(details){
	    details.setStyle('cursor','pointer');
	    details.ob=details.getNext('div');
	    details.addEvent('click',function(){
		this.ob.setStyle('display',((this.ob.getStyle('display')=='none')? 'inline':'none'));
	    });
	}
	if(typ=='shop'){
	    iniShop(menu[menu.n-1].els[0].data.prod,menu[menu.n-1].els[0].data.cart,menu[menu.n-1].lbs);
	}else if(typ=='about'){
		iniLogin(menu[menu.n-1].els);
	}
	_ld();
}



function cont_fillInfo(pr,ob){
    var data=ob.data;
    var d=$(pr.typ).getElement('.details');
    if(d){
	d.empty();
	$(pr.typ).getElement('.info').setStyle('display','inline');
	switch(pr.typ){
	    case 'prod':
		d.setStyle('display','none');
		var h5=new Element('h5',{'class':'l'});
		var h4=new Element('h4',{'class':'l'});
		pr.lbs.each(function(item){
		var lb=item.split(':');
		if(ob.data[lb[1]]){
		    var div=new Element('div',{'class':'rw l'});
		    h5.set('text',lb[0].toUpperCase());
		    h4.set('html',ob.data[lb[1]]);
		    div.adopt(h5.clone(),h4.clone());
		    d.grab(div);
		}
	    });
		//$(pr.typ).getElement('.info').setStyle('display','inline');
	    break;
	    case 'proj':
	    case 'about':
		var h4=new Element('h4',{'class':'l'});
		var p=new Element('p',{'class':'l'});
		if(ob.data.typ=='a_proj'){
		    var n=$(pr.typ).getElements('.im')[pr.act].getElement('.wrap')._n;
		    var tit=ob.data.sub[n].tit;
		    var txt=ob.data.sub[n].txt;
		    
		}else if(pr.typ=='proj'){
		    var tit=ob.data.tit;
		    var txt=ob.data.txt;
		}else{
		    $(pr.typ).getElement('.info').setStyle('display','none');
		    var tit='';
		    var txt='';
		}
		h4.set('text',tit.toUpperCase());
		p.set('html',txt);
		d.adopt(h4,p);
	    break;    
	}
    }
}


function cont_iniNav(ob,pr,dis,sw){
    ob.act=0;
    ob.move=function(dir,n){
	this._dir=dir;
	if(dir=='down'){
	    this.els[n].setStyles({'top':dis+'px','display':'inline'});
	    this.fx.start('top',-dis+'px');
	}else if(dir=='up'){
	    this.els[this.act].setStyles({'top':dis+'px','z-index':'0'});
	    this.els[n].setStyles({'z-index':'100','display':'inline'});
	    this.setStyle('top',-dis+'px');
	    this.fx.start('top','0px');
	}
    }
    ob.jump=function(n){
	if(n!=this.act){  
	this._dir=((n<this.act)? 'jUp' : 'jDown');
	if(this._dir=='jDown'){
	    for(var i=this.act; i<n; i++){
		this.els[i+1].setStyles({'top':(dis*((i+1)-this.act))+'px','display':'inline'});
	    }
	    this.fx.start('top',-((n-this.act)*dis)+'px');
	}else if(this._dir=='jUp'){
	    for(var i=this.act; i>n; i--){
		this.els[i-1].setStyles({'top':(dis*((i-1)-this.act))+'px','display':'inline'});
	    }
	    this.fx.start('top',((this.act-n)*dis)+'px');
	}
	}
    }
    
    ob._reset=function(n){  
	this.els[this.act].setStyles({'top':'0px','z-index':'0','display':'none'});
	this.act=n;
	this.els[this.act].setStyles({'top':'0px','z-index':'100','display':'inline'});
    }
    ob.fx=new Fx.Tween(ob,{'duration':750,'onComplete':function(item){
	switch(item._dir){
	    case 'down':
		item.els[item.act].setStyles({'z-index':'0','display':'none'});
		item.els[pr.act].setStyles({'top':'0px','z-index':'100'});
		item.setStyle('top','0px');
	    break;
	    case 'up':
		item.els[item.act].setStyles({'top':'0px','display':'none'});
	    break;	
	    case 'jDown':
	    case 'jUp':
		//item.els[item.act].setStyles({'z-index':'0','display':'none'});
		//item.els[pr.act].setStyles({'z-index':'100','display':'inline'});
		item.els.each(function(el,n){
		    el.setStyles({'top':'0px','display':((n==pr.act)? 'inline' :'none')});
		});
		item.setStyle('top','0px');
	    break;
		
	}
	item.act=pr.act;
	//_auto.ini();
    }});
    ob.fx.set('top','0px');
    if (sw) {
		ob.els.each(function(item, n){
			cont_iniNavLeftRight(ob, pr, item, n);
		});
	}
}

function cont_iniNavLeftRight(ob,pr,item,n){
	//ob.els.each(function(item,n){
	    var wrap=item.getElement('.wrap');
	    if(wrap){
		wrap.act=0;
		wrap._n=0;
		wrap.els=wrap.getElements('.m');
		wrap.dis=parseInt(wrap.els[0].getStyle('width'))+((pr.typ == 'shop' || (pr.typ == 'about' && pr.els[n].data.typ!='a_proj'))? 0 : 15);
		wrap.move=function(dir){
			if (this.els.length > ((pr.typ == 'shop')? 3: ((pr.typ == 'news')? 2 : ((pr.typ == 'about' && pr.els[pr.act].data.typ != 'a_proj')? 4:1 )))) {
				this._dir = dir;
				if (dir == 'right') {
					this._n = ((this.act < this.els.length - 1) ? this.act + 1 : 0);
					if (pr.typ == 'shop' || (pr.typ == 'about' && pr.els[pr.act].data.typ != 'a_proj') ||pr.typ == 'news') {
						var cols = ((pr.typ == 'shop') ? 3 : ((pr.typ == 'news')? 2 : 4));
						var n = ((this.act < this.els.length - cols) ? this.act + cols : cols + this.act - (this.els.length));
						this.els[n].setStyles({
							'left': ((this.dis * cols)) + 'px'
						});
					}
					else {
						this.els[this._n].setStyles({
							'left': this.dis + 'px'
						});
					}
					this.fx.start('left', -this.dis + 'px');
				}
				else {
					this._n = ((this.act) ? this.act - 1 : this.els.length - 1);
					this.els[this._n].setStyle('z-index', '100');
					if (pr.typ == 'shop' || (pr.typ == 'about' && pr.els[pr.act].data.typ != 'a_proj') ||pr.typ == 'news') {
						var cols = ((pr.typ == 'shop') ? 3 : ((pr.typ == 'news')? 2 : 4));
						for (var i = this.act; i < this.act + cols; i++) {
							var n = ((i < this.els.length) ? i : i - (this.els.length));
							var p = i - (this.act);
							this.els[n].setStyles({
								'left': this.dis + (p * ((pr.typ == 'news')? 336:168)) + 'px',
								'z-index': '100'
							});
						}
					}
					else {
						this.els[this.act].setStyles({
							'left': this.dis + 'px',
							'z-index': '0'
						});
					}
					this.setStyle('left', -this.dis + 'px');
					this.fx.start('left', '0px');
				}
				if (pr.typ == 'about' && menu[menu.act].els[pr.act].data.typ == 'a_proj') {
					cont_fillInfo(menu[menu.act], menu[menu.act].els[menu[menu.act].act]);
				}
			}
		}
		wrap.fx=new Fx.Tween(wrap,{'onComplete':function(item){
		    if(item._dir=='right'){
				item.els[item.act].setStyles({'z-index': '0'}); 
				if (pr.typ == 'shop' || (pr.typ == 'about' && pr.els[pr.act].data.typ!='a_proj')||pr.typ == 'news') {
					var cols = ((pr.typ == 'shop') ? 3 : ((pr.typ == 'news')? 2 : 4));                                                                                                                                     
					for(var i=item.act+1; i<item.act+(cols+1); i++){
						var n = ((i < item.els.length ) ? i : i-(item.els.length));
						//alert(i+'::'+n);
						var p=i-(item.act+1);
						item.els[n].setStyles({'left': (p*((pr.typ == 'news')? 336:168))+'px','z-index': '100'});
					}
				}else{
					item.els[item._n].setStyles({'left': '0px','z-index': '100'});
				}
				item.setStyle('left', '0px');
		    }else{
				if (pr.typ == 'shop'|| (pr.typ == 'about' && pr.els[pr.act].data.typ!='a_proj')||pr.typ == 'news') {
					var cols = ((pr.typ == 'shop') ? 3 : ((pr.typ == 'news')? 2 : 4));     
					var n=((item.act+(cols-1) < item.els.length ) ? item.act+(cols-1) : item.act+(cols-1)-(item.els.length));
					item.els[n].setStyles({'left':'0','z-index':'0'});
				}else{
					item.els[item.act].setStyles({'left':'0'});
				}
				
		    }
		    item.act=item._n;
		}});
		 wrap.fx.set('left','0px');
	    }
	//});
	
}

function fillNews(item,n,div){
    var txt=new Element('div',{'class':'txt l'});
    for(var i=0; i<2; i++){
	var it=new Element('div',{'class':'it '+((i)? 'r' : 'l')});
	var txt2=new Element('div',{'class':'txt r'});
	if(item.data.news[i].tit){
	    var h3=new Element('h3',{'class':'l'});
	    h3.set('text',item.data.news[i].tit);
	    var sln=new Element('div',{'class':'sln l'});
	    txt2.adopt(h3,sln);
	}
	 if(item.data.news[i].txt){
	    var p=new Element('p',{'class':'l'});
	    p.set('text',item.data.news[i].txt);
	    txt2.grab(p);
	}
	it.adopt(txt.clone(),txt2);
	div.grab(it);
    }
}


function tLd(){
    var ob=menu[menu.act];
    if(ob.tLd < ob.els.length ){
	  ldTits(ob.els[ob.tLd].data.img,ob);
    }else{
	  if(ob.typ=='news'){
		cont_fillPh();
	  }else{
		 vLd_1st();
	  }
	  
    }
}

function ldTits(src,ob){
    var img=new Asset.image(path+'/media/head/'+src,{'onload':function(){
		var tit=$(ob.typ).getElement('.hd .wrap').getElements('.tit')[ob.tLd];
		$(tit).grab(img);
		//$(ob.typ).getElement('.hd .wrap').getElements('.tit')[ob.tLd].grab(img);
		ob.tLd++;
		tLd();
    }});
}

function vLd(){
    if(v_ld < menu.length){
	  var ob=menu[v_ld];
	  var item=menu[v_ld].els[ob.vLd];
	  var imgs=fillImgs(ob,item,0);
	  ldImg_v(ob,imgs,'v',item);
    }else{
	  v_ld='loaded';
	  vLd_1st();
    }
}

function vLd_1st(){
    var ob=menu[menu.act];
    if(ob.vLd<ob.els.length && ob.typ!='shop'){
	  var item=ob.els[ob.vLd];
	  if(ob.typ=='about' && item.data.typ!='a_proj'){
		ob.vLd++;
		vLd_1st();
	  }else{
		var imgs=fillImgs(ob,item,0);
		if(!item._ld)item._ld++;
		new ldOb(ob,imgs,'1st',item);
		//ldImg_v();
	  }
    }else{
	  cont_fillPh();
    }
}



function cont_fillPh(){
    var ob=menu[menu.act];
    var item=ob.els[ob.act];
    var phs=$(ob.typ).getElement('.bd .wrap').els[ob.act].getElements('.ph');
    if((ob.typ=='shop' && phs.length>1) || (ob.typ!='shop' && phs.length)){
	  var imgs=fillImgs(ob,item,item._ld);
	  if(imgs.length)new ldOb(ob,imgs,'h',item,phs);
	  //ldImg_v(ob,imgs,'h',item,phs);
    }else{
	  //var imgs=fillImgs(ob,item,0);
	 //if(imgs.length)
	 _auto.ini();
    }
}

function ldImg_v(ob,imgs,typ,item,ph){
    this.ob=ob;
    
    var _lds = new Asset.images(imgs, {
	  'onComplete': function(){
		var ims=$(ob.typ).getElement('.bd .wrap').getElements('.im');
		_lds.each(function(img,n){
		    if(typ=='h'){
			  var cl=((ph[n].hasClass('l'))? 'l' : ((ph[n].hasClass('r'))? 'r':'' ));
			  img.replaces(ph[n]);
			  if(cl)img.addClass(cl);
		    }else{
			  switch(ob.typ){
				case 'about':
				case 'news':
				case 'proj':
				  img.addClass(((n)?'r' : 'l'));
				case 'shop':
				case 'prod':
				  img.replaces(ims[((typ=='1st')? ob.vLd : _ini.n)].getElement('.ph'));
				break;    
			  }
		    }
		    if(typ=='h' || typ=='1st'){
			  switch(ob.typ){
				case 'about':
				    
				    if(item.data.typ=='a_proj' && item.data.sub[((typ=='1st')? 0 : item._ld)]){
					  var r=((typ=='1st')?  item.data.sub[0].imgs[n]: item.data.sub[item._ld].imgs[n]);
					  if(r.l_src){
						var src={'src':path+'/media/a_proj/'+r.l_src,'w':r.l_src_w,'h':r.l_src_h}
						setZoom(img,src);
					  }
				    }    
				break;
				case 'news':
				    var p;
				    var l=((typ=='1st')? 0 : item._ld);
				    for(var i=0; i<2; i++){
					  p=((i)? n-(item.data.news[(l*2)].imgs.length) : n);
					  if(item.data.news[(l*2)+i].imgs[p]){
						var r=item.data.news[(l*2)+i].imgs[p];
						if(r.l_src){
						    var src={'src':path+'/media/news/'+r.l_src,'w':r.l_src_w,'h':r.l_src_h};
						    setZoom(img,src);
						}
					  }
					
				    }
				break;
				case 'proj':
				    var r=((typ=='1st')?  item.data.imgs[(n%2)]: item.data.imgs[(item._ld*2)+(n%2)]);
				    if(r.l_src){
					  var src={'src':path+'/media/'+ob.typ+'/'+r.l_src,'w':r.l_src_w,'h':r.l_src_h}
					 setZoom(img,src);
				   }
				break;
				case 'prod':
				var r=((typ=='1st')?  item.data.imgs[0]: item.data.imgs[(item._ld)]);
				if(r.l_src){
				     var src={'src':path+'/media/'+ob.typ+'/'+r.l_src,'w':r.l_src_w,'h':r.l_src_h}
				    setZoom(img,src);
				}
				break;	
			  }
		    }
		    
		});
		switch(typ){
		    case '1st':
			  ob.vLd++;
			  vLd_1st();//item._ld++; ???
		    break;
		    case 'h':
			  item._ld++;
			  if(item==ob.els[ob.act]){
				cont_fillPh();
			  }
		    break;
		    case '0':
			 show1st(); 
		    break;	  
		}
	  }
    });
}

/*function cont_ldImg(im,typ,ob,ph,arr){
    var imgs=new Asset.images(arr,{
	'onComplete':function(){
	ob._ld++;
	imgs.each(function(item,n){
	    var cl=((ph[n].hasClass('l'))? 'l' : ((ph[n].hasClass('r'))? 'r':'' ));
	    item.replaces(ph[n]);
	    if(cl)item.addClass(cl);
	    item.setStyle('cursor','pointer');
	    item.addEvent('click',function(){
		var w=$('wrap');
		var ty=window.getSize().y;
		var y=w.getPosition().y;
		w.removeClass('center');
		w.setStyle('top',y+'px');
		w.slide.start('top',ty-151);
		w._dir='in';
	    });
	})
	if(ob==menu[menu.act].els[menu[menu.act].act])cont_fillPh(im,typ,ob);
    }});	      
}*/

    function setZoom(img,zoom){
	  img.zoom=zoom;
	  img.setStyle('cursor','pointer');
	  img.addEvent('click',function(){
		var tmp=this.zoom.src.split('/');
		tmp=tmp[tmp.length-1];
		if(String(window.location).indexOf('#')>-1){
			SWFAddress.setValue(String(window.location).split('#')[1]+'/'+tmp);
		}else{
			SWFAddress.setValue(tmp);
		}
		/*var w=$('wrap');
		var ty=window.getSize().y;
		var y=w.getPosition().y;
		w.removeClass('center');
		w.setStyle('top',y+'px');
		w.img=this.zoom;
		w.slide.start('top',ty-151);
		w._dir='in';*/
	  });
    }
	/*imgs.each(function(item,n){
	    
	    
	})*/
	  




function fillImgs(ob,item,n){
    imgs=[];
    switch(ob.typ){
		case 'news':
		    if(item.data.news){
			  for(var i=0; i<2; i++){
				if( item.data.news[(n*2)+i]){	
				    item.data.news[(n*2)+i].imgs.each(function(item){
					  imgs.push(path+'/media/news/'+String(item.src));
				    });
				}
			  }
		    }
		break;
		case 'shop':
		  if(item.data.typ=='shoponline'){
			for(var i=0; i<6; i++){
			  if(item.data.prod[(n*6)+i])imgs.push(path+'/media/s_prod/i_'+String(item.data.prod[(n*6)+i].s_prod[0].imgs[0].src));
			}
		  }
		break;
		case 'about':
		  switch(item.data.typ){
			case 'a_proj':
			  for(var i=0; i<2; i++){
				if(item.data.sub[n]){
				    if(item.data.sub[n].imgs[i])imgs.push(path+'/media/a_proj/'+String(item.data.sub[n].imgs[+i].src));
				}
			  } 
		  }
		break;	
		case 'proj':
		  for(var i=0; i<2; i++){
			imgs.push(path+'/media/proj/'+String(item.data.imgs[(n*2)+i].src));
		  }
		break;	
		case 'prod':
		  imgs.push(path+'/media/prod/'+String(item.data.imgs[n].src));
		break;
	  }
    return imgs;
}