function NewPropertyDetailHandler()
{
	this.myId;				//module id
	this.myView;			//object of view class
	this.container;			//parent DOM Object
	this.isSubView = true;			//Flag for showing sub-view on right.
	this.agentInfoId;
	this.activeView = 'NewPropertyDetails';
	
	this.init();
}
NewPropertyDetailHandler.prototype.loadView=function(moduleId, viewContainer, subViewContainer)
{
	this.myId = moduleId;
	this.viewContainer = viewContainer;
	this.subViewContainer = subViewContainer;
	this.myView = new NewPropertyDetail();
	
	this.myView.showView(this.callbackHandlerFn,this.viewContainer,this.subViewContainer,this.isSubView,this);
	
	
	
}

NewPropertyDetailHandler.prototype.init=function()
{
	//Register events, that are required for this module.
	reapfield.G_EventMgr.registerEvent('NewPropertyDetailData',this,'NewPropertyDetailDataListener');
}

NewPropertyDetailHandler.prototype.loadDetailData=function(propertyId)
{
	reapfield.G_API.getNewPropertyDetailData(propertyId);
}
NewPropertyDetailHandler.prototype.NewPropertyDetailDataListener=function(eventObj)
{
	this.myView.displayMainViewData(eventObj.data);
	reapfield.G_ViewMgr.fixFooterHeight();
	
}
NewPropertyDetailHandler.prototype.callbackHandlerFn=function(action, data, owner)
{
}




function NewPropertyDetail() { };

NewPropertyDetail.prototype.showView=function(callbackFn,viewParent,subViewParent,isSubView,owner)
{
	this.viewParentObj = viewParent || document.body;
	this.subViewParentObj = subViewParent || document.body;
	this.owner = owner;
	var newwindow;
	this.isSubView = isSubView;
	this.callbackFn = callbackFn;

	this.titleId = "propertyDetTitle";
	this.propertyDescritptionId="NewPropertyDetailDescription";
	this.createMainView();
}
NewPropertyDetail.prototype.popPrint=function()
{
}
NewPropertyDetail.prototype.createMainView=function()
{
	var viewContent='<div class="contentTitle" id='+this.titleId +'></div>\
		<div style="float:right;width:300px;height:300px;padding:10px"><img id="newProjectImage" src="" /></div>\
		<div id='+this.propertyDescritptionId +' style="padding:8px 0px 15px 0px;"></div>';
	
	this.viewParentObj.innerHTML = viewContent;
}
NewPropertyDetail.prototype.createSubMainView=function()
{
}
NewPropertyDetail.prototype.displayAgentDetails=function(responseData)
{
}
NewPropertyDetail.prototype.displayMainViewData=function(responseDataObj)
{
	document.getElementById(this.titleId).innerHTML=responseDataObj.developments[0].title;
	document.getElementById(this.propertyDescritptionId).innerHTML = responseDataObj.developments[0].description;
	reapfield.ChangePhoto(responseDataObj.developments[0].image,"newProjectImage",300,300);
}
NewPropertyDetail.prototype.createDateFormat=function(dateStr)
{
	if(dateStr)
	{
		var dateObj = new DateTimeHandler(),
			datePart = dateStr.split(' ')[0];
		return dateObj.createDate(datePart,"dMy");
	}
	else
		return "";
	
}
NewPropertyDetail.prototype.displaySubViewData=function(responseData)
{
		
	var agentContactDiv=document.getElementById(this.contactAddress);
		
	agentContactDiv.innerHTML=(responseData.property_town || '');	
	
}
NewPropertyDetail.prototype.eventHandler=function(obj,value,event,callback,owner)
{
	var myObj=this;
	function submitHandler(e)
	{
	
	
		if(obj.id == 'AgentDetailInfoId')
		{
			// value=document.getElementById(myObj.nameSearchText).value;
             callback("userProfileDetails",myObj.agentEmail,owner);
		}
		else if(obj.id == 'reapFieldImageFirstList')
		{
		  	myObj.setLargeImageOnChange(myObj.firstImgTempUrl,myObj.reapFieldLargeImageId);
			
		}
		else if(obj.id == 'reapFieldImageSecondList')
		{
			myObj.setLargeImageOnChange(myObj.secondImgTempUrl,myObj.reapFieldLargeImageId);
        }
		
		else if(obj.id == 'reapFieldImageThirdList')
		{
			myObj.setLargeImageOnChange(myObj.thirdImgTempUrl,myObj.reapFieldLargeImageId);
        }
		else if(obj.id == 'reapFieldImageForthList')
		{
			myObj.setLargeImageOnChange(myObj.forthImgTempUrl,myObj.reapFieldLargeImageId);
		}
		else if(obj.id == myObj.printThispageId)
		{
			callback("printThispageIdEvents", obj, owner);
		
		}
		// else if(obj.id ==myObj.createBrochureId)
		// {
			// callback("createBrochureThispageEvents", obj, owner);
		
		// }
		// else if(obj.id ==myObj.emailToFriendId)
		// {
			// callback("createemailToFriendPageEvents", obj, owner);
		
		// }
		
		
		
		
		
		
		if (e.preventDefault) e.preventDefault();
			e.returnValue = false;
		return false;
	
	};
	reapfield.AttachEvent(obj, event, submitHandler, false);
}

NewPropertyDetail.prototype.setLargeImageOnChange=function(photoItem,imgListItem)
{
	this.ChangePhoto(photoItem,imgListItem,420,300,true);

}

NewPropertyDetail.prototype.ChangePhoto=function(newPhoto,imageId,setX,setY,flag)
{
	if(!newPhoto || newPhoto == '')
	{
		return;
	}
	
	var myImg = document.createElement('img');
	myImg.onload=function()
	{
		var width = myImg.width,
			height = myImg.height;
		var newx = (setX?setX:100); // set  images max width to be.
		var newy = (setY?setY:100); // set images maximum height to be.
		
		if ( width >= height )
		{
			var tmpy = height*newx/width;
			if ( tmpy <= newy )
				newy = tmpy;
			else
				newx = width*newy/height;
		}
		else
		{
			tmpx = width*newy/height;
			if ( tmpx <= newx )
				newx = tmpx;
			else
				newy = height*newx/width;
		}
		
		var ourImg = document.getElementById(imageId);
		ourImg.src = myImg.src;
		ourImg.style.display = "block";
		if(flag)
		{
			if(newy < setY && newx <= setX)
				ourImg.style.height = setY+"px";
			else if(newx < setX && newy <= setY)
				ourImg.style.width = setX+"px";
		}
		else
		{
			ourImg.style.height = newy+"px";
			ourImg.style.width = newx+"px";
		}
		ourImg.parentNode.style.backgroundColor = "transparent";
	}
	//alert(newPhoto.indexOf("http://"));
	if(newPhoto.indexOf("http://") >= 0)
		myImg.src=newPhoto;
	else
		myImg.src=reapfield.G_API.webServiceURL + newPhoto;
	
}
