var selectedValue = '';
var lastTab = '';

// **************************************************************************************************
//                                               TAB NAVIGATION
// **************************************************************************************************
function displayAdvancedTab (pValue) {

  if (pValue == "ClassesTab") {
    document.getElementById("ClassesTab").style.display = "block";
    document.getElementById("LandformTab").style.display = "none";
    document.getElementById("SlopesTab").style.display = "none";
    document.getElementById("GeologyTab").style.display = "none";
    
    document.getElementById("tabClassesLink").className = "selected";
    document.getElementById("tabLandformLink").className = "";
    document.getElementById("tabSlopesLink").className = "";
    document.getElementById("tabGeologyLink").className = "";
  }
  
  else if (pValue == "LandformTab") {
    document.getElementById("ClassesTab").style.display = "none";
    document.getElementById("LandformTab").style.display = "block";
    document.getElementById("SlopesTab").style.display = "none";
    document.getElementById("GeologyTab").style.display = "none";
    
    document.getElementById("tabClassesLink").className = "";
    document.getElementById("tabLandformLink").className = "selected";
    document.getElementById("tabSlopesLink").className = "";
    document.getElementById("tabGeologyLink").className = "";
  }
  
  else if (pValue == "SlopesTab") {
    document.getElementById("ClassesTab").style.display = "none";
    document.getElementById("LandformTab").style.display = "none";
    document.getElementById("SlopesTab").style.display = "block";
    document.getElementById("GeologyTab").style.display = "none";
    
    document.getElementById("tabClassesLink").className = "";
    document.getElementById("tabLandformLink").className = "";
    document.getElementById("tabSlopesLink").className = "selected";
    document.getElementById("tabGeologyLink").className = "";
  }

  else if (pValue == "GeologyTab") {
    document.getElementById("ClassesTab").style.display = "none";
    document.getElementById("LandformTab").style.display = "none";
    document.getElementById("SlopesTab").style.display = "none";
    document.getElementById("GeologyTab").style.display = "block";
    
    document.getElementById("tabClassesLink").className = "";
    document.getElementById("tabLandformLink").className = "";
    document.getElementById("tabSlopesLink").className = "";
    document.getElementById("tabGeologyLink").className = "selected";
  }

}
// **************************************************************************************************
function displayTab (pValue) {

  if (window.top.mapframe.document.mapframeform != null) {
    document.getElementById("gCurrentMbr").value = window.top.mapframe.document.mapframeform.mapext.value;
  }

  if (pValue == "Stability") {
  
    document.getElementById("tabSummaryLink").innerHTML = "Summary";
  
    document.getElementById("StabilitySummaryTab").style.display = "block";
    document.getElementById("SimpleSummaryTab").style.display = "none";
    document.getElementById("AdvancedSummaryTab").style.display = "none";
    document.getElementById("LayersTab").style.display = "none";
    document.getElementById("FindTab").style.display = "none";
    document.getElementById("AdvancedTabs").style.display = "none";

    document.getElementById("tabSummaryLink").className = "selected";
    document.getElementById("tabLayersLink").className = "";
    document.getElementById("tabFindLink").className = "";
    
    document.getElementById("StabilityStatsFrame").src = document.getElementById("gCallStats").value + 
                                                                               "pMbr=" + window.top.mapframe.document.mapframeform.mapext.value +
                                                                               "&pType=" + document.getElementById("pStabilityClasses").value;

    document.getElementById("gLayer").value = document.getElementById("pStabilityClasses").value + "stability ";
    document.getElementById("gLines").value = document.getElementById("pStabilityClasses").value + "stability ";
  }
  
  else if (pValue == "Simple") {
  
    document.getElementById("tabSummaryLink").innerHTML = "Summary";
  
    document.getElementById("StabilitySummaryTab").style.display = "none";
    document.getElementById("SimpleSummaryTab").style.display = "block";
    document.getElementById("AdvancedSummaryTab").style.display = "none";
    document.getElementById("LayersTab").style.display = "none";
    document.getElementById("FindTab").style.display = "none";
    document.getElementById("AdvancedTabs").style.display = "none";

    document.getElementById("tabSummaryLink").className = "selected";
    document.getElementById("tabLayersLink").className = "";
    document.getElementById("tabFindLink").className = "";

    if ((lastTab == "Advanced" ) || (lastTab == "Stability")) {
      document.getElementById("pLandformTypes").value = "";
      document.getElementById("LandformLabel").style.display = "none";
      document.getElementById("GeologyLabel").style.display = "none";
      document.getElementById("gLayer").value = " ";
      document.getElementById("gLines").value = " ";
    }
    document.getElementById("SmartlineListFrame").src = document.getElementById("gCallList").value + 
                                                                            "pTheme=" + document.getElementById("pLandformTypes").value +
                                                                            "&pGroupBy=" + document.getElementById("gGroupBy").value +
                                                                            "&pMbr=" + document.getElementById("gCurrentMbr").value;
  }

  else if (pValue == "Advanced") {
    
    document.getElementById("tabSummaryLink").innerHTML = "Query Criteria";
  
    document.getElementById("StabilitySummaryTab").style.display = "none";
    document.getElementById("SimpleSummaryTab").style.display = "none";
    document.getElementById("AdvancedSummaryTab").style.display = "block";
    document.getElementById("LayersTab").style.display = "none";
    document.getElementById("FindTab").style.display = "none";
    document.getElementById("AdvancedTabs").style.display = "block";
    
    displayAdvancedTab ("ClassesTab");

    document.getElementById("tabSummaryLink").className = "selected";
    document.getElementById("tabLayersLink").className = "";
    document.getElementById("tabFindLink").className = "";
    
    document.getElementById("gLayer").value = " ";
    document.getElementById("gLines").value = " ";
  }

  else if (pValue == "LayersTab") {
    document.getElementById("StabilitySummaryTab").style.display = "none";
    document.getElementById("SimpleSummaryTab").style.display = "none";
    document.getElementById("AdvancedSummaryTab").style.display = "none";
    document.getElementById("LayersTab").style.display = "block";
    document.getElementById("FindTab").style.display = "none";
    document.getElementById("AdvancedTabs").style.display = "none";

    document.getElementById("tabSummaryLink").className = "";
    document.getElementById("tabLayersLink").className = "selected";
    document.getElementById("tabFindLink").className = "";
  }

  else if (pValue == "FindTab") {
    document.getElementById("StabilitySummaryTab").style.display = "none";
    document.getElementById("SimpleSummaryTab").style.display = "none";
    document.getElementById("AdvancedSummaryTab").style.display = "none";
    document.getElementById("LayersTab").style.display = "none";
    document.getElementById("FindTab").style.display = "block";
    document.getElementById("AdvancedTabs").style.display = "none";
    
    document.getElementById("tabSummaryLink").className = "";
    document.getElementById("tabLayersLink").className = "";
    document.getElementById("tabFindLink").className = "selected";
  }

  if ((pValue != document.getElementById("gCurrentSearch").value) &&
      (pValue != "LayersTab") && (pValue != "FindTab") ) {
    updateMap("smartline", document, "");
    document.getElementById("gCurrentSearch"). value = document.getElementById("pSearch").value;
  }
  
  lastTab = pValue;
}
// **************************************************************************************************
function changeTab (pTabName) {

  if (pTabName == "SummaryTab") {
    displayTab(document.getElementById("pSearch").value);   
  }
  
  else if (pTabName == "LayersTab") {
    displayTab("LayersTab");
  }
  
  else if (pTabName == "FindTab") {
    displayTab("FindTab");
  }

}
// **************************************************************************************************
function changeAdvTab (pTabName) {

  displayAdvancedTab (pTabName);
  
}
// **************************************************************************************************
function changeSearch() {

  document.getElementById("gAdvanced").value = "";
  displayTab (document.getElementById("pSearch").value);
  
}
// **************************************************************************************************
//                                               STABILITY TAB
// **************************************************************************************************
function changeStabilityTheme() { 
  
  document.getElementById("StabilityStatsFrame").src = document.getElementById("gCallStats").value + 
                                                                               "pMbr=" + window.top.mapframe.document.mapframeform.mapext.value +
                                                                               "&pType=" + document.getElementById("pStabilityClasses").value;
                                                                               
  document.getElementById("gLayer").value = document.getElementById("pStabilityClasses").value + "stability ";
  document.getElementById("gLines").value = document.getElementById("pStabilityClasses").value + "stability ";
  updateMap("smartline", document, "");

}
// **************************************************************************************************
//                                               SIMPLE SEARCH TAB
// **************************************************************************************************
function changeLandformTheme() {

  // empty value
  if (document.getElementById("pLandformTypes").value == "") {

    document.getElementById("LandformLabel").style.display = "none";
    document.getElementById("GeologyLabel").style.display = "none";
    document.getElementById("gGroupBy").value = "";
    document.getElementById("gLines").value = document.getElementById("pLandformTypes").value+"simple ";
  }
  
  // any landform theme
  else if (document.getElementById("pLandformTypes").value.charAt(0) == "L") {

    document.getElementById("LandformLabel").style.display = "block";
    document.getElementById("GeologyLabel").style.display = "none";
    document.getElementById("gGroupBy").value = 'FABRIC';
    document.getElementById("gLines").value = document.getElementById("pLandformTypes").value+"simple ";
  }

  // any geology theme
  else if (document.getElementById("pLandformTypes").value.charAt(0) == "G") {
  
    document.getElementById("LandformLabel").style.display = "none";
    document.getElementById("GeologyLabel").style.display = "block";
    
    if (document.getElementById("mapform").GeologyRadio[0].checked) {
      document.getElementById("gGroupBy").value = 'FABRIC';
        document.getElementById("gLines").value = document.getElementById("pLandformTypes").value+"simple ";
    }
    else {
      document.getElementById("gGroupBy").value = 'MODIFIER';
        document.getElementById("gLines").value = document.getElementById("pLandformTypes").value+"modifier ";
    }
  }
    
  // any other theme
  else {
    document.getElementById("LandformLabel").style.display = "none";
    document.getElementById("GeologyLabel").style.display = "none";
    document.getElementById("gGroupBy").value = 'SIMPLE';
    document.getElementById("gLines").value = document.getElementById("pLandformTypes").value+"simple ";
  }
  
  // change RHS summary information
  document.getElementById("SmartlineListFrame").src = document.getElementById("gCallList").value + 
                                                                            "pTheme=" + document.getElementById("pLandformTypes").value + 
                                                                            "&pGroupBy=" + document.getElementById("gGroupBy").value + 
                                                                            "&pMbr=" + window.top.mapframe.document.mapframeform.mapext.value;

  // change map
  updateMap("smartline", document, "");

}  //changelandformtheme
// **************************************************************************************************
function changeGeologyRadio(pValue) {

  document.getElementById("gGroupBy").value = pValue;
  
  document.getElementById("SmartlineListFrame").src = document.getElementById("gCallList").value + 
                                                                            "pTheme=" + document.getElementById("pLandformTypes").value + 
                                                                            "&pGroupBy=" + pValue + 
                                                                            "&pMbr=" + window.top.mapframe.document.mapframeform.mapext.value;

  if (pValue == 'FABRIC') {
    document.getElementById("gLines").value = document.getElementById("pLandformTypes").value+"simple ";
  }
  else {
    // only for G1 and G2
    document.getElementById("gLines").value = document.getElementById("pLandformTypes").value+"modifier ";
  }
  
  updateMap ("smartline", document, "");

}
// **************************************************************************************************
//                                               LIST OPERATIONS
// **************************************************************************************************
function clearList (pList) {

  for (x = pList.length; x >= 0; x = x - 1) {
      pList[x] = null;
  }
  pList[pList.length] = new Option('', '');
  
}
// **************************************************************************************************
function populateList (pList, pTempList, pParentList, pChars) {

  // copy values matching selected criteria from the parent list
  
  for (x=0; x < pTempList.length; x = x+1 ) {
    if (pParentList.value == pTempList[x].value.substring(0,pChars)) {
      pList[pList.length] = new Option(pTempList[x].text, pTempList[x].value);
    }
  }

  pList.selectedIndex = 0;
  pList.selectedIndex = -1;

}
// **************************************************************************************************
//                                               ADVANCED - SMARTLINE CLASSES / PROFILE SLOPES
// **************************************************************************************************
function changeAdvLandformTheme(pListID, pThemeListID) {

  clearList (document.getElementById(pListID));
  populateList (document.getElementById(pListID), 
                    document.getElementById(pListID+"Temp"),
                    document.getElementById(pThemeListID), 
                    2);

}
// **************************************************************************************************
function addAdvClasses(pTheme, pSmartlineListName) {

  var vList = document.getElementById(pSmartlineListName);
  var vTheme = document.getElementById(pTheme)[document.getElementById(pTheme).selectedIndex].text;

  if (vTheme == 'Backshore Proximal') vTheme = 'BackProx';
  else if (vTheme == 'Backshore Distal') vTheme = 'BackDist';
  else if (vTheme == 'Backshore Profile') vTheme = 'BackProf';

  for (x=1; x < vList.length; x = x+1 ) {
    if (vList[x].selected){
      insertRow ('SmartTable', vTheme, vList[x].text, vList[x].value, 'S');
    }
  }

  document.getElementById(pSmartlineListName).selectedIndex = -1;

}
// **************************************************************************************************
function isOdd (pNum) {
  return (pNum % 2);
}
// **************************************************************************************************
function insertRow(pTableName, pTheme, pText, pValue, pMarker) { 

  var vPos = document.getElementById(pTableName).rows.length;
  var vRow = document.getElementById(pTableName).insertRow(vPos);
  var vCell;

  // alternate colours for rows
  if ( (pMarker == 'G') || (pMarker == 'L') ) {
    if (isOdd(document.getElementById(pTableName).rows.length)) {
      vRow.className = 'BlueRow';
    }
    else {
      vRow.className = 'WhiteRow';
    }
  }

  // first column - theme
  vCell = vRow.insertCell(0);
  vCell.valign= 'top';
  vCell.innerHTML = pTheme;
  
  // second column - description
  vCell = vRow.insertCell(1);
  vCell.innerHTML = pText;
  
  // third column - checkbox
  vCell = vRow.insertCell(2);
  vCell.innerHTML = "<input type='checkbox' id='" + pMarker + "Checkbox' value='Delete' />";

  // fourth column (invisible) - value
  vCell = vRow.insertCell(3);
  vCell.style.display = 'none';
  vCell.innerHTML = pValue;

}
// **************************************************************************************************
function deleteRow(pTableName, pPos){

  document.getElementById(pTableName).deleteRow(pPos);
  
}
// **************************************************************************************************
function removeSelectedFromTable (pTableName, pMarker) {

  cb = eval('document.mapform.'+pMarker+'Checkbox');
  if (cb != null) {
    size = cb.length;
    if (size > 0) {
      for (var i=size-1; i>=0; i=i-1) {
        if (cb[i].checked == true) {
          deleteRow (pTableName, i+1);
        }
      }
    }
    else {
      if (cb.checked == true) {
        deleteRow (pTableName, 1);
      }
    }
  }
    
}
// **************************************************************************************************
// called from Remove Selected button on form
function removeSelected () {
  
  removeSelectedFromTable ('SmartTable', 'S');
  removeSelectedFromTable ('AdvGeoTable', 'G');
  removeSelectedFromTable ('AdvLandTable', 'L');

}
// **************************************************************************************************
function clearTable (pTableName) {

  for (x = document.getElementById(pTableName).rows.length-1; x > 0;  x = x-1) {
    deleteRow (pTableName, x);
  }

}
// **************************************************************************************************
// called from Unselect All button on form
function unselectAll () {
  
  checkboxSelect ('LCheckbox', false);
  checkboxSelect ('SCheckbox', false);
  checkboxSelect ('GCheckbox', false);
  
}
// **************************************************************************************************
function checkboxSelect (pName, pChecked) {

  cb = eval('document.mapform.' + pName);
  if (cb != null) {
    size = cb.length;
    if (size > 0) {
      for (var i=0; i<size; i++) {
        cb[i].checked = pChecked;
      }
    }
    else {
      cb.checked = pChecked;
    }
  }
  
}
// **************************************************************************************************
// called from Select All button on form
function selectAll() {

  checkboxSelect ('LCheckbox', true);
  checkboxSelect ('SCheckbox', true);
  checkboxSelect ('GCheckbox', true);
  
}
// **************************************************************************************************
// called from Remove All button on form
function clearAll () {

  clearTable ('SmartTable');
  clearTable ('AdvGeoTable');
  clearTable ('AdvLandTable');

}
// **************************************************************************************************
function addElement (pTableName, pCheckboxName, pQuotes) {
  
  var lines = "";
  
  vTable=document.getElementById(pTableName);
  cb = eval('document.mapform.' + pCheckboxName);
  if (cb != null) {
    size = cb.length;
    if (size > 0) {
      for (var i=0; i<size; i++) {
        if (cb[i].checked) {
          if (pQuotes)  {   lines = lines + ",''" + vTable.rows[i+1].cells[3].innerHTML + "''"; }
          else             {   lines = lines + "," + vTable.rows[i+1].cells[3].innerHTML;   }
          }
      }
    }
    else {
      if (cb.checked) {
        if (pQuotes) {     lines = lines + ",''" + vTable.rows[1].cells[3].innerHTML + "''";   }
        else            {     lines = lines + "," + vTable.rows[1].cells[3].innerHTML;  }
      }
    }
  }
  
  return lines;

  }
