//	var passit_src = "192.168.1.100:8080/passit";
	//var passit_src = "localhost:8080/passit";
	var is_close_passit=false;
	var passit_src = "www.passit.cn";
	windowBindOnloadEvent_widget();
   function windowBindOnloadEvent_widget(){
   	document.writeln("<script type=\"text/javascript\" src=\"http://" + passit_src + "/js/passit_object.js\" charset=\"UTF-8\"></script>");
   	document.writeln("<link href=\"http://"+passit_src+"/css/passit_default.css\" rel=\"stylesheet\" type=\"text/css\"/>");
	if (document.addEventListener) {
   		document.addEventListener("DOMContentLoaded", function(){
   			document.removeEventListener("DOMContentLoaded", arguments.callee, false);
   		}, false)
   	}
   	else if (document.attachEvent) {
   			document.attachEvent("onreadystatechange", function(){
   				if (document.readyState === "complete") {
   					document.detachEvent("onreadystatechange", arguments.callee);		
   				}
   			});
			if (document.documentElement.doScroll && window == window.top)(function() {
                    try {
                        document.documentElement.doScroll("left");
                    } catch(error) {
                        setTimeout(arguments.callee, 0);
                        return;
                    }
                    passit_onload_widget();
            })();
   		}
   	if (window.addEventListener) {
   		window.addEventListener("load", passit_onload_widget, false);
   	}
   	else 
   		if (window.attachEvent) {
   			window.attachEvent("onload", passit_onload_widget, false);
   		}
   }
