function stopRKey(evt) {
  var evt = (evt) ? evt : ((event) ? event : null);
  var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
  if ((evt.keyCode == 13) && (node.type=="text"))  {return false;}
}



var numberToFixed = 
(function() {
  return toFixedString;
  
  function toFixedString(n, digits) {
    var unsigned = toUnsignedString(Math.abs(n), digits);
    return (n < 0 ? "-" : "") + unsigned;
  }
  
  function toUnsignedString(n, digits) {
    var t, s = Math.round(n * Math.pow(10, digits)) + "",
        start, end;
    if (/\D/.test(s)) { 
      return "" + n;
    }
    s = padLeft(s, 1 + digits, "0");
    start = s.substring(0, t = (s.length - digits));
    end = s.substring(t);
    if(end) { 
      end = "." + end;
    }
    return start + end; // avoid "0."
  }
  /** 
   * @param {string} input: input value converted to string.
   * @param {number} size: desired length of output.
   * @param {string} ch: single character to prefix to s.
   */
  function padLeft(input, size, ch) {
    var s = input + "";
    while(s.length < size) {
      s = ch + s;
    }
    return s;
  }
})();
 

function highlightBG(obj)
{ obj.style.backgroundColor='#CFE6FA'; }  
 
 

function removeSpaces(string) {
return string.split(' ').join('');
} 


  
function displayPartyNotes(data)
{   
 $('party_notes_div').fade('out');	
 $('party_notes_div').innerHTML=data;   
 (function(){$('party_notes_div').fade('in')}).delay(500);
}        
  
function displayContractNotes(data)
{
 $('DZContractDiv').fade('out');	
 $('DZContractDiv').innerHTML=data;   
 (function(){$('DZContractDiv').fade('in')}).delay(500);	
} 
 

function updatedRate(data)
{ ;	}

function updatedNote(data)
{ displayNotes(data); }
     
function updatedContractNote(data)
{ displayCNotes(data); }
	  
  
function displayUpdatedRate(data)
{ $('rateformDetailsDiv').innerHTML=data; }
      

function displayContractData(data)
{
 var dataArr = data.split("||");
   
 if (dataArr.length >= 3)
 {
  if (dataArr[1] =='cancelAndReenter')
  {  
   var new_uid = dataArr[2].trim();	
   window.location="view_contract_details.php?uid="+new_uid+"&updateNote=1"; 
  }     
  else if(dataArr[1] =='deleteAndReenterNewUid')
  {           
   var new_uid = dataArr[2].trim();	
   window.location="view_contract_details.php?uid="+new_uid+"&updateNote=1"; 	
  } 
  else
  { $('DZContractDiv').innerHTML=data; }
 }
 else
 { $('DZContractDiv').innerHTML=data; } 
}
 
 
function displayContractDetails(data)
{ $('contractDetailsDiv').innerHTML=data;  }
 
 
function displayImportedCommissionStructure(data)
{
 var qStr = 'action=reloadCommissionStructure&dealer='+data;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayNewCommissionStructureAndCloseImportDataDiv);
}     
 
 
 
function displayQuickSearchPartyResults(data)
{ 
 $div = $('quickSearchPartyResultsDiv'); 	 
 $div.innerHTML=data;
 $div.setStyle('display','block'); 
}	
  
 
function displayPartyInfo(data)
{   
 $('dealerSignupDiv').innerHTML=data; 
 $('dealerSignupDiv').fade('in');  
} 

function displayBasicPartyInfo(data)
{ 
 document.getElementById('partyBasicInfo').innerHTML=data; 
 (function(){ $('updateMsg').fade('out') }).delay(5000);
}  

function displayPartyStatus(data)
{
 document.getElementById('partyStatus').innerHTML=data;
 (function(){ $('statusUpdateMsg').fade('out') }).delay(5000);	
}  

function displayLicenseStatus(data)
{
 document.getElementById('licenseStatus').innerHTML=data;
 (function(){ $('statusUpdateMsg').fade('out') }).delay(5000);	
}  
 

function displayReinsuredStatus(data)
{    
 document.getElementById('reinsuredStatus').innerHTML=data;
 (function(){ $('reinsuredUpdateMsg').fade('out') }).delay(5000);	
}   




function displayPartySearchResults(data)
{
 $('DZPartySearchResultDiv').innerHTML=data;	
 $('DZPartySearchResultDiv').fade('hide'); 
 $('DZPartySearchResultDiv').fade('in');	
}
 
function displayDealerSearchResults(data)
{
 $('DZDealerSearchResultDiv').innerHTML=data;	
 $('DZDealerSearchResultDiv').fade('hide'); 
 $('DZDealerSearchResultDiv').fade('in');  
} 
 
 
function displayNewRoleInfo(data)
{
 $('addNewRoleDivHdr').setStyle('display','block'); 	
 $('addNewRoleDivHdr').innerHTML=data;   
 (function(){ $('addNewRoleDivHdr').fade('out') }).delay(5000);	
}


function displayRateformDetails(data)
{ 
 $('rateformDetailsDiv').innerHTML=data;	
}   

function displayUpdateTermForm(data)
{
 $('rateformDetailsDiv').innerHTML=data;	
}
 
function displayUpdateRates(data)
{ 
 $('rateformDetailsDiv').innerHTML=data;  	
}


   



function displayDZPartyEditBasicInfo(partyId)
{
 var qStr = 'id='+partyId+'&action=editBasicInfo';
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayBasicPartyInfo); 
} 





function saveDZPartyBasicInfo(partyId)
{     
 var qStr = 'id='+partyId; 
 qStr += '&action=saveBasicInfo';                
 qStr += '&fname='+$('fname').value;
 qStr += '&lname='+$('lname').value;
 qStr += '&company='+$('company').value;
 qStr += '&addr1='+$('addr1').value;
 qStr += '&addr2='+$('addr2').value;
 qStr += '&city='+$('city').value;
 qStr += '&state='+$('state').value;
 qStr += '&zip='+$('zip').value;
 qStr += '&phone='+$('phone').value;
 qStr += '&email='+$('email').value;
 qStr += '&affgrp='+$('affgrp').value;
 qStr += '&role='+$('role').value;
    
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayBasicPartyInfo);     
} 
   

function changeApprovalStatus(partyId)
{ 
 var newStatus = $('approved').value;
   
 if (parseInt(newStatus) !=1 && parseInt(newStatus) !=0)
 { alert('Please select a valid approval status.'); }
 else
 {      
  var qStr = 'id='+partyId+'&action=updateApprovalStatus&status='+newStatus;	 
  postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayPartyStatus); 
 } 	
}
 


function updateLicenseStatus(partyId,status)
{
 var qStr = 'id='+partyId+'&action=updateLicenseStatus&status='+status;	 
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayLicenseStatus);	
}  
 
 
 
function updateReinsuredStatus(partyId,status)
{
 var qStr = 'id='+partyId+'&action=updateReinsuredStatus&status='+status;	 
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayReinsuredStatus);	
}   



function alertIfFalse(idName,stringName,value)
{ 
 if ($chk(value))
 { return 1;}
 else
 {  
  	stringName = stringName.capitalize();
 	alert(stringName+' Missing. Please enter '+stringName);
 	$(idName).focus(); 
 	return ''; 
 } 	
} 



function checkName(company,fname,lname)
{
 if (!$chk(company))
 { if (!$chk(fname) && !$chk(lname)) 
   { alert('If company name is empty, you must enter both first name and last name'); }
 }
} 
 


function signupDZDealer()
{
 var company = $('company').value.trim(); 
 var fname = $('fname').value.trim();
 var lname = $('lname').value.trim();
  
 checkName(company,fname,lname); 

 var addr1 = $('addr1').value.trim();
 if (!$chk(alertIfFalse('addr1','street address',addr1))) {return ;}
 
 var city =  $('city').value.trim();
 if (!$chk(alertIfFalse('city','city',city))) {return ;}  
 
 var state = $('state').value.trim();
 if (!$chk(alertIfFalse('state','state',state))) {return ;}
 
 var zip =   $('zip').value.trim(); 
 if (!$chk(alertIfFalse('zip','zip',zip))) {return ;}

 var qStr = 'action=signupDealer&company='+company+'&fname='+fname+'&lname='+lname+'&addr1='+addr1+'&city='+city+'&state='+state+'&zip='+zip;
 
 var addr2 = $('addr2').value.trim();
 if (addr2.length > 0) {qStr += '&addr2='+addr2;}
  
 var phone = $('phone').value.trim();  
 if (phone.length > 0) {qStr += '&phone='+phone;}
 
 var email = $('email').value.trim();
 if (email.length > 0) {qStr += '&email='+email;} 

 $('dealerSignupDiv').fade('out');  
    
 (function(){postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayPartyInfo);}).delay(500); 
   
}


function signupDZParty()
{
 var company = $('company').value.trim(); 
 var fname = $('fname').value.trim();
 var lname = $('lname').value.trim();
  
 checkName(company,fname,lname); 
 
 var addr1 = $('addr1').value.trim();
 if (!$chk(alertIfFalse('addr1','street address',addr1))) {return ;}
 
 var city =  $('city').value.trim();
 if (!$chk(alertIfFalse('city','city',city))) {return ;}  
 
 var state = $('state').value.trim();
 if (!$chk(alertIfFalse('state','state',state))) {return ;}
 
 var zip =   $('zip').value.trim(); 
 if (!$chk(alertIfFalse('zip','zip',zip))) {return ;}
 
 var role= $('role').value.trim();
 if (!$chk(alertIfFalse('role','role',role))) {return ;}
 
 var qStr = 'action=signupParty&company='+company+'&fname='+fname+'&lname='+lname+'&addr1='+addr1+'&city='+city+'&state='+state+'&zip='+zip+'&role='+role;
  
 if ($('new_role') && $('new_role').value.trim().length > 0)
 { qStr += '&newRole=1';}
        
 var addr2 = $('addr2').value.trim();
 if (addr2.length > 0) {qStr += '&addr2='+addr2;}
  
 var phone = $('phone').value.trim(); 
 if (phone.length > 0) {qStr += '&phone='+phone;}
 
 var email = $('email').value.trim();
 if (email.length > 0) {qStr += '&email='+email;} 
 
 $('dealerSignupDiv').fade('out');  

 
 (function(){postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayPartyInfo);}).delay(500); 
}

  

function addNewRole()
{
 var newRole = $('new_role').value.trim();

 if (newRole.length > 0)
 { qStr='action=addNewRole&new_role='+newRole;	}
 
 $('new_role').value = '';
 
 postDataReturnText('../../admin/dzProduct/ajax_add_new_role.php',qStr,displayNewRoleInfo);
}
 

function searchDealer()
{
 var qStr = searchParty('dealer');
 postDataReturnText('../../admin/dzProduct/ajax_search_party.php',qStr,displayDealerSearchResults);	   
}  
 


// used to import dealer from dealers table to dzparties table
function searchDealerToImportToDG()
{
 var qStr = searchParty('dealerToImportToDG');
 postDataReturnText('../../admin/dzProduct/ajax_search_party.php',qStr,displayDealerSearchResults);	
}
 
// used to import commission structure from another dealer
function searchDealerToImportData()
{  
 var qStr = searchParty('dealer');
 qStr+= '&toImportData=1';   
 postDataReturnText('../../admin/dzProduct/ajax_search_party.php',qStr,displayDealerSearchResults);	   
} 
 
  
function searchAllRoles()
{
 var party = $('role').value;
 party  = party == '' ? 'all' : party; 	
 var qStr = searchParty(party);
 
 postDataReturnText('../../admin/dzProduct/ajax_search_party.php',qStr,displayPartySearchResults);	   
}   
    
