var arcURL= "http://www.londoncapitalgroup.com/capitalspreads/news/";
var type  = "IE";
var tandc = 0;
var riskw = 0;
var ordrx = 0;

function BrowserSniffer() {
	if (navigator.userAgent.indexOf("Opera")!=-1 && document.getElementById) type="OP";		//Opera 
	else if (document.all) type="IE";														//Internet Explorer e.g. IE4 upwards
	else if (document.layers) type="NN";													//Netscape Communicator 4
	else if (!document.all && document.getElementById) type="MO";							//Mozila e.g. Netscape 6 upwards
	else type = "IE";
}

BrowserSniffer();

function GetValue(id){
	if (type=="IE") return document.all[id].value;
	if (type=="NN") return document.layer['id'].value;
	if (type=="MO" || type=="OP") return document.getElementById(id).value;
}

function SetValue(id,sVal){
	if (type=="IE") document.all[id].value = sVal;
	if (type=="NN") document.layer['id'].value = sVal;
	if (type=="MO" || type=="OP") document.getElementById(id).value = sVal;
}

function denyPaste(event, msisdn2) {
	if (msisdn2.value = window.clipboardData.getData("Text")) {
		alert("Sorry, you have to re-type your " + msisdn2);
		msisdn2.value = "";
		return false;
		} else {
		alert("returned true");
		return true;
	}
}

function HideRow(id){
	if (type=="IE") {
		document.all[id].style.visibility = 'hidden';
		document.all[id].style.position = 'absolute';
	}
	if (type=="NN") {
		document.layer['id'].style.visibility = 'hidden';
		document.layer['id'].style.position = 'absolute';
	}
	if (type=="MO" || type=="OP") {
		document.getElementById(id).style.visibility = 'hidden';
		document.getElementById("oldaddressbox_").style.height = '0px';
	}
}

function ShowRow(id){
	if (type=="IE") {
		document.all[id].style.visibility = 'visible';
		document.all[id].style.position = 'relative';
	}
	if (type=="NN") {
		document.layer['id'].style.visibility = 'visible';
		document.layer['id'].style.position = 'relative';
	}
	if (type=="MO" || type=="OP") {
		document.getElementById(id).style.visibility = 'visible';
		document.getElementById("oldaddressbox_").style.height = '150px';
	}
}

function displayOldAddress(ref) {
	if (ref.value==1) {
		ShowRow("oldaddressbox");
		SetValue("monthsatcurrent","5");
		SetValue("yearsatcurrent","0");
	} else {
		HideRow("oldaddressbox");
		SetValue("monthsatcurrent","0");
		SetValue("yearsatcurrent","1");
	}
}

var win=null;
function NewWindow(targetpage,w,h,scroll,pos){
	LeftPosition = (screen.width)?(screen.width-w)/2:100;
	TopPosition=(screen.height)?(screen.height-h)/2:100;
	settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
	window.name = "alookup"
	win=window.open(targetpage,"win",settings);
}


function LookupAddress(aType) {
	var postcode = "";
	var countryid = "";
	if (aType=="current") {
		postcode = GetValue("postcode");
	}
	if (aType=="old") {
		postcode = GetValue("oldpostcode");
	}
	if (postcode=="") {
		alert("Please enter your "+aType+" postcode");
		return false;
	}
	NewWindow("../common/frontend/public/urulookup.aspx?type="+aType+"&postcode="+postcode,285,255,true,0);
}


function GetCookie(sName) {
	var aCookie = document.cookie.split("; ");
	for (var i=0; i < aCookie.length; i++) {
		var aCrumb = aCookie[i].split("=");
		if (sName == aCrumb[0]) 
		return unescape(aCrumb[1]);
	}
	return null;
}



