﻿// JavaScript Document
/*
 * 类名：TagHader
 * 功能：实现标签选项卡切换类
 * 编写：陈满意
 * 日期：2008-12-16
 * 使用方法及参数说明：
 *	 var newtags = new TagHader({Index:0,TagIds:"tagA,tagB,tagC",BodyIds:"bodyA,bodyB,bodyC",Styles:"tagFocus,tagBlur"});
 *   Index : 默认切换到的标签下表，从0开始
 *	 TagIds ：所有标签的ID集合
 *	 BodyIds ：显示内容区域的ID集合，应与TagIds对应
 *   Styles ：标签的样式，第一个为标签获取焦点的样式，第二个为标签失去焦点的样式
 */
TagHader = Class.create();	
TagHader.prototype = {
	Index : -1,
	initialize : function(){
		var Index = -1;
		var optionIndex = 0;
		if (arguments.length > 0) {
			if (typeof arguments[0] == "number" ) {
				Index = arguments[0];
				optionIndex = 1;
			}else
				Index = arguments[0] ? arguments[0].Index :  -1;
		}
		this.options = Object.extend({
				TagIds : null,
				BodyIds : null,
				Styles : null
			},arguments[0]);
		this.Over(Index);
	},
	Over : function(cIndex){
		if(this.Index == cIndex) return;
		if(!$(this._getArr(this.options.TagIds)[cIndex]) || !$(this._getArr(this.options.BodyIds)[cIndex])) return;
		$(this._getArr(this.options.TagIds)[cIndex]).className = this._getArr(this.options.Styles)[0];
		$(this._getArr(this.options.BodyIds)[cIndex]).style.display = "block";
		if(this.Index != null && $(this._getArr(this.options.TagIds)[this.Index])){
			$(this._getArr(this.options.TagIds)[this.Index]).className = this._getArr(this.options.Styles)[1];
			$(this._getArr(this.options.BodyIds)[this.Index]).style.display = "none";
		}
		this.Index = cIndex;
	},
	_getArr : function(str){
		return str.split(',');
	}
}

/*
 * 信息显示页面设置字体大小函数
 */
function setFontSize(sizename){
	var Obj = $("ArticleContent");
	if(!Obj)return;
	if(!sizename)sizename == "AutoFont";
	Obj.className = sizename;
}


/***************************************************************************************
 邮箱登陆方法   - 开始
 ***************************************************************************************/
//邮箱登陆主方法
function EmailLogin(){
    var former = $("PageForm");
	if(!former) return;
	var oldAction = former.action, oldTarget = former.target;
    var emailUid = $("userid"), emailUpw = $("userpassword"), emailSobj = $("saveEmailInfo");
    if(emailUid.value == ""){
        alert("请输入邮箱用户名！");
        emailUid.focus();
        return false;
    }
    if(emailUpw.value == ""){
        alert("请输入邮箱登陆密码！");
        emailUpw.focus();
        return false;
    }
    with(former){
        target = "_blank";
		action = "http://mail.huangshan.gov.cn/rlogin.php";
    }
    former.submit();
    if(emailSobj.checked){
        setCookie("hs_EmailUserId", emailUid.value, 30);
        emailUpw.value = "";
    }else{
        setCookie("hs_EmailUserId", "", 0);
        emailUid.value = "";
        emailUpw.value = "";
    }
    with(former){
        target = oldTarget;
		action = oldAction;
    }
}
//输入框回车出发登陆时间句柄
function EnailSubmitHander(){
    var k=window.event ? event.keyCode : event.which;
    if(k==13){
        EmailLogin();
    }                            
}
//从Cookie中读取用户信息初始值
function InitEmailInfo(){
    var emailUid = $("userid"), emailSobj = $("saveEmailInfo");
    var emailUidValue = getCookie("hs_EmailUserId") ? getCookie("hs_EmailUserId") : "";
    if(emailUidValue != ""){
        emailUid.value = emailUidValue;
        emailSobj.checked = true;
    }
}
/***************************************************************************************
 邮箱登陆方法   - 结束
 ***************************************************************************************/


/***************************************************************************************
 Cookie操作方法   - 开始
 ***************************************************************************************/
// 写入Cookie值
function setCookie(name, value) 
{
  var argv = setCookie.arguments;
  var argc = setCookie.arguments.length;
  var expires = (argc > 2) ? argv[2] : null;
  if(expires!=null)
  {
    var LargeExpDate = new Date ();
    LargeExpDate.setTime(LargeExpDate.getTime() + (expires*1000*3600*24));
  }
  document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));
}
// 读取Cookie值
function getCookie(Name)
{
  var search = Name + "="
  if(document.cookie.length > 0) 
  {
    offset = document.cookie.indexOf(search)
    if(offset != -1) 
    {
      offset += search.length
      end = document.cookie.indexOf(";", offset)
      if(end == -1) end = document.cookie.length
      return unescape(document.cookie.substring(offset, end))
     }
  else return ""
   }
}
/***************************************************************************************
 Cookie操作方法   -  结束
 ***************************************************************************************/


/***************************************************************************************
 字符串的自定义方法   - 开始
 ***************************************************************************************/
//返回字符串的长度，汉字为两个字节
String.prototype.Length = function(){
	return this.replace(/[^\x00-\xff]/g,"**").length;
}
//删除字符串中的全角、半角空格
String.prototype.trim = function(){
	var temp = this;
	temp = temp.replace(/ /g,"").replace(/　/g,"");
	return temp;
}
//判断字符串是否为空或仅为空格字符
String.prototype.isNull = function(){
	if(this.trim() == "")
		return true;
	return false;
}
//判断字符串是否为整数
String.prototype.isInt = function(){
    var newPar =/^(-|\+)?\d+$/; 
    return newPar.test(this);
}
//判断字符串是否为日期型数据
String.prototype.isDate = function(formatString){
	var op = this;
	formatString = formatString || "ymd";
	var m, year, month, day;
	switch(formatString){
		case "ymd" :
			m = op.match(new RegExp("^((\\d{4})|(\\d{2}))([-./])(\\d{1,2})\\4(\\d{1,2})$"));
			if(m == null ) return false;
			day = m[6];
			month = m[5]*1;
			year =  (m[2].length == 4) ? m[2] : GetFullYear(parseInt(m[3], 10));
			break;
		case "dmy" :
			m = op.match(new RegExp("^(\\d{1,2})([-./])(\\d{1,2})\\2((\\d{4})|(\\d{2}))$"));
			if(m == null ) return false;
			day = m[1];
			month = m[3]*1;
			year = (m[5].length == 4) ? m[5] : GetFullYear(parseInt(m[6], 10));
			break;
		default :
			break;
	}
	if(!parseInt(month)) return false;
	month = month==0 ?12:month;
	var date = new Date(year, month-1, day);
	return (typeof(date) == "object" && year == date.getFullYear() && month == (date.getMonth()+1) && day == date.getDate());
	function GetFullYear(y){return ((y<30 ? "20" : "19") + y)|0;}
}
/***************************************************************************************
 字符串的自定义方法   - 结束
 ***************************************************************************************/

