
$(document).ready(function() {

/* data picker*/

	$("input[id*=DOB_ssdate]").datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		changeMonth: true,
		changeYear: true,
		yearRange:'c-100:c+0',
		maxDate: '+0D'
	});

	$("input[id*=expire_ssdate]").datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		changeMonth: true,
		changeYear: true,
		yearRange:'c-0:c+10',
		minDate: '+0D'
	});

// common date selection logic used by division

	var dates1 = $('input[id*=1_ssdate_s], input[id*=1_ssdate_e]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		onSelect: function(selectedDate) {
			var option = this.id.search(/1_ssdate_s/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			if( this.id.search(/1_ssdate_s/)>0){
				var date1=new Date();
				var date2=new Date();
				date2.setFullYear($("input[id*=1_ssdate_s]").val().substr(6,4),$("input[id*=1_ssdate_s]").val().substr(0,2)-1,$("input[id*=1_ssdate_s]").val().substr(3,2));
				if (date1>date2) date=date1;else date=date2;
			}
			dates1.not(this).datepicker("option", option, date);
			$("input[id*=2_ssdate_s]").datepicker("option","minDate",$("input[id*=1_ssdate_e]").val());
			$("input[id*=2_ssdate_e]").datepicker("option","minDate",$("input[id*=1_ssdate_e]").val());
			$("input[id*=2_ssdate_s]").datepicker("option","maxDate",null);
			$("input[id*=2_ssdate_e]").datepicker("option","maxDate",null);
		}
	});
	
	var dates2 = $('input[id*=2_ssdate_s], input[id*=2_ssdate_e]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		minDate: '+0D',
		onSelect: function(selectedDate) {
			var option = this.id.search(/2_ssdate_s/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			dates2.not(this).datepicker("option", option, date);
			$("input[id*=3_ssdate_s]").datepicker("option","minDate",$("input[id*=2_ssdate_e]").val());
			$("input[id*=3_ssdate_e]").datepicker("option","minDate",$("input[id*=2_ssdate_e]").val());
			$("input[id*=3_ssdate_s]").datepicker("option","maxDate",null);
			$("input[id*=3_ssdate_e]").datepicker("option","maxDate",null);
		}
	});
	
	var dates3 = $('input[id*=3_ssdate_s], input[id*=3_ssdate_e]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		minDate: '+0D',
		onSelect: function(selectedDate) {
			var option = this.id.search(/3_ssdate_s/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			dates3.not(this).datepicker("option", option, date);
		}
	});// used by announcement

// common date selection logic used by class

		var datesclass1 = $('input[id*=1_ssdate_classs], input[id*=1_ssdate_classe]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		onSelect: function(selectedDate) {
			var option = this.id.search(/1_ssdate_classs/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			if( this.id.search(/1_ssdate_classs/)>0){
				var date1=new Date();
				var date2=new Date();
				date2.setFullYear($("input[id*=1_ssdate_classs]").val().substr(6,4),$("input[id*=1_ssdate_classs]").val().substr(0,2)-1,$("input[id*=1_ssdate_classs]").val().substr(3,2));
				if (date1>date2) date=date1;else date=date2;
			}
			datesclass1.not(this).datepicker("option", option, date);
			$("input[id*=2_ssdate_classs]").datepicker("option","minDate",$("input[id*=1_ssdate_classe]").val());
			$("input[id*=2_ssdate_classe]").datepicker("option","minDate",$("input[id*=1_ssdate_classe]").val());
			$("input[id*=2_ssdate_classs]").datepicker("option","maxDate",null);
			$("input[id*=2_ssdate_classe]").datepicker("option","maxDate",null);
		}
	});
	
	var datesclass2 = $('input[id*=2_ssdate_classs], input[id*=2_ssdate_classe]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		minDate: '+0D',
		onSelect: function(selectedDate) {
			var option = this.id.search(/2_ssdate_classs/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			datesclass2.not(this).datepicker("option", option, date);
			$("input[id*=3_ssdate_classs]").datepicker("option","minDate",$("input[id*=1_ssdate_classe]").val());
			$("input[id*=3_ssdate_classs]").datepicker("option","maxDate",$("input[id*=2_ssdate_classe]").val());
			$("input[id*=3_ssdate_classe]").datepicker("option","minDate",$("input[id*=1_ssdate_classe]").val());
			$("input[id*=3_ssdate_classe]").datepicker("option","maxDate",$("input[id*=2_ssdate_classe]").val());
		}
	});
	
	var datesclass3 = $('input[id*=3_ssdate_classs], input[id*=3_ssdate_classe]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		minDate: '+0D',
		onSelect: function(selectedDate) {
			var option = this.id.search(/3_ssdate_classs/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			datesclass3.not(this).datepicker("option", option, date);
		}
	});

