﻿
if(window.Event){// 修正Event的DOM
    /*
                                IE5        MacIE5        Mozilla        Konqueror2.2        Opera5
    event                        yes        yes            yes            yes                    yes
    event.returnValue            yes        yes            no            no                    no
    event.cancelBubble            yes        yes            no            no                    no
    event.srcElement            yes        yes            no            no                    no
    event.fromElement            yes        yes            no            no                    no
    
    */
    Event.prototype.__defineSetter__("returnValue",function(b){// 
        if(!b)this.preventDefault();
        return b;
        });
    Event.prototype.__defineSetter__("cancelBubble",function(b){// 设置或者检索当前事件句柄的层次冒泡
        if(b)this.stopPropagation();
        return b;
        });
    Event.prototype.__defineGetter__("srcElement",function(){
        var node=this.target;
        while(node.nodeType!=1)node=node.parentNode;
        return node;
        });
    Event.prototype.__defineGetter__("fromElement",function(){// 返回鼠标移出的源节点
        var node;
        if(this.type=="mouseover")
            node=this.relatedTarget;
        else if(this.type=="mouseout")
            node=this.target;
        if(!node)return;
        while(node.nodeType!=1)node=node.parentNode;
        return node;
        });
    Event.prototype.__defineGetter__("toElement",function(){// 返回鼠标移入的源节点
        var node;
        if(this.type=="mouseout")
            node=this.relatedTarget;
        else if(this.type=="mouseover")
            node=this.target;
        if(!node)return;
        while(node.nodeType!=1)node=node.parentNode;
        return node;
        });
    Event.prototype.__defineGetter__("offsetX",function(){
        return this.layerX;
        });
    Event.prototype.__defineGetter__("offsetY",function(){
        return this.layerY;
        });
    }
if(window.Document){// 修正Document的DOM
    /*
                                IE5        MacIE5        Mozilla        Konqueror2.2        Opera5
    document.documentElement    yes        yes            yes            yes                    no
    document.activeElement        yes        null        no            no                    no
    
    */
    }
if(window.Node){// 修正Node的DOM
    /*
                                IE5        MacIE5        Mozilla        Konqueror2.2        Opera5
    Node.contains                yes        yes            no            no                    yes
    Node.replaceNode            yes        no            no            no                    no
    Node.removeNode                yes        no            no            no                    no
    Node.children                yes        yes            no            no                    no
    Node.hasChildNodes            yes        yes            yes            yes                    no
    Node.childNodes                yes        yes            yes            yes                    no
    Node.swapNode                yes        no            no            no                    no
    Node.currentStyle            yes        yes            no            no                    no
    
    */
    Node.prototype.replaceNode=function(Node){// 替换指定节点
        this.parentNode.replaceChild(Node,this);
        }
    Node.prototype.removeNode=function(removeChildren){// 删除指定节点
        if(removeChildren)
            return this.parentNode.removeChild(this);
        else{
            var range=document.createRange();
            range.selectNodeContents(this);
            return this.parentNode.replaceChild(range.extractContents(),this);
            }
        }
    Node.prototype.swapNode=function(Node){// 交换节点
        var nextSibling=this.nextSibling;
        var parentNode=this.parentNode;
        node.parentNode.replaceChild(this,Node);
        parentNode.insertBefore(node,nextSibling);
        }
    }
if(window.HTMLElement){
    HTMLElement.prototype.__defineGetter__("all",function(){
        var a=this.getElementsByTagName("*");
        var node=this;
        a.tags=function(sTagName){
            return node.getElementsByTagName(sTagName);
            }
        return a;
        });
    HTMLElement.prototype.__defineGetter__("parentElement",function(){
        if(this.parentNode==this.ownerDocument)return null;
        return this.parentNode;
        });
    HTMLElement.prototype.__defineGetter__("children",function(){
        var tmp=[];
        var j=0;
        var n;
        for(var i=0;i<this.childNodes.length;i++){
            n=this.childNodes[i];
            if(n.nodeType==1){
                tmp[j++]=n;
                if(n.name){
                    if(!tmp[n.name])
                        tmp[n.name]=[];
                    tmp[n.name][tmp[n.name].length]=n;
                    }
                if(n.id)
                    tmp[n.id]=n;
                }
            }
        return tmp;
        });
    HTMLElement.prototype.__defineGetter__("currentStyle", function(){
        return this.ownerDocument.defaultView.getComputedStyle(this,null);
        });
    HTMLElement.prototype.__defineSetter__("outerHTML",function(sHTML){
        var r=this.ownerDocument.createRange();
        r.setStartBefore(this);
        var df=r.createContextualFragment(sHTML);
        this.parentNode.replaceChild(df,this);
        return sHTML;
        });
    HTMLElement.prototype.__defineGetter__("outerHTML",function(){
        var attr;
        var attrs=this.attributes;
        var str="<"+this.tagName;
        for(var i=0;i<attrs.length;i++){
            attr=attrs[i];
            if(attr.specified)
                str+=" "+attr.name+'="'+attr.value+'"';
            }
        if(!this.canHaveChildren)
            return str+">";
        return str+">"+this.innerHTML+"</"+this.tagName+">";
        });
    HTMLElement.prototype.__defineGetter__("canHaveChildren",function(){
        switch(this.tagName.toLowerCase()){
            case "area":
            case "base":
            case "basefont":
            case "col":
            case "frame":
            case "hr":
            case "img":
            case "br":
            case "input":
            case "isindex":
            case "link":
            case "meta":
            case "param":
                return false;
            }
        return true;
        });

    HTMLElement.prototype.__defineSetter__("innerText",function(sText){
        var parsedText=document.createTextNode(sText);
        this.innerHTML=parsedText;
        return parsedText;
        });
    HTMLElement.prototype.__defineGetter__("innerText",function(){
        var r=this.ownerDocument.createRange();
        r.selectNodeContents(this);
        return r.toString();
        });
    HTMLElement.prototype.__defineSetter__("outerText",function(sText){
        var parsedText=document.createTextNode(sText);
        this.outerHTML=parsedText;
        return parsedText;
        });
    HTMLElement.prototype.__defineGetter__("outerText",function(){
        var r=this.ownerDocument.createRange();
        r.selectNodeContents(this);
        return r.toString();
        });
    HTMLElement.prototype.attachEvent=function(sType,fHandler){
        var shortTypeName=sType.replace(/on/,"");
        fHandler._ieEmuEventHandler=function(e){
            window.event=e;
            return fHandler();
            }
        this.addEventListener(shortTypeName,fHandler._ieEmuEventHandler,false);
        }
    HTMLElement.prototype.detachEvent=function(sType,fHandler){
        var shortTypeName=sType.replace(/on/,"");
        if(typeof(fHandler._ieEmuEventHandler)=="function")
            this.removeEventListener(shortTypeName,fHandler._ieEmuEventHandler,false);
        else
            this.removeEventListener(shortTypeName,fHandler,true);
        }
    HTMLElement.prototype.contains=function(Node){// 是否包含某节点
        do if(Node==this)return true;
        while(Node=Node.parentNode);
        return false;
        }
    HTMLElement.prototype.insertAdjacentElement=function(where,parsedNode){
        switch(where){
            case "beforeBegin":
                this.parentNode.insertBefore(parsedNode,this);
                break;
            case "afterBegin":
                this.insertBefore(parsedNode,this.firstChild);
                break;
            case "beforeEnd":
                this.appendChild(parsedNode);
                break;
            case "afterEnd":
                if(this.nextSibling)
                    this.parentNode.insertBefore(parsedNode,this.nextSibling);
                else
                    this.parentNode.appendChild(parsedNode);
                break;
            }
        }
    HTMLElement.prototype.insertAdjacentHTML=function(where,htmlStr){
        var r=this.ownerDocument.createRange();
        r.setStartBefore(this);
        var parsedHTML=r.createContextualFragment(htmlStr);
        this.insertAdjacentElement(where,parsedHTML);
        }
    HTMLElement.prototype.insertAdjacentText=function(where,txtStr){
        var parsedText=document.createTextNode(txtStr);
        this.insertAdjacentElement(where,parsedText);
        }
    HTMLElement.prototype.attachEvent=function(sType,fHandler){
        var shortTypeName=sType.replace(/on/,"");
        fHandler._ieEmuEventHandler=function(e){
            window.event=e;
            return fHandler();
            }
        this.addEventListener(shortTypeName,fHandler._ieEmuEventHandler,false);
        }
    HTMLElement.prototype.detachEvent=function(sType,fHandler){
        var shortTypeName=sType.replace(/on/,"");
        if(typeof(fHandler._ieEmuEventHandler)=="function")
            this.removeEventListener(shortTypeName,fHandler._ieEmuEventHandler,false);
        else
            this.removeEventListener(shortTypeName,fHandler,true);
        }
    }





