var test;

function addProvider(provider, maxYears, odd, markerChar)
{
  var container = $('#providersContainer');
  
  var html =
'<div class="listing dotted_border">' +
'  <div' + (odd ? ' class="odd"' : '') + '>' +
'    <ul>' +
'      <li class="col1">' +
'        <img src="/images/bubble.png" class="png marker_click" alt="" />' +
'        <span class="marker_click">' + markerChar + '</span>' +
'      </li>' +
'      <li class="col_right">' +
'      <div class="padding_top10 padding_left10">' +
'        <a class="title marker_click">' +
        provider.first_name + (provider.last_name == null ? '' : ' ' + provider.last_name) + ', ' + provider.degree + ' | ' + provider.surgeon_type +
'        </a>' +
'      </div>' +
'        <ul>' +
'          <li class="col2"' + (provider.years_since_graduation == null ? ' style="width:300px"' : '') + '>' +
'            <p>' +
            provider.address + '<br />' +
            provider.city + ', ' + provider.full_state + ' ' + provider.zip + '<br />' +
            provider.phone +
'           <a href="' + provider.profile_link + '"><span class="' + (odd ? 'blue' : 'white') + ' margin_top5">View Profile</span></a>' +
'          </li>' +
'          <li class="col3"' + (provider.years_since_graduation == null ? ' style="width:160px"' : '') + '>' +
'            <div class="fr">' +
'              <ul class="doc_info">' +
'                <li class="left">&nbsp;</li>' +
'                <li class="middle border">' +
'                  <img src="/images/miles.gif" alt="" /><br />' +
                  parseFloat(provider.distance).toFixed(1) + ' miles' +
'                </li>';
    if (provider.years_since_graduation != null) {
      var num = Math.ceil(parseFloat(provider.years_since_graduation) * 4.0 / 50.0); //parseInt(maxYears));
      html +=
'                <li class="middle border">' +
'                  <img src="/images/capsule' + num + '.gif" alt=""  /><br /><br />' +
                  provider.years_since_graduation + 'yrs. exp' +
'                </li>';
    }
    html +=
'              <li class="middle">' +
'                <a href="' + provider.profile_link + '#profile_map">' +
'                  <img src="/images/direction.gif" alt="" /><br />' +
'                  Map/Direction' +
'                </a>' +
'              </li>' +
'            <li class="right">test</li>' +
'          </ul>' +
'        </div>' +
'        <div class="clear"></div>' +
'        <div class="align_right margin_top5">' +
    (provider.link_survey != null
      ? '<a href="' + provider.link_survey + '" rel="nofollow" class="small_link" target="_blank">Rate a doctor</a>' + (provider.link_group_practice != null ? ' | ' : '')
      : '') +
    (provider.link_group_practice != null
      ? '<a href="' + provider.link_group_practice + '" rel="nofollow" class="small_link" target="_blank">Group Practice</a>'
      : '') +
'        </div>' +
'      </li>' +
'      </ul>' +
'      </li>' +
'    </ul>' +
'    <div class="clear"></div>' +
'  </div>' +
'</div>';
  
  return html;
}

function setupProviderSearchResults()
{
  //$('.form_filter_click').click(refineSearch);
  $('.form_filter_click').click(function () {
      $('html,body').animate({scrollTop: $('div#main').offset().top}, 0);
      refineSearch();
  });
  $('.form_filter_change').change(refineSearch);
  $('.form_filter_blur').blur(refineSearch);
  
  $('#top_box').hide();
  
  if (providerSearchLoadImmediately) getProviders();
}

function objToParams(obj)
{
  var ret = obj;
  
  if (ret.center != null) {
    ret['center[latitude]'] = ret.center.latitude;
    ret['center[longitude]'] = ret.center.longitude;
    delete ret.center;
  }
  
  return ret;
}

var providerSearchMarkers = [];

function providerSearchCreateMarker(latlng, msg, letter)
{
  // Create a base icon for all of our markers that specifies the
  // shadow, icon dimensions, etc.
  var baseIcon = new GIcon(G_DEFAULT_ICON);
  baseIcon.shadow = "/images/markers/shadow50.png";
  baseIcon.iconSize = new GSize(20, 34);
  baseIcon.shadowSize = new GSize(37, 34);
  baseIcon.iconAnchor = new GPoint(9, 34);
  baseIcon.infoWindowAnchor = new GPoint(9, 2);
	
	var letteredIcon = new GIcon(baseIcon);
  letteredIcon.image = "/images/markers/marker" + letter + ".png";
  // Set up our GMarkerOptions object
  markerOptions = { icon:letteredIcon }; 
  
	var marker = new GMarker(latlng, markerOptions);
	/*marker.value = msg;
	GEvent.addListener(marker,"click", function() {
		var myHtml = msg;
		map.openInfoWindowHtml(latlng, myHtml);
	});*/
  marker.bindInfoWindowTabsHtml(msg);
	
  providerSearchMarkers.push(marker);
	return marker;
}