function searchParty(party)
{ 
 if ($('id'))
 { var id = $('id').value.length > 0 ? $('id').value.trim() : ''; }

 if ($('code'))
 { var code = $('code').value.length > 0 ? $('code').value.trim() : ''; }
  
 var fname = $('fname') && $('fname').value.length > 0 ? $('fname').value.trim() : ''; 	
 var lname = $('lname') && $('lname').value.length > 0 ? $('lname').value.trim() : ''; 	
 
 if ($('name'))
 { var name = $('name').value.length > 0 ? $('name').value.trim() : ''; } 
 
 if ($('company'))
 { var company = $('company').value.length > 0 ? $('company').value.trim() : ''; } 
 
 var city = $('city').value.length > 0 ? $('city').value.trim() : '';	
 var state = $('state').value.length > 0 ? $('state').value.trim() : '';
 var zip = $('zip').value.length > 0 ? $('zip').value.trim() : '';	
 var affgrp = $('affgrp').value.trim();    
      
 var qStr = 'search='+party;
 qStr += id && id.length > 0 ? '&id='+id : '';
 qStr += code && code.length > 0 ? '&code='+code : '';
 qStr += fname.length > 0 ? '&fname='+fname : '';
 qStr += lname.length > 0 ? '&lname='+lname : '';
 qStr += name && name.length > 0 ? '&name='+name : '';
 qStr += company && company.length > 0 ? '&company='+company : '';
 qStr += city.length > 0 ? '&city='+city : '';
 qStr += state.length > 0 ? '&state='+state : '';
 qStr += zip.length > 0 ? '&zip='+zip : '';
 qStr += '&affgrp='+affgrp;  
 if (party != 'all' && party != 'dealerToImportToDG')
 {qStr += '&role='+party;}  
  
 return qStr;
} 


function displayNewRoleEntryField()
{ 
 $('role').value='';	 
 $('selectRoleLabel').setStyle('display','none');
 $('selectRoleDropDown').setStyle('display','none'); 	  
 $('newRoleLinkSpan').setStyle('display','none'); 
 $('newRoleFieldDiv').setStyle('display','block');	  
}


function hideNewRoleEntryField()
{ 
 $('new_role').value='';	 
 $('selectRoleLabel').setStyle('display','block');
 $('selectRoleDropDown').setStyle('display','block'); 	  
 $('newRoleLinkSpan').setStyle('display','block'); 
 $('newRoleFieldDiv').setStyle('display','none');	  
} 


function quickSearchParty() 
{
 var searchInput = $('new_party_quick_name').value;
 
 if (searchInput.length > 3)	 
 { executeQuickSearchParty(searchInput); } 
 if (searchInput.length == 0)
 { resetQuickSearchRole(); }
}
     

function executeQuickSearchParty(searchInput)
{     
 var affgrp = $('affgrp').value;   
 qStr = 'quickSearch=1&type=party&searchInput='+searchInput+'&affgrp='+affgrp;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayQuickSearchPartyResults);  	
} 

function resetQuickSearchRole()        
{ $('quickSearchPartyResult').innerHTML = '';  }   
 

function resetQSAdd()
{
 $('new_party_quick_name').value=''; 	
}
 
function hideQSAdd()
{
 resetQSAdd(); 	
 $('quickSearchPartyResultsDiv').setStyle('display','none');	
}


function hideAddNewPartyDiv()
{ 
 slideOut('addNewPartyToDealerDiv');
 $('addPartyBtnSpan').fade('in');
 resetQSAdd();
 hideQSAdd(); 
 $('addNewPartyToDealerDiv').setStyle('display','none');
}          
    
    
function showAddNewPartyDiv() 
{   
 $('addNewPartyToDealerDiv').setStyle('display','block'); 	 
 slideIn('addNewPartyToDealerDiv');	  
 $('addPartyBtnSpan').fade('out');
}   
 
 
function showAddNewVariablePartyDiv()
{
 $('add_variable_payee_div').setStyle('display','block'); 	 
 slideIn('add_variable_payee_div');	  
 //$('addPartyBtnSpan').fade('out');
} 


function resetAddVariablePartyForm()
{ 
 $('vp_lname').value='';
 $('vp_fname').value='';
 $('vp_addr1').value='';
 $('vp_addr2').value='';
 $('vp_city').value='';
 $('vp_state').value='';
 $('vp_zip').value='';
 if ($('vp_w9')) {$('vp_w9').value='';}   
}      





function showImportCommissionStructureDiv()
{   
 //$('relationId').value=relationId;	
 if ($('importCommissionStructureDiv').getStyle('display')=='block'); 	
  hideAddNewPartyDiv();
 fadeOutDiv('editCommissionStructureBodyWrapper','0.35');	
 
 (function(){$('importCommissionStructureDiv').setStyle('display','block')}).delay(600);
}      


function hideImportCommissionStructureDiv() 
{
 $('importCommissionStructureDiv').setStyle('display','none');
 (function(){fadeInDiv('editCommissionStructureBodyWrapper');}).delay(300);	
} 

 
function showEditRelationDetailsDiv(relationId,dealerId,partyId)
{   
 $('relationId').value=relationId;	
 if ($('addNewPartyToDealerDiv').getStyle('display')=='block'); 	
 hideAddNewPartyDiv();
 fadeOutDiv('editCommissionStructureBodyWrapper','0.35');	
  
 var qStr = 'action=displayEditRelationsForm&dealerId='+dealerId+'&partyId='+partyId; 
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayEditRelationDetailsForm);
}     

 
function displayEditRelationDetailsForm(data)
{
 (function(){    
 $('editRelationDetailsDiv').innerHTML=data;	
 $('editRelationDetailsDiv').setStyle('display','block');
 }).delay(600);
}
    

function hideEditRelationDetailsDiv()
{
 $('editRelationDetailsDiv').setStyle('display','none');
 (function(){fadeInDiv('editCommissionStructureBodyWrapper');}).delay(300);	
}

  
function updateRelationDetails(dealerId)
{  
 var relationId = $('relationId').value;
 var type = $('type').value;
 var payee = $('payee').value; 	
 var role = $('party_role').value;
 var exception = '';  
 
 if (type.trim().length < 1)
 {
  alert('Please select transaction type.');
  return;	
 }
 
 if (payee.trim().length < 1)
 {
  alert('Please select payee/invoicee.');
  return;	
 }
 
 if ((role.trim() == 'marketing_fund') && (type=='Payment'))
 { 
   var answer = confirm("Are you sure transaction type is payment? Usually transaction type for this category is invoice. Click 'OK' is you want to continue, 'Cancel' if you want to change your selection."); 	
       
   if (answer)
   { exception = "Exception added while setting up commission structure. Marketing fund setup as payment, instead of invoice.";  }
   else 
   {return;}
 } 
 
 
 if (type=='Invoice' && (payee != dealerId)) 
 {
  alert("ERROR: Invoicee must be the dealer. Please select dealer as the invoicee from the drop down and continue."); 	
  return;	
 }  
 
 var qStr = 'action=updateRelationDetails&relationId='+relationId+'&type='+type+'&payee='+payee+'&dealer='+dealerId;
  
 if (exception.trim().length >= 1)
 { qStr+= '&exception='+exception; }
       
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,updateRelationDetailsResults); 
}     
 

function updatePayeeInvoiceDropdDown(type,dealer,party) 
{ 
 var qStr = 'action=updatePayeeInvoiceeDropDown&type='+type+'&partyId='+party+'&dealerId='+dealer;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,updatePayeeInvoiceDropdDownResults);
}                  


function updatePayeeInvoiceDropdDownResults(data)
{
 $('payeeInvoiceDropdDownElem').innerHTML=data;	
} 
 

   
 
function updateRelationDetailsResults(data)
{
 if (data)
 {      
  dataArr = data.split('||');
  hideEditRelationDetailsDiv();
  var qStr = 'action=reloadCommissionStructure&dealer='+data;
  postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayNewCommissionStructure);
 }
 else
 { alert ('Error Updating Record'); }
}
        

function addRelation(dealer,party)
{    
 if (parseInt(party) > 0)
 {	
  var qStr = 'action=addNewRelation&dealer='+dealer+'&party='+party;
  postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayAddRelationResults);
 }   
}
 

function deleteRelation(dealer,party)
{   
 if (parseInt(party) > 0)
 {	
 var qStr = 'action=deleteRelation&dealer='+dealer+'&party='+party;
 
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayDeleteRelationResults);
 }   
} 

 

function displayAddRelationResults(data)
{
 var dataArr = data.split("||");  	
 $('relationResultDiv').fade('hide');  	
 $('relationResultDiv').innerHTML=dataArr[0];	 
 $('relationResultDiv').fade('in');      
 (function(){ $('relationResultDiv').fade('out') }).delay(4000);  
  
 if (parseInt(dataArr[1]) > 0)
 { 
  resetQSAdd();	
  $('quickSearchPartyResultsDiv').setStyle('display','none');  	
  showEditRelationDetailsDiv(dataArr[2],dataArr[1],dataArr[3]);     
  // var qStr = 'action=reloadCommissionStructure&dealer='+dataArr[1];
  // postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayNewCommissionStructure);
 }  
}               
  
function displayDeleteRelationResults(data)
{
 var dataArr = data.split("||");  	
 $('relationResultDiv').fade('hide');  	
 $('relationResultDiv').innerHTML=dataArr[0];	  
 $('relationResultDiv').fade('in');       
 (function(){ $('relationResultDiv').fade('out') }).delay(4000); 
  
 if (parseInt(dataArr[1]) > 0)
 {
  var qStr = 'action=reloadCommissionStructure&dealer='+dataArr[1];
  postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayNewCommissionStructure);
 }
}  
 

function displayNewCommissionStructureAndCloseImportDataDiv(data)
{
 $('importCommissionStructureDiv').fade('out');
 (function() {$('commStructDiv').innerHTML=data;}).delay(700);
 (function() {$('commStructDiv').fade('in');}).delay(700);  
 (function(){fadeInDiv('editCommissionStructureBodyWrapper');}).delay(800);
} 
 

function displayNewCommissionStructure(data)
{
 var dataArr = data.split("~");	
 $('commStructDiv').fade('.35');	
 (function() {$('commStructDiv').innerHTML=dataArr[0];}).delay(700);
 (function() {$('commStructDiv').fade('in');}).delay(700);     	
 
 
 $('variable_payee_div').fade('.35');	
 (function() {$('variable_payee_div').innerHTML=dataArr[1];}).delay(700);
 (function() {$('variable_payee_div').fade('in');}).delay(700);    
  
}     



