﻿function homejs()
{
    var _this = this;
    
    this.bindfooter = function()
    {
		$("#BottomButton").click(function()
		{
			$("#SearchWord").val($("#FooterSearchWord").val());
            $("#frmMain").submit();
		});
    }
    
    this.focus = function()
    {
        $("#SearchWord")[0].focus();
    }
    
    this.bindanalytics = function()
    {
        $("#analyzer").click(function()
		{
			$('#frmMain').attr("action", "/analytics/result");
			$("#frmMain").submit();
		});
    }
    
    this.bindtoolbar = function()
    {
        $(".dview").click(function()
        {
            $("#View").val($(this).attr("model"));
            $("#frmMain").submit();
        });
        $("#dSort").change(function()
        {
            $("#Sort").val($("#dSort").val());
            $("#frmMain").submit();
        });
        $("#dValid").change(function()
        {
            $("#Valid").val($("#dValid").val());
            $("#frmMain").submit();
        });
        $("#ExportToXls").click(function()
        {
            $('#frmMain').attr("action", "/home/ExportToXls");
            $("#frmMain").submit();
            $('#frmMain').attr("action", "/Home/Result");
        });
    }
    
    this.bindnotfound = function()
    {
        $("#frmMain").submit(function()
        {
            if ( $("#View").val() == "3" || $("#View").val() == "4")
            {
                $("#View").val("0");
            }
        });
        $("#switchtonormal").click(function()
        {
            $("#frmMain").submit();
        });
    }
    
    this.bindfilter = function()
    {
        options = '<option value=""></option><option value="[2007 TO 2009]">最近三年</option><option value="[2005 TO 2009]">最近五年</option><option value="[2000 TO 2009]">最近十年</option>';
		for( i = 2009; i > 2000; i--)
		{
			options+='<option value="'+i+'">'+i+'</option>';
		}
		$('#TParameter_SQRQ').append(options);
		
        $("#btnFilter").click(function()
        {
            var mc = $("#TParameter_MC").val();
            var sqr = $("#TParameter_SQR").val();
            var dz = $("#TParameter_DZ").val();
            var flh = $("#TParameter_FLH").val();
            var sqrq = $("#TParameter_SQRQ").val();
            var result = "";
            if ( mc != "" )
            {
                result = result + "MC:( "+mc+" )";
            }
            if ( sqr != "" )
            {
                result = result + "SQR:( "+sqr+" )";
            }
            if ( dz != "" )
            {
                result = result + "DZ:( "+dz+" )";
            }
            if ( flh != "" )
            {
                result = result + "FLH:( "+flh+" )";
            }
            if ( sqrq != null && sqrq != "" )
            {
                result = result + "SQRQ:( "+sqrq+" )";
            }
            if ( result != "" )
            {
                $("#Filter").val(result);
                $("#frmMain").submit();
            }
        });
    }
    
    this.bindtooltip = function()
    {
        var form = "<div style='display: none;'class='popupContainer' id='detailedSummaryBG'></div>"+
                   "<div style='display: none;z-index: 201;' id='detailedSummaryBox' class='popup'>"+
                   "<table width='455' cellspacing='0' cellpadding='0' border='0' id='tlpInnerBox'>"+
                   "<tbody>"+
                   "<tr>"+
                        "<td width='435' style='padding-bottom: 5px;'>"+
                            "<div style='overflow: hidden; width: 430px;'>"+
                               "专利预览 - <span id='lblTooltip'></span>"+
                            "</div>"+
                        "</td>"+
                        "<td align='right' style='padding-bottom: 5px;'>"+
                            "<a id='btnCloseTootip' href='javascript:void(0);'>"+
                                "<img border='0' id='imgTooltip' src='/content/images/patent/close-normal.gif' alt='关闭' />"+
                            "</a>"+
                        "</td>"+
                    "</tr>"+
                    "<tr>"+
                        "<td style='border-top: 1px solid rgb(170, 168, 168); padding-top: 5px;' colspan='2'>"+
                            "<iframe src='#' id='ifTootip' frameborder='0' width='100%' height='220px' ></iframe>"+
                        "</td>"+
                    "</tr>"+
                    "</tbody>"+
                    "</table>"+
                    "</div>";
        $("#frmMain").append(form);
		$("#btnCloseTootip").click(function(e)
		{
		    _this.TooltipVisible(false);
		});
		$("#imgTooltip").mouseout(function(e)
		{
		    $("#imgTooltip").attr("src","/content/images/patent/close-normal.gif");
		});
		$("#imgTooltip").mouseover(function(e)
		{
		    $("#imgTooltip").attr("src","/content/images/patent/close-float.gif");
		});
		$(".tooltiplink").click(function(e)
		{
		    $("#ifTootip").attr("src",$(this).attr("Link"));
		    $("#lblTooltip").text($(this).attr("SQH"));
		    _this.TooltipPosition($(this).offset().top, e.clientY);
		    _this.TooltipVisible(true);
		});
    }
    
    this.bindcomitem = function()
    {
        var form = getCookie("com_item");
		$("#com_item").append(form);
		$(".add_com_item").click(function(e)
		{
		    var sqh = $(this).attr("SQH");
		    var mc = $(this).attr("MC");
		    _this.addcomitem(sqh,mc);
		});
		$("#com_item a").click(function(e)
		{
		    $(this).parent().remove();
		    setCookie("com_item", $("#com_item").html());
		});
		$("#btnCompare").click(function(e)
		{
		    if ($("#com_item").children().length <= 0)
            {
                alert("请选择专利参加比较");
                return;
            }
		    var sqhs = "";
		    $("#com_item li a").each(function(i)
            {
                sqhs = sqhs + "," + $(this).attr("SQH");
            });
            sqhs = sqhs.substring(1,sqhs.length);
            window.open("/Home/Compare/"+sqhs);
		});
    }
    
    this.addcomitem = function(sqh, mc)
    {
        var alreadchoice = false;
        $("#com_item li a").each(function(i)
        {
            if($(this).attr("SQH") == sqh)
            {
                alreadchoice = true;
            }
        });
        if ( alreadchoice == true )
        {
            alert(sqh + "-" + mc +"已选择");
            return;
        }
        if ($("#com_item").children().length >= 10)
        {
            alert("最多只能有10个专利参加比较");
            return;
        }
        if ( mc.length > 10 )
        {
            mc = mc.substring(0,10)+"..";
        }
        var form = "<li><a href='javascript:void(0);' SQH='"+sqh+"'>"+sqh + "-" + mc+"</a></li>";
        $("#com_item").append(form);
        $("#com_item a").click(function(e)
		{
		    $(this).parent().remove();
		});
		setCookie("com_item", $("#com_item").html());
    }
    
    this.TooltipVisible = function(flag)
    {
        if ( flag == true )
        {
             $("#detailedSummaryBG").css("display","block");
             $("#detailedSummaryBox").css("display","block");
        }
        else
        {
            $("#detailedSummaryBG").css("display","none");
            $("#detailedSummaryBox").css("display","none");
        }
    }
    
    this.TooltipPosition = function(top, cy)
    {
        var itop = 0;
        if (cy < 300 )
        {
            $("#detailedSummaryBG").attr("class","popupContainerDown");
            $("#tlpInnerBox").css("margin","63px 0pt 0pt 30px");
            itop = top;
        }
        else
        {
            $("#detailedSummaryBG").attr("class","popupContainer");
            $("#tlpInnerBox").css("margin","18px 0pt 0pt 30px");
            itop = top-334;
        }
        $("#detailedSummaryBG").css("left",35);
        $("#detailedSummaryBox").css("left",35);
        
        $("#detailedSummaryBG").css("top",itop);
        $("#detailedSummaryBox").css("top",itop);
    }
    
    this.bindcolumnselector = function()
    {
        $("#SetColumns").click(function(e)
	    {
		    e.preventDefault();
		    $('#ColumnSelector').modal();
	    });
	    $("#ColumnSelector #Close").click(function(e)
	    {
		    e.preventDefault();
		    $.modal.close();
	    });
        $("#ColumnSelector #alltoright").click(function()
	    {
		    moveAllOptions($('#ColumnSelector #UnSelectedColumn'), $('#ColumnSelector #SelectedColumn'));
	    });
	    $("#ColumnSelector #toright").click(function()
	    {
		    moveOptions($('#ColumnSelector #UnSelectedColumn'), $('#ColumnSelector #SelectedColumn'));
	    });
	    $("#ColumnSelector #toleft").click(function()
	    {
		    moveOptions($('#ColumnSelector #SelectedColumn'), $('#ColumnSelector #UnSelectedColumn'));
	    });
	    $("#ColumnSelector #alltoleft").click(function()
	    {
		    moveAllOptions($('#ColumnSelector #SelectedColumn'), $('#ColumnSelector #UnSelectedColumn'));
	    });
	    $("#ColumnSelector #OK").click(function()
	    {
		    var columns = "";
            for( var i=0; i<$('#SelectedColumn').SelectSize(); i++)
            {
                columns = columns + $('#SelectedColumn').get(0).options[i].value+",";
            }
            $("#Columns").val(columns);
            $("#frmMain").submit();
	    });
    }
    
    this.bindfamilychart = function()
    {
        this.bufferimage();
        $(".block").hover(function(){
        $(this).attr("class","blockhover");
        },
        function(){
        $(this).attr("class","block");
        }); 
    }
    
    this.bufferimage = function()
    {
        imageObj = new Image();
	    images = new Array();
	    images[0] = "/content/images/patent/greenblock.gif";
	    for(i=0; i<1; i++)
        {
          imageObj.src=images[i];
        }
    }
    
    this.alertoverflow = function()
    {
        alert('本专利族专利文献超过60条，对于普通用户将不提供发展图等多种图形，只提供表格形式。如有特殊需要，请联系客服。');
    }
    
    this.InitializeDesignView = function()
    {
        var b = true;
		$(".ImgPatentBlock").each(function()
		{
			if ( b )
			{
				$(this).css("background-color", "#ffffff");
				b = false;
			}
			else
			{
				b = true;
			}
		});
		
		var contentb = "<div class='ImgContent'><a href='";
		var contente = "' target='_blank'></a></div>";
		$(".ImgDiv img").each(function()
		{
			var image = $(this);
			if(image.width()>120)
			{
				image.width(120);
				image.height(120/image.width()*image.height());
			}
			if(image.height()>120)
			{
				image.height(120);
				image.width(120/image.height()*image.width());
			}
			$(this).css("margin-top", (120-image.height())/2);
			$(this).wrap(contentb+$(this).attr("link")+contente);
		});
    }
    
    this.bindrefine = function()
    {
    	$("#btnRefine").click(function()
        {
            var cb = "";  
			$("input[@name='cbRefine']").each(function()
			{
				if($(this).attr("checked")==true)
				{
					cb += $(this).attr("value") + " OR ";  
				}
			});
			if (cb != "")
			{
				cb = cb.substring(0, cb.length-4);
			}
			else
			{
				alert("请选择二次查询项！");
				return;
			}
			var sw = $("#SearchWord").val();
			sw = sw + " ( "+cb+" )";
			$("#SearchWord").val(sw);
            $("#frmMain").submit();
        });
        
        $("#RefineControl a").click(function()
        {
            $('#frmMain').attr("action", "/analytics/result");
			$("#frmMain").submit();
        });
    }
    
    this.CloseRefine = function()
    {
        $("#RefineContent").hide("fast"); 
        $("#RefineControl").hide();
        $("#HideRefine").hide();
    }
    
    this.GetCheckboxValue = function(controlid)
    {
    	for(var i=0;i<6;i++)
    	{
    		if ($("#"+controlid+i).attr("checked") == true)
        	{
        		return $("#"+controlid+i).val();
        	}
    	}
        return "";
    }
    
    this.GetRefine = function(controlid, category)
    {
    	$("#RefineContent").show("fast");
    	$("#RefineControl").show();
    	$("#RefineWait").show();
    	$("#HideRefine").show();
        //$.ajaxSetup({ cache: false });
        $("#Refine #Toolbar A").each(function()
        {
        	$(this).css("font-weight","normal");
        }); 
        $("#"+controlid).css("font-weight","bold");
        var leixing = this.GetCheckboxValue("LeiXing");
        var data = {Category:category,SearchWord:$("#SearchWord").val(),Valid:$("#Valid").val(),LeiXing:leixing};
            $.getJSON(
            "/Analytics/Refine",
            data,
            function(data)
            {
            	var html = "<ul>";
            	if ( category == "SQRQY" )
            	{
            	    html = html +"<li><input name='cbRefine' type='checkbox' value='SQRQ:([2007 TO 2009])'><a href='#'>最近三年</a></input></li>";
            	    html = html +"<li><input name='cbRefine' type='checkbox' value='SQRQ:([2005 TO 2009])'><a href='#'>最近五年</a></input></li>";
            	    html = html +"<li><input name='cbRefine' type='checkbox' value='SQRQ:([2000 TO 2009])'><a href='#'>最近十年</a></input></li>";
            	}
            	for(var i=0;i<data.length;i++)
            	{
            		html = html +"<li><input name='cbRefine' type='checkbox' value='"+data[i].Link+"'><a href='#' title='"+data[i].Desc+"("+data[i].Value+")'>"+data[i].Name+"("+data[i].Value+")</a></input></li>";
            	}
            	html = html +"<li><span class=''>（Top10000）</span></li></ul>";
            	if ( data.length == 0 )
            	{
            	    html = "<b>无结果</b>";
            	}
                $("#RefineContent").html(html);
                $("#RefineContent a").click(function()
        		{
        			var sw = $("#SearchWord").val();
					sw = sw + " " + $(this).prev().attr("value");
					$("#SearchWord").val(sw);
					$("#frmMain").submit();
        		});
                $("#RefineWait").hide(); 
            });
    }
    
    this.GetLastYear = function(data, year)
    {
        
        var base = 2009;
        var result = 0;
        for(var i=0;i<data.length;i++)
    	{
    	    for(var j=0;j<year;j++)
    	    {
    	        //if( ((base-j)+"年")==data[i].Name )
    	        {
    	            result += data[i].Value;
    	        }
    	    }
    	}
    	alert(result);
    	return result;
    }
}

