var postState = '<?= $_POST["state"] ?>';
var postCountry = '<?= $_POST["Clist"] ?>';
var postState = '';
var postCountry = '';

// State table
//
// To edit the list, just delete a line or add a line. Order is important.
// The order displayed here is the order it appears on the drop down.
//
var state = '\
NSW:AlbionPark:Albion Park|\
NSW:Alexandria:Alexandria|\
NSW:BassHill:Bass Hill|\
NSW:BatemansBay:Batemans Bay|\
NSW:Bathurst:Bathurst|\
NSW:BaulkhamHills:Baulkham Hills|\
NSW:Belconnen:Belconnen|\
NSW:BellaVista:Bella Vista|\
NSW:Blacktown:Blacktown|\
NSW:Bowral:Bowral|\
NSW:Caringbah:Caringbah|\
NSW:Casula:Casula|\
NSW:Cessnock:Cessnock|\
NSW:Dapto:Dapto|\
NSW:Drummoyne:Drummoyne|\
NSW:Dubbo:Dubbo|\
NSW:DulwichHill:Dulwich Hill|\
NSW:EmuPlains:Emu Plains|\
NSW:Engadine:Engadine|\
NSW:Epping:Epping|\
NSW:Erina:Erina|\
NSW:ErskinePark:Erskine Park|\
NSW:Forster:Forster|\
NSW:Illawong:Illawong|\
NSW:Jannali:Jannali|\
NSW:Kiama:Kiama|\
NSW:KingsPark:Kings Park|\
NSW:LakeHaven:Lake Haven|\
NSW:Lavington:Lavington|\
NSW:Maitland:Maitland|\
NSW:Manly:Manly|\
NSW:Merrylands:Merrylands|\
NSW:MonaVale:Mona Vale|\
NSW:Morttdale:Morttdale|\
NSW:MtAnnan:Mt Annan|\
NSW:MtDruit:Mt Druit|\
NSW:NeutralBay:Neutral Bay|\
NSW:NorthRyde:North Ryde|\
NSW:Northbridge:Northbridge|\
NSW:Nowra:Nowra|\
NSW:Penrith:Penrith|\
NSW:RaymondTerrace:Raymond Terrace|\
NSW:Richmond:Richmond|\
NSW:RushcuttersBay:Rushcutters Bay|\
NSW:SevenHills:Seven Hills|\
NSW:ShellHarbour:Shell Harbour|\
NSW:Singleton:Singleton|\
NSW:StMarys:St Marys|\
NSW:Tuggerah:Tuggerah|\
NSW:Unanderra:Unanderra|\
NSW:WaggaWagga:Wagga Wagga|\
NSW:Wallan:Wallan|\
NSW:WarnersBay:Warners Bay|\
NSW:Werrington:Werrington|\
NSW:WetherillPark:Wetherill Park|\
NSW:Wodonga:Wodonga|\
NSW:Woollongong:Woollongong|\
NSW:Woonona:Woonona|\
VIC:AltonaNorth:Altona North|\
VIC:AspendaleGardens:Aspendale Gardens|\
VIC:Balaclava:Balaclava|\
VIC:Balwyn:Balwyn|\
VIC:Bayswater:Bayswater|\
VIC:Beaumaris:Beaumaris|\
VIC:Bendigo:Bendigo|\
VIC:Berwick:Berwick|\
VIC:Blackburn:Blackburn|\
VIC:Boronia:Boronia|\
VIC:Braybrook:Braybrook|\
VIC:Brighton:Brighton|\
VIC:Camberwell:Camberwell|\
VIC:DingleyVillage:Dingley Village|\
VIC:DoncasterEast:Doncaster East|\
VIC:EndeavourHills:Endeavour Hills|\
VIC:Frankston:Frankston|\
VIC:Gisborne:Gisborne|\
VIC:Hastings:Hastings|\
VIC:Hawthorn:Hawthorn|\
VIC:Highton:Highton|\
VIC:HoppersCrossing:Hoppers Crossing|\
VIC:Ivanhoe:Ivanhoe|\
VIC:Malvern:Malvern|\
VIC:McKinnon:Mc Kinnon|\
VIC:MooneyPonds:Mooney Ponds|\
VIC:Mornington:Mornington|\
VIC:MtWaverley:Mt Waverley|\
VIC:NarreWarren:Narre Warren|\
VIC:Niddrie:Niddrie|\
VIC:Rosanna:Rosanna|\
VIC:Rosebud:Rosebud|\
VIC:Shepparton:Shepparton|\
VIC:VermontSouth:Vermont South|\
VIC:Wendouree:Wendouree|\
VIC:Westmeadows:Westmeadows|\
WA:Applecross:Applecross|\
WA:Beechboro:Beechboro|\
WA:CanningVale:Canning Vale|\
WA:Freemantle:Freemantle|\
WA:MandurahNorth:Mandurah North|\
WA:Marmion:Marmion|\
WA:Maylands:Maylands|\
WA:Midland:Midland|\
WA:Morley:Morley|\
WA:Rockingham:Rockingham|\
WA:Success:Success|\
WA:Thornlie:Thornlie|\
WA:Warwick:Warwick|\
WA:Yokine:Yokine|\
SA:Blakeview:Blakeview|\
SA:Gawler:Gawler|\
SA:GoldenGrove:Golden Grove|\
SA:Goodwood:Goodwood|\
SA:Greenacres:Greenacres|\
SA:Littlehampton:Littlehampton|\
SA:MawsonLakes:Mawson Lakes|\
SA:MelrosePark:Melrose Park|\
SA:Modbury:Modbury|\
SA:MorphettVale:Morphett Vale|\
SA:MountBarker:Mount Barker|\
SA:PortAdelaide:Port Adelaide|\
SA:Prospect:Prospect|\
SA:Salisbury:Salisbury|\
SA:StMorris:St Morris|\
SA:TrottPark:Trott Park|\
TAS:Devonport:Devonport|\
TAS:RosnyPark:Rosny Park|\
TAS:Wivenhoe:Wivenhoe|\
QLD:Arundel:Arundel|\
QLD:Bundaberg:Bundaberg|\
QLD:Cairns:Cairns|\
QLD:Corinda:Corinda|\
QLD:Fairfield:Fairfield|\
QLD:Greenslopes:Greenslopes|\
QLD:HerveyBay:Hervey Bay|\
QLD:Highfields:Highfields|\
QLD:Innisfail:Innisfail|\
QLD:Labrador:Labrador|\
QLD:Mackay:Mackay|\
QLD:Miama:Miama|\
QLD:Morayfield:Morayfield|\
QLD:RegentsPark:Regents Park|\
QLD:Robina:Robina|\
QLD:Smithfield:Smithfield|\
QLD:Southport:Southport|\
QLD:TheGap:The Gap|\
QLD:Thuringowa:Thuringowa|\
QLD:Toowoomba:Toowoomba|\
';

