//------------------------------------------------------------------------------------------------------------------
var alertArr= Array();
alertArr["N"] ="No Alert";
alertArr["W"] ="Weekly";
alertArr["M"] ="Monthly";
alertArr["Y"] ="Yearly";
var jmonth1;
var jyear1;
function initCalendar(process)
{
	if (process ==0)

	{
		getCalendar('','');
		formEvent('');
		document.getElementById('title').focus();
	}
	else if(process ==1)
	{
		
		dispCurdateEvents(jmonth1,jyear1);
	}
		
}
function createRequestObject()
         {
            var request_o; //declare the variable to hold the object.
            var browser = navigator.appName; //find the browser name
            if(browser == "Microsoft Internet Explorer")
             {
                request_o = new ActiveXObject("Microsoft.XMLHTTP");
             }
            else
             {
               request_o = new XMLHttpRequest();
             }
            return request_o; //return the object
        }

	var http = createRequestObject(); 
//------------------------------------------------------------------------------------------------------------------

	function getCalendar(jmonth,jyear)
		{
		/* Create the request. The first argument to the open function is the method (POST/GET),
			and the second argument is the url.where we getting latest shsre valuues from
			BSE wbsite
			

		*/
		jmonth1 = jmonth;
		jyear1  = jyear;
		var desturl  = getPath()+"/members/getcalendar/?year1="+jyear+"&month="+jmonth+"&test=flag";
		http.open('GET', desturl);
		/* Define a function to call once a response has been received.  */
		http.onreadystatechange = DisplayValues; 
		/* Send the data. We use something other than null when we are sending using the POST
			method. */
		http.send(null);
		
	   }
   
   //------------------------------------------------------------------------------------------------------------------

   function DisplayValues()
	   {
		/* Make sure that the transaction has finished. The XMLHttpRequest object 
			has a property called readyState with several states:
			0: Uninitialized
			1: Loading
			2: Loaded
			3: Interactive
			4: Finished */
			if(http.readyState == 4)
			   { //Finished loading the response
			   
			   
				var response = http.responseText;
				//alert(response);
			   
			 
				document.getElementById('calendar1').innerHTML = response;
				
				initCalendar(1);
				
			 }
	   }
