var clientTpl=new Ext.XTemplate('<tpl for="." ><div class="search-item">','<b>{clientLastName}, {clientFirstName}</b><br />','<i>{clientAddress1}<br />{clientCity}, {clientState} {clientZip}</i><br />','<b>Phone:</b>&nbsp;&nbsp;{clientPhone}','</div>','</tpl>');var blname=Ext.data.Record.create([{name:'clientFirstName'},{name:'clientLastName'},{name:'clientAddress1'},{name:'clientAddress2'},{name:'clientCity'},{name:'clientState'},{name:'clientGender'},{name:'clientZip'},{name:'clientCountry'},{name:'clientDOB'},{name:'clientPhone'},{name:'clientEmail'},{name:'clientUserId'}]);var blnameStore=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:'/admin/getClientList'}),reader:new Ext.data.JsonReader({root:'rows',totalProperty:'results',id:'clientId'},blname)});var bemailStore=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:'/admin/getClientListE'}),reader:new Ext.data.JsonReader({root:'rows',totalProperty:'results',id:'clientId'},blname)});var pollingCount=0;var actionCancel=new Ext.Action({text:'Cancel Appointment',iconCls:'cancel',handler:function(){alert('Cancel Appt..');}});var actionMarkComplete=new Ext.Action({text:'Mark Complete',iconCls:'check',handler:function(){alert('Mark Complete..');}});var actionMoveToHoldingTank=new Ext.Action({text:'Place On Hold',iconCls:'hold',handler:function(){alert('Move To Holding Tank..');}});function submitCreateEventForm(f)
{$('#cmsg').html('<img src="/public/images/smallLoading.gif" hspace=2>');var qstring=$('#'+f).serialize();$.ajax({url:'/calendar/createEvent1Validate',data:qstring,type:'post',success:function(data){var errors=eval('('+data+')');$('#error_businessServiceId').hide();$('#error_firstName').hide();$('#error_lastName').hide();for(x=0;x<errors.length;x++)
{var parts=errors[x].split("|");var d=$('#cmsg');msg='<img hspace="10" src="/public/resources/fam/emoticon_unhappy.png"  style="cursor: pointer"  ext:qtitle="Oops!!" ext:qwidth="250" ext:qtip="'+parts[1]+'">'+parts[1];}
if(errors.length<=0)
{postCreateEventForm(f);}
else
{$('#cmsg').html(msg);}},error:function(xhr,err,e){alert("Error: "+err);}});return false;}
function postCreateEventForm(f)
{var qstring=$('#'+f).serialize();$.ajax({url:'/calendar/createEvent1',data:qstring,type:'post',success:function(data){var s=eval('('+data+')');BNCal.dd.createApptElement(s);BNCal.dd.createDraggable(s);BNCal.dd.createResizable(s);BNCal.dd.setQuickTips(s["startTimeT"]+'_'+s["id"],s);BNCal.dd.cancelMbpop();},error:function(xhr,err,e){alert("Error: "+err);}});return false;}
function submitCreateResourceForm(f)
{$('#cmsg').html('<img src="/public/images/smallLoading.gif" hspace=10>Booking Resource..');var qstring=$('#'+f).serialize();$.ajax({url:'/calendar/createResource1Validate',data:qstring,type:'post',success:function(data){var errors=eval('('+data+')');$('#error_businessServiceId').hide();$('#error_firstName').hide();$('#error_lastName').hide();for(x=0;x<errors.length;x++)
{var parts=errors[x].split("|");var d=$('#error_'+parts[0]);d.html('<img hspace="10" src="/public/resources/fam/emoticon_unhappy.png"  style="cursor: pointer"  ext:qtitle="Oops!!" ext:qwidth="250" ext:qtip="'+parts[1]+'">'+parts[1]);d.show();}
if(errors.length<=0)
{postCreateResourceForm(f);}
else
{if($('#validateSubmitX')!=undefined)
{$('#validateSubmitX').html('&nbsp;&nbsp;');$('#submitX').removeAttr('disabled');}}},error:function(xhr,err,e){alert("Error: "+err);}});return false;}
function postCreateResourceForm(f)
{var qstring=$('#'+f).serialize();$.ajax({url:'/calendar/createResource1',data:qstring,type:'post',success:function(data){s=eval('('+data+')');BNCal.dd.createResourceElement(s);BNCal.dd.createResizableResource(s);BNCal.dd.setQuickTips(s["startTimeT"]+'_'+s["id"],s);$('#mbpopdialog').remove();},error:function(xhr,err,e){alert("Error: "+err);}});return false;}
function changePane(pane,url)
{$('#'+pane).html('<img src="/public/images/blue-loading.gif">');currentSection=url;if((url.indexOf('/admin/calendarWeek')!=-1)||(url.indexOf('/admin/calendarMonth')!=-1)||(url.indexOf('/admin/calendarDay')!=-1))
BNCal.dd.currentCalendarUrl=url;var qstring='s=N';$.ajax({url:url,data:qstring,type:'post',success:function(data){$('#'+pane).html(data);if((url.indexOf('/admin/calendarWeek')!=-1)||(url.indexOf('/admin/calendarMonth')!=-1)||(url.indexOf('/admin/calendarDay')!=-1))
Ext.onReady(BNCal.dd.init,BNCal.dd);},error:function(xhr,err,e){alert("Error: "+err);}});}
function calendarResource(bid,rid,p,y,m,d)
{$('#calinfo').html('<img src="/public/images/smallLoading.gif" hspace=2>');if(!(BNCal.dd.currentCalendarUrl))
BNCal.dd.currentCalendarUrl='/admin/calendarWeek';BNCal.currentBusinessId=bid;BNCal.currentResourceId=rid;BNCal.dd.currentYear=y;BNCal.dd.currentMonth=m;BNCal.dd.currentDay=d;var url=BNCal.dd.currentCalendarUrl;var qstring='businessId='+bid+'&resourceId='+rid+'&year='+BNCal.dd.currentYear+'&month='+BNCal.dd.currentMonth+'&day='+BNCal.dd.currentDay;$.ajax({url:BNCal.dd.currentCalendarUrl,data:qstring,type:'post',success:function(data){$('#'+p).html(data);$('#calinfo').html('');if((url.indexOf('/admin/calendarWeek')!=-1)||(url.indexOf('/admin/calendarMonth')!=-1)||(url.indexOf('/admin/calendarDay')!=-1))
Ext.onReady(BNCal.dd.init,BNCal.dd);},error:function(xhr,err,e){alert("Error: "+err);}});}
function calendarUser(bid,uid,p,y,m,d)
{$('#calinfo').html('<img src="/public/images/smallLoading.gif" hspace=2>');if(!(BNCal.dd.currentCalendarUrl))
BNCal.dd.currentCalendarUrl='/admin/calendarWeek';BNCal.currentBusinessId=bid;BNCal.currentBusinessUserId=uid;BNCal.dd.currentYear=y;BNCal.dd.currentMonth=m;BNCal.dd.currentDay=d;var url=BNCal.dd.currentCalendarUrl;var qstring='businessId='+bid+'&businessUserId='+uid+'&year='+BNCal.dd.currentYear+'&month='+BNCal.dd.currentMonth+'&day='+BNCal.dd.currentDay;$.ajax({url:BNCal.dd.currentCalendarUrl,data:qstring,type:'post',success:function(data){$('#'+p).html(data);$('#calinfo').html('');if((url.indexOf('/admin/calendarWeek')!=-1)||(url.indexOf('/admin/calendarMonth')!=-1)||(url.indexOf('/admin/calendarDay')!=-1))
Ext.onReady(BNCal.dd.init,BNCal.dd);},error:function(xhr,err,e){alert("Error: "+err);}});}
function changeCalendarView(pane,url,bid,uid,y,m,d)
{$('#calinfo').html('<img src="/public/images/smallLoading.gif" hspace=2>');BNCal.currentBusinessId=bid;BNCal.currentBusinessUserId=uid;BNCal.dd.currentCalendarUrl=url;BNCal.dd.currentYear=y;BNCal.dd.currentMonth=m;BNCal.dd.currentDay=d;var crid=$('#currentResourceId').html();if((crid.length>0)&&(crid!=0))
var qstring='businessId='+bid+'&resourceId='+crid+'&year='+y+'&month='+m+'&day='+d;else
var qstring='businessId='+bid+'&businessUserId='+uid+'&year='+y+'&month='+m+'&day='+d;$.ajax({url:url,data:qstring,type:'post',success:function(data){$('#'+pane).html(data);if((url.indexOf('/admin/calendarWeek')!=-1)||(url.indexOf('/admin/calendarMonth')!=-1)||(url.indexOf('/admin/calendarDay')!=-1))
{Ext.onReady(BNCal.dd.init,BNCal.dd);BNCal.dd.currentCalendarUrl=url;$('#calinfo').html('');}},error:function(xhr,err,e){alert("Error: "+err);}});}
function changeCalendarViewDay(pane,url,bid,uid,y,m,d)
{$('#calinfo').html('<img src="/public/images/smallLoading.gif" hspace=2>');BNCal.currentBusinessId=bid;BNCal.currentBusinessUserId=uid;BNCal.dd.currentCalendarUrl=url;BNCal.dd.currentYear=y;BNCal.dd.currentMonth=m;BNCal.dd.currentDay=d;var crid=$('#currentResourceId').html();if((crid.length>0)&&(crid!=0))
var qstring='businessId='+bid+'&resourceId='+crid+'&year='+y+'&month='+m+'&day='+d;else
var qstring='businessId='+bid+'&businessUserId='+uid+'&year='+y+'&month='+m+'&day='+d;$.ajax({url:url,data:qstring,type:'post',success:function(data){$('#'+pane).html(data);$('#calinfo').html('');if((url.indexOf('/admin/calendarWeek')!=-1)||(url.indexOf('/admin/calendarMonth')!=-1)||(url.indexOf('/admin/calendarDay')!=-1))
{Ext.onReady(BNCal.dd.init,BNCal.dd);BNCal.dd.currentCalendarUrl=url;}},error:function(xhr,err,e){alert("Error: "+err);}});}
function editComments(t,i)
{$('#'+t).toggle();$('#editClientCommentsMessage').html('');var cmpStyle=$('#'+t).css('display');if(cmpStyle=='block')
{$('#editClientCommentsToggle').html('Hide');$('#'+i).hide();$('#editPrivateCommentsToggle').html('Edit');}
else
{$('#editClientCommentsToggle').html('Edit');$('#'+t).hide();}}
function editPrivateComments(t,i)
{$('#'+t).toggle();$('#editPrivateCommentsMessage').html('');var cmpStyle=$('#'+t).css('display');if(cmpStyle=='block')
{$('#editPrivateCommentsToggle').html('Hide');$('#'+i).hide();$('#editClientCommentsToggle').html('Edit');}
else
{$('#editPrivateCommentsToggle').html('Edit');$('#'+t).hide();}}
function updatePrivateComments(f)
{$('#pvtcmsg').html('Updating Comments');var qstring=$('#'+f).serialize();$.ajax({url:'/calendar/updatePrivateComments',data:qstring,type:'post',success:function(data){$('#pvtcmsg').html('Updated');},error:function(xhr,err,e){alert("Error: "+err);}});}
function updateClientComments(f)
{$('#pbcmsg').html('Updating Comments');var qstring=$('#'+f).serialize();$.ajax({url:'/calendar/updateClientComments',data:qstring,type:'post',success:function(data){$('#pbcmsg').html('Updated');},error:function(xhr,err,e){alert("Error: "+err);}});}
function updateResourceComments(f)
{$('#pbcmsg').html('Updating Comments');var qstring=$('#'+f).serialize();$.ajax({url:'/calendar/updateResourceComments',data:qstring,type:'post',success:function(data){$('#pbcmsg').html('Updated');},error:function(xhr,err,e){alert("Error: "+err);}});}
function closeClientComments()
{$('#editClientComments').hide();$('#editClientCommentsToggle').html('Edit');return false;}
function closePrivateComments()
{$('#editPrivateComments').hide();$('#editPrivateCommentsToggle').html('Edit');}
function showSpinner()
{$('#globalMessage').html('<img src="/public/images/smallLoading.gif" hspace=2>&nbsp;&nbsp;Loading Application. Please Be Patient..');}
function hideSpinner()
{$('#globalMessage').html('');}
function showNetworkError()
{Ext.getDom('globalMessage').innerHTML='A Network Error Has Occurred. Please check your connection and refresh your browser';}
function showNetworkException(con,res,options)
{Ext.getDom('globalMessage').innerHTML=res.responseText;}
function cancelAppt(i,o)
{var notify=$('#clientNotifyOk').val();var qstring='id='+i+'&notify='+notify;$.ajax({url:'/calendar/cancelAppt',data:qstring,type:'post',success:function(data){$('#'+o).remove();if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{var s=eval('('+data+')');changeCalendarView('calendarView','/admin/calendarDay',s["bid"],s["buid"],s["y"],s["m"],s["d"]);}
$('#mbpopdialog').remove();},error:function(xhr,err,e){alert("Error: "+err);}});}
function confirmCancelAppt(i)
{$('#confirmCancel').fadeIn('slow');}
function confirmCancelApptNo(i)
{$('#confirmCancel').fadeOut('slow');}
function cancelResource(i,o)
{var notify=$('#clientNotifyOk').val();var qstring='id='+i+'&notify='+notify;$.ajax({url:'/calendar/cancelResource',data:qstring,type:'post',success:function(data){$('#'+o).remove();$('#mbpopdialog').remove();},error:function(xhr,err,e){alert("Error: "+err);}});}
function confirmCancelResource(i)
{$('#confirmCancel').fadeIn('slow');}
function confirmCancelResourceNo(i)
{$('#confirmCancel').fadeOut('slow');}
function confirmAppt(i)
{$('#confirmAppt').fadeIn('slow');}
function confirmApptNo(i)
{$('#confirmAppt').fadeOut('slow');}
function confirmAppt1(i,o)
{var qstring='id='+i;$.ajax({url:'/calendar/confirmAppt',data:qstring,type:'post',success:function(data){$('#'+o).removeClass('needConfirm');if(BNCal.dd.currentCalendarUrl.indexOf('/admin/calendarDay')!=-1)
{var s=eval('('+data+')');changeCalendarView('calendarView','/admin/calendarDay',s["bid"],s["buid"],s["y"],s["m"],s["d"]);}
jQuery(document).trigger('close.facebox');},error:function(xhr,err,e){alert("Error: "+err);}});}
function confirmResource(i)
{$('#confirmResource').fadeIn('slow');}
function confirmResourceNo(i)
{$('#confirmResource').fadeOut('slow');}
function confirmResource1(i,o)
{var qstring='id='+i;$.ajax({url:'/calendar/confirmResource',data:qstring,type:'post',success:function(data){jQuery(document).trigger('close.facebox');},error:function(xhr,err,e){alert("Error: "+err);}});}
function clientLookup()
{$('#clientLookup').fadeIn('slow');}
function clientLookupClose()
{$('#clientLookup').fadeOut('slow');$('#lnameLookup').val('');$('#emailLookup').val('');$('#clientLookupResults').fadeOut('slow');$('#clientLookupResults').html('');}
function clientLookupSearch()
{$('#clientLookupResults').fadeIn('slow');$('#clientLookupResults').html('Loading...');var qstring='fnameLookup='+escape($('#fnameLookup').val())+'&lnameLookup='+escape($('#lnameLookup').val())+'&emailLookup='+escape($('#emailLookup').val());$.ajax({url:'/admin/getClientListAll',data:qstring,type:'post',success:function(data){$('#clientLookupResults').html(data);},error:function(xhr,err,e){alert("Error: "+err);}});}
function popclient(c)
{var qstring='clid='+c;$.ajax({url:'/admin/popclient',data:qstring,type:'post',success:function(data){var s=eval('('+data+')');$('#firstName').val(s["clientFirstName"]);$('#lastName').val(s["clientLastName"]);if(s["clientEmail"])
$('#email').val(s["clientEmail"]);if(s["clientZip"])
$('#zip').val(s["clientZip"]);if(s["clientAddress1"])
$('#address1').val(s["clientAddress1"]);if(s["clientAddress2"])
$('#address2').val(s["clientAddress2"]);if(s["clientCity"])
$('#city').val(s["clientCity"]);if(s["clientPhone"])
$('#phone').val(s["clientPhone"]);loadSelect('createEventForm','state',s["clientState"]);if(s["clientDOB"])
$('#dob').val(s["clientDOB"]);if(s["clientGender"])
{$('input[name="clientGender"]').each(function(i,o){if(o.value==s["clientGender"])
o.checked=true;else
o.checked=false;});}
clientLookupClose();},error:function(xhr,err,e){alert("Error: "+err);}});}
function closeDayOptions()
{jQuery(document).trigger('close.facebox');}
function dayOptionsBlock(bid,buid,y,m,d,t,dayIs)
{var paramsUser='?businessId='+bid+'&businessUserId='+buid+'&year='+y+'&month='+m+'&day='+d;var paramsResource='?businessId='+bid+'&resourceId='+buid+'&year='+y+'&month='+m+'&day='+d;if(t=='user')
jQuery.facebox({ajax:'/calendar/globalOptionBlock'+paramsUser});if(t=='resource')
jQuery.facebox({ajax:'/calendar/globalOptionBlock'+paramsResource});}
function dayOptionsBlock1(bid,buid,y,m,d,t)
{var beginDate=y+''+''+m+''+d;$('#validateSubmitX2').html('<img src="/public/images/smallLoading.gif" hspace=2>');var paramsUser='businessId='+bid+'&businessUserId='+buid+'&beginDate='+beginDate+'&endDate='+beginDate+'&act=block&t='+t;var paramsResource='businessId='+bid+'&resourceId='+buid+'&beginDate='+beginDate+'&endDate='+beginDate+'&act=block&t='+t;if(t=='user')
{$.ajax({url:'/calendar/globaldayevent',data:paramsUser,type:'post',success:function(data){var s=eval('('+data+')')
for(x=0;x<s.length;x++)
{BNCal.dd.createBlockedElement(s[x]);BNCal.dd.createBlockedResizable(s[x]);}
jQuery(document).trigger('close.facebox');},error:function(xhr,err,e){alert("Error: "+err);}});}
if(t=='resource')
{$.ajax({url:'/calendar/globaldayevent',data:paramsResource,type:'post',success:function(data){jQuery(document).trigger('close.facebox');},error:function(xhr,err,e){alert("Error: "+err);}});}}
function dayOptionsCancel(bid,buid,y,m,d,t)
{var paramsUser='?businessId='+bid+'&businessUserId='+buid+'&year='+y+'&month='+m+'&day='+d;var paramsResource='?businessId='+bid+'&resourceId='+buid+'&year='+y+'&month='+m+'&day='+d;if(t=='user')
jQuery.facebox({ajax:'/calendar/globalOptionCancel'+paramsUser});if(t=='resource')
jQuery.facebox({ajax:'/calendar/globalOptionCancel'+paramsResource});}
function dayOptionsCancel1(bid,buid,y,m,d,t)
{var beginDate=y+''+''+m+''+d;$('#validateSubmitX2').html('<img src="/public/images/smallLoading.gif" hspace=2>');var paramsUser='businessId='+bid+'&businessUserId='+buid+'&beginDate='+beginDate+'&endDate='+beginDate+'&act=cancel&t='+t;var paramsResource='businessId='+bid+'&resourceId='+buid+'&beginDate='+beginDate+'&endDate='+beginDate+'&act=cancel&t='+t;if(t=='user')
{$.ajax({url:'/calendar/globaldayevent',data:paramsUser,type:'post',success:function(data){var s=eval('('+data+')');jQuery(document).trigger('close.facebox');changeCalendarView('calendarView',BNCal.dd.currentCalendarUrl,bid,buid,y,m,d);},error:function(xhr,err,e){alert("Error: "+err);}});}
if(t=='resource')
{$.ajax({url:'/calendar/globaldayevent',data:paramsResource,type:'post',success:function(data){jQuery(document).trigger('close.facebox');changeCalendarView('calendarView',BNCal.dd.currentCalendarUrl,bid,buid,y,m,d);},error:function(xhr,err,e){alert("Error: "+err);}});}}
function dobreak(i,s,t)
{$('#mbpopdialog').remove();$('body').append('<div id="bdialog" title="Create Break"></div>');$("#bdialog").load('/admin/addBusinessUserBreaks?id='+i+'&startDate='+s+'&startTime='+t).dialog({bgiframe:true,autoOpen:false,height:500,width:800,modal:true,buttons:{'Create Break':function(){var bValid=true;if(bValid){doBreak1('addUserBreakTimeForm');}},Cancel:function(){$(this).dialog('close');$('#bdialog').remove();}},close:function(){$('#bdialog').remove();}});$("#bdialog").dialog('open');}
function doBreak1(f)
{$('#loadingr').html('<img src="/public/images/smallLoading.gif" hspace=2>&nbsp;&nbsp;Creating Break...');var qstring=$('#'+f).serialize();qstring+='&check=Y';var pd=$('#dayspd').html().split(',');for(x=0;x<pd.length-1;x++)
{if(pd[x]=='Y')
qstring+='&days[]='+x;}
$.ajax({url:'/admin/addRecurringBreak',type:'post',data:qstring,success:function(data){$('#submitXBreak').html('');var s=eval('('+data+')');var buid=s["buid"];if(s["success"])
{calendarUser(s["bid"],buid,'calendarView',s["year"],s["month"],s["day"]);$('#bdialog').remove();}
else
{$('#loadingr').html('');$('#breakMessage2').html(s["errors"][0]);}},error:function(xhr,err,e){alert("Error: "+err);}});}
function printme(d)
{var content=$('#'+d).html();var pwin=window.open('','print_content','width=600,height=600');pwin.document.open();pwin.document.write('<html><body onload="window.print()">'+content+'</body></html>');pwin.document.close();setTimeout(function(){pwin.close();},1000);}
Ext.Ajax.on('requestexception',showNetworkException,this);Ext.Ajax.timeout=50000;Ext.onReady(function(){Ext.QuickTips.init();var task={run:function(){if((BNCal.dd.inited==1)&&(!(BNCal.dd.isResource)))
{BNCal.dd.calendarPoll(BNCal.dd.currentBusinessId,BNCal.dd.currentBusinessUserId,'calendarView');pollingCount++;var Digital=new Date();var hours=Digital.getHours();var minutes=Digital.getMinutes();var seconds=Digital.getSeconds();}},scope:this,interval:300000}
Ext.TaskMgr.start(task);});