//given the value, str_trim trims down the string from all padded whitespaces...
function str_trim(str)
{	
	if(str.length > 0)
		while(str.charAt(0)==' ')
			str = str.substr(1);
		
	if(str.length > 0)
		while(str.charAt((str.length - 1))==' ')
			str = str.substring(0, str.length-1);
	
	return str;
}
function checkNum()
{
	var carCode = event.keyCode;
	
	if ((carCode < 48) || (carCode > 57))
	{
		//alert(carCode);
		alert('Please enter only numeric values.');
		event.cancelBubble = true;
		event.returnValue = false;
	}
} 
function checkEmail(x)
{
	a=new Array();
	s=x.value;
	
	for(i=0; i<s.length; i++)
		a[i]=s.charAt(i);

	dot = s.indexOf(".");
	at   = s.indexOf("@");

	if (dot == -1 || at == -1)
	{
		x.focus()
		alert ("Please Check Email Address");
		return 1;
	}

	str1=s.substring(dot+1,s.length);
	str2=s.substring(at+1, dot);
	str3=s.substring(0,at);

	if((str1.length==0)||(str2.length==0)||(str3.length==0))
	{
		x.focus()     
		alert ("Please Check Email Address");
		return 1;
	}

	return 0;
}


function trim(inputString) 
{
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") {
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") {
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) {
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length);
   }
   return retValue;
}

function checkSpace(box)
{
	var val = box.value
	var carCode = event.keyCode;
	
	if(val=="")
	{			
		if ( carCode == 32) 
		{			
			event.cancelBubble = true;
			event.returnValue = false;
			return;
		}
	}	
}


function GoToPage(page)
{
	window.document.location.href=page;
}

function CheckForm(frm,dop)
{	
	if(dop == "")
	{
		alert("Please Enter Date.");
		return false;
	}
}

function MemberValidate()
{
	var frm = document.frm_memberlogin;

	if(frm.txtlogin.value=="")
	{
		frm.txtlogin.focus();
		alert("Please Enter Member Login ID!")
		return false;
	}
	if(frm.txtpasswd.value=="")
	{
		frm.txtpasswd.focus();
		alert("Please Enter Member Password!")
		return false;
	}

	frm.txtpasswd.value = hex_md5(frm.txtpasswd.value); //md5 encr
	return true;
}

function CommentValidate()
{
	var frm = document.frm_com;
	
	if(str_trim(frm.loggedin_flag.value) == -1)
	{
		if(str_trim(frm.txtname.value)=="")
		{
			alert("Please Enter Name.");
			frm.txtname.focus();
			return false;
		}
		if(str_trim(frm.txtemail.value)=="")
		{
			alert("Please Enter Email ID.");
			frm.txtemail.focus();
			return false;
		}
		if(checkEmail(frm.txtemail))
		{
			frm.txtemail.focus();
			return false;
		}
	}
	
	if(frm.txttitle.value=="")
	{
		frm.txttitle.focus();
		alert("Please Enter The Title.")
		return false;
	}
	
	if(frm.txtcmnt.value=="")
	{
		frm.txtcmnt.focus();
		alert("Please Enter Comment")
		
		return false;
	}
	
	// validate txtverify here (if captcha_allowed = 1)
	//alert(captcha_allowed);
	
	if(frm.captcha_allowed.value)	
	{
	if(frm.txtverify.value=="")
	 {
		frm.txtverify.focus();
		alert("Please Enter The Code.")
		return false;
	 }
	}
	
 return true;
	
	}
	