function providerSearchClearMarkers()
{
  for (i in providerSearchMarkers) {
    map.removeOverlay(providerSearchMarkers[i]);
  }
}

function getMarkerBubbleBody2(providerNames, address, phone, city, state, zip, degree, specialties, links) {
	var html = "";
	
	html += "<p align = 'left'>";
	
  for (var i in providerNames) {
    var providerName = providerNames[i].name;
    
    if (providerName != null && providerName != "") {
      html += "<br />&nbsp;&nbsp;<font style = 'font-size: 11px;'><b><a href = '"+link+"'>"+providerName+", "/*+degree*/+"</a></b></font>";
    }
  }
	
	if (address != null && address != "") {
		html += "<br />&nbsp;&nbsp;<font style = 'font-size: 11px;'>"+address+"</font>";
	}
	
	if (city != null && city != "") {
		html += "<br />&nbsp;&nbsp;<font style = 'font-size: 11px;'>"+city+", "+state+" "+zip+"</font>";
	}
	
	/*if (phone != null && phone != "") {
		html += "<BR>&nbsp;&nbsp;<font style = 'font-size: 11px;'>"+phone+"</font>";
	}*/
	
	html += "<br /><font style = 'font-size: 11px;'>&nbsp;</font>";
	html += "</p>";
	
	return html;
}


var mapCentered = false;

