﻿$.fn.extend({
	
	/*
	 *  $("#aaaa").addDrag({title:'aa',path:'XXX',width:200,height:300,display:'none',name:'aaa'});
	 *  name 要是和之前不一样就是在新窗口打开。默认为空
	 * */
	addDrags : function(s,close) {
		$(this).addDrag(s.title,s.path, s.width, s.height,s.display,s.name,close,s.scroll);
	},
			/**
	 * 使用说明 取消安据让ID=DragClose
	 * $("#aaaa").addDrag("aaaaaaaaaaa","path",300,200,"none");
	 * "#aaaa"			 	表式要在层里面显示的内容
	 * "aaaaaaaaaaa		"标题
	 * "path"					图片路径
	 * 300						宽    默认 300 X 200
	 * 200						高
	 * "none" 				调用时默认不显示，空为显示
	 */
	addDrag : function(ti,path, wd, hg,dis,name,close,scroll ) {
		$.yinfutonyimovedivb=false;
		var closename;
		var movediv;
		var  displaydiv;
		//$(this).css({	"display" : "none"});
		if (wd == undefined||wd == null)
			wd = $(this).height();
		if (hg == undefined||hg == null)
			hg = $(this).height();
		if (ti == undefined||ti==null)
			ti = "";
		if (path == undefined||path==null)
			path = $.path;
		if(close== undefined||close==null)
			close=function(){};
			
		//alert(close);
		//dis="";
		if(name == undefined){
			name="yinfutonyimovediv";
			closename="";
			}
		else{
			closename=name;
			name="yinfutonyimovediv"+name;
		}
		if ((displaydiv = $("#yinfudisplaydiv")).html() == null){
			displaydiv=$('<div id="yinfudisplaydiv" style="display:none;"></div>');
			$("body").append(displaydiv);
		}
		if ((movediv = $("#"+name)).html() == null){
			movediv = $('<div id="'+name+'" ><iframe style="position:absolute;visibility:inherit;top:0px;left:0px;z-index:-1;filter=\'progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)\'"></iframe>'
					+ '<div style="height:24px; background-image:url('+path+'images/common/div-2_02.gif);">'
					+ '<div style="float:left;"><img src="'+path+'images/common/div-2_01.gif" /></div>'
					+ '<div style="float:left; color:#F7F7F7;padding-top:5px;padding-left:5px;" id="'+name+'title"></div>'
					+ '<div style="float:right;"><img src="'+path+'images/common/div-close.gif" style="margin-bottom:3px;cursor:hand;" alt="关闭" onClick="$.addDragsClose(\''+closename+'\');"/><img src="'+path+'images/common/div-2_07.gif" /></div>'
					+ '</div>'
					+ '<div id="'+name+'body" style="border: 1px solid #3F9DD7;border-top:none; background-color:#E6E8FF"></div>'
					+ '</div>');
			$("body").append(movediv);
		}
		movediv.width(wd + "px");
		if((dis == undefined )&&($(this)==null||$(this).html()==null||$(this).html()==""))
			dis="none";
		else if(dis == undefined )
			dis="";
			
		movediv.css({"display" : dis});
		movediv.find("div:first").css({
					"background-image" : "url("+path+"images/common/div-2_02.gif)",
					"height" : "24px",
					"font-size":"13px"
				});
		movediv.find("div:first > div:last > img:div:first").unbind("click").click(close);
		movediv.find("#"+name+"title").text(ti);
		var divlast=movediv.children("div:last");
		divlast.height((hg - 28) + "px");
		displaydiv.append(divlast.children());
		divlast.append($(this));
		//var el=$(this);
		divlast.find("#DragClose").click(function() {
			movediv.css({"display":"none"});
		});
		var close=function() {movediv.css({"display":"none"})};
		divlast.children().css({"display":""});
		movediv.find("div:first").asfmanDrag();
		var thistop=($(window).scrollTop()+($(window).height()-movediv.height())/4);
		movediv.css({zIndex:$.zIndex++,position : "absolute","width":movediv.width(),"left" : ($(window).width()-movediv.width())/2,"top" : thistop>0?thistop:0});
		$.yinfutonyimovedivtop=movediv.position().top-$(window).scrollTop();
		movediv.find("iframe").width(movediv.width());
		movediv.find("iframe").height(movediv.height());
		if(scroll!= undefined&&scroll!=null&&scroll==true){
			$(window).scroll( function() {
				//alert($.yinfutonyimovedivb +" "+ $.yinfutonyimovedivtop)
				if($.yinfutonyimovedivb && $.yinfutonyimovedivm){
					movediv.css({top:($(window).scrollTop()+$.yinfutonyimovedivtop)});
				}
			});
		}
	},
	/**
	 * 使用说明 取消安据让ID=DragClose
	 * $("#aaaa").addDrag("aaaaaaaaaaa","path",300,200);
	 * "#aaaa"			 	表式要在层里面显示的内容
	 * "aaaaaaaaaaa		"标题
	 * "path"					图片路径
	 * 300						宽    默认 300 X 200
	 * 200						高
	 */
	asfmanDrag : function() {
		$(this).each(function() {
		$(this).mousedown(function(event) {this.drag(event);}	);
		this.drag = function(event) {
				var element = $(this), ev = event;
				ev.rPageX = ev.pageX;
				ev.rPageY = ev.pageY;
				var pos = $(this).offset();
				element.posRange = {
					minX : 0,
					minY : 0,
					maxX : $(window).width()>$(document).width()?$(window).width():$(document).width(),
					maxY : $(window).height()>$(document).height()?$(window).height():$(document).height()
				};
				element.dragConfig = {
					defaultX : pos.left,
					defaultY : pos.top,
					defaultW : $(this).width(),
					defaultH : $(this).parent().height()
				};
				$("body").mouseup(function() {
					$.yinfutonyimovedivm=true;
					$(this).unbind("mousemove");
				});
				$("body").mousemove(function(event) {
					$.yinfutonyimovedivm=false;
					var ev2 = event;
					var pr = element.posRange;
					var el=element.dragConfig;
					var left=ev2.pageX+(el.defaultX-ev.rPageX);
					left = (left < pr.minX ? pr.minX : ((left + el.defaultW) > pr.maxX
							? (pr.maxX - el.defaultW) : left));
					var top=ev2.pageY+(el.defaultY-ev.rPageY);
					top = (top < pr.minY ? pr.minY : ((top + el.defaultH) > pr.maxY
							? (pr.maxY - el.defaultH)	: top));
					top=(top<0)?0:top;
					element.parent().css({"left" : left,"top" : top	});
					$.yinfutonyimovedivtop=element.parent().offset().top-$(window).scrollTop();
					//alert($.yinfutonyimovedivtop);
					return false;
				});
				//if(b&&m)
			}
		});
	},
/**
 * 分页功能
 * $("div").addpagination(totalpages, currentpage, onevent, classs)
 * totalpages 		总页数
 * currentpage		当前页数
 * onevent				连接 如  index.do?page=pagevalue&currentpage=100 中间的pagevalue 被自动换成连接页数
 * 								或着写  javascript:alert(pagevalue);
 * classs					可以定义自己的CSS样式，不定义彩用默认
 */

	addpagination : function(totalpages, currentpage, onevent, classs) {
		//alert($(this).html());
		if(totalpages==1||totalpages==0)
			return;
		totalpages = parseInt(totalpages);
		currentpage = parseInt(currentpage);
		var style = '<style type="text/css">'
				+ 'DIV.pagination {PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 13px; PADDING-BOTTOM: 10px; COLOR: #48b9ef; PADDING-TOP: 10px; FONT-FAMILY: Arial, Helvetica, sans-serif; TEXT-ALIGN: right;}'
				+ 'DIV.pagination A {BORDER-RIGHT: #f0f0f0 2px solid; PADDING-RIGHT: 5px; BORDER-TOP: #f0f0f0 2px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 0px 2px; BORDER-LEFT: #f0f0f0 2px solid; COLOR: #48b9ef; PADDING-TOP: 2px; BORDER-BOTTOM: #f0f0f0 2px solid; TEXT-DECORATION: none;}'
				+ 'DIV.pagination A:hover {BORDER-RIGHT: #ff5a00 2px solid; BORDER-TOP: #ff5a00 2px solid; BORDER-LEFT: #ff5a00 2px solid; COLOR: #ff5a00; BORDER-BOTTOM: #ff5a00 2px solid;}'
				+ 'DIV.pagination A:active {BORDER-RIGHT: #ff5a00 2px solid; BORDER-TOP: #ff5a00 2px solid; BORDER-LEFT: #ff5a00 2px solid; COLOR: #ff5a00; BORDER-BOTTOM: #ff5a00 2px solid;}'
				+ 'DIV.pagination SPAN.current {BORDER-RIGHT: #ff5a00 2px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff5a00 2px solid; PADDING-LEFT: 5px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; BORDER-LEFT: #ff5a00 2px solid; COLOR: #fff; PADDING-TOP: 2px; BORDER-BOTTOM: #ff5a00 2px solid; BACKGROUND-COLOR: #ff6c16;}'
				+ 'DIV.pagination SPAN.disabled {DISPLAY: none;}' + '</style>';
		if (classs == undefined || classs == "" || classs == null)
			classs = "pagination";
		if(onevent == undefined || onevent == "" || onevent == null )
			onevent="#?page=pagevalue";
		var pagination = $('<div class="' + classs + '"></div>');
		var str;
		if (currentpage == 1)
			str = '<span class="disabled">&lt; Prev</span>';
		else
			str = '<a href="'+onevent.replace(/pagevalue/g, ""+(currentpage-1))+'">&lt; Prev</a>';
		for (var j = 1; j < 3 && j < totalpages+1; j++)
			if (currentpage == j)
				str = str + '<span class="current">' + j + '</span>';
			else
				str = str + '<a href="' + onevent.replace(/pagevalue/g, ""+j)
						+ '">' + j + '</a>';
		var i = currentpage - 2;
		if (i <= 3) {
			i = 3;
		}else{
			str=str+"...";
		}
		if (i > totalpages - 7&&totalpages - 7>2) {
			i = totalpages - 7;
		}
		n=i + 5;
		for (; i < n && i < totalpages - 2&& i >2; i++) {
			if (i == currentpage) {
				str = str + '<span class="current">' + i + '</span>';
			} else {
				str = str + '<a href="'+onevent.replace(/pagevalue/g, ""+i)+'">' + i + '</a>';
			}
		}
		if(i <3)
			i=3;
		var j = totalpages - 2;
		if(i<j)
			str=str+"...";
		else
			j=i;
		for (; j <= totalpages && j > 2; j++)
			if (currentpage == j)
				str = str + '<span class="current">' + j + '</span>';
			else
				str = str + '<a href="' + onevent.replace(/pagevalue/g, ""+j)
						+ '">' + j + '</a>';

		if (currentpage == totalpages)
			str = str + '<span class="disabled">Next &gt; </span>';
		else{
			currentpage=parseInt(currentpage)+1;
			str = str + '<a href="' + onevent.replace(/pagevalue/g,currentpage) + '">Next &gt; </a>';
		}
		pagination.html(str);
		$(this).html(style);
		$(this).append(pagination);
		//alert($(this).html());
	},
	addshowtime: function(){
		var el=$(this);
		var str=$.getdate()+" "+$.getweek();
		addtime=function(el){
			el.text(str+" "+$.gettime());
			setTimeout(function(){addtime(el)},1000);
		}
		addtime(el);
	},
	/**
	 * 字幕滚动
	 * @param {} speed
	 */
	ScrollLeft : function(speed) {
		var scroll_div = $(this);
		var scroll_begin = $(this).children();
		if (scroll_begin.height() < scroll_div.height())
			scroll_begin.height(scroll_div.height());
		var scroll_end = scroll_begin.clone(true).insertAfter(scroll_begin);
		var scroll_out = scroll_end.clone(true).insertAfter(scroll_end);
		scroll_out.height(scroll_div.height() * 2);
		$(this).css({"overflow" : "hidden"});
		var Marquee = function() {
			if (scroll_end.offset().top
					+ (scroll_end.height() - scroll_div.height())
					- scroll_div.scrollTop() == 0)
				scroll_div.scrollTop(scroll_div.scrollTop()
						- scroll_begin.height());
			else
				scroll_div.scrollTop(scroll_div.scrollTop() + 1);

		}
		var MyMar = setInterval(Marquee, speed);
		scroll_div.mouseover(function() {
					clearInterval(MyMar);
				});
		scroll_div.mouseout(function() {
					MyMar = setInterval(Marquee, speed);
				})
	}
});



