var user_width = screen.width;
var user_height = screen.height;

function __Browser() {
    var a = navigator.userAgent.toLowerCase();
    this.fullVersion = a;
    this.isOpera = (a.indexOf("opera") != -1);
    this.isKonq = (a.indexOf('konqueror') != -1);
    this.isSafari = (a.indexOf('safari') != -1) && (a.indexOf('mac') != -1);
    this.isKhtml = this.isSafari || this.isKonq;
    this.isIE = (a.indexOf("msie") != -1) && !this.isOpera;
    this.isIE8 = (a.indexOf("msie 8.0") != -1) && this.isIE;
    this.isIE7 = (a.indexOf("msie 7.0") != -1) && this.isIE;
    this.isIE6 = (a.indexOf("msie 6.0") != -1) && this.isIE;
    this.isWinIE = this.isIE;
    this.isCSS1Compat = (!this.isIE) || (document.compatMode && document.compatMode == "CSS1Compat");
}

var __browser = new __Browser();

function reSetCaptcha() 
{
    var d = new Date();
    document.getElementById('captchaImageImage').innerHTML = '<img src="aspcaptcha.asp?s=' + d.getMilliseconds() + '" alt="CAPTCHA" width="86" height="21" />';
}

function SetIntCode(fieldid)
{
    if (fieldid.value.length > 0)
    {
        var mObj = fieldid.value;
        var fstbit = fieldid.value.substring(0, 1);
        
        if (fstbit == "0")
        {
            fieldid.value = "+44" + fieldid.value.substring(1, fieldid.value.length);
        }
        if (fieldid.value.substring(0, 1) != "+")
        {
            fieldid.value = "+44" + fieldid.value.substring(1, fieldid.value.length);
        }
    }
}

function InitRegister(formid) {
    var eObj = document.getElementById("error_msg");
    var checkObj = document.getElementById("f_signup");

    document.getElementById("form_btn1").style.display = 'none';
    document.getElementById("form_ajax1").style.display = 'block';
   
    var fname = document.getElementById("f_fname").value;
    var sname = document.getElementById("f_sname").value;
    var add1 = document.getElementById("f_add1").value;
    var add2 = document.getElementById("f_add2").value;
    var post = document.getElementById("f_post").value;
    var tel = document.getElementById("f_tel").value;
    var mobile = document.getElementById("f_mobile").value;
    var email = document.getElementById("f_email").value;
    var pemail = document.getElementById("prevEmail").value;
    var pass1 = document.getElementById("f_pass1").value;
    var pass2 = document.getElementById("f_pass2").value;
    var capture = document.getElementById("strCAPTCHA").value;
    
    var actlist = document.getElementsByName("actlist");

    var passObj = false, emailObj = false, newemailObj = false, captureObj = false;
    var fnameOK = false, snameOK = false, add1OK = false, add2OK = false, postOK = false, telOK = false;
    var emailOK = false, pass1OK = false, pass2OK = false, captureOK = false, actOK = false;
    var success = false;

    if (fname.length > 0){
        fnameOK = true;
    }
    if (sname.length > 0){
        snameOK = true;
    }
    if (add1.length > 0){
        add1OK = true;
    }
    if (add2.length > 0){
        add2OK = true;
    }
    if (post.length > 0){
        postOK = true;
    }
    if (tel.length > 0){
        telOK = true;
    }
    if (email.length > 0){
        emailOK = true;
    }
    if (pass1.length > 0){
        pass1OK = true;
    }
    if (pass2.length > 0){
        pass2OK = true;
    }
    if (capture.length > 0) {
        captureOK = true;
    }   
    if (pass1 === pass2) {
        passObj = true;
    }
    if (emailOK == true) {
        if (CheckEmail(email) == true)
        {
            emailObj = true;
        }
    }
    
    if (actlist.length == 0)
    {
        actOK = true;
    }
    else
    {
        for (var j = 0; j < actlist.length; j++)
        {
            if (document.getElementsByName("actlist")[j].checked)
            {
                actOK = true;
            }
        }    
    }

    if (fnameOK && snameOK && add1OK && postOK && telOK && emailOK && pass1OK && pass2OK && captureOK && passObj && emailObj && actOK)
    {
        success = true;
    }

    if (success == true) 
    {
        if (pemail != email)
        {
            var poststr = 'typeid=1&email=' + escape(email) + '&pemail=' + escape(pemail) + '&capture=' + escape(capture);
            ajaxpack.postAjaxRequest('initValidation.asp', poststr, function t() {
                if (ajaxIsReady()) {
                    var rObj = ajaxpack.ajaxobj.responseText.split(",");
                    if (parseInt(rObj[0]) === 1) {
                        newemailObj = true;
                    }
                    if (parseInt(rObj[1]) === 1) {
                        captureObj = true;
                    }
                    ValidateRegForm(formid, fnameOK, snameOK, add1OK, postOK, telOK, emailOK, pass1OK, pass2OK, captureOK, actOK, emailObj, passObj, newemailObj, captureObj);
                }
            }, 'html');
        }
        else
        {
            ValidateRegForm(formid, fnameOK, snameOK, add1OK, postOK, telOK, emailOK, pass1OK, pass2OK, captureOK, actOK, emailObj, passObj, true, null);
        }
    }
    else {
        ValidateRegForm(formid, fnameOK, snameOK, add1OK, postOK, telOK, emailOK, pass1OK, pass2OK, captureOK, actOK, emailObj, passObj, null, null);
    }
}