var PAGEVIEW_CONFIG = 0;
var SINGOFF_HOME_CONFIG = PAGEVIEW_CONFIG+1;
var NORMALIZE_PN_CONFIG = SINGOFF_HOME_CONFIG+1;
var JUST_INDEX_HTML_CN = NORMALIZE_PN_CONFIG+1;
var JUST_EN_CN_DATABASE = JUST_INDEX_HTML_CN+1;
var LEGAL_STATUS_FORMAT =0;
var DESIGN_PATENT_MAP=1;
var LOCARNO_CHECKBOX=1;
var EN_DATABASE = new Array(0,1,4,6);
var CN_DATABASE = new Array(2,2);
var DESIGN_DATABASE = new Array(3,5);
var INIT_DATABASE=16;
function isLocarNoGroup(index)
{
	if(index == 8 || index == 32 || index == 40)
		return 1;
	return 0;
}
function getDatabaseGroup(index)
{
    for( var i = 0 ; i < EN_DATABASE.length; i++)
    {
        if((1<<EN_DATABASE[i])==index)
            return 0;
    }
    
    for( var i = 0 ;i < CN_DATABASE.length; i++)
    {
        if((1<<CN_DATABASE[i])==index)
            return 1;
    }
    return 2;
}
function getConfig(index)
{
    switch(index){
        case PAGEVIEW_CONFIG:
            return 'class';
        case SINGOFF_HOME_CONFIG:
            return 1;
        case NORMALIZE_PN_CONFIG:
            return false;
        case JUST_INDEX_HTML_CN:
            return true;
        case JUST_EN_CN_DATABASE:
            return true;
    }
    return 1;
}


/// Author: godsong 06.10.4
/// Help to perform "check/uncheck all" effectt
/// checkboxSwitch: domNode of checkbox marked as "check/uncheck all"
/// checkboxGroup:  domNodes of the checkboxes
function checkAll(checkboxSwitch, checkboxGroup)
{
    for (var i = 0;i < checkboxGroup.length; i++)
    {
        if (checkboxGroup[i].type == 'checkbox')
            checkboxGroup[i].checked = checkboxSwitch.checked;
    }
}

/// Author: godsong 06.10.4
/// Set the style of first parent div node to "display: none"
/// obj: current dom node
function hideParentDiv(obj)
{
    obj = obj.parentNode;
    while (obj && obj.tagName.toLowerCase() != 'div')
    {
        obj = obj.parentNode;
    }
    if (obj)
        obj.style.display = 'none';
}

function hideParentTr(obj)
{
    obj = obj.parentNode;
    while (obj && obj.tagName.toLowerCase() != 'tr')
    {
        obj = obj.parentNode;
    }
    if (obj)
        obj.style.display = 'none';
}

/// Author: godsong 06.10.5
/// Find the specific parent node
/// obj: current dom node
/// tag: parent node tag to look for
/// index: skip index - 1 matched node
/// return: the node found or null
function findParentNode(obj, tag, index)
{    
    for (var i = 0; obj && i < index; ++i)
    {
        do
        {
            obj = obj.parentNode;
            if(obj == null)
                return null;
        }
        while(obj.tagName != tag.toUpperCase())
    }
    if (i == index)
        return obj;
    else
        return null;
}

function isChildOf(childobj, parentobj)
{
    if(childobj == null || parentobj == null)
        return false;
    do
    {
        childobj = childobj.parentNode;
        if(childobj == null)
            return false;
        else if(childobj == parentobj)
            return true;
    }
    while(true)
}

function findSiblingBefore(obj, tag, index)
{    
    for (var i = 0; obj && i < index; ++i)
    {
        do
        {            
            obj = obj.previousSibling;
        }
        while (obj && obj.tagName != tag.toUpperCase())
    }
    if (i == index)
        return obj;
    else
        return null;
}

function findSiblingAfter(obj, tag, index)
{    
    for (var i = 0; obj && i < index; ++i)
    {
        do
        {
            obj = obj.nextSibling;
        }
        while (obj && obj.tagName != tag.toUpperCase())
    }
    if (i == index)
        return obj;
    else
        return null;
}

function getFormElementValue(form, name)
{
    var elems = form.elements;
    for (var i = 0; i < elems.length; ++i)
        if (elems[i].name == name && elems[i].checked)
            return elems[i].value;
    return 'C';
}

function setFormElementValue(form, name, value)
{
    var elems = form.elements;
    for (var i = 0; i < elems.length; ++i)
        if (elems[i].name == name)
        {
            if (elems[i].type == "radio" || elems[i].type == "checkbox")
            {
                if (value != elems[i].value)
                    continue;
                else
                {
                    elems[i].checked = true;
                    break;
                }
            }
            else
                elems[i].value = value;
        }        
}

function bbimg(o)
{
	var zoom=parseInt(o.style.zoom, 10)||100;zoom+=event.wheelDelta/12;if (zoom>0) o.style.zoom=zoom+'%';
	return false;
}

function showSlaveDiv(splitPaneId, masterPaneId, slavePaneId, slaveHeight, keepSlavePaneSize)
{
    var slave = dojo.widget.byId(slavePaneId);
    var master = dojo.widget.byId(masterPaneId);
    var main = dojo.widget.byId(splitPaneId);
    if (!keepSlavePaneSize || slave.sizeShare * (100 - slaveHeight) < master.sizeShare * slaveHeight)
    {
        dojo.widget.byId(masterPaneId).sizeShare = 100 - slaveHeight;
        dojo.widget.byId(slavePaneId).sizeShare = slaveHeight;
        dojo.widget.byId(splitPaneId).layoutPanels();  
    }
}