function getProviders()
{
  $('#messageContainer').addClass('center').html('<img src="/images/loading_pink_bar.gif" />');
  providerSearchClearMarkers();
  $.getJSON('/directory/ajax', providerSearchParameters, function(r) {
      // reset the inputs to what was searched for
      providerSearchParameters = objToParams(r.params);
      test = r;
      if (! r.success) {
        alert('Unable to locate that address, please enter a valid zip code or city and state');
        $('#messageContainer').removeClass('center').html('Please enter a valid zip code or city and state in the left box');
        return;
      }
      if (r.params.searchedFor_specialty) $('#provider_search_form_specialty').val(r.params.searchedFor_specialty);
      if (r.params.searchedFor_popular) $('#provider_search_form_popular').val(r.params.searchedFor_popular);
      if (r.params.searchedFor_zip) $('#provider_search_form_zip').val(r.params.searchedFor_zip);
      if (r.params.searchedFor_city) $('#provider_search_form_city').val(r.params.searchedFor_city);
      if (r.params.searchedFor_state) $('#provider_search_form_state').val(r.params.searchedFor_state);
      if (r.reload_to_results) {
        var loc = '/directory/index?reload=1';
        window.location = loc;
        return;
      }
      $('#search_arrow').hide();
      $('div#main').show();
      $('#top_box').show();
      loadMapOnStartUp(38.41055825094609, -98, 3);

      providerSearchParameters.a = 'getProviders';
      $('#providersContainer').empty();
      var furthest = 0;
      test = r;
      //var markersToDraw = [];
      var grouped = [];
      $.each(r.results, function(i, p) {
        if (p.distance > furthest) furthest = p.distance;
        var markerCharacter = String.fromCharCode(65 + i);
        var odd = (i + 1) % 2;
        
        var markerBubbleHtml = getMarkerBubbleBody(
          p.first_name + (p.last_name == null ? '' : ' ' + p.last_name),
          p.address,
          p.phone,
          p.city,
          p.full_state,
          p.zip,
          p.degree,
          p.specialties,
          p.profile_link);
        
        var found = false;
        for (var j in grouped) {
          if (grouped[j][0].longitude == p.longitude && grouped[j][0].latitude == p.latitude) {
            grouped[j].push(p);
            found = true;
          }
        }
        if (! found) grouped.push([p]);
        //test = grouped;
        
        var point = new GLatLng(p.latitude, p.longitude);
        var nMarker = providerSearchCreateMarker(point, markerBubbleHtml, markerCharacter);
        map.addOverlay(nMarker);
        
        var providerHtml = $(addProvider(p, r.max_years, odd, markerCharacter));
        providerHtml.find('.marker_click').click(function () { nMarker.openInfoWindowHtml(markerBubbleHtml); });
        
        $('#providersContainer').append(providerHtml);
      });
      /*
      var count = 1;
      for (var i in grouped) {
        var markerCharacter = String.fromCharCode(65 + parseInt(i));
        var htmlArray = [];
        var html;
        var first_line = [];
        for (var j in grouped[i]) {
          p = grouped[i][j];
          first_line.push({
              name: p.first_name + (p.last_name == null ? '' : ' ' + p.last_name) + ' - ' + p.phone,
              link: p.profile_link,
          });
          htmlArray.push(new GInfoWindowTab(
              j,
              getMarkerBubbleBody(p.first_name + (p.last_name == null ? '' : ' ' + p.last_name), p.address, p.phone, p.city, p.full_state, p.zip, p.degree, p.specialties, p.profile_link)
          ));
          html = getMarkerBubbleBody(first_line, p.address, p.phone, p.city, p.full_state, p.zip, p.degree, p.specialties, p.profile_link)
        }
        //test = grouped;
        var point = new GLatLng(grouped[i][0].latitude, grouped[i][0].longitude);
        test = htmlArray;
        
        var nMarker = providerSearchCreateMarker(point, html, markerCharacter);
        map.addOverlay(nMarker);
        for (var j in grouped[i]) {
          p = grouped[i][j];
          var odd = (count++) % 2;
          var providerHtml = $(addProvider(p, r.max_years, odd, markerCharacter));
          providerHtml.find('.marker_click').click(function () { nMarker.openInfoWindowTabsHtml(html, {selectedTab:j}); });
          $('#providersContainer').append(providerHtml);
        }
      }
      */
      
      var zoomlevel = 12;
      if (furthest <= 1) zoomlevel = 13;
      else if (furthest <= 3) zoomlevel = 12;
      else if (furthest <= 5) zoomlevel = 11;
      else if (furthest <= 11) zoomlevel = 10;
      else if (furthest <= 16) zoomlevel = 9;
      else if (furthest <= 25) zoomlevel = 8;
      else zoomlevel = 7;
      
      //if (! mapCentered) {
        //alert(zoomlevel)
        map.setCenter(new GLatLng(r.params['center[latitude]'], r.params['center[longitude]']), zoomlevel);
        //mapCentered = true;
      //} else {
        //map.setZoom(zoomlevel);
      //}
      
      if (r.numResults == 0) {
        $('#messageContainer').removeClass('center').html(r.numResults + ' surgeons found that match your criteria. Please modify your search options.');
      } else {
        $('#messageContainer').removeClass('center').html(r.numResults + ' surgeons found that match your criteria.');
      }
      var pages = Math.ceil(parseInt(r.numResults) / parseInt(r.perPage));
      $('div.navigation').children('span.pagerText').html('Page ' + (parseInt(r.page) + 1) + ' of ' + pages);
      if (parseInt(r.page) == 0) {
        $('div.navigation').find('span.prev').parent().removeClass('active').addClass('default').unbind('click');
      } else {
        $('div.navigation').find('span.prev').parent().removeClass('default').addClass('active').click(getPrevPage);
      }
      if (parseInt(r.page) + 1 >= pages) {
        $('div.navigation').find('span.next').parent().removeClass('active').addClass('default').unbind('click');
      } else {
        $('div.navigation').find('span.next').parent().removeClass('default').addClass('active').click(getNextPage);
      }
      $('#optional_filters').show();
      $('#resultsContainer').show();
      $('#top_message_box').hide();
      
      // generate url for ga
      var url = '/directory/ajax?';
      for (var i in r.params)
      {
        url += escape(i) + '=' + escape(r.params[i]) + '&';
      }
      url = url.replace(/&$/, '');
      pageTracker._trackPageview(url);
      
      $('html,body').animate({scrollTop: $('div#main').offset().top}, 0);
  });
}

