function $(id){
return document.getElementById(id);
}

function req(url){
	var f = document.getElementById('requestiframe');
	if(!f){
		f = document.createElement('iframe');
		f.id='requestiframe';
		f.style.display='none';
		document.body.appendChild(f);
	}
	f.src=url;
}

function radiovalue(name){
var items = document.getElementsByTagName("input");
for(var i=0;i<items.length;i++){
var it = items[i];
if(it.name==name && it.checked){
return it.value;
}
}
return 0;
}

function setradio(name, value){
var els = document.getElementsByTagName("INPUT");
for(var i=0;i<els.length;i++){
	var el = els[i];
	if(el.name==name && el.value == value){
		el.checked=true;
	}
}
}
function setselect(name, value){
var els = document.getElementsByTagName("SELECT");
for(var i=0;i<els.length;i++){
	var el = els[i];
	if(el.name==name){
		el.value=value;
	}
}
}
function order(action, column){
var text = document.getElementById(action+'.order');
var value=text.value;
var desc = column+' desc';
if(value == column){
value=desc;
}else if(value == desc){
value='';
}else{
value=column;
}
text.value=value;
text.form.submit();
}

function selecta(all){
	var	is = document.getElementsByTagName('input');
	var checked = all.checked;
	for(var i=0; i<is.length; i++){
		if(is[i].name == all.name && is[i].type == 'checkbox'){
			is[i].checked = checked;
		}
	}
}
function el(id){
if(document.getElementById){
return document.getElementById(id);
}else{
return window[id];
}
}
function winopen(url, height, width){

if(!height){
height=500;
}
if(!width){
width=600;
}
var params='height='+height+', width='+width+',top=0, left=0,  toolbar=no, menubar=no, scrollbars=yes, resizable=yes,location=no, status=no';
window.open(url,'',params);
}

function winopen2(url,height,width){ 
	l = width;
	t = height;
	var win = window.open(url,'','scrollbars=yes,width='+l+',height='+t+',top='+(screen.availHeight/3-t/2)+',left='+(screen.availWidth/2-l/2));  
	win.focus();
}

/* begin ie input onfocus style */
function focustyle(type, tag, id) {
if (window.attachEvent) {
window.attachEvent("onload", function() {
var els=(id==null)?document.getElementsByTagName(tag):document.getElementById(id).getElementsByTagName(tag);
type(els);
});
}
}
elfocus=function(els) {
for(var i=0; i<els.length; i++){
els[i].onfocus=function() {
this.className+=" focus";
}
els[i].onblur=function() {
this.className=this.className.replace(new RegExp(" focus\\b"), "");
}
}
}
//focustyle(elfocus, "input");
//focustyle(elfocus, "textarea");
/* end ie input onfocus style */