function DebateValidate()
{
	var frm = document.frm_com;
	
	if(str_trim(frm.loggedin_flag.value) == -1)
	{
		if(str_trim(frm.txtname.value)=="")
		{
			alert("Please Enter Name.");
			frm.txtname.focus();
			return false;
		}
		if(str_trim(frm.txtemail.value)=="")
		{
			alert("Please Enter Email ID.");
			frm.txtemail.focus();
			return false;
		}
		if(checkEmail(frm.txtemail))
		{
			frm.txtemail.focus();
			return false;
		}
	}
	
	var s = GetSelectedRadioValue(frm, 'rdflag');
	
	if(s=="")
	{
		alert("Please select Your Opinion about the article");
		return false;
	}
	
	if(frm.txttitle.value=="")
	{
		frm.txttitle.focus();
		alert("Please Enter The Subject/Title.")
		return false;
	}
	if(frm.txtmsg.value=="")
	{
		frm.txtmsg.focus();
		alert("Please Enter Message")
		return false;
	}
	
	
	return true;
}

function GetSelectedRadioValue(frm_obj, radio_name)
{
	var frm = frm_obj;
	if(!frm) return "";

	for(var i=0; i < frm.elements.length; i++)
		if( (frm.elements[i].type == 'radio') && (frm.elements[i].name == radio_name) && (frm.elements[i].checked))
			return frm.elements[i].value;
			
	return "";
}

function OpenPopup(file)
{
	win = window.open(file,'Popup','width=600,height=450,scrollbars=1');
	WindowXPosition(600,450,win);
}

function SetFocus(obj)
{
	obj.focus();
	obj.select();
}

function WindowXPosition(widthX,heightX,windowName)
{
	var width = (screen.width);
	var height = (screen.height - 25);
	var centerleft = 0;
	var centertop = 0;
	var centerleft = (width/2) - (widthX/2);
	var centertop = (height/2) - (heightX/2);
	var width=widthX;
	var height=heightX;
	windowName.moveTo(centerleft,centertop);
	windowName.resizeTo(width, height);
	windowName.focus();
}

function WindowXXPosition(widthX,heightX,windowName) //same as above, only it takes %age vals as params for width n height
{
	var width = (screen.width);
	var height = (screen.height - 25);
		
	var wt = (width * widthX) / 100;
	var ht = (height * heightX) / 100;

	var centerleft = (width/2) - (wt/2);
	var centertop = (height/2) - (ht/2);

	windowName.resizeTo(wt, ht);
	windowName.moveTo(centerleft,centertop);
	windowName.focus();
}

function validate_date(day,month,year)
{
	// since jan equals one and not zero, hence thirteen elements in the array.  
	var no_of_days_in_month = new Array(0,31,28,31,30,31,30,31,31,30,31,30,31)
	
	if (month >= 1 && month <= 12 && day >=  1 && day <= 31 && year >= 0)
	{
		//Handling february, special case. 
		if (month == 2)
		{
			if ( (year%4==0 && year%100 != 0) || year%400 == 0 )
				no_of_days_in_month[month]=29
		}

		if (day >= 1 && day <= no_of_days_in_month[month])
			return true;
		else
			return false;
	}
	else
		return false;

}

function validateMonth(field, bypassUpdate) 
{
  var input = field.value
  if (isEmpty(input)) {
    alert("Be sure to enter a month value.")
    select(field)
    return false
  } else {
    input = parseInt(field.value, 10)
    if (isNaN(input)) {
      alert("Entries must be numbers only.")
      select(field)
      return false
    } else {
      if (!inRange(input,1,12)) {
         alert("Enter a month between 1 (January) and 12 (December).")
         select(field)
         return false
      }
    }
  }
  if (!bypassUpdate) {
      calcDate()
  }
  return true
}

