	//-----------------------------------------------------------
	// MyPortfolio * V1.0
	// Author: Igor Stevstedt
	// Version: $Id: MyPortfolioJavascript.js,v 1.1.2.7 2007/03/19 13:52:15 IGST Exp $
	//-----------------------------------------------------------

	function doBack()
	{
		history.back();
	}

	function doActivate()
	{
		var ret = true;
		
		if(isEmpty(trimAll(document.getElementById("userid").value)))
		{
			document.getElementById("reqUserid").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqUserid").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("activationcode").value)))
		{
			document.getElementById("reqActivationcode").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqActivationcode").style.display = "none";	
		}
		
		if(ret)
		{
			document.getElementById("mypForm").submit();
		}
		else
		{
			return ret;
		}
	}
	
	function doAgree()
	{
		var ret = true;
		
		if(!document.getElementById("agree").checked)
		{
			document.getElementById("reqAgree").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqAgree").style.display = "none";	
		}
		
		if(ret)
		{
			document.getElementById("mypForm").submit();
		}
		else
		{
			return ret;
		}
	}
	
	function doLogin()
	{
		var ret = true;
		
		if(isEmpty(trimAll(document.getElementById("userid").value)))
		{
			document.getElementById("reqUserid").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqUserid").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("password").value)))
		{
			document.getElementById("reqPassword").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqPassword").style.display = "none";	
		}
		
		if(ret)
		{
			document.getElementById("mypForm").submit();
		}
		else
		{
			return ret;
		}
	}
	
	function doNewportfolio()
	{
		var ret = true;
		
		if(isEmpty(trimAll(document.getElementById("newportfolio").value)))
		{
			document.getElementById("reqNewportfolio").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqNewportfolio").style.display = "none";	
		}
		
		if(ret)
		{
			document.getElementById("mypForm").submit();
		}
		else
		{
			return ret;
		}
	}
	
	function doNewportfolioname()
	{
		var ret = true;
		
		if(isEmpty(trimAll(document.getElementById("newportfolioname").value)))
		{
			document.getElementById("reqNewportfolioname").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqNewportfolioname").style.display = "none";	
		}
		
		if(ret)
		{
			
			document.getElementById("mypForm").submit();
		}
		else
		{
			return ret;
		}
	}
	
	function doMailpwd()
	{
		var inuname;
		var inemail;
		
		if(isEmpty(trimAll(document.getElementById("userid").value)))
		{
			inuname = false;
		} 	 
		else
		{
			inuname = true;
			document.getElementById("reqUserid").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("email").value)))
		{
			inemail = false;
		} 	 
		else
		{
			inemail = true;
			document.getElementById("reqEmail").style.display = "none";	
		}


		if(inuname || inemail)
		{
			document.getElementById("mypForm").submit();
		}
		else
		{
			if(!inuname)
			{
				document.getElementById("reqUserid").style.display = "block";
			}
			if(!inemail)
			{
				document.getElementById("reqEmail").style.display = "block";
			}
			
			return ret;
		}
	}
	
	function doRegister()
	{
		var ret = true;
		
		if(isEmpty(trimAll(document.getElementById("userid").value)))
		{
			document.getElementById("reqUserid").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqUserid").style.display = "none";	
		}
		
		var uname = trimAll(document.getElementById("userid").value);
		if(!checkUserName(uname))
		{
			document.getElementById("reqUserid").style.display = "block";	
			ret = false;
		}
			
		if(isEmpty(trimAll(document.getElementById("firstname").value)))
		{
			document.getElementById("reqFirstname").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqFirstname").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("lastname").value)))
		{
			document.getElementById("reqLastname").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqLastname").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("password").value)))
		{
		
			document.getElementById("reqPassword").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqPassword").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("password2").value)))
		{
			document.getElementById("reqPassword2").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqPassword2").style.display = "none";	
		}
		
		if(trimAll(document.getElementById("password").value) != trimAll(document.getElementById("password2").value))
		{
			document.getElementById("reqPassword").style.display = "block";	
			document.getElementById("reqPassword2").style.display = "block";	
			ret = false;	
		}
		else
		{
			var p1 = trimAll(document.getElementById("password").value);
			var p2 = trimAll(document.getElementById("password2").value);
			
			if(!checkPassword(p1) || !checkPassword(p2))
			{
				document.getElementById("reqPassword").style.display = "block";	
				document.getElementById("reqPassword2").style.display = "block";	
				ret = false;
			}
		}
		
		if(isEmpty(trimAll(document.getElementById("email").value)))
		{
			document.getElementById("reqEmail").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqEmail").style.display = "none";	
		}
		
		if(!document.getElementById("agree").checked)
		{
			document.getElementById("reqAgree").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqAgree").style.display = "none";	
		}

		if(ret)
		{
			document.getElementById("mypForm").submit();
		}
		else
		{
			return ret;
		}
	}
	
	function doChange()
	{
		var ret = true;
				
		if(isEmpty(trimAll(document.getElementById("firstname").value)))
		{
			document.getElementById("reqFirstname").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqFirstname").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("lastname").value)))
		{
			document.getElementById("reqLastname").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqLastname").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("newpassword").value)))
		{
			document.getElementById("reqPassword").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqPassword").style.display = "none";	
		}
		
		if(isEmpty(trimAll(document.getElementById("newpassword2").value)))
		{
			document.getElementById("reqPassword2").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqPassword2").style.display = "none";	
		}
		
		if(trimAll(document.getElementById("newpassword").value) != trimAll(document.getElementById("newpassword2").value))
		{
			document.getElementById("reqPassword").style.display = "block";	
			document.getElementById("reqPassword2").style.display = "block";	
			ret = false;	
		}
		
		if(isEmpty(trimAll(document.getElementById("email").value)))
		{
			document.getElementById("reqEmail").style.display = "block";	
			ret = false;	
		} 	 
		else
		{
			document.getElementById("reqEmail").style.display = "none";	
		}
		
		if(ret)
		{
			document.getElementById("mypForm").submit();
		}
		else
		{
			return ret;
		}
	}
	
	function doDeletePortfolio()
	{
		document.getElementById("mypForm").action = "../MYP_Portfolio_Delete/";
		document.getElementById("mypForm").submit();
	}
	
	function doGoCreateNewPortfolio()
	{
		document.getElementById("mode").value = "";
		document.getElementById("portfolio").value = id;
		document.getElementById("mypForm").action = "../MYP_Portfolio_New/";
		document.getElementById("mypForm").submit();
	}
	
	function doGoDeletePortfolio(id)
	{
		document.getElementById("mode").value = "";
		document.getElementById("portfolio").value = id;
		document.getElementById("mypForm").action = "../MYP_Portfolio_Delete/";
		document.getElementById("mypForm").submit();
	}
	
	function doGoEditPortfolio(id)
	{
		document.getElementById("portfolio").value = id;
		document.getElementById("mode").value = "";
		document.getElementById("mypForm").action = "../MYP_Portfolio_Edit/";
		document.getElementById("mypForm").submit();
	}
	
	function doGoViewUnderlying(id)
	{
		document.getElementById("mode").value = "setPortfolioId";
		document.getElementById("portfolio").value = id;
		document.getElementById("linkparams").value = "";
		document.getElementById("mypForm").action = "../MYP_Portfolio_List/";
		document.getElementById("mypForm").submit();
	}
	
	
	function doGoAdd()
	{
		var targeturl = document.getElementById("addInstrUrl").value;

		if(targeturl != "")
		{
			document.location.href = targeturl;
		}
	}
	
	function doGoMicrosite(type,market,instrumentid)
	{
		var MicroTradeShare_Link = document.getElementById("MicroTradeShare_Link").value;
		var MicroTradeBondsSE_Link = document.getElementById("MicroTradeBondsSE_Link").value;
		
		if (type == "S")
		{
			 window.open(MicroTradeShare_Link +"?InstrumentId="+ instrumentid);
		}
	}
	
	// *********************************************************************
	// UTILS
	// *********************************************************************
	function fixDec(obj)
	{
		var myval=document.getElementById(obj).value;
		myval = myval.replace(/,/,".");
		document.getElementById(obj).value = myval;
	}
	
	function validateInput(obj)
	{
		document.getElementById(obj).style.color = "black";
		document.getElementById(obj).style.backgroundColor = "white";

		var tstvalue = document.getElementById(obj).value;
		var re = new RegExp("^[0-9]*(\.)?[0-9]+$");
		var tstresult = tstvalue.match(re) != null;
		if(!tstresult)
		{
			document.getElementById(obj).style.backgroundColor = "red";
			document.getElementById(obj).style.color = "white";
		}
		else
		{
			if(tstvalue < 1)
			{
				document.getElementById(obj).style.backgroundColor = "red";
				document.getElementById(obj).style.color = "white";
				tstresult = false;
			}
		}
		
		return tstresult;
	}
	
	function validateInputDate(obj)
	{
		document.getElementById(obj).style.color = "black";
		document.getElementById(obj).style.backgroundColor = "white";

		var tstvalue = document.getElementById(obj).value;
							         
		var re = new RegExp("^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][0-9]|3[0-1]))|(02-(0[1-9]|[1-2][0-9]))|((0[469]|11)-(0[1-9]|[1-2][0-9]|30)))$");
		var tstresult = tstvalue.match(re) != null;
		if(!tstresult)
		{
			document.getElementById(obj).style.backgroundColor = "red";
			document.getElementById(obj).style.color = "white";
		}
		
		return tstresult;
	}
	
	function trimAll(sString) 
	{
	    while (sString.substring(0,1) == ' ')
	    {
	        sString = sString.substring(1, sString.length);
	    }
	    while (sString.substring(sString.length-1, sString.length) == ' ')
	    {
	        sString = sString.substring(0,sString.length-1);
	    }
	    return sString;
	}
	
	function isEmpty(s)
	{ 
		return ((s == null) || (s.length == 0)) 
	}
	
	// *********************************************************************
	// Password Check
	// *********************************************************************
	
	function checkPassword(pass)
	{
		//Password rules:
		//1) Alphanumeric
		//2) At least one number
		//3) At least one letter
		//4) And be between 6-15 character in length.

		var re = new RegExp("(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{6,15})$");
		return pass.match(re) != null;
	}
	
	function checkUserName(uname)
	{
		//It will check for alphanumeric values.
		var re = new RegExp("^[a-zA-Z0-9]+$");
		return uname.match(re) != null;
	}
	
	// *********************************************************************
	// Price
	// *********************************************************************
	function calculatePrice()
	{
		var price;
		var x=document.getElementById("quantity").value;
		var y=document.getElementById("price").value;
		var ipp = document.getElementById("ipp").value;
		var upc = document.getElementById("upc").value;
		
		if (upc == 0)
		{
			upc = 1;
		}

		x = x.replace(/,/,".");
		y = y.replace(/,/,".");
		
		x = x.replace(/-/,"");
		y = y.replace(/-/,"");
		
		validateInputDate('date');

		if(!validateInput('quantity'))
		{
			x = 0;
		}
		if(!validateInput('price'))
		{
			y = 0;
		}
		
		if(ipp > 0)
		{
			y=(y/100);
		}	
		
		price = Math.round((y*x*upc)*100)/100


		if (price.toFixed)
		{
			price = price.toFixed(2)
		}
		document.getElementById("total").value = price;
		document.getElementById("total1").value = price;
	}
	