/* begin calendar */
var newDate=new Date();
var todayStr;
var inputObj;
var strCal;
var cal;
var xOffSet;
var sep = "-";
function calendar(obj){
	inputObj=obj;
	if(!cal){
		cal = obj.document.createElement("DIV");
		cal.style.cssText="position:absolute;display:none;";
		obj.document.body.appendChild(cal);
	}
	if(obj.value.match(/^\d{4}\-\d{2}\-\d{2}$/)){
		todayStr=obj.value;
		inCalendar(todayStr);
	}else{
		todayStr = (10000+newDate.getFullYear()).toString().substring(1,5)
				 +sep+(101+newDate.getMonth()).toString().substring(1,3)
				 +sep+(100+newDate.getDate()).toString().substring(1,3);
		obj.value=todayStr;
		inCalendar(todayStr);
	}
}
function setValue(obj){
			todayStr = cal.firstChild.firstChild.childNodes[0].childNodes[2].innerText;
			todayStr = todayStr.substring(0,4)
					 +sep+todayStr.substring(5,7)
					 +sep+(100+parseInt(obj.innerText)).toString().substring(1,3);
			cal.style.display='none';
			inputObj.value=todayStr;
}
function cOver(obj){
	obj.style.filter='progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#FFFFFF, EndColorStr=#99ccff)';
}
function cOut(obj){
	obj.style.filter='';
}
function nOver(obj){
	obj.style.filter='progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#99ccff, EndColorStr=#FFFFFF)';
}
function nOut(obj){
	obj.style.filter='';
}
function inCalendar(value){
	var y = parseInt(value.substring(0,4),10);
	var m = parseInt(value.substring(5,7),10)-1;
	var d = parseInt(value.substring(8,10),10);
	var ytoday = newDate.getFullYear();
	var mtoday = newDate.getMonth();
	var dtoday = newDate.getDate();
	
	strCal   = "<table onselectstart=return(false) class=aCalendar><tr><td class=aCalendar onmouseover=nOver(this) onmouseout=nOut(this) width=30 onClick=inCalendar('"+prevN(value)+"')><em>&lt;&lt;</em></td>";
	strCal	+= "<td class=aCalendar width=30 onmouseover=nOver(this) onmouseout=nOut(this) onClick=inCalendar('"+prevM(value)+"')><em>&lt;</em></td>";
	strCal	+= "<th class=aCalendar nowrap onclick=closeCalendar() colspan=3>"+getYearMonth(value)+"</th>";
	strCal	+= "<td class=aCalendar width=30 onmouseover=nOver(this) onmouseout=nOut(this) onClick=inCalendar('"+nextM(value)+"')><em>&gt;</em></td>";
	strCal	+= "<td class=aCalendar width=30 onmouseover=nOver(this) onmouseout=nOut(this) onClick=inCalendar('"+nextN(value)+"')><em>&gt;&gt;</em></td>";
	strCal	+= "</tr><tr onclick=closeCalendar()><td class=sunday>Sun</td><td class=aCalendar>Mon</td><td class=aCalendar>Tue</td><td class=aCalendar>Wed</td><td class=aCalendar>Thu</td><td class=aCalendar>Fri</td><td class=saturday>Sat</td></tr>";
	var day = new Date(y,m,1).getDay()
	var monthsdays = new Array(31,28,31,30,31,30,31,31,30,31,30,31)
	var daysinmonth = monthsdays[m]
	if(m==1 && ((y%4==0 && y%100!=0) || y%400==0)) daysinmonth++
	var lastMonth = (m+11)%12
	var daysLastMonth = monthsdays[lastMonth]
	if(lastMonth==1 && ((y%4==0 && y%100!=0) || y%400==0)) daysLastMonth++
	
	for(var i=0,j=1;i<=41;i++){
		if(i%7==0)strCal+="<tr>"
		if(i<day){
			strCal += "<td class=bCalendar onmouseover=nOver(this) onmouseout=nOut(this) onclick=inCalendar('"+prevM(value)+"')>"+(daysLastMonth-day+i+1)+"</td>"
		}
		else if(i<day+daysinmonth){
			if(j==d){
				strCal+="<td class=selectday onmouseover=cOver(this) onmouseout=cOut(this) onclick=setValue(this)>"+j+"</td>";
			}else if(y==ytoday && m==mtoday && j==dtoday){
				strCal+="<td class=today onmouseover=cOver(this) onmouseout=cOut(this) onclick=setValue(this)>"+j+"</td>";
			}else if(i%7==0)
				strCal+="<td class=sunday onmouseover=cOver(this) onmouseout=cOut(this) onclick=setValue(this)>"+j+"</td>";
			else if(i%7==6)
				strCal+="<td class=saturday onmouseover=cOver(this) onmouseout=cOut(this) onclick=setValue(this)>"+j+"</td>";
			else strCal+="<td class=aCalendar onmouseover=cOver(this) onmouseout=cOut(this) onclick=setValue(this)>"+j+"</td>";
			j++;
		}
		else strCal+="<td class=nCalendar onmouseover=nOver(this) onmouseout=nOut(this) onclick=inCalendar('"+nextM(value)+"')>"+(i-daysinmonth-day+1)+"</td>";
		if(i%7==6)strCal+="</tr>"
	}
	strCal	+= "</table>";
cal.innerHTML=strCal
xOffSet=xoffset(inputObj)
cal.style.pixelLeft=xOffSet.l
cal.style.pixelTop=xOffSet.t+inputObj.offsetHeight+1
cal.style.display='block'
}
/* end calendar */
function prevN(value){
	return (parseInt(value.substring(0,4),10)+49999).toString().substring(1,5)+value.substring(4)
}
function prevM(value){
	this.y
	this.m = parseInt(value.substring(5,7),10)-1
	if(this.m==0){
		return prevN(value.substring(0,5)+"12"+value.substring(7))
	}else{
		return value.substring(0,5)+(100+this.m).toString().substring(1,3)+value.substring(7)
	}
}
function nextN(value){
	return (parseInt(value.substring(0,4),10)+40001).toString().substring(1,5)+value.substring(4)
}
function nextM(value){
	this.y
	this.m = parseInt(value.substring(5,7),10)+1
	if(this.m==13){
		return nextN(value.substring(0,5)+"01"+value.substring(7))
	}else{
		return value.substring(0,5)+(100+this.m).toString().substring(1,3)+value.substring(7)
	}

}
function getYearMonth(value){
	return value.substring(0,4)+"-"+value.substring(5,7);
}
function closeCalendar(){
	cal.style.display='none'
}
function xoffset(e){
	this.t = e.offsetTop
	this.l = e.offsetLeft
	while(e=e.offsetParent){
		this.t += e.offsetTop
		this.l += e.offsetLeft
	}
	return this;
}
function mydate(){
WdatePicker();
}
function mytime(){
WdatePicker({isShowOthers:true,dateFmt:'yyyy-MM-dd HH:mm:ss'});
}
function mystr(){
	WdatePicker({isShowOthers:true,dateFmt:'yyyy-MM-dd HH:mm'});
}

