/*
* Date Functions
*
* These work with:
*   - /lib/internal/dates.inc.php
*   - /templates/back/module/modulename/dates.tpl
*
* Created by Chuck
* 
* Examples: module=events
*/


function fncEventsManager_RemoveSelected($strSelectListName){
	
  var selSel = $($strSelectListName);
  var $i;
  
  for ($i = selSel.length - 1; $i>=0; $i--){
    if (selSel.options[$i].selected){
      selSel.remove($i);
    }
  }

}


function fncDates_TimedEventSelect(){
	$('alldayevent_single').checked = false;
	$('timedevent_single').checked  = true;
	$('alldayevent').checked        = false;
	$('timedevent').checked         = true;
}


//Do NOT change the spacing or php explode() will invalidate
function fncDates_AddToSpecific(obj){
	var bH    = $('event_single_timebegin_hour').getValue();
	var bM    = $('event_single_timebegin_min').getValue();
	var bAMPM = $('event_single_timebegin_ampm').getValue();
	var dH    = $('event_single_duration_hour').getValue();
	var dM    = $('event_single_duration_min').getValue();
	
	var $msg = '';
		
	if( $F('one_time_date') == '' ){
		$msg += "  Date\n";
	}
	
	if( $F('alldayevent_single') == 1 ){
			 + ' ' + bH + ':' + bM + bAMPM
		if( $msg == '' ){
			//alert(   'Do an all day'   );
			appendOptionLast('specific_dates_times', $F('one_time_date'))
		}
		else{
			alert("Please Enter: \n" + $msg);
			return false;
		}
		
	}	else {
		
		//convert dates
		if(bH != '' && bM != '' && bAMPM != ''){
			
			beginDate = Date.parse($F('one_time_date'));
			beginDate = new Date(beginDate);
			beginDate.setHours(parseInt(bH) + ((bAMPM == 'pm') ? 12 : 0));
			if((parseInt(bH) == 12) && (bAMPM == 'pm')){
				beginDate.setHours(beginDate.getHours() - 12);
			} else if ((parseInt(bH) == 12) && (bAMPM == 'am')){
				beginDate.setHours(beginDate.getHours() - 12);
			}
			beginDate.setMinutes(parseInt(bM));
			
			if(dH == '' && dM == ''){
				if($('alldayevent_single').checked){
					appendOptionLast( 'specific_dates_times', $F('one_time_date'));
				} else {
					var dateString = $F('one_time_date');
					Minutes = beginDate.getMinutes() + '';//convert to string
					if((beginDate.getHours()) == 0 || beginDate.getHours() == 12){
						dateString += ' ' + 12 + ':' + ((Minutes.length == 1) ? '0' : '' ) + beginDate.getMinutes() + (((beginDate.getHours()) == 0) ? 'AM' : 'PM');
					} else if(beginDate.getHours() > 12){
						dateString += ' ' + ((beginDate.getHours())-12) + ':' + ((Minutes.length == 1) ? '0' : '' ) + beginDate.getMinutes() + 'PM';
					} else {
						dateString += ' ' + (beginDate.getHours()) + ':' + ((Minutes.length == 1) ? '0' : '' ) + beginDate.getMinutes() + 'AM';
					}
					appendOptionLast( 'specific_dates_times', dateString);
				}
			} else if(dH != '' && dM != '') {
				if($('alldayevent_single').checked){
					appendOptionLast( 'specific_dates_times', $F('one_time_date'));
				} else {
					var dateString = $F('one_time_date');
					Minutes = beginDate.getMinutes() + '';//convert to string
					if((beginDate.getHours()) == 0 || beginDate.getHours() == 12){
						dateString += ' ' + 12 + ':' + ((Minutes.length == 1) ? '0' : '' ) + beginDate.getMinutes() + (((beginDate.getHours()) == 0) ? 'AM' : 'PM');
					} else if(beginDate.getHours() > 12){
						dateString += ' ' + ((beginDate.getHours())-12) + ':' + ((Minutes.length == 1) ? '0' : '' ) + beginDate.getMinutes() + 'PM';
					} else {
						dateString += ' ' + (beginDate.getHours()) + ':' + ((Minutes.length == 1) ? '0' : '' ) + beginDate.getMinutes() + 'AM';
					}
					dateString += ' duration '+ dH + ':' + dM;
					appendOptionLast( 'specific_dates_times', dateString);
				}
			} else {
				alert("Please fill in all fields.");
			}
		} else {
			alert("Please Enter: \n" + $msg);
			return false;
		}
	}
}




