
// Global javascript for referralnetwork.com.

var header = new SWFObject('/images/header04-09.swf', 'referralnetwork-header', '925', '125', '6', '#ffffff'); 
header.addParam("wmode", "transparent");

/********************************************************************/
function preloadImages()
{
    var imgs = new Array(
            'refnet-bg-08-08e.gif',
            'mainbg.gif',
            'innerbg.gif',
            'top_bg.gif',
            'bot_bg.gif',
            'sep_bg.gif',
            'tl.gif',
            'tr.gif',
            'bl.gif',
            'br.gif',
            'sep_l.gif',
            'sep_r.gif'
        );
    var objName,imgName;
    for (i = 0; i < imgs.length; i++)
    {
        objName = imgs[i];
        imgName = '/images/' + imgs[i];
        objName = new Image();
        objName.src=imgName;
    }
}

/********************************************************************/
window.onload = function()
{ 
    preloadImages(); 
    if (document.getElementById('referralnetwork-header')) {
        header.write('referralnetwork-header');
    }
}; 

/********************************************************************/
function newWindow(url,w,h)
{
    var day = new Date();
    var id = day.getTime();
    var wid = w + 50;
    var ht = w + 125;
    var params = 'width=' + wid + ',height=' + ht + ',scrollbars,resizable';
    var newWind = open(url, id, params);
    return false;
}

/********************************************************************/
// To replace above
function newWin(url,img,title,w,h)
{
    if (! (url) && ! (img)) {
        return;
    }
    var day = new Date();
    var id = day.getTime();
    var ww = w + 75;
    var wh = h + 125;
    var params = 'width=' + ww + ',height=' + wh + ',scrollbars,resizable';
    if (url == '')
    {
        var msg = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\n'
            + '<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\n'
            + '<html><head><title>' +img +'</title></head>'
            + '<style type="text/css">\n'
            + ' html,body { font-family: Arial,Helvetica,Sans-Serif; }\n'
            + 'h3 { text-align: center; }\n'
            + 'td { text-align: center; }\n'
            + '<\/style><body>\n'
            + '<h3>' + title + '<\/h3>\n <table align="center" border="0"><tr><td><img src="'+img+'" width="'+w+'" height="'+h+'" border="0" alt="'+title+'"></td></tr>\n'
            + '<tr><td><hr width="100%" size="1"><form><input type="button" onClick="javascript:window.close();" value="Close Window">\n'
            + '<hr width="100%" size="1"><\/form><\/td><\/tr><\/table><\/body><\/html>\n'
            ;
        var win = open('',id,params);
        win.document.write(msg);
        win.document.close();
    }
    else {
        var win = open(url,id,params);
    }
    return false;
}

/********************************************************************/
// Used by bottom-page searches
function checkForm(form) {
   var msg = '';
   if (document.getElementById('search_state') && document.getElementById('specialty')) {
        var ind     = document.getElementById('search_state').selectedIndex;
        var DDval   = document.getElementById('search_state').options[ind].value;
        if (DDval == "none") { msg = 'Please select the state to search.'; }
        ind     =  document.getElementById('specialty').selectedIndex;

   }
   else if (document.getElementById('keyword')) { 
      if (document.getElementById('keyword').value == '') { msg = 'Please enter a keyword to search'; }
   }
   if (msg != '') { alert(msg); }
   else { form.submit(); }
   return false;
}



/********************************************************************/
// Advanced search check 03-08 THIS IS NOW DISABLED, STATE NOT REQUIRED
function checkAdvanced(form)
{
    var ind     = form.state.selectedIndex;
    var DDval   = eval('form.state.options[' + ind + '].value');
    if (DDval == "none")
    {
        alert('The state field is the only required field to \n perform an advanced search.');
        return false;
    }
    else {
        form.submit();
    }
    return false;
}

