// JavaScript Document
function downloadVideo(name)
 {
	alert(name);
	//location.href = name;
	window.open(name,'Video Download');
	
 }
 function add_part_field()
 {
    ///First identify the pos of the new part
    var i,pos;
    var obj5;
    for(i=0;  ; i++)
    {
	obj5 = document.getElementById("part_"+i);	
	if(obj5==null) break;
    }
    pos = i;
    
    var field ="<table width='963' height='45' border='1' bordercolor='#666666' cellspacing='0'><tr><td height='32' width='224'>Part </td><td><label><input name=part_";
    field+=pos;
    field+=" type='text' id=part_";
    field+=pos;
    field+=" size='40' maxlength='200' /></label></td></tr><tr bgcolor='#CCCCCC'><td height='32'>Part URL</td><td><input name=part_url_";
    field+=pos;
    field+=" type='text' id=part_url_";
    field+=pos;
    field+=" size='40' /></td></tr>";
	field+="<tr><td height='32' width='224'>Watch In High Definition</td><td><label><input name=chkbx_";
    field+=pos;
    field+=" type='checkbox' id=new_epi_url_";
   	field+=pos;
	 field+="/></label></td></tr></table>";
    
 //   alert(field);
    
    var obj1 = document.getElementById("add_part");
    if(obj1==null) return;
    var store = obj1.innerHTML;
    if(store==null) return;
    var obj2 = document.getElementById("add_part");
    if(obj2==null) return;
    try
    {
    	obj2.innerHTML = store+field;
    }catch(e)
    {
 //   	alert(exceptionToStr(e));
    }
 }
 function add_episode_field()
 {
    ///First identify the pos of the new episode
    var i,pos;
    var obj5;
    for(i=0;  ; i++)
    {
	obj5 = document.getElementById("epi_"+i);	
	if(obj5==null) break;
    }
    pos = i;
    
    var field ="<table width='963' height='45' border='1' bordercolor='#666666' cellspacing='0'><tr><td height='32' width='224'>Episode </td><td><label><input name=epi_";
    field+=pos;
    field+=" type='text' id=epi_";
    field+=pos;
    field+=" size='40' maxlength='200' /></label></td></tr><tr bgcolor='#CCCCCC'><td height='32'>Episode URL</td><td><input name=epi_url_";
    field+=pos;
    field+=" type='text' id=epi_url_";
    field+=pos;
    field+=" size='40' /></td></tr>";
	field+="<tr><td height='32' width='224'>Watch In High Definition</td><td><label><input name=chkbx_";
    field+=pos;
    field+=" type='checkbox' id=new_epi_url_";
   	field+=pos;
	 field+="/></label></td></tr></table>"; 
    
 //   alert(field);
    
    var obj1 = document.getElementById("add_episode");
    if(obj1==null) return;
    var store = obj1.innerHTML;
    if(store==null) return;
    var obj2 = document.getElementById("add_episode");
    if(obj2==null) return;
    try
    {
    	obj2.innerHTML = store+field;
    }catch(e)
    {
 //   	alert(exceptionToStr(e));
    }
 }
 
  function add_new_episode_field()
 {
    ///First identify the pos of the new episode
    var i,pos;
    var obj5;
    for(i=0;  ; i++)
    {
	obj5 = document.getElementById("new_epi_"+i);	
	if(obj5==null) break;
    }
    pos = i;
    
    var field ="<table width='963' height='45' border='1' bordercolor='#666666' cellspacing='0'><tr><td height='32' width='224'>New Episode </td><td><label><input name=new_epi_";
    field+=pos;
    field+=" type='text' id=new_epi_";
    field+=pos;
    field+=" size='40' maxlength='200' /></label></td></tr><tr bgcolor='#CCCCCC'><td height='32'>New Episode URL</td><td><input name=new_epi_url_";
    field+=pos;
    field+=" type='text' id=new_epi_url_";
    field+=pos;
    field+=" size='40' /></td></tr>";
	field+="<tr><td height='32' width='224'>Watch In High Definition</td><td><label><input name=chkbx_";
    field+=pos;
    field+=" type='checkbox' id=new_epi_url_";
   	field+=pos;
    field+="/></label></td></tr></table>"; 
    
 //   alert(field);
    
    var obj1 = document.getElementById("add_new_episode");
    if(obj1==null) return;
    var store = obj1.innerHTML;
    if(store==null) return;
    var obj2 = document.getElementById("add_new_episode");
    if(obj2==null) return;
    try
    {
    	obj2.innerHTML = store+field;
    }catch(e)
    {
 //   	alert(exceptionToStr(e));
    }
 }  
 
 
  function add_new_part_field()
 {
    ///First identify the pos of the new part
    var i,pos;
    var obj5;
    for(i=0;  ; i++)
    {
	obj5 = document.getElementById("new_part_"+i);	
	if(obj5==null) break;
    }
    pos = i;
    
    var field ="<table width='963' height='45' border='1' bordercolor='#666666' cellspacing='0'><tr><td height='32' width='224'>New Part </td><td><label><input name=new_part_";
    field+=pos;
    field+=" type='text' id=new_part_";
    field+=pos;
    field+=" size='40' maxlength='200' /></label></td></tr><tr bgcolor='#CCCCCC'><td height='32'>New Part URL</td><td><input name=new_part_url_";
    field+=pos;
    field+=" type='text' id=new_part_url_";
    field+=pos;
    field+=" size='40' /></td></tr>";
	field+="<tr><td height='32' width='224'>Watch In High Definition</td><td><label><input name=chkbx_";
    field+=pos;
    field+=" type='checkbox' id=new_part_url_";
   	field+=pos;
    field+="/></label></td></tr></table></table>";
    
 //   alert(field);
    
    var obj1 = document.getElementById("add_new_part");
    if(obj1==null) return;
    var store = obj1.innerHTML;
    if(store==null) return;
    var obj2 = document.getElementById("add_new_part");
    if(obj2==null) return;
    try
    {
    	obj2.innerHTML = store+field;
    }catch(e)
    {
 //   	alert(exceptionToStr(e));
    }
 }
 /************************************************************************************************************************************************************************/
 function add_new_external_link()
 {
    ///First identify the pos of the new episode
    var i,pos;
    var obj5;
    for(i=0;  ; i++)
    {
	obj5 = document.getElementById("new_epi_"+i);	
	if(obj5==null) break;
    }
    pos = i;
    
    var field ="<table width='963' height='45' border='1' bordercolor='#666666' cellspacing='0'><tr><td height='32' width='224'>New Episode </td><td><label><input name=new_epi_";
    field+=pos;
    field+=" type='text' id=new_epi_";
    field+=pos;
    field+=" size='40' maxlength='200' /></label></td></tr><tr bgcolor='#CCCCCC'><td height='32'>New Episode URL</td><td><input name=new_epi_url_";
    field+=pos;
    field+=" type='text' id=new_epi_url_";
    field+=pos;
    field+=" size='40' /></td></tr></table>"; 
    
 //   alert(field);
    
    var obj1 = document.getElementById("add_new_episode");
    if(obj1==null) return;
    var store = obj1.innerHTML;
    if(store==null) return;
    var obj2 = document.getElementById("add_new_episode");
    if(obj2==null) return;
    try
    {
    	obj2.innerHTML = store+field;
    }catch(e)
    {
 //   	alert(exceptionToStr(e));
    }
 }  
 /************************************************************************************************************************************************************************/
 