function dragRelationDetailsDiv()
{
 var dragContainer = $('editCommissionStructureBodyWrapper');
 var dragHandle = $('editRelationDetailsDivHandle');
 var dragElement = $('editRelationDetailsDiv');
 
 var dragDiv = new Drag.Move(dragElement , {
 	    container: dragContainer
 		
 	});
 	
} 



 
function addVariablePayee()
{ 
 var fname  = $('vp_fname').get('value');
 var lname  = $('vp_lname').get('value');
 var addr1  = $('vp_addr1').get('value');
 var addr2  = $('vp_addr2').get('value');
 var city   = $('vp_city').get('value');
 var state  = $('vp_state').get('value');
 var zip    = $('vp_zip').get('value');
 var w9	    = $('vp_w9').get('value');
 var dealer = $('vp_dealer').get('value');
 var error=0;
 
 if (fname.trim().length < 1)
 {
  alert ("Please enter first name.");
  $('vp_fname').focus();
  return;	
 }
 if (lname.trim().length < 1)
 {
  alert ("Please enter last name.");
  $('vp_lname').focus();
  return;	
 }
 if (addr1.trim().length < 1)
 { 
  alert ("Please enter street address.");
  $('vp_addr1').focus();
  return; 	
 }
 if (city.trim().length < 1)
 {
  alert ("Please enter City.");
  $('vp_city').focus();
  return;	
 }
 if (state.trim().length < 1)
 {
  alert ("Please enter State.");
  $('vp_state').focus();
  return;	
 }
 if (zip.trim().length < 1)
 {
  alert ("Please enter Zip.");
  $('vp_zip').focus();
  return;	
 }
      
 resetAddVariablePartyForm(); 
 slideOut('add_variable_payee_div');
 $('addPartyBtnSpan').fade('in');
 $('add_variable_payee_div').fade('out');
 
 var  qStr = 'action=addNewVariablePayee&fname='+fname+'&lname='+lname+'&addr1='+addr1+'&addr2='+addr2+'&city='+city+'&state='+state+'&zip='+zip+'&w9='+w9+'&dealer='+dealer;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayAddvariablePayeeDetails);
}



 
function showAddNewAcctRepDiv()
{
 $('add_account_rep_div').setStyle('display','block'); 	 
 slideIn('add_account_rep_div');	  
 //$('addPartyBtnSpan').fade('out');
} 


function updateAcctRep(dealer)
{
 var acctrep = $('acctrep').value.trim();

 var  qStr = 'action=updateAcctRep&acctrep='+acctrep+'&dealer='+dealer;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayAddAcctRepDetails);
}
    


function addAcctRep(dealer) 
{
 var fname  = $('vp_fname').get('value');
 var lname  = $('vp_lname').get('value');
 var addr1  = $('vp_addr1').get('value');
 var addr2  = $('vp_addr2').get('value');
 var city   = $('vp_city').get('value');
 var state  = $('vp_state').get('value');
 var zip    = $('vp_zip').get('value');
   
 if (fname.trim().length < 1)
 {
  alert ("Please enter first name.");
  $('vp_fname').focus();
  return;	
 }
 if (lname.trim().length < 1)
 {
  alert ("Please enter last name.");
  $('vp_lname').focus();
  return;	 
 }
 
 resetAddVariablePartyForm();
   
 var  qStr = 'action=addNewAcctRep&fname='+fname+'&lname='+lname+'&addr1='+addr1+'&addr2='+addr2+'&city='+city+'&state='+state+'&zip='+zip+'&dealer='+dealer;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayAddAcctRepDetails);

}
 



function deleteVariablePayee(dealer,party)
{ 
 var  qStr = 'action=deleteVariablePayee&dealer='+dealer+'&party='+party;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayAddvariablePayeeDetails); 	
}
    



function displayAddvariablePayeeDetails(data)
{
 $('variable_payee_div').fade('.35');	 
 (function() {$('variable_payee_div').innerHTML=data;}).delay(700);
 (function() {$('variable_payee_div').fade('in');}).delay(700);     
} 


 
function displayAddAcctRepDetails(data)
{
 $('acctRepSpan').innerHTML=data;
 $('add_account_rep_div').fade('.35');	 
 (function(){ $('acct_rep_update_msg').fade('out') }).delay(5000); 
} 
             
     






function slideToggle(divId)
{
 var slideDiv = $(divId);
 var  slideVar = new Fx.Slide(slideDiv);
 slideVar.slideOut();
}

function slideOut(divId)
{
 var slideDiv = $(divId);
 slideDiv.fade('out');
 var  slideVar = new Fx.Slide(slideDiv,{duration:800});
 (function(){slideVar.slideOut();}).delay(450); 
}   

function slideIn(divId)
{ 
 var slideDiv = $(divId);  
 var  slideVar = new Fx.Slide(slideDiv,{duration:800});
 slideVar.slideIn();
   
 (function(){slideDiv.fade('in');}).delay(450);
   
}

function fadeOutDiv(divId,fadeValue)
{
  $(divId).fade(fadeValue);	
}   

function fadeInDiv(divId)
{   
  $(divId).fade('in');	
}

 
function updateMinMaxTerm()
{
 var maxTerm = $('maxterm').value;
 var minTerm = $('minterm').value;
 if (isNaN(parseInt(maxTerm))) 
 {    
   alert('Please select a valid maximum term'); 	
   return;
 }
 if (isNaN(parseInt(minTerm))) 
 {  
   alert('Please select a valid minimum term');  	
   return;
 }
 
 if (parseInt(maxTerm) < parseInt(minTerm))
 { 
  alert('Maximum term must be greater than or equal to minimum term');  	
  return;	 
 }
       
  var qStr = 'action=updateRateFormTerms&maxterm='+maxTerm+'&minterm='+minTerm;	
  postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,displayRateformDetails); 
}   





function formatCommissionValue(obj)
{
 obj.style.backgroundColor='#ffffff'; 	
	 
 var curValue = obj.value.trim();	
 var newValue ;
 	 
 if (curValue.indexOf('.') == -1)
 { 
  var pos =curValue.length-2;
  str1 = curValue.substring(0,pos);
  str2 = curValue.substring(pos,obj.value.length);
  obj.value=str1+'.'+str2; 
 }
 
  curValue = obj.value.trim();

  if (curValue.length == 2 && curValue.indexOf('.') > -1)
  { obj.value= curValue+'0';  }  
  
  if (isNaN(parseFloat(curValue)))
 { obj.value='0.00'; }   
   
   
}


// update dealer cost whenever a commission value is changed on rateform
 
function updateDealerCost(term,obj) 
{ 
 var dealer_cost=0.00;
 var commValue;
 var curValue = obj.value.trim();	
 var newValue ;
 
 if (curValue.length < 3)
 {
  if (curValue.indexOf('.') == -1) 	
  { obj.value='.'+curValue; }
 }
 else
 {    	  
  curValue = obj.value.trim().replace('.',''); 	
  var pos =curValue.length-2;  
  str1 = curValue.substring(0,pos); 
  str2 = curValue.substring(pos,obj.value.length);
  if (str1+'.'+str2 != obj.value)
  {obj.value=str1+'.'+str2;}  
 }    
     
 var  val_arr = $('rateformDetailsDiv').getElements('input[name$='+term+']');  
 // array of all commission inputs for a certain term 
 
 var lastCommIndex = val_arr.length-2;   // index to stop calculating dealer cost at
 
 for (i=0;i<=lastCommIndex;i++)
 {  
  if (isNaN(val_arr[i].value) || val_arr[i].value.trim().length < 1 )
  { commValue =  0.00; }
  else
  { commValue = parseFloat(val_arr[i].value); }
    dealer_cost += commValue;
 }    
   
 var dealerCostInputId = 'dealerCost_'+term;
 $(dealerCostInputId).value = dealer_cost;
 
 dealer_cost = dealer_cost.toString(); 
 
 if (dealer_cost.indexOf('.') == -1)
 { 
  $(dealerCostInputId).value=dealer_cost+'.00'; 
 } 
   
  if (dealer_cost.length == 2 && dealer_cost.indexOf('.') > -1)
  { $(dealerCostInputId).value= dealer_cost+'0';  }
  
  if (isNaN(parseFloat(dealer_cost)))
 { $(dealerCostInputId).value='0.00'; }   
 
}
  


function importCommissionStructure(importFrom,exportTo)
{ 
 var qStr ='action=importCommissionStructure&importFrom='+importFrom+'&exportTo='+exportTo;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayImportedCommissionStructure); 
}   
  
 
 
function updateRateform()
{
 if ($('rate_eff_month').value.trim().length < 1)
 {
  alert("Please select a valid effective date(month missing).");
  return;	
 }
 if ($('rate_eff_day').value.trim().length < 1)
 { 
  alert("Please select a valid effective date(day missing).");
  return;	
 }	
 if ($('rate_eff_year').value.trim().length < 1)
 { 
  alert("Please select a valid effective date(year missing).");
  return;	
 }
 	
 if ($('rate_exp_month').value.trim().length < 1)
 {
  alert("Please select a valid expiration date(month missing).");
  return;	
 }
 if ($('rate_exp_day').value.trim().length < 1)
 { 
  alert("Please select a valid expiration date(day missing).");
  return;	
 }	
 if ($('rate_exp_year').value.trim().length < 1)
 { 
  alert("Please select a valid expiration date(year missing).");
  return;	
 }
 	     
 var qStr='action=updateRateform';	 
 var elem = document.getElementById('update_rateform_form').elements;	
 
 for(var i=0; i < elem.length; i++)
 { qStr += '&'+elem[i].id+'='+elem[i].value; } 
 
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,displayUpdateRates); 
     
}

  

function UpdateTermForm()
{
 qStr = 'action=updateTerm';	
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,displayUpdateTermForm); 	
}



function checkDuplicateContractOnBlur()
{  
 uid = removeSpaces($('contractNum').value.toUpperCase());	
 $('contractNum').value = uid; 
      
 if (uid.trim().length > 0)
 { 
  var qStr = 'action=checkDuplicate&uid='+uid;
  postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,checkContractonBlurResults);	
 }    
}  

 
function checkContractonBlurResults(data)
{
 if (data > 0)
 { 
  alert ('Contract number already exists. Duplicate contract numbers are not allowed.');
  $('contractNum').focus();
  return; 	    
 }       
}   

function checkContractPrefixProductMismatchResults(data)
{
 if ((data < 1) && ($('override_invalid_prefix').value == 0) )
 {                          
  var username = $('username').value;
  var uid      = removeSpaces($('contractNum').value.toUpperCase());
  var product  = removeSpaces($('prdcdPrefix').value);
  var affgrp   = removeSpaces($('affgrp').value);
  var message  = "<span class='orngbold13'>Contract("+uid+") prefix does not match product.</span> <br /> <br /> <input type='radio' name='invalid_contract_prefix' id='override_invalid_contract_prefix' /> &nbsp;&nbsp; Override invalid contract prefix only<br /> <br />  <input type='radio' name='invalid_contract_prefix' id='override_and_add_invalid_contract_prefix' /> &nbsp;&nbsp; Override invalid contract prefix and add as a valid prefix <br /> <br />   <input type='button' value='Override' onclick=\"overrideInvalidPrefix('"+username+"','"+uid+"','"+product+"','"+affgrp+"');\" /> ";	
               	                                       
  $('contract_entry_message').style.display='block';
  $('contract_entry_message').innerHTML = message;	
 }   
 else
 { 
  checkContractEntryFinal();	
 }
}  


 
function overrideInvalidPrefix(username,uid,product,affgrp)
{         
 var selected = '';
 var action = '';
     
 if ($('override_invalid_contract_prefix').checked)
 {   
  selected = 'override_only';
  action   = 'overrideInvalidContract'; 
 }        
 else if ($('override_and_add_invalid_contract_prefix').checked)
 {        
  selected = 'override_and_add'; 
  action   = 'AddPrefixToSystem';
 }
     
 var qStr = "action="+action+"&uid="+uid+'&product='+product+'&affgrp='+affgrp+'&username='+username;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,invalidProductOverride); 
}                
 
 
    
 
 
function invalidProductOverride(data)
{   
 $('override_invalid_prefix').value=1;                
 $('contract_note').value = $('contract_note').value.trim()+"<br />"+data; 	
 $('contract_note_div').innerHTML = data;
 $('contract_entry_message').style.display='none';	
}    
 
 
 
