Event.onDomLoad(initBriefs);

function initBriefs() {
	initModals();
	enablePrintFaxEmail();
}

function initModals() {
	$$('a.photolink').each(function(link) {
		new Control.Modal(link, {fade: true, ui: true, onSuccess: initPhotoGallery, loading: '/images/icons/silk/LoadingIndicator_opaque.gif'});
		link.observe('click', function(evt) {Event.stop(evt)});
	});
	
	
	$$('a.openhouselink').each(function(link) {
		new Control.Modal(link, {fade: true, ui: true, loading: '/images/icons/silk/LoadingIndicator_opaque.gif'});
		link.observe('click', function(evt) {Event.stop(evt)});
	});
	$$('a.taxinfolink').each(function(link) {
		new Control.Modal(link, {fade: true, ui: true, onSuccess: initTaxInfo, loading: '/images/icons/silk/LoadingIndicator_opaque.gif'});
		link.observe('click', function(evt) {Event.stop(evt)});
	});
	$$('a.assetslink').each(function(link) {
		new Control.Modal(link, {fade: true, ui: true, loading: '/images/icons/silk/LoadingIndicator_opaque.gif'});
		link.observe('click', function(evt) {Event.stop(evt)});
	});
	
	$$('a.reverseprospectsearchlink').each(function(link) {
		new Control.Modal(link, {fade: true, ui: true, loading: '/images/icons/silk/LoadingIndicator_opaque.gif'});
		link.observe('click', function(evt) {Event.stop(evt)});
	});
}

function initTaxInfo() {
	var foundForm = $('TaxDataFoundForm');
	var selectForm = $('TaxDataSelectForm');
	var notFoundForm = $('TaxDataNotFoundForm');
	
	/*
	if(foundForm) {
		foundForm.submit();
		Control.Modal.close();
	}
	else 
	*/
	if(selectForm) {
		selectForm.getInputs('radio').invoke('observe', 'click', function() {selectForm.submit()});
	}
}

function initOpenHouses() {
}

function initPhotoGallery() {
	var thumbGlider = new Glider('ThmbScr', {duration:0.5});
	var thumbRange = $R(0,thumbGlider.sections.size()-1)
	var sliderHandle = $('ThmbSldHnd');
	var slider = $('ThmbSld');
	
	$('ThmbSld').show();
	sliderHandle.setStyle({
		width: Math.floor(slider.getWidth / $A(thumbRange).size())
	});
	var thumbSlider = new Control.Slider(sliderHandle, slider, {range: thumbRange, values: $A(thumbRange), onSlide: function(v) {thumbGlider.moveTo(thumbGlider.sections[v], thumbGlider.scroller, thumbGlider.options);}, onChange: function(v) {thumbGlider.moveTo(thumbGlider.sections[v], thumbGlider.scroller, thumbGlider.options);}});
	
	
	var phoTabs = new Control.Tabs($('Thmbs'), {
		linkSelector: 'a',
		fade: true
	});
}

function enablePrintFaxEmail()
{
	$$('#BriefFunctions button[disabled]').each(function(el) {
		el.disabled = false;
	});
}

function ShowMap(intMlsID, lat, lon)
{
	var eleMapRow = $("MapRow_" + intMlsID);
	if(!eleMapRow)
		return false;

	eleMapRow.show();

	var eleMap = $("Map_" + intMlsID);
	if(!eleMap) {
		eleMap = document.createElement("div");
		eleMap.id = "Map_" + intMlsID;
		eleMap.className = "googlemap"
		
		eleMap = $(eleMapRow.down('.mapplaceholder').appendChild(eleMap));
	}
	

	if(!(eleMap.classNames().include('initialized'))) {
		if (GBrowserIsCompatible()) {
			eleMap.addClassName('initialized');

			var map = new GMap2(eleMap);
			var bounds = new GLatLngBounds();
			
			map.addControl(new GLargeMapControl());
			map.addControl(new GMapTypeControl());
			
			map.setCenter(new GLatLng(0,0),0);	
			var point = new GLatLng(lat, lon);
			map.addOverlay(new GMarker(point));
			
			map.setCenter(point, 15);			
		}
	}
	
	new Effect.ScrollTo('Map_' + intMlsID, {offset: -24, duration: .5})
	
	return false;
}

function HideMap(intMlsID)
{
	$('MapRow_' + intMlsID).hide();
}

function closePage()
{
	if(typeof(self.opener) != "undefined")
		self.opener.focus();
	
	window.close();
}


