var g_strFranchiseSiteUrl = 'http://www.era.com';
var g_strPoweredByUrl = 'http://poweredby.era.com';

//-------------------------------------------------------------------------------------------------
function showDivId( strObjectId, bShow )
{
   if ( !document.getElementById ) return false;
   var pObj = document.getElementById( strObjectId );
   if ( !pObj ) return false;
   if ( bShow ) pObj.style.display = 'block';
   else pObj.style.display = 'none';
   return false;
}
//-------------------------------------------------------------------------------------------------

function ffsBuildParameterObject( pArguments )
{
   var aParameters = new Array();
   if (pArguments.length%2==0){
      for (var i=0; i < pArguments.length; i+=2) {
         aParameters[pArguments[i]] = pArguments[i+1];
      }
   }
   return aParameters;
}

function ffSetInnerHtml( aParameters, strHtml )
{
   try {
      if( 'divid' in aParameters ) {
         var pDiv = document.getElementById( aParameters['divid'] );
         if( pDiv ) {
            pDiv.innerHTML = strHtml;
         }
      }
   } catch( e ){
      alert( e.message );
   }
}

function validateRequiredParameters( aParameters, aRequired, strApiFunctionName )
{
   var bOk = true;
   var aMissing = new Array();
   for( var i=0; i < aRequired.length; i++ ) {
      if( aRequired[i] in aParameters) {
      } else {
         aMissing.push( aRequired[i] );
         bOk = false;
      }
   }
   if( !bOk ) {
      var bAlertWritten = false;
      var strError = strApiFunctionName + ' requires the following missing parameter(s): ';
      for( var key in aMissing ) {
         strError += '\n   - ' + aMissing[key];
      }
      if( 'divid' in aParameters ) {
         var pDiv = document.getElementById( aParameters['divid'] );
         if( pDiv ) {
            pDiv.innerHTML = '<pre>' + strError + '</pre>';
            bAlertWritten = true;
         }
      }
      if( !bAlertWritten ) {
         alert( strError );
      }
   }

   return bOk;
}

/*
   ERA Does not currently implement FranchiseFrameMultiZoneRouting.
*/
function FranchiseFrameMultiZoneRouting()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid'], 'FranchiseFrameMultiZoneRouting' ) ) {
      return;
   }
   ffSetInnerHtml( aParameters, '' );
}