function download( link )
{
    window.open(link, '', 'height=190, width=420, top=200,left=300, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no');
}

function sipolink( link )
{
    window.open(link, '', 'height=220, width=420, top=200,left=300, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no');
}

function openwindow( url )
{
    window.open(url);
}

/* 选择列 */
function moveOptions(from, to)
{
    if ( from.getSelectedIndex() >= 0 )
    {
        var si = from.getSelectedIndex();
        to.addOption(from.getSelectedText(), from.getSelectedValue());
        from.removeSelected();
        from.setSelectedIndex(si);
    }
}

function moveAllOptions(from, to)
{
    for( var i=0; i<from.SelectSize(); i++)
    {
        to.addOption(from.get(0).options[i].text, from.get(0).options[i].value);
    }
    from.clearAll();
}
      
function Messagebox(url)
{
    window.open (url, 'patentWindow', 'height=400, width=600, top=100,left=100, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no');
}

function CloseMessagebox() 
{
    settimeout("self.close()",1000) //毫秒
} 

/* */
function insertText( textbox, text ) 
{         
    if(!cursPos) TraceCursorPosition(textbox); // 获取光标位置       
    textbox.value = textbox.value.slice(0, cursPos.start) +
        text + textbox.value.slice(cursPos.end)
}  

function TraceCursorPosition(obj)
{       
    //debugger;
    cursPos = $CursorPosition(obj);
}

