/* Popup inner window */
/* Ver.0.7*/

var mochi_ani = null;
var f_styles;
var deletePop = function (){return false};

function getFloatStyles(){
	var cat = getNodeAttribute(document.body,'id');
	var stl = {};
	stl.name = cat;
	switch(cat){
	case 'styling':
		stl.height = 540;
		stl.width = 860;
		stl.shadow = '../images/float_styling.png';
		break;
	case 'product':
		stl.height = 725;
		stl.width = 860;
		stl.shadow = '../images/float_product.png';
		break;
	}
	
	return stl;
}

function createFloatElements(_product_name){
	f_styles = getFloatStyles();
	
	var float_wrp = DIV({'id':'float-wrp','style':'position:absolute;top:-800px;left:-800px;width:880px;height:725px;'});
	var float_div = DIV( {'id':'float','style':'padding:0'} );
		float_div.appendChild( IMG({
								'id':'float-base-img',
								'src':f_styles.shadow,
								'width':f_styles.width+60,
								'height':f_styles.height+70,
								'class':"scaling",
								'style':'position:absolute;top:-20px;left:-20px;visibility:hidden;behavior:url(../js/iepngfix.htc)'
								})
						   );
		float_div.appendChild( IMG({'src':'../images/space_'+f_styles.name+'2.gif',
									'width':f_styles.width,
									'height':f_styles.height,
									'class':'scaling',
									'name':'white-base',
									'id':'white-base',
									'style':'position:absolute;top:15px;left:15px;'
									}) 
							  );
		
		
		var float_close = DIV({'id':'float-close','class':"scaling",'style':'position:absolute;width:40px;width:40px;top:0px;left:0px'});
			var close_a = A({'name':'close_btn',
							'href':"javascript:hiddenPop()",
							'onmouseout':"MM_swapImgRestore()",
							'onmouseover':"MM_swapImage('btn_close','','../images/btn_float_close_f2.png',1)"
							});
				close_a.appendChild( IMG({'src':"../images/btn_float_close.png",
										 'width':40,
										 'height':40,
										 'name':"btn_close",
										 'id':"btn_close",
										 'alt':"閉じる",
										 'class':"scaling",
										 'style':'position:absolute;top:0;left:0'
										 })
									);
			float_close.appendChild(close_a);
		float_div.appendChild(float_close);
		
		
		
	
		var conts_wrp = DIV({ 'id':"float-conts-wrp",'class':"scaling",'style':'margin-top:0px;margin-left:0px;width:840px;height:550px;/*border:1px solid #f00*/'});
		
			var conts = DIV({ 'id':"float-conts",'class':"scaling",'style':'position:absolute;top:60px;left:65px;width:auto;height:auto;border:1px solid #fff'});
			conts_wrp.appendChild(conts);
			
			//Product Only
				if(f_styles.name == 'product'){
					//ボーダー
					var underline = DIV({'class':'underline scaling',
										'id':'item-horizon',
										'style':'position:absolute;width:760px;height:5px;top:550px;left:65px'
										});
					underline.appendChild(HR());
					//その他のリスト
					var otheritem = DIV({'class':'scaling',
										'id':'product-other-list',
										'style':'position:absolute;width:750px;height:100px;top:585px;left:65px'
										});
					conts_wrp.appendChild(otheritem);
				}
			
			
		
		float_div.appendChild(conts_wrp);
	float_wrp.appendChild(float_div);
	return float_wrp;
}

