 /**
* Calendar invocation
*
* Copyright (c)2008 44 Interactive. All Rights Reserved.
*
* SVN File: $Id: calendar_instance.js 214 2008-07-28 18:24:44Z Mike Neugebauer $
* @author $Author: Mike Neugebauer $
* @version $Revision: 214 $
* @lastrevision $Date: 2008-07-28 13:24:44 -0500 (Mon, 28 Jul 2008) $
* @modifiedby $LastChangedBy: Mike Neugebauer $
* @lastmodified $LastChangedDate: 2008-07-28 13:24:44 -0500 (Mon, 28 Jul 2008) $
* @filesource $URL: svn+ssh://miken@svnhost.44i-dev.com/svnhome/base/branches/royalriver/_cust/js/calendar_instance.js $
*/

  var dateList = [];
  var calObj = null;
  var calBackUrl = null;
  var calStartupDelay = 600;
  var calSwitchDelay = 600;

  function calShowDetail( id )
  {
	var load =
		new Ajax.Updater(
			'JT_copy',
			'/showevent/detail/' + id
			 );
  }

   function calGoBack(  )
  {
	var load =
		new Ajax.Updater(
			'JT_copy',
			calBackUrl
			 );
  }

  function loadCalEventDates( dateIn ) {

	var load =
		new Ajax.Updater(
			'cal_dates_js_fill',
			'/geteventdates/detail/' + dateIn.getFullYear() + "v" + ( dateIn.getMonth() + 1 )
			 );
  }

  function completeLoadCalEventDates( ) {

  	dateList = document.getElementById( 'cal_dates_js_fill' ).innerHTML.split( ':' );
  }

  function isDateEnabled( jsDate )
  {
  	var enabled = false;
  	var dateFmt = jsDate.getDate();
  	for ( xx = 0; xx < dateList.length; xx++ )
  	{
  		if ( dateList[xx] == dateFmt )
  		{
  			enabled = true;
  			break;
  		}
  	}

  	return ( ! enabled );
  }

  function dateChanged(calendar) {
    // Beware that this function is called even if the end-user only
    // changed the month/year.  In order to determine if a date was
    // clicked you can use the dateClicked property of the calendar:
    /*
    if (calendar.dateClicked) {
      // OK, a date was clicked, redirect to /yyyy/mm/dd/index.php
      var y = calendar.date.getFullYear();
      var m = calendar.date.getMonth();     // integer, 0..11
      var d = calendar.date.getDate();      // integer, 1..31
      // redirect...
      window.location = "/" + y + "/" + m + "/" + d + "/index.php";
    }
    */
    calObj = calendar;

    if (calendar.dateClicked) {
    	var titl = 'Events for ' + ffiGetDayName( calendar.date ) + ', ' + ffiGetMonthName( calendar.date ) + ' ' +
    		calendar.date.getDate() + ' ' + calendar.date.getFullYear() + ':';
		calBackUrl = '/showeventlist/detail/' + calendar.date.getFullYear() + 'v' + ( calendar.date.getMonth() + 1 ) + 'v' + ( calendar.date.getDate() );
    	JT_show( calBackUrl + '?width=360','calendar-container', titl);
    }
    else
    {
		loadCalEventDates( calendar.date );
		setTimeout( 'completeLoadCalEventDates();refreshCal();', calSwitchDelay );
    }
  };

  function refreshCal( )
  {
	calObj._init( calObj.firstDayOfWeek, calObj.date);
  }

	function calStartup () {

	loadCalEventDates( new Date() );
	setTimeout( 'completeLoadCalEventDates();calStartup2();', calStartupDelay );
 }

  	function calStartup2() {

  Calendar.setup(
    {
      dateStatusFunc: isDateEnabled,
      flat         : "calendar-container",  // ID of the parent element
      flatCallback : dateChanged           // our callback function
	    }
  	);
	dateList = [];


  }