﻿// JScript File
function fireClickEvent(element)
{
    if (typeof document.createEvent != "undefined")
    {
        var evObj = document.createEvent('MouseEvents');
        evObj.initMouseEvent('click', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
        element.dispatchEvent(evObj);
    }
    else
    {
        //element.fireEvent("onclick");
        element.click();
    }
}

function jsEncode(text)
{
    return text.replace(/\\/g,"\\\\").replace(
                        /'/g,"\\\'").replace(
                        /"/g,"\\\"").replace(
                        new RegExp(String.fromCharCode(9),"g"),"\\t").replace(
                        new RegExp(String.fromCharCode(13),"g"),"").replace(
                        new RegExp(String.fromCharCode(10),"g"),"\\n");
}

function htmlEncode(text,encodeBR)
{
    encodeBR = (encodeBR || false);
    var text = text.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;').replace(/"/g,'&quot;').replace(/'/g,'&#39;');
    if (encodeBR)
        text = text.replace(/\n/g,'<br/>');
    return text
}

function xmlEncode(text)
{
    if (text == null)
        return "";
    return htmlEncode(text); 
}


var winDebug = null;
var DEBUG_MODE = false;
function initializeDebug()
{
    DEBUG_MODE = true;
    winDebug = window.open("about:blank","","width=600,height=300,scrollbars=yes");
    if (winDebug)
        winDebug.document.write("<input type='button' value='get HTML' onclick='" + htmlEncode("prompt('',window.opener.document.body.innerHTML);") + "' /><br/>");
}
function addDebugMessage(message)
{
    if (winDebug)
    {
        try {
            winDebug.document.write(new Date() + ": " + message + "<br/>");
        }
        catch(e) {
            winDebug = null;
        }
    }
}
//initializeDebug();

var Genoom_is_gecko = /gecko/i.test(navigator.userAgent);
var Genoom_is_ie    = /MSIE/.test(navigator.userAgent);

function setInputSelectionRange(input, start, end) {
	if (Genoom_is_gecko) {
		input.setSelectionRange(start, end);
	} else {
		var range = input.createTextRange();
		range.collapse(true);
		range.moveStart("character", start);
		range.moveEnd("character", end - start);
		range.select();
	}
};

function getInputSelectionStart(input) {
    return getInputCaretPosition(input).start;
};

function getInputSelectionEnd(input) {
    return getInputCaretPosition(input).end;
};

function getInputCaretPosition(input)
{
    var result = { start: 0, end: 0 };
    if (input.setSelectionRange)
    {
        result.start = input.selectionStart;
        result.end = input.selectionEnd;
    }
    else if (document.selection && document.selection.createRange)
    {
        var range = document.selection.createRange();
        var r2 = range.duplicate();
        result.start = 0 - r2.moveStart('character', -100000);
        result.end = result.start + range.text.length;
    }
    return result;
}

function checkAllScriptsLoaded()
{
    if (typeof(Sys) == "undefined")
        top.location.href = "http://www.genoom.com/err_pages/err_browser.aspx?ie=6";
}


function getIDCulture()
{
    var idCulture = "es";
    try { idCulture = Sys.CultureInfo.CurrentCulture.name } catch(e) {}
    return idCulture;
}


function howToRenderName()
{
    if (getIDCulture().substr(0,2) == "zh")
        return 2;
    else
        return 0;
}


function getFullName(displayMode,firstName,surname)
{
    displayMode = (displayMode || 0);
    
    switch (howToRenderName())
    {
        case 1:
            switch (displayMode)
            {
                case 3:
                    return (firstName);
                case 1:
                    return (surname);
                case 2:
                    return (firstName);
                default:
                    return (firstName + ' ' + surname);
            }
            break;
        case 2:
            switch (displayMode)
            {
                case 3:
                    return (surname + ' ' + firstName);
                case 1:
                    return (surname + ' ' + firstName);
                case 2:
                    return "";
                default:
                    return (surname + ' ' + firstName);
            }
            break;
        default:
            switch (displayMode)
            {
                case 3:
                    return (firstName);
                case 1:
                    return (firstName);
                case 2:
                    return (surname);
                default:
                    return (firstName + ' ' + surname);
            }
    }
    return (firstName + ' ' + surname);
}

// Author: Eric King Url: http://redrival.com/eak/index.shtml
var NewWindowObjectRef = null;
function NewWindow(mypage,myname,w,h,scroll)
{
    var LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
    var TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
    var settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable';
    NewWindowObjectRef = window.open(mypage,myname,settings)
}