﻿// JScript File

function pageLoad() {
    showLoading();
    initMap();
    loadChoices('courses');
    loadMarkers('courses','ALL');
}

function showLoading() { 
    $get('loading').style.visibility = 'visible'; 
    $get('rdoCourses').disabled='disabled';
    $get('rdoSubjects').disabled='disabled';
    $get('ddlChoices').disabled='disabled';
}
    
function hideLoading() { 
    $get('loading').style.visibility = 'hidden'; 
    $get('rdoCourses').disabled='';
    $get('rdoSubjects').disabled='';
    $get('ddlChoices').disabled='';
}
    
function createOption(text, value) { var option = new Option(); option.text = text; option.value = value; return option; }
function clearMapMarkers() { var map = new GMap(document.getElementById("subgurim_GMap1")); map.clearOverlays(); }

var map = null;
var mType;

function initMap() {
    map = new GMap2(document.getElementById("map_canvas"));
    map.addControl(new GLargeMapControl());
    map.setCenter(new GLatLng(-23.7, 133.88333), 2);
    var mapControl = new GMapTypeControl();
    map.addControl(mapControl);
    map.setMapType(G_HYBRID_MAP);
}

//Load list of courses/subjects to choose from.
function loadChoices(markerGroup) {
    showLoading();
    ITM_GoogleMaps.AjaxService.GetGroups(markerGroup,processChoiceList,onFail);
    mType = markerGroup;
}

function processChoiceList(result) {
    var i = 0;
    var ddl = $get('ddlChoices');
    ddl.options.length=0;
    for(var item in result)
    {  
       ddl.options[ddl.options.length] = createOption(result[item],item);
       i++;
    }
    hideLoading();
}

function loadMarkers(markerType,markerGroup) {
    showLoading();
    ITM_GoogleMaps.AjaxService.GetMarkers(markerType,markerGroup,processMarkers,onFail);
}

//Process list of markers returned from webservice.
function processMarkers(result) {
    var point;
    map.clearOverlays();
    var i=$get('loadinggif');
    i.src = i.src;
    
    for(var item in result)
    {    
        point = new GLatLng(result[item].Latitude, result[item].Longitude);
        map.addOverlay(new GMarker(point));
        //setTimeout(function() {map.addOverlay(new GMarker(new GLatLng(result[item].Latitude, result[item].Longitude)));},10);
    }
    hideLoading();
    if (mType=='ALUMNI') { $get('ddlChoices').disabled='disabled'; }
}

function loadAlumni() {
    showLoading();
    ITM_GoogleMaps.AjaxService.GetMarkers('ALUMNI','ALUMNI',processMarkers,onFail);
    mType = 'ALUMNI';
}

function onFail(result) { alert('Error: '+result); hideLoading(); }
