﻿var featureData;
var companyData;
var typeB;
var goodsName;
var goodsSize;
var cordAvailable;
var tubo;
var reikin;
var reikinUnit;
var payback;
var parking;
var allIds;
var pzpath;
var themeColor;
var photoZoom;
var available;
var goodsX;
var hosyo;
var initialCost;
var iArray = new Array();
var tempGoodsStr;
var spotUnit;
var count = 0;
var twitterV;
var gidv = 0;
var domain = 0;
var useAveragePrice;
var picasaArray = "";
var picasaId = "";
var picasaImg = null;

function setKeys(a,b,c){
	typeB = a;
	cordAvailable = b;
	twitterV = c;
}

function setSize(a){
	goodsSize = a;
}

function GetDreamXData(gid,arr,pId){
	picasaId = pId;
	iArray = arr;
	Ext.Ajax.request({
		   url: '/Hades/data/json.do?what=feature',
		   success: function(op,su){
				if(su){
					featureData = op.responseText;
					Ext.Ajax.request({
					   url: '/Hades/data/json.do?what=company',
					   success: function(op,su){
						if(su){
							companyData = op.responseText;
							renderGoodsList(gid);
						}
					},
						failure: function(){
						},
						params: {
							'json':'true'
						}
					});
				}
			},
		failure: function(){
		},
		params: {
			'json':'true'
		}
	});
}

function renderGoodsList(gids)
{
	if( count<gids.length )
	{
		
		tubo = iArray[count][0];
		reikin = iArray[count][1];
		reikinUnit = iArray[count][2];
		payback = iArray[count][3];
		parking = iArray[count][4];
		pzpath = iArray[count][5];
		themeColor = iArray[count][6];
		photoZoom = iArray[count][7];
		available = iArray[count][8];
		goodsX = Math.round(iArray[count][9]);
		hosyo = iArray[count][10];
		initialCost = iArray[count][11];
		goodsName = iArray[count][12];
		spotUnit = iArray[count][13];
		domain = iArray[count][14];
		useAveragePrice = iArray[count][15];
		
		gId = gids[count];
		//if(gids.length > 1){
			//alert(gids.length);
		//}
		Ext.Ajax.request({
		   url: '/Hades/data/json.do?what=goods&var(gid)='+gId,
		   success: function(op,su){
				if(su){
					tempGoodsStr = op.responseText;
					count+=1;
					renderSilverlight(gId);
				}
			},
			failure: function(){
			},
			params: {
				'json':'true'
			}
		});
	}
	allIds = gids;
}

function Resize(gid,w,h){
	var sld = Ext.get('slId'+gid);
	sld.setWidth(w,true);
	sld.setHeight(h,true);
}

function MapPosition(checkNum,targetId){
	var displayProperty;
	var DP = new Array("block","none","block");
	document.getElementById("mapConId" + targetId).style.display  = DP[checkNum];
    if(twitterV != ""){
    	document.getElementById('d_twitter' + targetId).style.display  = DP[checkNum];
    }
}

function MapPositionPZ(x){
	for(i=0;i < allIds.length;i++){
		if(typeB == "enabled"){
			if(document.getElementById("mapConId" + allIds[i]).style.display == "none"){
				document.getElementById("mapConId" + allIds[i]).style.display  = "block";
			    if(twitterV != ""){
			    	document.getElementById('d_twitter' + allIds[i]).style.display  = "block";
			    }
			}
		}
	}
}

var thePage = null;
function onSLLoaded(sender, userCtx, rootEl) {
    var sl = sender.getHost();
    thePage = sl.content["thePage"];
    thePage.set_FeatureJsonStr(featureData);//特徴データ
    thePage.set_CompanyJsonStr(companyData);//会社情報データ
    thePage.set_GoodsDataStr(tempGoodsStr);	//物件データ
    thePage.set_TypeB(typeB);   			//会社情報データ
    thePage.set_GoodsName(goodsName);		//物件データ
    thePage.set_GoodsSize(goodsSize);		//サイズ
    thePage.set_GoodsCode(cordAvailable);	//地図コード
    thePage.set_GoodsTypeId(tubo);			//坪判定
    thePage.set_GoodsReikin(reikin);		//礼金
    thePage.set_GoodsReikinUnit(reikinUnit);//礼金ユニット
    thePage.set_GoodsPayback(payback);		//敷引
    thePage.set_GoodsParking(parking);		//駐車場
    thePage.set_GoodsPhotoZoom(pzpath);		//フォトズームパス
    thePage.set_GoodsThemeColor(themeColor);//メインカラー
    thePage.set_GoodsPhotoZoomCheck(photoZoom);	//フォトズーム判定
    thePage.set_GoodsAvailableFlag(available);	//入居時期
    thePage.set_GoodsX(goodsX);	//入居時期
    thePage.set_GoodsHosyo(hosyo);	//保証金
    thePage.set_GoodsinitialCost(initialCost);	//初期費用 
    thePage.set_useAveragePrice(useAveragePrice);	//目安費用を出力するか
    thePage.set_GoodsSpotUnit(spotUnit);	//スポットユニット　坪
    thePage.set_GoodsDomain(domain);	//スポットユニット　坪
    
    if(twitterV != ""){
    	document.getElementById('d_twitter' + gidv).style.display  = "block";
    }
       
    
    if(allIds.length-1 > 0){
    	renderGoodsList(allIds);
    }
}

