var JamMap = function() {};

JamMap.StateCoordinates = { 
    "baden-wuerttemberg": {
		"bl_longitude1": 451,
		"bl_latitude1": 2852,
		"bl_longitude2": 630,
		"bl_latitude2": 2987
    },  
    "bayern": {
     	"bl_longitude1": 539,
     	"bl_latitude1": 2836,
     	"bl_longitude2": 830,
     	"bl_latitude2": 3034
     }, 
    "berlin": {
     	"bl_longitude1": 785,
     	"bl_latitude1": 3140,
     	"bl_longitude2": 826,
     	"bl_latitude2": 3161
     }, 
    "brandenburg": {
     	"bl_longitude1": 676,
     	"bl_latitude1": 3081,
     	"bl_longitude2": 886,
     	"bl_latitude2": 3214
     }, 
    "bremen": {
     	"bl_longitude1": 519,
     	"bl_latitude1": 3179,
     	"bl_longitude2": 539,
     	"bl_latitude2": 3221
     }, 
    "hamburg": {
     	"bl_longitude1": 399,
     	"bl_latitude1": 3204,
     	"bl_longitude2": 620,
     	"bl_latitude2": 3224
     }, 
    "hessen": {
     	"bl_longitude1": 466,
     	"bl_latitude1": 2964,
     	"bl_longitude2": 614,
     	"bl_latitude2": 3099
     }, 
    "mecklenburg-vorpommern": {
     	"bl_longitude1": 636,
     	"bl_latitude1": 3187,
     	"bl_longitude2": 865,
     	"bl_latitude2": 3281
     }, 
    "niedersachsen": {
     	"bl_longitude1": 399,
     	"bl_latitude1": 3078,
     	"bl_longitude2": 696,
     	"bl_latitude2": 3234
     }, 
    "rheinland-pfalz": {
     	"bl_longitude1": 367,
     	"bl_latitude1": 2938,
     	"bl_longitude2": 510,
     	"bl_latitude2": 3057
     }, 
    "saarland": {
     	"bl_longitude1": 381,
     	"bl_latitude1": 2947,
     	"bl_longitude2": 444,
     	"bl_latitude2": 2978
     }, 
    "sachsen": {
     	"bl_longitude1": 712,
     	"bl_latitude1": 3010,
     	"bl_longitude2": 903,
     	"bl_latitude2": 3101
     }, 
    "sachsen-anhalt": {
     	"bl_longitude1": 634,
     	"bl_latitude1": 3056,
     	"bl_longitude2": 791,
     	"bl_latitude2": 3183
     }, 
    "schleswig-holstein": {
     	"bl_longitude1": 497,
     	"bl_latitude1": 3202,
     	"bl_longitude2": 679,
     	"bl_latitude2": 3303
     }, 
    "thueringen": {
     	"bl_longitude1": 593,
     	"bl_latitude1": 3012,
     	"bl_longitude2": 759,
     	"bl_latitude2": 3099
     },
    "nordrhein-westfalen": {	 
     	"bl_longitude1": 352,
     	"bl_latitude1": 3019,
     	"bl_longitude2": 568,
     	"bl_latitude2": 3152
     },
     "nordrhein-westfalen-niederrhein": {	 
      	"bl_longitude1": 349,
      	"bl_latitude1": 3125,
      	"bl_longitude2": 440,
      	"bl_latitude2": 3080
      },
      "nordrhein-westfalen-rheinland": {	 
     	"bl_longitude1": 351,
     	"bl_latitude1": 3084,
     	"bl_longitude2": 456,
     	"bl_latitude2": 3033
     },
     "nordrhein-westfalen-ruhrgebiet": {	 
     	"bl_longitude1": 397,
     	"bl_latitude1": 3105,
     	"bl_longitude2": 464,
     	"bl_latitude2": 3071
     },
     "nordrhein-westfalen-sauerland": {	 
     	"bl_longitude1": 416,
     	"bl_latitude1": 3091,
     	"bl_longitude2": 507,
     	"bl_latitude2": 3046
     },
     "nordrhein-westfalen-westfalen": {	 
      	"bl_longitude1": 413,
      	"bl_latitude1": 3152,
      	"bl_longitude2": 563,
      	"bl_latitude2": 3078
      }
};

