/*
	[Diggcms.com] (C) 2008 diggcms Inc.
	$Id: diggCmspopup.js 7381 2008-08-31 19:41:58Z window $
*/

var agt = navigator.userAgent.toLowerCase();
var is_ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));

document.writeln("<style type=\"text\/css\">");
document.writeln(".DiggcmsDivCng{padding:0px 0px 0px 0px}");
document.writeln(".DiggcmsDivCng div{background:#7c7c7c;padding:5px 5px 5px 5px;}");
document.writeln(".DiggcmsDivCng div div{border:1px solid #7c7c7c;margin:-10px 0 0 -10px;background:#fff;padding:0px;}");
document.writeln("<\/style> ");

function ietruebody()
{
   return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function G(pid)
{
  return document.getElementById(pid);	
}

function DcDrag(){
	this.obj  = null;
	this.w	  = 400;          //窗体宽
	this.h	  = 300;          //窗体高
	this.t   =0;             //窗体位置X
	this.l   =0;             //窗体位置Y
	this.dialog = null;     //内容主DIV
	this.dialogBg = null;   //内容透明DIV
	this.linkurl=null;      //打开网址
	this.isOnClose=null;      //false,为True时关闭刷新页面
	this.title="";             //窗体标题
	this.Opacity=60;           //透明度
	this.iframeIdName="ifrm";  //框架名称
	this.submit=null;         //默认不是表单提交,为True为Form表单提交处理
	this.formName=null;       //表单名称，与this.submit对应的Form名称
	this.imgpath="";           //图片路径
	this.scrolling="auto";         //框架的滚动条
	this.init();
}

DcDrag.prototype = {
	
	init:function(){
		this.dialog = document.createElement('DIV');
		this.dialogBg=document.createElement("DIV");	
	},
	
	width:function(vwid){  //设置width
	  this.w=vwid;	
	},
	
	height:function(vhid){ //设置height
	  this.h=vhid;	
	},

	SetUrl:function(vurl){
	     this.linkurl=vurl;	
	},
	
	isReloadOnClose:function(ievt){
		this.isOnClose=ievt;
	},
	
	build:function(Evt){  //建设
		evt = Evt ? Evt : window.event;   //用于FF
		this.obj = evt.srcElement ? evt.srcElement : evt.target; //得到个原素 使它在FF中也可以用
	
        this.iframeIdName="ifrm"+this.w;
		
		if (this.t==0){
		   this.t = (ietruebody().clientHeight - this.dialog.offsetHeight)/4 + ietruebody().scrollTop + 'px';
		} else{
		  this.t=(this.t+ietruebody().scrollTop) + 'px';
		}
		
		if (this.l==0){
		   this.l = (ietruebody().clientWidth - this.dialog.offsetWidth)/4 + 'px';
		}
		
		this.dialog.id="dialogBox";
		this.dialog.style.cssText="width:"+this.w+"px;height:"+this.h+"px;";
		this.dialog.style.top  = this.t;
		this.dialog.style.left = this.l;
		this.dialog.style.position = "absolute";  //设定他的样式为绝对定位
		this.dialog.style.zIndex = 1000;         //这里显示上下的
		this.dialog.style.display="";
		document.body.appendChild(this.dialog);
		this.dialog.innerHTML='<div class=DiggcmsDivCng><div><div style="top:0px;left:0px;z-index:1001;border:3px solid #C1D0EC;background-color:#ffffff;"><table width="100%" border="0" cellspacing="0" cellpadding="0" style="border-top:1px solid AAC1E9;border-left:1px solid AAC1E9;border-right:1px solid AAC1E9;"><tr style="background:url('+this.imgpath+'layer_global.jpg);height:26px;"><td width=96% height="26"  style="padding-left:5px;background:url('+this.imgpath+'layer_global.jpg);height:26px;"><b style=font-size:14px>'+this.title+'</b></td><td width=4%><img src="'+this.imgpath+'dialogclose.gif" alt="关闭" onclick="closep()" style="cursor:pointer" /></td></tr></table><table width="100%" border="0" cellspacing="0" cellpadding="0" style="border-bottom:1px solid AAC1E9;border-left:1px solid AAC1E9;border-right:1px solid AAC1E9;"><tr><td><iframe id="'+this.iframeIdName+'" name="'+this.iframeIdName+'" frameborder="0" scrolling="'+this.scrolling+'" src="'+this.linkurl+'" width="100%" height="'+(this.h-23)+'"></iframe></td></tr></table></div></div></div>';
	    if (this.submit)   //表单提交方式
		{
           G(this.formName).target=this.iframeIdName;
		}

		this.buildDivbg();
		this.dialogBg.style.display="";
	},
	
	buildDivbg:function(){  //建设透明DIV
	  this.dialogBg.id="dialogBG";
	  this.dialogBg.style.cssText="margin:0px;padding:0px;position:absolute;z-index:999;background:#666666;filter:alpha(Opacity="+this.Opacity+",style=0);opacity:0.2;";
	  this.dialogBg.style.top="0px";
	  this.dialogBg.style.top="0px";
	  this.dialogBg.style.width=ietruebody().clientWidth + 'px';
	  this.dialogBg.style.height=(ietruebody().clientHeight+ietruebody().scrollTop)+'px'
	  this.dialogBg.style.display="none";
	  document.body.appendChild(this.dialogBg);
	},
	
	findPosX:function(obj){  //当前对象X轴
		var curleft = 0;
		if(obj.offsetParent){
			while(obj.offsetParent){
				curleft += obj.offsetLeft
				obj = obj.offsetParent;
			}
		} else if(obj.x){
			curleft += obj.x;
		}
		return curleft - ietruebody().scrollLeft;
	},
	
	findPosY:function(obj){  //当前对象Y轴
		var curtop = 0;
		if(obj.offsetParent){
			while(obj.offsetParent){
				curtop += obj.offsetTop
				obj = obj.offsetParent;
			}
		} else if(obj.y){
			curtop += obj.y;
		}
		return curtop - ietruebody().scrollTop;
	},

	//参数说明
	// id 要移动的层ID 
	// Evt 是 event, window.event; 要在FF 中可以用    e ? e :window.event;
	// T 为 int 有数字是拖动 没有是变大小
	Move:function(Id,Evt,T){
		   if(Id=="") return;
		   var o = G(Id);
		   if(!o) return;//如果这个东东不在
			   evt = Evt ? Evt : window.event;
			   o.style.position = "absolute";//设定他的样式为绝对定位
			   o.style.zIndex = 1002;//这里显示上下的
			   var obj = evt.srcElement ? evt.srcElement : evt.target; //得到个原素 使它在FF中也可以用
		   
		   //得到当前对要移动对象的 坐标
			 var w = o.offsetWidth;
			 var h = o.offsetHeight;
			 var l = o.offsetLeft;
			 var t = o.offsetTop;
			 var div = document.createElement("DIV");//新原素DIV
			 document.body.appendChild(div);
			 div.style.cssText = "filter:alpha(Opacity=10,style=0);opacity:0.2;width:"+w+"px;height:"+h+"px;top:"+t+"px;left:"+l+"px;position:absolute;background:#BBBBBB";//设定 filter； 注意opacity 是FF中的 Opacity
			 div.setAttribute("id", Id +"temp");
		   
		   if(T)//看看是拖动还是 变大小
		   {
			  this.Move_OnlyMove(Id,evt);
		   }
		   else
		   {
		   
		   }
	},
	
	//移动函数
	//参数 Id 要移动的层ID 
	//Evt 是 event, window.event; 要在FF 中可以用    e ? e :window.event;
	Move_OnlyMove:function(Id,Evt){
		   var o = document.getElementById(Id+"temp");
		   if(!o) return;
		   evt = Evt?Evt:window.event;//都是FF 才要这么写的
		   var relLeft = evt.clientX - o.offsetLeft;//得到左边的 宽度
		   var relTop = evt.clientY - o.offsetTop;//得到上边的 宽度
		   //抓取 事件
		   if (!window.captureEvents)
		   {
				o.setCapture(); //指定 抓取 事件     
		   }
		   else
		   {
				window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
		   }
		  
		   //文档的 onmousemove 事件
		   document.onmousemove = function(e)
		   {
				if (!o) return;
				e = e ? e : window.event;
				if (e.clientX - relLeft <= 0)
					o.style.left = 0 +"px";
				else if (e.clientX - relLeft >= document.documentElement.clientWidth - o.offsetWidth - 2)
					o.style.left = (document.documentElement.clientWidth - o.offsetWidth - 2) +"px";
				else
					o.style.left = e.clientX - relLeft +"px";
				if (e.clientY - relTop <= 1)
					o.style.top = 1 +"px";
				else if (e.clientY - relTop >= document.documentElement.clientHeight - o.offsetHeight - 30)
					o.style.top = (document.documentElement.clientHeight - o.offsetHeight - 30) +"px";
				else
					o.style.top = e.clientY - relTop +"px";
		   }
	  
		   //文档的 onmouseup 事件
		   document.onmouseup = function()
		   {
				  if (!o) return;
				  if (!window.captureEvents)
					o.releaseCapture();
				  else
					window.releaseEvents(Event.MOUSEMOVE|Event.MOUSEUP);
				  var o1 = document.getElementById(Id);
				  if (!o1) return;
				  var l0 = o.offsetLeft;
				  var t0 = o.offsetTop;
				  var l = o1.offsetLeft;
				  var t = o1.offsetTop; 
				  diggcmsDrag.Move_e(Id, l0 , t0, l, t);
				  document.body.removeChild(o);
				  o = null;
		   } 
	},
	
	Move_e:function(Id, l0 , t0, l, t){
			 if (typeof(window["ct"+ Id]) != "undefined") clearTimeout(window["ct"+ Id]);
			 var o = document.getElementById(Id);
			 if (!o) return;
			 var sl = st = 8;
			 var s_l = Math.abs(l0 - l);
			 var s_t = Math.abs(t0 - t);
			 if (s_l - s_t > 0)
				  if (s_t)
					sl = Math.round(s_l / s_t) > 8 ? 8 : Math.round(s_l / s_t) * 6;
				  else
					sl = 0;
			 else
			  if (s_l)
				st = Math.round(s_t / s_l) > 8 ? 8 : Math.round(s_t / s_l) * 6;
			  else
				st = 0;
			 if (l0 - l < 0) sl *= -1;
			 if (t0 - t < 0) st *= -1;
			 if (Math.abs(l + sl - l0) < 52 && sl) sl = sl > 0 ? 2 : -2;
			 if (Math.abs(t + st - t0) < 52 && st) st = st > 0 ? 2 : -2;
			 if (Math.abs(l + sl - l0) < 16 && sl) sl = sl > 0 ? 1 : -1;
			 if (Math.abs(t + st - t0) < 16 && st) st = st > 0 ? 1 : -1;
			 if (s_l == 0 && s_t == 0) return;
			 if (Math.abs(l + sl - l0) < 2)
				o.style.left = l0 +"px";
			 else
				o.style.left = l + sl +"px";
			 if (Math.abs(t + st - t0) < 2) 
				o.style.top = t0 +"px";
			 else
				o.style.top = t + st +"px";
			 window["ct"+ Id] = window.setTimeout("diggcmsDrag.Move_e('"+ Id +"', "+ l0 +" , "+ t0 +", "+ (l + sl) +", "+ (t + st) +")", 1);
		}	
}


function openEditCat(iurl,ititle,wid,hei,tid,lid,iOpacity,ireload,scrolling,isubmit,iformname,ievent){
  diggcmsDrag = new DcDrag();
  diggcmsDrag.w=wid;
  diggcmsDrag.h=hei;
  diggcmsDrag.t=tid;  //居中为0
  diggcmsDrag.l=lid;  //居中为0
  diggcmsDrag.linkurl=iurl;
  diggcmsDrag.title=ititle;
  diggcmsDrag.Opacity=iOpacity; //透明度
  diggcmsDrag.isOnClose=ireload; //false,true{true关闭刷新页面｝
  diggcmsDrag.submit=isubmit;  //false或true{true为表单提交弹窗处理}
  diggcmsDrag.formName=iformname; //可空
  diggcmsDrag.imgpath=wurl+"/style/js/";
  diggcmsDrag.scrolling=scrolling;
  diggcmsDrag.build(ievent);     //当前evert
}

//关闭
function closep(){
	diggcmsDrag.dialog.style.display = 'none';
	diggcmsDrag.dialogBg.style.display = 'none';
    if (diggcmsDrag.isOnClose)
	{
		 top.location.reload();
	}
	document.body.removeChild(diggcmsDrag.dialog);
	document.body.removeChild(diggcmsDrag.dialogBg);
	diggcmsDrag=null;
}

//框架中关闭
function parentclosep(diggUrl){
	if (diggUrl!="")  //关闭转向URL
	{
      parent.location.href=diggUrl;
	}
	parent.diggcmsDrag.dialog.style.display = 'none';
	parent.diggcmsDrag.dialogBg.style.display = 'none';
	parent.document.body.removeChild(parent.diggcmsDrag.dialog);
	parent.diggcmsDrag=null;

}

function PoutCheck(diggstate,diggUrl)
{
  if (diggstate.indexOf('已完成')>0)
  {
	 parentclosep(diggUrl); 
  }
}