Array.prototype.parseJsonML=function(filter){var am={rowspan:"rowSpan",colspan:"colSpan",cellpadding:"cellPadding",cellspacing:"cellSpacing",tabindex:"tabIndex",accesskey:"accessKey",hidefocus:"hideFocus",usemap:"useMap",maxlength:"maxLength",readonly:"readOnly",contenteditable:"contentEditable"};function aa(el,a){for(var an in a){if(!an||typeof(a[an])!=="string"){continue;}if(an.toLowerCase()==="style"){if("undefined"!==typeof el.style.cssText){el.style.cssText=a[an];}else{el.style=a[an];}}else if(an.toLowerCase()==="class"){el.className=a[an];}else if(am[an.toLowerCase()]){el.setAttribute(am[an.toLowerCase()],a[an]);}else{el.setAttribute(an,a[an]);}}}function ac(el,c){var ct,tb;if(c){if(el.tagName.toLowerCase()==="table"&&el.tBodies){ct=c.tagName?c.tagName.toLowerCase():null;if(ct&&ct!=="tbody"&&ct!=="thead"){tb=el.tBodies.length>0?el.tBodies[el.tBodies.length-1]:null;if(!tb){tb=document.createElement("tbody");el.appendChild(tb);}tb.appendChild(c);}}else{el.appendChild(c);}}}function p(jml){if(!jml){return null;}if(typeof(jml)==="string"){return document.createTextNode(jml);}if(!(jml instanceof Array)||jml.length<1||typeof(jml[0])!=="string"){throw new Error("parseJsonML");}var t=jml[0];var x=(t.toLowerCase()==="script");var el=x?null:document.createElement(t);for(var i=1;i<jml.length;i++){if(!x){if(jml[i]instanceof Array||typeof(jml[i])==="string"){ac(el,p(jml[i]));}else if(typeof(jml[i])==="object"){aa(el,jml[i]);}}}return(el&&"function"===typeof filter)?filter(el):el;}return p(this);};String.prototype.parseJsonML=function(filter){var jml;try{jml=this.parseJSON();}catch(ex){return null;}return(jml instanceof Array)?jml.parseJsonML(filter):null;};
if ("undefined" === typeof window.JsonML) {
	window.JsonML = {};
}
JsonML.convertElement = function(elem) {
	if (!elem) {
		return null;
	}
	var i;
	switch (elem.nodeType) {
		case 1: 
			var jml = [elem.tagName];
			var a = elem.attributes;
			var att = {};
			var hasAttrib = false;
			for (i=0; i<a.length; i++) {
				if (a[i].specified) {
					if (a[i].name === "style") {
						att["style"] = elem.style.cssText ? elem.style.cssText : a[i].value;
					} else if ("string" === typeof a[i].value) {
						att[a[i].name] = a[i].value;
					}
					hasAttrib = true;
				}
			}
			if (hasAttrib) {
				jml.push(att);
			}
			if (elem.hasChildNodes()) {
				for (i=0; i<elem.childNodes.length; i++) {
					var c = elem.childNodes[i];
					c = JsonML.convertElement(c);
					if (c) {
						jml.push(c);
					}
				}				
			}
			return jml;
		case 3: 
			return elem.nodeValue;
		default:
			return null;
	}
};
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function getEvent(evt){
	   if(jQuery.browser.msie)
	  {
		if (typeof evt == "undefined") {
	        evt= window.event;
	    }
	    if (typeof evt.layerX == "undefined") {
	        evt.layerX = evt.offsetX;
	    }
	    if (typeof evt.layerY == "undefined") {
	        evt.layerY = evt.offsetY;
	    }
	    if (typeof evt.which == "undefined") {
	        evt.which = evt.button;
	    }
	}
	evt=evt?evt:(window.event?window.event:null);
	return evt;
}
var CDrag =  Class.create();
CDrag.Add = Class.create();
CDrag.Add.prototype = {	
	initialize : function (url,params,callback) {
	//初始化参数
		var wc= this;
		wc.requesturl=url;
		wc.callback=callback;
		wc.div = document.createElement("div"); //最外层div
		wc.iframe = document.createElement("iframe"); //协助wc.div盖select的iframe
		wc.node = document.createElement("div"); //内容底层div
		wc.content = document.createElement("div"); //内容层div
		wc.hander = document.createElement("div"); //内容层div
		wc.handertitle = document.createElement("div"); //内容层div
		wc.handclose = document.createElement("div"); //内容层div
		wc.params = params;
		wc.parent=wc.params.id;
		wc.count_click=0;
		wc.json = null;
		wc.handclose.onclick = wc.close.bind(wc, wc.handclose); //向按钮指向方法
		wc.init_element();
	},
	
	init_element : function () {
	//初始化元素
		var wc = this;
		wc.div.setAttribute(jQuery.browser.msie ? "className" : "class", "Dall_screen");
		wc.iframe.setAttribute(jQuery.browser.msie? "className" : "class", "Iall_screen");
		wc.node.setAttribute(jQuery.browser.msie ? "className" : "class", "Nall_screen");
        
		
		wc.content.setAttribute(jQuery.browser.msie ? "className" : "class", "Call_screen");
        
        wc.content.setAttribute( "id", "admin_content");
		wc.node.setAttribute( "id", "admin_diag");

		wc.hander.setAttribute(jQuery.browser.msie ? "className" : "class", "admin_hander");
		wc.handclose.setAttribute(jQuery.browser.msie ? "className" : "class", "admin_close");
		wc.handertitle.setAttribute(jQuery.browser.msie ? "className" : "class", "admin_title");
		wc.handertitle.setAttribute("id", "admin_title");

		wc.hander.appendChild(wc.handertitle);
		wc.hander.appendChild(wc.handclose);
		wc.node.appendChild(wc.hander);

		wc.node.appendChild(wc.content);
	},
	
	addcontent : function (msg) {
		$('admin_content').innerHTML=msg;	
	},
	
	init_node : function () {
		//初始化内容层div的数据	
		var wc = this;

	},
	handle:function(){
	  var wc = this;//url,wc.params,wc.callback function(data){ jQuery("#admin_content").html(data); }
	  $('admin_title').innerHTML=wc.params.title;
	  $('admin_content').innerHTML=wc.params.msg;
	  if(wc.params.ajax)
	  {
	    jQuery.get(wc.requesturl,wc.params,mergeFn(function(data){ jQuery("#admin_content").html(data);},wc.callback));
	  }else{
	    wc.callback();
	  }
	  Gdrag.drag($('admin_title'),[0,800,0,1500],$('admin_title').parentNode.parentNode);
	  
	},
	execute : function (div) {

	//处理table类结构
	},
	
	add : function () {
	//添加数据
		var wc = this, div = wc.div, iframe = wc.iframe;
		div.style.height = iframe.style.height = Math.max(document.documentElement.scrollHeight, document.documentElement.offsetHeight) + "px";
		div.style.width = iframe.style.width = Math.max(document.documentElement.scrollWidth, document.documentElement.offsetWidth) + "px";
		
		wc.node.style.top=(jQuery.browser.msie ? document.documentElement.scrollTop:document.documentElement.offsetTop)+100+'px';
		if(!jQuery.browser.msie)
		document.getElementsByTagName("html")[0].style.overflow = "hidden";
		document.body.appendChild(iframe);
		document.body.appendChild(div);
		document.body.appendChild(wc.node);
        
		wc.handle();
	},
	
	close : function () {
	//关闭添加框
		var wc = this, div = wc.div, iframe = wc.iframe;
		if(!jQuery.browser.msie)
		document.getElementsByTagName("html")[0].style.overflow = jQuery.browser.msie ? "" : "auto";
		document.body.removeChild(iframe);
		document.body.removeChild(div);		
		document.body.removeChild(wc.node);
	}
	
};
var Gdrag=new Object();
Gdrag.drag=function (o,r,m){
  var mouseX;
  var mouseY;
  var getPos;
  var oM=this;
  o.onmousedown=function(evt){
  evt=getEvent(evt);
  getPos= new findPos(o);	
  mouseX = evt.clientX - parseInt(getPos.left);
  mouseY = evt.clientY - parseInt(getPos.top);
  if(o.setCapture)
   o.setCapture();
  else if(window.captureEvents)
   window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
  o.onmousemove=function(evt){
   evt=getEvent(evt);
   var tx=evt.clientX-mouseX;
   var ty=evt.clientY-mouseY-5;
   tx=tx<r[0]?r[0]:tx>r[1]?r[1]:tx;
   ty=ty<r[2]?r[2]:ty>r[3]?r[3]:ty;
   m.style.left=tx+'px';
   m.style.top=ty+'px';
  };
  o.onmouseup=function(){
   if(o.releaseCapture)
     o.releaseCapture();
   else if(window.captureEvents)
    window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
   o.onmousemove=null;
   o.onmouseup=null;
  };
  };
}
function showmsg(url,params,callback)
{
show_msg=new CDrag.Add(url,params,callback);
show_msg.add();
}
function mergeFn(fn1,fn2)
{
  return function(params){
    fn1(params);
	fn2(params);
  }
}
function hidemsg(a){
	 if(a==1)
	 {
	   show_msg.close();
	   clearTimeout(show_timeid);
	 }else{
		if(!a)
		 {
		  a=2;
		}
	   show_timeid=setTimeout("hidemsg(1)",a*1000);
	 }
}
function findPos(obj) {
	this.top=0;
	this.left=0;
	this.width=obj.offsetWidth; //先取得对像偏移宽度
	this.height=obj.offsetHeight; //取得对像偏移高度
	if (obj.offsetParent) {        //如果不是最顶层
		while (obj.offsetParent) { //取得最顶层
			this.top += obj.offsetTop; //取得距离父元素顶距离
			this.left += obj.offsetLeft; //取得离左边的距离
			obj = obj.offsetParent;//进一步递归顶层
		}
	} 
}
function showConfirm(params){
 show_msg.addcontent("<div id=\"msg_div\" class=\"transparent_error transparent_message\"><\/div>");
var OutStr;
OutStr="<div style=\"text-align:center;font-size:14px;font-weight:both\">"+params.msg+"</div>";
 if(params.okcel==1){
            OutStr=OutStr+"<div style=\"text-align:center;font-size:12px;\"><input type=\"button\" value=\""+lang['okbutton']+"\" id=\"show_msg_ok\">&nbsp;&nbsp;&nbsp;&nbsp;<input type=\"button\" value=\""+lang['celbutton']+"\" id=\"show_msg_cel\"></div>";
  }else if(params.okcel==2){
            OutStr=OutStr+"<div style=\"text-align:center;font-size:12px;\"><input type=\"button\" value=\""+lang['okbutton']+"\" id=\"show_msg_ok\"></div>";
  }
 jQuery("#msg_div").html(OutStr);
 jQuery("#show_msg_ok").click(params.fnok);
 jQuery("#show_msg_cel").click(params.fncel);
}
var sortobj=new Object();
sortobj.oM=null;
sortobj.inoM=false;
sortobj.inNum=false;
sortobj.add=function(){
  if(!isNaN(jQuery("#in_num").attr("value")))
	{
	   sortobj.oM.value=jQuery("#in_num").attr("value");
	   jQuery("#in_num").attr("value","");
	   jQuery("#num_input").hide();
	}
};
sortobj.hide=function(a){
   if((!sortobj.inoM)&&(!sortobj.inNum))
   {
      if(a==1)
	  {
        jQuery("#num_input").hide();
	   }else{
	    setTimeout("sortobj.hide(1)",500);
	   }
    }
}
addLoadEvent(init_inum);
function init_inum(){
   if(!($("num_input")))
   {
     new Insertion.Bottom(document.body,'<div id="num_input"><p class="num_i"><input type="text" id="in_num" size="3" value="" maxlength="3"/></p><p class="num_e" id="in_enter">ok</p><p class="num_p">0</p><p class="num_p">1</p><p class="num_p">2</p><p class="num_p">3</p><p class="num_p">4</p><p class="num_p">5</p><p class="num_p">6</p><p class="num_p">7</p><p class="num_p">8</p><p class="num_p">9</p></div>');
   }
   jQuery(".num_e").hover(function(ev){
    this.className='nume_action';
  },function(){
    this.className='num_e';
  });
  jQuery(".num_p").hover(function(ev){
    this.className='num_action';
  },function(){
    this.className='num_p';
  });
  jQuery(".num_p").click(function(){
    var t;
	if(isNaN(jQuery("#in_num").attr("value")))
	{
	  t='';
	}else{
	  t=jQuery("#in_num").attr("value");
	}
    jQuery("#in_num").attr("value",t+jQuery(this).text());
  });
  jQuery(".esort").hover(function(){
     var pos=new findPos(this);
      jQuery("#in_num").attr("value",'')
     jQuery("#num_input").css({top:pos.top+pos.height+'px',left:pos.left+20+'px'});
	 jQuery("#num_input").show();
	 sortobj.oM=this;
     sortobj.inoM=true;
  },function(){
     sortobj.inoM=false;
     sortobj.hide();
  });
  jQuery("#in_enter").click(function(){
	    sortobj.add();
  });
  jQuery("#num_input").hover(function(){
     sortobj.inNum=true;
  },function(){
     sortobj.inNum=false;
     sortobj.hide();
  });
}
function appesort(cnum)
{

   jQuery(cnum).hover(function(){
     var pos=new findPos(this);
      jQuery("#in_num").attr("value",'')
     jQuery("#num_input").css({top:pos.top+pos.height+'px',left:pos.left+20+'px'});
	 jQuery("#num_input").show();
	 sortobj.oM=this;
     sortobj.inoM=true;
  },function(){
     sortobj.inoM=false;
     sortobj.hide();
  });
}
function appimg()
{
  jQuery(".selectimg").click(function(){
    dialogimg(this.title);
  });
}
function dialogimg(img)
{
 var otherref="toolbar=no,location=no,resizable=no,scrollbars=no,height=400,width=700,left=200,top=100";
 window.open("editor/editor/dialog/selectpic.php?inlinkid="+img+"&formName=mainform",'select',otherref);    
}
function preiimgswf(preid,priname)
{
  if(priname=="") return;
  if(!($(preid))) return;
  extname="";
	var w=priname.split("_");
	if(w[w.length-1])
	{
	  var t=w[w.length-1];
	  var s=t.split(".");
	  if(!isNaN(s[0]))
        imgheight=s[0];
      if(s[1])
	  extname=s[1];
	}
	if(!isNaN(w[w.length-2]))
	{
      imgwidth=w[w.length-2];
	}
   if(extname=='')
   {
     w=priname.split(".");
	 extname=w[w.length-1];
   }
   if(imgheight=='')
   {
     imgheight=120;
   }
   if(imgwidth=='')
   {
     imgwidth=120;
   }
   if(arguments.length==4)
   {
    if(!isNaN(arguments[2]))
    {
	  if(arguments[2]!=''&&arguments[2]>0)
       imgwidth=arguments[2];
    }
    if(!isNaN(arguments[3]))
    {
	 if(arguments[3]!=''&&arguments[3]>0)
     imgheight=arguments[3];
    }
   }
   extname=extname.toLowerCase();
   if(extname=='swf')
	{
   		var e= document.createElement( 'EMBED' ) ;

		e.setAttribute('src', priname ) ;
		e.setAttribute('type', 'application/x-shockwave-flash' ) ;
		e.setAttribute('width', imgwidth ) ;
		e.setAttribute('height', imgheight ) ;
        $(preid).innerHTML="";
		$(preid).appendChild( e ) ;
    }
    if(extname=='jpg'||extname=='gif'||extname=='png')
	{
   		var e= document.createElement( 'img' ) ;

		e.setAttribute('src', priname ) ;
		e.setAttribute('width', imgwidth ) ;
		e.setAttribute('height', imgheight ) ;
        $(preid).innerHTML="";
		$(preid).appendChild( e ) ;
    }
}
function fadeUp(element,red,green,blue) {
  if (element.fade) {
    clearTimeout(element.fade);
  }
  element.style.backgroundColor = "rgb("+red+","+green+","+blue+")";
  if (red == 255 && green == 255 && blue == 255) {
    return;
  }
  var newred = red + Math.ceil((255 - red)/10);
  var newgreen = green + Math.ceil((255 - green)/10);
  var newblue = blue + Math.ceil((255 - blue)/10);
  var repeat = function() {
    fadeUp(element,newred,newgreen,newblue)
  };
  element.fade = setTimeout(repeat,100);
}
function getlogoAttr(imgwidth,imgheigth,url)
{
  if(url==""){  alert(lang['file_empty']); return false; } 
  	var w=url.split("_");
	img_width=0;

	if(w[w.length-1])
	{
	  var t=w[w.length-1];
	  var s=t.split(".");
	  if(!isNaN(s[0]))
        img_height=s[0];
	}
	if(!isNaN(w[w.length-2]))
	{
      img_width=w[w.length-2];
	}
	if(img_width==0)
	{
	  alert(lang['file_type']);
	  return false;
	}
  if($(imgwidth)) $(imgwidth).value=img_width;
  if($(imgheigth)) $(imgheigth).value=img_height;
}
function post_post(result){
  if(result)
  {
   showmsg("#",{title:lang['article_edit'],msg:lang['wait'],ajax:false},function(data){  });
   $('menuform').request({
   parameters: { ajax:'1'},
   onComplete:function(msg){ show_msg.addcontent(msg.responseText); hidemsg(2); }
   });  
  }
  return true; 
}
function editor_post(result){
  if(result)
  {
	      var oeditor=FCKeditorAPI.GetInstance("content");
    oeditor.UpdateLinkedField(); 
   showmsg("#",{title:lang['article_edit'],msg:lang['wait'],ajax:false},function(data){  });
   $('menuform').request({
   parameters: { ajax:'1'},
   onComplete:function(msg){ show_msg.addcontent(msg.responseText); hidemsg(2); }
   });  
  }
  return true; 
}
function post_bind()
{
  valid = new Validation('menuform',{immediate : true,onFormValidate:post_post});
}
function post_editor()
{
  valid = new Validation('menuform',{immediate : true,onFormValidate:editor_post});
}