jQuery.extend({
	zIndex : 100,
	path : "http://"+location.hostname+":"+location.port+"/yinfu/",
	yinfutonyimovedivb : false ,
	yinfutonyimovedivm : true ,
	yinfutonyimovedivtop : 0 ,
	/*关闭窗口*/
	addDragsClose: function(name) {
		if(name == undefined)
			name="yinfutonyimovediv";
		else
			name="yinfutonyimovediv"+name;
		var movediv=null;
		if ((movediv = $("#"+name)).html()!= null){
			movediv.css({"display":"none"});
		}
	},
	/*
	 *  $("#aaaa").DialogBox({title:'aa',img:1,button:[1,2,3,4,5,6],path:'XXX',width:200,height:300,content:'dddddd',display:'none',name:'aaa'},function(){});
	 *  name 要是和之前不一样就是在新窗口打开。默认为空img 提示图片安扭类型
	 *  function(){} 回调函数
	 * */
	DialogBox : function(s,fun,close) {
		var box;
		if((box=$("#yinfuDialogBoxdiv")).html()==null){
			box=$("<div id='yinfuDialogBoxdiv'>"+
			"<div style=\"margin:10px;text-align:left;font-family:'宋体';font-size:12px;\" id=\"#yinfuDialogBoxContent\"></div>"+
			"<div style=\"text-align:right;	margin-right:15px;\" id=\"#yinfuDialogBoxButton\"></div>"+
			"</div>");
		}
		var button=box.children().eq(1);
		button.empty();		
		var img="";
		var buttons={button:[$(' <a href="#" onclick="return false;"><img src="'+$.path+'images/common/systemQD.gif" border=0/></a> '),$(' <a href="#" onclick="return false;"><img src="'+$.path+'images/common/systemQX.gif" border=0/></a> '),$(' <a href="#" onclick="return false;"><img src="'+$.path+'images/common/systemGB.gif" border=0/></a> '),$(' <a>【关闭】</a> '),$(' <a>[关闭]</a> ')]};
		if (s.path == undefined||s.path==null)
			s.path = $.path;
		
		if(s.img == undefined||s.img ==null){
			img=s.path+"images/prompt_01.png";
		}else{
			img=s.path+"images/prompt_0"+s.img+".png";
		}
		if(fun== undefined||fun==null)
			fun=function(){};
		img="<img src=\""+img+"\" style=\" width:28px;\" border=\"0\"/>";
		if(s.button== undefined||s.button==null){
			button.append(buttons.button[0].click(fun));
		}else if(s.button.length== undefined){
			button.append(buttons.button[s.button].click(fun));
		}else{
			for(var i=0;i<s.button.length;i++){
				if(i==0)
					button.append(buttons.button[s.button[i]-1].click(fun));
				else{
					button.append("&nbsp;");
					button.append(buttons.button[s.button[i]-1]);
				}	
			}
		}
		if (s.width == undefined||s.width == null)
			s.width = 220;
		if (s.height == undefined||s.height == null)
			s.height = 110;
		if(s.name == undefined||s.name == null)
			s.name="yinfuDialogBoxdiv";
		else 
			s.name="yinfuDialogBoxdiv"+s.name;
		button.children().click(function() {$.addDragsClose(s.name);});
		box.children().eq(0).html(img+"&nbsp;"+s.content);
		box.addDrag(s.title,s.path, s.width, s.height,s.display,s.name,close);
	},
	gettime:function(){
  	//alert("url");
		var Digital=new Date();
		var hours=Digital.getHours();
		var minutes=Digital.getMinutes();
		var seconds=Digital.getSeconds();
		var dn="AM";
		if (hours>12){
		dn="PM";
		hours=hours-12;
		}
		if (hours==0)
		hours=12;
		if (minutes<=9)
		minutes="0"+minutes;
		if (seconds<=9)
		seconds="0"+seconds;
		var ctime=hours+":"+minutes+":"+seconds;
		return ctime;
	},
	getdate:function(){
		var enabled = 0;
		var today = new Date();
		var s
		if(today.getYear()>1900)
			s = (today.getYear())  + "年" + (today.getMonth() + 1 ) + "月" + today.getDate() + "日" ;
		else
			s = (today.getYear()+1900)  + "年" + (today.getMonth() + 1 ) + "月" + today.getDate() + "日" ;
		return s
	},
	getweek:function(){
		var today = new Date();
		var day;
		if(today.getDay()==0) day = "星期日";
		if(today.getDay()==1) day = "星期一";
		if(today.getDay()==2) day = "星期二";
		if(today.getDay()==3) day = "星期三";
		if(today.getDay()==4) day = "星期四";
		if(today.getDay()==5) day = "星期五";
		if(today.getDay()==6) day = "星期六";
		return day;
	},
	masklayer:function(b){
		var divview=$("#masklayer");
		if(divview.html()==null){
			divview=$("<div id=\"masklayer\" style=\"filter:Alpha(Opacity=80);opacity:0.8; background-color:#CCCCCC; position:absolute;\"></div>");
			$(window).scroll( function() {
				divview.css({top:$(window).scrollTop()+"px"});
				divview.css({"width":$(window).width(),"height":$(window).height(),top:$(window).scrollTop()+"px",left:"0px"});
			});
		}
		if(b==""||b==undefined){
			b="block";
		}
		divview.css({display:b});
		divview.width($("body").width());
		divview.height($("body").height());
		divview.css({zIndex:$.zIndex++});
		$("body").append(divview);
		divview.css({"width":$(window).width(),"height":$(window).height(),top:$(window).scrollTop()+"px",left:"0px"});
	},
	//json转字符串
	jsontostr:function(o){   
            var r = [];   
            if(typeof o =="string") return "\""+o.replace(/([\'\"\\])/g,"\\$1").replace(/(\n)/g,"\\n").replace(/(\r)/g,"\\r").replace(/(\t)/g,"\\t")+"\"";   
            if(typeof o =="undefined") return "";   
            if(typeof o == "object"){   
                if(o===null) return "null";   
                else if(!o.sort){   
                    for(var i in o)   
                        r.push(i+":"+$.jsontostr(o[i]))   
                    r="{"+r.join()+"}"  
                }else{   
                    for(var i =0;i<o.length;i++)   
                        r.push($.jsontostr(o[i]))   
                    r="["+r.join()+"]"  
                }   
                return r;   
            }   
            return o.toString();   
        }
	
	
});
