// ddPromotions.js

// newFunction
function clearList(vlist)
{
//	alert(vlist.options.length);
	if (vlist && vlist.options.length > 1) {
		   for (i=vlist.options.length-1; i>= 1; i--) 
		   {
		      vlist.options[i] = null;				
		   }		
	}
}

function hide( pID )
{
	if (document.getElementById( pID )){
			document.getElementById( pID ).style.display = "none";
		}
}

function show( pID )
{
	if (document.getElementById( pID )){
		document.getElementById( pID ).style.display = "block";
		}
	}
     
function initdd(vfrm, ddStructVals) 
{
   
   // get form fields
   var ddStruct = eval('document.'+ vfrm.name + '.structure');
   var ddDesc1 = eval('document.'+ vfrm.name + '.desc1');
   var ddDesc2 = eval('document.'+ vfrm.name + '.desc2');
   var ddDesc3 = eval('document.'+ vfrm.name + '.desc2');
   
   // clear the drop down fields
   clearList(ddStruct);
   clearList(ddDesc1);
   clearList(ddDesc2); 
   clearList(ddDesc3);  
   hide('ssdesc1'); 
   hide('ssdesc2'); 
   hide('ssdesc3'); 
         
   // populate the drop down values
  	   addToList(0, "", "", "", ddStruct, ddStructVals);  
 }

function sets(vfrm, ddDesc1Vals) {
   // get form fields
   var ddStruct = eval('document.'+ vfrm.name + '.structure');
   var ddDesc1 = eval('document.'+ vfrm.name + '.desc1');
   var ddDesc2 = eval('document.'+ vfrm.name + '.desc2');
   var ddDesc3 = eval('document.'+ vfrm.name + '.desc3');
   
   // get selected values
   var selVals = ddStruct.value;
      
   // clear the drop down fields
   clearList(ddDesc1);
   clearList(ddDesc2);  
   clearList(ddDesc3); 
   
   // set drop down 1
   addToList(1, selVals, "", "", ddDesc1, ddDesc1Vals);      			    
    
   
   // clear field 3
   if(ddDesc1.options.length > 1) show('ssdesc1');
   else hide('ssdesc1'); 
   hide('ssdesc2');  
   hide('ssdesc3');  
}
//add for ITSR 1058 Release2 added to persist second drop down for how did you find us field
function newSets(vfrm, newdesc1,  ddDesc1Vals) {
	   // get form fields
	   var ddStruct = eval('document.'+ vfrm.name + '.structure');
	   var ddDesc1 = eval('document.'+ vfrm.name + '.desc1');
	   var ddDesc2 = eval('document.'+ vfrm.name + '.desc2');
	   var ddDesc3 = eval('document.'+ vfrm.name + '.desc3');
	   
	   // get selected values
	   var selVals = ddStruct.value;
	      
	   // clear the drop down fields
	   clearList(ddDesc1);
	   clearList(ddDesc2);  
	   clearList(ddDesc3); 
	   
	   // set drop down 1
	   newAddToList(1, ddStruct.value, "", "", newdesc1,ddDesc1, ddDesc1Vals);      			    
	    
	   
	   // clear field 3
	   if(newdesc1.length > 1) show('ssdesc1');
	   else hide('ssdesc1'); 
	   hide('ssdesc2');  
	   hide('ssdesc3');  
	}
function setd1(vfrm, ddDesc2Vals) {
   // get form fields
   var ddStruct = eval('document.'+ vfrm.name + '.structure');
   var ddDesc1 = eval('document.'+ vfrm.name + '.desc1');
   var ddDesc2 = eval('document.'+ vfrm.name + '.desc2');
   var ddDesc3 = eval('document.'+ vfrm.name + '.desc3');
   
   // get selected values
   var selVals = ddStruct.value;
   var selVald1 = ddDesc1.value;
    
   // clear the drop down fields
   clearList(ddDesc2);  
   clearList(ddDesc3);  
      
   // for each item in drop down list
   addToList(2, selVals, selVald1, "", ddDesc2, ddDesc2Vals);      			              
     
   // determine if should show drop down 3
   if(ddDesc2.options.length > 1) show('ssdesc2');
   else hide('ssdesc2');       
   hide('ssdesc3');  
}