function providerSearch()
{
  var specialty = $('#provider_search_form_specialty');
  var popular = $('#provider_search_form_popular');
  var zip = $('#provider_search_form_zip');
  var city = $('#provider_search_form_city');
  var state = $('#provider_search_form_state');
  
  var zipVal = $.trim(zip.val());
  zip.val(zipVal);
  var cityVal = $.trim(city.val());
  city.val(cityVal);
  var stateVal = $.trim(state.val());
  state.val(stateVal);
  var specialtyVal = specialty.val();
  var popularVal = popular.val();
  
  if (zipVal != "")
  {
    providerSearchParameters = { a: 'getProviders',
                                 zip: zipVal,
                                 page: 0 };
  } else if (cityVal != "" && stateVal != "") {
    providerSearchParameters = { a: 'getProviders',
                                 city: cityVal,
                                 state: stateVal,
                                 page: 0 };
  } else {
    alert("Please enter your zipcode or both your city and state");
    return false;
  }
  
  if (specialtyVal != "") providerSearchParameters.specialty = specialtyVal;
  //alert(popularVal);
  if (popularVal != "") providerSearchParameters.popular = popularVal;
  
  resetFilters();
  updateFilters();
  
  if ($('div#providerProfileContainer').length || $('div#directoryContainer').length)
  {
    providerSearchParameters.do_not_return = 1;
    getProviders();
    
    //var loc = window.location.protocol + '://' + window.location.host + '/directory/index?reload=1';
    //var loc = 'index?reload=1';
    //window.location = loc;
    return false;
  }
  getProviders();
  
  return false;
}

function rightProviderZipSearch()
{
  var zip = $.trim($('#specialist_zip_search').val());
  var regex = /^[0-9]{5}$/;
  
  if (regex.test(zip))
  {
    providerSearchParameters = { a: 'getProviders',
                                 zip: zip,
                                 page: 0 };
    providerSearchParameters.do_not_return = 1;
    providerSearchParameters.searchedFor_zip = zip;
    getProviders();
  }
  else
  {
    alert('invalid');
  }
}

function resetFilters()
{
  $('#provider_search_form_female').removeAttr('checked');
  $('#provider_search_form_male').removeAttr('checked');
  $('#slider').slider('option', 'value', 0);
  $('#slider2').slider('option', 'value', 50);
  $('#number_of_miles_span').html(25);
  $('#provider_search_name').val('');
  $('#provider_search_orderBy').val('distance');
}

function updateFilters()
{
  var changed = false;
  var female = $('#provider_search_form_female:checked');
  var male = $('#provider_search_form_male:checked');
  //var years = $('#provider_search_years').val();
  var years = Math.round($('#slider').slider('option', 'value') * 50.0 / 100);
  //var distance = $('#provider_search_distance').val();
  var distance = Math.round($('#slider2').slider('option', 'value') * 50.0 / 100);
  var orderBy = $('#provider_search_orderBy').val();
  var name = $.trim($('#provider_search_name').val());
  
  if (female.length) {
    if (providerSearchParameters.female == null) {
      changed = true;
      providerSearchParameters.female = 1;
    }
  } else {
    if (providerSearchParameters.female = 1) {
      changed = true;
      delete providerSearchParameters.female;
    }
  }
  
  if (male.length) {
    if (providerSearchParameters.male == null) {
      changed = true;
      providerSearchParameters.male = 1;
    }
  } else {
    if (providerSearchParameters.male = 1) {
      changed = true;
      delete providerSearchParameters.male;
    }
  }
  
  if (years != "") {
    if (providerSearchParameters.years == null || providerSearchParameters.years != years) {
      changed = true;
      providerSearchParameters.years = years;
    }
  } else {
    if (providerSearchParameters.years != null) {
      changed = true;
      delete providerSearchParameters.years;
    }
  }
  
  if (distance != "") {
    if (providerSearchParameters.distance == null || providerSearchParameters.distance != distance) {
      changed = true;
      providerSearchParameters.distance = distance;
    }
  } else {
    if (providerSearchParameters.distance != 0) {
      changed = true;
      providerSearchParameters.distance = 0;
    }
  }
  
  if (orderBy != "") {
    if (providerSearchParameters.orderBy == null || providerSearchParameters.orderBy != orderBy) {
      changed = true;
      providerSearchParameters.orderBy = orderBy;
    }
  } else {
    if (providerSearchParameters.orderBy != null) {
      changed = true;
      delete providerSearchParameters.orderBy;
    }
  }
  
  if (name != "") {
    if (providerSearchParameters.name == null || providerSearchParameters.name != name) {
      changed = true;
      providerSearchParameters.name = name;
    }
  } else {
    if (providerSearchParameters.name != null) {
      changed = true;
      delete providerSearchParameters.name;
    }
  }
  
  var specialty = $('#provider_search_form_specialty').val();
  var popular = $('#provider_search_form_popular').val();
  var zip = $('#provider_search_form_zip').val();
  var city = $('#provider_search_form_city').val();
  var state = $('#provider_search_form_state').val();
  
  if (specialty != "") providerSearchParameters.searchedFor_specialty = specialty;
  else delete providerSearchParameters.searchedFor_specialty;
  
  if (popular != "") providerSearchParameters.searchedFor_popular = popular;
  else delete providerSearchParameters.searchedFor_popular;
  
  if (zip != "") providerSearchParameters.searchedFor_zip = zip;
  else delete providerSearchParameters.searchedFor_zip;
  
  if (city != "") providerSearchParameters.searchedFor_city = city;
  else delete providerSearchParameters.searchedFor_city;
  
  if (state != "") providerSearchParameters.searchedFor_state = state;
  else delete providerSearchParameters.searchedFor_state;

  return changed;
}