function checkContractEntry()
{
 checkDuplicateContract();	
}


function checkDuplicateContract()
{
 uid = removeSpaces($('contractNum').value);	
     
 var qStr = 'action=checkDuplicate&uid='+uid;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,checkInvalidContractPrefix);	
}
   


function checkInvalidContractPrefix(data)
{
 if (data > 0)
 {
  alert ('Contract Number already exists. Duplicate contract numbers are not allowed.');
  return; 	   
 } 
 
 var uid     = removeSpaces($('contractNum').value.toUpperCase());
 $('contractNum').value = uid;
 var vin     = removeSpaces($('vin').value);
 var affgrp  = removeSpaces($('affgrp').value);
 var product = removeSpaces($('prdcdPrefix').value);
 var qStr = "action=checkProductPrefixMisMatch&uid="+uid+'&vin='+vin+'&affgrp='+affgrp+'&product='+product;
 
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,checkContractPrefixProductMismatchResults); 	
}





function checkContractEntryFinal()
{
 var uid = removeSpaces(document.getElementById('contractNum').value);
 var fname = document.getElementById('fname').value.toUpperCase();
 var lname = document.getElementById('lname').value.toUpperCase();
 var addr1 = document.getElementById('addr1').value.toUpperCase();
 var city = document.getElementById('city').value.toUpperCase();
 var state = document.getElementById('state').value;
 var zip = document.getElementById('zip').value.trim();
 var phone1 = document.getElementById('phone').value;
 var email = document.getElementById('email').value;
 var vin = document.getElementById('vin').value.toUpperCase(); 
 var make = document.getElementById('make').value;      
 var model = document.getElementById('model').value;
 var myear = document.getElementById('myear').value;
 var termmo =  document.getElementById('term').value;
 var day =  document.getElementById('day').value;
 var month =  document.getElementById('month').value;
 var year =  document.getElementById('year').value;
 var contract_price = document.getElementById('price').value; 
 var actcd = document.getElementById('actcd').value; 
 var affgrp = document.getElementById('affgrp').value;  
 if (document.getElementById('prdcdPrefix'))
 { var prdcdPrefix = document.getElementById('prdcdPrefix').value; }
  else if (document.getElementById('productForRate'))
 { var prdcdPrefix = document.getElementById('productForRate').value; }  
 else ;    
 var retailcd = document.getElementById('retailcd').value;
 var rate_date =  document.getElementById('rate_date').value;
 var billing_day =  document.getElementById('billing_day').value;
 var billing_month =  document.getElementById('billing_month').value;
 var billing_year =  document.getElementById('billing_year').value;
 var contract_note = $('contract_note').value.trim(); 
 var status = $('status').value.trim();
 
 var zip_dash_pos = zip.indexOf('-');
    
 if ( zip_dash_pos >= 0)
 {
  if (zip_dash_pos == 6)	    
  { zip = zip.substr(0,5); }
  else
  {
   zip = zip.replace('-',' ');	
  }
 } 
  
 var d = new Date();  
 
 var currYear = d.getFullYear();
 var currMonth = d.getMonth()+1;  
 var currDay = d.getDate();
     
 // if year is greater than correct year, show error msg
 if (year > currYear)
 {
  alert("Future date is not allowed. Please select correct year.");
  $('year').focus();
  return;	
 }             // if year is fine, check month
 else 
 {
  if ((year == currYear) && (month > currMonth))
  {
   alert("Future date is not allowed. Please select correct month.");
   $('month').focus();
   return;	
  }           // if year and month are fine, check date
  else
  {
   if ((year == currYear) && (month == currMonth) && (day > currDay))
   {    
    alert("Future date is not allowed. Please select correct date.");
    $('day').focus();
    return;	
   } 	
  }
 }

 
 if (!checkModelYearRestriction(affgrp,myear,currYear))
 {
  return;	
 }
 
 
 if (document.getElementById('variable_payee')) 
 { var soldBy = document.getElementById('variable_payee').value; }
      
 if (uid.length < 5)  
 {
  alert('Please enter a valid contract number.');
  document.getElementById('contractNum').focus();
  return;	 
 }
 if (fname.length < 1)
 {
  alert('Please enter first name.');
  document.getElementById('fname').focus();
  return;	 
 }  
 
 if (lname.length < 2)
 {
  alert('Please enter last name.');
  document.getElementById('lname').focus();
  return;	 
 }
   
 if (addr1.length < 5)
 {
  alert('Please enter a valid address.');
  document.getElementById('addr1').focus();
  return;	 
 }
 
 if (city.length < 2)
 {
  alert('Please enter a valid city.');
  document.getElementById('city').focus();
  return;	 
 }
 
 if (state.length < 2)
 {
  alert('Please select a state');
  document.getElementById('state').focus();
  return;	 
 }
 
 if (zip.length < 5)
 {
  alert('Please enter a valid zip.');
  document.getElementById('zip').focus();
  return;	 
 } 
 
 if (vin.length != 17)
 {
  alert('Please enter a valid VIN.');
  document.getElementById('vin').focus();
  return;	 
 }   	
 
 if (make.length < 2)
 {
  alert('Please enter a valid vehicle make.');
  document.getElementById('make').focus();
  return;	 
 }  
 
 if (model.length < 2)
 {
  alert('Please enter a valid vehicle model.');
  document.getElementById('model').focus();
  return;	 
 }   
 
 if (myear.length != 4)
 {               
  alert('Please enter a valid vehicle year.');
  document.getElementById('myear').focus();
  return; 	 
 }       
 
 if (termmo.length < 1) 
 {
  alert('Please enter a valid contract term.');
  document.getElementById('term').focus();
  return;	 
 }  	 
	
 if (day.length < 1)
 {
  alert('Please enter a valid effective date(day).');
  document.getElementById('day').focus();
  return;	 
 }  
 if (month.length < 1)
 {
  alert('Please enter a valid effective date(month).');
  document.getElementById('month').focus();
  return;	 
 }
 
             
 if (year.length < 1)
 {
  alert('Please enter a valid effective date(year).');
  document.getElementById('year').focus();
  return;	 
 }  
 
 
 if (billing_day.length < 1)
 {
  alert('Please enter a valid billing date(day).');
  document.getElementById('billing_day').focus();
  return;	 
 }  
 if (billing_month.length < 1)
 {
  alert('Please enter a valid billing date(month).');
  document.getElementById('billing_month').focus();
  return;	 
 }
 

 if (billing_year.length < 1)
 {
  alert('Please enter a valid billing date(year).');
  document.getElementById('billing_year').focus();
  return;	 
 }  
 
  
 if (contract_price.length < 1)
 {
  alert('Please enter a valid contract purchase price.');
  document.getElementById('price').focus();
  return;	 
 }

 if (actcd.length < 1)
 {
  alert('Error retreiving dealer code');
  return;	
 }
 
 if (affgrp.length < 1)
 {
  alert('Error retreiving product');
  return;	
 } 
   
 if (status.length < 1)
 {
  alert('Please select a status');
  return ;	
 } 
 

 if (prdcdPrefix.length < 2)
 { 
  alert('Please select proper product.');
  document.getElementById('prdcdPrefix').focus();
  return;	 
 }    
 
 if (retailcd.length < 1)
 { 
  alert('Please indicate whether the contract is on a new or used vehicle.');
  document.getElementById('retailcd').focus();
  return;	 
 } 
   
 if (document.getElementById('variable_payee') && soldBy.length < 1)       
 {             
  alert('Please select who sold the contract.');
  document.getElementById('variable_payee').focus();
  return;	
 }
                 
 day = day < 10 ? '0'+day : day;  
 month = month < 10 ? '0'+month : month;
  
 billing_day = billing_day < 10 ? '0'+billing_day : billing_day;  
 billing_month = billing_month < 10 ? '0'+billing_month : billing_month;
  
 var date_sale = year+'-'+month+'-'+day;
  
 if (!isDateValid(year,month,day))
 { 
  alert("Sale date ("+month+"/"+day+"/"+year+") is not valid. Please check date and try again."); 
  return;   
 }
  
 endContractEntryTime(); 
  
 var qStr = 'action=enterContract&uid='+uid+'&fname='+fname+'&lname='+lname+'&addr1='+addr1+'&city='+city+'&state='+state+'&zip='+zip+'&email='+email+'&phone1='+phone1+'&vin='+vin+'&make='+make+'&model='+model+'&myear='+myear+'&termmo='+termmo+'&date_sale='+date_sale+'&contract_price='+contract_price+'&prdcdPrefix='+prdcdPrefix+'&retailcd='+retailcd+'&actcd='+actcd+'&affgrp='+affgrp+'&rate_date='+rate_date+'&billing_month='+billing_month+'&billing_day='+billing_day+'&billing_year='+billing_year+'&contract_note='+contract_note+'&status='+status;
             
 if (readCookie('contractEntryTime'))
 {
  var contractEntryTime = readCookie('contractEntryTime');     
  qStr += '&contractEntryTime='+contractEntryTime;
 }
         
 if (soldBy) 
 { qStr += '&soldBy='+soldBy; }
               
 $('contractDetailsDiv').innerHTML="<br /> <br /><span class='orngbold13'>Processing Contract. Please Wait.</span> <br /> <br />"; 
 
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);
}             
 

function checkModelYearRestriction(affgrp,myear,currYear)
{
if ((affgrp !='auna') && (myear < currYear-5))
 {  
  var myearAnswer =  confirm("This vehicle is too old for this product. A vehicle cannot be more than 5 years old. Would you like to override this restriction and continue anyway? ");
   if (myearAnswer) 
   {
   	$('contract_note').value = contract_note + " Vehicle model year restriction overridden by user. ";
   	return 1;
    }  
   else
   { return 0; }
 }
 else
 {
  return 1;	
 }
} 
  
    

 

function continueToContractEntry(reEnterDeletedContract)
{     
 if ($('productForRate'))	
 { var prod = $('productForRate').value.trim(); }
 else
 { var prod = $('prdcdPrefix').value.trim(); }
  
 var rate_month = $('rate_month').value.trim();
 var rate_day = $('rate_day').value.trim(); 
 var rate_year = $('rate_year').value.trim();
    
    
 if (prod.length < 1)
 { 
  alert('Please select a valid product from the list.'); 
  return;
 }
 else if(rate_month.length < 1)
 {
  alert('Please select a date. (month missing)');   
  $('rate_month').focus();
  return;	
 }
 else if(rate_day.length < 1)
 {
  alert('Please select a date. (day missing)'); 
  $('rate_day').focus();
  return;	
 }  
 else if(rate_year.length < 1)
 {
  alert('Please select a date. (year missing)'); 
  $('rate_year').focus();
  return;	
 }
 else if($('confirm_dealer').checked == false)
 {
  alert('Please confirm dealer');
  $('confirm_dealer').focus();
  return;	  
 }
 else    
 {
 	
 var d = new Date();
 
 var currYear = d.getFullYear();
 var currMonth = d.getMonth()+1;
 var currDay = d.getDate(); 
   
 // if year is greater than correct year, show error msg
 if (rate_year > currYear)
 {
  alert("Future date is not allowed. Please select correct year.");
  $('rate_year').focus();
  return;	
 }             // if year is fine, check month
 else 
 {
  if ((rate_year == currYear) && (rate_month > currMonth))
  { 
   alert("Future date is not allowed. Please select correct month.");
   $('rate_month').focus();
   return;	
  }           // if year and month are fine, check date
  else
  {        
   if ((rate_year == currYear) && (rate_month == currMonth) && (rate_day > currDay))
   {
    alert("Future date is not allowed. Please select correct date.");
    $('rate_day').focus();
    return;	
   } 	   
  }
 }
  	
 var rate_date = rate_year+'-'+rate_month+'-'+rate_day;	
 printContractEntryForm(rate_date,prod,reEnterDeletedContract);
 } 	      
}    
   


