var gRefer = parent.location.href;

function autotab(original, destination) {
    if (original.getAttribute && original.value.length == original.getAttribute("maxlength"))
        destination.focus();
}

function getCheckedValue(radioObj) {
    if (!radioObj)
        return "";
    var radioLength = radioObj.length;
    if (radioLength == undefined)
        if (radioObj.checked)
        return radioObj.value;
    else
        return "";
    for (var i = 0; i < radioLength; i++) {
        if (radioObj[i].checked) {
            return radioObj[i].value;
        }
    }
    return "";
}

function CheckCountry() {
    var tbl = document.getElementById("labelid");
    var tbl2 = document.getElementById("fieldid");
    var tbl3 = document.getElementById("phoneid");
    var tbl4 = document.getElementById("numberid");
    
    if (document.demo_account_form.country.value == 'United States')
				{
				  var accounttype = document.demo_account_form.fx_sub_company.value;
				  
				  if (accounttype == "FRXM")
				  {
				  	accounttype = "mini";
				  }
				  else
				  {
				  	accounttype = "stnd";
				  }
				  				  
				  window.location = "http://www.forex.com/forex_demo_account_us.html" + "?FirstName=" + document.demo_account_form.first_name.value + "&LastName=" + document.demo_account_form.last_name.value + "&Type=" + accounttype;
				}	else if (document.demo_account_form.country.value == 'Australia')
				{
				  var accounttype = document.demo_account_form.fx_sub_company.value;
				  
				  if (accounttype == "FRXM")
				  {
				  	accounttype = "mini";
				  }
				  else
				  {
				  	accounttype = "stnd";
				  }
				  				  
				  window.location = "http://www.forex.com/au/forex_demo_account_au.html" + "?FirstName=" + document.demo_account_form.first_name.value + "&LastName=" + document.demo_account_form.last_name.value + "&Type=" + accounttype;
				}	
				else if (document.demo_account_form.country.value == 'Japan')
				{
				  var accounttype = document.demo_account_form.fx_sub_company.value;
				  
				  if (accounttype == "FRXM")
				  {
				  	accounttype = "mini";
				  }
				  else
				  {
				  	accounttype = "stnd";
				  }
				  				  
				  window.location = "http://jp.forex.com/jp/services/forextrader_open_demo_jp.shtml" + "?FirstName=" + document.demo_account_form.first_name.value + "&LastName=" + document.demo_account_form.last_name.value + "&Type=" + accounttype;
				}	

    else if (document.demo_account_form.country.value == 'Canada') {
        tbl.innerHTML = '<span class="bodyblack">Провинция/Область:</span>'
        tbl2.innerHTML = '<select name="state" class="bodyblack" onchange="CheckProvince();" tabindex="4"><option value="" selected>Выберите провинцию/область</option><option value="">-------------------------------------------------------</option><option value="Alberta">Alberta</option><option value="British Columbia">British Columbia</option><option value="Manitoba">Manitoba</option><option value="New Brunswick">New Brunswick</option><option value="Newfoundland and Labrador">Newfoundland and Labrador</option><option value="Northwest Territories">Northwest Territories</option><option value="Nova Scotia">Nova Scotia</option><option value="Nunavut">Nunavut</option><option value="Ontario">Ontario</option><option value="Prince Edward Island">Prince Edward Island</option><option value="Quebec">Quebec</option><option value="Saskatchewan">Saskatchewan</option><option value="Yukon">Yukon</option></select><input type="hidden" name="city" value="N/A">'

        tbl3.innerHTML = '<span class="bodyblack">Телефон:</span>'
        tbl4.innerHTML = '<span class="bodyblack"><span style="font-size:14px">(</span> <input type="text" size="3" class="bodyblack" name="phonearea" onKeyup="autotab(this, document.demo_account_form.phoneprefix);" maxlength="3" tabindex="5"> <span style="font-size:14px">)</span> <input type="text" size="3" maxlength="3" class="bodyblack" name="phoneprefix" onKeyup="autotab(this, document.demo_account_form.phonesuffix);" tabindex="6"> <span style="font-size:14px">-</span> <input type="text" size="4" maxlength="4" class="bodyblack" name="phonesuffix" onKeyup="autotab(this, document.demo_account_form.email);" tabindex="7"></span>'
    }
    
    
    else if (document.demo_account_form.country.value.length > 0) {
        tbl.innerHTML = '<span class="bodyblack">Город:</span>'
        tbl2.innerHTML = '<input type="text" name="city" size="35" maxlength="50" class="bodyblack" tabindex="4"><input type="hidden" name="state" value="N/A">'

        tbl3.innerHTML = '<span class="bodyblack">Телефон:</span>'
        tbl4.innerHTML = '<input type="text" size="5" maxlength="5" class="bodyblack" name="phonearea" READONLY style="background-color: #CCCCCC"> - <input type="text" size="22" maxlength="31" class="bodyblack" name="phonesuffix" tabindex="7">'

        switch (document.demo_account_form.country.value) {
            case 'Albania': document.demo_account_form.phonearea.value = '355'; break;
            case 'Algeria': document.demo_account_form.phonearea.value = '213'; break;
            case 'Andorra': document.demo_account_form.phonearea.value = '376'; break;
            case 'Angola': document.demo_account_form.phonearea.value = '244'; break;
            case 'Antilles Netherland': document.demo_account_form.phonearea.value = '599'; break;
            case 'Antiqua (WI)': document.demo_account_form.phonearea.value = '1-268'; break;
            case 'Arab Rep. Egypt': document.demo_account_form.phonearea.value = '20'; break;
            case 'Argentina': document.demo_account_form.phonearea.value = '54'; break;
            case 'Armenia': document.demo_account_form.phonearea.value = '374'; break;
            case 'Aruba': document.demo_account_form.phonearea.value = '297'; break;
            case 'Australia': document.demo_account_form.phonearea.value = '61'; break;
            case 'Austria': document.demo_account_form.phonearea.value = '43'; break;
            case 'Azerbaijan': document.demo_account_form.phonearea.value = '994'; break;
            case 'Bahamas': document.demo_account_form.phonearea.value = '1-242'; break;
            case 'Bahrain': document.demo_account_form.phonearea.value = '973'; break;
            case 'Bangladesh': document.demo_account_form.phonearea.value = '880'; break;
            case 'Barbados': document.demo_account_form.phonearea.value = '1-246'; break;
            case 'Belarus': document.demo_account_form.phonearea.value = '375'; break;
            case 'Belgium': document.demo_account_form.phonearea.value = '32'; break;
            case 'Belize': document.demo_account_form.phonearea.value = '501'; break;
            case 'Benin': document.demo_account_form.phonearea.value = '229'; break;
            case 'Bermuda': document.demo_account_form.phonearea.value = '1-441'; break;
            case 'Bhutan': document.demo_account_form.phonearea.value = '975'; break;
            case 'Bolivia': document.demo_account_form.phonearea.value = '591'; break;
            case 'Bosnia-Herzegovina': document.demo_account_form.phonearea.value = '387'; break;
            case 'Botswana': document.demo_account_form.phonearea.value = '267'; break;
            case 'Brazil': document.demo_account_form.phonearea.value = '55'; break;
            case 'British Virgin': document.demo_account_form.phonearea.value = '1-284'; break;
            case 'Brunei Darussalam': document.demo_account_form.phonearea.value = '673'; break;
            case 'Bulgaria': document.demo_account_form.phonearea.value = '359'; break;
            case 'Burkina Faso': document.demo_account_form.phonearea.value = '226'; break;
            case 'Cambodia': document.demo_account_form.phonearea.value = '855'; break;
            case 'Cameroon': document.demo_account_form.phonearea.value = '237'; break;
            case 'Canary Islands': document.demo_account_form.phonearea.value = '34'; break;
            case 'Cayman Islands': document.demo_account_form.phonearea.value = '1-345'; break;
            case 'Central African': document.demo_account_form.phonearea.value = '236'; break;
            case 'Chad': document.demo_account_form.phonearea.value = '235'; break;
            case 'Chile': document.demo_account_form.phonearea.value = '56'; break;
            case 'China': document.demo_account_form.phonearea.value = '86'; break;
            case 'Chinese Taipei': document.demo_account_form.phonearea.value = '886'; break;
            case 'Colombia': document.demo_account_form.phonearea.value = '57'; break;
            case 'Congo Republic': document.demo_account_form.phonearea.value = '242'; break;
            case 'Cook Islands': document.demo_account_form.phonearea.value = '682'; break;
            case 'Costa Rica': document.demo_account_form.phonearea.value = '506'; break;
            case 'Croatia': document.demo_account_form.phonearea.value = '385'; break;
            case 'Cyprus': document.demo_account_form.phonearea.value = '357'; break;
            case 'Czech Republic': document.demo_account_form.phonearea.value = '420'; break;
            case 'Denmark': document.demo_account_form.phonearea.value = '45'; break;
            case 'Djibouti': document.demo_account_form.phonearea.value = '253'; break;
            case 'Dominica': document.demo_account_form.phonearea.value = '1-767'; break;
            case 'Dominican Republic': document.demo_account_form.phonearea.value = '1-809'; break;
            case 'East Timor': document.demo_account_form.phonearea.value = '670'; break;
            case 'Ecuador': document.demo_account_form.phonearea.value = '593'; break;
            case 'Egypt': document.demo_account_form.phonearea.value = '20'; break;
            case 'El Salvador': document.demo_account_form.phonearea.value = '503'; break;
            case 'Equatorial Guin': document.demo_account_form.phonearea.value = '240'; break;
            case 'Estonia': document.demo_account_form.phonearea.value = '372'; break;
            case 'Ethiopia': document.demo_account_form.phonearea.value = '251'; break;
            case 'Faroe Is.': document.demo_account_form.phonearea.value = '298'; break;
            case 'Fiji': document.demo_account_form.phonearea.value = '679'; break;
            case 'Finland': document.demo_account_form.phonearea.value = '358'; break;
            case 'France': document.demo_account_form.phonearea.value = '33'; break;
            case 'French Guiana': document.demo_account_form.phonearea.value = '594'; break;
            case 'Gabon Republic': document.demo_account_form.phonearea.value = '241'; break;
            case 'Gambia': document.demo_account_form.phonearea.value = '220'; break;
            case 'Georgia': document.demo_account_form.phonearea.value = '995'; break;
            case 'Germany': document.demo_account_form.phonearea.value = '49'; break;
            case 'Ghana': document.demo_account_form.phonearea.value = '233'; break;
            case 'Gibraltar': document.demo_account_form.phonearea.value = '350'; break;
            case 'Greece': document.demo_account_form.phonearea.value = '30'; break;
            case 'Greenland': document.demo_account_form.phonearea.value = '299'; break;
            case 'Grenada': document.demo_account_form.phonearea.value = '1-473'; break;
            case 'Guadeloupe': document.demo_account_form.phonearea.value = '590'; break;
            case 'Guatemala': document.demo_account_form.phonearea.value = '502'; break;
            case 'Guinea': document.demo_account_form.phonearea.value = '224'; break;
            case 'Guyana': document.demo_account_form.phonearea.value = '592'; break;
            case 'Haiti': document.demo_account_form.phonearea.value = '509'; break;
            case 'Honduras': document.demo_account_form.phonearea.value = '504'; break;
            case 'Hong Kong': document.demo_account_form.phonearea.value = '852'; break;
            case 'Hungary': document.demo_account_form.phonearea.value = '36'; break;
            case 'Iceland': document.demo_account_form.phonearea.value = '354'; break;
            case 'India': document.demo_account_form.phonearea.value = '91'; break;
            case 'Indonesia': document.demo_account_form.phonearea.value = '62'; break;
            case 'Ireland': document.demo_account_form.phonearea.value = '353'; break;
            case 'Israel': document.demo_account_form.phonearea.value = '972'; break;
            case 'Italy': document.demo_account_form.phonearea.value = '39'; break;
            case 'Ivory Coast': document.demo_account_form.phonearea.value = '225'; break;
            case 'Jamaica': document.demo_account_form.phonearea.value = '1-876'; break;
            case 'Japan': document.demo_account_form.phonearea.value = '81'; break;
            case 'Jordan': document.demo_account_form.phonearea.value = '962'; break;
            case 'Kazakhstan': document.demo_account_form.phonearea.value = '7'; break;
            case 'Kenya': document.demo_account_form.phonearea.value = '254'; break;
            case 'Kuwait': document.demo_account_form.phonearea.value = '965'; break;
            case 'Kyrghyzstan': document.demo_account_form.phonearea.value = '996'; break;
            case 'Laos': document.demo_account_form.phonearea.value = '856'; break;
            case 'Latvia': document.demo_account_form.phonearea.value = '371'; break;
            case 'Lebanon': document.demo_account_form.phonearea.value = '961'; break;
            case 'Lesotho': document.demo_account_form.phonearea.value = '266'; break;
            case 'Liberia': document.demo_account_form.phonearea.value = '231'; break;
            case 'Libya': document.demo_account_form.phonearea.value = '218'; break;
            case 'Liechtenstein': document.demo_account_form.phonearea.value = '423'; break;
            case 'Lithuania': document.demo_account_form.phonearea.value = '370'; break;
            case 'Luxembourg': document.demo_account_form.phonearea.value = '352'; break;
            case 'Macau': document.demo_account_form.phonearea.value = '853'; break;
            case 'Macedonia': document.demo_account_form.phonearea.value = '389'; break;
            case 'Madagascar': document.demo_account_form.phonearea.value = '261'; break;
            case 'Malawi': document.demo_account_form.phonearea.value = '265'; break;
            case 'Malaysia': document.demo_account_form.phonearea.value = '60'; break;
            case 'Maldives': document.demo_account_form.phonearea.value = '960'; break;
            case 'Mali': document.demo_account_form.phonearea.value = '223'; break;
            case 'Malta': document.demo_account_form.phonearea.value = '356'; break;
            case 'Martinique': document.demo_account_form.phonearea.value = '596'; break;
            case 'Mauritania': document.demo_account_form.phonearea.value = '222'; break;
            case 'Mauritius': document.demo_account_form.phonearea.value = '230'; break;
            case 'Mexico': document.demo_account_form.phonearea.value = '52'; break;
            case 'Moldova': document.demo_account_form.phonearea.value = '373'; break;
            case 'Monaco': document.demo_account_form.phonearea.value = '377'; break;
            case 'Mongolia': document.demo_account_form.phonearea.value = '976'; break;
            case 'Montenegro': document.demo_account_form.phonearea.value = '381'; break;
            case 'Morocco': document.demo_account_form.phonearea.value = '212'; break;
            case 'Mozambique': document.demo_account_form.phonearea.value = '258'; break;
            case 'Myanma, Union Of': document.demo_account_form.phonearea.value = '95'; break;
            case 'Namibia': document.demo_account_form.phonearea.value = '264'; break;
            case 'Nauru': document.demo_account_form.phonearea.value = '674'; break;
            case 'Nepal': document.demo_account_form.phonearea.value = '977'; break;
            case 'Netherlands': document.demo_account_form.phonearea.value = '31'; break;
            case 'New Caledonia': document.demo_account_form.phonearea.value = '687'; break;
            case 'New Zealand': document.demo_account_form.phonearea.value = '64'; break;
            case 'Nicaragua': document.demo_account_form.phonearea.value = '505'; break;
            case 'Niger': document.demo_account_form.phonearea.value = '227'; break;
            case 'Nigeria': document.demo_account_form.phonearea.value = '234'; break;
            case 'Norway': document.demo_account_form.phonearea.value = '47'; break;
            case 'Oman': document.demo_account_form.phonearea.value = '968'; break;
            case 'Pakistan': document.demo_account_form.phonearea.value = '92'; break;
            case 'Panama': document.demo_account_form.phonearea.value = '507'; break;
            case 'Papua-New Guinea': document.demo_account_form.phonearea.value = '675'; break;
            case 'Paraguay': document.demo_account_form.phonearea.value = '595'; break;
            case 'Peoples Rep Korea': document.demo_account_form.phonearea.value = '850'; break;
            case 'Peru': document.demo_account_form.phonearea.value = '51'; break;
            case 'Philippines': document.demo_account_form.phonearea.value = '63'; break;
            case 'Poland': document.demo_account_form.phonearea.value = '48'; break;
            case 'Portugal': document.demo_account_form.phonearea.value = '351'; break;
            case 'Qatar': document.demo_account_form.phonearea.value = '974'; break;
            case 'Rep. of South Africa': document.demo_account_form.phonearea.value = '27'; break;
            case 'Reunion Is.': document.demo_account_form.phonearea.value = '262'; break;
            case 'Romania': document.demo_account_form.phonearea.value = '40'; break;
            case 'Russia': document.demo_account_form.phonearea.value = '7'; break;
            case 'Rwanda': document.demo_account_form.phonearea.value = '250'; break;
            case 'Samoa (Western)': document.demo_account_form.phonearea.value = '685'; break;
            case 'San Marino': document.demo_account_form.phonearea.value = '378'; break;
            case 'Saudi Arabia': document.demo_account_form.phonearea.value = '966'; break;
            case 'Senegal': document.demo_account_form.phonearea.value = '221'; break;
            case 'Serbia': document.demo_account_form.phonearea.value = '381'; break;
            case 'Seychelles': document.demo_account_form.phonearea.value = '248'; break;
            case 'Sierra Leone': document.demo_account_form.phonearea.value = '232'; break;
            case 'Singapore': document.demo_account_form.phonearea.value = '65'; break;
            case 'Slovakia': document.demo_account_form.phonearea.value = '421'; break;
            case 'Slovenia': document.demo_account_form.phonearea.value = '386'; break;
            case 'Solomon Islands': document.demo_account_form.phonearea.value = '677'; break;
            case 'South Africa': document.demo_account_form.phonearea.value = '27'; break;
            case 'South Korea': document.demo_account_form.phonearea.value = '82'; break;
            case 'Spain': document.demo_account_form.phonearea.value = '34'; break;
            case 'Sri Lanka': document.demo_account_form.phonearea.value = '94'; break;
            case 'St. Kitts': document.demo_account_form.phonearea.value = '1-869'; break;
            case 'St. Lucia': document.demo_account_form.phonearea.value = '1-758'; break;
            case 'St. Pierre': document.demo_account_form.phonearea.value = '508'; break;
            case 'St. Vincent': document.demo_account_form.phonearea.value = '1-784'; break;
            case 'Surinam': document.demo_account_form.phonearea.value = '597'; break;
            case 'Swaziland': document.demo_account_form.phonearea.value = '268'; break;
            case 'Sweden': document.demo_account_form.phonearea.value = '46'; break;
            case 'Switzerland': document.demo_account_form.phonearea.value = '41'; break;
            case 'Tadjikistan': document.demo_account_form.phonearea.value = '992'; break;
            case 'Tahiti': document.demo_account_form.phonearea.value = '689'; break;
            case 'Taiwan ROC': document.demo_account_form.phonearea.value = '886'; break;
            case 'Tanzania': document.demo_account_form.phonearea.value = '255'; break;
            case 'Thailand': document.demo_account_form.phonearea.value = '66'; break;
            case 'Togo': document.demo_account_form.phonearea.value = '228'; break;
            case 'Tonga': document.demo_account_form.phonearea.value = '676'; break;
            case 'Trinidad': document.demo_account_form.phonearea.value = '1-868'; break;
            case 'Tunisia': document.demo_account_form.phonearea.value = '216'; break;
            case 'Turkey': document.demo_account_form.phonearea.value = '90'; break;
            case 'Uganda': document.demo_account_form.phonearea.value = '256'; break;
            case 'Ukraine': document.demo_account_form.phonearea.value = '380'; break;
            case 'United Arab Emirates': document.demo_account_form.phonearea.value = '971'; break;
            case 'United Kingdom': document.demo_account_form.phonearea.value = '44'; break;
            case 'Uruguay': document.demo_account_form.phonearea.value = '598'; break;
            case 'Uzbekistan': document.demo_account_form.phonearea.value = '998'; break;
            case 'Vanuatu': document.demo_account_form.phonearea.value = '678'; break;
            case 'Vatican City': document.demo_account_form.phonearea.value = '39'; break;
            case 'Venezuela': document.demo_account_form.phonearea.value = '58'; break;
            case 'Vietnam': document.demo_account_form.phonearea.value = '84'; break;
            case 'Yemen': document.demo_account_form.phonearea.value = '967'; break;
            case 'Zaire': document.demo_account_form.phonearea.value = '243'; break;
            case 'Zambia': document.demo_account_form.phonearea.value = '260'; break;
            case 'Zimbabwe': document.demo_account_form.phonearea.value = '263'; break;
        }

    }
}