function ValidateRegForm(formid, fnameOK, snameOK, add1OK, postOK, telOK, emailOK, pass1OK, pass2OK, captureOK, actOK, emailObj, passObj, newemailObj, captureObj) 
{
    var eObj = document.getElementById("error_msg");
    var checkObj = document.getElementById("f_signup");
    var success = false;

    if (formid == 2) {
        if (fnameOK && snameOK && add1OK && postOK && telOK && emailOK && pass1OK && pass2OK && captureOK && emailObj && actOK && passObj && newemailObj && captureObj) {
            success = true;
        }
    }
    else if (formid == 3)
    {
        if (fnameOK && snameOK && add1OK && postOK && telOK && emailOK && pass1OK && pass2OK && actOK && emailObj && passObj && newemailObj) {
            success = true;
        }
    }
 
    if (success == true)
    {
        if (formid == 2) 
        {
            if (checkObj.checked == true) 
            {
                var fname = document.getElementById("f_fname").value;
                var sname = document.getElementById("f_sname").value;
                var email = document.getElementById("f_email").value;
                var pemail = document.getElementById("prevEmail").value;
                var prevCheck = document.getElementById("prevCheck").value;

                if (email != pemail) {
                    var selectedContent = {};
                    selectedContent['typeid'] = 1;
                    selectedContent['email'] = escape(email);
                    selectedContent['forenames'] = escape(fname);
                    selectedContent['surname'] = escape(sname);

                    var returnStr = dojo.xhrPost
		            ({
		                url: "/initMailChimp.asp",
		                content: selectedContent,
		                load: function (data) {
		                    if (data == true) {
		                        //alert(data);
		                    }
		                    else {
		                        //alert(data.error);
		                        //alert(data.code);
		                    }
		                    document.forms['form_details'].submit();
		                },
		                handleAs: "json",
		                error: function (type, error) { }
		            });
                }
                else {
                    document.forms['form_details'].submit();
                }
            }
            else {
                document.forms['form_details'].submit();
            }
        }
        else if (formid == 3) 
        {
            var fname = document.getElementById("f_fname").value;
            var sname = document.getElementById("f_sname").value;
            var email = document.getElementById("f_email").value;
            var pemail = document.getElementById("prevEmail").value;
            var prevCheck = document.getElementById("prevCheck").value.toLowerCase();

            var changeSignup = true;
            if (checkObj.checked.toString() == prevCheck)
            {
                changeSignup = false;
            }

            if (changeSignup == true || pemail != email) 
            {
                if (checkObj.checked)
                {
                    var selectedContent = {};
                    selectedContent['typeid'] = 1;
                    selectedContent['email'] = escape(email);
                    selectedContent['forenames'] = escape(fname);
                    selectedContent['surname'] = escape(sname);

                    var returnStr = dojo.xhrPost
		            ({
		                url: "/initMailChimp.asp",
		                content: selectedContent,
		                load: function (data) {
		                    if (data == true) {
		                        //alert(data);
		                    }
		                    else {
		                        //alert(data.error);
		                        //alert(data.code);
		                    }
		                    document.forms['form_details'].submit();
		                },
		                handleAs: "json",
		                error: function (type, error) { }
		            });
                }
                else
                {
                    var selectedContent = {};
                    selectedContent['typeid'] = 2;
                    selectedContent['email'] = escape(pemail);

                    var returnStr = dojo.xhrPost
		            ({
		                url: "/initMailChimp.asp",
		                content: selectedContent,
		                load: function (data) {
		                    if (data == true) {
		                        //alert(data);
		                    }
		                    else {
		                        //alert(data.error);
		                        //alert(data.code);
		                    }
		                    document.forms['form_details'].submit();
		                },
		                handleAs: "json",
		                error: function (type, error) { }
		            });
                }
            }
            else 
            {
                document.forms['form_details'].submit();
            }
        }   
    }
    else
    {
        if (formid == 2) {
            reSetCaptcha();
        }
    
        var data = '';
        data = data + '<div class="error_validation">Please enter information in the marked fields and try again.<br/>';

        if (fnameOK != true) {
            data = data + "&nbsp;&#149;&nbsp;Please enter your first name<br/>";
        }
        if (snameOK != true) {
            data = data + "&nbsp;&#149;&nbsp;Please enter your last name<br/>";
        }
        if (add1OK != true) {
            data = data + "&nbsp;&#149;&nbsp;Please enter your address<br/>";
        }
        if (postOK != true) {
            data = data + "&nbsp;&#149;&nbsp;Please enter your postcode<br/>";
        } 
        if (telOK != true) {
            data = data + "&nbsp;&#149;&nbsp;Please enter your contact number<br/>";
        }

        if (emailOK != true || emailObj != true) {
            if (emailOK == true) {
                data = data + "&nbsp;&#149;&nbsp;Please enter a valid email address<br/>";
            }
            else {
                data = data + "&nbsp;&#149;&nbsp;Please enter your email address<br/>";
            }
        }
        else {
            if (newemailObj != null) {
                if (newemailObj == false) {
                    data = data + "&nbsp;&#149;&nbsp;The email address entered is already in our database<br/>";
                }
            }
        }
        
        if (actOK != true) {
            data = data + "&nbsp;&#149;&nbsp;Please select one or more preferred activities<br/>";
        }

        if (pass1OK != true || pass2OK != true || passObj != true) {
            if (pass1OK != true && pass2OK != true) {
                data = data + "&nbsp;&#149;&nbsp;Please enter both passwords<br/>";
            }
            else {
                data = data + "&nbsp;&#149;&nbsp;Please make sure both passwords entered match<br/>";
            }
        }
        if (captureOK != true) {
            data = data + "&nbsp;&#149;&nbsp;Please enter the security code<br/>";
        }
        else {
            if (captureObj != null) {
                if (captureObj == false) {
                    data = data + "&nbsp;&#149;&nbsp;There was an error in security code entered<br/>";
                }
            }
        }

        data = data + '</div>';
        eObj.innerHTML = data;
        eObj.style.display = 'block';

        document.getElementById("form_btn1").style.display = 'block';
        document.getElementById("form_ajax1").style.display = 'none';
    }
}