function validateDate(field) {
  var input = field.value
  if (isEmpty(input)) {
    alert("Be sure to enter a date value.")
    select(field)
    return false
  } else {
    input = parseInt(field.value, 10)
    if (isNaN(input)) {
      alert("Entries must be numbers only.")
      select(field)
      return false
    } else {
      var monthField = document.frmob.mnth
      if (!validateMonth(monthField, true)) return false
      var monthVal = parseInt(monthField.value, 10)
      var monthMax = new Array(31,31,29,31,30,31,30,31,
                               31,30,31,30,31)
      var top = monthMax[monthVal]
	  
	  if(document.frmob.mnth.value==2 && document.frmob.date.value>=29)
	  {
	  	
	  	 if(!checkYear(document.frmob.yr.value))
		 {
		 alert("Enter a date between 1 and 28");
		 select(document.frmob.date)
		 return false;
		 }
		 else
		 {
		 	if(document.frmob.date.value>29)
			{
			 alert("Enter a date between 1 and 29");
			 select(document.frmob.date)
			 return false;
	  		}
			else
			return true;
	 	}
	  }
	  else
      if (!inRange(input,1,top)) {
        alert("Enter a date between 1 and " + top + ".")
        select(field)
        return false
      }
    }
  }
  calcDate()
  return true
}

function validateYear(field) {
  var input = field.value
  if (isEmpty(input)) {
    alert("Be sure to enter a year value.")
    select(field)
    return false
  } else {
    input = parseInt(field.value, 10)
    if (isNaN(input)) {
      alert("Entries must be numbers only.")
      select(field)
      return false
    } else {
      if (!inRange(input,1900,2007)) {
        alert("Enter a year between 1900 and 2007.")
        select(field)
        return false
      }
    }
  }
  calcDate()
  return true
}


function checkYear(year) { 
return (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) ? 1 : 0;
}

function select(field) {
  field.focus()
  field.select()
}


function calcDate()
 {
  var mm = document.frmob.month.value
  var dd = document.frmob.date.value
  var yy = document.frmob.year.value
  
  if(mm.length==1)
  mm="0"+mm
  
  if(dd.length==1)
  dd="0"+dd
  
  document.frmob.txtdob.value = yy + "-" + mm + "-" + dd
}
function checkForm(form) {
  if (validateMonth(form.month)) {
    if (validateDate(form.date)) {
      if (validateYear(form.year))
	   {
	  	return true
      }
    }
  }
  return false
}

function inRange(inputStr, lo, hi) 
{
  var num = parseInt(inputStr, 10);
  if (num < lo || num > hi) 
  {
    return 1;
  }
  return 0;
}

function WindowPosition(widthX,heightX,windowName)
{
	var width = (screen.width);
	var height = (screen.height - 25);
	var centerleft = 0;
	var centertop = 0;
	var centerleft = (width/2) - (widthX/2);
	var centertop = (height/2) - (heightX/2);
	var width=widthX;
	var height=heightX;
	windowName.moveTo(centerleft,centertop);
	windowName.resizeTo(width, height);
	windowName.focus();
}

function CommentsPopup(contactid)
{
	var file = "popup_contact_comments.php?id="+contactid;
	win = window.open(file,'Popup','width=600,height=450,scrollbars=1,resizable=1');
	WindowPosition(600,450,win);
}

function forgotpass()
{
info="forgotpass.php";
window.open(info,"oy","menubars=0,width=400,height=200,scrollbars=yes");
}

function thanku()
{
info="thanku.php";
window.open(info,"oy","menubars=0,width=400,height=200,scrollbars=yes");
}

function sorry()
{
info="sorry.php";
window.open(info,"oy","menubars=0,width=400,height=200,scrollbars=yes");
}

function thankyou()
{
info="thankyou.php";
window.open(info,"oy","menubars=0,width=400,height=200,scrollbars=yes");
}

function clearText(txt)
{
	txt.value="";
}

function refersite()
{
info="refer_this_site.php";
window.open(info,"oy","menubars=0,width=430,height=230,scrollbars=no");
}

function sendpage()
{

//doc_obj = window.document;
//alert(doc_obj.title);

info="send_page.php";
window.open(info,"oy","menubars=0,width=430,height=230,scrollbars=yes");
}

/*
function ChangeRank(mode, fld, fld_val)
{
	var str = "";

	if(fld != "" && fld_val != "")
		str = "&fld=" + fld + "&fld_val=" + fld_val;

	var file = "rank-update.php?mode="+mode+str;
	win = window.open(file,'ChangeRank','width=900,height=600,scrollbars=1,resizable=1');
	WindowXPosition(900,600,win);
}


*/