function specialtyPopup()
{
    var day = new Date();
    var id = day.getTime();
    var msg = '<html><head><title>Other Specialty</title></head><body style="font\-family:Arial, Helvetica, Sans-Serif">\n'
        + '<h3 align="center">What is the Other Specialty For?</h3>\n'
        + 'The <em>Other Specialty Field</em> should be only used if your specialty does NOT appear in the Specialty drop\-down list.\n'
        + 'From time to time, we review values in the other specialty fields and they get periodically updated on our drop-down list.\n'
        + 'At some point in the future, when you log in to this screen and the Other Specialty field is blank, it should be selected in the Specialty field.\n'
        + '<div class="center"><form><hr width="100%" size="1"><input type="button" onClick="window.close();" value="Close Window"><hr width="100%" size="1"></div></body></html>\n\n'
        ;
    var win = open('',id,'width=450,height=450,resizeable');
    win.document.write(msg);
    win.document.close();
    return false;
}


/********************************************************************/
// Used by signup pages
function checkInfo(form)
{
    var requireds = new Array('fname', 'company', 'lname', 'address','login_name','zip', 'phone', 'newpass', 'passwordconfirm');
    var msg = '';
    for (i=0; i<requireds.length; i++) {
	  var obj=document.getElementById(requireds[i]);
	  if ((requireds[i] == 'newpass') || (requireds[i] == 'login_name')) {
	      if ((requireds[i] == 'newpass') && (obj.value != form.passwordconfirm.value)) {
        	 msg = 'Your passwords do not match. Please re-type them \n so we may sign you up for this site.';
		     break;
		  }
          if (obj.value.length < 6) {
             msg = 'Your ' + requireds[i] + ' must be 6 characters minimum.\n Please choose a longer ' + requireds[i] + '.';
			 break;
		  }
		  if (obj.value.indexOf(' ',1) != -1) {
        	 msg = 'Your ' + requireds[i] + ' cannot contain spaces. Please choose\n another ' + requireds[i] + '.';
		     break;
		  }
      }

      else if (requireds[i] == 'state') {
         var ind = obj.selectedIndex;
         if (ind == 0) {
            msg = 'Please select your state.';
            break;
         }
      }
      else {
        if (obj.value == '') {
           msg = 'The ' + requireds[i] + ' field is a required field.';
           break;
        }
      }
   }
   if (document.getElementById('x_card_num')) {
       var exmIn = form.card_exp_month.selectedIndex;
       var exyIn = form.card_exp_year.selectedIndex;
       var exm   = eval('form.card_exp_month.options[' + exmIn + '].value');
       var exy   = eval('form.card_exp_year.options[' + exyIn + '].value');
	   if ((document.getElementById('cc_req')) || (document.getElementById('auto_renew').checked)) {
          if (document.getElementById('x_card_num').value == '') { msg = 'Please enter your credit card number.'; }
		  if ((exm == '') || (exy == '')) { msg += '\nSelect a valid credit card expiration month and year.'; }
	   }
    }
    if (msg != '') {  alert(msg);  }
    else { form.submitButton.disabled=true; form.submit(); }
    return false;
}


/********************************************************************/
function chkCode(form) {
  var msg = '';
  if (document.getElementById('email').value == '') { msg='Enter your email address.'; }
  else if (document.getElementById('selected_city') && (document.getElementById('selected_city').value == '')) { msg = 'Enter your city.' }
  else if (document.getElementById('selected_state') && (document.getElementById('selected_state').selectedIndex == 0)) { msg ='Please select your state.' }
  else if (document.getElementById('email').value != '') {
     var found = false;
     var emailString = document.getElementById('email').value;
     for (j=0; j < emailString.length; j++) {
          if (emailString.charAt(j) == "@") { found = true; }
     }
     if (found == false) { msg = 'Is that your true email address?\n Please enter your correct email address.\n'; }
  }
  if (msg !='') { alert(msg); }
  else { form.submitButton.disabled=true; form.submit(); }
  return false;
}

/********************************************************************/
function chk_pres_signup(form) {

  var msg = '';
  if (document.getElementById('email').value == '') { msg='Enter your email address.'; }
  else {
     var found = false;
     var emailString = document.getElementById('email').value;
     for (j=0; j < emailString.length; j++) { 
          if (emailString.charAt(j) == "@") { found = true; }
     }
     if (found == false) { msg = 'Is that your true email address?\n Please enter your correct email address.\n'; }
  }
  if (msg !='') { alert(msg); }
  else { form.submitButton.disabled=true; form.submit(); }
  return false;
}