function refineSearch()
{
  var changed = updateFilters();
  
  if (changed) {
    providerSearchParameters.page = 0;
    getProviders();
  }
}

function getPrevPage()
{
  if (providerSearchParameters.page == null) providerSearchParameters = 0;
  else providerSearchParameters.page = parseInt(providerSearchParameters.page) - 1;
  getProviders();
}

function getNextPage()
{
  if (providerSearchParameters.page == null) providerSearchParameters = 1;
  else providerSearchParameters.page = parseInt(providerSearchParameters.page) + 1;
  getProviders();
}

$(function() {
    $('#search_field').focus(function() {
        if (this.value == 'Search') {
          this.value = '';
        }
    });
    
    $('#search_button').click(function() {
        $('#search_form').submit();
    });
    
    $('#search_field_big').focus(function() {
        if (this.value == 'Search') {
          this.value = '';
        }
    });
    
    $('#search_button_big').click(function() {
        $('#search_form_big').submit();
    });
    
    $('#search_form').submit(function() {
        var value = document.getElementById('search_field').value
        if (value == 'Search' || value == '') {
          alert('Please enter a valid search term or terms');
          return false;
        } else {
          return true;
        }
    });
    
    $('#search_form_big').submit(function() {
        var value = document.getElementById('search_field_big').value
        if (value == 'Search' || value == '') {
          alert('Please enter a valid search term or terms');
          return false;
        } else {
          return true;
        }
    });
    
    var tabContainers = $('div.tabs div.tab');
    tabContainers.hide().filter(':first').show();
    
    $('ul.sg_tabNavigation a').click(function () {
        tabContainers.hide();
        tabContainers.filter(this.hash).show();
        $('ul.sg_tabNavigation a').removeClass('sg_tab_selected');
        $(this).addClass('sg_tab_selected');
        return false;
    }).filter(':first').click();
    
    $('ul.fg_tabNavigation a').click(function () {
        tabContainers.hide();
        tabContainers.filter(this.hash).show();
        $('ul.fg_tabNavigation a').removeClass('active');
        $(this).addClass('active');
        return false;
    }).filter(':first').click();
    
    var proceduresTabContainers = $('div.procedureTabs div.tab');
    proceduresTabContainers.hide().filter(':first').show();
    
    $('h2.proceduresNavigation a').click(function() {
        proceduresTabContainers.hide();
        proceduresTabContainers.filter(this.hash).show();
        $('h2.proceduresNavigation a').removeClass('proceduresNavigation_active');
        $(this).addClass('proceduresNavigation_active');
        return false;
    }).filter(':second').click();
    
    var mediaTabsContainers = $('div.mediaTabs div.tab');
    mediaTabsContainers.hide().filter(':first').show();
    
    $('ul.mediaTabsNavigation a').click(function() {
        test = mediaTabsContainers;
        mediaTabsContainers.hide();
        mediaTabsContainers.filter(this.hash).show();
        $('ul.mediaTabsNavigation a').removeClass('proceduresNavigation_active');
        $(this).addClass('proceduresNavigation_active');
        return false;
    }).filter(':first').click();
    
    if ($('div#providersContainer').length)
    {
      setupProviderSearchResults();
    }
    
    if ($('div#providerProfileContainer').length)
    {
      setupProviderProfile();
    }
    
    if ($('div#slider').length)
    {
      $('#slider').slider({step:10, slide: sliderChange, stop: refineSearch});
      $('#slider2').slider({step:10, slide: slider2Change, stop: refineSearch, value: 50});
      //sliderBar.children('a').simpletip({content: '', hidden: false, persisent: true, position: 'top', offset: [0,-15]});
      $('<div>').css({
          position: 'absolute',
          background: '#deecf5',
          border: '1px solid black',
          padding: '3px',
          zIndex: 999,
          display: 'none'
      }).attr('id', 'tooltipDiv').appendTo('body');
      
      $('<div>').css({
          position: 'absolute',
          background: '#deecf5',
          border: '1px solid black',
          padding: '3px',
          zIndex: 999,
          display: 'none'
      }).attr('id', 'tooltip2Div').appendTo('body');
      
      $('#provider_search_form_popular').change(popularSelect);
      $('#provider_search_form_specialty').change(specialtySelect);
      
      $('#provider_search_form_zip').numeric();
      $('#provider_search_form_city,#provider_search_form_state').alpha({allow: '., '});
      $('#provider_search_form_zip,#provider_search_form_city,#provider_search_form_state').keyup(zipcitystate_keyup);
      zipcitystate_keyup();
    }
});