function $CursorPosition(textBox){       
    var start = 0, end = 0;
    //如果是Firefox(1.5)的话，方法很简单
    if(typeof(textBox.selectionStart) == "number"){
        start = textBox.selectionStart;
        end = textBox.selectionEnd;
    }
    //下面是IE(6.0)的方法，麻烦得很，还要计算上'\n'
    else if(document.selection) {
        var range = document.selection.createRange();
        if(range.parentElement().id == textBox.id) {
            // create a selection of the whole textarea
            var range_all = document.body.createTextRange();
            range_all.moveToElementText(textBox);
            
            for (start=0; range_all.compareEndPoints("StartToStart", range) < 0; start++)
                range_all.moveStart('character', 1);
            
            for (var i = 0; i <= start; i ++) {
                if (textBox.value.charAt(i) == '\n')
                    start++;
            }
            
            var range_all = document.body.createTextRange();
            range_all.moveToElementText(textBox);
            
            for (end = 0; range_all.compareEndPoints('StartToEnd', range) < 0; end ++) {
                range_all.moveStart('character', 1);
            }
            
            for (var i = 0; i <= end; i ++) {
                if (textBox.value.charAt(i) == '\n')
                    end ++;
            }
        }
    }
    return {"start": start, "end": end, "item": [start, end]};
}