//------------------------------------------------------------------------------------------------------------------

   function formEvent(strEvent)
   {
	  
	  document.getElementById('event1').style.visibility = "visible";
	 // document.getElementById('event1heading').style.visibility = "visible";
	 var chkmail ="checked";
	  if(strEvent !="")
	   {
		  temp = strEvent.split(":|:");
		  eventid = temp[0];
		  title   = temp[1];
		  edate   = temp[2];
		  descr   = temp[3];
		  alert1  = temp[4];
		  malert  = temp[5];
		  if(malert == 0)
		   {
			  chkmail = "";
		   }
		  
		 
	   }
	   else
	   {
		   title   = "";
		   eventid = "";
		   title   = "";
		   edate   = "";
		   descr   = "";
		   alert1   = "";
	   }
		var frm  ="<form name='frmEvent'>" +
				 "<div class='calsubhead2'>Create event</div><table border=0 align=center cellspacing='0' cellpadding='0' width='94%'>"+
				"<tr><td><p style='height:1px;'>&nbsp;</p></td><tr>"+	
		         "<tr><td class='tdrow'>Title</td><td class='tdrow'><input type='text' name='title' id='title' class='textbox1' value='"+title+"'></td><tr>"+
				"<tr><td>&nbsp;</td><tr>"+
				 "<tr><td class='tdrow'>Event Date</td><td class='tdrow'><input type='text' name='eventdate' id='edate' class='textbox1' value='"+edate+"'> "+
				 "<IMG SRC='"+getPath()+"/templates/template1/members/cal_images/icon_calendar.gif' width='12' height='14' id='trigger' border='0'"+ "align='ABSMIDDLE'></td></tr>"+
				"<tr><td>&nbsp;</td><tr>"+
				 "<tr><td class='tdrow' valign='top'>Description</td><td class='tdrow'><textarea class='textarea1' name='description' id='textarea1' >"+descr+"</textarea></td></tr>"+
				"<tr><td>&nbsp;</td><tr>"+
				 "<tr><td class='tdrow'>Alert</td><td class='tdrow'>"+
				 " <select id='alert1' name='alertperiod' class='select1'>"+createselectbox(alert1)+
				 "</select>&nbsp;<input name='mail_alert' id='mailalert1' type='checkbox' value='1' "+chkmail+">Email Alert </td></tr>"+
				"<tr><td>&nbsp;</td><tr>"+
				 "<tr><td >&nbsp;</td><td ><input type='button' value ='Add' onclick='submitEvent()' class='btn'><input type='button' value ='Cancel' onclick='cancelEvent()' class='btn'></td></tr></table><input type='hidden' id='eventid' value='"+eventid+"'></form>";
		
	
		document.getElementById('event1').innerHTML = "";
		//alert(frm);
		document.getElementById('event1').innerHTML = frm;
		callCalendar();
   }
   //------------------------------------------------------------------------------------------------------------------

  function submitEvent()
  {
	  var title    =  document.getElementById('title').value;
	  var edate    =  document.getElementById('edate').value;
	  var descr    =  document.getElementById('textarea1').value;
	  var alert1   =  document.getElementById('alert1').value;
	  var eventid  =  document.getElementById('eventid').value;
	  var mailalert = 0;
	  if(document.frmEvent.mail_alert.checked)
	  {
		
		mailalert  = 1;
	  }
	  
	  if(document.frmEvent.mail_alert.checked)

	  if(title == "")
	  {
		  alert("Please enter a title");
		  document.getElementById('title').focus();
		  return;
	  }
	  else if(edate == "")
	  {
		  alert("Please enter an event date");
		  document.getElementById('edate').focus();
		   return;
	  }
	  if(eventid !="")
	  {
		  var desturl  = getPath()+"/members/addevent/?title="+title+"&edate="+edate+"&descr="+descr+"&alertperiod="+alert1+"&mailalert="+mailalert+"&opt=update&eventid="+eventid;
	  }
	  else
	  {
		  var desturl  = getPath()+"/members/addevent/?title="+title+"&edate="+edate+"&descr="+descr+"&alertperiod="+alert1+"&mailalert="+mailalert+"&opt=add";
	  }

	   
		http.open('GET', noCache(desturl));
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		/* Define a function to call once a response has been received.  */
		http.onreadystatechange = successEvent; 
		
		/* Send the data. We use something other than null when we are sending using the POST
			method. */
		http.send(null);
  }
  //------------------------------------------------------------------------------------------------------------------

function successEvent()
{
	 if(http.readyState == 4)
	   { //Finished loading the response
			   
		   var response = http.responseText;
		   getCalendar('','');  
		   document.getElementById('event1').innerHTML = response;     
		   document.getElementById('event1').style.visibility = "hidden";	
		}
}
//------------------------------------------------------------------------------------------------------------------

function cancelEvent()
{
	document.getElementById('event1').innerHTML = "";     
	document.getElementById('event1').style.visibility = "hidden";
}
//------------------------------------------------------------------------------------------------------------------

function dispEvent(strdate,curdate)
{
	
	var desturl  = getPath()+"/members/addevent/?opt=display&strdate="+strdate+"&curdate="+curdate;
		http.open('GET', desturl);
		
		/* Define a function to call once a response has been received.  */
		http.onreadystatechange = displayEvent; 
		
		/* Send the data. We use something other than null when we are sending using the POST
			method. */
		http.send(null);
}
//------------------------------------------------------------------------------------------------------------------

function displayEvent()
{
	 if(http.readyState == 4)
	   { //Finished loading the response
			   
		   var response = http.responseText;
		   
		   if(response.length >12)
		   {
		   document.getElementById('dispevent1').innerHTML = response; 
		   document.getElementById('dispevent1').style.visibility= "visible";
		   }
		   else
		   {
			
			getCalendar('',''); 
		    document.getElementById('dispevent1').style.visibility = "hidden";
			 
		   }
		   
		}
}
//------------------------------------------------------------------------------------------------------------------