function EmailReport(viewId,MLSIDs)
{
	
	if(!MLSIDs) {
		MLSIDs = $$('.brief').pluck('id').invoke('match',/\d+$/);

		if(MLSIDs.size() == 0)
			MLSIDs = $A(MLSIDArray);
	}
	
	window.open("/view/emailView.asp?MLSIDs="+MLSIDs+"&view=" + viewId, "PopUp_email", "WIDTH=515,HEIGHT=440,SCROLLBARS=YES,LOCATION=NO,RESIZABLE=NO,TOOLBAR=NO,STATUS=NO,LEFT=100,TOP=15,TITLEBAR=NO,MENUBAR=NO");
}

function FaxReport(viewId,MLSIDs)
{
	if(!MLSIDs) {
		MLSIDs = $$('.brief').pluck('id').invoke('match',/\d+$/);

		if(MLSIDs.size() == 0)
			MLSIDs = $A(MLSIDArray);
	}
		
	window.open("/view/FAXView.asp?MLSIDs="+MLSIDs.join(",")+"&view=" +  viewId, "PopUp_FAX", "WIDTH=450,HEIGHT=300,SCROLLBARS=YES,LOCATION=NO,RESIZABLE=NO,TOOLBAR=NO,STATUS=NO,LEFT=100,TOP=50,TITLEBAR=NO,MENUBAR=NO");
}

function ToggleCoverLetter(visible)
{
	var eleCoverLetter = $('CoverLetter')
	if(visible)
		eleCoverLetter.addClassName('active');
	else
		eleCoverLetter.removeClassName('active');
}

function SaveDefaultPageBreaks()
{
	arrDefaultPageBreaks = $$('.brief').pluck('style').pluck('pageBreakAfter');
}

function LoadDefaultPageBreaks()
{
	var briefs = $$('.brief').each(function(el,i) {
		el.style.pageBreakAfter = arrDefaultPageBreaks[i];
	});
}

function PrintAllListings()
{
	SaveDefaultPageBreaks();
	
	$$('.brief').invoke('removeClassName','dontPrint')

	ToggleCoverLetter(PrintCoverLetter());
	
	LoadDefaultPageBreaks();
	window.print();
}

function PrintCoverLetter()
{
	if($('ckbIncludeCoverLetter').checked)
	{
		var lblPreparedFor = $("lblPreparedFor")
		var name = prompt("Who is this report being prepared for?\n(Leave blank to write this in yourself)","");
		if(name == "")
			name = "<u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>"
		
		lblPreparedFor.update(name);
		return true;
	}
	
	else
		return false;
	
}

function PrintSingleListing(intMlsID)
{
	SaveDefaultPageBreaks();

	ToggleCoverLetter(false);
	
	$$('.brief').each(function(el) {
		if(el.id.endsWith(intMlsID.toString())) {

			el.removeClassName('dontPrint');
			el.style.pageBreakAfter = '';
		}
		else {
			el.addClassName('dontPrint');
		}
			
	});
	
	window.print();


	LoadDefaultPageBreaks();
	/*
	for(i=0;i<MLSIDArray.length;i++)
	{
		eleListing = $("ListingBlock" + MLSIDArray[i]);
		
		if(parseInt(intMlsID) != parseInt(MLSIDArray[i]))
		{
			eleListing.className = "dontPrint";
		}
		else
		{
			eleListing.className = "";
			eleListing.style.pageBreakBefore = "";
		}
	}
	window.print();
	*/
}

function RemoveListing(intMlsID, cacheId)
{
	
	var listing = $('ListingBlock' + intMlsID);
	
	new Effect.Parallel(
		[ new Effect.BlindUp(listing)
			, new Effect.Fade(listing) ],
		{ duration: .5, 
			queue: 'end',
			afterFinish: function(effect) {
				effect.effects[0].element.remove();
			}
		}
	);
	
	for(i=0;i<MLSIDArray.length;i++)
		if(MLSIDArray[i] == intMlsID)
			MLSIDArray.splice(i,1)
	
	RemoveMlsIDFromCache(intMlsID, cacheId);
}

function RemoveMlsIDFromCache(mlsid, cacheid) {
	if(cacheid) {
		var pHash = $H({
			action:'RemoveListing',
			MLSID: mlsid,
			CacheID: cacheid
		});
		
		var options = {
			parameters : pHash.toQueryString(),
			onSuccess : function(transport) {
				if(transport.responseText.match(/success/)) {
					//new Effect.Highlight('Briefs', {startColor: '#99ff99', queue: 'end'});
				}
				else {
				}
			}
		};
		
		new Ajax.Request('ViewTemplates_ajax.asp', options);
		
	}

}

function PlotListings()
{
	prmMLSIDs = MLSIDArray.join(",");
	plotPopUp(prmMLSIDs);
} 