function CheckCountry2() {
    if (document.demo_account_form.country.value != '') {
        CheckCountry();
    }
}

function CheckProvince() {
    if (document.demo_account_form.country.value == 'Canada') {
      if ((document.demo_account_form.state.value == 'British Columbia') || (document.demo_account_form.state.value == 'Quebec') || (document.demo_account_form.state.value == 'Ontario') || (document.demo_account_form.state.value == 'Alberta')) {
            window.location = "http://classic.forex.com/forex_demo_account_canada.html" + "?FirstName=" + document.demo_account_form.first_name.value + "&LastName=" + document.demo_account_form.last_name.value;
        }
    }
}


function checkemail() {
    var testresults;
    var str = document.demo_account_form.email.value;
    var filter = /^(['_a-z0-9-+]+)(\.['_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,5})$/i
    if (filter.test(str))
        testresults = true
    else
        testresults = false
    return (testresults)
}

function trim(s) {
    while (s.substring(0, 1) == ' ') {
        s = s.substring(1, s.length);
    }
    while (s.substring(s.length - 1, s.length) == ' ') {
        s = s.substring(0, s.length - 1);
    }
    return s;
}

function isAlpha(s) {
    if (s == null)
        return false;

    if (s.length == 0)
        return false;

    for (var i = 0; i < s.length; ++i) {
        if ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890".indexOf(s.charAt(i)) < 0) {
            return false;
        }
    }
    return true;
}

