﻿/* ---------------------------
' (C) Copyright 2008
' Niro Solutions Pty Limited
' ABN 89 106 967 140
' ---------------------------
' Revision: 1.0.0
' Author: ZhongBo Sun
' Modtime: 31/10/08
' --------------------------- */
function getCmbText(cmb1,u_l_p)
{
//u=>upper
//l=>lower
//p=>plain (as-is)
var s = cmb1.options[cmb1.selectedIndex].text
if(u_l_p.toUpperCase()=="U")
	return s.toUpperCase();
else if(u_l_p.toUpperCase()=="L")
	return s.toLowerCase();
else
	return s;
}

function limitNoDecimalPlaces2(field, n)
{
// this new version will allow non-decimal number of any length
// find if '.' entered
var li = (field.value).indexOf(".")
if(li<0)
	;
else
{
	var s1 = (field.value).substring(0, li)
	var s2 = ((field.value).substring(li+1,(field.value).length))
	if(s2.length > n)
		field.value=s1+"."+s2.substring(0,n)
}
}

function removeCommasDollars(strValue)
{
  var objRegExp = /,|\$/g; //search for commas or $ sign globally
  //replace all matches with empty strings
  var ret = strValue.replace(objRegExp,'');
  var ret = ret.replace('.','');
  var ret = ret.replace('$','');
  return ret ;
}

function removeCommasDollars2(strValue)
{
  var objRegExp = /,|\$/g; //search for commas or $ sign globally
  //replace all matches with empty strings
  var ret = strValue.replace(objRegExp,'');
  //var ret = ret.replace('.','');
  var ret = ret.replace('$','');
  return ret ;
}

function fixCommasDollarSign(field)
{
field.value = removeCommasDollars(field.value)
}

function fixCommasDollarSign2(field)
{
field.value = removeCommasDollars2(field.value)
}

function fixCommasDollarSignAll()
{
    // find all INPUT txt boxes; for each, remove '$' and ','; for each, if there is onkeyup event, execute it
	var eleObjArr=document.getElementsByTagName("input");
	
	var excludeField = ""//document.getElementById("txtOtherFundName")
	
	for(var i = 0; i < eleObjArr.length; i++)
	{
		if(eleObjArr[i] != excludeField)
		{
			fixCommasDollarSign(eleObjArr[i])
			if(eleObjArr[i].getAttribute("onkeyup") != null)
				eleObjArr[i].onkeyup()
		}
	}
}

function myRound(number,dp)
{
var ret
ret = Math.round(number*Math.pow(10,dp))/Math.pow(10,dp);
ret = Math.floor(ret);
var ls = ret.toString()
var li = ls.lastIndexOf(".")
if(li<0)
	return (""+ret+".0");
else
    return ret
}

function set2DecimalPlaces(ns)
{
var li = ns.lastIndexOf(".")
var le = (ns.substring(li+1)).length
if (le == 1){
    if(ns != "0"){
        return (""+ns+"0");
    }else{
        return (""+ns+".00");
   }
}
if (li < 0){
    return (""+ns+".00");
}
return (""+ns+"");
}

function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}


function set1DecimalPlaces(ns)
{
var li = ns.lastIndexOf(".")
if(li<0)
	return (""+ns+".0");
else
{
    if((ns.substring(li+1)).length >= 1){
		return ns}
	
}
}

function removeDecimalPart(ns)
{
var li = ns.lastIndexOf(".")
if(li<0)
	return ns;
else
	return (ns.substring(0,li))
}

function isValidValue(field, sMsg)
{
	var ret = false;
	if(isInt(field.value))
	{
	    if (field.value >= 0 && field.value <= 1000000){
		    ret=true
		}
		else
		{
		switchToDIV(field)
		select(field)
		alert(sMsg)
		}
	}
	else
	{
	    switchToDIV(field)
		select(field)
		alert(sMsg)
		
	}
	return ret;
}

function isValidValueFloat(field, sMsg)
{
	var ret = false;
	if(isFloat(field.value))
	{
	    if (field.value >= 0 && field.value <= 1000000){
		    ret=true
		}
		else
		{
		switchToDIV(field)
		select(field)
		alert(sMsg)
		}
	}
	else
	{
	    switchToDIV(field)
		select(field)
		alert(sMsg)
		
	}
	return ret;
}

function isValidValueDefault(field, sMsg)
{
	var ret = false;
	
	if (field.value == ""){
	    field.value = "0"
	}
	if(isInt(field.value))
	{
	    if (field.value >= 0 && field.value <= 1000000){
		    ret=true
		}
		else
		{
		switchToDIV(field)
		select(field)
		alert(sMsg)
		}
	}
	else
	{
	    switchToDIV(field)
		select(field)
		alert(sMsg)
		
	}
	return ret;
}