function ShowReminder() 
{
    if (document.getElementById("pass_remind").style.display == 'none')
    {
        document.getElementById("pass_remind").style.display = 'block';
        document.getElementById("form_pass_remind").style.display = 'block';
        document.getElementById("error_msg2").innerHTML = '';
        document.getElementById("error_msg2").style.display = 'none';

    }
    else
    {
        document.getElementById("pass_remind").style.display = 'none';
    }
}

function CheckReminder() {
    var error_msg = '';
    var eObj = document.getElementById("error_msg2");
    var email = document.getElementById("r_email").value;

    if (email.length > 0) {
        var poststr = 'typeid=2&email=' + escape(email);
        ajaxpack.postAjaxRequest('initValidation.asp', poststr, function t() {
            if (ajaxIsReady()) {
                var rObj = ajaxpack.ajaxobj.responseText;
                if (parseInt(rObj) === 1) {
                    error_msg = '<span class="complete_msg"><p><img src="/SS/images/tick-button.gif" alt="" class="img-float-left" />&nbsp;An email with your login details has been sent and should arrive shortly.</p></span>';
                    eObj.innerHTML = error_msg;
                    eObj.style.display = 'block';
                    document.getElementById("form_pass_remind").style.display = 'none';
                }
                else {
                    error_msg = '<div class="error_validation">&nbsp;&#149;&nbsp;The email address entered does not exist in our database.</div>';
                    eObj.innerHTML = error_msg;
                    eObj.style.display = 'block';
                }
            }
        }, 'html');
    }
    else {
        error_msg = '<div class="error_validation">&nbsp;&#149;&nbsp;Please enter your email address and try again.</div>';
        eObj.innerHTML = error_msg;
        eObj.style.display = 'block';
    }
}

