//-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//	Title			: Validation Methods
//	Project			: Golf Mike Alpha
//	Date Created	: 07 - May - 2008
//  Last Updated	: 07 - Jan - 2009
//	Programmer		: Damian Duarte
//	Brief			: Java Script Validation Methods
//-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

//alert("Javascript - Validation Methods Class Loaded ...");

//-----------------------------
// - Process File Function - ||
//-----------------------------
function processFile(dynamicArea1In, url1In, params1In, fileIDIn)
{
	if(validateFile(fileIDIn))
	{ 
	  if(fileIDIn == "newFile")
	  {
		// Display File Uploading DIV ...
		document.getElementById('div_UserPrompt').style.display='block';
		queuePage('div_UserPrompt', 'securepagelink.php', '&pageRequest=upload_file');

		// Submit Form ...
	  	document.newFileForm.submit();
	  }
	  else
	  {
	  	//var fileReplacement = document.getElementById(fileIDIn + "_fileAssoc").value;
	  	var fileDescription = document.getElementById(fileIDIn + "_fileDesc").value;
	  	var fileEnabled = document.getElementById(fileIDIn + "_fileEnabled").value;
	  	var subFolderID = document.getElementById(fileIDIn + "_folderID").value;

	  	params1In = params1In + "&fileDescription=" + fileDescription + "&fileEnabled=" + fileEnabled+ "&subFolderID=" + subFolderID;
	  
	  	// Call to save data in Schema.
		queuePage(dynamicArea1In, url1In, params1In);

		// Display File Uploading DIV ...
		document.getElementById('div_UserPrompt').style.display='block';
        queuePage('div_UserPrompt', 'securepagelink.php', '&pageRequest=update_file');
	  }
	}
}

//------------------------------
// - Validate File Function - ||
//------------------------------
function validateFile(fileIDIn)
{
	var errorString = "";
	var errorFlag = 0;

	if(fileIDIn == "newFile")
	{
		if (document.getElementById(fileIDIn+'_filePath').value == "")
		{
			errorString += "You must select a file to upload.\n";
			if(errorFlag == 0)
				errorFlag = 1;
		}		
	}
	
	if (document.getElementById(fileIDIn+'_fileDesc').value == "")
	{
		errorString += "The File Description should not be blank.\n";
		if(errorFlag == 0)
			errorFlag = 2;
	}

	if(errorFlag > 0)
	{
		switch(errorFlag)
		{
			case 1 :
				document.getElementById(fileIDIn+'_filePath').focus();
			break;
			case 2 :
				document.getElementById(fileIDIn+'_fileDesc').focus();
			break;
		}

		alert(errorString);
		return false;
	}
	else
	{
		return true;
	}
}

//-----------------------------
// - Process User Function - ||
//-----------------------------
function processUser(dynamicArea1In, url1In, params1In, userIDIn)
{
	if(validateUser(userIDIn))
	{
	  var userCompanyName = document.getElementById(userIDIn + "_userCompanyName").value;
	  var userName = document.getElementById(userIDIn + "_userName").value;
	  var userRole = document.getElementById(userIDIn + "_userRole").value;
	  var userEnabled = document.getElementById(userIDIn + "_userEnabled").value;

	  params1In = params1In + "&userCompanyName=" + userCompanyName + "&userName=" + userName + "&userRole=" + userRole + "&userEnabled=" + userEnabled;
	  
	  //alert(dynamicArea1In + ", " + url1In + ", " + params1In);
	  
	  // Call to save data in Schema.
	  response = queuePage(dynamicArea1In, url1In, params1In);
	  
	  if(userIDIn != "newUser")
	  {
	  	alert("The User record for " + userName + " has been updated.");
	  }
	  else
	  {
	  	alert("The User record for " + userName + " has been created.");
	  	// Reload DIV ...
      	response = queuePage("div_main", "securepagelink.php", "&pageRequest=users");      	
	  }
	}
}

//------------------------------
// - Validate User Function - ||
//------------------------------
function validateUser(userIDIn)
{
	var errorString = "";
	var errorFlag = 0;

	if (document.getElementById(userIDIn+'_userCompanyName').value == "")
	{
		errorString += "The Company Name cannot be blank.\n";
		if(errorFlag == 0)
			errorFlag = 1;
	}
	if (document.getElementById(userIDIn+'_userName').value == "")
	{
		errorString += "The User Name cannot be blank.\n";
		if(errorFlag == 0)
			errorFlag = 2;
	}
	if(errorFlag > 0)
	{
		switch(errorFlag)
		{
			case 1 :
				document.getElementById(userIDIn+'_userCompanyName').focus();
			break;
			case 2 :
				document.getElementById(userIDIn+'_userName').focus();
			break;
		}

		alert(errorString);
		return false;
	}
	else
	{
		return true;
	}
}