//function selectTab(parentTabId, childTabId)
//{
//    var pTab = dojo.widget.byId(parentTabId);
//    var cTab = dojo.widget.byId(childTabId);
//    if(pTab != null && cTab != null)
//    {
//        pTab.selectTab(cTab, true);
//    }
//}

function textContentToSearch(node)
{
	var _result = "";
	if (node == null) { return _result; }
	for (var i = 0; i < node.childNodes.length; i++) {
		switch (node.childNodes[i].nodeType) {
			case 1: // ELEMENT_NODE
			case 5: // ENTITY_REFERENCE_NODE
				if (node.childNodes[i].tagName == "SUP" || node.childNodes[i].tagName == "SUB")
				{
					_result += " ";
					_result += textContentToSearch(node.childNodes[i]);
					_result += " ";
				}
				else
					_result += textContentToSearch(node.childNodes[i]);
				break;
			case 3: // TEXT_NODE
			case 2: // ATTRIBUTE_NODE
			case 4: // CDATA_SECTION_NODE
				_result += node.childNodes[i].nodeValue;
				break;
			default:
				break;
		}
	}
	return _result;
}

function getAdjacentText(startNode, endNode)
{
	var _result = '';
	if (!startNode && !endNode) { return _result; }
	var snode;
	if (!startNode)
	    snode = endNode.previousSibling;
	else
	    snode = startNode.nextSibling;
	var isEnd = false;
	while (!isEnd)
	{
		switch (snode.nodeType) {
			case 1: // ELEMENT_NODE
			case 5: // ENTITY_REFERENCE_NODE
				_result += textContentToSearch(snode);							
				break;
			case 3: // TEXT_NODE
			case 2: // ATTRIBUTE_NODE
			case 4: // CDATA_SECTION_NODE
				_result += snode.nodeValue;
				break;
			default:
				break;
		}
		snode = snode.nextSibling;
		if (!snode)
			isEnd = true;
	    else if (snode == endNode)
	        isEnd = true;
		else if (!endNode && snode.nodeType == 1 && snode.tagName == "BR")
			isEnd = true;
	}
	return _result;
}

function htmlEncode(strS)
{
	return(strS.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/ /g,"&nbsp;").replace(/\r\n/g,"<br\/>"));
}

function htmlDecode(strS)
{
	return(strS.replace(/<br\/?>/ig,"\r\n").replace(/&nbsp;/ig," ").replace(/&gt;/ig,">").replace(/&lt;/ig,"<").replace(/&amp;/ig,"&"));
}

function isNullorEmpty(str)
{
    return (str == null || str == 'undefined' || dojo.string.trim(str) == '' || str == 'null');
}

function getElementByClassName(obj, tag, className)
{
    if(obj == null || isNullorEmpty(tag) || isNullorEmpty(className))
        return null;
}

function getNormalizedPN(pn)
{
    var Normalized = getConfig(NORMALIZE_PN_CONFIG);
    if(!Normalized)
        return pn;
    if(isNullorEmpty(pn))
        return pn;
    pn = pn.replace(/,/g, "").replace(/US/, "");
    if(pn.indexOf('/') != -1)
        pn = pn.substring(0, pn.indexOf('/')) + pn.substring(pn.indexOf('/') + 1, pn.length);
    if(parseInt(pn) > 10000000 && parseInt(pn) < 200000000)
        pn = '200' + pn;
    return pn;
}

function getElementsByClassName(obj, tag, className)
{
    if(obj == null || isNullorEmpty(tag) || isNullorEmpty(className))
        return null;
    var objs = obj.getElementsByTagName(tag);
    if(objs.length == 0)
        return;
    for(var i = 0; i < objs.length; i++)
        if(objs[i].className.toLowerCase() == className.toLowerCase())
            return objs[i];
    return null;
}