function zipcitystate_keyup()
{
          var zipVal = $('#provider_search_form_zip').val();
          var cityVal = $('#provider_search_form_city').val();
          var stateVal = $('#provider_search_form_state').val();
          
          if (zipVal != '') {
            $('#provider_search_form_city,#provider_search_form_state').fadeTo('fast', 0.2);
            $('#provider_search_form_city,#provider_search_form_state').attr('disabled', 'disabled');
            return;
          } else {
            $('#provider_search_form_city,#provider_search_form_state').fadeTo('fast', 1);
            $('#provider_search_form_city,#provider_search_form_state').removeAttr('disabled');
          }
          
          if (cityVal != '' || stateVal != '') {
            $('#provider_search_form_zip').fadeTo('fast', 0.2);
            $('#provider_search_form_zip').attr('disabled', 'disabled');
          } else {
            $('#provider_search_form_zip').fadeTo('fast', 1);
            $('#provider_search_form_zip').removeAttr('disabled');
          }
}

var count = 0;
var count2 = 0;

function popularSelect() {
  var val = $('#provider_search_form_popular').val();
  if (val != "") {
    $('#provider_search_form_specialty').attr('disabled', 'disabled');
    //$('#provider_search_form_specialty').children('option:first').html('Deselect Procedure');
    $('#provider_search_form_specialty').fadeTo('fast', 0.3);
    $('#provider_search_form_specialty').parent().children('b:first').fadeTo('fast', 0.3)
  } else {
    $('#provider_search_form_specialty').removeAttr('disabled');
    //$('#provider_search_form_specialty').children('option:first').html('Select Specialty');
    $('#provider_search_form_specialty').fadeTo('fast', 1);
    $('#provider_search_form_specialty').parent().children('b:first').fadeTo('fast', 1)
  }
}

function specialtySelect() {
  var val = $('#provider_search_form_specialty').val();
  if (val != "") {
    $('#provider_search_form_popular').attr('disabled', 'disabled');
    //$('#provider_search_form_popular').children('option:first').html('Deselect Specialty');
    $('#provider_search_form_popular').fadeTo('fast', 0.3);
    $('#provider_search_form_popular').parent().children('b:first').fadeTo('fast', 0.3)
  } else {
    $('#provider_search_form_popular').removeAttr('disabled');
    //$('#provider_search_form_popular').children('option:first').html('Select by Procedure');
    $('#provider_search_form_popular').fadeTo('fast', 1);
    $('#provider_search_form_popular').parent().children('b:first').fadeTo('fast', 1)
  }
}

function sliderChange(event, ui)
{
  var val = Math.round(ui.value * 50.0 / 100.0);
  if (val == 0) val = "Unspecified";
  else          val += " years";
  var offset = $(ui.handle).offset()
  
  $('#tooltipDiv').hide();
  $('#tooltipDiv').css({top: offset.top - 30, left: offset.left}).html(val).show();
  
  count++;
  setTimeout(updateCount, 2000);
}

function slider2Change(event, ui)
{
  var val = Math.round(ui.value * 50.0 / 100.0);
  var offset = $(ui.handle).offset()
  
  $('#tooltip2Div').hide();
  $('#number_of_miles_span').html(val);
  
  val += " miles";
  $('#tooltip2Div').css({top: offset.top - 30, left: offset.left}).html(val).show();
  
  count2++;
  setTimeout(update2Count, 2000);
}

function updateCount()
{
  count--;
  if (count == 0) {
    $('#tooltipDiv').hide();
  }
}

function update2Count()
{
  count2--;
  if (count2 == 0) {
    $('#tooltip2Div').hide();
  }
}

function setupProviderProfile()
{
  //alert('profile');
  createMarkers();
}
