
function addToFavoriteDresses(iDressId)
{
	if (iDressId > 0)
	{
		$('Processing').show( );
		
		var sUrl    = "ajax/save-favorite-dress.php"; 
		var sParams = ("DressId=" + iDressId);
	
		new Ajax.Request(sUrl, { method:'post', parameters:sParams, onFailure:_showError, onSuccess:_addToFavoriteDresses });
	}
	
	else
		alert("Invalid Request.");
}

function _addToFavoriteDresses(sResponse)
{
	if (sResponse.status == 200 && sResponse.statusText == "OK")
	{
		var sParams = sResponse.responseText.split('|-|');
		
		if (sParams[0] == "OK")
		{
			var sMessage = sParams[1];
			
			$('Favorite').onclick = function( ) { return false; };
		
			$('UserMessage').innerHTML = sMessage;
			$('UserMessage').show( );
			
			setTimeout( function( ) { $('UserMessage').hide( ); }, 3000);
		}
			
		else
			_showError(sParams[1]);
			
		$('Processing').hide( );
	}
	
	else
		_showError( );
}

function addToFavoritePhotos(iPhotoId)
{
	if (iPhotoId > 0)
	{
		$('Processing').show( );
		
		var sUrl    = "ajax/save-favorite-photo.php"; 
		var sParams = ("PhotoId=" + iPhotoId);
	
		new Ajax.Request(sUrl, { method:'post', parameters:sParams, onFailure:_showError, onSuccess:_addToFavoritePhotos });
	}
	
	else
		alert("Invalid Request.");
}

function _addToFavoritePhotos(sResponse)
{
	if (sResponse.status == 200 && sResponse.statusText == "OK")
	{
		var sParams = sResponse.responseText.split('|-|');
		
		if (sParams[0] == "OK")
		{
			var sMessage = sParams[1];
			
			$('Favorite').onclick = function( ) { return false; };
		
			$('UserMessage').innerHTML = sMessage;
			$('UserMessage').show( );
			
			setTimeout( function( ) { $('UserMessage').hide( ); }, 3000);
		}
			
		else
			_showError(sParams[1]);
			
		$('Processing').hide( );
	}
	
	else
		_showError( );
}

function savePhotoRating(iPhotoId, iMemberId, iRating, iGivenRating)
{
	if (iMemberId == 0 || iGivenRating > 0)
		return;

	if (iPhotoId > 0 && iRating > 0)
	{
		$('Processing').show( );
		
		var sUrl    = "ajax/save-photo-rating.php"; 
		var sParams = ("PhotoId=" + iPhotoId + "&Rating=" + iRating);
	
		new Ajax.Request(sUrl, { method:'post', parameters:sParams, onFailure:_showError, onSuccess:_savePhotoRating });
	}
	
	else
		alert("Invalid Rating Request.");
} 

function _savePhotoRating(sResponse)
{
	if (sResponse.status == 200 && sResponse.statusText == "OK")
	{
		var sParams = sResponse.responseText.split('|-|');
		
		if (sParams[0] == "OK")
		{
			var iPhotoId = sParams[1];
			var iRating  = sParams[2];
			var sRating  = sParams[3];
			var iVotes   = sParams[4];
			var sMessage = sParams[5];
			
			$('PhotoRating').innerHTML = sRating;
			$('Votes').innerHTML       = iVotes;
			
			for (var i = 1; i <= 10; i ++)
				$('Digit' + i).className = "digitDisabled";

			for (var i = 1; i <= 10; i ++)
				$('Digit' + i).onclick = function( ) { return false; };
				
			$('Digit' + iRating).className = "digitSelected";
			
			setTimeout( function( ) { document.location = ("events.php?EventId=" + $('EventId').value); }, 1000);
			
			//$('UserMessage').innerHTML = sMessage;
			//$('UserMessage').show( );
			
			//setTimeout( function( ) { $('UserMessage').hide( ); }, 3000);
		}
			
		else
			_showError(sParams[1]);
			
		$('Processing').hide( );
	}
	
	else
		_showError( );
}

function validateUploadPhotoForm( )
{
	var objFV = new FormValidator("frmEvent");
	
	if (objFV.value("MemberId") == "")
	{
		alert("Please login first to Upload a Photo.");
		
		return false;
	}
	
	if (!objFV.validate("filePhoto", "B", "Please select your Photo for this Event."))
		return false;
		
	if (objFV.value("filePhoto") != "")
	{
		if (!checkImage(objFV.value("filePhoto")))
		{
			alert("Invalid File Format. Please select an image file of type jpg, gif or png.");

			objFV.focus("filePhoto");
			objFV.select("filePhoto");

			return false;
		}
	}
	
	return true;
}

function validateUploadDressForm( )
{
	var objFV = new FormValidator("frmEvent");
	
	if (objFV.value("MemberId") == "")
	{
		alert("Please login first to Upload a Dress.");
		
		return false;
	}
	
	if (objFV.value("Dress") == "")
	{
		if (!objFV.validate("fileDress", "B", "Please select your Dress for this Event."))
			return false;
	}
		
	if (objFV.value("fileDress") != "")
	{
		if (!checkImage(objFV.value("fileDress")))
		{
			alert("Invalid File Format. Please select an image file of type jpg, gif or png.");

			objFV.focus("fileDress");
			objFV.select("fileDress");

			return false;
		}
	}
	
	return true;
}

function validateCreateEventForm( )
{
	var objFV = new FormValidator("frmEvent");

	if (objFV.value("MemberId") == "")
	{
		alert("Please login first to Create an Event.");
		
		return false;
	}
		
	if (!objFV.validate("ddState", "B", "Please select the State."))
		return false;
		
	if (!objFV.validate("ddCity", "B", "Please select the City."))
		return false;
		
	if (!objFV.validate("txtEvent", "B", "Please enter the Event Name."))
		return false;
		
	return true;
}

function updateCitiesList(iStateId, sField)
{
	clearList($(sField));
	
	if (iStateId != "")
	{
		$(sField).disable( );
		$('Processing').show( );
		
		var sUrl    = "ajax/get-cities-list.php"; 
		var sParams = ("StateId=" + iStateId + "&Field=" + sField);
	
		new Ajax.Request(sUrl, { method:'post', parameters:sParams, onFailure:_showError, onSuccess:_updateCitiesList });
	}
	
	else
		$(sList).enable( );
}

function _updateCitiesList(sResponse)
{
	if (sResponse.status == 200 && sResponse.statusText == "OK")
	{
		var sParams = sResponse.responseText.split('|-|');
		
		if (sParams[0] == "OK")
		{
			var sField = sParams[1];

			for (var i = 2; i < sParams.length; i ++)
			{
				var sOption = sParams[i].split('|--|');
				
				$(sField).options[(i - 1)] = new Option(sOption[1], sOption[0], false, false);
			}

			$(sField).enable( );
		}
			
		else
			_showError(sParams[1]);
			
		$('Processing').hide( );
	}
	
	else
		_showError( );
}