//@memo: create by liujy at 2008-06-05 openrace@gmail.com
//@func: some base functions

function $(str) 
{
  if(document.getElementById && document.getElementById(str)) return document.getElementById(str);
  else if (document.all && document.all(str)) return document.all(str);
  else if (document.layers && document.layers[str]) return document.layers[str];
  return false; 
}

function toStr(val)
{
   if (!val) return '';
   else return val;
}

function toDstr(val, dval)
{
   if (toStr(val)=='') return dval;
   else return val;
}

function trim(str)
{
   return str.replace(/(^\s*)|(\s*$)/g, "");
}

function lenb(str)
{
   return str.replace(/[\u0391-\uFFE5]/g, "**").length;
}

function isMobile(str)
{
  var reg = /^((\(\d{2,3}\))|(\d{3}\-))?((13\d{9})|(15\d{9}))$/;
  if(reg.test(trim(str))) return true;
  return false;
}

function isPhone(str)
{
  //var reg = /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/;
  //包括免费电话(400-200-4564)固定电话(020-2222222,2222222)
  var reg = /^((\d{3}\-)(\d{3}\-)(\d{4}))?((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?([1-9]\d{6,7})?$/;
  if(reg.test(trim(str)) && lenb(trim(str))<14) return true;
  return false;
}

function isStr(str)
{
   var reg = /^[{ .~!@#^&*_\-}A-Za-z0-9]+$/;
   if (reg.test(str)) return true;
   return false;
}

function isCnStr(str)
{
   var reg = /^[\u0391-\uFFE5]+$/;
   if (reg.test(str)) return true;
   return false;
}

function isEnStr(str)
{
   var reg = /^[{ }A-Za-z]+$/;
   if (reg.test(str)) return true;
   return false;
}

function isChar(str)
{
   var reg = /^[A-Za-z ]+$/;
   if (reg.test(str)) return true;
   return false;
}

function isAllStr(str)
{
   var reg = /^[{ .~!@#^&*_,;\-}A-Za-z0-9\u0391-\uFFE5]+$/;
   if (reg.test(str)) return true;
   return false;
}

function isZipCode(str)
{
  var reg = /^\d{6}$/;
  if(reg.test(trim(str))) return true;
  return false;
}

function isMail(str)
{
  var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
  if(reg.test(trim(str))) return true;
  return false;
}

function isNum(str)
{
  var reg = /^\d+$/;
  if(reg.test(trim(str))) return true;
  return false;
}

function isInt(str){
   var reg = /^[-\+]?\d+$/;
   if(reg.test(str)) return true;
   else return false;
}

function isDbl(str)
{
   var reg = /^[-\+]?\d+(\.\d+)?$/;
   if(reg.test(str)) return true;
   else return false;
}

function toFlt(val,l)
{
   if (!val || val=='') return 0.0;
   var num = 0.0;
   try
   {
      num = parseFloat(val);
   }
   catch (e)
   {
      num = 0.0;
   }

   return fmtNum(num,l);
}

function fmtNum(num, len)
{
   if (isNaN(len)||len==null || len<0) len = 0;
   return Math.round(num * Math.pow(10,len)) / Math.pow(10,len);
}

function toDint(val, dval)
{
   if (toInt(val)<1) return dval;
   else return val;
}

function toInt(val)
{
   if (!val || val=='') return 0;
   var num = 0;
   try
   {
      num = parseInt(val);
   }
   catch (e)
   {
      num = 0;
   }
   return num;
}

//添加cookie
function setCookie(cname,value,days)
{
   var exdate=new Date();
   exdate.setTime(exdate.getTime()+(days*1000*60*60*24));
   document.cookie=cname+"="+escape(value)+((days==null)?"":";expires="+exdate+";path=/");
}

//取得cookie
function getCookie(c_name)
{
   if (document.cookie.length>0)
   {
      c_start=document.cookie.indexOf(c_name + "=");
      if (c_start!=-1)
      {
         c_start=c_start + c_name.length+1 ;
         c_end=document.cookie.indexOf(";",c_start);
         if (c_end==-1) c_end=document.cookie.length;
         return unescape(document.cookie.substring(c_start,c_end));
      }
   }
   return '';
}