function isNumeric(s) {
    if (s == null)
        return false;

    if (s.length == 0)
        return false;

    for (var i = 0; i < s.length; ++i) {
        if ("1234567890 -".indexOf(s.charAt(i)) < 0) {
            return false;
        }
    }
    return true;
}

function GetCookie(name) {
    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen) {
        var j = i + alen;
        if (document.cookie.substring(i, j) == arg)
            return getCookieVal(j);
        i = document.cookie.indexOf(" ", i) + 1;
        if (i == 0) break;
    }
    return null;
}

function getCookieVal(offset) {
    var endstr = document.cookie.indexOf(";", offset);
    if (endstr == -1)
        endstr = document.cookie.length;
    return unescape(document.cookie.substring(offset, endstr));
}

function CheckHear() {
    var tbl = document.getElementById("aCell");

    if (document.demo_account_form.hear_about1.value == 'Forex.com-Website/Online Ad') {
        tbl.innerHTML = '<select name="hear_about" class="bodyblack" tabindex="11"><option value="">Выберите ответ</option><option value="">----------------------------------------</option><option value="DropDown.WebsiteOnline_Ad.FOREXPros_RU">FOREXPros.ru</option><option value="DropDown.WebsiteOnline_Ad.Mailru">Mail.ru</option><option value="DropDown.WebsiteOnline_Ad.Mailru_Sponsorship">Mail.ru Курсы Валют</option><option value="DropDown.WebsiteOnline_Ad.Masterforex">Masterforex</option><option value="DropDown.WebsiteOnline_Ad.Rambler">Rambler.ru</option><Option value="DropDown.WebsiteOnline_Ad.Yandex_sponsorship">Yandex Курсы Валют</option><option value="DropDown.WebsiteOnline_Ad.Other_Website">Другой вебсайт</option></select>'
    }
    else if (document.demo_account_form.hear_about1.value == 'Forex.com-Search Engine') {
        tbl.innerHTML = '<select name="hear_about" class="bodyblack" tabindex="11"><option value="">Выберите ответ</option><option value="">----------------------------------------</option><Option value="DropDown.Search_Engine.Google">Google</option><Option value="DropDown.Search_Engine.MSN">Bing/MSN</option><Option value="DropDown.Search_Engine.Yandex">Yandex</option><Option value="DropDown.Search_Engine.Yahoo">Yahoo</option><Option value="DropDown.Search_Engine.Other_Search_Engine">Другая поисковая система</option></select>'
    }
    else if (document.demo_account_form.hear_about1.value == 'Forex.com-Magazine/Newspaper') {
        tbl.innerHTML = '<select name="hear_about" class="bodyblack" tabindex="11"><option value="">Выберите ответ</option><option value="">----------------------------------------</option><Option value="DropDown.MagazineNewspaper.Other_Publication">Другая публикация</option></select>'
    }
    else if (document.demo_account_form.hear_about1.value == 'Forex.com-TV') {
        tbl.innerHTML = '<select name="hear_about" class="bodyblack" tabindex="11"><option value="">Выберите ответ</option><option value="">----------------------------------------</option><option value="DropDown.TV.Appearance">Выступление на ТВ</option></select>'
    }
    else if (document.demo_account_form.hear_about1.value == 'Forex.com-Radio') {
        tbl.innerHTML = '<select name="hear_about" class="bodyblack" tabindex="11"><option value="">Выберите ответ</option><option value="">----------------------------------------</option><Option value="DropDown.Radio.Business_News">Новости/Бизнес</option><Option value="DropDown.Radio.Other">Другие</option></select>'
    }
    else if (document.demo_account_form.hear_about1.value == 'Forex.com-Word of Mouth') {
        tbl.innerHTML = '<br><input type="hidden" name="hear_about" value="DropDown..Word_Of_Mouth">'
    }
    else {
        tbl.innerHTML = '<input type="hidden" name="hear_about" value="DropDown.WebsiteOnline_Ad.Other_Website">'
    }

}