// Used only on member edits

function checkMember(form)
{
    var requireds = new Array('edit_fname', 'edit_lname', 'edit_email', 'address', 'city', 'state','zip', 'work_phone', 'edit_login_name', 'edit_password', 'password_confirm');

    var english   = new Array('first name', 'last name', 'email address', 'business address', 'city', 'state','zip', 'work phone', 'login name', 'password', 'password confirm');

    var msg = ''; var obj;

    for (i=0; i<requireds.length; i++) {
      if (document.getElementById(requireds[i])) {
        obj = document.getElementById(requireds[i]);
        if (requireds[i] == 'state') {
             var ind = obj.selectedIndex;
             if (ind == 0) { msg = 'Please select your state.'; break; }
        }
        else {
          if ((obj.value == '') || (obj.value =='none')) {
            msg = 'Please provide the ' + english[i] + ' before submitting this form.';
            break;
          }
        }
      }
    }
    if ((msg == '') && (document.getElementById('edit_email')) && (document.getElementById('edit_email').value != '')) {
        var found = false;
        var emailString = form.edit_email.value;
        for (j=0; j < emailString.length; j++) {
            if (emailString.charAt(j) == '@') { found = true; }
        }
        if (found == false) {
            msg = 'Is that your true email address?\n' +
                  'Please enter your correct email address.\n' +
                  'We will not place you on any mailing lists!\n';
        }
    }

    if (msg != '') { alert(msg); }
    else { form.submit();   }
    return false;
}

/********************************************************************/
function resetForm(form) {
   var msg = 'This will clear ALL fields in this form.\n' +
         'To return to the current values, refresh\n' +
         'or reload your browser. Continue?';
   var okToClear = confirm(msg);
   if (okToClear == true) {
      for (i=0;i<form.elements.length;i++) {
         var element = eval('form.elements[' + i + ']');
         if ((element.type == 'text') || (element.type == 'textarea') ||
             (element.type == 'file')) { element.value = ''; }
         else if (element.type == 'select-one') {   element.selectedIndex = 0;   }
         else if (element.type == 'radio') {
             var elementName = element.name;
             var radio = eval ('form.' + elementName);
             for (r=0;r<radio.length;r++) {
               if  (r == 0) {  eval ('form.' + elementName + '[' + r + '].checked=true'); }
               else {  eval ('form.' + elementName + '[' + r + '].checked=false'); }
            }
         }
      }
   }
   else { return 0; }
}

/********************************************************************/
// Mostly admin and member, will move these into a second template
function refreshSearch() {
    if (window.opener && !window.opener.closed) {
        window.opener.location.reload();
    }
    window.close();
}

/********************************************************************/
function chkCommunities(form)
{
    var msg = '';
    if (
        ((form.field.selectedIndex == 1) ||
        ((form.field.selectedIndex >= 5) && (form.field.selectedIndex < 10))) &&
        (isNaN(form.term.value)==true)) {
        msg = 'Please enter only numeric values for the selected field.';
    }
    else if (form.field.selectedIndex == 10) {
        var avail = form.term.value;
        var ok = 1;
        if (isNaN(avail)==true) {
            if  ((avail.toLowerCase() != 'yes') && (avail.toLowerCase != 'no')) { ok = 0; }
        }
        else if ((avail != 1) && (avail != 0)) { ok = 0; }
        if (ok == 0) { msg = 'The valid values for Available are 0 \(not available,\) 1 \(available,\) yes, or no.'; }
    }
    else if (form.field.selectedIndex == 2) {
       var state = form.term.value;
       if (state.length > 2) { msg = 'Please use the two\-letter abbrieviation for the state.'; }
       else { state = state.toUpperCase(); form.term.value=state; }
    }
 
    if (msg != '') { alert(msg); }
    else { form.submit(); }
    return false;
}


/********************************************************************/
function chkRoster(form)
{
    if (form.state.selectedIndex==0) {
        alert('Please select a state.');
    }
    else if (form.city.value == '') {
        alert('Please enter a community in the selected state.');
    }
    else {
        form.submit();
    }
    return false;
}

