$(function()
{
	// datetimepicker
	(function($){$.extend($.ui,{timepicker:{version:"0.9.6"}});function Timepicker(){this.regional=[];this.regional[""]={currentText:"Now",closeText:"Done",ampm:false,timeFormat:"hh:mm tt",timeSuffix:"",timeOnlyTitle:"Choose Time",timeText:"Time",hourText:"Hour",minuteText:"Minute",secondText:"Second",timezoneText:"Time Zone"};this._defaults={showButtonPanel:true,timeOnly:false,showHour:true,showMinute:true,showSecond:false,showTimezone:false,showTime:true,stepHour:0.05,stepMinute:0.05,stepSecond:0.05,hour:0,minute:0,second:0,timezone:"+0000",hourMin:0,minuteMin:0,secondMin:0,hourMax:23,minuteMax:59,secondMax:59,minDateTime:null,maxDateTime:null,hourGrid:0,minuteGrid:0,secondGrid:0,alwaysSetTime:true,separator:" ",altFieldTimeOnly:true,showTimepicker:true,timezoneList:["-1100","-1000","-0900","-0800","-0700","-0600","-0500","-0400","-0300","-0200","-0100","+0000","+0100","+0200","+0300","+0400","+0500","+0600","+0700","+0800","+0900","+1000","+1100","+1200"]};$.extend(this._defaults,this.regional[""])}$.extend(Timepicker.prototype,{$input:null,$altInput:null,$timeObj:null,inst:null,hour_slider:null,minute_slider:null,second_slider:null,timezone_select:null,hour:0,minute:0,second:0,timezone:"+0000",hourMinOriginal:null,minuteMinOriginal:null,secondMinOriginal:null,hourMaxOriginal:null,minuteMaxOriginal:null,secondMaxOriginal:null,ampm:"",formattedDate:"",formattedTime:"",formattedDateTime:"",timezoneList:["-1100","-1000","-0900","-0800","-0700","-0600","-0500","-0400","-0300","-0200","-0100","+0000","+0100","+0200","+0300","+0400","+0500","+0600","+0700","+0800","+0900","+1000","+1100","+1200"],setDefaults:function(settings){extendRemove(this._defaults,settings||{});return this},_newInst:function($input,o){var tp_inst=new Timepicker(),inlineSettings={};for(var attrName in this._defaults){var attrValue=$input.attr("time:"+attrName);if(attrValue){try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}tp_inst._defaults=$.extend({},this._defaults,inlineSettings,o,{beforeShow:function(input,dp_inst){if($.isFunction(o.beforeShow)){o.beforeShow(input,dp_inst,tp_inst)}},onChangeMonthYear:function(year,month,dp_inst){tp_inst._updateDateTime(dp_inst);if($.isFunction(o.onChangeMonthYear)){o.onChangeMonthYear.call($input[0],year,month,dp_inst,tp_inst)}},onClose:function(dateText,dp_inst){if(tp_inst.timeDefined===true&&$input.val()!=""){tp_inst._updateDateTime(dp_inst)}if($.isFunction(o.onClose)){o.onClose.call($input[0],dateText,dp_inst,tp_inst)}},timepicker:tp_inst});tp_inst.hour=tp_inst._defaults.hour;tp_inst.minute=tp_inst._defaults.minute;tp_inst.second=tp_inst._defaults.second;tp_inst.ampm="";tp_inst.$input=$input;if(o.altField){tp_inst.$altInput=$(o.altField).css({cursor:"pointer"}).focus(function(){$input.trigger("focus")})}if(tp_inst._defaults.minDate!==undefined&&tp_inst._defaults.minDate instanceof Date){tp_inst._defaults.minDateTime=new Date(tp_inst._defaults.minDate.getTime())}if(tp_inst._defaults.minDateTime!==undefined&&tp_inst._defaults.minDateTime instanceof Date){tp_inst._defaults.minDate=new Date(tp_inst._defaults.minDateTime.getTime())
	}if(tp_inst._defaults.maxDate!==undefined&&tp_inst._defaults.maxDate instanceof Date){tp_inst._defaults.maxDateTime=new Date(tp_inst._defaults.maxDate.getTime())}if(tp_inst._defaults.maxDateTime!==undefined&&tp_inst._defaults.maxDateTime instanceof Date){tp_inst._defaults.maxDate=new Date(tp_inst._defaults.maxDateTime.getTime())}return tp_inst},_addTimePicker:function(dp_inst){var currDT=(this.$altInput&&this._defaults.altFieldTimeOnly)?this.$input.val()+" "+this.$altInput.val():this.$input.val();this.timeDefined=this._parseTime(currDT);this._limitMinMaxDateTime(dp_inst,false);this._injectTimePicker()},_parseTime:function(timeString,withDate){var regstr=this._defaults.timeFormat.toString().replace(/h{1,2}/ig,"(\\d?\\d)").replace(/m{1,2}/ig,"(\\d?\\d)").replace(/s{1,2}/ig,"(\\d?\\d)").replace(/t{1,2}/ig,"(am|pm|a|p)?").replace(/z{1}/ig,"((\\+|-)\\d\\d\\d\\d)?").replace(/\s/g,"\\s?")+this._defaults.timeSuffix+"$",order=this._getFormatPositions(),treg;if(!this.inst){this.inst=$.datepicker._getInst(this.$input[0])}if(withDate||!this._defaults.timeOnly){var dp_dateFormat=$.datepicker._get(this.inst,"dateFormat");var specials=new RegExp("[.*+?|()\\[\\]{}\\\\]","g");regstr=".{"+dp_dateFormat.length+",}"+this._defaults.separator.replace(specials,"\\$&")+regstr}treg=timeString.match(new RegExp(regstr,"i"));if(treg){if(order.t!==-1){this.ampm=((treg[order.t]===undefined||treg[order.t].length===0)?"":(treg[order.t].charAt(0).toUpperCase()=="A")?"AM":"PM").toUpperCase()}if(order.h!==-1){if(this.ampm=="AM"&&treg[order.h]=="12"){this.hour=0}else{if(this.ampm=="PM"&&treg[order.h]!="12"){this.hour=(parseFloat(treg[order.h])+12).toFixed(0)}else{this.hour=Number(treg[order.h])}}}if(order.m!==-1){this.minute=Number(treg[order.m])}if(order.s!==-1){this.second=Number(treg[order.s])}if(order.z!==-1){this.timezone=treg[order.z]}return true}return false},_getFormatPositions:function(){var finds=this._defaults.timeFormat.toLowerCase().match(/(h{1,2}|m{1,2}|s{1,2}|t{1,2}|z)/g),orders={h:-1,m:-1,s:-1,t:-1,z:-1};if(finds){for(var i=0;i<finds.length;i++){if(orders[finds[i].toString().charAt(0)]==-1){orders[finds[i].toString().charAt(0)]=i+1}}}return orders},_injectTimePicker:function(){var $dp=this.inst.dpDiv,o=this._defaults,tp_inst=this,hourMax=(o.hourMax-(o.hourMax%o.stepHour)).toFixed(0),minMax=(o.minuteMax-(o.minuteMax%o.stepMinute)).toFixed(0),secMax=(o.secondMax-(o.secondMax%o.stepSecond)).toFixed(0),dp_id=this.inst.id.toString().replace(/([^A-Za-z0-9_])/g,"");if($dp.find("div#ui-timepicker-div-"+dp_id).length===0&&o.showTimepicker){var noDisplay=' style="display:none;"',html='<div class="ui-timepicker-div" id="ui-timepicker-div-'+dp_id+'"><dl><dt class="ui_tpicker_time_label" id="ui_tpicker_time_label_'+dp_id+'"'+((o.showTime)?"":noDisplay)+">"+o.timeText+'</dt><dd class="ui_tpicker_time" id="ui_tpicker_time_'+dp_id+'"'+((o.showTime)?"":noDisplay)+'></dd><dt class="ui_tpicker_hour_label" id="ui_tpicker_hour_label_'+dp_id+'"'+((o.showHour)?"":noDisplay)+">"+o.hourText+"</dt>",hourGridSize=0,minuteGridSize=0,secondGridSize=0,size;
	if(o.showHour&&o.hourGrid>0){html+='<dd class="ui_tpicker_hour"><div id="ui_tpicker_hour_'+dp_id+'"'+((o.showHour)?"":noDisplay)+'></div><div style="padding-left: 1px"><table class="ui-tpicker-grid-label"><tr>';for(var h=o.hourMin;h<=hourMax;h+=o.hourGrid){hourGridSize++;var tmph=(o.ampm&&h>12)?h-12:h;if(tmph<10){tmph="0"+tmph}if(o.ampm){if(h==0){tmph=12+"a"}else{if(h<12){tmph+="a"}else{tmph+="p"}}}html+="<td>"+tmph+"</td>"}html+="</tr></table></div></dd>"}else{html+='<dd class="ui_tpicker_hour" id="ui_tpicker_hour_'+dp_id+'"'+((o.showHour)?"":noDisplay)+"></dd>"}html+='<dt class="ui_tpicker_minute_label" id="ui_tpicker_minute_label_'+dp_id+'"'+((o.showMinute)?"":noDisplay)+">"+o.minuteText+"</dt>";if(o.showMinute&&o.minuteGrid>0){html+='<dd class="ui_tpicker_minute ui_tpicker_minute_'+o.minuteGrid+'"><div id="ui_tpicker_minute_'+dp_id+'"'+((o.showMinute)?"":noDisplay)+'></div><div style="padding-left: 1px"><table class="ui-tpicker-grid-label"><tr>';for(var m=o.minuteMin;m<=minMax;m+=o.minuteGrid){minuteGridSize++;html+="<td>"+((m<10)?"0":"")+m+"</td>"}html+="</tr></table></div></dd>"}else{html+='<dd class="ui_tpicker_minute" id="ui_tpicker_minute_'+dp_id+'"'+((o.showMinute)?"":noDisplay)+"></dd>"}html+='<dt class="ui_tpicker_second_label" id="ui_tpicker_second_label_'+dp_id+'"'+((o.showSecond)?"":noDisplay)+">"+o.secondText+"</dt>";if(o.showSecond&&o.secondGrid>0){html+='<dd class="ui_tpicker_second ui_tpicker_second_'+o.secondGrid+'"><div id="ui_tpicker_second_'+dp_id+'"'+((o.showSecond)?"":noDisplay)+'></div><div style="padding-left: 1px"><table><tr>';for(var s=o.secondMin;s<=secMax;s+=o.secondGrid){secondGridSize++;html+="<td>"+((s<10)?"0":"")+s+"</td>"}html+="</tr></table></div></dd>"}else{html+='<dd class="ui_tpicker_second" id="ui_tpicker_second_'+dp_id+'"'+((o.showSecond)?"":noDisplay)+"></dd>"}html+='<dt class="ui_tpicker_timezone_label" id="ui_tpicker_timezone_label_'+dp_id+'"'+((o.showTimezone)?"":noDisplay)+">"+o.timezoneText+"</dt>";html+='<dd class="ui_tpicker_timezone" id="ui_tpicker_timezone_'+dp_id+'"'+((o.showTimezone)?"":noDisplay)+"></dd>";html+="</dl></div>";$tp=$(html);if(o.timeOnly===true){$tp.prepend('<div class="ui-widget-header ui-helper-clearfix ui-corner-all"><div class="ui-datepicker-title">'+o.timeOnlyTitle+"</div></div>");$dp.find(".ui-datepicker-header, .ui-datepicker-calendar").hide()}this.hour_slider=$tp.find("#ui_tpicker_hour_"+dp_id).slider({orientation:"horizontal",value:this.hour,min:o.hourMin,max:hourMax,step:o.stepHour,slide:function(event,ui){tp_inst.hour_slider.slider("option","value",ui.value);tp_inst._onTimeChange()}});this.minute_slider=$tp.find("#ui_tpicker_minute_"+dp_id).slider({orientation:"horizontal",value:this.minute,min:o.minuteMin,max:minMax,step:o.stepMinute,slide:function(event,ui){tp_inst.minute_slider.slider("option","value",ui.value);tp_inst._onTimeChange()}});this.second_slider=$tp.find("#ui_tpicker_second_"+dp_id).slider({orientation:"horizontal",value:this.second,min:o.secondMin,max:secMax,step:o.stepSecond,slide:function(event,ui){tp_inst.second_slider.slider("option","value",ui.value);
	tp_inst._onTimeChange()}});this.timezone_select=$tp.find("#ui_tpicker_timezone_"+dp_id).append("<select></select>").find("select");$.fn.append.apply(this.timezone_select,$.map(o.timezoneList,function(val,idx){return $("<option />").val(typeof val=="object"?val.value:val).text(typeof val=="object"?val.label:val)}));this.timezone_select.val((typeof this.timezone!="undefined"&&this.timezone!=null&&this.timezone!="")?this.timezone:o.timezone);this.timezone_select.change(function(){tp_inst._onTimeChange()});if(o.showHour&&o.hourGrid>0){size=100*hourGridSize*o.hourGrid/(hourMax-o.hourMin);$tp.find(".ui_tpicker_hour table").css({width:size+"%",marginLeft:(size/(-2*hourGridSize))+"%",borderCollapse:"collapse"}).find("td").each(function(index){$(this).click(function(){var h=$(this).html();if(o.ampm){var ap=h.substring(2).toLowerCase(),aph=parseInt(h.substring(0,2),10);if(ap=="a"){if(aph==12){h=0}else{h=aph}}else{if(aph==12){h=12}else{h=aph+12}}}tp_inst.hour_slider.slider("option","value",h);tp_inst._onTimeChange();tp_inst._onSelectHandler()}).css({cursor:"pointer",width:(100/hourGridSize)+"%",textAlign:"center",overflow:"hidden"})})}if(o.showMinute&&o.minuteGrid>0){size=100*minuteGridSize*o.minuteGrid/(minMax-o.minuteMin);$tp.find(".ui_tpicker_minute table").css({width:size+"%",marginLeft:(size/(-2*minuteGridSize))+"%",borderCollapse:"collapse"}).find("td").each(function(index){$(this).click(function(){tp_inst.minute_slider.slider("option","value",$(this).html());tp_inst._onTimeChange();tp_inst._onSelectHandler()}).css({cursor:"pointer",width:(100/minuteGridSize)+"%",textAlign:"center",overflow:"hidden"})})}if(o.showSecond&&o.secondGrid>0){$tp.find(".ui_tpicker_second table").css({width:size+"%",marginLeft:(size/(-2*secondGridSize))+"%",borderCollapse:"collapse"}).find("td").each(function(index){$(this).click(function(){tp_inst.second_slider.slider("option","value",$(this).html());tp_inst._onTimeChange();tp_inst._onSelectHandler()}).css({cursor:"pointer",width:(100/secondGridSize)+"%",textAlign:"center",overflow:"hidden"})})}var $buttonPanel=$dp.find(".ui-datepicker-buttonpane");if($buttonPanel.length){$buttonPanel.before($tp)}else{$dp.append($tp)}this.$timeObj=$tp.find("#ui_tpicker_time_"+dp_id);if(this.inst!==null){var timeDefined=this.timeDefined;this._onTimeChange();this.timeDefined=timeDefined}var onSelectDelegate=function(){tp_inst._onSelectHandler()};this.hour_slider.bind("slidestop",onSelectDelegate);this.minute_slider.bind("slidestop",onSelectDelegate);this.second_slider.bind("slidestop",onSelectDelegate)}},_limitMinMaxDateTime:function(dp_inst,adjustSliders){var o=this._defaults,dp_date=new Date(dp_inst.selectedYear,dp_inst.selectedMonth,dp_inst.selectedDay);if(!this._defaults.showTimepicker){return}if($.datepicker._get(dp_inst,"minDateTime")!==null&&dp_date){var minDateTime=$.datepicker._get(dp_inst,"minDateTime"),minDateTimeDate=new Date(minDateTime.getFullYear(),minDateTime.getMonth(),minDateTime.getDate(),0,0,0,0);if(this.hourMinOriginal===null||this.minuteMinOriginal===null||this.secondMinOriginal===null){this.hourMinOriginal=o.hourMin;
	this.minuteMinOriginal=o.minuteMin;this.secondMinOriginal=o.secondMin}if(dp_inst.settings.timeOnly||minDateTimeDate.getTime()==dp_date.getTime()){this._defaults.hourMin=minDateTime.getHours();if(this.hour<=this._defaults.hourMin){this.hour=this._defaults.hourMin;this._defaults.minuteMin=minDateTime.getMinutes();if(this.minute<=this._defaults.minuteMin){this.minute=this._defaults.minuteMin;this._defaults.secondMin=minDateTime.getSeconds()}else{if(this.second<this._defaults.secondMin){this.second=this._defaults.secondMin}this._defaults.secondMin=this.secondMinOriginal}}else{this._defaults.minuteMin=this.minuteMinOriginal;this._defaults.secondMin=this.secondMinOriginal}}else{this._defaults.hourMin=this.hourMinOriginal;this._defaults.minuteMin=this.minuteMinOriginal;this._defaults.secondMin=this.secondMinOriginal}}if($.datepicker._get(dp_inst,"maxDateTime")!==null&&dp_date){var maxDateTime=$.datepicker._get(dp_inst,"maxDateTime"),maxDateTimeDate=new Date(maxDateTime.getFullYear(),maxDateTime.getMonth(),maxDateTime.getDate(),0,0,0,0);if(this.hourMaxOriginal===null||this.minuteMaxOriginal===null||this.secondMaxOriginal===null){this.hourMaxOriginal=o.hourMax;this.minuteMaxOriginal=o.minuteMax;this.secondMaxOriginal=o.secondMax}if(dp_inst.settings.timeOnly||maxDateTimeDate.getTime()==dp_date.getTime()){this._defaults.hourMax=maxDateTime.getHours();if(this.hour>=this._defaults.hourMax){this.hour=this._defaults.hourMax;this._defaults.minuteMax=maxDateTime.getMinutes();if(this.minute>=this._defaults.minuteMax){this.minute=this._defaults.minuteMax;this._defaults.secondMax=maxDateTime.getSeconds()}else{if(this.second>this._defaults.secondMax){this.second=this._defaults.secondMax}this._defaults.secondMax=this.secondMaxOriginal}}else{this._defaults.minuteMax=this.minuteMaxOriginal;this._defaults.secondMax=this.secondMaxOriginal}}else{this._defaults.hourMax=this.hourMaxOriginal;this._defaults.minuteMax=this.minuteMaxOriginal;this._defaults.secondMax=this.secondMaxOriginal}}if(adjustSliders!==undefined&&adjustSliders===true){var hourMax=(this._defaults.hourMax-(this._defaults.hourMax%this._defaults.stepHour)).toFixed(0),minMax=(this._defaults.minuteMax-(this._defaults.minuteMax%this._defaults.stepMinute)).toFixed(0),secMax=(this._defaults.secondMax-(this._defaults.secondMax%this._defaults.stepSecond)).toFixed(0);if(this.hour_slider){this.hour_slider.slider("option",{min:this._defaults.hourMin,max:hourMax}).slider("value",this.hour)}if(this.minute_slider){this.minute_slider.slider("option",{min:this._defaults.minuteMin,max:minMax}).slider("value",this.minute)}if(this.second_slider){this.second_slider.slider("option",{min:this._defaults.secondMin,max:secMax}).slider("value",this.second)}}},_onTimeChange:function(){var hour=(this.hour_slider)?this.hour_slider.slider("value"):false,minute=(this.minute_slider)?this.minute_slider.slider("value"):false,second=(this.second_slider)?this.second_slider.slider("value"):false,timezone=(this.timezone_select)?this.timezone_select.val():false;
	if(typeof(hour)=="object"){hour=false}if(typeof(minute)=="object"){minute=false}if(typeof(second)=="object"){second=false}if(typeof(timezone)=="object"){timezone=false}if(hour!==false){hour=parseInt(hour,10)}if(minute!==false){minute=parseInt(minute,10)}if(second!==false){second=parseInt(second,10)}var ampm=(hour<12)?"AM":"PM";var hasChanged=(hour!=this.hour||minute!=this.minute||second!=this.second||(this.ampm.length>0&&this.ampm!=ampm)||timezone!=this.timezone);if(hasChanged){if(hour!==false){this.hour=hour}if(minute!==false){this.minute=minute}if(second!==false){this.second=second}if(timezone!==false){this.timezone=timezone}if(!this.inst){this.inst=$.datepicker._getInst(this.$input[0])}this._limitMinMaxDateTime(this.inst,true)}if(this._defaults.ampm){this.ampm=ampm}this._formatTime();if(this.$timeObj){this.$timeObj.text(this.formattedTime+this._defaults.timeSuffix)}this.timeDefined=true;if(hasChanged){this._updateDateTime()}},_onSelectHandler:function(){var onSelect=this._defaults.onSelect;var inputEl=this.$input?this.$input[0]:null;if(onSelect&&inputEl){onSelect.apply(inputEl,[this.formattedDateTime,this])}},_formatTime:function(time,format,ampm){if(ampm==undefined){ampm=this._defaults.ampm}time=time||{hour:this.hour,minute:this.minute,second:this.second,ampm:this.ampm,timezone:this.timezone};var tmptime=format||this._defaults.timeFormat.toString();if(ampm){var hour12=((time.ampm=="AM")?(time.hour):(time.hour%12));hour12=(Number(hour12)===0)?12:hour12;tmptime=tmptime.toString().replace(/hh/g,((hour12<10)?"0":"")+hour12).replace(/h/g,hour12).replace(/mm/g,((time.minute<10)?"0":"")+time.minute).replace(/m/g,time.minute).replace(/ss/g,((time.second<10)?"0":"")+time.second).replace(/s/g,time.second).replace(/TT/g,time.ampm.toUpperCase()).replace(/Tt/g,time.ampm.toUpperCase()).replace(/tT/g,time.ampm.toLowerCase()).replace(/tt/g,time.ampm.toLowerCase()).replace(/T/g,time.ampm.charAt(0).toUpperCase()).replace(/t/g,time.ampm.charAt(0).toLowerCase()).replace(/z/g,time.timezone)}else{tmptime=tmptime.toString().replace(/hh/g,((time.hour<10)?"0":"")+time.hour).replace(/h/g,time.hour).replace(/mm/g,((time.minute<10)?"0":"")+time.minute).replace(/m/g,time.minute).replace(/ss/g,((time.second<10)?"0":"")+time.second).replace(/s/g,time.second).replace(/z/g,time.timezone);tmptime=$.trim(tmptime.replace(/t/gi,""))}if(arguments.length){return tmptime}else{this.formattedTime=tmptime}},_updateDateTime:function(dp_inst){dp_inst=this.inst||dp_inst,dt=new Date(dp_inst.selectedYear,dp_inst.selectedMonth,dp_inst.selectedDay),dateFmt=$.datepicker._get(dp_inst,"dateFormat"),formatCfg=$.datepicker._getFormatConfig(dp_inst),timeAvailable=dt!==null&&this.timeDefined;this.formattedDate=$.datepicker.formatDate(dateFmt,(dt===null?new Date():dt),formatCfg);var formattedDateTime=this.formattedDate;if(dp_inst.lastVal!==undefined&&(dp_inst.lastVal.length>0&&this.$input.val().length===0)){return}if(this._defaults.timeOnly===true){formattedDateTime=this.formattedTime}else{if(this._defaults.timeOnly!==true&&(this._defaults.alwaysSetTime||timeAvailable)){formattedDateTime+=this._defaults.separator+this.formattedTime+this._defaults.timeSuffix
	}}this.formattedDateTime=formattedDateTime;if(!this._defaults.showTimepicker){this.$input.val(this.formattedDate)}else{if(this.$altInput&&this._defaults.altFieldTimeOnly===true){this.$altInput.val(this.formattedTime);this.$input.val(this.formattedDate)}else{if(this.$altInput){this.$altInput.val(formattedDateTime);this.$input.val(formattedDateTime)}else{this.$input.val(formattedDateTime)}}}this.$input.trigger("change")}});$.fn.extend({timepicker:function(o){o=o||{};var tmp_args=arguments;if(typeof o=="object"){tmp_args[0]=$.extend(o,{timeOnly:true})}return $(this).each(function(){$.fn.datetimepicker.apply($(this),tmp_args)})},datetimepicker:function(o){o=o||{};var $input=this,tmp_args=arguments;if(typeof(o)=="string"){if(o=="getDate"){return $.fn.datepicker.apply($(this[0]),tmp_args)}else{return this.each(function(){var $t=$(this);$t.datepicker.apply($t,tmp_args)})}}else{return this.each(function(){var $t=$(this);$t.datepicker($.timepicker._newInst($t,o)._defaults)})}}});$.datepicker._base_selectDate=$.datepicker._selectDate;$.datepicker._selectDate=function(id,dateStr){var inst=this._getInst($(id)[0]),tp_inst=this._get(inst,"timepicker");if(tp_inst){tp_inst._limitMinMaxDateTime(inst,true);inst.inline=inst.stay_open=true;this._base_selectDate(id,dateStr+tp_inst._defaults.separator+tp_inst.formattedTime+tp_inst._defaults.timeSuffix);inst.inline=inst.stay_open=false;this._notifyChange(inst);this._updateDatepicker(inst)}else{this._base_selectDate(id,dateStr)}};$.datepicker._base_updateDatepicker=$.datepicker._updateDatepicker;$.datepicker._updateDatepicker=function(inst){var input=inst.input[0];if($.datepicker._curInst&&$.datepicker._curInst!=inst&&$.datepicker._datepickerShowing&&$.datepicker._lastInput!=input){return}if(typeof(inst.stay_open)!=="boolean"||inst.stay_open===false){this._base_updateDatepicker(inst);var tp_inst=this._get(inst,"timepicker");if(tp_inst){tp_inst._addTimePicker(inst)}}};$.datepicker._base_doKeyPress=$.datepicker._doKeyPress;$.datepicker._doKeyPress=function(event){var inst=$.datepicker._getInst(event.target),tp_inst=$.datepicker._get(inst,"timepicker");if(tp_inst){if($.datepicker._get(inst,"constrainInput")){var ampm=tp_inst._defaults.ampm,dateChars=$.datepicker._possibleChars($.datepicker._get(inst,"dateFormat")),datetimeChars=tp_inst._defaults.timeFormat.toString().replace(/[hms]/g,"").replace(/TT/g,ampm?"APM":"").replace(/Tt/g,ampm?"AaPpMm":"").replace(/tT/g,ampm?"AaPpMm":"").replace(/T/g,ampm?"AP":"").replace(/tt/g,ampm?"apm":"").replace(/t/g,ampm?"ap":"")+" "+tp_inst._defaults.separator+tp_inst._defaults.timeSuffix+(tp_inst._defaults.showTimezone?tp_inst._defaults.timezoneList.join(""):"")+dateChars,chr=String.fromCharCode(event.charCode===undefined?event.keyCode:event.charCode);return event.ctrlKey||(chr<" "||!dateChars||datetimeChars.indexOf(chr)>-1)}}return $.datepicker._base_doKeyPress(event)};$.datepicker._base_doKeyUp=$.datepicker._doKeyUp;$.datepicker._doKeyUp=function(event){var inst=$.datepicker._getInst(event.target),tp_inst=$.datepicker._get(inst,"timepicker");
	if(tp_inst){if(tp_inst._defaults.timeOnly&&(inst.input.val()!=inst.lastVal)){try{$.datepicker._updateDatepicker(inst)}catch(err){$.datepicker.log(err)}}}return $.datepicker._base_doKeyUp(event)};$.datepicker._base_gotoToday=$.datepicker._gotoToday;$.datepicker._gotoToday=function(id){this._base_gotoToday(id);this._setTime(this._getInst($(id)[0]),new Date())};$.datepicker._disableTimepickerDatepicker=function(target,date,withDate){var inst=this._getInst(target),tp_inst=this._get(inst,"timepicker");$(target).datepicker("getDate");if(tp_inst){tp_inst._defaults.showTimepicker=false;tp_inst._updateDateTime(inst)}};$.datepicker._enableTimepickerDatepicker=function(target,date,withDate){var inst=this._getInst(target),tp_inst=this._get(inst,"timepicker");$(target).datepicker("getDate");if(tp_inst){tp_inst._defaults.showTimepicker=true;tp_inst._addTimePicker(inst);tp_inst._updateDateTime(inst)}};$.datepicker._setTime=function(inst,date){var tp_inst=this._get(inst,"timepicker");if(tp_inst){var defaults=tp_inst._defaults,hour=date?date.getHours():defaults.hour,minute=date?date.getMinutes():defaults.minute,second=date?date.getSeconds():defaults.second;if((hour<defaults.hourMin||hour>defaults.hourMax)||(minute<defaults.minuteMin||minute>defaults.minuteMax)||(second<defaults.secondMin||second>defaults.secondMax)){hour=defaults.hourMin;minute=defaults.minuteMin;second=defaults.secondMin}tp_inst.hour=hour;tp_inst.minute=minute;tp_inst.second=second;if(tp_inst.hour_slider){tp_inst.hour_slider.slider("value",hour)}if(tp_inst.minute_slider){tp_inst.minute_slider.slider("value",minute)}if(tp_inst.second_slider){tp_inst.second_slider.slider("value",second)}tp_inst._onTimeChange();tp_inst._updateDateTime(inst)}};$.datepicker._setTimeDatepicker=function(target,date,withDate){var inst=this._getInst(target),tp_inst=this._get(inst,"timepicker");if(tp_inst){this._setDateFromField(inst);var tp_date;if(date){if(typeof date=="string"){tp_inst._parseTime(date,withDate);tp_date=new Date();tp_date.setHours(tp_inst.hour,tp_inst.minute,tp_inst.second)}else{tp_date=new Date(date.getTime())}if(tp_date.toString()=="Invalid Date"){tp_date=undefined}this._setTime(inst,tp_date)}}};$.datepicker._base_setDateDatepicker=$.datepicker._setDateDatepicker;$.datepicker._setDateDatepicker=function(target,date){var inst=this._getInst(target),tp_date=(date instanceof Date)?new Date(date.getTime()):date;this._updateDatepicker(inst);this._base_setDateDatepicker.apply(this,arguments);this._setTimeDatepicker(target,tp_date,true)};$.datepicker._base_getDateDatepicker=$.datepicker._getDateDatepicker;$.datepicker._getDateDatepicker=function(target,noDefault){var inst=this._getInst(target),tp_inst=this._get(inst,"timepicker");if(tp_inst){this._setDateFromField(inst,noDefault);var date=this._getDate(inst);if(date&&tp_inst._parseTime($(target).val(),tp_inst.timeOnly)){date.setHours(tp_inst.hour,tp_inst.minute,tp_inst.second)}return date}return this._base_getDateDatepicker(target,noDefault)};$.datepicker._base_parseDate=$.datepicker.parseDate;
	$.datepicker.parseDate=function(format,value,settings){var date;try{date=this._base_parseDate(format,value,settings)}catch(err){date=this._base_parseDate(format,value.substring(0,value.length-(err.length-err.indexOf(":")-2)),settings)}return date};$.datepicker._base_optionDatepicker=$.datepicker._optionDatepicker;$.datepicker._optionDatepicker=function(target,name,value){this._base_optionDatepicker(target,name,value);var inst=this._getInst(target),tp_inst=this._get(inst,"timepicker");if(tp_inst){if(name==="minDate"){if(tp_inst._defaults.minDate!==undefined&&tp_inst._defaults.minDate instanceof Date){tp_inst._defaults.minDateTime=new Date(value)}if(tp_inst._defaults.minDateTime!==undefined&&tp_inst._defaults.minDateTime instanceof Date){tp_inst._defaults.minDate=new Date(tp_inst._defaults.minDateTime.getTime())}tp_inst._limitMinMaxDateTime(inst,true)}if(name==="maxDate"){if(tp_inst._defaults.maxDate!==undefined&&tp_inst._defaults.maxDate instanceof Date){tp_inst._defaults.maxDateTime=new Date(value)}if(tp_inst._defaults.maxDateTime!==undefined&&tp_inst._defaults.maxDateTime instanceof Date){tp_inst._defaults.maxDate=new Date(tp_inst._defaults.maxDateTime.getTime())}tp_inst._limitMinMaxDateTime(inst,true)}}};function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]===null||props[name]===undefined){target[name]=props[name]}}return target}$.timepicker=new Timepicker();$.timepicker.version="0.9.6"})(jQuery);	
});