// Country data table
//
// To edit the list, just delete a line or add a line. Order is important.
// The order displayed here is the order it appears on the drop down.
//
var country = '\
ACT:Australian Capital Territory|\
NT:Northern Territory|\
NSW:New South Wales|\
QLD:Queensland|\
SA:South Australia|\
TAS:Tasmania|\
VIC:Victoria|\
WA:Western Australia|\
';

function TrimString(sInString) {
  if ( sInString ) {
    sInString = sInString.replace( /^\s+/g, "" );// strip leading
    return sInString.replace( /\s+$/g, "" );// strip trailing
  }
}

// Populates the country selected with the counties from the country list
function populateCountry(defaultCountry) {
  if ( postCountry != '' ) {
    defaultCountry = postCountry;
  }
  var countryLineArray = country.split('|');  // Split into lines
  var selObj = document.getElementById('countrySelect');
  selObj.options[0] = new Option('Select State','');
  selObj.selectedIndex = 0;
  for (var loop = 0; loop < countryLineArray.length; loop++) {
    lineArray = countryLineArray[loop].split(':');
    countryCode  = TrimString(lineArray[0]);
    countryName  = TrimString(lineArray[1]);
    if ( countryCode != '' ) {
      selObj.options[loop + 1] = new Option(countryName, countryCode);
    }
    if ( defaultCountry == countryCode ) {
      selObj.selectedIndex = loop + 1;
    }
  }
}

function populateState() {
  var selObj = document.getElementById('stateSelect');
  var foundState = false;
  // Empty options just in case new drop down is shorter
  if ( selObj.type == 'select-one' ) {
    for (var i = 0; i < selObj.options.length; i++) {
      selObj.options[i] = null;
    }
    selObj.options.length=null;
    selObj.options[0] = new Option('Select Gym','');
    selObj.selectedIndex = 0;
  }
  // Populate the drop down with states from the selected country
  var stateLineArray = state.split("|");  // Split into lines
  var optionCntr = 1;
  for (var loop = 0; loop < stateLineArray.length; loop++) {
    lineArray = stateLineArray[loop].split(":");
    countryCode  = TrimString(lineArray[0]);
    stateCode    = TrimString(lineArray[1]);
    stateName    = TrimString(lineArray[2]);
  if (document.getElementById('countrySelect').value == countryCode && countryCode != '' ) {
    // If it's a input element, change it to a select
      if ( selObj.type == 'text' ) {
        parentObj = document.getElementById('stateSelect').parentNode;
        parentObj.removeChild(selObj);
        var inputSel = document.createElement("SELECT");
        inputSel.setAttribute("name","state");
        inputSel.setAttribute("id","stateSelect");
        parentObj.appendChild(inputSel) ;
        selObj = document.getElementById('stateSelect');
        selObj.options[0] = new Option('Select State','');
        selObj.selectedIndex = 0;
      }
      if ( stateCode != '' ) {
        selObj.options[optionCntr] = new Option(stateName, stateCode);
      }
      // See if it's selected from a previous post
      if ( stateCode == postState && countryCode == postCountry ) {
        selObj.selectedIndex = optionCntr;
      }
      foundState = true;
      optionCntr++
    }
  }
  // If the country has no states, change the select to a text box
  if ( ! foundState ) {
    parentObj = document.getElementById('stateSelect').parentNode;
    parentObj.removeChild(selObj);
  // Create the Input Field
    var inputEl = document.createElement("INPUT");
    inputEl.setAttribute("id", "stateSelect");
    inputEl.setAttribute("type", "text");
    inputEl.setAttribute("name", "state");
    inputEl.setAttribute("size", 20);
    inputEl.setAttribute("value", postState);
    parentObj.appendChild(inputEl) ;
  }
}

function initCountry(country) {
  populateCountry(country);
  populateState();
}