//---------------------------------
// - Process Password Function - ||
//---------------------------------
function processPassword(dynamicArea1In, url1In, params1In)
{
	if(validatePassword())
	{
      var adminPassword = document.getElementById('admin_password').value;
      var newPassword1 = document.getElementById('new_password1').value;
      var newPassword2 = document.getElementById('new_password2').value;

	  params1In = params1In + "&adminPassword=" + adminPassword + "&newPassword1=" + newPassword1 + "&newPassword2=" + newPassword2;

	  // Call to save data in Schema.
	  response = queuePage(dynamicArea1In, url1In, params1In);

      //alert("Your Password has been Changed.");

      // Reload Entire Page.
      //document.location.reload();
	}
}

//----------------------------------
// - Validate Password Function - ||
//----------------------------------
function validatePassword()
{
	var errorString = "";
	var errorFlag = 0;

	if (document.getElementById('admin_password').value == "")
	{
		errorString += "You Need to enter the Admin Password.\n";
		if(errorFlag == 0)
			errorFlag = 1;
	}
	if (document.getElementById('new_password1').value == "")
	{
		errorString += "You must enter a new password.\n";
		if(errorFlag == 0)
			errorFlag = 2;
	}
	if (document.getElementById('new_password2').value == "")
	{
		errorString += "You must confirm the new password.\n";
		if(errorFlag == 0)
			errorFlag = 3;
	}	
	if (document.getElementById('new_password1').value != document.getElementById('new_password2').value)
	{
		errorString += "Your passwords do not match.\n";
		if(errorFlag == 0)
			errorFlag = 2;
	}
	if(errorFlag > 0)
	{
		switch(errorFlag)
		{
			case 1 :
				document.getElementById('admin_password').focus();
			break;
			case 2 :
				document.getElementById('new_password1').focus();
			break;
			case 3 :
				document.getElementById('new_password2').focus();
			break;
		}

		alert(errorString);
		return false;
	}
	else
	{
		return true;
	}
}

//-------------------------------------
// - Process Site Section Function - ||
//-------------------------------------
function processSiteSectionText(dynamicArea1In, url1In, params1In)
{
	if(validateSiteSectionText())
	{
	  var siteSectionID = document.getElementById("siteSectionID").value;
	  var siteSectionText = document.getElementById("siteSectionText").value;

	  params1In = params1In + "&siteSectionID=" + siteSectionID + "&siteSectionText=" + siteSectionText;
	  
	  //alert(dynamicArea1In + ", " + url1In + ", " + params1In);
	  
	  // Call to save data in Schema.
	  response = queuePage(dynamicArea1In, url1In, params1In);
      queuePage('div_main', 'securepagelink.php', '&pageRequest=sitefiles');
	}
}

//--------------------------------------
// - Validate Site Section Function - ||
//--------------------------------------
function validateSiteSectionText()
{
	var errorString = "";
	var errorFlag = 0;

	if (document.getElementById('div_siteSectionText').value == "")
	{
		errorString += "Are you sure you want to leave the site section text blank?\n";
		if(errorFlag == 0)
			errorFlag = 1;
	}
	if(errorFlag > 0)
	{
		document.getElementById('div_siteSectionText').focus();

		if(confirm(errorString))
			return true
		else
			return false;
	}
	else
	{
		return true;
	}
}

//---------------------------------------------
// - Process Site Section Folders Function - ||
//---------------------------------------------
function processSiteSectionFolder(dynamicArea1In, url1In, params1In, folderIDIn)
{
	if(validateSiteSectionFolder(folderIDIn))
	{
	  var subFolderName = document.getElementById(folderIDIn+"_folderName").value;
	  document.getElementById(folderIDIn+"_folderName").value = "";

	  params1In = params1In + "&subFolderName=" + subFolderName;
	  
	  //alert(dynamicArea1In + ", " + url1In + ", " + params1In);
	  
	  // Call to save data in Schema.
	  response = queuePage(dynamicArea1In, url1In, params1In);
      //queuePage('div_main', 'securepagelink.php', '&pageRequest=sitefiles');
	}
}

//----------------------------------------------
// - Validate Site Section Folders Function - ||
//----------------------------------------------
function validateSiteSectionFolder(folderIDIn)
{
	var errorString = "";
	var errorFlag = 0;

	if (document.getElementById(folderIDIn+"_folderName").value == "")
	{
		errorString += "You cannot have a blank folder name.\n";
		if(errorFlag == 0)
			errorFlag = 1;
	}
	if(errorFlag > 0)
	{
		document.getElementById(folderIDIn+"_folderName").focus();

		alert(errorString);
		return false;
	}
	else
	{
		return true;
	}
}