function renderSilverlight(gid){
	var test;
	findGoodsAlbum(picasaId,gid);
	gidv = gid;
		test = '<object data="data:application/x-silverlight," type="application/x-silverlight-2" id="slId'+gid+'" Width="748" Height="436">';
		test = test + '<param name="source" value="'+SILVERLIGHT_FOR_GOODS_BASE+'/goodsDetail.xap"/>';
		test = test + '<param name="onerror" value="onSilverlightError" />';
		test = test + '<param name="background" value="white" />';
		test = test + '<param name="minRuntimeVersion" value="2.0.31005.0" />';
		test = test + '<param name="autoUpgrade" value="true" />';
		test = test + '<param name="windowless" value="true" />';
        test = test + '<param name="onLoad" value="onSLLoaded" />';
		test = test + '<div style="width:748px;height:436px;background-color:#fff;">';
		test = test + '<div style="padding:10px;">当ページをご覧になるには、Microsoftの「Silverlight」をインストールする必要が御座います。<br />';
		test = test + 'お手数ですが、以下のバナーをクリックし、インストールをお願いいたします。<br /><br />';
		test = test + 'ダウンロードしたファイルを開き、インストールボタンを押すだけで簡単に終わります。<br /><br />';
		test = test + '<a href="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;">';
		test = test + '<img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Microsoft Silverlight を取得" style="border-style: none"/>';
		test = test + '</a></div></div>';
		test = test + '</object>';
		test = test + '<iframe style="visibility:hidden;height:0;width:0;border:0px"></iframe>';
		Ext.get('silverlightControlHost'+gid).dom.innerHTML=test;
}

//Picasa情報を取得---------------------------------------------------------------------------------------
var findGoodsAlbum = function(id,album) {
	//alert("http://picasaweb.google.com/data/feed/api/user/"+id+"/?kind=album&alt=json-in-script");
	var cmbResGrpStore = new Ext.data.JsonStore({
		proxy: new Ext.data.ScriptTagProxy({
			url:'http://picasaweb.google.com/data/feed/api/user/'+id+'/?kind=album&alt=json-in-script',
			listeners: {
		    	'loadexception': {
					fn:function( me, options, arg, e ){
					},
					single:true
				}
		    }
		}),
		autoLoad: true,
		root: 'feed.entry',
		fields: [
			{name:'id',mapping:'gphoto$id.$t'},
			{name:'user',mapping:'gphoto$user.$t'},
			{name:'title',mapping:'title.$t'}
		],
		listeners: {
			'load': {
				fn:function(me, records, options){
					if( records!=null ){
						for(r=0 ; r<records.length; r++){
							if( album == records[r].data.title || '${G.name}' == records[r].data.title ){
								requestAlbum(id,records[r].data.id);
								break;
							}
						}
					}
				},
				single:true
			},'loadexception': {
				fn:function( me, options, arg, e ){
					//alert(e);
				},
				single:true
			}
		}
	});
}

var requestAlbum = function(id,album){
	new Ext.data.JsonStore({
		proxy: new Ext.data.ScriptTagProxy({
			url:'http://picasaweb.google.com/data/feed/api/user/'+id+'/albumid/'+album+'?kind=photo&alt=json-in-script',
			listeners: {
		    	'loadexception': {
					fn:function( me, options, arg, e ){
					},
					single:true
				}
		    }
		}),
		autoLoad: true,
		root: 'feed.entry',
		fields: [
			{name:'id',mapping:'gphoto$id.$t'},
			{name:'albumid',mapping:'gphoto$albumid.$t'},
			{name:'title',mapping:'title.$t'},
			{name:'link',mapping:'link[1].href'},
			{name:'published',mapping:'published.$t'},
			{name:'updated',mapping:'updated.$t'},
			{name:'size',mapping:'gphoto$size.$t'},
			{name:'content',mapping:'content.src'},
			{name:'thumbnail',mapping:'media$group.media$thumbnail'}
		],
		listeners: {
			'load': {
				fn:function(me, records, options){
					picasaImg = new Array(records.length);
					for(r=0; r<records.length; r++ ){
						picasaImg[r] = records[r].data.content;
						//alert("listeners"+picasaImg[r]);
					}
					thePage.set_PicasaImg( picasaImg );		//Picasaで登録されている画像情報
			},
				single:true
			},
			'loadexception': {
				fn:function( me, options, arg, e ){
				},
				single:true
			}
		}
	});
}