//strong overlap date selection logic,used for event

/*	var dates2over = $('input[id*=2_ssdate_overs], input[id*=2_ssdate_overe]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		onSelect: function(selectedDate) {
			var option = this.id.search(/2_ssdate_overs/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			dates2over.not(this).datepicker("option", option, date);
			$("input[id*=3_ssdate_overs]").datepicker("option","minDate",$("input[id*=2_ssdate_overs]").val());
			$("input[id*=3_ssdate_overs]").datepicker("option","maxDate",null);
			$("input[id*=3_ssdate_overe]").datepicker("option","minDate",$("input[id*=2_ssdate_overe]").val());
			$("input[id*=3_ssdate_overe]").datepicker("option","maxDate",null);
		}
	});
	
	var dates3over = $('input[id*=3_ssdate_overs], input[id*=3_ssdate_overe]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		onSelect: function(selectedDate) {
			var option = this.id.search(/3_ssdate_overs/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			if( this.id.search(/3_ssdate_overs/)>0){
				var date1=new Date();
				date1.setFullYear($("input[id*=3_ssdate_overs]").val().substr(6,4),$("input[id*=3_ssdate_overs]").val().substr(0,2)-1,$("input[id*=3_ssdate_overs]").val().substr(3,2));
				var date2=new Date();
				date2.setFullYear($("input[id*=2_ssdate_overe]").val().substr(6,4),$("input[id*=2_ssdate_overe]").val().substr(0,2)-1,$("input[id*=2_ssdate_overe]").val().substr(3,2));
				if (date1>date2){
					date=date1;
					}
				else{
					date=date2;
					}
			}
			dates3over.not(this).datepicker("option", option, date);
		}
	});*/

	//use weak overlap temporary ,used by event
	var dates2over = $('input[id*=2_ssdate_overs], input[id*=2_ssdate_overe]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		minDate: '+0D',
		onSelect: function(selectedDate) {
			var option = this.id.search(/2_ssdate_overs/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			dates2over.not(this).datepicker("option", option, date);
		}
	});
	
	var dates3over = $('input[id*=3_ssdate_overs], input[id*=3_ssdate_overe]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		minDate: '+0D',
		onSelect: function(selectedDate) {
			var option = this.id.search(/3_ssdate_overs/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			dates3over.not(this).datepicker("option", option, date);
		}
	});

//couple date selection logic ,used by venue store

	var date0couple = $('input[id*=0_ssdate_couples], input[id*=0_ssdate_couplee]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		onSelect: function(selectedDate) {
			var option = this.id.search(/0_ssdate_couples/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			if( this.id.search(/0_ssdate_couples/)>0){
				var date1=new Date();
				var date2=new Date();
				date2.setFullYear($("input[id*=0_ssdate_couples]").val().substr(6,4),$("input[id*=0_ssdate_couples]").val().substr(0,2)-1,$("input[id*=0_ssdate_couples]").val().substr(3,2));
				if (date1>date2) date=date1;else date=date2;
			}
			date0couple.not(this).datepicker("option", option, date);
		}
	});
	
	var datecouple1 = $('input[id*=1_ssdate_couples], input[id*=1_ssdate_couplee]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		onSelect: function(selectedDate) {
			var option = this.id.search(/1_ssdate_couples/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			datecouple1.not(this).datepicker("option", option, date);
		}
	});
	
	var datecouple2 = $('input[id*=2_ssdate_couples], input[id*=2_ssdate_couplee]').datepicker({
		showOn: 'button',
		buttonImage: '/images/calendar.gif',
		buttonImageOnly: true,
		numberOfMonths: 3,
		minDate: '+0D',
		onSelect: function(selectedDate) {
			var option = this.id.search(/2_ssdate_couples/)>0 ? "minDate" : "maxDate";
			var instance = $(this).data("datepicker");
			var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
			datecouple2.not(this).datepicker("option", option, date);
		}
	});
	
});