function ChangeRank(mode, val,type)
{
	id_param = "";
	tp_param = "";
	if(val!='')
		id_param = "&id="+val;
	if(type != '')
		tp_param = "&type="+type;
		
	var file = "changerank.php?mode1="+mode+id_param+tp_param;
	win = window.open(file,'ChangeRank','scrollbars=1,width=600,height=450');
	WindowXPosition(600,450,win);
}

function validate_email(email_txt) 
{
	var emailReg = "^[\\w-_\.]*[\\w-_\.]\@([\\w].+)\.[\\w]$";
	var regex = new RegExp(emailReg);
	return regex.test(email_txt);
}

function DeleteData(txt)
{
	var msg = "You Are About To Delete this " + txt + "! Continue?";

	if(confirm(msg))
		return true;
	else
		return false;
}

function TogglePic(img_nm, a_nm)
{
	var a_obj = document.getElementById(a_nm);
	var img_obj = document.getElementById(img_nm);
	
	if(!a_obj || !img_obj)
		return false;
	
	if(img_obj.style.display=='none')
	{
		a_obj.style.display = 'none';
		img_obj.style.display = 'block';
	}
	else
	{
		a_obj.style.display = '';
		img_obj.style.display = 'none';
	}
}

function ConfirmDelete(txt, page)
{
	var msg = "You Are About To Delete this " + txt + "! Continue?";

	if(confirm(msg))
		window.document.location.href=page;
	else
		return false;
}

function ChangeImageRank(mode, fld, fld_val, negative_flag)
{
	var str = "";

	if(fld != "" && fld_val != "")
		str = "&fld=" + fld + "&fld_val=" + fld_val;

	if(fld != "" && fld_val != "")
		str += "&negative=" + negative_flag;

	var file = "image-rank-update.php?mode="+mode+str;
	win = window.open(file,'ChangeRank','width=950,height=600,scrollbars=1,resizable=1');
}

function ShowContent(file_name)
{	
		if(document.getElementById('div_window'))
		{
			var dobj = document.getElementById('div_window');
			
			if(dobj.style.display == "none")
			{
				dobj.style.display = "block";
				ToggleComboBoxVisibility(false);
			}
			
			var iobj = document.getElementById("iframe_content");
			iobj.src = file_name;
		}
	
}

function HideContent()
{
	if(document.getElementById('div_window'))
	{
		var dobj = document.getElementById('div_window');
		
		if(dobj.style.display == "block")
		{
			dobj.style.display = "none";
			ToggleComboBoxVisibility(true);
		}
	}
}

function divX(div_width) // width
{
	var screen_width = (screen.width);
	var width_offset = posLeft();
	var x = (width_offset + (screen_width/2) - (div_width/2));
	return x;
}

function divY(div_height) // height
{
	var screen_height = (screen.height - 100);
	var height_offset = posTop();
	var y = height_offset + (screen_height/2) - (div_height/2);
	return y;
}

function posTop() 
{
	return (typeof window.pageYOffset != 'undefined') 
			? window.pageYOffset : (document.documentElement && document.documentElement.scrollTop) 
									? document.documentElement.scrollTop: document.body.scrollTop;
}

function posLeft() 
{
	return (typeof window.pageXOffset != 'undefined') 
			? window.pageXOffset : (document.documentElement && document.documentElement.scrollLeft) 
									? document.documentElement.scrollLeft: document.body.scrollLeft;
}

function ToggleComboBoxVisibility(disp_flag)
{
	visibility_mode = (disp_flag)? "visible": "hidden";

	for(var i = 0; i < document.forms.length; i++) 
		for(var j=0; j < document.forms[i].elements.length; j++)
			if(document.forms[i].elements[j].type == 'select-one')
				document.forms[i].elements[j].style.visibility = visibility_mode;
}

