var metadataWindow;
var AddObjectWindow;
var dbnotesWindow;

function showDBNOTES(label) {

    dbnotesWindow = dijit.byId("dbnotesWindow");
    var metadataText = '';

}


function showMetadata(label) {
    metadataWindow = dijit.byId("metadataWindow");
    
    var metadataText = '';

    switch (label)
    {
        case "Offshore SACs":
        	metadataText = "No metadata supplied";
              break;
        case "UK_SACswithMarineComponents_WGS84":
              metadataText = "No metadata supplied";
              break; 
        case "UK_SPAswithMarineComponents_WGS84":
            metadataText = "This map shows Natura 2000 sites.  Natura 2000 sites come in two varieties: Special Areas of Conservation (SACs), and Special Protection Areas for Birds (SPAs).  They are designated under the EC Habitats and Birds Directives, respectively.  Some very important areas may become both SAC and SPA.  Both these directives have annexes listing species and habitats of concern, for which sites are designated.  SACs and SPAs which are designated wholly or in part to protect marine species and habitats, and which include marine areas within their boundaries, are also termed as SACs and SPAs with marine components.  SACs and SPAs beyond the territorial sea limit (12 nautical miles) are known as offshore SACs and SPAs.";
            break;
        case "Ramsar":
            metadataText = "Ramsar sites submitted by the UK Government to the Ramsar Secretariat";
            break;
        case "Regional MCZ Projects":
            metadataText = "The Marine Conservation Zone Project has been established by Defra, Natural England and the Joint Nature Conservation Committee to identify and recommend Marine Conservation Zones to Government. The Marine Conservation Zone Project will be delivered through four Regional Projects covering the South-West, Irish Sea, North Sea and Eastern Channel. They will work with sea users and interest groups to identify Marine Conservation Zones and provide recommendations for sites within their regions to Government.";
            break;
        case "Bathymetry":
            metadataText = "A global 30 arc-second grid. Released in January 2009, and generated by combining quality-controlled ship depth soundings with interpolation between sounding points guided by satellite-derived gravity data. The GEBCO_08 Grid is currently a development product which will undergo periodic update.";
            break;
        case "Bioherm_Features":
        case "Fluid_and_Gas_Seep_Structures":
        case "Mud_Diapir":
        case "Rock Structures":
            metadataText = "Map of geological and geomorphological features found on the seabed in UK Continental Shelf waters. Mapping of these seabed features was achieved through an extensive search of published literature including scientific journals, British Geological Survey reports/ seabed maps and UKHO Admiralty Charts. Identified features have been classified into one of five main process units with each process unit containing a number of sub-divisions.";
            break;
        case "Topographic_Features_and_rock_outcrops":
            metadataText = "No metadata supplied";
            break;
        case "Ice_Limit":
            metadataText = "No metadata supplied";
            break;
        case "Depositional_Fluvioglacial_Features":
            metadataText = "No metadata supplied";
            break;
        case "Depositional_Glacigenic_Features":
            metadataText = "No metadata supplied";
            break;
        case "Erosional_Fluvioglacial_Features":
            metadataText = "No metadata supplied";
            break;
        case "Erosional_Glacigenic_Features":
            metadataText = "No metadata supplied";
            break;
        case "Periglacial_Features":
            metadataText = "No metadata supplied";
            break;
        case "Bedform_Field_Other":
            metadataText = "No metadata supplied";
            break;
        case "Erosional_Scour_Features":
            metadataText = "No metadata supplied";
            break;
        case "Ebb_Delta":
            metadataText = "No metadata supplied";
            break;
        case "Longitudinal_Bedform_Features":
            metadataText = "No metadata supplied";
            break;
        case "Tidal_Bank_Features":
            metadataText = "No metadata supplied";
            break;
        case "Transverse_Bedform_Features":
            metadataText = "No metadata supplied";
            break;
        case "Turbidity_Flow_Features":
            metadataText = "No metadata supplied";
            break;
        case "Rollover_Fold":
            metadataText = "No metadata supplied";
            break;
        case "Slide_Deposit":
            metadataText = "No metadata supplied";
            break;
        case "Slide_Scar":
            metadataText = "No metadata supplied";
            break;
        default:
            metadataText = "No metadata supplied";
    }

    metadataWindow.attr("content", metadataText);

    metadataWindow.show();
}