function dispMonthEvents(jmonth,jyear)
{
   
	var desturl  =getPath()+"/members/addevent/?opt=events&month="+jmonth+"&year="+jyear;
		http.open('GET', desturl);
		/* Define a function to call once a response has been received.  */
		http.onreadystatechange = displayMonthEvents; 
		
		/* Send the data. We use something other than null when we are sending using the POST
			method. */
		http.send(null);
}
//------------------------------------------------------------------------------------------------------------------

function displayMonthEvents()
{
	 if(http.readyState == 4)
	   { //Finished loading the response
			   
		   var response = http.responseText;
		  
		   document.getElementById('dispevent1').innerHTML = response;     
		   document.getElementById('dispevent1').style.visibility= "visible";	
		}
}
//------------------------------------------------------------------------------------------------------------------

function dispCurdateEvents(jmonth,jyear)
{
   
	    var desturl  = getPath()+"/members/addevent/?opt=curevents&month="+jmonth+"&year="+jyear;
		
		http.open('GET', noCache(desturl));
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		/* Define a function to call once a response has been received.  */
		http.onreadystatechange = displayCurdateEvents; 
		
		/* Send the data. We use something other than null when we are sending using the POST
			method. */
		http.send(null);
}
//------------------------------------------------------------------------------------------------------------------

function displayCurdateEvents()
{
	 if(http.readyState == 4)
	   { //Finished loading the response
			   
		   var response = http.responseText;
		  if(response.length >12)
		   {
			
		   document.getElementById('dispevent1').innerHTML = response; 
		   document.getElementById('dispevent1').style.visibility= "visible";
		   }
		  else
		   {
			document.getElementById('dispevent1').style.visibility= "hidden";
		   }
				
		}
}
//------------------------------------------------------------------------------------------------------------------

function editEvent(eventid)
{
 
	var desturl  = getPath()+"/members/addevent/?opt=edit&eventid="+eventid;
		http.open('GET', noCache(desturl));
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		/* Define a function to call once a response has been received.  */
		http.onreadystatechange = displayEditForm; 
		
		/* Send the data. We use something other than null when we are sending using the POST
			method. */
		http.send(null);
}
//------------------------------------------------------------------------------------------------------------------

function displayEditForm()
{
	 if(http.readyState == 4)
	   { //Finished loading the response
			   
		   var response = http.responseText;
		   formEvent(response)  ;
				
		}
}
//------------------------------------------------------------------------------------------------------------------

function deleteEvent(eventid,strdate)
{
	   //var strdate;
	   var desturl  =getPath()+"/members/addevent/?opt=delete&eventid="+eventid+"&strdate="+strdate;
	 
		http.open('GET', noCache(desturl));
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		/* Define a function to call once a response has been received.  */
		http.onreadystatechange = displayDeleteForm; 
		
		/* Send the data. We use something other than null when we are sending using the POST
			method. */
		http.send(null);
}
//------------------------------------------------------------------------------------------------------------------

function displayDeleteForm()
{
	
	 if(http.readyState == 4)
	   { //Finished loading the response
			
				//dispCurdateEvents();
				 var response = http.responseText;
				
				dispEvent(response)
		}
}
function getPath()
{
	url		=	document.location.href;
	x		=	url.indexOf(".");
	x		=	url.indexOf("/",x);
	return url.substring(0,x);
}
//---------------------------------------------------------------------------------------------------
function createselectbox(val1)
	{
		str = "";
		sel = "";
		for (var key in alertArr)

		{
			if(key == val1)
			{
				sel = "selected";
			}
			else
			{
				sel = "";
			}
			str += "<option value='"+key+"' "+sel+">"+alertArr[key]+"</option>";
		}
		
		return str;
	}
//------------------------------------------------------------------------------------------------------------------
function noCache(url)
{
	var sep = (-1 < url.indexOf("?")) ? "&" : "?"	
	url = url + sep + "__=" + encodeURIComponent((new Date()).getTime());	
	return url;
}

