var Software = new Array(	"Adobe",
				"Captaris RightFax",
				"Cardiff Liquid Office",
				"ECapture",
				"Filer",
				"ILINX",
				"KnowledgeLake",
				"Kofax",
				"Legato",
				"OIT",
				"ScanSource",
				"SharePoint",
				"Stellent/Oracle IBPM",
				"Stellent/Oracle UCM",
			 	"Other");
			 
var Scanners = new Array(	"Bell &amp; Howell",
				"Canon",
			 	"Contex",
			 	"Fujitsu",
			 	"Photomatrix",
			 	"Ricoh",
			 	"ScanOptics",
			 	"ScanSource",
			 	"Vidar",
			 	"Visionshape",
			 	"Other");
			 
var Hardware = new Array(	"Server",
				"Workstation",
			 	"JukeBox",
			 	"Other");

var OS = new Array(		"Windows NT4",
				"Windows 2000 Professional",
				"Windows Server 2000",
				"Windows XP",
				"Windows Server 2003", 
				"Windows Vista",
				"Windows Server 2008", 
				"Windows 7",
				"Other");

var cookiename = "IS_Support_";

//Return the list of OS as an html option list. Only adds option tags.
  function getOSList()
  {
  	var source = '<option value="">&nbsp;<\/option>';
 	for (var i = 0; i < OS.length; i++)
  	{
    		source = source + '<option value="' + OS[i] + '">' + OS[i] + '<\/option>\n';
  	}
  	return source;
 }

//Return the list of Hardware as an html option list. Only adds option tags.
  function getHardwareList()
  {
  	var source = '<option value="">&nbsp;<\/option>';
 	for (var i = 0; i < Hardware.length; i++)
  	{
    		source = source + '<option value="' + Hardware[i] + '">' + Hardware[i] + '<\/option>\n';
  	}
  	return source;
 }
 

//Return the list of Software as an html option list. Only adds option tags.
  function getSoftwareList()
  {
  	var source = '<option value="">&nbsp;<\/option>';
 	for (var i = 0; i < Software.length; i++)
  	{
    		source = source + '<option value="' + Software[i] + '">' + Software[i] + '<\/option>\n';
  	}
  	return source;
 }
 
 //Return the list of Software as an html option list. Only adds option tags.
   function getScannerList()
   {
   	var source = '<option value="">&nbsp;<\/option>';
  	for (var i = 0; i < Scanners.length; i++)
   	{
     		source = source + '<option value="' + Scanners[i] + '">' + Scanners[i] + '<\/option>\n';
   	}
   	return source;
 }

