
//YAHOO MAPS FUNCTIONS
function initYahooMaps(latLonArray,type) {
initYahooMapsByCategory(latLonArray,type,'school');
}
//YAHOO MAPS FUNCTIONS
function initYahooMapsByCategory(latLonArray,type,cat) {
// Create a lat/lon object
var myPoint="";
if(type=='search'){
myPoint = new YGeoPoint(latLonArray[0].latitude,latLonArray[0].longitude); 
}else{
myPoint = new YGeoPoint(latLonArray.latitude,latLonArray.longitude); 
}
// Create a map object 
map = new YMap(document.getElementById('mapContainer'));
// Add a pan control
map.addPanControl();
// Add a slider zoom control
map.addZoomShort();
// Display the map centered on a latitude and longitude 
map.drawZoomAndCenter(myPoint,5);
if(type=='search'){
for (var i = 0; i < latLonArray.length ; i++) { 
generateGeo(latLonArray[i],map,i,cat);
}
}else{
generateGeo(latLonArray,map,0,cat);
}
}
function generateGeo(latLon,map,num,cat){
var GeoPoint = new YGeoPoint(latLon.latitude,latLon.longitude);
var marker = createYahooMarker(GeoPoint,num,latLon,cat); 
map.addOverlay(marker); 
}
function createYahooMarker(geopoint,num,latlon,cat) { 
var myImage = new YImage(); 
myImage.src = 'http://us.i1.yimg.com/us.yimg.com/i/us/map/gr/mt_ic_c.gif'; 
myImage.size = new YSize(20,20); 
myImage.offsetSmartWindow = new YCoordPoint(0,0); 
// var marker = new YMarker(geopoint,myImage); 
var marker = new YMarker(geopoint); 
// var swtext = "<b>"+latlon.school+"</b>"; 
var swtext = "<div class=mapWindow>"; 
swtext += "<b> "+latlon.school+"</b><br />" +latlon.address+"<br />"+latlon.city+", "+ latlon.state+" "+latlon.zip+"<br />"; 
swtext += "Tel:"+latlon.tel+"<br/>";
if(loggedInUser=="Yes"){
if (cat == "school") {
swtext += "<a href=\""+contextrootmap+"/schoolReviewSummaryAction.do?siId="+latlon.sid+"&breadCrumb=search\">In-depth Profile</a>"; 
}else if (cat == "camps"){
swtext += "<a href=\""+contextrootmap+"/campSummaryAction.do?ccId="+latlon.sid+"&breadCrumb=search\">In-depth Profile</a>"; 
}
}
swtext +="</div>";
//Blink Code
//var label = marker.addLabel("<blink>"++"</blink>"); "; 
marker.addLabel(""+(num+1)+""); 
YEvent.Capture(marker,EventsList.MouseClick, function() { marker.openSmartWindow(swtext) }); 
YEvent.Capture(marker,EventsList.MouseOver, function() { marker.openSmartWindow(swtext) }); 
return marker; 
} 
// Yahoo Maps switching displays
// Yahoo Maps switching displays
function switchMapView(obj,latLonArray,type) {
if (obj.innerHTML == "View on Map") {
obj.innerHTML = "View Details";
switchDisplay('bodyContentForMapView');
switchDisplay('mainBodyContent1');
} else if (obj.innerHTML == "View Details") {
obj.innerHTML = "View on Map";
switchDisplay('bodyContentForMapView');
switchDisplay('mainBodyContent1');
return;
} else if (obj.innerHTML == "View results on map &gt;") {
obj.innerHTML = "View results in detail &gt;";
switchDisplay('bodyContentForMapView');
switchDisplay('mainBodyContent1');
} else if (obj.innerHTML == "View results in detail &gt;") {
obj.innerHTML = "View results on map &gt;";
switchDisplay('bodyContentForMapView');
switchDisplay('mainBodyContent1');
return;
}
if(mapFlag){
mapFlag=false;
if(latLonArray!=""){
initYahooMaps(latLonArray,type);
}else if(latLonArray.length && latLonArray.length!=0){
initYahooMaps(latLonArray,type);
}else{
var mapObj = document.getElementById("mapContainer");
mapObj.innerHTML="<div class=\"mapIsBroken\">We're Sorry! <br /><strong>Our map feature is unavailable right now.</strong></div>";
return;
}
}
}
// Ajax value retrieve
function execMapJS() {
var bSafbrow = (navigator.userAgent.indexOf('Safari') != -1);
var bOperabrow = (navigator.userAgent.indexOf('Opera') != -1);
var bMozbrow = (navigator.appName == 'Netscape');
var elem = document.getElementById("contentMap");
// alert(elem);
var strExec;
var IEBrow = document.all?true:false
if(IEBrow){
strExec = elem.innerHTML;
}else if (bSafbrow) {
strExec = elem.innerHTML;
}else if (bOperabrow) {
strExec = elem.text;
}else if (bMozbrow) {
strExec = elem.textContent;
}else {
strExec = elem.text;
}
if(strExec != ""){
strExec = strExec.substring(0,strExec.length-1);
// alert(strExec);
var strExceArray = strExec.split("~");
latLonArray =new Array(20);
for(var g=0;g<strExceArray.length;g++){
var temp = strExceArray[g];
var tempArray = temp.split(":");
latLonArray[g]=new latLon(tempArray[0],tempArray[1],tempArray[2],tempArray[3],tempArray[4],tempArray[5],tempArray[6],tempArray[7],tempArray[8]);
}
latLonArray.length=strExceArray.length;
}
}
function latLon(latitude,longitude,school,address,city,state,zip,tel,sid){
this.latitude=latitude;
this.longitude=longitude;
this.school=school;
this.address=address;
this.city=city;
this.state=state;
this.zip=zip;
this.tel=tel;
this.sid=sid;
}
function initYahooMapsStr(completeStr,type) {
var arrayStr=completeStr.split("|");
var latLonArray=new Array(arrayStr.length);
for (var i=0;i<arrayStr.length;i++) {
var temp = arrayStr[i];
var tempArray = temp.split("~");
latLonArray[i]=new latLon(tempArray[0],tempArray[1],tempArray[2],tempArray[3],tempArray[4],tempArray[5],tempArray[6],tempArray[7],tempArray[8]);
}
initYahooMapsByCategory(latLonArray,type,'school');
}