function printContractEntryForm(rate_date,product,reEnterDeletedContract)
{ 
 $('contractDetailsDiv').innerHTML="<div class='orngbold13'>Loading Contract Entry Form. Please Wait...</div> <br /> <br />";	
	     
 var qStr = 'action=printContractEntryForm&rate_date='+rate_date+'&product='+product; 
   
 if (reEnterDeletedContract.trim().length > 0)
 {
  qStr += '&reEnterDeletedContract='+reEnterDeletedContract;  	 
 }   
 
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);	
}



function showContractEntryForm()  
{ 
 startContractEntryTime();	
 $('ExpandedContractMenu').innerHTML=''; 
 	
 var qStr = 'action=loadContractEntryForm';
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);	
}
  

    
function initiateReEnterContractForm()
{      
 disableContractEntryTime();   	
 var qStr = 'action=initiateReEnterContractForm';
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);		
}    



function printReEnterContractForm()
{ 
 var uid = $('re_enter_uid').value;	
 var qStr = 'action=printReEnterContractForm&uid='+uid;   
 $('contractDetailsDiv').innerHTML="<div class='orngbold13'>Retrieving Deleted Contract Data. Please wait...</div> <br /> <br />";	
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);		
}      



function showEditContractForm()
{
 var qStr = 'action=editContractForm';
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);	
} 



function searchContract()
{
 $('DZContractDiv').innerHTML = "<div class='orngbold13'>Searching for contracts. Please Wait.</div>";	
	 
 var qStr='action=searchContract';	 
 var elem = $('search_contract_form').elements;	
 
 for(var i=0; i < elem.length; i++)
 {
  if (elem[i].value.length > 0)	
  {qStr += '&'+elem[i].id+'='+elem[i].value;} 	
 } 
  
  postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractData); 
} 

 
function editContract(old_uid)
{            
 var uid = removeSpaces($('uid').value.toUpperCase());
 var fname = removeSpaces($('fname').value.toUpperCase());
 var lname = removeSpaces($('lname').value.toUpperCase());
 var addr1 = removeSpaces($('addr1').value.toUpperCase());
 var city = removeSpaces($('city').value.toUpperCase());
 var state = removeSpaces($('state').value.toUpperCase());
 var zip = removeSpaces($('zip').value.toUpperCase());
 var vin = removeSpaces($('vin').value.toUpperCase().toUpperCase()); 
 var make = removeSpaces($('make').value.toUpperCase());      
 var model = removeSpaces($('model').value.toUpperCase());
 var myear = removeSpaces($('myear').value.toUpperCase());
 var termmo =  removeSpaces($('termmo').value.toUpperCase());
 var date_sale_day =  removeSpaces($('date_sale_day').value.toUpperCase());
 var date_sale_month =  removeSpaces($('date_sale_month').value.toUpperCase());
 var date_sale_year =  removeSpaces($('date_sale_year').value.toUpperCase());
 var prdcdPrefix = removeSpaces($('prdcdPrefix').value.toUpperCase()); 
 var retailcd = removeSpaces($('retailcd').value.toUpperCase());
 var billing_day =  removeSpaces($('billing_day').value.toUpperCase());
 var billing_month =  removeSpaces($('billing_month').value.toUpperCase());
 var billing_year =  removeSpaces($('billing_year').value.toUpperCase());	
     
 if (uid.length < 3)
 {
  alert('Please enter a valid contract number.');
  $('contractNum').focus();
  return;	
 }
 
 if (fname.length < 1)
 {
  alert('Please enter a valid first name.');
  $('fname').focus();
  return;	
 }
 
 if (lname.length < 1)
 {
  alert('Please enter a valid last name.');
  $('lname').focus();
  return;	
 }
 
 if (city.length < 2)
 {
  alert('Please enter a valid city.');
  $('city').focus();
  return;	
 }
 
 if (state.length < 2)
 {
  alert('Please enter a valid state.');
  $('state').focus();
  return;	
 }
 
 if (zip.length < 5)
 {
  alert('Please enter a valid zip.');
  $('zip').focus();
  return;	
 }
 
 if (vin.length != 17)
 {
  alert('Please enter a valid 17 digit VIN.');
  $('vin').focus();
  return;	
 }
 
 if (myear.length < 4)
 {
  alert('Please enter a valid vehicle year.');
  $('myear').focus();
  return;	
 } 
 
 if (make.length < 1)
 {
  alert('Please enter a valid vehicle make.');
  $('make').focus();
  return;	
 }
 
 if (model.length < 1)
 {
  alert('Please enter a valid vehicle model.');
  $('model').focus();
  return;	
 }
 
 if (retailcd.length < 1)
 { 
  alert('Please enter a valid retail code.');
  $('retailcd').focus();
  return;	 	
 } 
  
 if (termmo.length < 1)
 {
  alert('Please enter a valid contract term.');
  $('termmo').focus();
  return;	
 }
 
 if (prdcdPrefix.length < 1)
 {
  alert('Please enter a valid product.');
  $('prdcdPrefix').focus();
  return;	
 }
 
 if (date_sale_day.length < 1)
 {
  alert('Please enter a sale date (date).');
  $('date_sale_day').focus();
  return;	
 }
 
 if (date_sale_month.length < 1)
 {
  alert('Please enter a valid sale date (month).');
  $('date_sale_month').focus();
  return;	
 }
 
 if (date_sale_year.length < 1)
 {
  alert('Please enter a valid sale date (year).');
  $('date_sale_year').focus();
  return;	 
 } 
 
 
 if (billing_day.length < 1)
 {
  alert('Please enter a valid billing period (date).');
  $('billing_day').focus();
  return;	
 }
 
 if (billing_month.length < 1)
 {
  alert('Please enter a valid billing period (month).');
  $('billing_month').focus();
  return;	
 }
 
 if (billing_year.length < 1)
 {
  alert('Please enter a valid billing period (year).');
  $('billing_year').focus();
  return;	 
 } 
  
      
 var qStr='action=editContract&uid='+uid+'&old_uid='+old_uid;
 var elem = $('edit_contract_form').elements;	
     
 for(var i=0; i < elem.length; i++)
 { qStr += '&'+elem[i].id+'='+elem[i].value; }
         
 $('DZContractDiv').innerHTML="<span class='orngbold16'>Updating Contract. Please Wait...</div> <br /> <br />"; 
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractData);
}            
 



function showDealerContractSearchForm(actcd)
{        
 $('contractDetailsDiv').innerHTML="<div class='orngbold13'>Looking for contracts. Please wait...</div> <br /> <br />";	
 var qStr = 'action=dealerContractSearch&actcd='+actcd;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);	 
} 


function dealerContractSearchByUidOrVin(actcd,affgrp)
{        
 $('contractDetailsDiv').innerHTML="<div class='orngbold13'>Looking for contracts. Please wait...</div> <br /> <br />";	
 var input = $('dealerContractSearch').value.trim();
 var qStr = 'action=dealerContractSearchByUidOrVin&actcd='+actcd+'&input='+input+'&affgrp='+affgrp;
   
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);	 
} 
 


function showDealerContractByStatus(actcd,status)
{        
 $('contractDetailsDiv').innerHTML="<div class='orngbold13'>Looking for contracts. Please wait...</div> <br /> <br />";	
 var qStr = 'action=dealerContractSearch&actcd='+actcd+'&status='+status;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);	 
}  





function getDealerContractsLimitedByBillingPeriod(actcd,limitedByDays)
{    
 $('contractDetailsDiv').innerHTML="<div class='orngbold13'>Looking for contracts. Please wait...</div> <br /> <br />";	
 var qStr = 'action=dealerContractSearch&actcd='+actcd+'&limitedByDays='+limitedByDays;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractDetails);	 
}   






  

function transferContract()
{
 var qStr='action=transferContract';
 var elem = document.getElementById('edit_contract_form').elements;	
 
 for(var i=0; i < elem.length; i++)
 {
  if (elem[i].value.length > 0)	
  {qStr += '&'+elem[i].id+'='+elem[i].value;} 	
 } 
  
 $('DZContractDiv').innerHTML="<span class='orngbold13'>Updating Contract. Please Wait...</div> <br /> <br />"; 
   
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractData);
} 


function quickSearchContract(affgrp)
{         
 var searchInput = document.getElementById('quickContract').value;
 if (searchInput.length > 3)	
 { executeQuickSearchContract(searchInput,affgrp); }
 if (searchInput.length == 0)
 { resetQuickSearchContract(); }
}
 
function resetQuickSearchContract()
{ document.getElementById('quickSearchResult').innerHTML = '';	} 
 

function executeQuickSearchContract(searchInput,affgrp)
{ 
 qStr = 'action=quickSearchContract&searchInput='+searchInput+'&affgrp='+affgrp;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayQuickSearchContractResults);  	
} 
 
function displayQuickSearchContractResults(data)
{ document.getElementById('quickSearchResult').innerHTML = data; } 
      

function quickSearchRole(affgrp)
{
 var searchInput = document.getElementById('quickRole').value;
 
 if (searchInput.length > 3)	       
 { executeQuickSearchRole(searchInput,affgrp); } 
 if (searchInput.length == 0)
 { resetQuickSearchRole(); }
}

function resetQuickSearchRole()
{ document.getElementById('quickSearchResult').innerHTML = '';	} 
   
 
 
function executeQuickSearchRole(searchInput,affgrp)
{       
 qStr = 'search=quickSearchRole&searchInput='+searchInput+'&affgrp='+affgrp;
 postDataReturnText('../../admin/dzProduct/ajax_search_party.php',qStr,displayQuickSearchRoleResults);  	
}



function displayQuickSearchRoleResults(data)
{ document.getElementById('quickSearchResult').innerHTML = data; }
      


function hideSearchResults()
{
 $('quickSearchResult').innerHTML='';   	 
}




function updateProductAndShowRateform()
{
 if ($('prdcdPrefix'))
 { var product = $('prdcdPrefix').value.trim();	}
 else 
 { var product = $('productForRate').value.trim(); }
 var qStr = 'action=updateProductAndShowRates&product='+product;
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,displayUpdatedRate); 	
}



function updateProduct()
{
 if ($('prdcdPrefix'))          
 { var product = $('prdcdPrefix').value.trim();	}
 else 
 { var product = $('productForRate').value.trim(); }
 var qStr = 'action=updateProduct&product='+product;
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,updatedRate); 
}   



function enterNote(id)
{
 var note = $('usrnote').value;   
 
 $('partyNoteForm').submit();
  
 //var qStr = 'action=enterPartyNote&party='+id+'&note='+note;
 //postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,updatedNote);
}



function enterContractNote()
{
 var note = $('contract_usrnote').value.trim();
 var uid =  $('uid').value.trim();
   
 if (note.trim().length > 2)
 { 
  $('enter_note').value=1;	
  $('contractNoteForm').submit();       
 }         
 else
 {
  alert("Note needs to be atleast 3 characters long.");  	
 }
 
 //var qStr = 'action=enterContractNote&uid='+uid+'&note='+note;
 
 //postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,updatedContractNote);	
}       
 