function setd2(vfrm, ddDesc3Vals) {
   // get form fields
   var ddStruct = eval('document.'+ vfrm.name + '.structure');
   var ddDesc1 = eval('document.'+ vfrm.name + '.desc1');
   var ddDesc2 = eval('document.'+ vfrm.name + '.desc2');
   var ddDesc3 = eval('document.'+ vfrm.name + '.desc3');
   
   // get selected values
   var selVals = ddStruct.value;
   var selVald1 = ddDesc1.value;
   var selVald2 = ddDesc2.value;
   // clear the drop down fields
   clearList(ddDesc3);  
      
   // for each item in drop down list
   addToList(3, selVals, selVald1, selVald2, ddDesc3, ddDesc3Vals);      			              

   
   // determine if should show drop down 3
   if(ddDesc3.options.length > 1) show('ssdesc3');
   else hide('ssdesc3');        
}

function addToList(level, selvals, selval1, selval2, fld, dtls)
{
 if (document.forms[0].initKey.value =="") {
   for(y=0; y < dtls.length; y++)
   {
      var addFld = true;
      var temp = dtls[y];
      if(level >= 1)
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         temp = temp.substring(ndx+1);
         if(selvals != vVal) addFld = false; 
      }
   
      if(level >= 2 && true == addFld)
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         temp = temp.substring(ndx+1);
         if(selval1 != vVal) addFld = false; 
      }
   
      if(level >= 3 && true == addFld)
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         temp = temp.substring(ndx+1);
         if(selval2 != vVal) addFld = false; 
      }
     
      if(true == addFld)
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         vText = temp.substring(ndx+1);
         fld.options[fld.options.length]=new Option (vText, vVal);
      }   
   }
 }
}
//add for ITSR 1058 Release2 added to persist second drop down for how did you find us field
function newAddToList(level, selvals, selval1, selval2, newdesc1,fld, dtls)
{
   for(y=0; y < dtls.length; y++)
   {
      var addFld = true;
      var temp = dtls[y];
      if(level > 1)
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         temp = temp.substring(ndx+1);
         if(selvals != vVal) addFld = false; 
      }
   
      if(level >= 2 && true == addFld)
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         temp = temp.substring(ndx+1);
         if(selval1 != vVal) addFld = false; 
      }
   
      if(level >= 3 && true == addFld)
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         temp = temp.substring(ndx+1);
         if(selval2 != vVal) addFld = false; 
      }
     
      if(true == addFld )
      {
         ndx = temp.indexOf('|');
         vVal = temp.substring(0, ndx);
         temp2 = temp.substring(ndx+1);
         ndx2 = temp2.indexOf('|');
         secVal = temp2.substring(0,ndx2);
         vText = temp2.substring(ndx2+1);
         fld.options[fld.options.length]=new Option (vText, secVal);
      }   
   }
}

function isValidInfo(vfrm)
{
   // get form fields

   var ddStruct = eval('document.'+ vfrm.name + '.structure');
   var ddDesc1 = eval('document.'+ vfrm.name + '.desc1');
   var ddDesc2 = eval('document.'+ vfrm.name + '.desc2');
   var ddDesc3 = eval('document.'+ vfrm.name + '.desc3');
   var status=true;
   
      if(ddStruct.options.length > 1 && ddStruct.value == '0')    
      {
         status=false;
         ddStruct.focus();
      }
      if(ddDesc1.options.length > 1 && ddDesc1.value == '0')    
      {
         status=false;
         ddDesc1.focus();
      }
      if(ddDesc2.options.length > 1 && ddDesc2.value == '0')    
      {
         status=false;
         ddDesc2.focus();
      }
      if(ddDesc3.options.length > 1 && ddDesc3.value == '0')    
      {
         status=false;
         ddDesc3.focus();
      }

   return(status);
}



function Trim(TRIM_VALUE)
{
   if(TRIM_VALUE.length < 1)
   {
      return"";
   }
   TRIM_VALUE = RTrim(TRIM_VALUE);
   TRIM_VALUE = LTrim(TRIM_VALUE);
   return TRIM_VALUE;
 
} //End Function

function RTrim(VALUE)
{
   var w_space = String.fromCharCode(32);
   var v_length = VALUE.length;
   var strTemp = "";
   if(v_length < 0)
   {
      return"";
   }
   var iTemp = v_length -1;

   while(iTemp > -1)
   {
      if(VALUE.charAt(iTemp) != w_space)
      {
         strTemp = VALUE.substring(0,iTemp +1);
         break;
      }
      iTemp = iTemp-1;
   } //End While
   return strTemp;
} //End Function

function LTrim(VALUE)
{
   var w_space = String.fromCharCode(32);
   if(v_length < 1)
   {
      return"";
   }
   var v_length = VALUE.length;
   var strTemp = "";
   var iTemp = 0;

   while(iTemp < v_length)
   {
      if(VALUE.charAt(iTemp) != w_space)
      {
         strTemp = VALUE.substring(iTemp,v_length);
         break;
      }
      iTemp = iTemp + 1;
   } //End While
   return strTemp;
} //End Function
