switch(application.language)
{
	case 'german':
	{
		var conditionLabel = 'Zustand';
		var treatmentLabel = 'Behandlung';
		var conditions = ['Hautstraffung','Body Contouring','Cellulite'];
		var nbrTreatmentsLabel = 'Anzahl der Behandlungen';
		var nbrMonthsLabel = 'Anzahl der Monate nach der Behandlung';
		var courtesyOfLabel = 'Mit freundliche Genehmigung des';
		var zoomLabel = 'Vergrößern/Zoomen';
		var closeLabel = 'Schließen';
		break;
	}
	case 'french':
	{
		var conditionLabel = 'Problème';
		var treatmentLabel = 'Traitement';
		var conditions = ['Lissage Cutané','Body Contouring','Cellulite'];
		var nbrTreatmentsLabel = 'Nb. de traitements';
		var nbrMonthsLabel = 'Nb. de mois après le traitement';
		var courtesyOfLabel = 'Avec l’aimable autorisation de';
		var zoomLabel = 'Agrandir/Zoom avant';
		var closeLabel = 'Fermer';
		break;
	}
	case 'spanish':
	{
		var conditionLabel = 'Condition';
		var treatmentLabel = 'Treatment';
		var conditions = ['Skin Tightening','Body Contouring','Cellulite'];
		var nbrTreatmentsLabel = '# of Treatments';
		var nbrMonthsLabel = '# Months Post-Treatment';
		var courtesyOfLabel = 'Courtesy of';
		var zoomLabel = 'Agrandar +';
		var closeLabel = 'Cerrar';
		break;
	}
	case 'chinese':
	{
		var conditionLabel = '狀況';
		var treatmentLabel = '治療';
		var conditions = ['皮膚緊緻','Body Contouring','橘皮組織'];
		var nbrTreatmentsLabel = '治療次數';
		var nbrMonthsLabel = '治療後經過幾個月';
		var courtesyOfLabel = '提供者';
		var zoomLabel = '放大/縮小 +';
		var closeLabel = '關閉';
		break;
	}
	default:
	{ 
		var conditionLabel = 'Condition';
		var treatmentLabel = 'Treatment';
		var conditions = ['Skin Tightening','Body Contouring','Cellulite'];
		var nbrTreatmentsLabel = '# of Treatments';
		var nbrMonthsLabel = '# Months Post-Treatment';
		var courtesyOfLabel = 'Courtesy of';
		var zoomLabel = 'Enlarge/Zoom +';
		var closeLabel = 'Close';
		break;
	}
}	

// BEGIN CoreMetrics tracking stuff
var elementTagTreatment = function(e)
	{
		var treatmentId = (new Event(e)).target.getProperty('value');
		var treatmentName = treatments.data.name[treatments.data.id.indexOf(parseInt(treatmentId))];
		//alert(treatmentName);
		cmCreatePageElementTag('Treatment:'+treatmentName,'Thermage:' + section + ':Photo Gallery');
	}
var elementTagCaseDetail = function(caseId)
	{
		cmCreatePageElementTag('CaseDetail:'+caseId,'Thermage:' + section + ':Photo Gallery');
	}
var elementTagCaseExpand = function(caseId)
	{
		cmCreatePageElementTag('CaseExpand:'+caseId,'Thermage:' + section + ':Photo Gallery');
	}
// END CoreMetrics tracking stuff

var shiftSet = function(dir)
	{
		var treatmentIds=[];
		if(dir=='+' && curStart+9 < (curMax-1))
			{
				curStart += 9;
				curEnd += 9;
				$('checkboxesContainer').getElements('input').each(function(el){if(el.checked){treatmentIds[treatmentIds.length]=el.value;}});
				drawCases(searchCases(treatmentIds,curStart,curEnd));
			}
		else if(dir=='-' && (curStart-9) >= 0)
			{
				curStart -= 9;
				curEnd -= 9;
				$('checkboxesContainer').getElements('input').each(function(el){if(el.checked){treatmentIds[treatmentIds.length]=el.value;}});
				drawCases(searchCases(treatmentIds,curStart,curEnd));
			}
	}
var drawPrevNext = function()
	{
		$('gallerySetRange').empty().appendText((curMax > 1?(curStart+1):0) + ' - ' + ((curMax-1) < curEnd?(curMax-1):curEnd) + ' of ' + (curMax-1));
		$('galleryPrevButton').setProperty('class',(curStart > 8?'prevNextHighlight':'prevNextBlank'));
		$('galleryNextButton').setProperty('class',(curEnd < curMax?'prevNextHighlight':'prevNextBlank'));
	}