/********************************************************************/
function checkEmail(form)
{
    var msg = '';
    
    if (form.email.value == '') {
        msg = "Please provide an email address before submitting this form.";
    }
    if ((msg=='') && (form.email.value != ""))
    {
        var found = false;
        var emailString = form.email.value;
        for (j=0; j < emailString.length; j++)
        {
            if (emailString.charAt(j) == "@") {
                found = true;
            }
        }
        if (found == false) {
            msg = 'That is not a valid email address.';
        }
    }
 
    if (msg !='') {
        alert(msg);
    }
    else {
        form.submit();
    }
    return false;
}


/********************************************************************/
function checkInvitation(form)
{
    var msg = '';
    var errors = 0;

    if (form.fname.value == '')
    {
        msg = msg + "  * The First Name is required\n";
        errors++;
    }

    if (form.lname.value == '')
    {
        msg = msg + "  * The Last Name is required\n";
        errors++;
    }

    if (form.email.value == '')
    {
        msg = msg + "  * The Email Address is required\n";
        errors++;
    }

    if (form.city.value == '')
    {
        msg = msg + "  * The City is required\n";
        errors++;
    }

    if (form.state.selectedIndex == 0)
    {
        msg = msg + "  * The State is required\n";
        errors++;
    }

    if (form.specialty.selectedIndex == 0)
    {
        msg = msg + "  * The Business Category is required\n";
        errors++;
    }

    if (msg)
    {
        msg = 'Please correct the following error'
            + (errors > 1 ? 's' : '')
            + ":\n\n"
            + msg
            ;
        alert(msg);
    }
    else {
        form.submit();
    }

    return false;
}


/********************************************************************/
function checkContact(form)
{
    if ((form.state) && (form.state.selectedIndex == 0)) {
         alert('Please select the contact State.');
    }
    else if ((form.specialty) &&
         ((form.specialty.selectedIndex == 0) && (form.other_specialty.value == ''))) {
         msg = 'Please select a specialty. If a matching \n' +
               'specialty does not exist, enter the title \n' +
               'in other specialty.';
         alert(msg);
    }
    else if (((form.fname) && (form.fname.value == '')) ||
             ((form.lname) && (form.lname.value == ''))) {
        alert('Please provide the contact first and last name.');
     }
    else if ((form.city) && (form.city.value == '')) {
        alert('Please provide the contact city.');
     }
    else {
       form.submitButton.disabled=true;
       form.submit();
    }
    return false;
}

/********************************************************************/
function addSpecialty(url)
{
    var day = new Date();
    var id = day.getTime();
    var win=open(url,id,'width=500,height=500,resizable');
    return false;
}

/********************************************************************/
function checkAdmin(form)
{
    if ((form.fname.value == '') || (form.lname.value == '') ||
     (form.email.value == '') || (form.password.value == '')) {
       alert('All but the login name fields are required.');
    }
    else { form.submit(); }
    return false;
}

/********************************************************************/
function checkSearchList(form)
{
    var ddInd = form.field.selectedIndex;
    var ddVal = form.field.options[ddInd].value;
    if ((ddVal == 'BeginDate') ||
        (ddVal == 'ExpirationDate') ||
        (ddVal == 'created') ||
        (ddVal == 'lastmod')) {
         msg = 'To return correct results,\n' +
               'enter the date in the format\n' +
               '"YYYY-MM-DD".';
         alert(msg);
    }
}

/********************************************************************/
function chkField(form)
{
  var formvalue = form.term.value;
  if (formvalue == '') {
    alert('Please enter a search term.');
  }
  else { form.submit(); }
  return false;
}

/********************************************************************/
function checkReloc (form)
{
  var msg = '';
  if ((form.fcity.value == '') || (form.tcity.value == '')) {
      msg = 'Please select both a departure \n and a destination city.';
  }
  else if ((form.fstate.selectedIndex == 0) || (form.tstate.selectedIndex == 0)) {
      msg = 'Please select both a departure \n and a destination state.';
  }
  if (msg != '') { alert(msg); }
  else { form.submit(); }
  return false;
}