//FSA REGULATED
//function ShowHideComplianceRow(ref) {
//	var id = "fsaEmail";			
//	if (ref.value=="YES") {
//		if (type=="IE") document.all[id].style.position = 'relative';
//		if (type=="NN") document.layer['id'].style.position = 'relative';
//		if (type=="MO" || type=="OP") document.getElementById(id).style.position = 'relative';
//		ShowRow("fsaEmail");
//	} else {
//		if (type=="IE") document.all[id].style.position = 'absolute';
//		if (type=="NN") document.layer['id'].style.position = 'absolute';
//		if (type=="MO" || type=="OP") document.getElementById(id).style.position = 'absolute';
//		HideRow("fsaEmail");
//	}
//}

//function ShowHideEmployerRow(ref) {
//	var id = "employername";
//	if (ref.value=="Employed") {
//		if (type=="IE") document.all[id].style.position = 'relative';
//		if (type=="NN") document.layer['id'].style.position = 'relative';
//		if (type=="MO" || type=="OP") document.getElementById(id).style.position = 'relative';
//		ShowRow("employername");
//	} else {
//		if (type=="IE") document.all[id].style.position = 'absolute';
//		if (type=="NN") document.layer['id'].style.position = 'absolute';
//		if (type=="MO" || type=="OP") document.getElementById(id).style.position = 'absolute';
//		HideRow("employername");
//	}
//}



function ShowHideCompliance(ref) {
    var objID = 'fsaEmail';
    
	if (ref.value=='YES') {
		document.getElementById(objID).style.display = 'block';
	} else {
		document.getElementById(objID).style.display = 'none';
	}
}

function ShowHideEmployer(ref) {
    var objID  = 'employername';
    var fsareg = 'fsaregulated';
	var fsamail = 'fsaEmail';
	var radioyes ='radio_yes';
	var radiono ='radio_no';
    
	if (ref.value=='Employed') {
		document.getElementById(objID).style.display = 'block';
		document.getElementById(fsareg).style.display = 'block';
		
	} 
	
	else {
		document.getElementById(radioyes).checked = false;
		document.getElementById(radiono).checked = false;
		document.getElementById(objID).style.display = 'none';
		document.getElementById(fsareg).style.display = 'none';
		document.getElementById(fsamail).style.display = 'none';
		
	}

}

function IsVisible(id) {
	var retval = false;
	if (type=="IE") {if (document.all[id].style.visibility=='visible') {retval = true;}}
	if (type=="NN") {if (document.layer['id'].style.visibility=='visible') {retval = true;}}
	if (type=="MO" || type=="OP") {if (document.getElementById(id).style.visibility=='visible') {retval = true;}}
	return retval;
}

function checkTandC(formfield) {
    formfield.checked = false;
    if(tandc==0) {
        alert("Please click on the link to read our Terms and Conditions first.");
    }
    else formfield.checked = true;
}

function checkRiskw(formfield) {
    formfield.checked = false;
    if(riskw==0) {
        alert("Please click on the link to read our Risk Warning first.");
    }
    else formfield.checked = true;
}

function checkOrdrx(formfield) {
    formfield.checked = false;
    if(ordrx==0) {
        alert("Please click on the link to read our Order Execution Policy.");
    }
    else formfield.checked = true;
}

function setTandC() {tandc = 1;}
function setRiskw() {riskw = 1;}
function setOrdrx() {ordrx = 1;}


function showHide(div_id) {
	if (document.getElementById(div_id).style.display == 'none'){
		document.getElementById(div_id).style.display = '';
		document.getElementById('pm').innerHTML = '[-]';
	} else {
		document.getElementById(div_id).style.display = 'none';
		document.getElementById('pm').innerHTML = '[+]';
	}
} 


function addfav() {
	window.external.AddFavorite("http://www.londoncapitalgroup.co.uk","London Capital Group");
}

function displayPreviousAddress(ref) {
	if (ref.value==1) {
		document.getElementById('oldaddressbox').style.display = 'block';
		SetValue("monthsatcurrent","5");
		SetValue("yearsatcurrent","0");
	} else {
		document.getElementById('oldaddressbox').style.display = 'none';
		SetValue("monthsatcurrent","0");
		SetValue("yearsatcurrent","1");
	}
}