var treatmentChange = function()
	{
		var treatmentIds=[];
		$('checkboxesContainer').getElements('input').each(function(el){if(el.checked){treatmentIds[treatmentIds.length]=el.value;}});
		curStart = 0;
		curEnd = 9;
		drawCases(searchCases(treatmentIds,curStart,curEnd));
	}
	
var drawCheckboxes = function(checkBoxes)
	{
		if($chk(checkBoxes))
			{
				treatments = checkBoxes;
				var chkBx;
				var chkBxsContainer = $('checkboxesContainer');
				var bxCount = checkBoxes.recordcount-1;
				for(var i=0;i<=bxCount;i++)
					{// previous name property: checkBoxes.data.name[i]
						var checkedProps = {};
						checkedProps.type = 'radio';
						checkedProps.name = 'treatment';
						checkedProps.value = i+1;
						checkedProps.id = checkBoxes.data.name[i]+'_' +i;
						if(i==0)
							{
								checkedProps.defaultChecked = 'true';
								checkedProps.checked = 'true';
							}
						chkBxsContainer.grab(new Element('label',{'for':checkBoxes.data.name[i]+'_i'}).appendText(checkBoxes.data.name[i]));
						chkBxsContainer.grab(new Element('input',checkedProps).addEvents({'mousedown':elementTagTreatment,'click':treatmentChange}));
					}
			}
		else
			{
				var myRequest = new Request.JSON({url: 'photoGalleryData.cfm?method=treatments',onComplete:drawCheckboxes}).get();
			}
	}
	
var searchCases = function(treatments,start,end)
	{
		var tempCases = cases.data;
		var count = cases.recordcount;
		var matches = [];
		if ($chk(cases))
			{
				for(var i=0;i <= count;i++)
					{
						for(var u=0;u<=treatments.length;u++)
							{
								if(tempCases.treatment[i] == treatments[u] && !matches.contains(tempCases.case_id[i]))
									{
										matches[matches.length] = tempCases.case_id[i];
									}
							}
					}
				curMax = matches.length;
				matches = matches.slice(start,end);
			}
		else
			{
				matches = tempCases.data.case_id;
			}
		return matches;
	}
var expandDetail = function(e)
	{
		var imgId = (new Event(e)).target.id.split('_')[1];
		var imagesPath = '/_gfx/photoGallery/Detail/';
		var lightbox = $('lightbox').empty();
		var styles = $('galleryBuffer').getCoordinates();
		styles.display = 'block';
		lightbox.setStyles(styles);
		lightbox.grab(new Element('img',{src:imagesPath + '01_' + imgId + '-before-e.jpg',id:'galleryDetail_'+imgId,'class':'expandedDetailPhoto'}).addEvent('click',expandDetail,false));
		lightbox.grab(new Element('img',{src:imagesPath + '01_' + imgId + '-after-e.jpg',id:'galleryDetail_'+imgId,'class':'expandedDetailPhoto'}).addEvent('click',expandDetail,false));
		lightbox.grab(drawDetailMetaData(imgId).setStyles({'margin-left':75,'text-align':'left'}).grab(new Element('div',{id:'expandDetail_'+imgId,'class':'closeDetail'}).appendText('X ' + closeLabel).addEvent('click',closeDetail,false),'top'));
		lightbox.addEvent('click',closeDetail);
		//coremetrics
		elementTagCaseExpand(imgId);
	}
var closeDetail = function()
	{
		$('lightbox').setStyle('display','none');
	}
var drawDetail = function(imgId)
	{
		if($chk(imgId))
			{
				var imagesPath = '/_gfx/photoGallery/Detail/';
				var detailContainer = $('detailContainer').empty();
				var enlargeZoomStyle = {'padding-right':(Browser.Engine.trident?20:20)};
				detailContainer.grab(new Element('img',{src:imagesPath + '01_' + imgId + '-before-d.jpg',id:'galleryDetail_'+imgId,'class':'detailPhoto'}).addEvent('click',expandDetail,false));
				detailContainer.grab(new Element('img',{src:imagesPath + '01_' + imgId + '-after-d.jpg',id:'galleryDetail_'+imgId,'class':'detailPhoto'}).addEvent('click',expandDetail,false));
				$('enlargeZoomContainer').empty().grab(new Element('a',{id:'expandDetail_'+imgId,'class':'expandDetail'}).setStyle('padding-right',(Browser.Engine.trident?27:11)).appendText(zoomLabel).addEvent('click',expandDetail,false));
				$('detailMetaData').empty().grab(drawDetailMetaData(imgId));
			}
		else {$('detailContainer').empty();}
	}