function layersChanged(tree) {
    // Clear any messages as this is in the same place as the roller image
    document.getElementById('message').innerHTML = '';

    mapLayers = '';

    var b = tree.rootNode.getDescendants();
            var i;
    for (i = b.length-1; i > 0; i--) {
        if (tree.rootNode.getDescendants()[i].item.type[0] == 'LegendLabel') {
            if (tree.rootNode.getDescendants()[i].checkNode.checked == true) {
               // alert(tree.rootNode.getDescendants()[i].labelNode.innerHTML);
                mapLayers = mapLayers + tree.rootNode.getDescendants()[i].labelNode.innerHTML.replace(/ /g,'_') + ',';
            }
        }
    }

    if (mapLayers.length != 0)
        mapLayers = mapLayers.substring(0, mapLayers.length - 1);

    // Update map layers
    copyrightdata = showDBCopyrightJM();
   	//alert(mapLayers);
    createWMSOverlay(mapLayers);

    //    if (mapLayers != '') {
    //        // Update layer legend
    //        document.getElementById('LegendFloatingPaneImage').src = "Handlers/LegendHandler.ashx?layer=" + mapLayers;
    //        //document.getElementById('LegendFloatingPane').style.height = document.getElementById('LegendFloatingPane').style.height;

    //        document.getElementById('LegendFloatingPaneImage').style.display = 'none';
    //        document.getElementById('LegendFloatingPaneImage').style.display = 'block';

    //        document.getElementById('LegendFloatingPane').style.visibility = 'hidden';
    //        document.getElementById('LegendFloatingPane').style.visibility = 'visible';

    //        document.getElementById('LegendFloatingPane').style.display = 'none';
    //        document.getElementById('LegendFloatingPane').style.display = 'block';
    //    }
    //    else {
    //        document.getElementById('LegendFloatingPaneImage').src = "";
    //    }
}

function createWMSOverlay(overlayLayers) {
    if (map) {
        // Remove overlay if it exists
        if (wmsOverlay)
            if (map.getLayer(wmsOverlay.id))
            map.removeLayer(wmsOverlay, false)
	console.log(overlayLayers);
        if (overlayLayers != '') {
            wmsOverlay = new OpenLayers.Layer.WMS(
	            'MarineOverlays',
		        'Handlers/BaseMappingHandler.ashx',               
    	        {'layers': overlayLayers, 'format': 'image/png' },
    	       
		        {'isBaseLayer': false,
		          attribution: copyrightdata,
		         'singleTile': true,
		         'projection': new OpenLayers.Projection('EPSG:900913'),
		         'displayProjection': new OpenLayers.Projection('EPSG:900913'),
		         units: "m",
		         maxResolution: 156543.0339,
		         'gutter': '100',
		         maxExtent: new OpenLayers.Bounds(-20037508, -20037508, 20037508, 20037508.34)
		        }
	        );

            wmsOverlay.events.register('loadstart', wmsOverlay, showOverlayTwirly);
            wmsOverlay.events.register('loadend', wmsOverlay, hideOverlayTwirly);
            wmsOverlay.ratio = 1.2;
            wmsOverlay.transitionEffect = 'resize';
            
            
            
        }

        if (overlayLayers != '')
            map.addLayers([wmsOverlay]);
            showDBNotesJM();
    }
     
}

function showOverlayTwirly() {
    map.div.style.cursor = 'wait';
    document.getElementById('loadingImgData').style.visibility = 'visible';
}

function hideOverlayTwirly() {
    map.div.style.cursor = 'pointer';
    document.getElementById('loadingImgData').style.visibility = 'hidden';
}

function clearAllLayers() {
    // Clear all layer checkboxes and refresh layers
    
	var b = tree.rootNode.getDescendants();
    var i;
	for (i = b.length-1; i > 0; i--) {
		if (b[i].item.type[0] == 'LegendLabel') {
			if (b[i].label == 'PISCES Project Extent'){
			} else {
			b[i].checkNode.checked = false;
			}
		}
    }
	layersChanged(tree);
}