function displayNotes(id)
{    
 var qStr = 'action=displayPartyNotes&party='+id;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayPartyNotes);	
}



function displayPartyNotesByType(id)
{
 $('party_notes_div').innerHTML="<div class='orngbold10'>Loading Notes. Please wait</div>";    	
 var type = $('note_type').value;
 var qStr = 'action=displayPartyNotesByType&party='+id+'&type='+type;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayPartyNotes);	
} 


         
function displayCNotes(uid)
{  
 var qStr = 'action=displayContractNotes&uid='+uid;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractNotes);	
} 



function decodeVin(vin)
{
 if(vin.length == 17) 
 { 	
 $('vin').removeEvent('blur', decodeVin);   	
 $('vin_error_span').style.display="block";	
  
 var affgrp = $('affgrp').value.trim(); 
 var override_vin = $('override_dup_vin').value.trim();	
 
 vin = vin.trim().toUpperCase(); 
 $('vin').value=vin;  	
    
      
  $('vin_chk_span').innerHTML="<span class='orngbold11'>Decoding VIN and checking for duplicates. Please Wait...</span>";	
  var qStr = "action=decodeVin&affgrp="+affgrp+"&vin="+vin.trim(); 
  if ((override_vin > 0) && ($('vin_error_span').innerHTML.trim().length < 1))   { qStr += "&skipDupVinCheck=1"; }
  postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,vinDecodeResults);
 }	
}  
   


function vinDecodeResults(data)
{
 $veh_data = data.split('|');	
  
 if(($veh_data[0] == 'duplicate'))
 { 
  $('contractSubmitButton').disabled = true;     	
  var contracts = '';	
  dup_vin_data = $veh_data[1].split('~');
     
  for(var i=0; i < dup_vin_data.length; i++)
  {
   dup_vin_contracts = dup_vin_data[i].split(',');
   contracts += "<br />Contract# <a href='print_contract_details.php?uid="+dup_vin_contracts[0]+"' target=_blank>"+dup_vin_contracts[0]+"</a>";	
  } 
  	  
  $('vin').style.backgroundColor='#CD4F39';   
  str ="<br /> <span class='maroonbold11'>An active contract already exists with the same VIN ("+dup_vin_contracts[2]+")."+contracts+"</span> <br /> "; 
  str += "<table border='0' cellspacing='1' cellpadding='1'><tr><td> <input type='checkbox' name='override_duplicate_vin' id='override_duplicate_vin' onclick=\"overrideDuplicateVin();\"/></td><td class='blkbold10'>Override Duplicate VIN</td></tr></table>";            
          
  $('vin_error_span').innerHTML= str;         
  
  if ($('vin_error_span'))
  { $('vin_error_span').focus(); }
  return;     
 }    
 else
 {
  $('vin').style.backgroundColor='#FFFFFF';	
  $year = $veh_data[0];
  $make = $veh_data[1];
  $model = $veh_data[2];
      
  $('myear').value=$year;
  $('make_id').innerHTML=$make; 
  $('model').value=$model;
  if ($('override_dup_vin').value < 1)
  { $('vin_error_span').innerHTML = ''; }
 }                          
           
 $('vin_chk_span').innerHTML="";    
 $('vin').addEvent('blur', decodeVin);    
}           

 
 
function overrideDuplicateVin()
{
 $('override_dup_vin').value=1;    	
  
 var note = "<br /> <div class='maroonbold11'>Enter reason for overriding VIN:</div> <input type='text' name='vin_override_note' id='vin_override_note' value='' size='100' maxlength='100' />";
 note += "<input class='dzBtn' type='button' value='Save Note' onclick=\"completeVinOverride();\"/>";   
      
 $('vin_error_span').innerHTML= note; 
  
 //$('vin_error_span').innerHTML= "";	
 $('vin_error_span').style.display="block";
}
 
 
function completeVinOverride()
{
 var  vin =$('vin').value.trim(); 	
 $('vin').style.backgroundColor='#FFFFFF';
 
 var vinOverrideReason = $('vin_override_note').value.trim();
 
 var note = $('contract_note').value.trim();  
 $('contract_note').value= note+" <br /><span class='redbold12'>VIN OVERRIDDEN BY USER.</span><br /> REASON: "+vinOverrideReason;
 
 $('vin_error_span').innerHTML = "<span class='orngbold11'>Duplicate VIN overridden by user. </span> <br /> <span class='maroonbold11'> Reason:</span> <span class='drkgraybold11'>"+vinOverrideReason+"</span>";
 $('vin_error_span').style.display="block";        
 
 $('contractSubmitButton').disabled=false;      
 $('vin').disabled=true; 
 //$('myear').disabled=true; 
 //$('make').disabled=true; 
 //$('model').disabled=true;         
            
 var qStr = "action=decodeVin&vin="+vin.trim()+"&skipDupVinCheck=1"; 
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,vinDecodeResults);
}
 
 




function loadAlternateRateEntryForm()
{ 
 var qStr = 'action=loadAlternateRateEntryForm';
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,displayUpdatedRate); 	 
} 



function updateCheckBoxTerm()
{
 var term_3 = $('term_3').checked;
 var term_12 = $('term_12').checked;
 var term_24 = $('term_24').checked;
 var term_36 = $('term_36').checked;
 var term_48 = $('term_48').checked;
 var term_60 = $('term_60').checked;
 var term_72 = $('term_72').checked;
 	 
 var qStr='action=updateCheckBoxRateform'; 
 qStr += term_3 ? '&term_3='+term_3 : '';
 qStr += term_12 ? '&term_12='+term_12 : '';
 qStr += term_24 ? '&term_24='+term_24 : '';
 qStr += term_36 ? '&term_36='+term_36 : '';
 qStr += term_48 ? '&term_48='+term_48 : '';
 qStr += term_60 ? '&term_60='+term_60 : '';
 qStr += term_72 ? '&term_72='+term_72 : '';
 
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,displayUpdatedRate); 
}
   


function updateStoneEagleFeeStatus(id,amount)
{
 var answer = confirm("Are you sure you want to invoice dealer for $"+amount+" ?");
 if (answer) 
 {	
 var qStr = 'action=invoice_se_fee&party='+id+'&amount='+amount; 
 postDataReturnText('../../admin/dzProduct/ajax_rates.php',qStr,displayStoneEagleFeeStatus);   
 }
 else
 {;}	
} 
 
function displayStoneEagleFeeStatus(data)
{ 
 $('se_fee_div').innerHTML = data; 
}
  


function cancelReasonSelect()
{
 $('cancel_explanation').value=''; 	
 var reason = $('cancel_reason').value;	
 	
 if (reason == 'Other')
 {
   $('cancel_explanation_div').style.display='block'; 	
 }
 else
 {
  $('cancel_explanation_div').style.display='none';	
 }
}
 

   

function cancelContract(uid)
{
 var reason = $('cancel_reason').value;	
 var explanation =  $('cancel_explanation').value;
 var requestDate = $('request_year').value+'-'+$('request_month').value+'-'+$('request_day').value;
 var billingPeriodCancel = $('billing_year_cancel').value+'-'+$('billing_month_cancel').value+'-'+$('billing_day_cancel').value;
  
 if (reason.length < 1)      
 {
  alert('Please select a reason for cancellation');
  return;  	
 }
 else
 {  
  if (reason == 'Other' && explanation.length < 1)
  { 
   alert('Please enter an explanation.');	
   return;	 
  }
  	
  var answer = confirm("Are you sure you want to cancel this contract? ");
  if (answer)
  {	           
   var qStr = 'action=cancelContract&uid='+uid+'&reason='+reason+'&explanation='+explanation+'&requestDate='+requestDate+'&billingPeriodCancel='+billingPeriodCancel; 
   postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractData);   
  }    
  else
  {;}
 }
}
 


function showRefundDetails(uid)
{ 
 $('refundDetailsDiv').style.display='block';	
 var qStr = 'action=refundDetails&uid='+uid; 
 	
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayRefundDetailsResults); 	 
}



function hideRefundDetails()
{ 
 $('refundDetailsDiv').style.display='none';
}

 
function displayRefundDetailsResults(data)
{
 $('refundDetailsDiv').innerHTML = data;	
}


 
function updateCancelDate()
{
 var cancelMonth =  $('cancel_month').value;
 var cancelDay   =  $('cancel_day').value;
 var cancelYear  =  $('cancel_year').value; 
      
 if (cancelDay < 10)   { cancelDay = '0'+cancelDay; }
 if (cancelMonth < 10) { cancelMonth = '0'+cancelMonth; } 
      
 var cancelDate  = cancelYear + '-' + cancelMonth + '-' + cancelDay;
 var cancelReason = $('cancel_reason').value.trim();
      
 var qStr = 'action=updateCancelDate&cancel_date='+cancelDate+'&cancel_reason='+cancelReason;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayUpdateCancelDatResults); 
}   



function displayUpdateCancelDatResults(data)
{ history.go(0); }   




function reinstateCancelledContract(uid,affgrp)
{
 var answer = confirm("Are you sure you want to reinstate this contract? "); 	
        
 if (answer) 
 {          
  var qStr = 'action=reinstateContract&uid='+uid+'&affgrp='+affgrp;
  postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractData);
 }          
 else 
 { return; } 	
}     



















function generateReportByBatchId(batchId,report_type)
{  
 var qStr = 'type=batchid&value='+batchId+'&report_type='+report_type;	
 var statusMsg = "<span class='orngbold11'>Please wait while the report is being generated.It may take a while...</span>";
 $('resultDiv').innerHTML = statusMsg;
    
 postDataReturnText('../../admin/dzProduct/ajax_integrationReport.php',qStr,displayIntegrationReport);
}
  
function generateReportByDate(startMonth,startYear,endMonth,endYear,report_type)
{
 var qStr = 'type=date&startMonth='+startMonth+'&startYear='+startYear+'&endMonth='+endMonth+'&endYear='+endYear+'&report_type='+report_type;
  var statusMsg = "<span class='orngbold11'>Please wait while the report is being generated.It may take a while...</span>"; 
 $('resultDiv').innerHTML = statusMsg;
 
 postDataReturnText('../../admin/dzProduct/ajax_integrationReport.php',qStr,displayIntegrationReport);	
}

 
function generateAllPostIntegrationReport(startMonth,startYear,endMonth,endYear,report_type)
{
 var qStr = 'type=all_post_integration&startMonth='+startMonth+'&startYear='+startYear+'&endMonth='+endMonth+'&endYear='+endYear+'&report_type='+report_type;
 var statusMsg = "<span class='orngbold11'>Please wait while the report is being generated.It may take a while...</span>"; 
 $('resultDiv').innerHTML = statusMsg;
 
 postDataReturnText('../../admin/dzProduct/ajax_integrationReport.php',qStr,displayIntegrationReport);		
}
 



function generateReport(type)
{
 if (type == 'batchid')
 {
  var batchid = $('batchid').value;
  var report_type = $('report_type').value; 
  generateReportByBatchId(batchid,report_type);
 }  
 else if (type == 'date')
 {
  var fromMonth = $('fromMonth').value;
  var fromYear  = $('fromYear').value;
  var toMonth   = $('toMonth').value;
  var toYear    = $('toYear').value;  	
  var report_type = $('report_type').value;
  
  generateReportByDate(fromMonth,fromYear,toMonth,toYear,report_type);  
 }  
 else if (type == 'not_integrated')
 { ; }
 else if (type == 'all_post_integration')
 {
  var fromMonth = $('fromMonth').value;
  var fromYear  = $('fromYear').value;
  var toMonth   = $('toMonth').value;
  var toYear    = $('toYear').value;  	
  var report_type = $('report_type').value;
  
  generateAllPostIntegrationReport(fromMonth,fromYear,toMonth,toYear,report_type);	
 }  
 else
 ;
} 

