if(typeof jQuery != 'undefined') {
	/*
	*
	* Copyright (c) 2006-2008 Sam Collett (http://www.texotela.co.uk)
	* Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
	* and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
	*
	* Adds (single/multiple) options to a select box (or series of select boxes)
	* Version 2.2.3
	* Demo: http://www.texotela.co.uk/code/jquery/select/
	*
	*/
	jQuery(function($) {
		$.fn.addOption = function() {
			var add = function(el, v, t, sO) {
				var option = document.createElement('option');
				option.value = v; option.text = t;
				var o = el.options;
				var oL = o.length;
				if(!el.cache) {
					el.cache = {};
					for(var i = 0; i < oL; i++){
						el.cache[o[i].value] = i;
					}
				}
				if(typeof el.cache[v] == 'undefined') {
					el.cache[v] = oL;
				}
				el.options[el.cache[v]] = option;
				if(sO) {
					option.selected = true;
				}
			};
			
			var a = arguments;
			if(a.length == 0) {return this;}
			var sO = true;
			var m = false;
			var items, v, t;
			if(typeof(a[0]) == 'object') {
				m = true;
				items = a[0];
			}
			if(a.length >= 2) {
				if(typeof(a[1]) == 'boolean') {sO = a[1];}
				else if(typeof(a[2]) == 'boolean') {sO = a[2];}
				if(!m) {
					v = a[0];
					t = a[1];
				}
			}
			this.each(
				function() {
					if(this.nodeName.toLowerCase() != 'select') {return;}
					if(m) {
						for(var item in items) {
							add(this, item, items[item], sO);
						}
					}
					else {
						add(this, v, t, sO);
					}
				}
			);
			return this;
		};
	});

	
	
	/**
	* Create Select boxes for day, month and year
	*/
	jQuery(function($) {
		$.fn.extend({
			selectDate: function(options) {
				var setting = $.extend({}, $.fn.selectDate.defaults, options);
				
				return this.each(
					function() {
						var $t = $(this);
						var o = $.metadata ? $.extend({}, setting, $t.metadata()) : setting;
						
						var $date_day = $('<span></span>').text(o.text.day);
						var $date_month = $('<span></span>').text(o.text.month);
						var $date_year = $('<span></span>').text(o.text.year);
						
						var day_name = o.day + o.delimiter + o.howmany;
						var month_name = o.month + o.delimiter + o.howmany;
						var year_name = o.year + o.delimiter + o.howmany;
						
						var $day_i = $('<select></select>').attr('name',day_name).attr('id',day_name);
						var $month_i = $('<select></select>').attr('name',month_name).attr('id',month_name);
						var $year_i = $('<select></select>').attr('name',year_name).attr('id',year_name);
						
						/**
						* Requires the addOption() plugin
						*/
						$.each(eval(o.days), function(i){
							$day_i.addOption(String(this), String(this), false);
						});
						$month_i.addOption(o.months, false);
						$year_i.addOption(o.years, false);
						
						var $day_l = $('<label for="' + day_name + '"></label>').addClass(o.day).addClass('optional');
						var $month_l = $('<label for="' + month_name + '"></label>').addClass(o.month).addClass('optional');
						var $year_l = $('<label for="' + year_name + '"></label>').addClass(o.year).addClass('optional');
						
						$t.append($day_l.append($date_day).append($day_i))
							   .append($month_l.append($date_month).append($month_i))
							   .append($year_l.append($date_year).append($year_i));
					}
				);
			}
		});
		
		/**
		* Defaults
		*/
		$.fn.selectDate.defaults = {
			howmany : '',
			text : {
				day : 'Day',
				month : 'Month',
				year : 'Year'
			},
			day : 'std_day',
			month : 'std_month',
			year : 'std_year',
			delimiter: '-',
			days: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],
			months: {1:'January',2:'February',3:'March',4:'April',5:'May',6:'June',7:'July',8:'August',9:'September',10:'October',11:'November',12:'December'},
			years: {2009:2009,2010:2010,2011:2011,2012:2012,2013:2013}
		};
		
	});
}