// **************************************************************************************************
// called from Update Map button on form
function buildLayer () {

  var vTable;
  var lines = "''0''";
  var classes = "0";

  lines = lines + addElement("SmartTable", "SCheckbox", true);
  classes = classes + addElement("AdvGeoTable", "GCheckbox", false);
  classes = classes + addElement("AdvLandTable", "LCheckbox", false);
  
  document.getElementById("gLayer").value = "advsmart ";
  document.getElementById("gLines").value = "advsmart ";
  document.getElementById("gAdvanced").value = "&lines=" + lines + "&classes=" + classes;

//alert(  document.getElementById("gAdvanced").value );
  
  updateMap("smartline", document, "");

}
// **************************************************************************************************
//                                               ADVANCED - LANDFORM CLASSIFIERS / GEOLOGY
// **************************************************************************************************
function changeFabric (pTheme) {

  var tempList = document.getElementById("p"+pTheme+"FormTemp");
  var theList = document.getElementById("p"+pTheme+"Form");
  var parentList = document.getElementById("p"+pTheme+"Fabric");

  clearList (theList);
  populateList (theList, tempList, parentList, 4);
  
  clearList (document.getElementById("p"+pTheme+"Mod"));
  
}
// **************************************************************************************************
function changeForm (pTheme) {

  var tempList = document.getElementById("p"+pTheme+"ModTemp");
  var theList = document.getElementById("p"+pTheme+"Mod");
  var parentList = document.getElementById("p"+pTheme+"Form");

  clearList (theList);
  populateList (theList, tempList, parentList, 8);

}
// **************************************************************************************************
function getLine (pType) {

  var vLine = '';
  selectedValue = '';  // global variable

  if (document.getElementById('p' + pType + 'Fabric').value != '') {
    vLine = document.getElementById('p' + pType + 'Fabric')[document.getElementById('p' + pType + 'Fabric').selectedIndex].text;
    selectedValue = document.getElementById('p' + pType + 'Fabric').value;
  }
  if (document.getElementById('p' + pType + 'Form').value != '') {
    vLine = vLine + ' * ';
    vLine = vLine + document.getElementById('p' + pType + 'Form')[document.getElementById('p' + pType + 'Form').selectedIndex].text;
    selectedValue = document.getElementById('p' + pType + 'Form').value;
  }
  if (document.getElementById('p' + pType + 'Mod').value != '') {
    vLine = vLine + ' * ';
    vLine = '<font color="blue">' + vLine + document.getElementById('p' + pType + 'Mod')[document.getElementById('p' + pType + 'Mod').selectedIndex].text + "</font>";
    selectedValue = document.getElementById('p' + pType + 'Mod').value;
  }

  return vLine;
  
}
// **************************************************************************************************
function addLandClassifier () {

  var vTheme = '';
  var vText = '';
  var vValue = '';
  var vLine = '';
  
  vLine = getLine('Proximal');
  if (vLine != '') {
    vTheme = 'Proximal';
    vText = vLine;
    vValue = 'L1'+selectedValue;
  }
  
  vLine = getLine('Distal');
  if (vLine != '') {
    if (vTheme == '') {
      vTheme = 'Distal';
      vText = vLine;
      vValue = 'L2'+selectedValue;
    }
    else {
      vTheme = vTheme + '<br /> Distal';
      vText = vText + '<br />' + vLine;
      vValue = vValue + '*' + 'L2'+selectedValue;
    }
  }
  
  vLine = getLine('Intertidal1');
  if (vLine != '') {
    if (vTheme == '') {
      vTheme = 'Intertidal1';
      vText = vLine;
      vValue = 'L3'+selectedValue;
    }
    else {
      vTheme = vTheme + '<br /> Intertidal1';
      vText = vText + '<br />' + vLine;
      vValue = vValue + '*' + 'L3'+selectedValue;
    }
  }

  vLine = getLine('Intertidal2');
  if (vLine != '') {
    if (vTheme == '') {
      vTheme = 'Intertidal2';
      vText = vLine;
      vValue = 'L4'+selectedValue;
    }
    else {
      vTheme = vTheme + '<br /> Intertidal2';
      vText = vText + '<br />' + vLine;
      vValue = vValue + '*' + 'L4'+selectedValue;
    }
  }

  vLine = getLine('Subtidal1');
  if (vLine != '') {
    if (vTheme == '') {
      vTheme = 'Subtidal1';
      vText = vLine;
      vValue = 'L5'+selectedValue;
    }
    else {
      vTheme = vTheme + '<br /> Subtidal1';
      vText = vText + '<br />' + vLine;
      vValue = vValue + '*' + 'L5'+selectedValue;
    }
  }

  vLine = getLine('Subtidal2');
  if (vLine != '') {
    if (vTheme == '') {
      vTheme = 'Subtidal2';
      vText = vLine;
      vValue = 'L6'+selectedValue;
    }
    else {
      vTheme = vTheme + '<br /> Subtidal2';
      vText = vText + '<br />' + vLine;
      vValue = vValue + '*' + 'L6'+selectedValue;
    }
  }

  if (vText != '') {
    insertRow('AdvLandTable', vTheme, vText, vValue, 'L');
  }
  
  clearLandClassifier ();

}
// **************************************************************************************************
function addGeoClassifier () {

  var vTheme = '';
  var vText = '';
  var vValue = '';
  var vLine = '';
  
  vLine = getLine('Geology1');
  if (vLine != '') {
    vTheme = 'Geology1';
    vText = vLine;
    vValue = 'G1'+selectedValue;
  }
  
  vLine = getLine('Geology2');
  if (vLine != '') {
    if (vTheme == '') {
      vTheme = 'Geology2';
      vText = vLine;
      vValue = 'G2'+selectedValue;
    }
    else {
      vTheme = vTheme + '<br /> Geology2';
      vText = vText + '<br />' + vLine;
      vValue = vValue + '*' + 'G2'+selectedValue;
    }
  }

  if (vText != '') {
    insertRow('AdvGeoTable', vTheme, vText, vValue, 'G');
  }

  clearGeoClassifier ();

}
// **************************************************************************************************
function clearLine (pType) {

  document.getElementById('p' + pType + 'Fabric').value = '';
  clearList (document.getElementById('p' + pType + 'Form'));
  clearList (document.getElementById('p' + pType + 'Mod'));  

}
// **************************************************************************************************
function clearGeoClassifier () {

  clearLine ('Geology1');
  clearLine ('Geology2');

}
// **************************************************************************************************
function clearLandClassifier () {

  clearLine ('Proximal');
  clearLine ('Distal');
  clearLine ('Intertidal1');
  clearLine ('Intertidal2');
  clearLine ('Subtidal1');
  clearLine ('Subtidal2');

}
// **************************************************************************************************
//                                               POPUPS
// **************************************************************************************************
function ShowMap() {
  mff = window.top.mapframe.document.mapframeform;

  pageSrc = '/bin/mapserv46' + 
                  '?map=' + mff.map.value + 
                  '&map_web_template=map_show.html&mapsize=1000 800' + 
                  '&mapext=' + mff.mapext.value + 
                  '&layers=' + mff.layers.value + 
                  '&mapfiltername=' +mff.mapfiltername.value + 
                  '&mapfiltername2=' + mff.mapfiltername2.value + 
                  '&mapfilter=' + mff.mapfilter.value +
                  '&lines=' + mff.lines.value +
                  '&classes=' + mff.classes.value;
    
  popupWin = window.open(pageSrc,'show','scrollbars,menubar,resizable,top=0,left=50,screenX=50,screenY=0,width='+
  parseInt(screen.width*0.90)+',height='+parseInt(screen.height*0.90));
}    
// **************************************************************************************************
function smartlineHelp() {
  var LeftPosition=(screen.width)?(screen.width-600)/2:100;
  var TopPosition=(screen.height)?(screen.height-580)/2:100;
  var settings='width='+ 600 + ',height='+ 580 + ',top=' + TopPosition + ',left=' + LeftPosition+',scrollbars';
  smartlineHelpWindow=window.open('','helpPopup',settings);
  smartlineHelpWindow.focus();
  smartlineHelpWindow.location='smartline_help.html';
}
// **************************************************************************************************
function beachHelp() {
  var LeftPosition=(screen.width)?(screen.width-600)/2:100;
  var TopPosition=(screen.height)?(screen.height-580)/2:100;
  var settings='width='+ 600 + ',height='+ 580 + ',top=' + TopPosition + ',left=' + LeftPosition+',scrollbars';
  smartlineHelpWindow=window.open('','helpPopup',settings);
  smartlineHelpWindow.focus();
  smartlineHelpWindow.location='beach_help.html';
}
// **************************************************************************************************
//                                               LOAD
// **************************************************************************************************
function loadSmartline() {
Menu_HideAll('SubMenu');
  displayTab("Simple");
  document.getElementById("LandformLabel").style.display = "block";
  document.getElementById("GeologyLabel").style.display = "none";
  document.getElementById("gGroupBy").value = 'FABRIC';

  document.getElementById("pLandformTypes").value = " ";
  document.getElementById("gLayer").value = " ";
  document.getElementById("gLines").value = " ";
  document.getElementById("mapframe").src = "/bin/mapserv46?map=" + document.getElementById("gMapFile").value + 
                                                               "&mapext=" + document.getElementById("gCurrentMbr").value +
                                                               "&mapfile_ext=" + document.getElementById("gCurrentMbr").value +
                                                               "&layers=" + document.getElementById("gLayer").value + " ";

  document.getElementById("SmartlineListFrame").src = document.getElementById("gCallList").value + 
                                                                            "pTheme=" + document.getElementById("pLandformTypes").value +
                                                                            "&pGroupBy=FABRIC" +
                                                                            "&pMbr=" + document.getElementById("gCurrentMbr").value;

changeAdvLandformTheme('pSmartlineClasses', 'pLandformTheme');
changeAdvLandformTheme('pProfSmartlineClasses', 'pProfLandformTheme');

}
// **************************************************************************************************