var is_first_load_passit_widget_js=true;
var passit_bookmark_div_count;
function passit_onload_widget() {
    var passit_service;
	
    if (typeof(bookmark_service) != "undefined") {
        passit_service = bookmark_service;
    }

    var passit_isIE = true;
	var passit_isIE6 = false;
    var ua = navigator.userAgent.toLowerCase();
	
    if (ua.indexOf("firefox") == -1) {
        passit_isIE = true;
    } else {
        passit_isIE = false;
    }
	if(ua.indexOf("msie 6.0")!=-1){
		passit_isIE6=true;
	}
    var mouse_event = "";
    var passit_type1 = "";
    var passit_div1 = null;
    var passit_iframe1 = null;
    var passit_closeButton1 = null;
    var piimg = null;
    var passit_simple = 1;
    var container_color = "";
    //container边框的颜色;
    var title_bgColor = "";
    //标题的背景颜色;
    var pub;
    var scripts = document.getElementsByTagName("script");
    for (var i = 0; i < scripts.length; i++) {
        var url = scripts[i].src;
        if (url.indexOf("?") != -1 &&( url.indexOf("passit_widget.js") != -1||url.indexOf("passit-widget.js") != -1)) {
            var args = url.split("?")[1];
            pub = passit_getQueryString1(args, "pub");
            passit_simple = passit_getQueryString1(args, "simple");
            container_color = passit_getQueryString1(args, 'container_color');
            title_bgColor = passit_getQueryString1(args, 'title_bgColor');
        }
    }
	var dist_arr = new Array();
    var bookmark_service_arr = new Array();
	if(is_first_load_passit_widget_js)
	initWidgetDivArray();
	else
	return;
	function initWidgetDivArray(){
		is_first_load_passit_widget_js=false;
		 if (passit_service != null) {
		if (passit_service.indexOf(",") != -1) {
			bookmark_service_arr = passit_service.split(',');
		}
		else {
			bookmark_service_arr[0] = passit_service;
		}
		if (bookmark_service_arr != null && bookmark_service_arr.length > 0) {
			var count = 0;
			for (var i = 0; i < bookmark_service_arr.length; i++) {
				for (var j = 0; j < original_arr.length; j++) {
					if (bookmark_service_arr[i] != null && original_arr[j].name == bookmark_service_arr[i]) {
						dist_arr.push(original_arr[j]);
						break;
					}
				}
			}
		}
	}
	}
    function passit_getQueryString1(value, name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
        var r = value.match(reg);
        if (r != null)
        return decodeURI(r[2]);
        return null;

    }
    if (pub == 'undefined' || pub == null) {
        pub = 0;

    }
    if (passit_simple == 'undefined' || passit_simple == null) {
        passit_simple = 0;

    }
    var passit_object = document.getElementsByName("passit_widget");
	
    for (var i = 0; i < passit_object.length; i++) {
		passit_object[i].className="passit_widget";
        AttachEvent(passit_object[i], "click", passit_onClickEvent, passit_object[i]);
        getPosObject(passit_object[i]);
		passit_object[i].onclick=function(){
			return false;
		};

    };

    //* begin

    function getPosObject(obj) {
        if (obj.addEventListener) {
            //FF
            obj.addEventListener("mouseover", 
            function() {
                passit_default_creDiv(obj);
				is_close_passit=false;
            },
            false);
            obj.addEventListener("mouseout", passit_defHide, false);

        } else {
            if (obj.attachEvent) {
                //IE
                obj.attachEvent("onmouseover", 
                function() {
                    passit_default_creDiv(obj);
					is_close_passit=false;
                });
                obj.attachEvent("onmouseout", passit_defHide);
            }
        }
    };
    function passit_defHide() {
		setTimeout(function(){
			var obj=document.getElementById("passit_piwrapper");
			if(obj!=null&&obj.style.display=="block"){
				is_close_passit=true;
			}
		},100);
        var obj = document.getElementById("bookmark_page_default");
        var obj_val =document.getElementById("passit_def_val");
		if(obj_val!=null){
			obj_val.value=0;
		}
        window.setTimeout(function() {
            if (obj != null && obj_val != null && obj_val.value == 0) {
                obj.style.display = "none";
            }
        },
        passit_isIE ? 500: 1000);
    }

	
    function passit_default_creDiv(obj_aNode) {
		var obj_pos;
        var obj_ifr = document.getElementById("passit_piwrapper");

        if (obj_ifr != null && obj_ifr.style.display == "block") {
            return;
        }
        var obj_def = document.getElementById("bookmark_page_default");
        if (obj_def == null) {
            passit_bookmark_div_count=createDefaultDiv();
            obj_def = document.getElementById("bookmark_page_default");
        }

        document.getElementById("passit_def_val").value = 1;
		
        if (obj_def.style.display == "none") {
            if (obj_aNode.children[0] != null) {
                obj_pos = getAbsoluteLocation(obj_aNode.children[0]);
            } else {
                obj_pos = getAbsoluteLocation(obj_aNode);
            }
			var div_height = 270;
            var div_width=230;
            var diffY = document.documentElement.scrollTop || document.body.scrollTop || 0;
            var diffX = document.documentElement.scrollLeft || document.body.scrollLeft || 0;
           	var clientY;var clientX;var scrollBarWidth=15;
			if(passit_isIE){
				clientY=document.documentElement.offsetHeight || document.body.offsetHeight || 0;
				clientX=document.documentElement.offsetWidth || document.body.offsetWidth || 0;
			}else{
				clientY=window.innerHeight;
				clientX=window.innerWidth;
			}
			var obj_width=obj_pos.offsetWidth;
			if(!(obj_width!=null&&obj_width>0)){
				obj_width=0;
			}
			if ((obj_pos.x-diffX+div_width+scrollBarWidth) >= clientX) {
			 	obj_def.style.left = (obj_pos.x-div_width+obj_width+ "px");//(obj_pos.x-div_width+parseInt(passit_size)-5)
			}else{
				
			 	obj_def.style.left = (obj_pos.x) + "px";
			}
			var num=0;
			if (passit_bookmark_div_count <= 16) {
				num=passit_bookmark_div_count%2;
				num = Math.floor(passit_bookmark_div_count/2)+num;
				div_height = ((num * 26)+(passit_isIE6?48:45));
			}
			var obj_height=0;
			if(obj_pos.offsetHeight!=null&&obj_pos.offsetHeight>0){
				obj_height=obj_pos.offsetHeight;
			}
            if ((clientY-(obj_pos.y-diffY+obj_height))>=div_height) {
				obj_def.style.top = (obj_pos.y+obj_height + "px");
            } else {
				obj_def.style.top = (obj_pos.y-div_height) + "px";
            }
        }
        obj_def.style.display = "block";
    };

    function getAbsoluteLocation(element)
    {
        if (arguments.length != 1 || element == null)
        {
            return null;
        }
        var offsetTop = element.offsetTop;
        var offsetLeft = element.offsetLeft;
        var offsetWidth = element.offsetWidth;
        var offsetHeight = element.offsetHeight;
        while (element = element.offsetParent)
        {
            offsetTop += element.offsetTop;
            offsetLeft += element.offsetLeft;
        }
        return {
            y: offsetTop,
            x: offsetLeft,
            offsetWidth: offsetWidth,
            offsetHeight: offsetHeight
        };
    };
    var history_title = document.title;
    var history_tag = document.URL;
    function createDefaultDiv() {//产生最后层div的函数;
        var div = document.createElement("div");
        div.style.display = "none";
        div.style.zIndex = "100000001";
        div.setAttribute("id", "bookmark_page_default");
        div.innerHTML = 
        '<input type="hidden" id="passit_def_val" value="0">' + 
        '<span id="bookmark_page_def_head"><label class="bookmark_page_def_font">转帖分享.如此简单</label><img src="http://' + passit_src + '/images/close_ima.gif" id="passit_def_close"/></span>' + 
        '<span id="passit_def_bookmark"><ul id="passit_def_bookmark_ul"></ul></span><span id="passit_default_footer" ><img src="http://' + passit_src + '/images/foot_bg.gif" /><a href="http://www.passit.cn/" target="_blank">这是什么工具？</a></span></span>';
        document.getElementsByTagName("body")[0].appendChild(div);
        div.onmouseover = function() {
            var obj = document.getElementById("passit_def_val");
            if (obj != null) {
                obj.value = 1;
            }
            div.style.display = "block";
        };
        div.onmouseout = function() {
            var obj = document.getElementById("passit_def_val");
            if (obj != null) {
                obj.value = 0;
            }
            window.setTimeout(function() {
                if (obj.value == 0) {
                    div.style.display = "none";
                }
            },
            passit_isIE ? 500: 1000);
        };
        var obj_close = document.getElementById("passit_def_close");
        obj_close.style.cursor = "pointer";
        obj_close.onclick = function() {
            div.style.display = "none";
        };
        var str = "0px -{0}px";
        var count = 0;
		var array;
		if(dist_arr!=null&&dist_arr.length>0){
			array=dist_arr;
		}else{
			array=original_arr;
		}
        for (var i = 0; i < array.length; i++) {
            var obj = array[i];
            if (obj.name == "share" || obj.name == "email"|| obj.name == "more" ) {
                continue;
            }
            count++;
           	if (count > 15) {
                break;
            }
            var liNode = document.createElement("li");
           
            liNode.onmousemove =  function() {
                this.style.backgroundColor = "#F2f2f2";
				this.style.borderColor="#e5e5e5";
            };
            liNode.onmouseout =  function() {
                this.style.backgroundColor = "white";
				this.style.borderColor="white";
            };
            var str_url;
            var aNode = document.createElement("a");
			aNode.style.backgroundPosition = str.replace("{0}", obj.pos * 16);
            if ("51com" == obj.name) {
                //51com的编码为gbk,此地不能用JS编码
                str_url = (history_title + " - Passit分享");
            } else if ("poco" == obj.name || "vivi" == obj.name || "hexun" == obj.name) {
                str_url = escape(history_title + " - Passit分享");
            } else {
                str_url = encodeURIComponent(history_title + " - Passit分享");
            }
            liNode.appendChild(aNode);
            var spanNode = document.createElement("span");
            aNode.appendChild(spanNode);
			
            var url = obj.url.replace("{0}", encodeURIComponent(history_tag)).replace("{1}", (str_url)).replace("{2}", encodeURIComponent(history_title + "  " + history_tag));
            if (obj.name == "whois") {
                    url = obj.url.replace("{0}", encodeURIComponent(getWhoIsString()));
             }
            
             spanNode.innerHTML = obj.alias;
			 if(obj.name=="bookmark"){
				aNode.onclick=function(e){
                        addFavor();
                };
			    aNode.href = "javascript:void(0);";
			 }else{
			 	aNode.setAttribute("target", "_blank");
			 	aNode.href = url;
			 }
             document.getElementById("passit_def_bookmark_ul").appendChild(liNode);
             collectBookmarkId(aNode, obj.id);
        }
		passit_createMoreBtn();
		if(passit_isIE6&&div!=null){//在IE6里遮盖select
			var iframe_mask = document.createElement("iframe");
        	iframe_mask.setAttribute("id", "passit_div_mask");
			iframe_mask.className="passit_div_mask";
			div.appendChild(iframe_mask);
		}
		return count;
    }
   function addFavor() {
        if (window.sidebar) {
            window.sidebar.addPanel(history_title, history_tag, "");
        }
        else if (document.all) {
			try {
				window.external.AddFavorite(history_tag, history_title);
			}catch(err){
				if(confirm("您的浏览器暂不支持javascript添加收藏夹，确定是否修复！\n同时您也可以使用CTRL+D进行添加.")){
					window.open("http://www.passit.cn/ieframe.shtml");
				};
			}
        }
        else
        if (window.opera && window.print) {
            return true;
        }
    };
	function passit_createMoreBtn(){
		    var liNode = document.createElement("li");
		    var spanNode = document.createElement("span");
			var aNode = document.createElement("a");
		    var str = "0px -{0}px";
		    liNode.style.cursor="pointer";
		    var obj_more=original_arr[original_arr.length-1];
		    aNode.style.backgroundPosition = str.replace("{0}", obj_more.pos * 16);
		    spanNode.innerHTML=obj_more.alias;
		    spanNode.style.color="#626262";
            liNode.style.cursor = "pointer";
            liNode.onclick = function() {
                    passit_onClickEvent();
            };
			liNode.onmouseover=function(e){
				this.style.backgroundColor = "#F2f2f2";
				this.style.borderColor="#e5e5e5";
				is_close_passit=false;
			};
			liNode.onmouseout=function(e){
				this.style.backgroundColor = "white";
				this.style.borderColor="white";
				is_close_passit=true;
			};
			aNode.appendChild(spanNode);
			liNode.appendChild(aNode);
			document.getElementById("passit_def_bookmark_ul").appendChild(liNode);
	}
    function getWhoIsString() {
        var loc = window.location.href;
        var loc1 = loc.substring(loc.indexOf("//") + 2);
        return decodeURI(loc1.substring(0, loc1.indexOf("/")));
    }
    function collectBookmarkId(obj, id) {
        if (obj.addEventListener) {
            //FF
            obj.addEventListener("click", 
            function() {
                collectStatistics(id);
            },
            false);
        }
        else {
            if (obj.attachEvent) {
                //IE
                obj.attachEvent("onclick", 
                function() {
                    collectStatistics(id);
                },
                false);
            }
        } 
    };
    function collectStatistics(id) {
        var uri = "&userid=" + pub + "&bookmarkid=" + id + "&title=" + encodeURIComponent(document.title) + "&type=" + (passit_simple == 1 ? 11: 1) + "&url=" + document.URL;
        var url = "http://" + passit_src + "/saveBarService.action?callback=saveStatistic_callback" + uri;
        passit_crossFiled(url, "passit_saveService");
    };
    function passit_crossFiled(url, id) {
        var element;
        var obj = document.getElementById(id);
        if (obj != null) {
            document.getElementsByTagName("head")[0].removeChild(obj);
        };
        element = document.createElement("script");
        element.type = 'text/javascript';
        element.setAttribute("id", id);
        element.src = url + "&time=" + Math.random();
        document.getElementsByTagName("head")[0].appendChild(element);
    };
    // * end
 	document.onclick=function(e){
		try {
			if (is_close_passit) {
				closePassit();
			}
		}catch(err){
			
		}
	};
    function AttachEvent(target, eventName, handler, argsObject) {
        var eventHandler = handler;
        if (argsObject) {
            eventHander = function(e) {
                handler.call(argsObject, e);
            }
        }
        if (window.attachEvent)
        target.attachEvent("on" + eventName, eventHander);
        else
        target.addEventListener(eventName, eventHander, false);
    };

    function showPassit() {
		is_move_iframe=false;
        var diffX = document.documentElement.scrollLeft || document.body.scrollLeft || 0;
        var diffY = document.documentElement.scrollTop || document.body.scrollTop || 0;
        var clientX = window.screen.width;
        var clientY = window.screen.height;

        passit_div1.style.top = ((clientY - parseInt(500)) / 2) + diffY + "px";
        passit_div1.style.left = ((clientX - parseInt(359)) / 2) + diffX + "px";
        passit_div1.style.display = "block";
		setTimeout(function(){
			is_move_iframe=true;
		},500);
		
    }

    function passit_onClickEvent(e) {
        var obj = document.getElementById("bookmark_page_default");
        if (obj != null) {
            obj.style.display = "none";
        }
		passit_div1=document.getElementById("passit_piwrapper");
        if ( passit_div1 == null) {
            passit_initIframe();
        }
        showPassit();
		return false;
    }

    function passit_initIframe() {
        var title = document.title;
        var tag = document.URL;
        var broType = 1;
        var jsp = "/passit_nonav.htm";
        if (passit_simple == 1) {
            jsp = "/passit_nonav.html";
            broType = 11;
        }

        var params = "?title=" + encodeURIComponent(title) + "&tag=" + encodeURIComponent(tag) + "&bookmark_service=&passit_type=" + passit_type1 + "&pub=" + pub + '&broType=' + broType + "&container_color=" + container_color + "&title_bgColor=" + title_bgColor;

        var clientX = document.documentElement.clientWidth || document.body.clientWidth || 0;
        var clientY = document.documentElement.clientHeight || document.body.clientHeight || 0;
        var diffX = document.documentElement.scrollLeft || document.body.scrollLeft || 0;
        var diffY = document.documentElement.scrollTop || document.body.scrollTop || 0;

        passit_div1 = document.createElement("div");
        passit_div1.setAttribute("id", "passit_piwrapper");
        passit_div1.style.position = "absolute";
        passit_div1.style.top = ((clientY - parseInt(350)) / 2) + diffY + "px";
        passit_div1.style.left = ((clientX - parseInt(359)) / 2) + diffX + "px";
        passit_div1.style.zIndex = 100000000;
        passit_div1.style.display = "none";
        document.body.appendChild(passit_div1);
		if(passit_isIE6){//在IE6里遮盖select
			var iframe_mask = document.createElement("iframe");
        	iframe_mask.setAttribute("id", "passit_iframe_mask");
			iframe_mask.className="passit_iframe_mask";
			passit_div1.appendChild(iframe_mask);
		}

        passit_iframe1 = document.createElement("iframe");
        passit_iframe1.setAttribute("src", "http://" + passit_src + jsp + params.replace('#', ''));
        passit_iframe1.setAttribute("width", "359px");
        passit_iframe1.setAttribute("name", "frame1");
        passit_iframe1.setAttribute("id", "passit_iframe1");
        passit_iframe1.setAttribute("height", "410px");
		if(passit_simple==1)passit_iframe1.setAttribute("height", "335px");
        passit_iframe1.setAttribute("frameBorder", 0);
        passit_iframe1.setAttribute("allowTransparency", true);
        passit_iframe1.setAttribute("scrolling", "no");
        passit_div1.appendChild(passit_iframe1);

        passit_closeButton1 = document.createElement("div");
        passit_closeButton1.style.position = "absolute";
        passit_closeButton1.style.top = "10px";
        passit_closeButton1.style.left = "330px";
        passit_closeButton1.style.zIndex = 100000000;

        piimg = document.createElement("img");
        piimg.src = "http://" + passit_src + "/images/transparent_close.gif";
        piimg.style.cursor = "pointer";
        passit_closeButton1.appendChild(piimg);
        passit_div1.appendChild(passit_closeButton1);

        if (passit_closeButton1.addEventListener) {
            //FF
            passit_closeButton1.addEventListener("click", closePassit, false);
//            window.addEventListener("scroll", passit_moveit1, false);
//            window.addEventListener("resize", passit_moveit1, false);
        } else {
            if (passit_closeButton1.attachEvent) {
                //IE
                passit_closeButton1.attachEvent("onclick", closePassit);
//                window.attachEvent("onscroll", passit_moveit1);
//                window.attachEvent("onresize", passit_moveit1);
            }

        }
    }
	var loop_locked=false;
    function passit_moveit1() {
        var diffX = document.documentElement.scrollLeft || document.body.scrollLeft || 0;
        var diffY = document.documentElement.scrollTop || document.body.scrollTop || 0;
        var clientX = window.screen.width;
        var clientY = window.screen.height;
        var o = document.getElementById('passit_piwrapper');
        if (o != null) {
			
			if(!loop_locked){
				loop_moveTop(130,diffY);
				loop_locked=true;
			}
            //o.style.top = ((clientY - 500) / 2) + diffY + "px";
           // o.style.left = parseInt(o.style.left)+ diffX + "px";
        }
    }
	var is_move_iframe=false;
	function loop_moveTop(b,c){
			var d = document.getElementById("passit_piwrapper");
            var e = 1;
            var f = document.documentElement.scrollTop;
			var g = parseInt(d.style.top);
     
            f = f - g + b;
			f = g + f/4;
            if (f < b) f = b;
            if (f != c) {
				if(is_move_iframe){
					 d.style.top = f + "px";
				}
            }
            c = f;
            setTimeout(function() {
                loop_moveTop(b, c)
            },
            e);
            d = e = f = null;
	}
};


//放在onload外面才能让父页面调到
function closePassit() {
    var o = document.getElementById('passit_piwrapper');
    if (o != null) {
        o.style.display = "none";
    }

	}

function saveStatistic_callback(data) {

    };