function SelectDiary(valIn) {
    var Obj1 = document.getElementById("listid1");
    var Obj2 = document.getElementById("listid2");
    var Obj3 = document.getElementById("listid3");

    Obj1.style.display = 'none';
    Obj2.style.display = 'none';
    Obj3.style.display = 'none';

    switch (valIn)
    {
        case 1:
            Obj1.style.display = 'block';
            break;
        case 2:
            Obj2.style.display = 'block';
            break;
        case 3:
            Obj3.style.display = 'block';
            break;
        default:
            Obj1.style.display = 'block';
            break;
    }
}

function AddUserEvent(EventId) 
{
    if (parseInt(EventId) > 0) 
    {
        var poststr = 'typeid=1&eventid=' + EventId;
        ajaxpack.postAjaxRequest('initUserEvent.asp', poststr, function t() {
            if (ajaxIsReady()) {
                var rObj = ajaxpack.ajaxobj.responseText;
                if (rObj == "success") {
                    var rowid = document.getElementById("event_row_add_" + EventId.toString());
                    rowid.style.display = 'none';
                }
                else {
                    //Do nothing
                }
            }
        }, 'html');
    }
}

function DeleteUserEvent(BaseId) 
{
    if (parseInt(BaseId) > 0) {
        var poststr = 'typeid=2&baseid=' + BaseId;
        ajaxpack.postAjaxRequest('initUserEvent.asp', poststr, function t() {
            if (ajaxIsReady()) {
                var rObj = ajaxpack.ajaxobj.responseText;
                if (rObj == "success") {
                    document.location.href = document.getElementById("RedURL").value;
                }
                else {
                    //Do nothing
                }
            }
        }, 'html');
    }
}

function CreateComment() {
    var pageid = document.getElementById("pageid").value;
    var desc = document.getElementById("comment_desc").value;

    if (pageid > 0 && desc.length > 0 && desc != 'Write a new comment...')
    {
        document.getElementById("form_btn1").style.display = 'none';
        document.getElementById("form_ajax1").style.display = 'block';

        var poststr = 'typeid=1&pageid=' + pageid + '&desc='+ escape(desc);
        ajaxpack.postAjaxRequest('initUserComment.asp', poststr, function t() {
            if (ajaxIsReady()) {
                var rObj = ajaxpack.ajaxobj.responseText;
                if (rObj == "success") {
                    document.getElementById("comment_desc").value = 'Write a new comment...';
                    document.getElementById("complete_msg").style.display = 'block';
                }
                else {
                    //Do nothing
                }
                document.getElementById("form_btn1").style.display = 'block';
                document.getElementById("form_ajax1").style.display = 'none';
            }
        }, 'html');
    }
}