JamMap.minimumWidth = null; 
JamMap.viewPercentage = null; 

JamMap.StartMap = function() {};
JamMap.StartMap.longitude1 = null; 
JamMap.StartMap.latitude1 = null; 
JamMap.StartMap.longitude2= null;
JamMap.StartMap.latitude2 = null;

JamMap.StartMap.center = function() { 
	JamMap.Map.longitude1 = JamMap.StartMap.longitude1; 
	JamMap.Map.latitude1 = JamMap.StartMap.latitude1; 
	JamMap.Map.longitude2= JamMap.StartMap.longitude2;
	JamMap.Map.latitude2 = JamMap.StartMap.latitude2;

	JamMap.Map.center();
};

JamMap.Map = function() {};
JamMap.Map.longitude1 = null; 
JamMap.Map.latitude1 = null; 
JamMap.Map.longitude2= null;
JamMap.Map.latitude2 = null;

JamMap.Map.center = function() { 
    Map24.MapApplication.setMapView({ 
    	Longitudes : JamMap.Map.longitude1+"|"+JamMap.Map.longitude2, 
    	Latitudes : JamMap.Map.latitude1+"|"+JamMap.Map.latitude2, 
    	MinimumWidth :  JamMap.minimumWidth, 
    	ViewPercentage : JamMap.viewPercentage  
    });
};

JamMap.init = function() {
    // Load core and wrapper classes
    Map24.loadApi( ["core_api", "wrapper_api"] , map24ApiLoaded );
};

// Callback function called when the API is loaded. The map can now be shown.
function map24ApiLoaded() {
    Map24.MapApplication.setStartMapView({
    	UpperLeftLongitude: JamMap.StartMap.longitude1, 
    	UpperLeftLatitude: JamMap.StartMap.latitude1, 
    	LowerRightLongitude: JamMap.StartMap.longitude2, 
    	LowerRightLatitude: JamMap.StartMap.latitude2,
    	MinimumWidth :  JamMap.minimumWidth
    });
          
    Map24.MapApplication.init( { NodeName: "maparea", MapType: "Static", CustomerLayers: true } );
    
    Map24.MapApplication.controlLayer( { Control: "ENABLE", LayerIds: '12553|12554', Map24Layers : false});
       
    JamMap.StartMap.center();
};

JamMap.setCoordinatesByStateName = function(state) {
	if(JamMap.StateCoordinates[state]) {
    	JamMap.Map.longitude1 = JamMap.StateCoordinates[state]["bl_longitude1"];
    	JamMap.Map.longitude2 = JamMap.StateCoordinates[state]["bl_longitude2"];
    	JamMap.Map.latitude1 = JamMap.StateCoordinates[state]["bl_latitude1"];
    	JamMap.Map.latitude2 = JamMap.StateCoordinates[state]["bl_latitude2"];
    }
}

JamMap.setStartMapCoordinatesByStateName = function(state) {
	if(JamMap.StateCoordinates[state]) {
    	JamMap.StartMap.longitude1 = JamMap.StateCoordinates[state]["bl_longitude1"];
    	JamMap.StartMap.longitude2 = JamMap.StateCoordinates[state]["bl_longitude2"];
    	JamMap.StartMap.latitude1 = JamMap.StateCoordinates[state]["bl_latitude1"];
    	JamMap.StartMap.latitude2 = JamMap.StateCoordinates[state]["bl_latitude2"];
    }
}

// Karte auf ein Bundesland zentrieren
JamMap.centerStateMap = function(state) {
	JamMap.Map.longitude1 = 352; 
	JamMap.Map.latitude1 = 3019; 
    JamMap.Map.longitude2 = 568;
    JamMap.Map.latitude2 = 3152;
    
    if(state == undefined || state === "" )
    	state = $('#bundesland').attr('value');

    JamMap.setCoordinatesByStateName(state);
    
    JamMap.Map.center();
};

function bundeslandkarte(state) { 
	JamMap.centerStateMap(state);
};

function ausgangskarte() { 
	JamMap.StartMap.center();
}