/********************************************************************/
function checkList(form)
{
    if (form.specialty.selectedIndex==0) {
        alert('Please select a bisiness category to edit.');
    }
    else
    {
        if (form.edit_state[1].checked == true)
        {
            var msg = 'Deleting this business category may leave\n' +
                    'references to non-existent categories\n' +
                    'in member data, producing odd results in\n' +
                    'searches. Continue?';
            var goForIt = confirm(msg);
            if (goForIt == true) { form.submit(); }
        }
        else { form.submit(); }
    }
}

/********************************************************************/
function checkCatEdit(form)
{
    if (form.title.value=='') {
        alert('Please enter a business category title.');
    }
    else {
        form.submit();
    }
    return false;
}

/********************************************************************/
function checkFAQAdd (form) {
   if ((form.q.value == '') || (form.a.value == '')) {
      alert('Please fill out both a \n question and an answer before \n attempting to add to the FAQ.');
   }
   else { form.submit(); }
   return false;
}

/********************************************************************/
// Check all boxes on or off in a form
function checkBoxes(form,onoff) {
   var sw = (onoff==1)?true:false;
   for (i=0;i<form.elements.length;i++) {
      var obj = form.elements[i];
      if ((obj.type=='checkbox') && (obj.name != 'chkson') && (obj.name != 'chksoff')) {
         obj.checked = sw;
      }
   }
   if (onoff == 1) { form.chksoff.checked = false; }
   else { form.chkson.checked = false; }
}



// used only in admin and member ad mamager to preview existing data in selected template.
function sendTemplate(url) {
   if (document.getElementById('template_num')) {
      var ind = document.getElementById('template_num').selectedIndex;
      var val = document.getElementById('template_num')[ind].value;
      url += '&amp;template_num='+val;
      newWin(url,'','Ad Preview',200,300);
   }
   return false;
}

// Used in ad_mgr
function checkLen(str) {
   if (str.length > 255) { alert('The ad message field is only allowed 255 characters.'); }
}   

// used in ad_mgr and mem_ad_mgr

function URLtext()
{
	   var day= new Date();
	   var id = day.getTime();
	   var params = 'width=400,height=600,scrollbars,resizable';
	   var msg = '<html><head><title>URL Text<\/title>\n'+
	             '<link rel="stylesheet" href="/data/ere2.css">\n'+
				 '<\/head><body class="nobg" style="margin:12px">\n'+
				 '<h3 class="center">URL Text<\/h3>\n'+
				 '<p>The <em>URL Text<\/em> is the text that appears on a link. for example, in the below code the URL text is \&quot\;Example Site\&quot\;<\/p>\n'+
				 '<p><code>\&lt\;a href="http://www.example.com"\&gt\;Example Site\&lt\;\/a\&gt\;<\/code><\/p>\n'+
				 '<p>While it\'s perfectly fine to enter the website URL for the URL text, some URLs can be quite long and it\'s often\n'+
				 'better to use specialtext instead. For example, for ReferralNetwork,<\/p>\n'+
				 '<p><code>\&lt\;a href="http://www.referralnetwork.com"\&gt\;ReferralNetwork.com\&lt\;\/a\&gt\;<\/code><\/p>\n'+
				 '<p>creates a link like this <\/p>\n'+
				 '<p><a href="http://www.referralnetwork.com">ReferralNetwork.com<\/a><\/p>\n'+
				 '<p>which looks more elegant than<\/p>\n'+
				 '<p><code>\&lt\;a href="http://www.referralnetwork.com"\&gt\;http://www.referralnetwork.com\&lt\;\/a\&gt\;<\/code><\/p>\n'+
				 '<p><a href="http://www.referralnetwork.com">http://www.referralnetwork.com<\/a><\/p>\n'+
				 '<div class="center"><hr width="100%" size="1"><form><input type="button" onClick="javascript:window.close();" value="Close Window">\n'+
				 '<hr width="100%" size="1"><\/form><\/div><br><br><\/body><\/html>\n';
	      var win = open('',id,params);
		  win.document.write(msg);
		  win.document.close();
		  return false;
}