function appendOptionLast($strSelectListName, $strValue){
	var selOptNew   = document.createElement('option');
	selOptNew.text  = $strValue;
	selOptNew.value = $strValue;
	
	var selSel = $($strSelectListName);
	
	try {
		selSel.add(selOptNew, null); // standards compliant; doesn't work in IE
	}
	catch(ex) {
		selSel.add(selOptNew); // IE only
	}
}



function fncDates_RemoveSelected($strSelectListName){
	var selSel = $($strSelectListName);
	var $i;
	
	for ($i = selSel.length - 1; $i>=0; $i--){
		if (selSel.options[$i].selected){
		  selSel.remove($i);
		}
	}

}


function fncDates_SelectAll($strSelectListName){
	var selSel = $($strSelectListName);
	var i;
	for (i = selSel.length - 1; i>=0; i--) {
		selSel.options[i].selected = true;
	}
	return true;
}



//Show and Hide the Date Selection Possibilities
function fncClickRecur($strRadioID){

	switch($strRadioID){
	
		case 'rdoRepeatNever':
			$('divNoDates').hide();
			
			$('BeginEnd').hide();
			$('divRecurOptions_Never').show();
			
			$('divRecurOptions_Daily').hide();
			$('divRecurOptions_WeekdayRepeat').hide();
			$('divRecurOptions_Weekly').hide();
			$('divRecurOptions_Monthly').hide();
			$('divRecurOptions_Yearly').hide();
			
			$('divGlobalTime').hide();
			break;
			
	
		case 'rdoRepeatDaily':
			$('divNoDates').hide();
			
			$('BeginEnd').show();
			$('divRecurOptions_Daily').show();
			
			$('divRecurOptions_Never').hide();
			$('divRecurOptions_WeekdayRepeat').hide();
			$('divRecurOptions_Weekly').hide();
			$('divRecurOptions_Monthly').hide();
			$('divRecurOptions_Yearly').hide();
			
			$('divGlobalTime').show();
			break;
			
		
		case 'rdoRepeatWeekly':
			$('divNoDates').hide();
			
			$('BeginEnd').show();
			$('divRecurOptions_Weekly').show();
			
			$('divRecurOptions_Never').hide();
			$('divRecurOptions_WeekdayRepeat').hide();
			$('divRecurOptions_Daily').hide();
			$('divRecurOptions_Monthly').hide();
			$('divRecurOptions_Yearly').hide();
			
			$('divGlobalTime').show();
			break;
			
		
		case 'rdoRepeatMonthly':
			$('divNoDates').hide();
			
			$('BeginEnd').show();
			$('divRecurOptions_Monthly').show();
			
			$('divRecurOptions_Never').hide();
			$('divRecurOptions_WeekdayRepeat').hide();
			$('divRecurOptions_Daily').hide();
			$('divRecurOptions_Weekly').hide();
			$('divRecurOptions_Yearly').hide();
			
			$('divGlobalTime').show();
			break;
			
		
		case 'rdoRepeatYearly':
			$('divNoDates').hide();
			
			$('BeginEnd').show();
			$('divRecurOptions_Yearly').show();
			
			
			$('divRecurOptions_Never').hide();
			$('divRecurOptions_WeekdayRepeat').hide();
			$('divRecurOptions_Daily').hide();
			$('divRecurOptions_Weekly').hide();
			$('divRecurOptions_Monthly').hide();
			
			$('divGlobalTime').show();
			break;

			
		case 'rdoRepeatWeekdayRepeat':
			$('divNoDates').hide();
			
			$('BeginEnd').show();
			$('divRecurOptions_WeekdayRepeat').show();
			
			$('divRecurOptions_Yearly').hide();
			$('divRecurOptions_Never').hide();
			$('divRecurOptions_Daily').hide();
			$('divRecurOptions_Weekly').hide();
			$('divRecurOptions_Monthly').hide();
			
			$('divGlobalTime').show();
			break;
			
		case 'rdoRepeatNone':
			$('divNoDates').show();
			$('BeginEnd').hide();
			$('divRecurOptions_WeekdayRepeat').hide();
			$('divRecurOptions_Yearly').hide();
			$('divRecurOptions_Never').hide();
			$('divRecurOptions_Daily').hide();
			$('divRecurOptions_Weekly').hide();
			$('divRecurOptions_Monthly').hide();
			$('divGlobalTime').hide();
			break;
			
	}

}