function TextAreaFocus(tid) {
    var sObj;
    switch (tid) {
        case 1:
            sObj = document.getElementById("comment_desc");
            if (sObj.value == "Write a new comment...") {
                sObj.value = '';
            }
            break;
        default:
            break;
    }
}

function TextAreaBlur(tid) {
    var sObj;
    switch (tid) {
        case 1:
            sObj = document.getElementById("comment_desc");
            if (sObj.value == '') {
                sObj.value = 'Write a new comment...';
            }
            break;
        default:
            break;
    }
}

function returnCurrentDate() {
    var today = new Date();
    var dDay = today.getDate().toString();
    var dMonth = (today.getMonth() + 1).toString();
    var dYear = today.getFullYear().toString();
    var dateFull = "";

    try {
        if (dDay.length == 1) { dDay = "0" + dDay; }
        if (dMonth.length == 1) { dMonth = "0" + dMonth; }
        dateFull = dDay + "-" + dMonth + "-" + dYear;
    }
    catch (e)
	{ }

    return dateFull
}

function getAbsY(obj) {
    var topOffset = 0;
    if (obj.offsetParent) {
        while (obj.offsetParent) {
            topOffset += obj.offsetTop;
            obj = obj.offsetParent;
        }
    }
    else if (obj.y) {
        topOffset = obj.y;
    }
    return topOffset;
}

function maxStringInput(field, max_length, raised_event) {
    var keynum;
    var fieldid = field.toString();
    var strEntry = document.getElementById(fieldid).value;
    max_length = parseInt(max_length);

    if (window.event) //IE
    {
        keynum = raised_event.keyCode;

        if (keynum == 8 || keynum == 46) {
            return true;
        }
        else {
            if (strEntry.length > max_length) {
                return false;
            }
            else {
                return true;
            }
        }
    }
    else if (raised_event.which) //Netscape/Firefox/Opera
    {
        keynum = raised_event.which;

        if (keynum == 8 || keynum == 46) {
            return true;
        }
        else {
            if (strEntry.length > max_length) {
                return false;
            }
            else {
                return true;
            }
        }
    }
    else {
        return true;
    }
}

function readOnlyField(field, field) {
    return false;
}

function restrictStringSize(field, max_length, raised_event) {
    try {
        SetIsModified();

        if (field.value.length > max_length) {
            field.value = field.value.substring(0, max_length);
        }
    }
    catch (e) {
        //Do nothing
    }
}