function displayIntegrationReport(data)
{ 
 $('resultDiv').innerHTML = data;	
} 


function populateStartDate(id)
{       
 cal_popup1.select($('start_date'),'anchor1','MM/dd/yyyy');
     
 $('start_date_update_btn').innerHTML='Please Wait...';
  
 (function(){$('start_date_update_btn').innerHTML="<input type='button' class='dzBtn' value='Save New Start Date' onClick=\"updateStartDate("+id+");\">";}).delay(3500);	
              
 return false;	  
} 
 
function updateStartDate(id)
{ 
 var new_date = $('start_date').value;
 var qStr = 'action=updateStartDate&new_date='+new_date+'&dealer='+id;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayNewStartDate);
} 

function displayNewStartDate(data)
{
 $('start_date_update_btn').innerHTML=data; 
 (function(){$('start_date_update_btn').fade('out');}).delay(5000);
}     




function addBucket()
{
 var affgrp = $('affgrp').value;
 var recordType = $('recordType').value;
 var bucketType = $('bucketType').value;
 var nat_acct = $('nat_acct').value;
 var dept_acct = $('dept_acct').value;
 var cost_center = $('cc_acct').value;
 var co = $('co_acct').value;
 
 if (affgrp.length < 2)
 {
  alert('Please enter a valid affgrp');
  return; 	
 }

 if (recordType.length < 3)
 {
  alert('Please enter a valid record type');
  return; 	
 } 
  
 if (bucketType.length < 1)
 {
  alert('Please enter a valid bucket type');
  return; 	
 }   
 
 if (nat_acct.length != 4) {
 alert('Please enter a valid natural account #');
 return;
 }
 
 if (dept_acct.length != 3) {
 alert('Please enter a valid department account #');
 return; 	
 }
 
 if (cost_center.length != 6) {
 alert('Please enter a valid cost center');
 return; 	
 }
  
 if (co.length != 3) {
 alert('Please enter a co');
 return; 	 
 } 
 	 
 var qStr = 'action=addBucket&affgrp='+affgrp+'&recordType='+recordType+'&bucketType='+bucketType+'&nat_acct='+nat_acct+'&dept_acct='+dept_acct+'&cost_center='+cost_center+'&co='+co;
 postDataReturnText('../../admin/dzProduct/ajax_setup_product.php',qStr,displayBucketDetails); 
}



 
function viewRoles()
{
 var affgrp= $('affgrp_view').value;
 
 var qStr = 'action=viewRoles&affgrp_view='+affgrp;
 postDataReturnText('../../admin/dzProduct/ajax_setup_product.php',qStr,displayExistingRoles); 
}

function addRole() 
{
 var affgrp= $('affgrp').value;
 var role_str = $('role_str').value;
 
 var qStr = 'action=addRole&affgrp='+affgrp+'&role_str='+role_str;
 postDataReturnText('../../admin/dzProduct/ajax_setup_product.php',qStr,displayRoleDetails); 
}
 

function displayBucketDetails(data)
{ 
 $('bucketDetails').innerHTML=data;	
} 


function displayExistingRoles(data)
{
 $('viewRoles').innerHTML=data; 	
}
 

function displayRoleDetails(data)
{  
 $('dzroleDetails').innerHTML=data;	
}


function loadTieBucketWithRoleData()
{
 var affgrp = $('affgrp').value;
 var qStr   = 'action=tieBucketWithRoles&affgrp='+affgrp;
 
 postDataReturnText('../../admin/dzProduct/ajax_setup_product.php',qStr,displayTieBucketWithRoleDetailsData);
}


function displayTieBucketWithRoleDetailsData(data)
{
 $('tie_product_bucket_details').innerHTML=data; 
} 

  
function validateAllBucketdID(affgrp)
{  
 var qStr = 'action=validateBuckets&affgrp='+affgrp;
 var bucketIDArr =  $('tie_role_bucket_form').getElements('input[name$=bucketId]');	
 var name='';
 var value=''
 
 for (i=0; i < bucketIDArr.length; i++)
 { qStr+= '&'+bucketIDArr[i].name+'='+bucketIDArr[i].value; } 
 
 postDataReturnText('../../admin/dzProduct/ajax_setup_product.php',qStr,displayRoleBucketResult);
} 
 
function displayRoleBucketResult(data)
{
 $('role_bucket_result').innerHTML=data;	
}


function displayTransactionsData()
{
 var uid = $('uid').value;
 var affgrp = $('affgrp').value;	
 var qStr = 'action=view_trans_data&uid='+uid+'&affgrp='+affgrp;
    
 postDataReturnText('../../admin/dzProduct/ajax_trans_data.php',qStr,displayTransactionData); 
}   


function displayTransactionData(data)
{
 $('trans_data_div').innerHTML=data;	
} 




function displayBatchEntryField()
{
 var reportType = $('report_type').value;	
 
 if (reportType == 'pre')
 {
  $('batchId').value='';	
  $('batchIdEntry').style.display='none'; 
 }
 else if (reportType == 'post')
 { $('batchIdEntry').style.display='block'; }
 else
 { 
  $('batchId').value='';	
  $('batchIdEntry').style.display='none'; 
 }
}


function submitCommissionStatementForm()
{
 if ($('report_type').value=='post')
 {
  var batchId = $('batchId').value;	
  	
  if (!batchId)
  { alert('Please enter batch Id');
   return;
  }
 }
 else
 {;}
 
 $('commStatementForm').submit(); 
}
  
 
function startErrorCheck() 
{ 
 $('pre_integration_details').innerHTML = "<div class='orngbold11'>Scanning contracts and transactions table. Please wait...</div>";	
 var qStr = 'action=scan_contracts';  
 postDataReturnText('../../admin/dzProduct/ajax_pre_integration_error_check.php',qStr,displayPreIntegrationErrorDetails); 	
}
 
  
 
function displayPreIntegrationErrorDetails(data)
{ 
  $('pre_integration_details').innerHTML = data;
}
 
    
function fillInTestContractFields()
{
 $('fname').value = '~TEST FIRST` NAME~';
 $('lname').value = '~TEST~';	
 $('addr1').value = "5100 N O'Connor Blvd"
 $('addr2').value = "Suite `100";
 $('city').value = 'Irv`ng';
 $('state').value = 'TX';
 $('zip').value = '705319';
 $('vin').value = '12456ABCXYZ987012';
 $('myear').value = '2010'; 
 $('make').value = 'HOND';
 $('model').value = 'Acura'; 
 $('term').value = '36';
 $('retailcd').value = 'R';
 $('price').value = '99.00';
}



    
function pullFromHolding(affgrp,vin)
{ 
 $('contractMessageDiv').style.display='none';
  	
 if (!vin)	
 { var vin = $('pullFromHolding').value.trim(); }
         
 if (vin.length < 6)
 { alert("You must enter at least 6 characters."); }
      
 var qStr = 'action=pullFromHolding&vin='+vin+'&affgrp='+affgrp;
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,populateVehicleData);
}    
    

function populateVehicleData(data)
{
 if (data.substring(0,2) == "#!")
 { 
  $('contractMessageDiv').style.display='block';	   
  $('contractMessageDiv').innerHTML=data.substring(2);	
 } 
 else	 
 {	
  var fieldsArr = data.split("||");
  var key,val;
 
  for(var i=0; i < fieldsArr.length; i++)
  {
   dataArr = fieldsArr[i].split('~');
   if (dataArr.length == 2)
   {      
   key = dataArr[0];
   val = dataArr[1]; 	
  
   if (val.trim().length > 0)
   {         
    if ($(key))
    {
   	 $(key).value=val;
    }     
   }
   }
  }
 } 
}     



function clearContractEntryFields()
{
 var elem = document.getElementById('contractDetailsDiv').elements;	
 
 for(var i=0; i < elem.length; i++)
 { elem[i].value = ''; } 
 
} 




function fillDataByVin(affgrp,code)
{
 var vinToPullBy = $('fillByVin').value.trim();
 
 if (vinToPullBy.length != 17)	
 {
  alert('Invalid VIN. VIN must be exactly 17 characters long.');	
 } 
  
 var qStr = 'action=fillDataByVIN&vin='+vinToPullBy+'&affgrp='+affgrp+'&code='+code;
 
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,reloadContractEntryForm); 
} 




function reloadContractEntryForm(data)
{    
 $('contractDetailsDiv').innerHTML=data;	
} 
       




function deleteContract(uid,affgrp,product)
{ 
 var answer = confirm("Are you sure you want to delete this contract? "); 	
       
   if (answer)
   { ; }
   else 
   {return;}	
   	 
 var qStr = 'action=deleteContract&uid='+uid+'&affgrp='+affgrp+'&product='+product;	
   	 
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayContractData); 	
}


function clearContractSearchBox()
{
 $('dealerContractSearch').value=''; 
 $('dealerContractSearch').style.color='#000000';	
 $('dealerContractSearch').style.fontSize='11';
}   


function displayExpandedContractSearchMenu()
{     
 disableContractEntryTime();	
 $('contractDetailsDiv').innerHTML=''; 	
 var qStr = 'action=displayExpandedContractMenu';	
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayExpandedContractMenuResults);	
}



function displayExpandedContractEntryMenu()
{  
 //$('contractDetailsDiv').innerHTML=''; 	
 var qStr = 'action=displayExpandedContractEntryMenu';	
 postDataReturnText('../../admin/dzProduct/ajax_contract.php',qStr,displayExpandedContractMenuResults);	
}
 
 
 
 
  
function displayExpandedContractMenuResults(data)
{
 $('ExpandedContractMenu').innerHTML=data; 	
}  



function checkVW_Audi_Upload() {
	if(document.theForm.upload.value.length < 1) {
		alert("Please select a file to upload!");
		return;
	}	
document.theForm.submit();	
} 




 
function startContractEntryTime()
{
 var d = new Date();	
 if (!readCookie('contractTime'))
 {
  var time = d.getTime();	
  createCookie('contractTime',time,30);	
 }
}     



function endContractEntryTime()
{
 var d = new Date();	
 if (!readCookie('contractTime'))
 {    
  var totalTime = -1;
 }    
 else     
 {	         
  var endTime = d.getTime();	
  var startTime = readCookie('contractTime');
  eraseCookie('contractTime');
  var totalTime = endTime - startTime;
  createCookie('contractEntryTime',totalTime,5);
 }    
}


function disableContractEntryTime()
{
 eraseCookie('contractTime');     	
}    
  

 

function markAllErrorCheckOptions()
{         
 if ($('check_all').checked== true)
 {    
  var options_arr = $('pre_integration_error_check_options').getElements('input[name^=check_]'); 
  options_arr.each(function(elem,index){
  elem.checked = true;
  });           
 }   
}   


function unMarkAllErrorCheckOptions()
{         
 if ($('check_all').checked== true)
 {    
  var options_arr = $('pre_integration_error_check_options').getElements('input[name^=check_]'); 
  options_arr.each(function(elem,index){
  elem.checked = false;
  });           
 }    
}  



 
function markAllPartners()
{
  if ($('mark_all_partners').checked== true)
  {    
   var options_arr = $('partner_checkbox_div').getElements('input[name^=check_affgrp_]'); 
   options_arr.each(function(elem,index){
   elem.checked = true;
   });        
  }
  else
  {
   var options_arr = $('partner_checkbox_div').getElements('input[name^=check_affgrp_]'); 
   options_arr.each(function(elem,index){
   elem.checked = false;
   });  
  }
}
 