function getPatentNumIDI(pn, nodiffus)
{
    if(isNullorEmpty(pn))
        return -1;
    var Normalized = getConfig(NORMALIZE_PN_CONFIG);
    if(!Normalized)
    {
	var intpn=parseInt(pn);
	if(pn>200000000 && pn <204000000)
		return 4;
	else if(pn>210000000 && pn < 211000000)
		return 8;
	else if(pn>10060000 && pn <11500000)
		return 16;
	else if(pn>15000000 && pn <16500000)
		return 32;
        if(pn.indexOf('CN') == 0 || pn.indexOf('CK') == 0 || (parseInt(pn) >= 200000000 && parseInt(pn) < 400000000))
            return 12;
	    return 3;
    }    
    if(pn.indexOf('##') != -1 || pn.indexOf('%23%23') != -1) //document
        return 12;
    pn = pn.toUpperCase().replace(/'/g, '');
    if(pn.indexOf('CN') == 0 || pn.indexOf('CK') == 0 || (parseInt(pn) >= 200000000 && parseInt(pn) < 400000000))
        return 12;
    if(pn.indexOf('EP') == 0 || (parseInt(pn) >= 400000000 && parseInt(pn) < 450000000))
        return 16;
    if(pn.indexOf('JP') == 0 || (parseInt(pn) >= 450000000 && parseInt(pn) < 500000000))
        return 32;
    if(pn.indexOf('WO') == 0 || parseInt(pn) >= 500000000 && parseInt(pn) < 503000000)
        return 64;
    if((pn.indexOf('U') == 0 && pn.indexOf('US') != 0) || parseInt(pn) >= 503000000)
        return -(128+12);
    if(nodiffus)
        return 3;
    else
    {
        if((pn.length == 11 && pn.substring(0, 3) == '200') || (parseInt(pn) > 10000000 && parseInt(pn) < 200000000))
            return 2;
        else
            return 1;
    }
}

function setPageViewDisplay(view)
{
    commandDown();//字段组合
    g_currentView = view;
    if(g_currentView != 'search' && g_currentView != null)
        showSlaveDiv('index-right', 'index-master', 'index-slave', 0, false);
    if(dojo.byId('popupdiv-searchhelp') != null && dojo.byId('popupdiv-searchhelp').style.visibility == 'visible')
        dojo.byId('popupdiv-searchhelp').comObject.hidePopup();
    if(dojo.byId('search-popupdiv') != null)
        dojo.byId('search-popupdiv').style.visibility = 'hidden';
    if(dojo.byId('search-inputtipsdiv') != null)
        dojo.byId('search-inputtipsdiv').style.visibility = 'hidden';
    if(dojo.byId('popupdiv-highlightword') != null)
        dojo.byId('popupdiv-highlightword').style.visibility = 'hidden';
    if(dojo.byId('search-bookmark-popupdiv') != null)
        dojo.byId('search-bookmark-popupdiv').style.visibility = 'hidden';
    if(dojo.byId('search-master-rotate-div') != null)
        dojo.byId('search-master-rotate-div').style.display = 'none';
    if(dojo.byId('popupdiv-importpatent') != null)
        dojo.byId('popupdiv-importpatent').style.visibility = 'hidden';
    closeClipboardFigDiv();
    closeClipboardPNDiv();
    var searchdiv = dojo.byId('search-master-querylist');
    var classdiv = dojo.byId('classinfo-div');
    var projectdiv = dojo.byId('project-projectlist');
    var helpdiv = dojo.byId('help-helpdiv');
    var statisticdiv = dojo.byId('statistic-statisticlist');
    var historydiv = dojo.byId('history-historylist');
    var historydiv_h = dojo.byId('history-div-historytype-h');
    var historydiv_b = dojo.byId('history-div-historytype-b');
    var historyunlogindiv = dojo.byId('history-historylist-unlogin');
    var analysisdiv = dojo.byId('document-documentlist');
    var logindiv = dojo.byId('login-form-div');
    var signupdiv = dojo.byId('signup-form-div');
    var clusterdiv  = dojo.byId('queryrelated-cluster-div');
    var clusterdiv_m = dojo.byId('queryrelated-cluster-div-SEARCH-MASTER');
    var clusterdiv_s = dojo.byId('queryrelated-cluster-div-SEARCH-SLAVE');
    var tempsubgetdiv = dojo.byId('search-master-subget');
    var querystatdiv = dojo.byId('querylist-queryresultstat-div-SEARCH-MASTER');
    var querystatdiv_s = dojo.byId('querylist-queryresultstat-div-SEARCH-SLAVE');
    var shadowdiv = dojo.byId('shadowDiv');
    var managediv = dojo.byId('manage-managediv');
    managediv.style.display = 'none';
    searchdiv.style.display = 'none';
    classdiv.style.display = 'none';
    projectdiv.style.display = 'none';
    helpdiv.style.display = 'none';
    statisticdiv.style.display = 'none';
    historydiv.style.display = 'none';
    historydiv_h.style.display = 'none';
    historydiv_b.style.display = 'none';
    historyunlogindiv.style.display = 'none';
    analysisdiv.style.display = 'none';
    logindiv.style.display = 'none';
    shadowdiv.style.display = 'none';
    signupdiv.style.display = 'none';
    if(clusterdiv!=null)
        clusterdiv.style.display = 'none';
    if(clusterdiv_s!=null)
        clusterdiv_s.style.display = 'none';
    if(clusterdiv_m!=null)
        clusterdiv.style.display = 'none';
    tempsubgetdiv.style.display = 'none';
    //advancedsearchdiv.style.display = 'none';
    var searchmenu = dojo.byId('header-menu-search');
    var classmenu = dojo.byId('header-menu-class');
    var statisticmenu = dojo.byId('header-menu-statistic');
    var analysismenu = dojo.byId('header-menu-analysis');
    var historymenu = dojo.byId('header-menu-history');
    var projectmenu = dojo.byId('header-menu-project');
    var helpmenu = dojo.byId('header-menu-help');
    var managemenu = dojo.byId('header-menu-manage');
    managemenu.innerHTML = c_sManage;
    searchmenu.innerHTML = c_sSearch;
    classmenu.innerHTML = c_sClass;
    statisticmenu.innerHTML = c_sStatistic;
    analysismenu.innerHTML = c_sAnalysis;
    historymenu.innerHTML = c_sHistory;
    projectmenu.innerHTML = c_sProject;
    helpmenu.innerHTML = c_sHelp;
    switch(g_currentView)
    {
        case 'search':
            if(querystatdiv != null)
                querystatdiv.style.display = 'none';
            if(querystatdiv_s != null)
                querystatdiv_s.style.display = 'none';
            searchmenu.innerHTML = '<b>' + c_sSearch + '</b>';
            searchdiv.style.display = '';
            break;
        case 'statistic':
            statisticmenu.innerHTML = '<b>' + c_sStatistic + '</b>';
            statisticdiv.style.display = '';
            var changetype = true;
            var searchtypevalue = dojo.byId('searchtype-span').typevalue;
            if((searchtypevalue & 1) == 1)
                dojo.byId('statistic-type-select').value = 1;
            else if((searchtypevalue & 2) == 2)
                dojo.byId('statistic-type-select').value = 2;
            else if((searchtypevalue & 4) == 4)
                dojo.byId('statistic-type-select').value = 4;
            else if((searchtypevalue & 8) == 8)
                dojo.byId('statistic-type-select').value = 8;
            else if((searchtypevalue & 16) == 16)
                dojo.byId('statistic-type-select').value = 16;
            else if((searchtypevalue & 32) == 32)
                dojo.byId('statistic-type-select').value = 32;
            else if((searchtypevalue & 64) == 64)
                dojo.byId('statistic-type-select').value = 64;
//            if((searchtypevalue == 1 || searchtypevalue == 3) && !dojo.byId('statistic-type-radio-p').checked)
//            {
//                dojo.byId('statistic-type-radio-p').checked = true;
//                changetype = true;
//            }
//            else if(searchtypevalue == 2 && !dojo.byId('statistic-type-radio-a').checked)
//            {
//                dojo.byId('statistic-type-radio-a').checked = true;
//                changetype = true;
//            }
//            else if(searchtypevalue >= 4 && !dojo.byId('statistic-type-radio-c').checked)
//            {
//                dojo.byId('statistic-type-radio-c').checked = true;
//                changetype = true;
//            }
            
            if(changetype)
                onStatTypeChange();
            break;
        case 'analysis':
            analysismenu.innerHTML = '<b>' + c_sAnalysis + '</b>';
            analysisdiv.style.display = '';
            break;
        case 'history':
            historymenu.innerHTML = '<b>' + c_sHistory + '</b>';
            historydiv.style.display = '';
            historydiv_h.style.display = '';
            break;
        case 'project':
            projectmenu.innerHTML = '<b>' + c_sProject + '</b>';
            projectdiv.style.display = '';
            break;
        case 'login':
            //logindiv.style.display = '';
            var dive = dojo.byId('login-result-div');
            dive.innerHTML = g_loginSpan;
            dive.style.display = '';
            prepareLogin();
            break;
        case 'signup':
            signupdiv.style.display = '';
            break;
        case 'help':
            helpmenu.innerHTML = '<b>' + c_sHelp + '</b>';
            helpdiv.style.display = '';
            break;
	case 'manage':
            managemenu.innerHTML = '<b>' + c_sManage +'</b>';
            managediv.style.display='';
            break;
        case 'class':
            classmenu.innerHTML = '<b>' + c_sClass + '</b>';
            classdiv.style.display = '';
            changeClassInfoType();
            /*if(g_isLogin)
                classdiv.style.display = '';
            if(dojo.string.trim(dojo.byId('classdetail-div').innerHTML) == '')
            {
                SetSystemDynamicDisplayByFuncArray('Class', null);
                //dojo.byId('classinfo-type-radio-1').checked = true;
                changeClassInfoType();
            }*/
            break;
        case null:
            break;
    }
    if(g_currentView != 'search')
        onSelectTypeChange(null);
}

function setPageView(view, refreshLoginState)
{
  if(view=='login')
    {
        prepareLogin();
        return;
    }
    if(!refreshLoginState && g_currentView != 'login')
        g_previousView = g_currentView;
    setPageViewDisplay(view);   
    if(view != 'search')
    {
        var state = { 
            pageview:view,
            back: function() { 
                setPageViewDisplay(this.pageview); 
                if(this.pageview == 'project' || this.pageview == 'history'||this.pageview == 'class')
                    getUserLoginState();
            }, 
            forward: function() { 
                setPageViewDisplay(this.pageview); 
                if(this.pageview == 'project' || this.pageview == 'history'||this.pageview == 'class')
                    getUserLoginState();
            } 
        }; 
        dojo.undo.browser.addToHistory(state); 
    }
    if(refreshLoginState)
        getUserLoginState();
}
function showmanage()
{
    var url = 'invokexml.do?sf=UserGet';
            var request = new dojo.io.Request(url,'text/html',null,false);
            dojo.lang.mixin(request,{
                encoding:g_encoding,
                load:function(typ,evaldObj){
                   
                    dojo.byId('manage-managediv').innerHTML = XSLTtrans(evaldObj,c_sXslFileManage);
                    dojo.byId('deluser-form').style.display='';
			        dojo.byId('adduser-form').style.display='';
			        //dojo.byId('permission-div').style.display='';
			        //permission_list();
                }
                });
            dojo.io.bind(request);
}
function showhelp()
{
            var url = 'invokexml.do?sf=UserGet';
            var request = new dojo.io.Request(url,'text/html',null,false);
            dojo.lang.mixin(request,{
                encoding:g_encoding,
                load:function(typ,evaldObj){
                   
                    dojo.byId('help-helpdiv').innerHTML = XSLTtrans(evaldObj,c_sXslFileHelp);
                    
                }
                });
            dojo.io.bind(request);
                
            
}

//function setQuickUserInfo(user)
//{
//    dojo.byId('search-userinfo-id').innerHTML = (user != null) ? user.User.Id : '';
//    dojo.byId('search-userinfo-name').innerHTML = (user != null) ? user.User.Name : '';
//    dojo.byId('search-userinfo-groupname').innerHTML = (user != null) ? user.User.UserGroup.Name : '';
//    dojo.byId('search-userinfo-maxproject').innerHTML = (user != null) ? user.User.MaxProject : '';
//    dojo.byId('search-userinfo-maxsubscription').innerHTML = (user != null) ? user.User.MaxSubscription : '';
//    dojo.byId('search-userinfo-maxpatent').innerHTML = (user != null) ? user.User.ProjectMaxPatent : '';
//    dojo.byId('search-userinfo-statmaxpatent').innerHTML = (user != null) ? user.User.StatMaxPatent : '';
//    dojo.byId('search-userinfo-lastlogindate').innerHTML = (user != null) ? user.User.LastLoginDate : '';
//    dojo.byId('search-userinfo-lastloginip').innerHTML = (user != null) ? user.User.LastLoginIP : '';
//}

function calculateOffset(field, attr) 
{
    var offset = 0;
	while(field)
	{
		offset += field[attr];
		field = field.offsetParent;
		
	}
    return offset;
}

function XSLTtrans(xmldata, xslfile)
{
    var xmlDoc;
    var xslDoc;

    // 判断浏览器的类型
    if(document.implementation && document.implementation.createDocument)
    {        
        // 支持Mozilla浏览器
        try
        {
            //xmlDoc = document.implementation.createDocument("", "", null);    
            //xmlDoc.async = false;
            //xmlDoc.load(url);
            var parser = new DOMParser();
            xmlDoc = parser.parseFromString(xmldata, "text/xml");
        }
        catch(e)
        {
            return "XML Document create error";
        }
        try
        {
            xslDoc = document.implementation.createDocument("", "", null);
            xslDoc.async = false;
            xslDoc.load(xslfile);
        }
        catch(e)
        {
            return "XSL Document load error";;
        }
        try
        {
            // 定义XSLTProcessor对象    
            var xsltProcessor = new XSLTProcessor();
            xsltProcessor.importStylesheet(xslDoc);
            var oResultFragment = xsltProcessor.transformToFragment(xmlDoc,document);
            var targetdiv = document.createElement('div');
            // 将解析过的文本输出到页面
            targetdiv.appendChild(oResultFragment);
            return targetdiv.innerHTML;
        }
        catch(e)
        {
             return "XSLT Transformation error";
        }    
    }
    else if(typeof window.ActiveXObject != 'undefined')
    {        
        // 支持IE浏览器
        xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
        xslDoc = new ActiveXObject('Microsoft.XMLDOM'); 
        //xmlDoc = new ActiveXObject('Msxml2.DOMDocument.6.0');
        //xslDoc = new ActiveXObject('Msxml2.DOMDocument.6.0'); 
        xmlDoc.async = false;
        xslDoc.async = false;    
        xmlDoc.loadXML(xmldata);
        xslDoc.load(xslfile);
        var result = xmlDoc.documentElement.transformNode(xslDoc); 
        return result;
    }
    else
    {
        return "Sorry, your browser does not support XSLT trnsformation. Please try IE 5.5+ or Firefox 1.5+";
    }
}

function strContainChinese(src)
{
    if(isNullorEmpty(src))
        return false;
    var tempsrc = src.replace(/[^\x00-\x80]/ig,"");
    return (src != tempsrc);
}

function onCheckboxImgMouseOver(obj)
{
    if(obj.src.indexOf('check.gif') != -1)
        obj.src = 'img/check-active.gif';
}

function onCheckboxImgMouseOut(obj)
{
    if(obj.src.indexOf('check-active.gif') != -1)
        obj.src = 'img/check.gif';
}

function isMSIE()
{
    if(navigator.userAgent.indexOf('MSIE'))
        return true;
    else
        return false;
}

var g_funcArray;
function SetInitConfig()
{
   g_funcArray = new Array();
   for(var i = 0; i < 150; i++)
        g_funcArray[i] = 1; 
g_funcArray[0]=0; 
g_funcArray[1]=0;
g_funcArray[4]=0;
g_funcArray[7]=0;
g_funcArray[6]=1;
g_funcArray[3]=1;
g_funcArray[15]=0;
g_funcArray[19]=0;
g_funcArray[18]=0;
g_funcArray[21]=0;
g_funcArray[30]=0;
g_funcArray[39]=0;
g_funcArray[46]=0;
g_funcArray[49]=0;
g_funcArray[72]=0;
g_funcArray[82]=0;
g_funcArray[101]=0;
g_funcArray[104]=0;
g_funcArray[110]=0;
g_funcArray[123]=0;
g_funcArray[133]=0;
g_funcArray[140]=0;
   SetSystemInitDisplayByFuncArray();
}

function SetSystemInitDisplayByFuncArray()
{
    if(dojo.byId('searchtype-p') != null)
    {
        dojo.byId('searchtype-p').style.display = (g_funcArray[0] == 0 ? 'none' : '');
        dojo.byId('searchtype-p-span').style.display = (g_funcArray[0] == 0 ? 'none' : '');
    }
    if(dojo.byId('searchtype-a') != null)
    {
        dojo.byId('searchtype-a').style.display = (g_funcArray[1] == 0 ? 'none' : '');
        dojo.byId('searchtype-a-span').style.display = (g_funcArray[1] == 0 ? 'none' : '');
    }
    if(dojo.byId('searchtype-e') != null)
    {
        dojo.byId('searchtype-e').style.display = (g_funcArray[2] == 0 ? 'none' : '');
        dojo.byId('searchtype-e-span').style.display = (g_funcArray[2] == 0 ? 'none' : '');
    }
    if(dojo.byId('searchtype-j') != null)
    {
        dojo.byId('searchtype-j').style.display = (g_funcArray[3] == 0 ? 'none' : '');
        dojo.byId('searchtype-j-span').style.display = (g_funcArray[3] == 0 ? 'none' : '');
    }
    if(dojo.byId('searchtype-o') != null)
    {
        dojo.byId('searchtype-o').style.display = (g_funcArray[4] == 0 ? 'none' : '');
        dojo.byId('searchtype-o-span').style.display = (g_funcArray[4] == 0 ? 'none' : '');
    }
    if(dojo.byId('searchtype-c') != null)
    {
        dojo.byId('searchtype-c').style.display = (g_funcArray[5] == 0 ? 'none' : '');
        dojo.byId('searchtype-c-span').style.display = (g_funcArray[5] == 0 ? 'none' : '');
    }
    if(dojo.byId('searchtype-r') != null)
    {
        dojo.byId('searchtype-r').style.display = (g_funcArray[6] == 0 ? 'none' : '');
        dojo.byId('searchtype-r-span').style.display = (g_funcArray[6] == 0 ? 'none' : '');
    }
    if(dojo.byId('searchtype-d') != null)
    {
        dojo.byId('searchtype-d').style.display = (g_funcArray[7] == 0 ? 'none' : '');
        dojo.byId('searchtype-d-span').style.display = (g_funcArray[7] == 0 ? 'none' : '');
    }   
    if(dojo.byId('header-menu-home') != null)
    {
        dojo.byId('header-menu-home').style.display = (g_funcArray[15] == 0 ? 'none' : '');
        dojo.byId('header-menu-sep1').style.display = (g_funcArray[15] == 0 ? 'none' : '');
    }
    if(dojo.byId('header-menu-search') != null)
    {
        dojo.byId('header-menu-search').style.display = (g_funcArray[16] == 0 ? 'none' : '');
        dojo.byId('header-menu-sep2').style.display = (g_funcArray[16] == 0 ? 'none' : '');
    }
    if(dojo.byId('header-menu-class') != null)
    {
        dojo.byId('header-menu-class').style.display = (g_funcArray[17] == 0 ? 'none' : '');
        dojo.byId('header-menu-sep3').style.display = (g_funcArray[17] == 0 ? 'none' : '');
    }
    if(dojo.byId('header-menu-statistic') != null)
    {
        dojo.byId('header-menu-statistic').style.display = (g_funcArray[18] == 0 ? 'none' : '');
        dojo.byId('header-menu-sep4').style.display = (g_funcArray[18] == 0 ? 'none' : '');
    }
    if(dojo.byId('header-menu-analysis') != null)
    {
        dojo.byId('header-menu-analysis').style.display = (g_funcArray[19] == 0 ? 'none' : '');
        dojo.byId('header-menu-sep5').style.display = (g_funcArray[19] == 0 ? 'none' : '');
    }
    if(dojo.byId('header-menu-history') != null)
    {
        dojo.byId('header-menu-history').style.display = (g_funcArray[20] == 0 ? 'none' : '');
        dojo.byId('header-menu-sep6').style.display = (g_funcArray[20] == 0 ? 'none' : '');
    }
    if(dojo.byId('header-menu-project') != null)
    {
        dojo.byId('header-menu-project').style.display = (g_funcArray[21] == 0 ? 'none' : '');
        dojo.byId('header-menu-sep7').style.display = (g_funcArray[21] == 0 ? 'none' : '');
        if(dojo.byId('popupdiv-clipboardpn-project')!=null)
            dojo.byId('popupdiv-clipboardpn-project').style.display = (g_funcArray[21] == 0 ? 'none' : '');
        if(dojo.byId('popupdiv-clipboardfig-project')!=null)
            dojo.byId('popupdiv-clipboardfig-project').style.display = (g_funcArray[21] == 0 ? 'none' : '');
    }
    if(dojo.byId('header-menu-help') != null)
    {
        dojo.byId('header-menu-help').style.display = (g_funcArray[22] == 0 ? 'none' : '');
    }
    
    if(dojo.byId('search-master-import-img') != null)
        dojo.byId('search-master-import-img').style.display = (g_funcArray[39] == 0 ? 'none' : '');
            
    if(dojo.byId('search-master-advancesearch-span') != null)
        dojo.byId('search-master-advancesearch-span').style.display = (g_funcArray[81] == 0 ? 'none' : '');
    if(dojo.byId('classinfo-type-radio-1') != null)
    {
        dojo.byId('classinfo-type-radio-1').style.display = (g_funcArray[84] == 0 ? 'none' : '');
        dojo.byId('classinfo-type-span-1').style.display = (g_funcArray[84] == 0 ? 'none' : '');
    }
    if(dojo.byId('classinfo-type-radio-2') != null)
    {
        dojo.byId('classinfo-type-radio-2').style.display = (g_funcArray[85] == 0 ? 'none' : '');
        dojo.byId('classinfo-type-span-2').style.display = (g_funcArray[85] == 0 ? 'none' : '');
    }
    if(dojo.byId('classinfo-type-radio-3') != null)
    {
        dojo.byId('classinfo-type-radio-3').style.display = (g_funcArray[86] == 0 ? 'none' : '');
        dojo.byId('classinfo-type-span-3').style.display = (g_funcArray[86] == 0 ? 'none' : '');
    }
    if(dojo.byId('classinfo-type-radio-4') != null)
    {
        dojo.byId('classinfo-type-radio-4').style.display = (g_funcArray[87] == 0 ? 'none' : '');
        dojo.byId('classinfo-type-span-4').style.display = (g_funcArray[87] == 0 ? 'none' : '');
    }        
    if(dojo.byId('statistic-tab-td-Research') != null)
    {
        dojo.byId('statistic-tab-td-Research').style.display = (g_funcArray[115] == 0 ? 'none' : '');
        dojo.byId('statistic-tab-td-Research-next').style.display = (g_funcArray[115] == 0 ? 'none' : '');
    }
    if(dojo.byId('statistic-tab-td-Claims') != null)
    {
        dojo.byId('statistic-tab-td-Claims').style.display = (g_funcArray[116] == 0 ? 'none' : '');
        dojo.byId('statistic-tab-td-Claims-next').style.display = (g_funcArray[116] == 0 ? 'none' : '');
    }
    if(dojo.byId('statistic-tab-td-PDF') != null)
    {
        dojo.byId('statistic-tab-td-PDF').style.display = (g_funcArray[117] == 0 ? 'none' : '');
        dojo.byId('statistic-tab-td-PDF-next').style.display = (g_funcArray[117] == 0 ? 'none' : '');
    }
    if(dojo.byId('statistic-tab-td-Comment') != null)
        dojo.byId('statistic-tab-td-Comment').style.display = (g_funcArray[118] == 0 ? 'none' : '');
    if(dojo.byId('search-popupdiv-color-tr') != null)
        dojo.byId('search-popupdiv-color-tr').style.display = (g_funcArray[83] == 0 ? 'none' : '');
    if(dojo.widget!=null)
    {
        var menu = dojo.widget.byId('contextmenu');
        if(menu != null)
        {
            var menuitemname=new Array('nsmenuitem','rsmenuitem','webmenuitem','ptmenuitem','clsmenuitem','cpmenuitem','pastemenuitem');
            for(var i = 130 ; i < 137; i++)
            {
                if(g_funcArray[i] == 0)
                {
	                var menuitem = dojo.widget.byId(menuitemname[i-130]);
	                if(menuitem != null)
	                    menu.removeChild(menuitem);
                }
            }
        }
    }
    if(dojo.byId('search-master-import-img')!=null)
        if(g_funcArray[104] == 1)
            dojo.byId('search-master-import-img').style.display = '';
}

function SetSystemDynamicDisplayByFuncArray(dynamicType, obj)
{
    if(dynamicType == 'QueryFulltext_SEARCH-MASTER' || dynamicType == 'QueryFulltext_SEARCH-SLAVE' || dynamicType == 'QueryFulltext_SEARCH-PATENT')
    {
            
        if(dojo.byId('search-input-topquery-span') != null)
            dojo.byId('search-input-topquery-span').style.display = (g_funcArray[38] == 0 ? 'none' : '');
        if(dojo.byId('search-input-topquery') != null)
            dojo.byId('search-input-topquery').style.display = (g_funcArray[38] == 0 ? 'none' : '');
        if(dojo.byId('search-input-topquery-button') != null)
            dojo.byId('search-input-topquery-button').style.display = (g_funcArray[38] == 0 ? 'none' : '');

        if(dynamicType == 'QueryFulltext_SEARCH-MASTER')
        {
            if(dojo.byId('queryfulltext_addtoproject_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_addtoproject_SEARCH-MASTER').style.display = (g_funcArray[30] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_querystat_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_querystat_SEARCH-MASTER').style.display = (g_funcArray[31] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_statdrawing_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_statdrawing_SEARCH-MASTER').style.display = (g_funcArray[32] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_clusterpatent_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_clusterpatent_SEARCH-MASTER').style.display = (g_funcArray[33] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_rotatesearch_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_rotatesearch_SEARCH-MASTER').style.display = (g_funcArray[34] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_exportpatent_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_exportpatent_SEARCH-MASTER').style.display = (g_funcArray[35] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_addtoclipboard_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_addtoclipboard_SEARCH-MASTER').style.display = (g_funcArray[36] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_mail_SEARCH-MASTER') != null)
                dojo.byId('queryfulltext_mail_SEARCH-MASTER').style.display = (g_funcArray[37] == 0 ? 'none' : '');
        }
        else if(dynamicType == 'QueryFulltext_SEARCH-SLAVE')
        {
            if(dojo.byId('queryfulltext_addtoproject_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_addtoproject_SEARCH-SLAVE').style.display = (g_funcArray[30] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_querystat_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_querystat_SEARCH-SLAVE').style.display = (g_funcArray[31] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_statdrawing_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_statdrawing_SEARCH-SLAVE').style.display = (g_funcArray[32] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_clusterpatent_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_clusterpatent_SEARCH-SLAVE').style.display = (g_funcArray[33] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_rotatesearch_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_rotatesearch_SEARCH-SLAVE').style.display = (g_funcArray[34] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_exportpatent_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_exportpatent_SEARCH-SLAVE').style.display = (g_funcArray[35] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_addtoclipboard_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_addtoclipboard_SEARCH-SLAVE').style.display = (g_funcArray[36] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_mail_SEARCH-SLAVE') != null)
                dojo.byId('queryfulltext_mail_SEARCH-SLAVE').style.display = (g_funcArray[37] == 0 ? 'none' : '');
        }
        else if(dynamicType == 'QueryFulltext_SEARCH-PATENT')
        {
            if(dojo.byId('queryfulltext_addtoproject_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_addtoproject_SEARCH-PATENT').style.display = (g_funcArray[30] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_querystat_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_querystat_SEARCH-PATENT').style.display = (g_funcArray[31] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_statdrawing_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_statdrawing_SEARCH-PATENT').style.display = (g_funcArray[32] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_clusterpatent_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_clusterpatent_SEARCH-PATENT').style.display = (g_funcArray[33] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_rotatesearch_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_rotatesearch_SEARCH-PATENT').style.display = (g_funcArray[34] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_exportpatent_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_exportpatent_SEARCH-PATENT').style.display = (g_funcArray[35] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_addtoclipboard_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_addtoclipboard_SEARCH-PATENT').style.display = (g_funcArray[36] == 0 ? 'none' : '');
            if(dojo.byId('queryfulltext_mail_SEARCH-PATENT') != null)
                dojo.byId('queryfulltext_mail_SEARCH-PATENT').style.display = (g_funcArray[37] == 0 ? 'none' : '');
        }
    }
    else if(dynamicType == 'QueryTab')
    {
        if(g_funcArray[45] == 0)
            obj.getElementsByTagName('img')[0].style.display = 'none';
        if(g_funcArray[46] == 0)
            obj.getElementsByTagName('img')[1].style.display = 'none';
        if(g_funcArray[47] == 0)
            obj.getElementsByTagName('img')[2].style.display = 'none';
        if(g_funcArray[48] == 0)
            obj.getElementsByTagName('img')[3].style.display = 'none';
        if(g_funcArray[49] == 0)
            obj.getElementsByTagName('img')[4].style.display = 'none';
        if(g_funcArray[50] == 0)
            obj.getElementsByTagName('img')[5].style.display = 'none';
    }
    else if(dynamicType == 'QueryRelated_SEARCH-MASTER')
    {
        if(dojo.byId('queryrelated_searchmaster_prev') != null)
            dojo.byId('queryrelated_searchmaster_prev').style.display = (g_funcArray[71] == 0 ? 'none' : '');
        if(dojo.byId('queryrelated_searchmaster_next') != null)
            dojo.byId('queryrelated_searchmaster_next').style.display = (g_funcArray[71] == 0 ? 'none' : '');
        if(dojo.byId('queryrelated_searchmaster_cluster') != null)
            dojo.byId('queryrelated_searchmaster_cluster').style.display = (g_funcArray[70] == 0 ? 'none' : '');
        if(dojo.byId('queryrelated_searchmaster_anlist') != null)
            dojo.byId('queryrelated_searchmaster_anlist').style.display = (g_funcArray[72] == 0 ? 'none' : '');
    }
    else if(dynamicType == 'QueryRelated_SEARCH-SLAVE')
    {
        if(dojo.byId('queryrelated_searchslave_prev') != null)
            dojo.byId('queryrelated_searchslave_prev').style.display = (g_funcArray[71] == 0 ? 'none' : '');
        if(dojo.byId('queryrelated_searchslave_next') != null)
            dojo.byId('queryrelated_searchslave_next').style.display = (g_funcArray[71] == 0 ? 'none' : '');
    }
    else if(dynamicType == 'UserLogin')
    {
        if(dojo.byId('search-master-searchfilter-span') != null)
        {
            dojo.byId('search-master-searchfilter-span').style.display = (g_funcArray[80] == 0 ? 'none' : '');
            if(g_funcArray[80] == 1)
                loadPreference();                    
        }
        if(dojo.byId('project-quick-projectlist') != null)
        {
            dojo.byId('project-quick-projectlist').style.display = (g_funcArray[82] == 0 ? 'none' : '');
            if(g_funcArray[82] == 1)
            {
                loadQuickProject();
                initProjectIdColorPair();
            }
        }
        if(dojo.byId('bookmark-quick-bookmarklist') != null)
        {
            dojo.byId('bookmark-quick-bookmarklist').style.display = (g_funcArray[60] == 0 ? 'none' : '');
            if(g_funcArray[60] == 1)
                loadBookmarkCombobox('search-bookmark-select', null, 2);
        }
    }
    else if(dynamicType == 'Class')
    {
        if(g_funcArray[87]==1)
            dojo.byId('classinfo-type-radio-4').checked = true;
        else if(g_funcArray[84] == 1)
            dojo.byId('classinfo-type-radio-1').checked = true;
        else if(g_funcArray[85] == 1)
            dojo.byId('classinfo-type-radio-2').checked = true;
        else if(g_funcArray[86] == 1)
            dojo.byId('classinfo-type-radio-3').checked = true;
    }
    else if(dynamicType == 'QueryTabTab')
    {
        var sdvalue = '';
        if(g_funcArray[90] == 1)
            sdvalue += 'b';
        if(g_funcArray[91] == 1)
            sdvalue += 'c';
        if(g_funcArray[92] == 1)
            sdvalue += 'm';
        if(g_funcArray[93] == 1)
            sdvalue += 'r';
        if(g_funcArray[94] == 1)
            sdvalue += 'u';
        if(g_funcArray[95] == 1)
            sdvalue += 'p';
        if(g_funcArray[96] == 1)
            sdvalue += 'f';
        if(g_funcArray[97] == 1)
            sdvalue += 'k';
        if(g_funcArray[98] == 1)
            sdvalue += 'x';
        if(g_funcArray[99] == 1)
            sdvalue += '1';
        if(g_funcArray[100] == 1)
            sdvalue += '2';
        if(g_funcArray[102] == 1)
            sdvalue += '3';
        if(g_funcArray[103] == 1)
            sdvalue += '4';
        if(g_funcArray[101] == 1)
            sdvalue += 'a';
        return sdvalue;
    }
    else if(dynamicType == 'ShowPatent')
    {
        if(g_funcArray[105] == 0)
            dojo.byId('showpatent-uspto-img').style.display = 'none';
        if(g_funcArray[106] == 0)
            dojo.byId('showpatent-printout-img').style.display = 'none';    
        if(g_funcArray[107] == 0)
            dojo.byId('showpatent-showclaims-img').style.display = 'none';
        if(g_funcArray[108] == 0)
            dojo.byId('showpatent-dopdf-img').style.display = 'none';
        if(g_funcArray[109] == 0)
            dojo.byId('showpatent-expandallcomment-img').style.display = 'none';
        if(g_funcArray[110] == 0)
            dojo.byId('showpatent-addtoproject-img').style.display = 'none';
        if(g_funcArray[120] == 0)
        {
		    var menu = dojo.widget.byId('contextmenu');
	        var wrsmenuitem = dojo.widget.byId('wrsmenuitem');
	        if(wrsmenuitem != null)
	            menu.removeChild(wrsmenuitem);
        }
        if(g_funcArray[121] == 0)
        {
		    var menu = dojo.widget.byId('contextmenu');
	        var addcommentmenuitem = dojo.widget.byId('addcommentmenuitem');
	        if(addcommentmenuitem != null)
	            menu.removeChild(addcommentmenuitem);
        }
        if(g_funcArray[122] == 0)
        {
		    var menu = dojo.widget.byId('contextmenu');
	        var addnotemenuitem = dojo.widget.byId('addnotemenuitem');
	        if(addnotemenuitem != null)
	            menu.removeChild(addnotemenuitem);
        }
        if(g_funcArray[123] == 0)
        {
		    var menu = dojo.widget.byId('contextmenu');
	        var ptmenuitem = dojo.widget.byId('ptmenuitem');
	        if(ptmenuitem != null)
	            menu.removeChild(ptmenuitem);
        }
    }
    else if(dynamicType == 'ProjectGet')
    {
        if(dojo.byId('projectupdate-newproject-color') != null)
            dojo.byId('projectupdate-newproject-color').style.display = (g_funcArray[83] == 0 ? 'none' : 'inline');
    }
}

//add by seedy
function prepareLogin(callbackFunc, callbackFuncArgsArray)
{
    var height = document.body.clientHeight;
    var width = document.body.clientWidth;
    var logindivwidth = 620;
    var logindivheight = 390;
    var left = (width - logindivwidth) / 2;
    var top = (height - logindivheight) / 2;
    if(left < 0)
        left = 0;
    if(top < 0)
        top = 0;
    dojo.byId('login-form-div').style.left = left + 'px';
    dojo.byId('login-form-div').style.top = top + 'px';
    dojo.byId('login-form-div-table1').style.display = '';
    dojo.byId('login-form-div-table2').style.display = 'none';
    dojo.byId('shadowDiv').style.display = '';
    dojo.byId('login-form-div').style.display = '';
    dojo.byId('login-form-div').style.visibility = 'visible';
    dojo.byId('shadowDiv').style.visibility = 'visible';
    
    funcBeforeLogin=callbackFunc;
    varsBeforeLoginArray = callbackFuncArgsArray;
    
}



function getUserLoginState2(callbackFunc,callbackFuncArgsArray)
{

    var divf = dojo.byId('login-form-div');
    if(divf == null){
        callbackFunc(callbackFuncArgsArray);
        return;
    }
    divf.style.display = 'none';
    var dive = dojo.byId('login-result-div');
    dive.style.display = '';
    var url = c_sUserGet + '&it=1&random=' + Math.random();
    var request = new dojo.io.Request(url, 'text/json', null, false);
	dojo.lang.mixin(request, {
	    encoding: g_encoding,
		load: function(type, evaldObj){
			var ret = eval(evaldObj);
			if(ret.Error != null) // error occurs
			{
			
			    dive.innerHTML = g_loginSpan;
			    setPageInitState(false);
			    alert(ret.Error);
			    prepareLogin(callbackFunc, callbackFuncArgsArray);
			}
			else if(ret.User != null) 
			{
			
			    divf.style.display = 'none';
			    dive.style.display = '';
			    
			    dive.innerHTML = '<b><span class="querylist-a" onmouseout="onQueryTableMouseOut(this, &#39;a&#39;);" onmouseover="onQueryTableMouseOver(this, &#39;a&#39;);" onclick="prepareUpdateUserInfo()">' + ret.User.Name + '</span></b>&nbsp;<span class="header-menu-mouseover" onclick="doLogOff();">' + c_sSignOff + '</span>' + '&nbsp;' + g_versionSpan;
			     
			    if(callbackFunc.name != 'doExportSearchResults1')
			        setPageInitState(true);
			     
			    callbackFunc(callbackFuncArgsArray);
			}
			else
			{
			    dive.innerHTML = g_loginSpan;
			    if(!doLoginFormCookie())
			    {
			        prepareLogin(callbackFunc,callbackFuncArgsArray);
			    }
			}	    
		},
		error: function(type, error) { 
		    dive.innerHTML = g_loginSpan;
		    setPageInitState(false);
		    alert(error.message);
		    prepareLogin(callbackFunc,callbackFuncsArray);
		}
	});         
    dojo.io.bind (request);
}


function pScrollIntoView(scroll,obj)
{
    if(scroll!=null && scroll.scrollTop!=null)
    {
        scroll.scrollTop = obj.offsetTop;
    }
}