function chanDiv(id){
    var layer = document.getElementById("submenu_" + id);
    var clickedObj = document.getElementById("btn_" + id); 
    // if the div is hidden, then show
    if(layer.style.display == 'none') {
        layer.style.display = 'block';
        clickedObj.className = 'open';
    } else { 
        layer.style.display = 'none';
        clickedObj.className = 'closed';
    }
}


function cookie_email_address() {
    var emailID = document.getElementById("emailaddress");
    if (emailID.value !=="")
    {
        set_Cookie('cemail', emailID.value);
        return true;
    }
    return true;
}

function set_Cookie(name, value) {
  var argv = set_Cookie.arguments;
  var argc = set_Cookie.arguments.length;
  var exdate = new Date();
  exdate.setDate(exdate.getDate() + 1);
  var path = (argc > 3) ? argv[3] : null;
  var domain = (argc > 4) ? argv[4] : null;
  var secure = (argc > 5) ? argv[5] : false;
  document.cookie = name + "=" + escape (value) + ((exdate == null) ? "" : ("; expires=" + exdate.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
  return true;
}

//function validate_step(pageFrom, redirectTo) {
//	var fileName = "";
//	fileName = document.referrer;
//	if (document.referrer && document.referrer!="") {
//		//extract the referrer file name
//		fileName = document.referrer.substring(document.referrer.lastIndexOf('/')+1);
//		if (fileName == pageFrom) {
//			alert(pageFrom);
//		} else {redirect(redirectTo);}
//	} else {redirect(redirectTo);}
//}
//function redirect(redirectTo) {
//	alert("Please complete the previous step of the application process");
//	window.location = redirectTo;
//}


//window to load the technical page
var techWin;
var TCwin;

function openTechWin(url) 
{
    techWin = open(url,'techWin','resizable=yes,scrollbars=yes,width=740,height=900');
    if (techWin.opener == null) techWin.opener = self;
}

function openTCwin(url) 
{
    TCwin=open(url,'TCwin','resizable=yes,scrollbars=yes,width=1200,height=900');
    if (TCwin.opener == null) TCwin.opener = self;
}


function closeTCwin() 
{
    TCwin.close();
} 


function closeTechWin() 
{
    techWin.close();
} 


/**
 * DHTML phone number validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function trim(s)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not a whitespace, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (c != " ") returnString += c;
    }
    return returnString;
}

function stripCharsInBag(s, bag) {
    /*LT says: Reporting to my master checkInternationalPhone() */
    var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
    /*LT says: Reporting to my master validatePhone() */
    var bracket=3;
    strPhone=trim(strPhone);
    if(strPhone.indexOf("+")>1) return false
    if(strPhone.indexOf("-")!=-1)bracket=bracket+1
    if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false
    var brchr=strPhone.indexOf("(")
    if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false
    if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false
    s=stripCharsInBag(strPhone,validWorldPhoneChars);
    return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function validatePhone(phoneNum, fieldName){
    /*LT says: Pass me a phone number and the field ID containing the phone number and I'll check and tell you if the type is correct*/
    if (phoneNum != "") {
	    if (checkInternationalPhone(phoneNum)==false){
		    return "Please enter a valid " + fieldName;
	    } else {return null;}
	}
 }
 
 function get_radio_value(frm, obj) {
    /*LT says: Pass the form ID and radio button and I'll pass you the checked value */
    var radios = document[frm].elements[obj]; 
    for (var i=0; i <radios.length; i++) {
        if (radios[i].checked) {
            return radios[i].value;
        }
    }
 }
 
 function open_appForm(targetpage) {
    var w = "1000px";
    var h = "900px";
    var scroll = "1";
	LeftPosition = (screen.width)? (screen.width-w) /2:100;
	TopPosition  = (screen.height)?(screen.height-h)/2:100;
	settings     = 'width=' + w + ',height=' + h + ',top=' + TopPosition + ',left=' + LeftPosition + ',scrollbars=' + scroll + ',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=1';
	window.name  = "appForm"
	win          = window.open(targetpage,"win",settings);
}

function validate_form() {
    var status = performCheck('frm', rules,'innerHtml');
    addErrors();
    
    if (status == true) {
        document.frm.submit();
    } else {return false;}
}

function validate_step1() {
    var status = performCheck('frm', rules,'innerHtml');
    addErrors();
    if (status == true) {
    	cookie_email_address();
        document.frm.submit();
    } else {return false;}
}

function validate_step2() {
    var status = performCheck('frm', rules,'innerHtml');
    addErrors();
    
    if (status == true) {
        fsa_validate();
    } else {return false;}
}


function form_pre_validation()
{
	//Call the client check page to validate the new user, (client). 
	// This uses ajax to enhance the user experience
	$.ajax
	({
		async: false,
		type: "GET",
		url: "/common/frontend/public/checkclient.aspx",
		data: "username=" + $('#username').attr('value'),
		success: function(response)
		{
			//Client validation successful, validate the rest of the form
			validate_form();
		},
		error: function(response)
		{
			//There is a problem with this client, alert the user
			alert(response.responseText);
		}
	});
	
}


function get_queryString() {
    if(window.location != null && window.location.search.length > 1 )
    {
        var urlParameters = window.location.search.substring(1);
        var parameterPair = urlParameters.split('&');
        var pos = parameterPair[0].indexOf('=');
        var argName = parameterPair[0].substring(0, pos);
        var argVal = parameterPair[0].substring(pos + 1);
        return argVal;
    } 
    else {return "";}
}

function acceptConditions(){
    SetValue("resp","1");
    var formToSend = document.getElementById("frm");
    formToSend.submit();
}

function refuseConditions(){
    window.location.href = "mifid2.shtml";
}

var dat = new Date();
var curday = dat.getDate();
var curmon = dat.getMonth()+1;
var curyear = dat.getFullYear();

function checkleapyear(datea)
{
    if(datea.getYear()%4 == 0)
    {
	    if(datea.getYear()% 10 != 0)
	    {
		    return true;
	    }
	    else
	    {
		    if(datea.getYear()% 400 == 0)
			    return true;
		    else
			    return false;
	    }
    }
return false;
}


function DaysInMonth(Y, M) {
    with (new Date(Y, M, 1, 12)) {
        setDate(0);
        return getDate();
    }
}


function datediff(date1, date2) {
    var y1 = date1.getFullYear(), m1 = date1.getMonth(), d1 = date1.getDate(),
    y2 = date2.getFullYear(), m2 = date2.getMonth(), d2 = date2.getDate();
    if (d1 < d2) {
        m1--;
        d1 += DaysInMonth(y2, m2);
    }

    if (m1 < m2) {
        y1--;
        m1 += 12;
    }
    return [y1 - y2, m1 - m2, d1 - d2];
}



function validateDOB()
{
    var calday = document.frm.day_dob.value;
    var calmon = document.frm.month_dob.value;
    var calyear = document.frm.year_dob.value;

	var curd = new Date(curyear,curmon-1,curday);
	var cald = new Date(calyear,calmon-1,calday);
	var diff =  Date.UTC(curyear,curmon,curday,0,0,0) - Date.UTC(calyear,calmon,calday,0,0,0);

	var dife = datediff(curd,cald);
	if (dife[0] < 18) {
		return "<b>You must be at least 18 to create an account.</b>";
	}
    else {return null;}
	//document.birthday.age.value=dife[0]+" years, "+dife[1]+" months, and "+dife[2]+" days";
}




function validatePass(SiteMode, Password){
	var validPass   = null;
	var foundNumber = false;

	if (SiteMode != "SIM"){
		for (var j = 0 ; j < Password.length ; j++){
			if (IsNumeric(Password.charAt(j))){
				return null;//foundNumber = true;
			}
		}

		if (foundNumber==false){
			return "Please ensure that your password includes at least one numeric character";
		}
	}
	return validPass;
}

function isHttp(){
	var protocol = window.location.protocol;
	var http = "";
		if(protocol == "https:"){
			http = "https:";
		}
		else{
			http  = "http:";
		}
	return http;
}

function sitestat(x){
}