function displayDateRange()
{
 if ($('display_date_range').checked == true)
 { $('date_range_div').style.display='block'; }
 else
 { 
   $('startDt').value='01';
   $('endDt').value = '31'; 	
   $('date_range_div').style.display='none'; 
 } 
} 




 

function executePreIntegrationErrorCheck()
{ 
 $('pre_integration_details').innerHTML = "<div class='orngbold11'>Checking for Pre Integration Errors. Please wait...</div>";	
  var qStr='action=preIntegrationErrorCheck'; 	 
  var checked_arr = $('pre_integration_error_check_div').getElements('input[name^=check_]'); 
  checked_arr.each(function(elem,index){
  if (elem.checked == true)
  {     
  	qStr += '&'+elem.name+'=1'; 
  }   
  });    
     
  postDataReturnText('../../admin/dzProduct/ajax_pre_integration_error_check.php',qStr,displayPreIntegrationErrorDetails); 
}   




function ExecuteDealerCostErrorCheck()
{ 
 $('pre_integration_details').innerHTML = "<div class='orngbold11'>Checking for dealer cost errors. This might take a while. Please wait...</div>";	
	  
 var qStr='action=dealerCostErrorCheck';	
 postDataReturnText('../../admin/dzProduct/ajax_pre_integration_error_check.php',qStr,displayPreIntegrationErrorDetails); 
}


function generateRoleReport()
{         
 var qStr='report_type=roleReport'; 	 
 var checked_arr = $('partner_checkbox_div').getElements('input[name^=check_]'); 
 checked_arr.each(function(elem,index){
 if (elem.checked == true)
 { qStr += '&'+elem.name+'=1'; }   
 });
   
 var role_arr = $('role_checkbox_div').getElements('input[name^=check_]'); 
 role_arr.each(function(elem,index){
 if (elem.checked == true)
 { qStr += '&'+elem.name+'=1'; }   
 });
   
 if ($('pre_integration').checked)
 { qStr += "&role_integration_type=pre_integration"; }
 if ($('post_integration').checked)
 { 
  qStr += "&role_integration_type=post_integration"; 
  
  if($('month') && $('year'))
  {
   var month = $('month').value.trim();
   var year = $('year').value.trim();
      	
   qStr += '&month='+month+'&year='+year;
  }
 }  
    
 if ($('detailed_report').checked)
 { qStr += "&role_report_type=detailed"; }
 if ($('summary_report').checked)
 { qStr += "&role_report_type=summary"; } 
                                                                                                             
 $('role_report_data').innerHTML="<span class='orngbold10'>Generating Report. Please Wait...</span>"; 
 postDataReturnText('../../admin/dzProduct/ajax_integrationReport.php',qStr,displayRoleReportData);   
}                                      
                     
 
 
function displayRoleReportData(data)
{                         
 $('role_report_data').innerHTML= data;
 var qStr="report_type=completeRoleReport";
 postDataReturnText('../../admin/dzProduct/ajax_integrationReport.php',qStr,displayRoleReportDataFinal);
}         
 
 
function changePartner(val)
{
 if (val.trim().length > 32 )
 {
  $('site_header_div').innerHTML="<span class='orngbold13'>Please Wait. Changing Partner</span>"; 	
  if ($('dzProduct_data')) { $('dzProduct_data').innerHTML="";  }
  window.location=val;   
 }  
}  
  

function tieVariablePayeeToDealer(dealer)
{
 var partyId = $('fi_manager_drop').value.trim();	
 var qStr = 'action=tieVariablePayeeToDealer&dealer='+dealer+'&partyId='+partyId;
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayAddvariablePayeeDetails);
}



function showPreTransErrorChkResults(errType)
{
 $('errDisplayDiv').innerHTML = "<div class='orngbold13'>Loading Data. Please Wait...</div>";    	
 var errTypes=new Array("transErrArr","dupContractErrArr","dealerCodeErrArr","dealerCostErrArr");	
 var i;
 for(i=0; i <= 3; i++)
 {    
  if (errTypes[i]==errType)
  {
   if ($(errTypes[i]))	
   { $(errTypes[i]).set('class', 'btnDownLike'); }	
  }	 
  else
  {
   if($(errTypes[i]))	
   { $(errTypes[i]).set('class', 'btnUpLike'); }	
  }
 }
  
 $(errType).set('class', 'btnDownLike');
 
 var qStr='action=printPreTransactionsErrors&errType='+errType;
 postDataReturnText('../../admin/dzProduct/ajax_pre_integration_error_check.php',qStr,displayErrorCheckDetails);	
}
 
 
function displayErrorCheckDetails(data)
{
 $('errDisplayDiv').innerHTML=data; 
}
 
 
function show_billing_period_div()
{
 $('billing_period_update_div').style.display='block';	
}
 
 
function save_billing_period()
{ 
 var bp_year = $('billing_year').value.trim();
 var bp_month = $('billing_month').value.trim();
 var bp_day = $('billing_day').value.trim();
 if (bp_day < 10) { bp_day = '0'+bp_day; }
 if (bp_month < 10) { bp_month = '0'+bp_month; }  
 var billing_period = bp_month+'/'+bp_day+'/'+bp_year;
 $('billing_period_update_div').style.display='block';	
 $('billing_period').innerHTML = billing_period;
 var note = $('contract_note').value.trim();  
 
 
 $('eff_billing_year').value  = bp_year;
 $('eff_billing_month').value = bp_month;
 $('eff_billing_day').value   = bp_day;
 $('billing_period_update_div').style.display='none';	
 $('bp_override_txt').innerHTML='Billing Period Overridden';  
 $('contract_note').value= note+" <br />Billing Period Overridden while entering contract.";
}    


function enableSpecialInstructionsTextBox(id)
{   
 var qStr = "action=enable_special_instructions&id="+id; 
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayEnterSpecialInstructionsResult);	
}


function enableEditSpecialInstructionsTextBox(id)
{   
 var qStr = "action=enable_edit_special_instruction&id="+id; 
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayEnterSpecialInstructionsResult);		
}      



function displayEnterSpecialInstructionsResult(data)
{
 $('special_instructions_div').innerHTML=data;     	
} 


function enterSpecialInstructions(id)
{
 var special_instructions = $('special_instructions').value.trim(); 	
 var qStr = "action=enter_special_instructions&id="+id+"&special_instructions="+special_instructions; 
 
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayEnterSpecialInstructionsResult);	
}
  
 
function editSpecialInstruction(id)
{
 var special_instruction = $('special_instructions').value.trim(); 	
 var qStr = "action=edit_special_instruction&id="+id+"&special_instructions="+special_instruction; 
  
 postDataReturnText('../../admin/dzProduct/ajax_party_info.php',qStr,displayEnterSpecialInstructionsResult);	
}   



function isDateValid(y,m,d)
{
 if (m == '04' || m == '06' || m == '09' ||  m == '11')
 { return (d > 0 && d < 31) }
 else if (m == '02')
 { 
  if (y%4 === 0)
  { return (d > 0 && d < 30) }
  else 
  { return (d > 0 && d < 29) }
 }
 else
 { return (d > 0 && d < 32) }	
}  
 


function cancelLetterClick(letterType,uid)
{
 if ( letterType== "to_customer_refund_Notification")	
 {
  $('cxl_letter_1').set('class', 'btnDownLike'); 
  $('cxl_letter_2').set('class', 'btnUpLike'); 
  $('cxl_letter_3').set('class', 'btnUpLike'); 	
 }
 else if ( letterType== "to_dealer_refund_Notification")	
 {
  $('cxl_letter_2').set('class', 'btnDownLike'); 
  $('cxl_letter_1').set('class', 'btnUpLike'); 
  $('cxl_letter_3').set('class', 'btnUpLike'); 	
 }
 else if ( letterType== "to_dealer_cancel_req_Notification")	
 {
  $('cxl_letter_3').set('class', 'btnDownLike'); 
  $('cxl_letter_1').set('class', 'btnUpLike'); 
  $('cxl_letter_2').set('class', 'btnUpLike'); 	
 }
  
 $('letter_type').value=letterType; 
     
 var qStr='action=loadCancellationLetter&letterType='+letterType+'&uid='+uid;
 postDataReturnText('../../admin/dzProduct/ajax_letter.php',qStr,displayLetterGenerator);
}  
 
 
 
function displayLetterGenerator(data)
{
 $('letter_gen_div').innerHTML=data; 
}
 
 


function coverageLetterClick(letterType,uid)
{
 if ( letterType== "no_term")	
 {
  $('cvg_letter_1').set('class', 'btnDownLike'); 
  $('cvg_letter_2').set('class', 'btnUpLike'); 
 }
 else if ( letterType== "wrong_contract_num")	
 {
  $('cvg_letter_2').set('class', 'btnDownLike'); 
  $('cvg_letter_1').set('class', 'btnUpLike'); 
 }
 else ;
   
 $('letter_type').value=letterType; 
     
 var qStr='action=loadCoverageLetter&letterType='+letterType+'&uid='+uid;
 postDataReturnText('../../admin/dzProduct/ajax_letter.php',qStr,displayLetterGenerator);
}  
 
 
 

function transferLetterClick(letterType,uid)
{
 if ( letterType== "missing_bill_of_sale")	
 {
  $('transfer_letter_1').set('class', 'btnDownLike'); 
  $('transfer_letter_2').set('class', 'btnUpLike'); 
 }
 else if ( letterType== "transfer_confirmation")	
 {
  $('transfer_letter_2').set('class', 'btnDownLike'); 
  $('transfer_letter_1').set('class', 'btnUpLike'); 
 }
 else ;
   
 $('letter_type').value=letterType; 
      
 var qStr='action=loadTransferLetter&letterType='+letterType+'&uid='+uid;
  
 postDataReturnText('../../admin/dzProduct/ajax_letter.php',qStr,displayLetterGenerator);	
}




 
function rejectionLetterClick(letterType,uid)
{
 if ( letterType== "to_customer_rejection_notification")	
 {
  $('rej_letter_1').set('class', 'btnDownLike'); 
  $('rej_letter_2').set('class', 'btnUpLike'); 
  $('rej_letter_3').set('class', 'btnUpLike'); 	
 }
 else if ( letterType== "to_dealer_rejection_notification")	
 {
  $('rej_letter_2').set('class', 'btnDownLike'); 
  $('rej_letter_1').set('class', 'btnUpLike'); 
  $('rej_letter_3').set('class', 'btnUpLike'); 	
 }
 else if ( letterType== "to_dealer_sold_before_agreement")	
 {
  $('rej_letter_3').set('class', 'btnDownLike'); 
  $('rej_letter_1').set('class', 'btnUpLike'); 
  $('rej_letter_2').set('class', 'btnUpLike'); 	
 }        
  
 $('letter_type').value=letterType; 
      
 var qStr='action=loadRejectionLetter&letterType='+letterType+'&uid='+uid;
 postDataReturnText('../../admin/dzProduct/ajax_letter.php',qStr,displayLetterGenerator);
}
 
  
 
function showRoleReportDateRange()
{
 var obj = $('role_report_date_range'); 
 obj.style.display='block'; 
} 
 
 
function hideRoleReportDateRange()       
{                                        
 var obj = $('role_report_date_range');  
 obj.style.display='none'; 	             
}                                        






