function FranchiseFrameNeighborhoodInfo()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'zip'], 'FranchiseFrameNeighborhoodInfo' ) ) {
      return;
   }
   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/neighborhoodinfo/idxneinfo.esiml?strZipcode='+aParameters['zip']+'" width="984" height="1200" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameRecentHomeSales()
{
   var aParameters = ffsBuildParameterObject(arguments);
   var strHtml;
   if( !validateRequiredParameters( aParameters, ['divid', 'zip'], 'FranchiseFrameRecentHomeSales' ) ) {
      return;
   }
   if( aParameters['zip'] ) {
      strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=rhs&zip='+aParameters['zip']+'" width="358" height="400" frameborder="0"></iframe>'
   } else {
      strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=rhs&lat='+aParameters['lat']+'&long='+aParameters['long']+'" width="358" height="400" frameborder="0"></iframe>'
   }
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameSchools()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'zip'], 'FranchiseFrameSchools' ) ) {
      return;
   }
   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/neighborhoodinfo/idxneinfo.esiml?action=schools&strZipcode='+aParameters['zip']+'" width="984" height="1200" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameMortgageInfo()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid'], 'FranchiseFrameMortgageInfo' ) ) {
      return;
   }
   var strHtml = '<table width="100%" border="0" cellpadding="3" cellspacing="0" bgcolor="#999991">' +
                 '   <tr>' +
                 '      <td style="color: #000000; background-color: #FFFFFF;">' +
                 '         <a class=eratool href="https://www.eramortgage.com/home/landscape?jpid=SSLoanStart&cid=80141" style"color: #000000; background-color: #FFFFFF;" target="_external">Get a free customized mortgage rate quote:<br>Call <b>888-307-8006</b>' +
                 '      </td>' +
                 '   </tr><tr>' +
                 '      <td class="H2" style="border-bottom: 1px solid #989890;" bgcolor="#CBCEDC">' +
                 '         <a class=eratool href="https://www.eramortgage.com/info/landscape?jpid=Calculators&cid=80141" target="_external">Calculate your monthly payment</a>' +
                 '      </td>' +
                 '   </tr><tr>' +
                 '      <td class="H2" style="border-bottom: 1px solid #989890;" bgcolor="#CBCEDC">' +
                 '         <a class=eratool href="https://www.eramortgage.com/info/landscape?cid=80141&jpid=Reasons&jpl.ia.stackname=WEBOP_LEARN&subtab.node=Learn" target="_external">The importance of a <br>pre-approval.</a>' +
                 '      </td>' +
                 '   </tr><tr>' +
                 '      <td class="H2" style="border-bottom: 1px solid #989890;" bgcolor="#FFFFFF">' +
                 '         <a class=eratool href="https://www.eramortgage.com/home/landscape?jpid=SSLoanStart&cid=80141" style"background-color: #FFFFFF;" target="_external">Get Pre-Approved Now</a>' +
                 '      </td>' +
                 '   </tr>' +
                 '</table>';

   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameMortgageCalc()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid'], 'FranchiseFrameMortgageCalc' ) ) {
      return;
   }
   var strPrice = '';
   var strTax = '';
   if( aParameters['listprice'] ) strPrice = escape( aParameters['listprice'] );
   if( aParameters['retax'] ) strTax = escape( aParameters['retax'] );
   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/erabuy/monthly_payment_pop.php?Price='+strPrice+'&Taxes='+strTax+'" width="460" height="600" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameOfficeSearch()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid'], 'FranchiseFrameOfficeSearch' ) ) {
      return;
   }
   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/searchoffice" width="984" height="1200" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameAgentSearch()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid'], 'FranchiseFrameAgentSearch' ) ) {
      return;
   }
   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/searchagent" width="984" height="1200" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameOfficeProfile()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'officekey'], 'FranchiseFrameOfficeProfile' ) ) {
      return;
   }
   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/agentinfo?spredir=off&officekey='+aParameters['officekey']+'" width="984" height="1200" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameAgentProfile()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'sakey'], 'FranchiseFrameAgentProfile' ) ) {
      return;
   }
   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/agentinfo?spredir=off&Agent='+aParameters['sakey']+'" width="984" height="1200" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameAgentCallingCard()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'sakey'], 'FranchiseFrameAgentCallingCard' ) ) {
      return;
   }
   var strUrl = g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=acc&sakey='+aParameters['sakey'];
   if( aParameters['contactformurl'] ) strUrl += '&contactformurl=' + escape( aParameters['contactformurl'] );
   var strHtml = '<iframe src="'+strUrl+'" width="220" height="400" frameborder="0" scrolling="no"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameOfficeCallingCard()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'officekey'], 'FranchiseFrameOfficeCallingCard' ) ) {
      return;
   }
   var strUrl = g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=occ&officekey='+aParameters['officekey'];
   if( aParameters['contactformurl'] ) strUrl += '&contactformurl=' + escape( aParameters['contactformurl'] );
   var strHtml = '<iframe src="'+strUrl+'" width="220" height="400" frameborder="0" scrolling="no"></iframe>'

   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameSlideShowLink()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'mlsnum', 'price', 'beds', 'city', 'state', 'zip'], 'FranchiseFrameSlideShowLink' ) ) {
      return;
   }
   var strParameters = '';
   if( aParameters['mlsnum'] ) strParameters += '&mlsnum=' + escape(aParameters['mlsnum']);
   if( aParameters['price'] ) strParameters += '&price=' + escape(aParameters['price']);
   if( aParameters['beds'] ) strParameters += '&beds=' + escape(aParameters['beds']);
   if( aParameters['city'] ) strParameters += '&city=' + escape(aParameters['city']);
   if( aParameters['state'] ) strParameters += '&state=' + escape(aParameters['state']);
   if( aParameters['zip'] ) strParameters += '&zip=' + escape(aParameters['zip']);

   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=pss'+strParameters+'" width="120" height="100" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameVirtualTourLink()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'mlsnum', 'price', 'beds', 'city', 'state', 'zip'], 'FranchiseFrameVirtualTourLink' ) ) {
      return;
   }
   var strParameters = '';
   if( aParameters['mlsnum'] ) strParameters += '&mlsnum=' + escape(aParameters['mlsnum']);
   if( aParameters['price'] ) strParameters += '&price=' + escape(aParameters['price']);
   if( aParameters['beds'] ) strParameters += '&beds=' + escape(aParameters['beds']);
   if( aParameters['city'] ) strParameters += '&city=' + escape(aParameters['city']);
   if( aParameters['state'] ) strParameters += '&state=' + escape(aParameters['state']);
   if( aParameters['zip'] ) strParameters += '&zip=' + escape(aParameters['zip']);

   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=pvt'+strParameters+'" width="100" height="100" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFrameTalkingGalleryLink()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'mlsnum', 'price', 'beds', 'city', 'state', 'zip'], 'FranchiseFrameTalkingGalleryLink' ) ) {
      return;
   }
   var strParameters = '';
   if( aParameters['mlsnum'] ) strParameters += '&mlsnum=' + escape(aParameters['mlsnum']);
   if( aParameters['price'] ) strParameters += '&price=' + escape(aParameters['price']);
   if( aParameters['beds'] ) strParameters += '&beds=' + escape(aParameters['beds']);
   if( aParameters['city'] ) strParameters += '&city=' + escape(aParameters['city']);
   if( aParameters['state'] ) strParameters += '&state=' + escape(aParameters['state']);
   if( aParameters['zip'] ) strParameters += '&zip=' + escape(aParameters['zip']);

   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=ptg'+strParameters+'" width="200" height="40" frameborder="0" scrolling="no"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}

function FranchiseFramePrintableBrochureLink()
{
   var aParameters = ffsBuildParameterObject(arguments);
   if( !validateRequiredParameters( aParameters, ['divid', 'mlsnum', 'price', 'beds', 'city', 'state', 'zip'], 'FranchiseFramePrintableBrochureLink' ) ) {
      return;
   }
   var strParameters = '';
   if( aParameters['mlsnum'] ) strParameters += '&mlsnum=' + escape(aParameters['mlsnum']);
   if( aParameters['price'] ) strParameters += '&price=' + escape(aParameters['price']);
   if( aParameters['beds'] ) strParameters += '&beds=' + escape(aParameters['beds']);
   if( aParameters['city'] ) strParameters += '&city=' + escape(aParameters['city']);
   if( aParameters['state'] ) strParameters += '&state=' + escape(aParameters['state']);
   if( aParameters['zip'] ) strParameters += '&zip=' + escape(aParameters['zip']);

   var strHtml = '<iframe src="'+g_strPoweredByUrl+'/cgi-bin/enIdxFrame?a=ppb'+strParameters+'" width="200" height="19" frameborder="0"></iframe>'
   ffSetInnerHtml( aParameters, strHtml );
}