function ValidateForm() {
    //now verify the form fields

    var source = GetCookie('adv');
    
    

    if (((document.demo_account_form.country.value == 'United States') || (document.demo_account_form.country.value == 'Canada')) && (document.demo_account_form.state == null)) {
        CheckCountry();
    }

    if ((document.demo_account_form.country.selectedIndex > 1) && (document.demo_account_form.country.value != 'United States') && (document.demo_account_form.country.value != 'Canada') && (document.demo_account_form.city == null)) {
        CheckCountry();
    }

    if (document.demo_account_form.hear_about1 != null) {
        if ((document.demo_account_form.hear_about1.selectedIndex > 1) && (document.demo_account_form.hear_about == null)) {
            CheckHear();
        }
    }

    //make sure that the first name is not blank.
    if ((document.demo_account_form.first_name.value.length == 0) || (isNumeric(document.demo_account_form.first_name.value))) {
        //it isn't so show the user an alert and go to that field
        alert("Пожалуйста, впишите ваше имя");
        document.demo_account_form.first_name.focus();
        //and return false so the form doesn't get submitted

        return false;
    }

    //make sure that the last name field is not blank.
    if ((document.demo_account_form.last_name.value.length == 0) || (isNumeric(document.demo_account_form.last_name.value))) {
        //it isn't so show the user an alert and go to that field
        alert("Пожалуйста, впишите вашу фамилию");
        document.demo_account_form.last_name.focus();
        //and return false so the form doesn't get submitted

        return false;
    }

    //make sure that the country field is not blank.
    if (document.demo_account_form.country.value.length == 0) {
        //it isn't so show the user an alert and go to that field
        alert("Пожалуйста, впишите страну, в которой вы живете");
        document.demo_account_form.country.focus();
        //and return false so the form doesn't get submitted

        return false;
    }

    //make sure that the state/province field is not blank.
    if ((document.demo_account_form.country.value == 'Canada') || (document.demo_account_form.country.value == 'United States')) {
        if (document.demo_account_form.state.selectedIndex < 2) {
            //it isn't so show the user an alert and go to that field
            if (document.demo_account_form.country.value == 'Canada') {
                alert("Пожалуйста, выберите Вашу провинцию/область");
                document.demo_account_form.state.focus();
            }
            else if (document.demo_account_form.country.value == 'United States') {
                alert("Пожалуйста, выберите Ваш штат");
                document.demo_account_form.state.focus();
            }
            //and return false so the form doesn't get submitted

            return false;
        }
    }

    //make sure the user has entered a city   
    if ((document.demo_account_form.country.value != 'Canada') && (document.demo_account_form.country.value != 'United States') && (document.demo_account_form.country.selectedIndex > 1)) {
        if (document.demo_account_form.city.value.length == 0) {
            alert("Пожалуйста, введите Ваш город");
            document.demo_account_form.city.focus();
            return false;
        }
    }



    //make sure the email address is formatted properly
    if (checkemail() == false) {
        alert("Пожалуйста, проверьте ваш адрес электронной почты, он неправильный");
        document.demo_account_form.email.focus();
        //and return false so the form doesn't get submitted

        return false;
    }

    //make sure that the password field is not blank and is greater than 3
    if (document.demo_account_form.password.value.length < 3) {
        //it isn't so show the user an alert and go to that field
        alert("Пожалуйста, впишите пароль, который состоит не меньше чем из 4 символов");
        document.demo_account_form.password.focus();
        //and return false so the form doesn't get submitted

        return false;
    }

    //make sure that the password field is in English characters
    if (document.demo_account_form.password.value.length >= 3) {
        //it's a valid length, so let's validate it
        //define valid characters
        var valid = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        var string = document.demo_account_form.password.value;
        for (var i = 0; i < string.length; i++) {
            if (valid.indexOf(string.charAt(i)) == -1) {
                alert("Пожалуйста используйте Англоязычные буквы для Вашего пароля");
                document.demo_account_form.password.focus();
                return false;
            }
        }
    }
    //make sure the user has picked a referrer
    if (document.demo_account_form.hear_about1 != null) {
        if ((document.demo_account_form.hear_about1.selectedIndex == 0) || (document.demo_account_form.hear_about1.selectedIndex == 1)) {
            //if statement failed so ask the user to pick one!
            alert("Выберите категорию");
            document.demo_account_form.hear_about1.focus();
            //and return false so the form doesn't get submitted                                
            return false;
        }
        if ((document.demo_account_form.hear_about1.selectedIndex > 1) && (document.demo_account_form.hear_about1.value != 'Forex.com-Word of Mouth')) {
            if (document.demo_account_form.hear_about == null) {
                CheckHear();
                alert("Пожалуйста, скажите где Вы услышали о нас");
                document.demo_account_form.hear_about.focus();
                return false;
            }
            else if (document.demo_account_form.hear_about.selectedIndex < 2) {
                alert("Пожалуйста, скажите где Вы услышали о нас");
                document.demo_account_form.hear_about.focus();
                return false;
            }
        }
    }

    //make sure the user has selected a trading profile if necessary
    if (document.demo_account_form.trading_profile[0] != null) {
        if ((document.demo_account_form.trading_profile[0].checked == false) && (document.demo_account_form.trading_profile[1].checked == false) && (document.demo_account_form.trading_profile[2].checked == false) && (document.demo_account_form.trading_profile[3].checked == false)) {
            //Trading profile needs to be selected
            alert("Пожалуйста, выберите Ваш торговый профиль");
            document.demo_account_form.trading_profile[0].focus();

            //and return false so the form doesn't get submitted
            return false;
        }
    }
    //everything checks out, final checkout, then submit the form
    if (document.demo_account_form.fx_sub_company.value == "")
        document.demo_account_form.fx_sub_company.value = "GCRP";
    if (document.demo_account_form.state.value.length == 0)
        document.demo_account_form.state.value = "N/A"
    if (document.demo_account_form.country.state == 'British Columbia')
        window.location = "http://classic.forex.com/forex_demo_account_canada.html";
    setwsEntityHigh("EU");
    return true;
}