/* Hide Float Window */
function hiddenPop(){
	
	mochi_ani.cancel();
	
	var op = $('float-wrp').style.opacity;
	//alert(op);
	if(op > 0.05){
		if(BrowserDetect.browser == "Explorer"){
			$('float-base-img').style.visibility = "hidden";
		}
		setDisplayForElement('none','float-close');
		var node = document.getElementById('float-wrp');
		var inodes = getElementsByTagAndClassName('img','scaling', node);
		inodes = inodes.concat(getElementsByTagAndClassName('div','scaling', node));
		var p = [];
		p.push(Opacity('float-wrp',{from:1.0,to:0.0,duration:0.5}));
		
		Parallel(p, {
				 		afterFinish:function(){
												removeElement($('float-wrp'));
												}
					});
	}
}
/* Show Float Window */
function showPop(_product_name){
	
	if(mochi_ani){
		mochi_ani.cancel();
	}
	
	var float_wrp = DIV({'id':'hidden-div','style':'position:absolute;top:0px;left:0px;width:100%;height:100%'});
	if($('float-wrp')){
		removeElement($('float-wrp'));
	}
	
	var child = createFloatElements(_product_name);
	document.body.appendChild(child);
	
	$('float-wrp').style.visibility = "visible";
	$('float-wrp').style.opacity = 0.01;
	$('float-wrp').style.filter = "alpha(opacity=0)";
	
	var node = $('float-wrp');
	var inodes = getElementsByTagAndClassName('img','scaling', node);
	inodes = inodes.concat(getElementsByTagAndClassName('div','scaling', node));
		
	var p = [];
	
	for(var i=0; i<inodes.length;i++){
		p.push(Scale(inodes[i], 10, {scaleFromCenter:true,duration:0.1}));
			
	}
	
	p.push(Scale('float-wrp', 10,{scaleFromCenter: true,duration:0.1}));
	p.push(Opacity('float-wrp',{from:1,to:0.1,duration:0.1}));
	mochi_ani = Parallel(p,{afterFinish:function(){showPop2(_product_name)}});
	
}
function showPop2(_product_name){
	var point_from = MochiKit.Position.cumulativeOffset($("a-"+_product_name));
	
	if(BrowserDetect.browser != "Explorer"){
		$('float-base-img').style.visibility = "visible";
		
		var set_posi =  MochiKit.Position.realOffset('float-wrp');
		point_from.x = point_from.x-380;
		point_from.y = point_from.y-250;
	}
	var op = $('float-wrp').style.opacity;
	if(op <= 0.5){
		
		var ani_duration = 0.5;
		var ani_fps = 30;
		
		var point_to = {};
		
		var v_p = getViewportPosition();
		var v_d = getViewportDimensions();
		var f_s = getFloatStyles();
		//横
		if(f_s.width >= v_d.w){
			point_to.x = v_p.x;
		}else{
			point_to.x = ((v_d.w-f_s.width)/2)+v_p.x;
		}
		
		//縦
		if(f_s.height >= v_d.h){
			point_to.y = v_p.y;
		}else{
			point_to.y = ((v_d.h-f_s.height)/2)+v_p.y;
		}
		point_to.duration = ani_duration;
		point_to.mode = 'absolute';
		point_to.fps = ani_fps;
		
		
		$('float-wrp').style.left = point_from.x+'px';
		$('float-wrp').style.top = point_from.y+'px';
		
		
		
		var node = $('float-wrp');
		var inodes = getElementsByTagAndClassName('img','scaling', node);
		inodes = inodes.concat(getElementsByTagAndClassName('div','scaling', node));
		var p = [];
		for(var i=0; i<inodes.length;i++){
			p.push(Scale(inodes[i], 1000, {scaleFromCenter:true,duration:ani_duration,fps:ani_fps}));
			
		}
		p.push(Scale('float-wrp', 1000,{scaleFromCenter:true,duration:ani_duration,fps:ani_fps}));
		p.push(Opacity('float-wrp',{from:0.0,to:1,duration:1.5,fps:ani_fps}));
		p.push(Move('float-wrp',point_to));
		mochi_ani = Parallel(p, {		
						beforeUpdate:function(){	if(BrowserDetect.browser == "Explorer"){
														$('float-close').style.top = '2px';
														$('float-close').style.left = '0px';
														$('btn_close').style.behavior="url(../js/iepngfix.htc)";
													}
													
													if(BrowserDetect.browser != "Explorer"){
														var fw = MochiKit.Position.positionedOffset($('white-base'));
														$('float-close').style.top = fw.y-15+'px';
														$('float-close').style.left = fw.x-14+'px';
													}
												},
												
						afterUpdate:function(){
													if(BrowserDetect.browser != "Explorer"){
														var fw = MochiKit.Position.positionedOffset($('white-base'));
														$('float-close').style.top = fw.y-15+'px';
														$('float-close').style.left = fw.x-14+'px';
													}
												var f_styles = getFloatStyles();
												},
						beforeFinish:function(){
												$('float-base-img').style.visibility = "visible";
												$('float-base-img').style.behavior="url(../js/iepngfix.htc)";
												//コンテンツボックス
												//コンテンツを読み込む場所
												var product_detail = DIV({'id':'product-detail-box',
																		 'style':'position:absolute;left:510px;width:255px;height:430px;font-size: 21px;'
																		 });
												
												var tx = document.createTextNode(' ');
												product_detail.appendChild(tx);
												$('float-conts').appendChild(product_detail);
												
												
												var contact_item = DIV({ 'id':"float-contact-item",
																		 'style':'position:absolute;top:430px;left:510px;width:255px;height:20px;font-size:14px;'
																		});
													var contact_a = A({'name':'contact-item-btn',
																	  'href':"javascript:void(window.open('https://www.baycrews.co.jp/form/js-furniture/index.php?item="+_product_name+"','','width=570,height=700'))",
																	  'onmouseout':"MM_swapImgRestore()",
																	  'onmouseover':"MM_swapImage('btn-contact-item','','../images/btn_contact_item_f2.gif',1)",
																	  'id':'contact_anchor'
																	  });
													
														contact_a.appendChild( IMG({'src':"../images/btn_contact_item.gif",
																				   'alt':"この商品を問い合わせる",
																				   'name':"btn_contact_item",
																				   'width':250,
																				   'height':20,
																				   'id':"btn-contact-item"
																				   }) 
																			  );
														contact_item.appendChild(contact_a);
												$('float-conts').appendChild(contact_item);
												
												var fw = MochiKit.Position.positionedOffset($('white-base'));
												if(BrowserDetect.browser == "Explorer"){
													$('float-close').style.top = '2px';
													$('float-close').style.left = '0px';
													$('btn_close').style.behavior="url(../js/iepngfix.htc)";
													
													$('float-base-img').style.behavior="url(../js/iepngfix.htc)";
												}else{
													$('float-close').style.top = fw.y-15+'px';
													$('float-close').style.left = fw.x-14+'px';
												}
												
												
												
												},
						afterFinish:function(){
												
												//メイン画像
												var main_photo = DIV({'class':'main-photo','id':'product-photo-wrp','style':'display:none;position:absolute;width:450px;height:450px;' });
													main_photo.appendChild( IMG({'src':'../product/photos/'+_product_name+'.jpg',
																			'width':450,
																			'height':450,
																			'class':'scaling',
																			'name':'product-photo',
																			'id':'product-photo',
																			'style':'position:absolute'
																			}) 
																	   );
												$('float-conts').appendChild(main_photo);
												var f_styles = getFloatStyles();
												$('product-detail-box').style.fontSize="12px";
												
												var p_req = doSimpleXMLHttpRequest('../product/products/'+_product_name+'.xml');
												p_req.addCallback(pdetailFromXMLRequest);
												
												setDisplayForElement('block','product-detail');
												
												blindDown('product-photo-wrp');
												
												var tt = escapeHTML($('float-wrp').innerHTML);
												
												/* Other Products --- Product Only */
												
												if(f_styles.name=='product'){
													var copy_list = [];
													copy_list = copy_list.concat(serch_data_list);
													var len = copy_list.length < 7 ? copy_list.length-1 : 7;
													if(len >0){
														for(var i=0; i < len; i++){
															if(!copy_list.length){
																break;
															}
															var rnd = Math.floor(Math.random()*copy_list.length)
															var rnd_item = copy_list.splice(rnd,1);
															if(rnd_item == _product_name){len++; continue};
															$('product-other-list').style.width  ='800px';
															var pa = A({'href':"javascript:changeProduct('"+rnd_item+"')"});
															pa.appendChild(IMG({
																				'src':"photos/thumb/"+rnd_item +".jpg",
																				'alt':rnd_item,
																				'width':100,
																				'height':100,
																				'class':'items'
																				}) );
															$('product-other-list').appendChild(pa);
															
														}
													}
													
													setDisplayForElement('none','product-other-list');
													blindDown('product-other-list',{delay:0.8});
													
												}
											  }
											  
					});
	 }
}

function pdetailFromXMLRequest(req){
	var xml = req.responseXML;
	var node = xml.lastChild;
	$('product-detail-box').innerHTML = toHTML(node);
	setDisplayForElement('none','product-detail-box');
	blindDown('product-detail-box');
}

function changeProduct(_pid){
	
	$('product-photo').src = 'photos/'+_pid+'.jpg';
	$('contact_anchor').href = "javascript:void(window.open('https://www.baycrews.co.jp/form/js-furniture/index.php?item="+_pid+"','','width=570,height=700'))";
	var p_req = doSimpleXMLHttpRequest('../product/products/'+_pid+'.xml');
	p_req.addCallback(pdetailFromXMLRequest);
}
function changePhoto(_img){
		MM_swapImage('product-photo','','../product/photos/'+_img,0);
}