function numberIntegerEntry(field, max_length, raised_event) {
    var keynum;
    var strEntry = field.value;
    var currlen = (strEntry.length + 1);
    SetIsModified();

    if (window.event) // IE
    {
        keynum = raised_event.keyCode; // Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else if (raised_event.which) // Netscape/Firefox/Opera
    {
        keynum = raised_event.which; 	// Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else {	// Return true if the event properties aren't set for the different browsers
        return true;
    }
}

function numberIntEntry(field, max_length, raised_event) {
    var keynum;
    var strEntry = field.value;
    var currlen = (strEntry.length + 1);
    SetIsModified();

    if (window.event) // IE
    {
        keynum = raised_event.keyCode; // Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else if (keynum == 46) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else if (raised_event.which) // Netscape/Firefox/Opera
    {
        keynum = raised_event.which; 	// Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else if (keynum == 46) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else {	// Return true if the event properties aren't set for the different browsers
        return true;
    }
}

function numberDecimalEntry(field, max_length, raised_event) {
    var keynum;
    var strEntry = field.value;
    var currlen = strEntry.length;

    SetIsModified();

    if (strEntry.indexOf('.') < 0) {
        currlen = currlen + 3;
    }

    if (window.event) // IE
    {
        keynum = raised_event.keyCode; // Get the number of the key pressed

        if (currlen > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else if (keynum == 46) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else if (raised_event.which) // Netscape/Firefox/Opera
    {
        keynum = raised_event.which; 	// Get the number of the key pressed

        if (currlen > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else if (keynum == 46) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else {	// Return true if the event properties aren't set for the different browsers
        return true;
    }
}

function numberTelephoneEntry(field, max_length, raised_event) {
    var keynum;
    var strEntry = field.value;
    var currlen = strEntry.length;

    SetIsModified();

    //Space - 32
    //Backspace - 8
    //+ - 43
    //. - 46
    //0 - 48
    //9 - 57
    //Delete - 127

    if (window.event) // IE
    {
        keynum = raised_event.keyCode; // Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else if (keynum == 32) {
                return true;
            }
            else if (keynum == 43) {
                return true;
            }
            else if (keynum == 46) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else if (raised_event.which) // Netscape/Firefox/Opera
    {
        keynum = raised_event.which; 	// Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else {
                return false;
            }
        }
        else {
            if (keynum == 8 || keynum == 127) {
                return true;
            }
            else if (keynum == 32) {
                return true;
            }
            else if (keynum == 43) {
                return true;
            }
            else if (keynum == 46) {
                return true;
            }
            else {
                if (keynum > 47 && keynum < 58) {
                    return true;
                }
                else {
                    return false;
                }
            }
        }
    }
    else {
        return true;
    }
}

function FormatNumber(amount) {
    var i = parseFloat(amount.value);
    if (isNaN(i)) { i = 0.00; }

    var minus = '';
    if (i < 0) { i = 0; }
    i = Math.abs(i);
    i = parseInt((i + .005) * 100);
    i = i / 100;
    s = new String(i);
    if (s.indexOf('.') < 0) { s += '.00'; }
    if (s.indexOf('.') == (s.length - 2)) { s += '0'; }
    s = minus + s;
    if (parseInt(s) == 0) {
        amount.value = '';
    }
    else {
        amount.value = s;
    }
}

function FormatNumberKGs(amount) {
    var j = amount.value.replace(",", "");
    var i = parseFloat(j);
    if (isNaN(i)) { i = 0.00; }
    var minus = '';
    if (i < 0) { minus = '-'; }
    i = Math.abs(i);
    i = parseInt((i + .005) * 100);
    i = i / 100;
    s = new String(i);
    if (s.indexOf('.') < 0) { s += '.00'; }
    if (s.indexOf('.') == (s.length - 2)) { s += '0'; }
    s = minus + s;
    if (parseInt(s) == 0) {
        amount.value = '';
    }
    else {
        amount.value = s;
    }
}

function FormatNumberThree(amount) {
    var i = parseFloat(amount.value);
    if (isNaN(i)) { i = 0.000; }
    var minus = '';
    if (i < 0) { minus = '-'; }
    i = Math.abs(i);
    i = parseInt((i + .0005) * 1000);
    i = i / 1000;
    s = new String(i);
    if (s.indexOf('.') < 0) { s += '.000'; }
    if (s.indexOf('.') == (s.length - 3)) { s += '0'; }
    s = minus + s;
    if (parseInt(s) == 0) {
        amount.value = '';
    }
    else {
        amount.value = s;
    }
}

function FormatNumberMB(amount) {
    var i = parseFloat(amount.value);
    if (isNaN(i)) { i = 0.00; }

    var minus = '';
    if (i < 0) { i = 0; }
    i = Math.abs(i);
    i = parseInt((i + .005) * 100);
    i = i / 100;
    s = new String(i);
    if (s.indexOf('.') < 0) { s += '.00'; }
    if (s.indexOf('.') == (s.length - 2)) { s += '0'; }
    s = minus + s;
    if (parseInt(s) == 0) {
        amount.value = '';
    }
    else {
        amount.value = s;
    }
}

function FormatNumberDays(amount) {
    var i = parseFloat(amount.value);
    if (isNaN(i)) { i = 0.00; }

    var minus = '';
    if (i < 0) { i = 0; }
    i = Math.abs(i);
    i = parseInt((i + .005) * 100);
    i = i / 100;
    s = new String(i);
    if (s.indexOf('.') < 0) { s += '.00'; }
    if (s.indexOf('.') == (s.length - 2)) { s += '0'; }
    s = minus + s;
    if (parseInt(s) == 0) {
        amount.value = '';
    }
    else {
        var sArray = s.split(".");
        var result = sArray[0];
        amount.value = result;
    }
}

function timeEntry(field, max_length, raised_event) {	// Restrict entry of time formatted field
    var keynum;
    var strEntry = field.value;
    var currlen = (strEntry.length + 1);

    if (window.event) // IE
    {
        keynum = raised_event.keyCode; // Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            return false;
        }
        else {
            if (keynum == 8) {
                return true;
            }
            else {
                if (currlen == 3 || currlen == 6) {
                    if (keynum == 58) {
                        return true;
                    }
                    else {
                        return false;
                    }
                }
                else {
                    if (keynum > 47 && keynum < 58) {
                        return true;
                    }
                    else {
                        return false;
                    }
                }
            }
        }
    }
    else if (raised_event.which) // Netscape/Firefox/Opera
    {
        keynum = raised_event.which; 	// Get the number of the key pressed

        if (field.value.length > max_length)	// Make sure it's not too long
        {
            return false;
        }
        else {
            if (keynum == 8) {
                return true;
            }
            else {
                if (currlen == 3 || currlen == 6) {
                    if (keynum == 58) {
                        return true;
                    }
                    else {
                        return false;
                    }
                }
                else {
                    if (keynum > 47 && keynum < 58) {
                        return true;
                    }
                    else {
                        return false;
                    }
                }
            }
        }
    }
    else {
        return true;
    }
}

function EmailValidation(type, inputid) {
    type = parseInt(type);
    var valid = true;
    var iObj = document.getElementById(inputid);
    var image = inputid.toString() + 'Error';
    var imageObj = document.getElementById(image);

    if (iObj.value.length > 0) {
        valid = CheckEmail(iObj.value);
    }

    if (type == 1) //onkeyup
    {
        if (imageObj.style.display == 'block') {
            if (valid == true) {
                imageObj.style.display = 'none';
            }
        }
    }
    else //onblur
    {
        if (valid == true) {
            imageObj.style.display = 'none';
        }
        else {
            imageObj.style.display = 'block';
        }
    }
}

function CheckEmail(email) {
    invalidChars = " ~\'^\`\"*+=\\|][(){}$&!#%/:,;";

    if (email == "") {
        return true;
    }

    for (i = 0; i < invalidChars.length; i++) {
        badChar = invalidChars.charAt(i);
        if (email.indexOf(badChar, 0) > -1) {
            return false;
        }
    }
    lengthOfEmail = email.length;
    if ((email.charAt(lengthOfEmail - 1) == ".") || (email.charAt(lengthOfEmail - 2) == ".")) {
        return false;
    }
    Pos = email.indexOf("@", 1);
    if (email.charAt(Pos + 1) == ".") {
        return false;
    }
    while ((Pos < lengthOfEmail) && (Pos != -1)) {
        Pos = email.indexOf(".", Pos);
        if (email.charAt(Pos + 1) == ".") {
            return false;
        }
        if (Pos != -1) {
            Pos++;
        }
    }

    atPos = email.indexOf("@", 1);
    if (atPos == -1) {
        return false;
    }

    if (email.indexOf("@", atPos + 1) != -1) {
        return false;
    }

    periodPos = email.indexOf(".", atPos);
    if (periodPos == -1) {
        return false;
    }
    if (periodPos + 3 > email.length) {
        return false;
    }

    return true;
}

function findPos(obj) {
    var curleft = curtop = 0;
    if (obj.offsetParent) {
        curleft = obj.offsetLeft
        curtop = obj.offsetTop
        while (obj = obj.offsetParent) {
            curleft += obj.offsetLeft
            curtop += obj.offsetTop
        }
    }
    return [curleft, curtop];
}

function getX(oElement) {
    var iReturnValue = 0;
    while (oElement != null) {
        iReturnValue += oElement.offsetLeft;
        oElement = oElement.offsetParent;
    }
    return iReturnValue;
}

function getY(oElement) {
    var iReturnValue = 0;
    while (oElement != null) {
        iReturnValue += oElement.offsetTop;
        oElement = oElement.offsetParent;
    }
    return iReturnValue;
}
