	var e4eChangeList={
		"Winter1":{
			dateFrom:{
				date: 1,
				month: 11
			},
			dateTo:{
				date: 31,
				month: 12
			},
			stylesheet:'/_includes/css/winter.css'
		},
		"Winter2":{
			dateFrom:{
				date: 1,
				month: 1
			},
			dateTo:{
				date: 31,
				month: 3
			},
			stylesheet:'/_includes/css/winter.css'
		},
		"Summer":{
			dateFrom:{
				date: 1,
				month: 4
			},
			dateTo:{
				date: 31,
				month: 8
			},
			stylesheet:'/_includes/css/summer.css'
		},
		"Autumn":{
			dateFrom:{
				date: 1,
				month: 9
			},
			dateTo:{
				date: 30,
				month: 10
			},
			stylesheet:'/_includes/css/autumn.css'
		}
		};
	
	function e4eChangeStyle(stylesheetName) {
		var addStylesheet = '<link href="'+stylesheetName+'" rel="stylesheet" type="text/css" media="screen" />';
		document.write(addStylesheet);
	}
	
	function e4eStylesheetDate(optionArgs){
		options = optionArgs || {debug:false};
		// get the current date / time
		var nowDate = new Date();
		// compare to each of the elements inside changeList
		for(var item in e4eChangeList){
			if(options.debug === true){
				console.log('Currently Testing for ' + e4eChangeList[item].stylesheet)
			}
			var boolChange = false; // default setting
			// get date variables...
			var testYear = e4eChangeList[item].dateFrom.year || nowDate.getFullYear();
			intTestMonth = (e4eChangeList[item].dateFrom.month - 1)
			if (intTestMonth < 1) {intTestMonth = 1}
			if(options.debug === true){
				console.log('Month is ' + e4eChangeList[item].dateFrom.month)
			}
			var testMonth = intTestMonth || nowDate.getMonth();
			var testDate = e4eChangeList[item].dateFrom.date || nowDate.getDate();
			var testHour = e4eChangeList[item].dateFrom.hour || 0;
			var testMinute = e4eChangeList[item].dateFrom.minute || 0;
			var testSecond = e4eChangeList[item].dateFrom.second || 0;
			// set up a date for this item
			var testDaterFrom = new Date(testYear,testMonth,testDate,testHour,testMinute,testSecond);
			if(options.debug === true){
				console.log('testDaterFrom = ');
				console.log(testDaterFrom);
			}
			// is current date greater than the tester date?
			if(nowDate > testDaterFrom){
				boolChange = true;
				if(options.debug === true){
					console.log('Current date is greater than start date');
				}
			}
			// now test date to...
			if(e4eChangeList[item].dateTo != 'default'){
				// get date variables...
				testYear = e4eChangeList[item].dateTo.year || nowDate.getFullYear();
				testMonth = (e4eChangeList[item].dateTo.month - 1) || nowDate.getMonth();
				testDate = e4eChangeList[item].dateTo.date || nowDate.getDate();
				testHour = e4eChangeList[item].dateTo.hour || 23;
				testMinute = e4eChangeList[item].dateTo.minute || 59;
				testSecond = e4eChangeList[item].dateTo.second || 59;
				// set up a date for this item
				var testDaterTo = new Date(testYear,testMonth,testDate,testHour,testMinute,testSecond);
				if(testDaterTo < testDaterFrom){
					testDaterTo.setFullYear(testDaterTo.getFullYear()+1)
				}
				if(options.debug === true){
					console.log('testDaterTo = ');
					console.log(testDaterTo);
				}
				// is current date less than the tester date?
				if(nowDate > testDaterTo){
					// is it currently set to change?
					boolChange = false;
				}
			}
			if(boolChange === true){
				if(options.debug === true){
					console.log('change stylesheet to: '+e4eChangeList[item].stylesheet);
				}
				e4eChangeStyle(e4eChangeList[item].stylesheet);
				break;
			}
		}
	}
	
	e4eStylesheetDate(
		{
			//debug:true
		}
	);
	