var drawDetailMetaData = function(caseId)
	{
		var caseIndex = cases.data.case_id.indexOf(parseInt(caseId.replace(/^0+/,'')));
		var dataContainer = new Element('div');
		dataContainer.grab(new Element('div',{'class':'galleryMetaDataField'}).appendText(conditionLabel + ': ').grab(new Element('span',{'class':'galleryMetaData'}).appendText(conditions[cases.data.condition_id[caseIndex]-1])));
		dataContainer.grab(new Element('div',{'class':'galleryMetaDataField'}).appendText(treatmentLabel + ': ').grab(new Element('span',{'class':'galleryMetaData'}).appendText(cases.data.treatment_area[caseIndex])));
		dataContainer.grab(new Element('div',{'class':'galleryMetaDataField'}).appendText(nbrTreatmentsLabel + ': ').grab(new Element('span',{'class':'galleryMetaData'}).appendText(cases.data.treatments[caseIndex])));
		dataContainer.grab(new Element('div',{'class':'galleryMetaDataField'}).appendText(nbrMonthsLabel + ': ').grab(new Element('span',{'class':'galleryMetaData'}).appendText(cases.data.months_post_treatment[caseIndex])));
		dataContainer.grab(new Element('div',{'class':'galleryMetaDataField'}).appendText(courtesyOfLabel + ': ').grab(new Element('span',{'class':'galleryMetaData'}).appendText(cases.data.provider[caseIndex])));
		return dataContainer;
	}

var clickDetail = function(e)
	{
		var imgId = (new Event(e)).target.id.split('_')[1];
		drawDetail(imgId);
		//coremetrics
		elementTagCaseDetail(imgId);
	}

var drawCases = function(casesToDraw)
	{
		//alert('Type='+$type(cases));
		var imagesPath = '/_gfx/photoGallery/Thumbnails/'
		var imgId = 0;
		if($type(casesToDraw)=='array')
			{
				casesToDraw = casesToDraw.clean();
				var pairContainer;
				var photosContainer = $('photosContainer').empty();
				for(var i=0;i<casesToDraw.length;i++)
					{
						imgId = casesToDraw[i]+'';
						imgId = (imgId.length>2?'':'0')+casesToDraw[i];
						pairContainer = new Element('div',{'class':'pairContainer'});
						pairContainer.grab(new Element('img',{src:imagesPath + '01_' + imgId + '-before-t.jpg',id:'galleryThumb_'+imgId,style:'margin-right:4px;'}).addEvent('click',clickDetail,false));
						pairContainer.grab(new Element('img',{src:imagesPath + '01_' + imgId + '-after-t.jpg',id:'galleryThumb_'+imgId}).addEvent('click',clickDetail,false));
						photosContainer.grab(pairContainer);
						if((i+1)%3==0){photosContainer.grab(new Element('div',{'class':'clear'}));}
						imgId = '';
					}
				var curDetailChildren = $('detailContainer').getChildren();
				var curDetailId = curDetailChildren.length > 0 ? curDetailChildren[0].id.split('_')[1].replace(/^0+/,''):''; //get the id of the current detail display
				var newDetailId = casesToDraw[0];
				var curDetailChange = !casesToDraw.contains(parseInt(curDetailId));
				//alert('Cases:' + casesToDraw + ' Current:' + curDetailId + ' Change? ' + curDetailChange);
				if(curDetailChange){drawDetail(casesToDraw.length > 0?(newDetailId.toString().length>2?'':'0')+newDetailId:null);}
				drawPrevNext();
			}
	}
		
var cases;
var curStart = 0;
var curEnd = 9;
var curMax = 0;
var treatments;

var init = function()
	{
		var myRequest = new Request.JSON({url: 'photoGalleryData.cfm?method=cases',onComplete:function(origCases){cases = origCases;drawCases(searchCases([1],curStart,curEnd));}}).get();
		drawCheckboxes();
		$('galleryPrevButton').addEvent('click',shiftSet.pass('-'));
		$('galleryNextButton').addEvent('click',shiftSet.pass('+'));
	}
	
window.addEvent('domready',init);

