/**
 * $Id: ui.datepicker.selectWeek.js,v 1.1 2010/03/09 06:47:10 florawang Exp $
 * 
 * 適用 jQuery UI Datepicker 1.7.1    highlight week  by Flora
 * 
 * 改寫 _updateDatepicker 行為，須放在 selectWeekValue 後面 
 * 
 * css 需設定 :
 * .ui-state-hover-week .ui-state-default,
 * .ui-state-hover-week .ui-widget-content .ui-state-default { border:1px solid #AAAAAA;color:#212121; background-color:#FFFF99; background-image:none;}
 * 
 * .ui-state-active-hover-week .ui-state-default,
 * .ui-state-active-hover-week .ui-widget-content .ui-state-default { border:1px solid #AAAAAA;color:#212121;background-color:#FFFF99;background-image:none;}
 * 
 * 
 * 
 **/
var selectWeekValue = true;
if(selectWeekValue==''){selectWeekValue = false};

jQuery.extend(jQuery.datepicker, {   
    options : {
		selectWeek : selectWeekValue
    },
   /* Generate the date picker content. */
	_updateDatepicker: function(inst) {
	   // var op = self.validator.options;
		var dims = {width: inst.dpDiv.width() + 4,
			height: inst.dpDiv.height() + 4};
		var self = this;
		var selectWeek = self.options.selectWeek ;//highlight week by flora
		inst.dpDiv.empty().append(this._generateHTML(inst))
			.find('iframe.ui-datepicker-cover').
				css({width: dims.width, height: dims.height})
			.end()
			.find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a')
				.bind('mouseout', function(){
					$(this).removeClass('ui-state-hover');
					//----------------------------------
					//highlight week by flora
					if(selectWeek==true){
						$(this).parents('tr').removeClass('ui-state-hover-week');
						$('a.ui-state-active').parents('tr').addClass('ui-state-active-hover-week');
					}
					//----------------------------------
					if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover');
					if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover');
				})
				.bind('mouseover', function(){											
					if (!self._isDisabledDatepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) {
						$(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover');

						$(this).addClass('ui-state-hover');												
						//----------------------------------
						//highlight week by flora
						if(selectWeek==true){
								$(this).parents('tr').addClass('ui-state-hover-week');
								$('a.ui-state-active').parents('tr').addClass('ui-state-active-hover-week');
						}
						//----------------------------------
						if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover');
						if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover');
					}

				})
			.end()
			.find('.' + this._dayOverClass + ' a')
				.trigger('mouseover')
			.end();
		var numMonths = this._getNumberOfMonths(inst);
		var cols = numMonths[1];
		var width = 17;
		if (cols > 1) {
			inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em');
		} else {
			inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width('');
		}
		inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') +
			'Class']('ui-datepicker-multi');
		inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') +
			'Class']('ui-datepicker-rtl');
		if (inst.input && inst.input[0].type != 'hidden' && inst == $.datepicker._curInst)
			$(inst.input[0]).focus();
	},
	_doHoverWeek: function(target, inline){
	}
});