var plugin = "intranet_users";

$(function() 
{
	// only used for making the meta grey box appear on zlpress pages
	$('#meta_wrapper').load('/index.php #meta');
	
	if($('#return_time').val() == 'N/A') $('#return_time').attr('disabled', 'disabled');
	$('#return_time').datetimepicker();

	$('#update_status').click(function(event)
	{
		event.preventDefault();
		
		if($('#status-select').val() == '')
		{
			$("#status-error").dialog(
			{
				modal: true,
				buttons: 
				{
					Ok: function() 
					{
						$(this).dialog("close");
					}
				}
			});
			return false;
		}
		
		var data = $('#status-update-form').serialize() + "&action=" + plugin + "_update_status";
		
		$.ajax(
		{
			url: 'index.php',
			type: 'POST',
			data: data,
			dataType: 'json',
			success: function(response)
			{
				var parent = $('#intranet_users_' + response.id);
				
				// parent.children('.status-col').html(response.status).css('background-color', 'yellow').animate({'background-color': '#f2f2f2'}, 800);
				// parent.children('.return-time-col').html(response.return_time).css('background-color', 'yellow').animate({'background-color': '#f2f2f2'}, 800);
				// parent.children('.remarks-col').html(response.remarks).css('background-color', 'yellow').animate({'background-color': '#f2f2f2'}, 800);
				// parent.children('.schedule-col').html(response.schedule).css('background-color', 'yellow').animate({'background-color': '#f2f2f2'}, 800);
			
				parent.children('.status-col').html(response.colorized_status);
				parent.children('.return-time-col').html(response.return_time);
				parent.children('.remarks-col').html(response.remarks);
				parent.children('.schedule-col').html(response.schedule);
				
				$('#top-status').html(response.status);
				$('#top-return_time').html(response.return_time);
				
				$('#message').hide().html(response.message).show(800).delay(3000).hide(800);
			}
		});
	});
	
	$('#message .fade').delay(6000).hide(800);
	
	$('#status-select').change(function()
	{
		if($(this).val() == 'in')
			$('#return_time').val('N/A').attr('disabled', 'disabled');
		else
			if($('#return_time').val() == 'N/A') $('#return_time').val('').removeAttr('disabled');
	});
	
	var refreshInterval = setInterval(function()
	{
		$('#refresh-wrapper').load('/in-out-board #refresh-container', '', function(responseText, textStatus, jqXHR)
		{
			if($('#refresh-wrapper').html() == '')
			{
				// clearInterval(refreshInterval);
				
				$("#logout-error").dialog(
				{
					modal: true,
					buttons: 
					{
						Login: function() 
						{
							window.location = window.location;
						}
					}
				});
				return false;
			}
			else
			{
				$('#logout-error').dialog('close');
			}
			
			$('#update-status').css('background-color', '#feff80').animate({'background-color': '#f2f2f2'}, 800);
		});
	}, 30000);
	
	$('#update-status').click(function()
	{
		$(this).css('background-color', '#feff80').animate({'background-color': '#f2f2f2'}, 800);
	});
	
});

function colorize_status(status)
{
	var proper = prover.replace('-', ' ');
	
	proper = (proper + '').replace(/^([a-z])|\s+([a-z])/g, function ($1) 
	{
		return $1.toUpperCase();
	});
	

	var ret = "<span class=\"status " + status + "-status\">" +
		"<span class=\"status-bullet\"></span>" +
		"<span>" + proper + "</span>" +
	"</span>";
	
	return ret;
}