function setcookie(name,value,date){
	var today = new Date();
	var expireDay = new Date();
	var msPerMonth = 24*60*60*1000*date;
	expireDay.setTime( today.getTime() + msPerMonth );
	document.cookie = name+'='+value+';expires=' + expireDay.toGMTString();
}

function getcookie(key){
	var search = key + "=";
	begin = document.cookie.indexOf(search);
	if (begin != -1) {
	  begin += search.length;
	  end = document.cookie.indexOf(";",begin);
	  if (end == -1) end = document.cookie.length;
	  return document.cookie.substring(begin,end);
	}
}

function menu(){
	var as = document.getElementById('a').getElementsByTagName('a');
	for(var i=0;i<as.length;i++){
		if(as[i].href == location.href){
			as[i].style.fontWeight='bold';
			break;
		}
	}
}
function menu2(menucss){
	var as = document.getElementById('a').getElementsByTagName('a');
	for(var i=0;i<as.length;i++){
		if(as[i].href == location.href){
			as[i].className=as[i].className+" "+menucss;
			break;
		}
	}
}

function subnav(sub) {
	sub = document.getElementById(sub);
	sub.style.display = "block";
}
function imagezoom(e) {
	if (e.style.position != "absolute") {
		e.style.position = "absolute";
		e.style.left = document.body.clientWidth / 2 - 940 / 2;
		e.style.top = 450;
		e.style.width = 940;
	} else {
		e.style.position = "";
		e.style.width = 637;
	}
}
var lastq;
function da(q) {
	if (lastq) {
		lastq.style.display = "none";
	}
	lastq = q.nextSibling;
	lastq.style.display = "";
}

function moveleft(id,tar){
	var list=document.getElementById(id).getElementsByTagName(tar);
	var p=list[0].parentNode;
	p.appendChild(list[0]);
}
function moveright(id,tar){
	var list=document.getElementById(id).getElementsByTagName(tar);
	var p=list[0].parentNode;
	p.insertBefore(list[list.length-1],list[0]);
}
function movelefts(id,tar,num){
  for(var i=0;i<num;i++){
	var list=document.getElementById(id).getElementsByTagName(tar);
	var p=list[0].parentNode;
	p.insertBefore(list[list.length-1],list[0]);
  }	
}
function moverights(id,tar,num){
  for(var i=0;i<num;i++){
	var list=document.getElementById(id).getElementsByTagName(tar);
	var p=list[0].parentNode;
	p.appendChild(list[0]);
  }	
}
document.execCommand('BackgroundImageCache', false, true);