var mapviewer, pan_zoom_widget;
var sms;

function onLoad() {
    //Add the map 
    mapviewer = new MultimapViewer( document.getElementById( 'mapviewer' ) );
    mapviewer.setOption( 'units', 'km' );
    mapviewer.goToPosition( new MMLocation( new MMLatLon( 30, 20 ), 3 ) );
    
    // Pan/Zoom widget
    pan_zoom_widget = new MMPanZoomWidget ();
    mapviewer.addWidget ( pan_zoom_widget );
    
    sms = document.getElementById('sms');
}

function trackit() {
    var sRawvalues = sms.value;
    if (sRawvalues == '') {
        alert('Please enter your coordinates');
    } else {
        var aRawvalues = sRawvalues.split(',');
        
        var lat = aRawvalues[0].split('.');
        var latdeg = parseInt(lat[0].substring(0,lat[0].length-2));
        var latmin = lat[0].substring(lat[0].length-2);
        //alert('lat[0]: '+lat[0]+'\nlatdeg: '+latdeg+'\nlatmin: '+latmin);
        var latsec = parseInt(lat[1]);
        var latminsec = parseFloat(latmin+'.'+latsec);
        var latd = latminsec / 60;
        var latitude = latdeg + latd;
        
        if (aRawvalues[1] == 'S' || aRawvalues[1] == 's') {
            latitude = latitude * -1;
        }
        
        var lon = aRawvalues[2].split('.');
        var londeg = parseInt(lon[0].substring(0,lon[0].length-2));

	if (lon[0].substring(lon[0].length-2,lon[0].length-1 )=='0') {
	        var lonmin = parseInt(lon[0].substring(lon[0].length-1, lon[0].length));
	}
	else	{
		var lonmin = parseInt(lon[0].substring(lon[0].length-2, lon[0].length));
	}
	//alert('lon[0]: '+lon[0]+'\nlondeg: '+londeg+'\nlonmin: '+lonmin);

        var lonsec = parseInt(lon[1]);
        var lonminsec = parseFloat(lonmin+'.'+lonsec);
        var lond = lonminsec / 60;
        var longitude = londeg + lond;
        
        if (aRawvalues[3] == 'W' || aRawvalues[3] == 'w') {
            longitude = longitude * -1;
        }
        
        mapviewer.goToPosition( new MMLocation( new MMLatLon( latitude, longitude ), 17 ) );
        mapviewer.removeAllOverlays(); 
        var pos = new MMLatLon( latitude, longitude );
        
        var icon = new MMIcon('marker.png');
        icon.iconSize = new MMDimensions(23, 26);
        icon.iconAnchor = new MMPoint(10, 25);
        icon.infoBoxAnchor = new MMPoint(10, 0);
        
        var marker = mapviewer.createMarker( pos, {'icon': icon, 'label': 'Gismo Location'} );
        var el = document.createElement('h2');
        el.appendChild ( document.createTextNode ('Gismo Location'));
        marker.setInfoBoxContent(el);
        
        //alert('Lat degrees: '+latdeg+'\nLat minutes: '+latmin+'\nLat seconds: '+latsec+'\nLatitude decimal: '+latitude+'\n\nLon degrees: '+londeg+'\nLon minutes: '+lonmin+'\nLon seconds: '+lonsec+'\nlongitude decimal: '+longitude);
    }
}

MMAttachEvent( window, 'load', onLoad );
