Ext.override(Ext.dd.DDProxy,{startDrag:function(x,y){BNCal.dd.delayPolling(BNCal.dd.pollingId);var dragEl=Ext.get(this.getDragEl());var el=Ext.get(this.getEl());dragEl.applyStyles({border:'','z-index':2000});dragEl.update(el.dom.innerHTML);dragEl.addClass(el.dom.className+' dd-proxy');},onDragOver:function(e,targetId){if(BNCal.dd.checkDropZone(targetId))
{var target=Ext.get(targetId);this.lastTarget=target;target.addClass('dd-over');}},onDragOut:function(e,targetId){if(BNCal.dd.checkDropZone(targetId))
{var target=Ext.get(targetId);this.lastTarget=null;target.removeClass('dd-over');}},endDrag:function(){var dragEl=Ext.get(this.getDragEl());var el=Ext.get(this.getEl());var t=this;if((this.lastTarget)&&(BNCal.dd.checkFinalDropZone(el,this))){Ext.MessageBox.confirm('Confirm','Confirm Appointment Time Change?',function(btn){if(btn=='yes')
{BNCal.dd.setApptConfig(el,t);Ext.getDom(el.id).removeAttribute('ext:qtip');Ext.getDom(el.id).removeAttribute('ext:qtitle');Ext.get(t.lastTarget).appendChild(el);BNCal.dd.commencePolling(BNCal.dd.pollingId);}
Ext.get(t.lastTarget).removeClass('dd-over');});}}});Ext.BLANK_IMAGE_URL='/public/scripts/extjs/resources/images/default/s.gif';Ext.namespace('BNCal');BNCal.dd=function(){var msgCt;return{init:function(){BNCal.dd.inited=0;BNCal.dd.enableClick=true;BNCal.dd.apptHeightIncrement=11;BNCal.dd.breaks=new Array();Ext.QuickTips.init();Ext.apply(Ext.QuickTips.getQuickTip(),{maxWidth:250,minWidth:250,showDelay:1,trackMouse:true});BNCal.dd.genericProcessingDiv='<div style="height: 100%; width: 100%; background-color: #ffffff; padding-top: 10px; padding-left: 25px; padding-bottom: 50px;"><div id="genericProcessingDiv" style="color: #660000; font-weight: bold; font-size: 14px; background-color: #ffffff; height: 100%; width: 100%;"><img src="/public/images/smallLoading.gif" hspace=5>Processing Your Request..</br /><br /></div></div>';BNCal.dd.apptObjs=new Array();BNCal.dd.setBusinessId(Ext.getDom('currentBusinessId').innerHTML);BNCal.dd.setBusinessUserId(Ext.getDom('currentBusinessUserId').innerHTML);BNCal.dd.setResourceId(Ext.getDom('currentResourceId').innerHTML);if(BNCal.dd.currentResourceId!=0)
BNCal.dd.isResource=true;else
BNCal.dd.isResource=false;BNCal.dd.beginDate=Ext.getDom('beginDate').innerHTML;BNCal.dd.endDate=Ext.getDom('endDate').innerHTML;BNCal.dd.runOnce=0;BNCal.dd.infoWindowOpen=false;var dropZones=eval(Ext.getDom('createDropZones').innerHTML);if(dropZones[0]!='none')
{for(x=0;x<dropZones.length;x++)
{var dz1=new Ext.dd.DropZone(dropZones[x],{ddGroup:'group'});}}
var eventsOut='';BNCal.dd.enableClick=true;Ext.Ajax.request({url:'/calendar/checkEnable',success:function(req){en=eval('('+req.responseText+')');BNCal.dd.enableClick=en["enabled"];},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId}});if(!(BNCal.dd.isResource))
{Ext.Ajax.request({url:'/calendar/getEvents',success:function(req){BNCal.dd.debug(req.responseText);calEvents=eval('('+req.responseText+')');if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{BNCal.dd.createApptMonthElement(calEvents);}
else
{for(x=0;x<calEvents.length;x++)
{BNCal.dd.createApptElement(calEvents[x]);if(calEvents[x]["fullfilled"]!='Y')
BNCal.dd.createDraggable(calEvents[x]);BNCal.dd.setQuickTips(calEvents[x]["startTimeT"]+'_'+calEvents[x]["id"],calEvents[x]);BNCal.dd.createResizable(calEvents[x]);}}
},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId,businessUserId:BNCal.dd.currentBusinessUserId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});Ext.Ajax.request({url:'/calendar/getBlocks',success:function(req){BNCal.dd.debug(req.responseText);calEvents=eval('('+req.responseText+')');for(x=0;x<calEvents.length;x++)
{BNCal.dd.createBlockedElement(calEvents[x]);BNCal.dd.createBlockedResizable(calEvents[x]);}
},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId,businessUserId:BNCal.dd.currentBusinessUserId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});}
Ext.Ajax.request({url:'/calendar/getBreaks',success:function(req){BNCal.dd.debug(req.responseText);calEvents=eval('('+req.responseText+')');for(x=0;x<calEvents.length;x++)
{BNCal.dd.createBreakElement(calEvents[x]);BNCal.dd.createBreakResizable(calEvents[x]);}
},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId,businessUserId:BNCal.dd.currentBusinessUserId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});if(BNCal.dd.isResource)
{Ext.Ajax.request({url:'/calendar/getResources',success:function(req){BNCal.dd.debug(req.responseText);calResources=eval('('+req.responseText+')');if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
BNCal.dd.createResourceMonthElement(calResources);else
{for(x=0;x<calResources.length;x++)
{BNCal.dd.createResourceElement(calResources[x]);if(calResources[x]["fullfilled"]!='Y')
BNCal.dd.createDraggableResource(calResources[x]);BNCal.dd.createResizableResource(calResources[x]);BNCal.dd.setQuickTips(calResources[x]["startTimeT"]+'_'+calResources[x]["id"],calResources[x]);}
}},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId,resourceId:BNCal.dd.currentResourceId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});Ext.Ajax.request({url:'/calendar/getResourceBlocks',success:function(req){BNCal.dd.debug(req.responseText);calEvents=eval('('+req.responseText+')');for(x=0;x<calEvents.length;x++)
{BNCal.dd.createBlockedElement(calEvents[x]);BNCal.dd.createBlockedResizable(calEvents[x]);}
},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId,resourceId:BNCal.dd.currentResourceId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});}
BNCal.dd.inited=1;},createEventBox:function(d){var target=Ext.get(d);BNCal.dd.debug(d.id);BNCal.dd.showCreateWindow(d.id);},ajaxResize:function(w,y){BNCal.dd.delayPolling(BNCal.dd.pollingId);var minutes=Math.floor((y/BNCal.dd.apptHeightIncrement)*5);var hours=Math.floor((minutes/60));if(minutes%5!=0)
minutes++;var times=w.el.id.split("T");var x=times[times.length-1].substring(0,2);var z=times[times.length-1].substring(2,4);var time=new Date(2007,0,1,x,z,0);var t=new Date(time.getTime()+(minutes*60*1000));var startTime=x+''+z;var tmpEndHour=t.getHours();var tmpEndMinute=t.getMinutes();if(tmpEndHour<10)
tmpEndHour="0"+tmpEndHour;if(tmpEndMinute<10)
tmpEndMinute="0"+tmpEndMinute;var endTime=tmpEndHour+''+tmpEndMinute;var parts=w.el.id.split("_");var parentId=parts[0];var id=parts[1];if(BNCal.dd.isResource)
var useUrl='/calendar/changeResourceTime';else
var useUrl='/calendar/changeBookingTime';Ext.Ajax.request({url:useUrl,success:function(req){var s=eval('('+req.responseText+')');var del=Ext.getDom(w.el.id);if(s["height"]>45)
{var childHtml='<div style="height: 100%;" id="qtip_'+parentId+'" ><div class="apptContent"><b>'+s["startTime"]+' - '+s["endTime"]+'</b></div><div class="apptContent1" id="qtip_'+parentId+'_x1">'+s["clientName"]+'<br>'+s["clientPhone"]+'<br>'+s["businessServiceName"]+'</div></div>';}
else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
var childHtml='<div class="apptContent1"><b>'+s["businessServiceName"]+'</b></div>';else
var childHtml='<div id="qtip_'+parentId+'"><div class="apptContent" id="qtip_'+parentId+'_x1"><b>'+s["businessServiceName"]+'</b></div></div>';}
del.innerHTML=childHtml;BNCal.dd.createResizable(s);BNCal.dd.setQuickTips(w.el.id,s);if(Ext.get('info_'+id+'_content')!=undefined)
BNCal.dd.repaintInfoWindow(w.el);},failure:function(){showNetworkError();},params:{id:id,startHour:x,startMinute:z,endHour:tmpEndHour,endMinute:tmpEndMinute,startDate:times[0],endDate:times[0],changeEvent:'resize',calendarView:BNCal.dd.currentCalendarUrl}});BNCal.dd.commencePolling(BNCal.dd.pollingId);},ajaxBlockResize:function(w,y){BNCal.dd.delayPolling(BNCal.dd.pollingId);var minutes=Math.floor((y/BNCal.dd.apptHeightIncrement)*5);var hours=Math.floor((minutes/60));if(minutes%5!=0)
minutes++;var times=w.el.id.split("T");var x=times[times.length-1].substring(0,2);var z=times[times.length-1].substring(2,4);var time=new Date(2007,0,1,x,z,0);var t=new Date(time.getTime()+(minutes*60*1000));var startTime=x+''+z;var tmpEndHour=t.getHours();var tmpEndMinute=t.getMinutes();if(tmpEndHour<10)
tmpEndHour="0"+tmpEndHour;if(tmpEndMinute<10)
tmpEndMinute="0"+tmpEndMinute;var endTime=tmpEndHour+''+tmpEndMinute;var parts=w.el.id.split("_");var id=parts[2];Ext.Ajax.request({url:'/calendar/changeBlockTime',success:function(req){var s=eval('('+req.responseText+')');var del=Ext.getDom(w.el.id);if(s["height"]>45)
var childHtml='<div style="width: 100%; font-size: 9px; background-color: #660000; color: #fff;"><b>'+s["startTime"]+' - '+s["endTime"]+'</b></div><div style="width: 100%; text-align: left; ">Blocked</div>';else
var childHtml='<div style="width: 100%; text-align: left; background-color: #660000; color: #fff;"><b>Blocked</b></div>';del.innerHTML=childHtml;BNCal.dd.createBlockedResizable(s);},failure:function(){showNetworkError();},params:{id:id,startHour:x,startMinute:z,endHour:tmpEndHour,endMinute:tmpEndMinute,startDate:times[0],endDate:times[0],changeEvent:'resize',calendarView:BNCal.dd.currentCalendarUrl}});BNCal.dd.commencePolling(BNCal.dd.pollingId);},checkDropZone:function(dz){if(dz=='holdingTank')
return true;var dropZones=eval(Ext.getDom('createDropZones').innerHTML);for(x=0;x<dropZones.length;x++)
{if(dz==dropZones[x])
return true;}
return false;},closeInfoWindow:function(w,c)
{Ext.get(w).remove();if(Ext.get(c)!=undefined)
Ext.get(c).removeClass('dd-over');BNCal.dd.commencePolling(BNCal.dd.pollingId);},closeCreateWindow:function(w,c)
{if(Ext.get(c)!=undefined)
Ext.get(c).removeClass('dd-over');Ext.get(w).remove();BNCal.dd.commencePolling(BNCal.dd.pollingId);},markCompleteAppt:function(w)
{var parts=w.split("_");var id=parts[1];Ext.Ajax.request({url:'ajax/markCompleteAppt.php',success:function(req){if(Ext.get('info_'+id)!=undefined)
Ext.getDom('info_'+id+'_content').innerHTML=req.responseText;},failure:function(){showNetworkError();},params:{id:id,closeId:'info_'+id}});},cancelAppt:function(w)
{var parts=w.split("_");var id=parts[1];Ext.Ajax.request({url:'ajax/cancelAppt.php',success:function(req){if(Ext.get('info_'+id)!=undefined)
Ext.getDom('info_'+id+'_content').innerHTML=req.responseText;},failure:function(){showNetworkError();},params:{id:id,closeId:'info_'+id}});},repaintInfoWindow:function(d)
{var parts=d.id.split("_");var id=parts[1];Ext.Ajax.request({url:'ajax/clientInfoContentOnly.php',success:function(req){if(Ext.get('info_'+id)!=undefined)
Ext.getDom('info_'+id+'_content').innerHTML=req.responseText;},failure:function(){showNetworkError();},params:{id:id,closeId:'info_'+id}});},toggleInfoWindows:function(w)
{if(!(BNCal.dd.infoWindowOpen))
BNCal.dd.infoWindowOpen=true;else
BNCal.dd.infoWindowOpen=false;},showInfoWindow:function()
{d=this;BNCal.dd.toggleInfoWindows();BNCal.dd.debug('looking at '+Ext.getDom(d).id+' '+BNCal.dd.currentUrl);var parts=Ext.getDom(d).id.split("_");var id=parts[1];var t=parts[0];if(Ext.get('info_'+id)!=undefined)
Ext.get('info_'+id).remove();if(Ext.getCmp('info_'+id)!=undefined)
Ext.getCmp('info_'+id).close();var parts=t.split("T");var ti=parts[1].substring(0,2);if(BNCal.dd.isResource)
{var mbptitle='Booked Resource';var tUrl='/calendar/bookedResourceInfo';}
else
{var mbptitle='Booked Appointment';var tUrl='/calendar/bookedApointmentInfo';}
var params='id='+id+'&closeId=info_'+id+'&origId='+d.id;BNCal.dd.mbepop(tUrl+'?'+params,mbptitle);},showInfoWindowDay:function(d)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);var parts=d.id.split("_");var id=parts[1];Ext.Ajax.request({url:'ajax/clientInfo.php',success:function(req){if(Ext.get('info_'+id)!=undefined)
Ext.get('info_'+id).remove();if(!dh){var dh=Ext.DomHelper.append(Ext.get('contentPane'),{id:'info_'+id,style:'z-index: 1000',html:req.responseText},true);}
dh.alignTo(d,'t?');},failure:function(){showNetworkError();},params:{id:id,closeId:'info_'+id,origId:d.id,icalId:Ext.fly(d).getAttributeNS('bn','icalId')}});},showCreateWindow:function(d)
{var timeParts=Ext.getDom(d).id.split('T');var startDate=timeParts[0];var startTime=timeParts[1];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{parts1=Ext.getDom(d).id.split("::");businessId=parts1[0];if(BNCal.dd.isResource)
resourceId=parts1[1];else
businessUserId=parts1[1];timeParts=parts1[2].split('T');startDate=timeParts[0];startTime=timeParts[1];}
else
{businessId=BNCal.dd.currentBusinessId;businessUserId=BNCal.dd.currentBusinessUserId;}
if((startDate>0)&&(startTime>0))
{var partsx=Ext.getDom(d).id.split("T");var ti=partsx[1].substring(0,2);if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{parts1=Ext.getDom(d).id.split("::");businessId=parts1[0];if(BNCal.dd.isResource)
resourceId=parts1[1];else
businessUserId=parts1[1];timeParts=parts1[2].split('T');startDate=timeParts[0];startTime=timeParts[1];}
else
{businessId=BNCal.dd.currentBusinessId;businessUserId=BNCal.dd.currentBusinessUserId;}
if(BNCal.dd.isResource)
{var mbptitle='Book Resource';var tUrl='/calendar/createResourceInfo';if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
businessUserId=resourceId;else
businessUserId=BNCal.dd.currentResourceId;params='businessId='+businessId+'&businessUserId='+businessUserId+'&startDate='+startDate+'&startTime='+startTime;}
else
{var mbptitle='Book Appointment';var tUrl='/calendar/createAppointmentInfo';params='businessId='+businessId+'&businessUserId='+businessUserId+'&startDate='+startDate+'&startTime='+startTime;}
BNCal.dd.mbpop(tUrl+'?'+params,mbptitle);}},mbpop:function(t,tp)
{$('body').append('<div id="mbpopdialog" title="'+tp+'"></div>');$("#mbpopdialog").load(t).dialog({bgiframe:true,height:550,width:700,modal:false,close:function(){$('#mbpopdialog').remove();}});$("#mbpopdialog").dialog('open');},mbepop:function(t,tp)
{$('body').append('<div id="mbpopdialog" title="'+tp+'"></div>');$("#mbpopdialog").load(t).dialog({bgiframe:true,autoOpen:false,height:550,width:600,modal:true,close:function(){$('#mbpopdialog').remove();}});$("#mbpopdialog").dialog('open');},cancelMbpop:function()
{$('#mbpopdialog').remove();},loadFirstNameAutoComplete:function(tindex)
{new Ext.form.ComboBox({id:'lastName',anchor:'125%',tabIndex:tindex,name:'lastName',applyTo:'lastName',allowBlank:true,store:blnameStore,typeAhead:false,mode:'remote',hideTrigger:true,tpl:clientTpl,triggerAction:'all',loadingText:'Searching Client Database....',minChars:4,width:160,listWidth:200,itemSelector:'div.search-item',queryParam:'lastName',queryDelay:250,clearCls:'killextcss',cls:'killextcss',onSelect:function(record){Ext.getDom('firstName').value=record.data.clientFirstName;Ext.getDom('lastName').value=record.data.clientLastName;Ext.getDom('email').value=record.data.clientEmail;Ext.getDom('address1').value=record.data.clientAddress1;Ext.getDom('address2').value=record.data.clientAddress2;Ext.getDom('phone').value=record.data.clientPhone;Ext.getDom('city').value=record.data.clientCity;Ext.getDom('zip').value=record.data.clientZip;var doby=record.data.clientDOB.substring(0,4);var dobm=record.data.clientDOB.substring(4,6);var dobd=record.data.clientDOB.substring(6,8);$('#year').val(doby);$('#day').val(dobd);$('#month').val(dobm);doZipBook(Ext.getDom('zip'));this.collapse();}});},loadEmailAutoComplete:function(tindex)
{new Ext.form.ComboBox({id:'email',anchor:'125%',tabIndex:tindex,name:'email',applyTo:'email',allowBlank:true,store:bemailStore,typeAhead:false,mode:'remote',hideTrigger:true,tpl:clientTpl,triggerAction:'all',loadingText:'Searching Client Database....',minChars:8,width:160,listWidth:200,itemSelector:'div.search-item',queryParam:'email',queryDelay:250,onSelect:function(record){Ext.getDom('firstName').value=record.data.clientFirstName;Ext.getDom('lastName').value=record.data.clientLastName;Ext.getDom('email').value=record.data.clientEmail;Ext.getDom('address1').value=record.data.clientAddress1;Ext.getDom('address2').value=record.data.clientAddress2;Ext.getDom('phone').value=record.data.clientPhone;Ext.getDom('city').value=record.data.clientCity;Ext.getDom('zip').value=record.data.clientZip;var doby=record.data.clientDOB.substring(0,4);var dobm=record.data.clientDOB.substring(4,6);var dobd=record.data.clientDOB.substring(6,8);$('#year').val(doby);$('#day').val(dobd);$('#month').val(dobm);doZipBook(Ext.getDom('zip'));this.collapse();}});},submitApptBook:function(form)
{var parameters=Ext.Ajax.serializeForm(form);Ext.Ajax.request({url:'/calendar/createEventValidate',success:BNCal.dd.handleSubmitApptBook,failure:function(){showNetworkError();},params:parameters});return false;},handleSubmitApptBook:function(req)
{var errors=eval('('+req.responseText+')');Ext.get('error_businessServiceId').hide();Ext.get('error_firstName').hide();Ext.get('error_lastName').hide();Ext.get('error_email').hide();Ext.get('error_phone').hide();for(x=0;x<errors.length;x++)
{var parts=errors[x].split("|");var d=Ext.getDom('error_'+parts[0]);d.innerHTML='<img src="/public/images/icoError.gif" hspace="2" style="cursor: hand;" ext:qtitle="Oops!!" ext:qwidth="100" ext:qtip="'+parts[1]+'"';Ext.get(d).show();}
if(errors.length<=0)
BNCal.dd.postApptBook();},postApptBook:function()
{$('#cmsg').html('<img src="/public/images/smallLoading.gif" hspace=2>');var f=Ext.getDom('apptBookForm');Ext.Ajax.request({url:'/calendar/createEvent1',params:Ext.Ajax.serializeForm(f),success:BNCal.dd.handlePostApptBook,failure:function(){showNetworkError();}});return false;},handlePostApptBook:function(req)
{var y=eval(req.responseText);var s=y[0];if(s["success"]==0)
{$('#cmsg').html('');jQuery(document).trigger('close.facebox');var eventId=s["id"];var parentId=s["domParentId"];var childId=s["domChildId"];var height=s["height"];var duration=s["duration"];var businessServiceName=s["businessServiceName"];var el=Ext.get(parentId).createChild({tag:'div',id:childId,cls:'appt',eventId:eventId,style:'height: '+height+'px',html:businessServiceName});Ext.getDom(childId).setAttribute('ext:qtip',s["qtip"]);Ext.getDom(childId).setAttribute('ext:qtitle',s["qtitle"]);Ext.getDom(childId).setAttribute('ext:qwidth','200');if(BNCal.dd.enableClick)
el.on('click',function(btn){BNCal.dd.showInfoWindow(btn);});var dd11=Ext.get(childId);dd11.dd=new Ext.dd.DDProxy(childId,'group',{dragData:{id:childId},scope:this,fn:function(dd,data){}});BNCal.dd.createResizable(s);}
BNCal.dd.commencePolling(BNCal.dd.pollingId);},submitApptChange:function(form)
{var parameters=Ext.Ajax.serializeForm(form);Ext.Ajax.request({url:'/calendar/editEvent',success:BNCal.dd.handleSubmitApptChange,failure:function(){showNetworkError();},params:parameters});return false;},handleSubmitApptChange:function(req)
{var errors=eval('('+req.responseText+')');Ext.get('error_businessServiceId').hide();Ext.get('error_firstName').hide();Ext.get('error_lastName').hide();Ext.get('error_email').hide();Ext.get('error_phone').hide();for(x=0;x<errors.length;x++)
{var parts=errors[x].split("|");var d=Ext.getDom('error_'+parts[0]);d.innerHTML='<img src="/public/images/icoError.gif" hspace="2" style="cursor: hand;" ext:qtitle="Oops!!" ext:qwidth="100" ext:qtip="'+parts[1]+'"';Ext.get(d).show();}
if(errors.length<=0)
BNCal.dd.postApptChange();},postApptChange:function()
{var f=Ext.getDom('apptBookForm');Ext.Ajax.request({url:'/calendar/editEvent1',params:Ext.Ajax.serializeForm(f),success:BNCal.dd.handlePostApptChange,failure:function(){showNetworkError();}});return false;},handlePostApptChange:function(req)
{var s=eval('('+req.responseText+')');if(s["success"]==0)
{BNCal.dd.rePaintApptElementHtml(s["startTimeT"]+'_'+s["id"],s);BNCal.dd.setQuickTips(s["startTimeT"]+'_'+s["id"],s);Ext.get('info_'+s["id"]).remove();}
else
{alert("Problem creating Appt");}
BNCal.dd.commencePolling(BNCal.dd.pollingId);},calendarPoll:function(bid,uid,p)
{if(Ext.get('userCalendarLoading'))
{$('#calinfo').html('<img src="/public/images/smallLoading.gif" hspace=2>');var ph=Ext.getDom(p).innerHTML;var xhrTx=Ext.Ajax.request({url:'/calendar/getEvents',method:'post',success:function(req){var s=eval('('+req.responseText+')');BNCal.dd.removeDeletedAppointments(s);if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{BNCal.dd.rePaintApptMonthElementHtml(s[0]["startTimeT"]+'_'+s[0]["id"],s);}
else
{for(x=0;x<s.length;x++)
{check=s[x]["startTimeT"]+'_'+s[x]["id"];if(Ext.get(check))
BNCal.dd.rePaintApptElementHtml(s[x]["startTimeT"]+'_'+s[x]["id"],s[x]);else
BNCal.dd.createApptElement(s[x]);BNCal.dd.createDraggable(s[x]);BNCal.dd.createResizable(s[x]);BNCal.dd.setQuickTips(s[x]["startTimeT"]+'_'+s[x]["id"],s[x]);}}},failure:function(){},params:{businessId:BNCal.dd.currentBusinessId,businessUserId:BNCal.dd.currentBusinessUserId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});var xhrTx=Ext.Ajax.request({url:'/calendar/getBlocks',success:function(req){BNCal.dd.debug(req.responseText);calEvents=eval('('+req.responseText+')');BNCal.dd.removeBlocks(calEvents);for(x=0;x<calEvents.length;x++)
{check=calEvents[x]["startTimeT"]+'_block_'+calEvents[x]["id"];if(!Ext.get(check))
{BNCal.dd.createBlockedElement(calEvents[x]);BNCal.dd.createBlockedResizable(calEvents[x]);}
else
BNCal.dd.rePaintBlockedElementHtml(calEvents[x]["startTimeT"]+'_'+calEvents[x]["id"],calEvents[x]);}
},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId,businessUserId:BNCal.dd.currentBusinessUserId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});var xhrTx=Ext.Ajax.request({url:'/calendar/getBreaks',success:function(req){BNCal.dd.debug(req.responseText);calEvents=eval('('+req.responseText+')');BNCal.dd.removeBreaks(calEvents);for(x=0;x<calEvents.length;x++)
{check=calEvents[x]["startTimeT"]+'_block_'+calEvents[x]["id"];if(!Ext.get(check))
{BNCal.dd.createBreakElement(calEvents[x]);BNCal.dd.createBreakResizable(calEvents[x]);}
else
BNCal.dd.rePaintBlockedElementHtml(calEvents[x]["startTimeT"]+'_'+calEvents[x]["id"],calEvents[x]);}
$('#calinfo').html('');},failure:function(){showNetworkError();},params:{businessId:BNCal.dd.currentBusinessId,businessUserId:BNCal.dd.currentBusinessUserId,beginDate:BNCal.dd.beginDate,endDate:BNCal.dd.endDate,currentCalendarView:BNCal.dd.currentCalendarUrl}});}},updateCalendarByPolling:function(bid,uid){},setPollingId:function(i){},setPolling:function(){if(!(BNCal.dd.pollingId))
{}},setBusinessId:function(i){BNCal.dd.currentBusinessId=i},setResourceId:function(i){BNCal.dd.currentResourceId=i},setBusinessUserId:function(i){BNCal.dd.currentBusinessUserId=i},delayPolling:function(i){BNCal.dd.delayPoll=i;},commencePolling:function(i){BNCal.dd.delayPoll=null;},setApptConfig:function(el,dd)
{var parts=dd.config.dragData.id.split("_");var id=parts[1];if(Ext.getDom('info_'+id)!=undefined)
BNCal.dd.closeInfoWindow('info_'+id);var newId=dd.lastTarget.id+'_'+id;BNCal.dd.debug(el.id);var timeParts=el.id.split("T");var timeParts1=timeParts[1].split("_");var goodTime=timeParts1[0];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{BNCal.dd.debug('changing '+newId+' ');newId=newId.replace('0000',goodTime);BNCal.dd.debug(' to '+newId);}
dd.config.dragData.id=newId;BNCal.dd.debug('setting dd.config.dragData = '+newId);var newStyle='height: '+el.getStyle('height');var newClass='appt';var minutes=Math.floor((Ext.getDom(el).style.height.replace("px","")/BNCal.dd.apptHeightIncrement)*5);var hours=Math.floor((minutes/60));if(minutes%5!=0)
minutes++;var times=dd.config.dragData.id.split("T");var x=times[times.length-1].substring(0,2);var y=times[times.length-1].substring(2,4);var time=new Date(2007,0,1,times[times.length-1].substring(0,2),times[times.length-1].substring(2,4),0);var t=new Date(time.getTime()+(minutes*60*1000));var startTime=x+''+y;var tmpEndHour=t.getHours();var tmpEndMinute=t.getMinutes();if(tmpEndHour<10)
tmpEndHour="0"+tmpEndHour;if(tmpEndMinute<10)
tmpEndMinute="0"+tmpEndMinute;if(BNCal.dd.isResource)
var useUrl='/calendar/changeResourceTime';else
var useUrl='/calendar/changeBookingTime';Ext.Ajax.request({url:useUrl,success:function(req){var s=eval('('+req.responseText+')');dd.config.dragData.bid=s["bid"];dd.config.dragData.buid=s["buid"];dd.config.dragData.clid=s["clid"];dd.config.dragData.startTimeT=s["startTimeT"];dd.config.dragData.DTSTART=s["DTSTART"];dd.config.dragData.DTSTARTTZID=s["DTSTART;TZID"];dd.config.dragData.DTEND=s["DTEND"];dd.config.dragData.DTENDTZID=s["DTEND;TZID"];dd.config.dragData.summary=s["summary"];dd.config.dragData.duration=s["duration"];var del=Ext.getDom(el.id);del.setAttribute('ext:qtip','');del.setAttribute('ext:qtitle','');del.setAttribute('ext:qtitle','<b>'+s["businessServiceName"]+'</b>');del.setAttribute('ext:qtip','<b>'+s["clientName"]+'</b><br >'+s["startTimeHuman"]+' to '+s["endTimeHuman"]);BNCal.dd.debug('setting id  = '+newId);del.setAttribute('id',newId);BNCal.dd.debug('new is '+newId);BNCal.dd.rePaintApptElementHtml(newId,s);},failure:function(){r=false},params:{id:id,startHour:x,startMinute:y,endHour:tmpEndHour,endMinute:tmpEndMinute,startDate:times[0],endDate:times[0],calendarView:BNCal.dd.currentCalendarUrl}});},checkFinalDropZone:function(el,dd)
{if(dd.lastTarget.id=='holdingTank')
{Ext.getDom(el.id).style.height='25px;'
Ext.getDom(el.id).style.width='100px;'}
return BNCal.dd.checkFor(el,dd);},checkFor:function(el,e)
{var minutes=Math.floor((el.getStyle('height').replace("px","")/BNCal.dd.apptHeightIncrement)*5);var hours=Math.floor((minutes/60));if(minutes%5!=0)
minutes++;var times=e.lastTarget.id.split("T");var x=times[times.length-1].substring(0,2);var y=times[times.length-1].substring(2,4);var time=new Date(2007,0,1,times[times.length-1].substring(0,2),times[times.length-1].substring(2,4),0);var t=new Date(time.getTime()+(minutes*60*1000));var startTime=x+''+y;var tmpEndHour=t.getHours();var tmpEndMinute=t.getMinutes();if(tmpEndHour<10)
tmpEndHour="0"+tmpEndHour;if(tmpEndMinute<10)
tmpEndMinute="0"+tmpEndMinute;var endTime=tmpEndHour+''+tmpEndMinute;return true;},confirmApptTimeChange:function(b)
{},confirmApptServiceProviderChange:function(b)
{},rePaintApptElementHtml:function(overWriteEl,data)
{var height=data["height"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=data["bid"]+'::'+data["buid"]+'::'+data["startTimeT"]+'_'+data["id"];else
workId=overWriteEl;if(Ext.get(workId)==undefined)
return;if((height>45)&&(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')==-1))
var childHtml='<div class="apptContent"><b>'+data["startTime"]+' - '+data["endTime"]+'</b></div><div class="apptContent1">'+data["clientName"]+'<br>'+data["businessServiceName"]+'</div>';else
var childHtml='<div class="apptContent1"><b>'+data["businessServiceName"]+'</b></div>';BNCal.dd.debug(Ext.getDom(workId).innerHTML);BNCal.dd.debug(childHtml);Ext.getDom(workId).innerHTML=childHtml;BNCal.dd.createResizable1(workId,data);BNCal.dd.debug('repainted '+workId);},rePaintApptMonthElementHtml:function(overWriteEl,data)
{workId=overWriteEl.substring(0,9)+'0000';if(Ext.get(workId)==undefined)
return;childHtml='<span style="color: #000;">'+data.length+' events</span>';Ext.getDom(workId).innerHTML=childHtml;},rePaintBlockedElementHtml:function(overWriteEl,data)
{var height=data["height"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=data["bid"]+'::'+data["buid"]+'::'+data["startTimeT"]+'_block_'+data["id"];else
workId=overWriteEl;if(Ext.get(workId)==undefined)
return;if((height>45)&&(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')==-1))
var childHtml='<div style="width: 100%; font-size: 9px; background-color: #660000; color: #fff;"><b>'+data["startTime"]+' - '+data["endTime"]+'</b></div><div style="width: 100%; text-align: left;">Blocked</div>';else
var childHtml='<div style="width: 100%; text-align: left; background-color: #660000; color: #fff;"><b>Blocked</b></div>';Ext.getDom(Ext.fly(workId).innerHTML=childHtml);BNCal.dd.createBlockedResizable1(workId,data);BNCal.dd.debug('repainted '+workId);},reCreateApptElement:function(overWriteEl,data)
{var parentId=data["startTimeT"];var childId=data["startTimeT"]+'_'+data["id"];var height=data["height"];BNCal.dd.debug(height);if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
height=10;margin=height*2;BNCal.dd.debug(height);var qtip='<b>'+data["clientName"]+'</b><br >'+data["clientPhone"]+'<br> '+data["startTimeHuman"]+' to '+data["endTimeHuman"];var qtitle='<b>'+data["businessServiceName"]+'</b>';if(height>45)
{var childHtml='<div style="height: 100%;" id="qtip_'+parentId+'" ><div class="apptContent">'+data["startTime"]+'-'+data["endTime"]+'</div><div class="apptContent1" id="qtip_'+parentId+'_x1">'+data["clientName"]+'<br>'+data["clientPhone"]+'<br>'+data["businessServiceName"]+'</div></div>';}
else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
var childHtml='<div class="apptContent1" ><b>'+data["businessServiceName"]+'</b></div>';else
var childHtml='<div id="qtip_'+parentId+'"><div class="apptContent" id="qtip_'+parentId+'_x1"><b>'+data["businessServiceName"]+'</b></div></div>';}
BNCal.dd.debug(height);BNCal.dd.debug(childHtml);if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{if(data["fullfilled"]=='Y')
var c='apptMonth apptComplete';else
var c='apptMonth';if(data["confirmed"]=='N')
var c='apptMonth needConfirm';Ext.DomHelper.overwrite(Ext.getDom(overWriteEl),{tag:'div',id:childId,cls:c,style:'height: '+height+'px;',html:childHtml},false);}
else
{if(data["fullfilled"]=='Y')
var c='appt apptComplete';else
var c='appt';if(data["confirmed"]=='N')
var c='appt needConfirm';Ext.DomHelper.overwrite(Ext.getDom(overWriteEl),{tag:'div',id:childId,cls:c,style:'height: '+height+'px; margin-bottom: -'+margin+'px;',html:childHtml},false);}},createApptElement:function(data)
{var parentId=data["startTimeT"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
parentId=data["bid"]+'::'+data["buid"]+'::'+parentId;if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
parentId=parentId.substring(0,9)+'0000';if(Ext.get(parentId)==undefined)
return;var parts=parentId.split('T');var parts1=parts[1].split('_');var realStartTime=parts1[0];var realStartMin=realStartTime.substr(2,2);if((realStartMin!='00')||(realStartMin!='15')||(realStartMin!='30')||(realStartMin!='45'))
{}
var childId=data["startTimeT"]+'_'+data["id"];var height=data["height"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
height=10;if(height>45)
{var childHtml='<div style="height: 100%;" id="qtip_'+parentId+'" ><div class="apptContent">'+data["startTime"]+'-'+data["endTime"]+'</div><div class="apptContent1" id="qtip_'+parentId+'_x1">'+data["clientName"]+'<br>'+data["clientPhone"]+'<br>'+data["businessServiceName"]+'</div></div>';}
else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{var childHtml='<div id="qtip_'+parentId+'" ><div class="apptContent1" id="qtip_'+parentId+'_x1">'+data["businessServiceName"]+'</div></div>';}
else
var childHtml='<div id="qtip_'+parentId+'"><div class="apptContent" id="qtip_'+parentId+'_x1"><b>'+data["businessServiceName"]+'</b></div></div>';}
margin=height*2;if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{childId=data["bid"]+'::'+data["buid"]+'::'+childId;}
if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{if(data["fullfilled"]=='Y')
var c='apptMonth apptComplete';else
var c='apptMonth';if(data["confirmed"]=='N')
var c='apptMonth needConfirm';parentId=parentId.substring(0,9)+'0000';Ext.DomHelper.append(Ext.get(parentId),{tag:'div',id:childId,cls:c,style:'height: '+height+'px;',html:childHtml},false);}
else
{if(data["fullfilled"]=='Y')
var c='appt apptComplete';else
var c='appt';if(data["confirmed"]=='N')
var c='appt needConfirm';Ext.DomHelper.insertFirst(Ext.fly(parentId),{tag:'div',id:childId,cls:c,style:'height: '+height+'px; margin-bottom: -'+margin+'px;',html:childHtml},false);}
if(BNCal.dd.enableClick)
Ext.get(childId).on('click',BNCal.dd.showInfoWindow);},createApptMonthElementHelper:function(data,checkDate)
{var out=0;var d=data;var test=checkDate.substring(0,8);for(var z=0;z<d.length;z++)
{var st=d[z]["startTimeT"].substring(0,8);if(st==test)
out++;}
return out;},createApptMonthElement:function(data)
{var done=new Array();var doneCnt=0;for(z=0;z<data.length;z++)
{var st=data[z]["startTimeT"].substring(0,8);var parentId=data[z]["startTimeT"];parentId=parentId.substring(0,9)+'0000';if(Ext.get(parentId)==undefined)
next;var parts=parentId.split('T');var parts1=parts[1].split('_');var realStartTime=parts1[0];var realStartMin=realStartTime.substr(2,2);if((realStartMin!='00')||(realStartMin!='15')||(realStartMin!='30')||(realStartMin!='45'))
{}
var childId=data[z]["startTimeT"]+'_'+data[z]["id"];childHtml='<span style="color: #000">'+BNCal.dd.createApptMonthElementHelper(data,data[z]["startTimeT"])+' events</span>';parentId=parentId.substring(0,9)+'0000';var c='blueEvent';if(data[z]["confirmed"]=='N')
c='orangeEvent';$('#'+parentId+'_d').addClass(c);if(jQuery.inArray(st,done)==-1)
Ext.DomHelper.insertFirst(Ext.get(parentId),{tag:'div',id:childId,html:childHtml},false);done[doneCnt++]=st;}},createResourceElement:function(data)
{var parentId=data["startTimeT"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
parentId=data["bid"]+'::'+data["buid"]+'::'+parentId;if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
parentId=parentId.substring(0,9)+'0000';if(Ext.get(parentId)==undefined)
return;var parts=parentId.split('T');var parts1=parts[1].split('_');var realStartTime=parts1[0];var realStartMin=realStartTime.substr(2,2);if((realStartMin!='00')||(realStartMin!='15')||(realStartMin!='30')||(realStartMin!='45'))
{BNCal.dd.debug('floor'+realStartMin);}
var childId=data["startTimeT"]+'_'+data["id"];var height=data["height"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
height=10;if(height>45)
{var childHtml='<div style="height: 100%;" id="qtip_'+parentId+'" ><div class="apptContent" ><b>'+data["startTime"]+'-'+data["endTime"]+'</b></div><div class="apptContent1"  id="qtip_'+parentId+'_x1">'+data["clientName"]+'<br>'+data["clientPhone"]+'<br>'+data["businessServiceName"]+'</div></div>';}
else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{var childHtml='<div id="qtip_'+parentId+'" ><div class="apptContent1" id="qtip_'+parentId+'_x1">'+data["businessServiceName"]+'</div></div>';}
else
{var childHtml='<div id="qtip_'+parentId+'"><div class="apptContent" id="qtip_'+parentId+'_x1"><b>'+data["businessServiceName"]+'</b></div></div>';}}
margin=height*2;if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{childId=data["bid"]+'::'+data["buid"]+'::'+childId;}
if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{if(data["fullfilled"]=='Y')
var c='apptMonth apptComplete';else
var c='apptMonth';if(data["confirmed"]=='N')
var c='apptMonth needConfirm';parentId=parentId.substring(0,9)+'0000';Ext.DomHelper.append(Ext.get(parentId),{tag:'div',id:childId,cls:c,style:'height: '+height+'px;',html:childHtml},false);}
else
{if(data["fullfilled"]=='Y')
var c='apptMonth apptComplete';else
var c='apptMonth';if(data["confirmed"]=='N')
var c='apptMonth needConfirm';Ext.DomHelper.insertFirst(Ext.fly(parentId),{tag:'div',id:childId,cls:c,style:'height: '+height+'px; margin-bottom: -'+margin+'px;',html:childHtml},false);}
if(BNCal.dd.enableClick)
Ext.get(childId).on('click',BNCal.dd.showInfoWindow);},createResourceMonthElement:function(data)
{var done=new Array();var doneCnt=0;for(z=0;z<data.length;z++)
{var st=data[z]["startTimeT"].substring(0,8);var parentId=data[z]["startTimeT"];parentId=parentId.substring(0,9)+'0000';if(Ext.get(parentId)==undefined)
next;var parts=parentId.split('T');var parts1=parts[1].split('_');var realStartTime=parts1[0];var realStartMin=realStartTime.substr(2,2);if((realStartMin!='00')||(realStartMin!='15')||(realStartMin!='30')||(realStartMin!='45'))
{}
var childId=data[z]["startTimeT"]+'_'+data[z]["id"];childHtml='<span style="color: #000">'+BNCal.dd.createApptMonthElementHelper(data,data[z]["startTimeT"])+' bookings</span>';parentId=parentId.substring(0,9)+'0000';var c='blueEvent';if(data[z]["confirmed"]=='N')
c='orangeEvent';$('#'+parentId+'_d').addClass(c);if(jQuery.inArray(st,done)==-1)
Ext.DomHelper.insertFirst(Ext.get(parentId),{tag:'div',id:childId,html:childHtml},false);done[doneCnt++]=st;}},createBlockedElement:function(data)
{var parentId=data["startTimeT"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
parentId=data["bid"]+'::'+data["buid"]+'::'+parentId;if(Ext.get(parentId)==undefined)
return;var parts=parentId.split('T');var parts1=parts[1].split('_');var childId=data["startTimeT"]+'_block_'+data["id"];var height=data["height"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
height=10;if(height>45)
var childHtml='<div style="width: 100%; font-size: 9px; background-color: #660000; color: #fff;"><b>'+data["startTime"]+' - '+data["endTime"]+'</b></div><div style="width: 100%; text-align: left;">Blocked</div>';else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
var childHtml='<div style="width: 100%; text-align: left; background-color: #660000"><b>Blocked</b></div>';else
var childHtml='<div style="width: 100%; text-align: left; background-color: #660000; color: #fff;"><b>Blocked</b></div>';}
margin=height*2;if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{childId=data["bid"]+'::'+data["buid"]+'::'+childId;}
if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{parentId=parentId.substring(0,9)+'0000';Ext.DomHelper.append(Ext.fly(parentId),{tag:'div',id:childId,cls:'apptBlockMonth',style:'height: '+height+'px;',html:childHtml},false);}
else
{Ext.DomHelper.insertFirst(Ext.fly(parentId),{tag:'div',id:childId,cls:'apptBlock',style:'height: '+height+'px; margin-bottom: -'+margin+'px;',html:childHtml},false);}
if(BNCal.dd.enableClick)
Ext.get(childId).on('click',BNCal.dd.undoBlock);},createBreakElement:function(data)
{var parentId=data["startTimeT"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
parentId=data["bid"]+'::'+data["buid"]+'::'+parentId;if(Ext.get(parentId)==undefined)
return;var parts=parentId.split('T');var parts1=parts[1].split('_');var childId=data["startTimeT"]+'_break_'+data["id"];var height=data["height"];BNCal.dd.debug(parentId+"="+height);if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
height=10;if(height>45)
var childHtml='<div style="width: 100%; font-size: 9px; background-color: #660000; color: #fff; z-index: 99999"><b>'+data["startTimeHuman"]+' - '+data["endTimeHuman"]+'</b></div><div style="width: 100%; text-align: left;">'+data["summary"]+'</div>';else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
var childHtml='<div style="width: 100%; text-align: left; background-color: #660000; z-index: 99999"><b>'+data["summary"]+'</b></div>';else
var childHtml='<div style="width: 100%; text-align: left; background-color: #660000; color: #fff; z-index: 99999"><b>'+data["summary"]+'</b></div>';}
margin=height*2;if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{childId=data["bid"]+'::'+data["buid"]+'::'+childId;}
if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{parentId=parentId.substring(0,9)+'0000';Ext.DomHelper.append(Ext.fly(parentId),{tag:'div',id:childId,cls:'apptBreakMonth',style:'height: '+height+'px;',html:childHtml},false);}
else
Ext.DomHelper.append(Ext.fly(parentId),{tag:'div',id:childId,cls:'apptBreak',style:'height: '+height+'px; margin-bottom: -'+margin+'px;',html:childHtml},false);BNCal.dd.breaks[BNCal.dd.breaks.length]=parentId;},createClassElement:function(data)
{var parentId=data["startTimeT"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
parentId=data["bid"]+'::'+data["buid"]+'::'+parentId;if(Ext.get(parentId)==undefined)
return;var parts=parentId.split('T');var parts1=parts[1].split('_');var childId=data["startTimeT"]+'_class_'+data["id"];var height=data["height"];BNCal.dd.debug(parentId+"="+height);if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
height=10;if(height>45)
var childHtml='<div style="width: 100%; font-size: 9px; background-color: #ffff99; color: #000; z-index: 99999"><b>'+data["startTimeHuman"]+' - '+data["endTimeHuman"]+'</b></div><div style="width: 100%; text-align: left;">'+data["summary"]+'</div>';else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
var childHtml='<div style="width: 100%; text-align: left; background-color: #ffff99; z-index: 99999"><b>'+data["summary"]+'</b></div>';else
var childHtml='<div style="width: 100%; text-align: left; background-color: #ffff99; color: #000; z-index: 99999"><b>'+data["summary"]+'</b></div>';}
margin=height*2;if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{childId=data["bid"]+'::'+data["buid"]+'::'+childId;}
if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{parentId=parentId.substring(0,9)+'0000';Ext.DomHelper.append(Ext.fly(parentId),{tag:'div',id:childId,cls:'apptClassMonth',style:'height: '+height+'px;',html:childHtml},false);}
else
Ext.DomHelper.append(Ext.fly(parentId),{tag:'div',id:childId,cls:'apptClass',style:'height: '+height+'px; margin-bottom: -'+margin+'px;',html:childHtml},false);},removeDeletedAppointments:function(data)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
var appts=Ext.query(".apptMonth");else
var appts=Ext.query(".appt");for(y=0;y<appts.length;y++)
{var check=appts[y].id;var found=0;for(x=0;x<data.length;x++)
{if(check==data[x].startTimeT)
found++;}
if(found==0)
Ext.get(check).remove();}},removeBreaks:function(data)
{var appts=Ext.query(".apptBreak");for(y=0;y<appts.length;y++)
{var check=appts[y].id;var found=0;for(x=0;x<data.length;x++)
{if(check==data[x].startTimeT)
found++;}
if(found==0)
Ext.get(check).remove();}},removeBlocks:function(data)
{var appts=Ext.query(".apptBlock");for(y=0;y<appts.length;y++)
{var check=appts[y].id;var found=0;for(x=0;x<data.length;x++)
{if(check==data[x].startTimeT)
found++;}
if(found==0)
Ext.get(check).remove();}},createDraggable:function(calEvents)
{var workId=calEvents["startTimeT"]+'_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_'+calEvents["id"];if(Ext.get(workId)==undefined)
return;var dd11=Ext.get(workId);dd11.dd=new Ext.dd.DDProxy(workId,'group',{dragData:{id:workId,bid:calEvents["bid"],buid:calEvents["buid"],clid:calEvents["clid"],startTimeT:calEvents["startTimeT"],DTSTART:calEvents["DTSTART"],DTSTARTTZID:calEvents["DTSTART;TZID"],DTEND:calEvents["DTEND"],DTENDTZID:calEvents["DTEND;TZID"],summary:calEvents["summary"],duration:calEvents["duration"]},scope:this,fn:function(dd,data){BNCal.dd.debug(dd+' '+data.toSource());}});var apptObj=new Object({dragData:{id:workId,bid:calEvents["bid"],buid:calEvents["buid"],clid:calEvents["clid"],startTimeT:calEvents["startTimeT"],DTSTART:calEvents["DTSTART"],DTSTARTTZID:calEvents["DTSTART;TZID"],DTEND:calEvents["DTEND"],DTENDTZID:calEvents["DTEND;TZID"],summary:calEvents["summary"],duration:calEvents["duration"]}});BNCal.dd.apptObjs[BNCal.dd.apptObjs.length]=apptObj;},createDraggableResource:function(calEvents)
{var workId=calEvents["startTimeT"]+'_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_'+calEvents["id"];if(Ext.get(workId)==undefined)
return;var dd11=Ext.get(workId);dd11.dd=new Ext.dd.DDProxy(workId,'group',{dragData:{id:workId,bid:calEvents["bid"],buid:calEvents["buid"],clid:calEvents["clid"],startTimeT:calEvents["startTimeT"],DTSTART:calEvents["DTSTART"],DTSTARTTZID:calEvents["DTSTART;TZID"],DTEND:calEvents["DTEND"],DTENDTZID:calEvents["DTEND;TZID"],summary:calEvents["summary"],duration:calEvents["duration"]},scope:this,fn:function(dd,data){BNCal.dd.debug(dd+' '+data.toSource());}});var apptObj=new Object({dragData:{id:workId,bid:calEvents["bid"],buid:calEvents["buid"],clid:calEvents["clid"],startTimeT:calEvents["startTimeT"],DTSTART:calEvents["DTSTART"],DTSTARTTZID:calEvents["DTSTART;TZID"],DTEND:calEvents["DTEND"],DTENDTZID:calEvents["DTEND;TZID"],summary:calEvents["summary"],duration:calEvents["duration"]}});BNCal.dd.apptObjs[BNCal.dd.apptObjs.length]=apptObj;},createBlockedDraggable:function(calEvents)
{var workId=calEvents["startTimeT"]+'_block_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_block_'+calEvents["id"];var dd11=Ext.get(workId);dd11.dd=new Ext.dd.DDProxy(workId,'group',{dragData:{id:workId,bid:calEvents["bid"],buid:calEvents["buid"],startTimeT:calEvents["startTimeT"],DTSTART:calEvents["DTSTART"],DTSTARTTZID:calEvents["DTSTART;TZID"],DTEND:calEvents["DTEND"],DTENDTZID:calEvents["DTEND;TZID"],duration:calEvents["duration"]},scope:this,fn:function(dd,data){BNCal.dd.debug(dd+' '+data.toSource());}});var apptObj=new Object({dragData:{id:workId,bid:calEvents["bid"],buid:calEvents["buid"],startTimeT:calEvents["startTimeT"],DTSTART:calEvents["DTSTART"],DTSTARTTZID:calEvents["DTSTART;TZID"],DTEND:calEvents["DTEND"],DTENDTZID:calEvents["DTEND;TZID"],duration:calEvents["duration"]}});BNCal.dd.apptObjs[BNCal.dd.apptObjs.length]=apptObj;},createResizable:function(calEvents)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
return;var workId=calEvents["startTimeT"]+'_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_'+calEvents["id"];if(Ext.get(workId)==undefined)
return;var resizer=new Ext.Resizable(workId,{pinned:false,handles:'s',heightIncrement:BNCal.dd.apptHeightIncrement,minHeight:BNCal.dd.apptHeightIncrement,transparent:false,animate:false});resizer.on("beforeresize",function(w,z,y,z)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);});resizer.on("resize",function(w,z,y,z)
{BNCal.dd.ajaxResize(w,y);});},createResizableResource:function(calEvents)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
return;var workId=calEvents["startTimeT"]+'_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_'+calEvents["id"];if(Ext.get(workId)==undefined)
return;var resizer=new Ext.Resizable(workId,{pinned:false,handles:'s',heightIncrement:BNCal.dd.apptHeightIncrement,minHeight:BNCal.dd.apptHeightIncrement,transparent:false,animate:false});resizer.on("beforeresize",function(w,z,y,z)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);});resizer.on("resize",function(w,z,y,z)
{BNCal.dd.ajaxResize(w,y);});},createBlockedResizable:function(calEvents)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
return;var workId=calEvents["startTimeT"]+'_block_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_block_'+calEvents["id"];if(Ext.get(workId)==undefined)
return;var resizer=new Ext.Resizable(workId,{pinned:false,handles:'s',heightIncrement:BNCal.dd.apptHeightIncrement,minHeight:BNCal.dd.apptHeightIncrement,transparent:false,animate:false});resizer.on("beforeresize",function(w,z,y,z)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);});resizer.on("resize",function(w,z,y,z)
{BNCal.dd.ajaxBlockResize(w,y);});},createBreakResizable:function(calEvents)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
return;var workId=calEvents["startTimeT"]+'_break_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_break_'+calEvents["id"];if(Ext.get(workId)==undefined)
return;var resizer=new Ext.Resizable(workId,{pinned:false,handles:'s',heightIncrement:BNCal.dd.apptHeightIncrement,minHeight:BNCal.dd.apptHeightIncrement,transparent:false,animate:false});resizer.enabled=false;resizer.on("beforeresize",function(w,z,y,z)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);});resizer.on("resize",function(w,z,y,z)
{BNCal.dd.ajaxBlockResize(w,y);});},createClassResizable:function(calEvents)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
return;var workId=calEvents["startTimeT"]+'_class_'+calEvents["id"];if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
workId=calEvents["bid"]+'::'+calEvents["buid"]+'::'+calEvents["startTimeT"]+'_class_'+calEvents["id"];if(Ext.get(workId)==undefined)
return;var resizer=new Ext.Resizable(workId,{pinned:false,handles:'s',heightIncrement:BNCal.dd.apptHeightIncrement,minHeight:BNCal.dd.apptHeightIncrement,transparent:false,animate:false});resizer.enabled=false;resizer.on("beforeresize",function(w,z,y,z)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);});resizer.on("resize",function(w,z,y,z)
{BNCal.dd.ajaxBlockResize(w,y);});},createResizable1:function(id,calEvents)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
return;var workId=id;if(Ext.get(workId)==undefined)
return;var resizer=new Ext.Resizable(workId,{pinned:false,handles:'s',heightIncrement:BNCal.dd.apptHeightIncrement,minHeight:BNCal.dd.apptHeightIncrement,transparent:false,animate:false});resizer.on("beforeresize",function(w,z,y,z)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);});resizer.on("resize",function(w,z,y,z)
{BNCal.dd.ajaxResize(w,y);});},createBlockedResizable1:function(id,calEvents)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
return;var workId=id;if(Ext.get(workId)==undefined)
return;var resizer=new Ext.Resizable(workId,{pinned:false,handles:'s',heightIncrement:BNCal.dd.apptHeightIncrement,minHeight:BNCal.dd.apptHeightIncrement,transparent:false,animate:false});resizer.on("beforeresize",function(w,z,y,z)
{BNCal.dd.delayPolling(BNCal.dd.pollingId);});resizer.on("resize",function(w,z,y,z)
{BNCal.dd.ajaxBlockedResize(w,y);});},setQuickTips:function(el,data)
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{var x=Ext.getDom('qtip_'+data["bid"]+'::'+data["buid"]+'::'+data["startTimeT"]);var y=Ext.getDom('qtip_'+data["bid"]+'::'+data["buid"]+'::'+data["startTimeT"]+"_x1");}
else
{if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarMonth')!=-1)
{pid=data["startTimeT"].substring(0,9)+'0000';var y=Ext.getDom('qtip_'+pid+"_x1");var x=Ext.getDom('qtip_'+pid);}
else
{var y=Ext.getDom('qtip_'+data["startTimeT"]+"_x1");var x=Ext.getDom('qtip_'+data["startTimeT"]);}}
if(y)
{y.qtip='<b>'+data["clientName"]+'</b><br >'+data["clientPhone"]+'<br> '+data["startTimeHuman"]+' to '+data["endTimeHuman"]
y.qtitle='<b>'+data["businessServiceName"]+'</b>';}
if(x)
{x.qtip='<b>'+data["clientName"]+'</b><br >'+data["clientPhone"]+'<br> '+data["startTimeHuman"]+' to '+data["endTimeHuman"]
x.qtitle='<b>'+data["businessServiceName"]+'</b>';}},dayViewToolBar:function(buidx)
{var parts=buidx.split('_');var action=parts[0];var buid=parts[2];var bid=Ext.getDom('currentBusinessId').innerHTML;var beginDate=Ext.getDom('beginDate').innerHTML;var endDate=Ext.getDom('endDate').innerHTML;if(action.indexOf('block')!=-1)
{var t='Block Entire Day';var m='Are you sure you want to block this entire day?'}
else
{var t='Cancel All Appointments';var m='Are you sure you want to cancel all apppointments for this day?';}
Ext.MessageBox.show({title:t,msg:m,buttons:Ext.MessageBox.YESNOCANCEL,fn:function(btn){if(btn=='yes')
BNCal.dd.globalDayEvent(action,bid,buid,beginDate,endDate);},icon:Ext.MessageBox.QUESTION});},removeBlock:function(i)
{var parts=i.split('_');var id=parts[2];Ext.Ajax.request({url:'/calendar/removeBlock',success:function(req){Ext.get(i).remove();},failure:function(){showNetworkError();},params:{id:id}});},closeWin:function(i)
{Ext.getCmp(i).close();},undoBlock:function()
{var id=this.id;Ext.MessageBox.confirm('Confirm','Are you sure you want to remove this blocked time?',function(btn){if(btn=='yes')
BNCal.dd.removeBlock(id);});},globalDayEvent:function(action,bid,buid,beginDate,endDate)
{beginYear=beginDate.substr(0,4);beginMonth=beginDate.substr(4,2);beginDay=beginDate.substr(6,2);var win=new Ext.Window({id:'dayActionWin',layout:'fit',frame:true,width:350,html:BNCal.dd.genericProcessingDiv,closeAction:'close'});win.show();Ext.Ajax.request({url:'/calendar/globalDayEvent',success:function(req){changeCalendarView('contentPane','/admin/calendarDay/',bid,buid,beginYear,beginMonth,beginDay);Ext.getDom('genericProcessingDiv').innerHTML='Request Completed.';},failure:function(){showNetworkError();},params:{action:action,businessId:bid,businessUserId:buid,beginDate:beginDate,endDate:endDate}});},msg:function(title,format)
{BNCal.dd.debug(title+' '+format);var s=String.format.apply(String,Array.prototype.slice.call(arguments,1));BNCal.dd.createBox(title,s);return;if(!msgCt){msgCt=Ext.DomHelper.insertFirst(Ext.getDom('myMessages'),{id:'msg-div',style:'z-index: 99999'},true);}
msgCt.alignTo(Ext.getDom('myMessages'),'t-t');var s=String.format.apply(String,Array.prototype.slice.call(arguments,1));var m=Ext.DomHelper.append(msgCt,{html:BNCal.dd.createBox(title,s)},true);m.slideIn('l').pause(1).ghost("t",{remove:true});},createBox:function(t,s)
{BNCal.dd.debug(t+' '+s);return['<div class="msg" style="z-index: 99000; height: 25px">','<div class="x-box-tl"><div class="x-box-tr"><div class="x-box-tc"></div></div></div>','<div class="x-box-ml"><div class="x-box-mr"><div class="x-box-mc">>',s,'</div></div></div>','<div class="x-box-bl"><div class="x-box-br"><div class="x-box-bc"></div></div></div>','</div>'].join('');},leadTimeViolation:function(d,f)
{Ext.MessageBox.alert('No Way Jose!!','This time slot is in violation of the lead time that is set for this service provider.',function(b){});},blockThis:function(e,i)
{},debug:function(m)
{var no=1;}}}();