function exceptionToStr(e)
{
	if (e instanceof EvalError)
	{
		return "EvalError";
	}
	else if( e instanceof RangeError)
	{
		return "RangeError";
	}
	else if(e instanceof ReferenceError)
	{
		return "ReferenceError";
	}
	else if(e instanceof SyntaxError)
	{
		return "SyntaxError";
	}
	else if(e instanceof TypeError)
	{
		return "TypeError";
	}
	else if(e instanceof URIError)
	{
		return "URIError";
	}
	else
	{
		return "UnknownError";
	}

}
 
function change_category()
 {
 
 selectObj = document.getElementById("Category");
 if(selectObj == null) return false;
 // get the index of the selected option 
 var idx = selectObj.selectedIndex; 
 // get the value of the selected option 
 var which = selectObj.options[idx].value;
 location.replace("admin_config.php?cate="+which);
 
 return true;
 
 }
 
 function deleteEpisode(pos)
  {
    //	alert("I am here ..."+pos);
    	
  	var formObj = document.getElementById("upload_tab");
  	
  	if(formObj==null) 
  	{
  //		alert("Could not get form..");
  		return;
  	}
  	var elemObj = document.getElementById("epi_"+pos);
  	try
    	{
  	if(elemObj!=null)
  	{
  //		alert("I am here 2 ...");
  		formObj.removeChild(elemObj);
  	}
  		
  	elemObj = document.getElementById("epi_url_"+pos);
  	
  	if(elemObj!=null)
  	{
  //		alert("I am here 3...");
  		formObj.removeChild(elemObj);	
  	}
  	}catch(ex)
  	{
  //		alert("Exception "+ex.message);
  	}
  }
  
  function checkSubmitData(type,category)
  {
	var i,j;
	var mForm = 0;
	for(i=0;i<window.document.forms.length;i++)
	{
		if(window.document.forms[i].name=="myform") {mForm = window.document.forms[i];break;}
		if(window.document.forms[i].name=="edit_from") {mForm = window.document.forms[i];break;}
	}
	if(mForm == 0 ) return false;
	
	for( i=0; i<mForm.elements.length;i++)
	{
		if(mForm.elements[i].name=="vd_title")
		{
			if(mForm.elements[i].value=="")
			{
				alert("You have to insert a video title");
				return false;
			}
		}
		if(mForm.elements[i].name=="name")
		{
			if(mForm.elements[i].value=="")
			{
				alert("You have to Name of External Type");
				return false;
			}
		}
		if(mForm.elements[i].name=="vd_artist")
		{
			if(mForm.elements[i].value=="")
			{
				if(category==0||category==1)
				{
					alert("You have to give an artist name");
					return false;
				}else
					mForm.elements[i].value="UNKNOWN";
			}
		}
		if(mForm.elements[i].name=="vd_direc")
		{
			if(mForm.elements[i].value=="")
			{
				
				alert("You have to give a director name");
				return false;				
			}
		}
		if(mForm.elements[i].name=="vd_duration")
		{
			var tval = mForm.elements[i].value;
			
			if(isNaN(tval))
			{
				alert("Duration must be a number value");
				return false;				
			}
			if(mForm.elements[i].value=="")
			{

				alert("You have to give a duration");
				return false;				
			}
		}
		/*if(mForm.elements[i].name=="vd_image")
		{
			if(mForm.elements[i].value=="")
			{
				 
				alert("You have to give a preview image location");
				return false;								
			}
		}*/
		
		if(mForm.elements[i].name=="vd_url")
		{
			if(mForm.elements[i].value=="")
			{

				alert("You have to give a video url");
				return false;				
			}
		}
		if(mForm.elements[i].name=="rel_day")
		{
			/*if(mForm.elements[i].value=="")
			{

				alert("You have to provide a valid release day..");
				return false;				
			}*/
			
			if(validateDate(mForm.elements[i]) == false) return false;
		}
		if(mForm.elements[i].name=="rel_month")
		{
			/*if(mForm.elements[i].value=="")
			{

				alert("You have to provide a valid release month..");
				return false;				
			}*/
			if(validateMonth(mForm.elements[i]) == false) return false;
		}
		if(mForm.elements[i].name=="rel_year")
		{
			/*if(mForm.elements[i].value=="")
			{

				alert("You have to provide a valid release year..");
				return false;				
			}*/
			if(validateYear(mForm.elements[i]) == false) return false;
		}
	}
	
	
	for(i=0;category==2||category==3;i++)
	{
		var elem1 = document.getElementById((category==2)?"epi_"+i:"part_"+i);
		var elem2 = document.getElementById((category==2)?"epi_url_"+i:"part_url_"+i);
		
		if(elem1!=null && elem2!=null)
		{
			if(elem1.value=="" || elem2.value=="")
			{
				if(category==2)
					alert("Episode name or url cannot be empty");
				else	
					alert("Part name or url cannot be empty");
					
				return false;				
			}
		}else break;
	}
	
  	return true;
  }
  
  function isEmpty(inputStr) {
      if (inputStr == "" || inputStr == null) {
          return true;
      }
      return false
  }
  // function to determine if value is in acceptable range for this application
  function inRange(inputStr, lo, hi) {
      var num = parseInt(inputStr, 10)
      if (num < lo || num > hi) {
          return false;
      }
      return true;
  }
  // **END GENERIC VALIDATION FUNCTIONS**
  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("Month must be numbers only.");
              select(field);
              return false;
          } else {
              if (!inRange(input,1,12)) {
                  alert("Enter a number between 1 (January) and 12 (December) for Month.")
                  select(field);
                  return false;
              }
          }
      }
      
      return true
  }
  function validateDate(field) {
      var input = field.value
      if (isEmpty(input)) 
      {
          alert("Be sure to enter a day value.");
          select(field);
          return false;
      } else 
      {
          input = parseInt(field.value, 10);
          if (isNaN(input)) 
          {
              alert("Day must be numbers only.");
              select(field);
              return false;
          } 
          else 
          {
              var monthField = document.getElementById("rel_month");
              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(monthVal==2)
              {
              	var yearField = document.getElementById("rel_year");
              	if (!validateYear(yearField)) return false;
              	
              	if(!isLeapYear(yearField)) top--;
              	
              }
              if (!inRange(input,1,top)) 
              {
                  alert("Enter a number between 1 and " + top + ". for Day");
                  select(field);
                  return false;
              }
              
          }
      }
      
      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("Year must be numbers only.");
              select(field);
              return false;
          } else {
              if (!inRange(input,10,50000)) {
                  alert("Enter a number between 10 and 50000 for Year.");
                  select(field);
                  return false;
              }
          }
      }
      
      return true
  }
  function isLeapYear(field)
  {
  	var input = parseInt(field.value, 10);
  	if(((input%400)==0) || ((input%4)==0&&(input%100)!=0)) return true;
  	return false;
  }
  function select(field) {
      field.focus()
      field.select()
  }
  