function checkForm() {
    //var objForm = document.forms[0];
    var objForm = document.TechSupport;
    //var valid = true;
    var msg = '';
    
    if (objForm.elements['Contact Name'].value.length == 0)
    {
      objForm.elements['Contact Name'].className= "SupportText-invalid";
      msg = msg + "Contact\n";
    } else {
    	objForm.elements['Contact Name'].className= "SupportText";
    }
    
    if (objForm.elements['Customer Name'].value.length == 0)
    {
      objForm.elements['Customer Name'].className= "SupportText-invalid";
      msg = msg + "Company\n";
    } else {
    	objForm.elements['Customer Name'].className= "SupportText";
    }
    
    if (objForm.elements['Contact Phone'].value.length == 0)
    {
      objForm.elements['Contact Phone'].className= "SupportText-invalid";
       msg = msg + "Phone Number\n";
    } else {
    	objForm.elements['Contact Phone'].className= "SupportText";
    }
    
    if (objForm.elements['Contact Email'].value.length == 0)
    {
      objForm.elements['Contact Email'].className= "SupportText-invalid";
       msg = msg + "Email Address\n";
    } else {
    	objForm.elements['Contact Email'].className= "SupportText";
    }
    
    if (objForm.elements['Software'].selectedIndex == 0)
    {
      objForm.elements['Software'].className= "SupportList-invalid";
       msg = msg + "Software\n";
    } else {
    	objForm.elements['Software'].className= "SupportList";
    }
    
    if (objForm.elements['Software Version'].value.length == 0)
    {
      objForm.elements['Software Version'].className= "SupportText-invalid";
       msg = msg + "Software Version\n";
    } else {
    	objForm.elements['Software Version'].className= "SupportText";
    }
    
    if (objForm.elements['OS'].selectedIndex == 0)
    {
      objForm.elements['OS'].className= "SupportList-invalid";
       msg = msg + "Operating System\n";
    } else {
    	objForm.elements['OS'].className= "SupportList";
    }
    
    if (objForm.elements['Description'].value.length == 0)
    {
      objForm.elements['Description'].className= "SupportBox-invalid";
       msg = msg + "Problem Description\n";
    } else {
    	objForm.elements['Description'].className= "SupportBox";
    }
    
    if (objForm.elements['authorization'].checked == false)
    {
      objForm.elements['authorization'].className= "invalidRadio";
       msg = msg + "Authorization (I Agree Checkbox)\n";
    } else {
    	objForm.elements['authorization'].className= "checkbox";
    }
      //var msg = "Please fill in the missing field(s)\n\n";
    if(msg != ''){
      msg = "Please fill in the missing field(s)\n\n" + msg
      alert(msg);
    } else {     
      var days = 365;
          
      if(objForm.elements['details'].checked == true) {
      	createFormCookie(days);
      } else {
      	eraseFormCookie();
      }
          	
      createCookie(cookiename+"Details", objForm.elements['details'].checked, days);
      
      objForm.submit();
    }
  }
   
  var curSoftware

  function UpdateSoftware() {
  	var objForm = document.TechSupport;
	if (curSoftware != objForm.elements['Software'].value) {
		objForm.elements['Software Version'].value = ""
		curSoftware = objForm.elements['Software'].value
	}
  }

  var curScanner

  function UpdateScanner() {
	var objForm = document.TechSupport;
	if (curScanner != objForm.elements['Scanner'].value) {
		objForm.elements['Scanner Model'].value = ""
		objForm.elements['Serial Number'].value = ""
		curScanner = objForm.elements['Scanner'].value
	}
  }

  function createFormCookie(days) {
    	
    	var objForm = document.TechSupport;
    	createCookie(cookiename+"SubmitName", objForm.elements['Submit Name'].value, days);
    	createCookie(cookiename+"ContactName", objForm.elements['Contact Name'].value, days);
    	createCookie(cookiename+"CustomerName", objForm.elements['Customer Name'].value, days);
    	createCookie(cookiename+"ContactPhone", objForm.elements['Contact Phone'].value, days);
    	createCookie(cookiename+"ContactEmail", objForm.elements['Contact Email'].value, days);
    	//createCookie(cookiename+"SupportTechnician", objForm.elements['Support Technician'].value, days);
    	createCookie(cookiename+"Software", objForm.elements['Software'].value, days);
    	createCookie(cookiename+"SoftwareVersion", objForm.elements['Software Version'].value, days);
    	//createCookie(cookiename+"Scanner", objForm.elements['Scanner'].value, days);
    	//createCookie(cookiename+"ScannerModel", objForm.elements['Scanner Model'].value, days);
    	//createCookie(cookiename+"SerialNumber", objForm.elements['Serial Number'].value, days);
    	//createCookie(cookiename+"OtherProduct", objForm.elements['Other Product'].value, days);
    	createCookie(cookiename+"OS", objForm.elements['OS'].value, days);
    	//createCookie(cookiename+"HardwareDescription", objForm.elements['Hardware Description'].value, days);
    }
    
    function readFormCookie() {
    	var objForm = document.TechSupport;
	var cookieValue;
	
	cookieValue = readCookie(cookiename+"SubmitName");
    	if (cookieValue != null) objForm.elements['Submit Name'].value = cookieValue;

	cookieValue = readCookie(cookiename+"ContactName");
    	if (cookieValue != null) objForm.elements['Contact Name'].value = cookieValue;

	cookieValue = readCookie(cookiename+"CustomerName");
    	if (cookieValue != null) objForm.elements['Customer Name'].value = cookieValue;

	cookieValue = readCookie(cookiename+"ContactPhone");
    	if (cookieValue != null) objForm.elements['Contact Phone'].value = cookieValue;

	cookieValue = readCookie(cookiename+"ContactEmail");
    	if (cookieValue != null) objForm.elements['Contact Email'].value = cookieValue;

	cookieValue = readCookie(cookiename+"Software");
    	if (cookieValue != null) objForm.elements['Software'].value = cookieValue;

	cookieValue = readCookie(cookiename+"SoftwareVersion");
    	if (cookieValue != null) objForm.elements['Software Version'].value = cookieValue;

    	cookieValue = readCookie(cookiename+"OS");
    	if (cookieValue != null) objForm.elements['OS'].value = cookieValue;
    }
    
    function eraseFormCookie() {
    	eraseCookie(cookiename+"SubmitName");
  	eraseCookie(cookiename+"ContactName");
  	eraseCookie(cookiename+"CustomerName");
  	eraseCookie(cookiename+"ContactPhone");
  	eraseCookie(cookiename+"ContactEmail");
  	//eraseCookie(cookiename+"SupportTechnician");
  	eraseCookie(cookiename+"Software");
  	eraseCookie(cookiename+"SoftwareVersion");
  	//eraseCookie(cookiename+"Scanner");
  	//eraseCookie(cookiename+"ScannerModel");
  	//eraseCookie(cookiename+"SerialNumber");
  	//eraseCookie(cookiename+"OtherProduct");
  	eraseCookie(cookiename+"OS");
    	//eraseCookie(cookiename+"HardwareDescription");
    }
    	
    
    /** Functions from http://www.quirksmode.org/js/cookies.html*/
    
    function createCookie(name, value, days) {
    	var expires="";
    	if(days) {
    		var date = new Date();
  		date.setTime(date.getTime()+(days*24*60*60*1000));
  		expires = "; expires="+date.toGMTString();
  	}
  	
  	document.cookie = name+"="+value+expires+"; path=/";
   }
   
   function readCookie(name) {
   	var nameEQ = name + "=";
   	var ca = document.cookie.split(';');
   	for(var i=0;i < ca.length;i++) {
   		var c = ca[i];
   		while (c.charAt(0)==' ') c = c.substring(1,c.length);
   		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
   	}
   	return null;
   }
   
   function eraseCookie(name) {
   	createCookie(name,"",-1);
   }
