/* Images */

var HomeOn = createImage(ImagePath + 'Images/Home_' + lang + '_on.png');
var HomeOff = createImage(ImagePath + 'Images/Home_' + lang + '_off.png');

var AboutOn = createImage(ImagePath + 'Images/AboutOSTP_' + lang + '_on.png');
var AboutOff = createImage(ImagePath + 'Images/AboutOSTP_' + lang + '_off.png');

var MembersOn = createImage(ImagePath + 'Images/Members_' + lang + '_on.png');
var MembersOff = createImage(ImagePath + 'Images/Members_' + lang + '_off.png');

var ReportsOn = createImage(ImagePath + 'Images/Reports_' + lang + '_on.png');
var ReportsOff = createImage(ImagePath + 'Images/Reports_' + lang + '_off.png');

var BoardOn = createImage(ImagePath + 'Images/Board_' + lang + '_on.png');
var BoardOff = createImage(ImagePath + 'Images/Board_' + lang + '_off.png');

var NewsEventsOn = createImage(ImagePath + 'Images/NewsEvents_' + lang + '_on.png');
var NewsEventsOff = createImage(ImagePath + 'Images/NewsEvents_' + lang + '_off.png');

var DirectoryOn = createImage(ImagePath + 'Images/Directory_' + lang + '_on.png');
var DirectoryOff = createImage(ImagePath + 'Images/Directory_' + lang + '_off.png');


/* Functions */

var intervalID;

function incrementDivHeight(divName, maxHeight, increment, hideWhenDone){
	var div = new Element(divName);
	var currentHeight = parseInt(div.style.height.replace(/px/gi,''));
	
	if(isNaN(currentHeight)){
		currentHeight = 0;
	}
	
	if((currentHeight < maxHeight && increment > 0) || (currentHeight > maxHeight && increment < 0)){
		div.style.height = (currentHeight + increment) + 'px';
		div = null;
	}
	else{
		div = null;
		if(hideWhenDone){
			hideDiv(divName);
		}
		clearInterval(intervalID);
		intervalID = null;
	}
}

function growShrinkDiv(divName, maxHeight, increment, delay, hideWhenDone){
	if(intervalID == null){
		intervalID = setInterval('incrementDivHeight(\'' + divName + '\',' + maxHeight + ', ' + increment + ', ' + hideWhenDone + ')', delay);
	}
	else{
		alert('Please wait for current window to finish expanding!');
	}
}

function toggleGrowShrink(divName, maxHeight, minHeight, increment, delay, hideWhenDone){
	var state = getFieldValue(divName + '_State');
	
	switch(state){
		case 'COLLAPSED':
		case '':
			showDiv(divName);
			setFieldValue(divName + '_State','EXPANDING');
			growShrinkDiv(divName, maxHeight, increment, delay, false);
			setFieldValue(divName + '_State','EXPANDED');
			break;

		case 'EXPANDED':
			setFieldValue(divName + '_State','COLLAPSING');
			growShrinkDiv(divName, minHeight, (increment) * -1, delay, hideWhenDone);
			setFieldValue(divName + '_State','COLLAPSED');
			break;
			
	}
}

function checkNewsItem(){
	var errorList = '';
	
	if(Trim(getFieldValue('Title_EN')) == '' && Trim(getFieldValue('Title_FR')) == ''){
		errorList += 'You must provide a title in English and/or French.\n';
	}
	
	if(Trim(getFieldValue('Content_EN')) == '' && Trim(getFieldValue('Content_FR')) == ''){
		errorList += 'You must provide content for the news item in English and/or French.\n';
	}
	
	if(errorList.length > 0){
		alert(errorList);
		return false;
	}
	else{
		return true;
	}
}


function checkEventItem(){
	var errorList = '';
	var email = getFieldValue('EventEmail');
	
	if(Trim(getFieldValue('Title_EN')) == '' && Trim(getFieldValue('Title_FR')) == ''){
		errorList += 'You must provide a title in English and/or French.\n';
	}
	
	errorList = checkField('StartDate','NOTNULL','Start Date', errorList);
	errorList = checkField('EndDate','NOTNULL','End Date', errorList);
	errorList = checkField('Location','NOTNULL','Location', errorList);
	
	if(!validEmail(email) && Trim(email).length > 0){
		errorList += 'The email address provided isn\'t valid.\n';
	}

	if(errorList.length > 0){
		alert(errorList);
		return false;
	}
	else{
		return true;
	}
}

function checkProfile(){
	var errorList = '';
	var email = getFieldValue('ContactEmail');
	
	errorList = checkField('Name_EN','NOTNULL','Name (English)', errorList);
	errorList = checkField('Name_FR','NOTNULL','Name (French)', errorList);
	errorList = checkField('ShortName_EN','NOTNULL','Short Name (English)', errorList);
	errorList = checkField('ShortName_FR','NOTNULL','Short Name (French)', errorList);
	errorList = checkField('City','NOTNULL','City', errorList);
	errorList = checkField('Province','NOTFIRST','Province', errorList);
	
	if(!validEmail(email) && Trim(email).length > 0){
		errorList += 'The email address provided isn\'t valid.\n';
	}
	
	if(errorList.length > 0){
		alert(errorList);
		return false;
	}
	else{
		return true;
	}
}

