﻿///<summary>
///   remove watermark on the zipcode field
///</summary>
function dealer_txtDealerZipOnFocus( e )
{
   if( e.value == 'ZIP/Postal code' ) 
   {
      e.value = '';
      e.style.color = '#000';
   }
}

///<summary>
///   restore watermark on the zipcode field
///</summary>
function dealer_txtDealerZipOnBlur( e )
{
   if( e == undefined )
   {
      e = window.document.getElementById( 'txtDealerZip' );
      e.style.color = '#666';
   }

   if( e.value == '' )
   {
      e.value = 'ZIP/Postal code';
      e.style.color = '#666';
   }
}

///<summary>
///   wire up enter key on zipcode field to search button click event
///</summary>
function dealer_txtDealerZipOnKeyDown( e )
{
   if( e.keyCode == 13 )
   {
      e.returnValue = false;
	   dealer_SearchNow();	
   }
}

///<summary>
///   Gather input and issue HTTP GET request for results.
///   All querystring parameter values are numeric.
///</summary>
function dealer_SearchNow()
{
	var ddlDealerProduct  = window.document.getElementById( 'ddlDealerProduct' );
	var ddlDealerResource = window.document.getElementById( 'ddlDealerResource' );
	var txtDealerZip      = window.document.getElementById( 'txtDealerZip' );
	
	window.location.href = 'results.aspx?'
	   + 'product=' + ddlDealerProduct.options[ddlDealerProduct.selectedIndex].value
	   + '&resource=' + ddlDealerResource.selectedIndex
	   + '&zip=' + txtDealerZip.value;
}

///<summary>
///   Configure resource listbox based on selected product
///</summary>
function dealer_InitResourceListBox()
{
	var ddlDealerProduct = window.document.getElementById( 'ddlDealerProduct' );
	
	switch( ddlDealerProduct.options[ddlDealerProduct.selectedIndex].value )
	{
	   case 0 :  // choose one 
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 1 :  // Sheathing
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 2 :  // I-Joists
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 3 :  // LVL
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 4 :  // Rim Board
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 5 :  // Radiant Barrier
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 6 :  // Floor System
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 7 :  // Sub-Flooring
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 8 :  // Siding & Trim
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 9 :  // CanExcel
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 10 : // ABT
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	   case 12 : // Moulding
	      dealer_ConfigureResourceListItems( '111' );
	      break;
	}
}

///<summary>
///   The argument is a positional configuration string. 
///
///     Example: '011'
///
///   Each position is either on (1) or off (0).
/// 
///      position 0 = Contractor/Installer
///      position 1 = Dealer/Lumberyard
///      position 2 = Distributor
///</summary>
function dealer_ConfigureResourceListItems( items )
{
	var ddlDealerResource = window.document.getElementById( 'ddlDealerResource' );
	var isEnabled = 1;
	
	// clear out the resource listbox
	ddlDealerResource.options.length = 0;

   // add the default 'choose one' item to the resource list box
	dealer_AddItemToResourceList( ddlDealerResource, 'Choose One', '0' );
	
   // split the argument into an array and inspect all positions
   var list = items.split( '' );
   
   if( list[ 0 ] == isEnabled ) // Contractor/Installer position
   {
//      dealer_AddItemToResourceList( ddlDealerResource, 'Contractor/Installer', '1' );
   }
   
   if( list[ 1 ] == isEnabled ) // Dealer/Lumberyard position
   {
      dealer_AddItemToResourceList( ddlDealerResource, 'Dealer/Lumberyard', '2' );
   }
   
   if( list[ 2 ] == isEnabled ) // Distributor position
   {
      dealer_AddItemToResourceList( ddlDealerResource, 'Distributor', '3' );
   }
}

///<summary>
///   Helper function: Adds an item to an HTML select element
///</summary
function dealer_AddItemToResourceList( e, optionText, optionValue )
{
	var optionElement = window.document.createElement( 'option' );
   e.appendChild( optionElement );
   optionElement.innerHTML = optionText;
   optionElement.value = optionValue;
}

///<summary>
///   Helper function: Enables multiple functions to be wired up to body OnLoad() event
///</summary>
function dealer_AddLoadEvent(func) 
{ 
   var oldonload = window.onload;

   if (typeof window.onload != 'function') 
   { 
      window.onload = func; 
   } 
   else 
   {
      window.onload = 
         function() 
         { 
            if (oldonload) 
            { 
               oldonload();
            }

            func();
         } 
   } 
} 

///<summary>
///   Main line code section.
///   Wire up two functions to the body OnLoad() event.
///</summary>
dealer_AddLoadEvent( dealer_InitResourceListBox );
dealer_AddLoadEvent( dealer_txtDealerZipOnBlur );
