Untitled
unknown
plain_text
2 years ago
89 kB
2
Indexable
<?php $VRCalendarSettings = VRCalendarSettings::getInstance(); $VRCalendarEntity = VRCalendarEntity::getInstance(); $calid = 0; if(isset($_GET['cal_id'])){ $calid = $_GET['cal_id']; } $cal_data = $VRCalendarEntity->getCalendar( $calid ); $getAllCalendar = $VRCalendarEntity->getAllCalendar(); if(empty($cal_data->calendar_id) && $_GET["page"] == 'vr-calendar-mycalendar' && ($VRCalendarSettings->getSettings('licensekey_active')) && $gbversiontype != "pro-envato"){ ?> <div class="license_error"> <?php echo esc_html( __('Calendar id does not exist! Please Select your Calendar below.', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); ?> </div><br/> <?php } if($_GET["page"] == 'vr-calendar-mycalendar' && ($VRCalendarSettings->getSettings('licensekey_active') && $gbversiontype != "pro-envato")){ ?> <select style="margin-bottom: 15px;" class="select_calendar"> <option>Select Calendar</option> <?php foreach($getAllCalendar as $d_cal){ ?> <option value="<?=$d_cal->calendar_id;?>" <?=(!empty($_GET["cal_id"]) && $_GET["cal_id"] == $d_cal->calendar_id) ? "selected":"";?>><?=$d_cal->calendar_name;?></option> <?php } ?> </select> <script> jQuery(".select_calendar").on("change", function(){ var cal_id = jQuery(this).val(); location.href = 'admin.php?page=vr-calendar-mycalendar&cal_id='+cal_id; }); </script> <?php } if($VRCalendarSettings->getSettings('licensekey_active') && $gbversiontype != "pro-envato"){ $next_month=0; $booking_checkin_date = date("Y-m-d"); $booking_checkout_date = date('Y-m-d', strtotime('+1 day', strtotime($booking_checkin_date))); $getdisplay_month_data = $VRCalendarEntity->getCalendar($calid); $next_data = date('Y-m-d', mktime(0, 0, 0, date('m')+$next_month, 1, date('Y'))); $month = date('n', strtotime($next_data)); $year = date('Y', strtotime($next_data)); $current_month = date('Y-m-d', strtotime("{$year}-{$month}-1")); $month_year_name = ''; if(empty($getdisplay_month_data->calendar_display_num_months)){ $number_months = 12; }else{ $number_months = $getdisplay_month_data->calendar_display_num_months; } $month_year_name .= '<select id="select_month" class="btn-select_month-single-'.$calid.'">'; for ($count_cal = 0; $count_cal <= $number_months; $count_cal++) { $dates = date('F Y', strtotime($current_month.' + '.$count_cal.' Months')); $month_year_name .= '<option value="'.($count_cal+1).'">'.$dates.'</option>'; } $month_year_name .= '</select>'; $num_months = $number_months; $siteurl = site_url().'/wp-admin/admin-ajax.php'; $dir = VRCALENDAR_PLUGIN_URL; if(!empty($cal_data->calendar_price_exception)){ foreach ($cal_data->calendar_price_exception as $gustKey=>$gustValue) { $startDate = new DateTime($gustValue->start_date); $endDate = new DateTime($gustValue->end_date); $formatCheckingDate = new DateTime($booking_checkin_date); $checkInYearStart = $formatCheckingDate->format('Y'); $checkInMonthStart = $formatCheckingDate->format('m'); $checkInDateStart = $formatCheckingDate->format('d'); $formatCheckoutDate = new DateTime($booking_checkout_date); $checkoutYearEnd = $formatCheckoutDate->format('Y'); $checkoutMonthEnd = $formatCheckoutDate->format('m'); $checkoutDateEnd = $formatCheckoutDate->format('d'); $checkoutDateEnd = $checkoutDateEnd - 1; $seasonal_guest_max = $gustValue->seasonal_gustno_pricing; $seasonal_child_max = $gustValue->seasonal_childno_pricing; $count = 0; for ($seasonaldate = $startDate; $seasonaldate <= $endDate; $seasonaldate->modify('+1 day')) { $seasonStartYear = $startDate->format('Y'); $seasonStartMonth = $startDate->format('m'); $seasonStartDate = $startDate->format('d'); $seasonEndYear = $endDate->format('Y'); $seasonEndMonth = $endDate->format('m'); $seasonEndDate = $endDate->format('d'); $changingDate = $seasonaldate->format('d'); $changingMonth = $seasonaldate->format('m'); if ($seasonStartYear == $checkInYearStart || $checkoutYearEnd == $seasonStartYear || $checkInYearStart == $seasonEndYear || $checkoutYearEnd == $seasonEndYear) { if ($checkInMonthStart == $seasonStartMonth || $checkoutMonthEnd == $seasonEndMonth || $checkInMonthStart == $seasonEndMonth || $checkoutMonthEnd == $seasonEndMonth) { if ($checkInDateStart >= $seasonStartDate || $checkInDateStart <= $seasonEndDate || $checkoutDateEnd <= $seasonStartDate || $checkoutDateEnd >= $seasonEndDate) { if ($checkoutDateEnd < $changingDate && $checkoutMonthEnd == $changingMonth) { break; } else if ($checkInDateStart > $seasonStartDate && $checkInMonthStart == $seasonStartMonth) { } else { $count = $count + 1; $seasonaldaysname = $seasonaldate->format('l'); $seasonalGust = $seasonal_guest_max; $seasonalChild = $seasonal_child_max; } } } } } } } if(!empty($seasonalGust)){ $maxGuestNo = $seasonalGust; }else { $maxGuestNo = @$cal_data->calendar_max_guest_no; } if(!empty($seasonalChild)){ $maxChildNo = $seasonalChild; }else { $maxChildNo = @$cal_data->calendar_max_child_no; } $fee_extra = @json_decode($cal_data->extra_fees_section); $pro_one_day_book = @$cal_data->pro_one_day_book; $hourly_booking = @$cal_data->hourly_booking; $minimum_number_of_night = @$cal_data->minimum_number_of_night; $number_of_night = @$cal_data->number_of_night; $booking_form_text = 'Request to Book'; if(@$cal_data->booking_form_text != ''){ $booking_form_text = $cal_data->booking_form_text; } $calendar_tax_per_stay = @trim($cal_data->calendar_tax_per_stay); $calendar_tax_type = @trim($cal_data->calendar_tax_type); //style of left and right moves $VRCalendarSettings = VRCalendarSettings::getInstance(); $dateformat = $VRCalendarSettings->getSettings('dateformat'); $field_name_yes = @$cal_data->custom_field; //$field_name = esc_html( __(@$cal_data->custom_field_name, VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $custom_field_name = ""; if($field_name_yes == "yes"){ $count_field = 0; $custom_field_data = json_decode($cal_data->custom_field_name); $count_field = count((array) $custom_field_data); if($count_field > 1){ $col_field = "col-sm-6"; }else{ $col_field = "col-sm-12"; } foreach($custom_field_data as $fieldval){ $required_field = ($fieldval->field_required == 'yes') ? 'required' : ''; $custom_field_name .= '<div class="'.$col_field.'"> <div class="form-group"> <label for="custom_field_name">'. esc_html( __($fieldval->field_name, VRCALENDAR_PLUGIN_TEXT_DOMAIN) ) .'</label> <input type="text" class="form-control '. $required_field .'" placeholder="'. $fieldval->field_placeholder .'" name="custom_field[' . $fieldval->field_name . ']" id="custom_field_name"> </div> </div>'; } }else{ $custom_field_name = ''; } $calendar_enable_csc = @$cal_data->calendar_enable_csc; if($calendar_enable_csc == "yes"){ $city = esc_html( __('City', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $state = esc_html( __('State', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $country = esc_html( __('Country', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $yes_city = $cal_data->calendar_enable_city; $yes_state = $cal_data->calendar_enable_state; $yes_country = $cal_data->calendar_enable_country; if($yes_city == "yes"){ if($yes_state == "yes" || $yes_country == "yes"){ $col_city = "col-sm-6"; }else{ $col_city = "col-sm-12"; } $enable_city = ' <div class="'.$col_city.'"> <div class="form-group"> <label for="calendar_enable_city">'.$city.'</label> <input type="text" class="form-control" value="" name="calendar_enable_city" id="calendar_enable_city" placeholder="'.$city.'" /> </div> </div>'; } if($yes_state == "yes"){ if($yes_city == "yes" || $yes_country == "yes"){ $col_state = "col-sm-6"; }else{ $col_state = "col-sm-12"; } $enable_state = ' <div class="'.$col_state.'"> <div class="form-group"> <label for="calendar_enable_state">'.$state.'</label> <input type="text" class="form-control" value="" name="calendar_enable_state" id="calendar_enable_state" placeholder="'.$state.'" /> </div> </div>'; } if($yes_country == "yes"){ if($yes_city == "yes" && $yes_state == "yes"){ $col_country = "col-sm-12"; }else{ $col_country = "col-sm-6"; } $enable_country = ' <div class="'.$col_country.'"> <div class="form-group"> <label for="calendar_enable_country">'.$country.'</label> <input type="text" class="form-control" value="" name="calendar_enable_country" id="calendar_enable_country" placeholder="'.$country.'" /> </div> </div>'; } } $CheckIn = esc_html( __('Check In', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $CheckOut = esc_html( __('Check Out', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $Guests = esc_html( __('Adult', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); if(@$cal_data->calendar_tax_charge == "yes"){ $Child = 'Children Below '.$cal_data->calendar_tax_charge_label.' Years old'; }else{ $Child = esc_html( __('Children', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); } $Taxes = esc_html( __('Taxes', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $Taxes_per_person = esc_html( __('Tax Adult per Day', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); // $Child = esc_html( __('Children', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $FirstName = esc_html( __('First Name', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $LastName = esc_html( __('Last Name', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $Email_booking = esc_html( __('Email', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $PhoneNumber = esc_html( __('Phone Number', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $NoteToHost = esc_html( __('Note To Host', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $zero_value = esc_html( __('0', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $ExtraGuestFees = esc_html( __('Extra Adult Fee', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $ExtraChildFees = esc_html( __('Extra Children Fee', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); //$CleaningFee = esc_html( __('Cleaning Fee', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); // $Taxes = esc_html( __('Taxes', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); //$ExtraFees = esc_html( __('Extra Fees', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $TotalReservationAmount = esc_html( __('Total Reservation Amount', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $RequesttoBook = esc_html( __($booking_form_text, VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $CheckInDate = esc_html( __('Check In Date', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $CheckOutDate = esc_html( __('Check Out Date', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $remove_x = esc_html( __('x', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $zero_days = esc_html( __('0', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $clear_dates = esc_html( __('Clear Dates', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $read_agree = esc_html( __(' I have read and agree to the', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $rental_agreement = esc_html( __('rental agreement', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $save_copy = esc_html( __('and saved a copy for my reference', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $url = VRCALENDAR_PLUGIN_URL; if(@$cal_data->calendar_custom_field_name != ''){ $ExtraFees = esc_html( __($cal_data->calendar_custom_field_name, VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); }else{ $ExtraFees = esc_html( __('Extra Fees', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); } $show_booking_from_one_page = @$cal_data->show_booking_from_one_page; $booking_form_location_style = ''; $booking_form_location_style .= '<style> .spanhide{display:none;} </style>'; $nbsptext = ''; $div_vrc_calendar_wrapper_open = ''; $div_vrc_calendar_wrapper_close = ''; if($show_booking_from_one_page == 'yes') { if($cal_data->booking_form_location == 'next_to_call') { $nbsptext = ' '; $div_vrc_calendar_wrapper_open = '<div class="vrc-calendar-wrapper vrc-layout-inline">'; $div_vrc_calendar_wrapper_close = '</div>'; } } $booking_powered_style = ''; $checkerDay = esc_html( __('Per Night', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $check_in_time = ''; $check_out_time = ''; $valid_hourly_booking = 0; $dayNight = esc_html( __('Night', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); if($pro_one_day_book == 'yes') { $checkerDay = esc_html( __('Per Day', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $dayNight = esc_html( __('day', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); } if($hourly_booking == 'yes') { $booking_powered_style = 'style="width:100%; float:left;"'; $valid_hourly_booking = 1; $check_in_time .= '<div class="col-sm-6"> <div class="form-group"> <label for="booking_checkin_intime">'.esc_html( __('Check In Time', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ).'</label> <select name="checkintime" id="checkintime" class="form-control required" onchange="timeChange(this.value)"> </select> </div> </div>'; $check_out_time .= '<div class="col-sm-6"> <div class="form-group"> <label for="checkouttime">'.esc_html( __('Check Out Time', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ).'</label> <select name="checkouttime" id="checkouttime" class="form-control required"> </select> </div> </div>'; $check_in_time .= "<script> function firstDatetimeChange(inDate) { var timeArray = {'0' : '12:00am', '1' : '1:00am', '2' : '2:00am', '3' : '3:00am', '4' : '4:00am', '5' : '5:00am', '6' : '6:00am', '7' : '7:00am', '8' : '8:00am', '9' : '9:00am', '10' : '10:00am', '11' : '11:00am', '12' : '12:00pm', '13' : '1:00pm', '14' : '2:00pm','15' : '3:00pm', '16' : '4:00pm', '17' : '5:00pm', '18' : '6:00pm', '19' : '7:00pm', '20' : '8:00pm', '21' : '9:00pm', '22' : '10:00pm', '23' : '11:00pm'}; var timeKeysget = {'0' : '00:00:00', '1' : '01:00:00', '2' : '02:00:00', '3' : '03:00:00', '4' : '04:00:00', '5' : '05:00:00', '6' : '06:00:00', '7' : '07:00:00', '8' : '08:00:00', '9' : '09:00:00', '10' : '10:00:00', '11' : '11:00:00', '12' : '12:00:00', '13' : '13:00:00', '14' : '14:00:00','15' : '15:00:00', '16' : '16:00:00', '17' : '17:00:00', '18' : '18:00:00', '19' : '19:00:00', '20' : '20:00:00', '21' : '21:00:00', '22' : '22:00:00', '23' : '23:00:00'}; var optionInValues = ''; var calendar_id = jQuery('#cal_id').val(); var data = { 'action': 'get_updated_checkindate', 'cal_id': calendar_id, 'inDate': inDate, }; jQuery.post(vrc_data.ajax_url, data, function(response) { var obj = jQuery.parseJSON( response ); jQuery.each(obj, function(key, value) { optionInValues += '<option value='+timeKeysget[key]+'>'+timeArray[key]+'</option>'; }); jQuery('#checkintime').html(optionInValues); timeChange(jQuery('#checkintime').val()); }); } function timeChange(thisinvalue) { var timeArray = {'0' : '12:00am', '1' : '1:00am', '2' : '2:00am', '3' : '3:00am', '4' : '4:00am', '5' : '5:00am', '6' : '6:00am', '7' : '7:00am', '8' : '8:00am', '9' : '9:00am', '10' : '10:00am', '11' : '11:00am', '12' : '12:00pm', '13' : '1:00pm', '14' : '2:00pm','15' : '3:00pm', '16' : '4:00pm', '17' : '5:00pm', '18' : '6:00pm', '19' : '7:00pm', '20' : '8:00pm', '21' : '9:00pm', '22' : '10:00pm', '23' : '11:00pm'}; var timeKeysget = {'0' : '00:00:00', '1' : '01:00:00', '2' : '02:00:00', '3' : '03:00:00', '4' : '04:00:00', '5' : '05:00:00', '6' : '06:00:00', '7' : '07:00:00', '8' : '08:00:00', '9' : '09:00:00', '10' : '10:00:00', '11' : '11:00:00', '12' : '12:00:00', '13' : '13:00:00', '14' : '14:00:00','15' : '15:00:00', '16' : '16:00:00', '17' : '17:00:00', '18' : '18:00:00', '19' : '19:00:00', '20' : '20:00:00', '21' : '21:00:00', '22' : '22:00:00', '23' : '23:00:00'}; var cal_id = jQuery('#cal_id').val(); var date_of_only_hourly_booking = jQuery('#date_of_only_hourly_booking').val(); var data = { 'action': 'get_updated_checkoudate', 'cal_id': cal_id, 'thisinvalue': thisinvalue, 'date_of_only_hourly_booking': date_of_only_hourly_booking }; var optionValues = ''; jQuery.post(vrc_data.ajax_url, data, function(response) { var obj = jQuery.parseJSON( response ); jQuery.each(obj, function(key, value) { optionValues += '<option value='+timeKeysget[key]+'>'+timeArray[key]+'</option>'; }); jQuery('#checkouttime').html(optionValues); }); } </script>"; } $individual_currency = @json_decode($cal_data->individual_calendar_payment); if(@$individual_currency->attr_currency != ''){ $individual_currencie = $individual_currency->attr_currency; if($individual_currencie == 'USD'){ $individual_currencies = '$'; }else if($individual_currencie == 'AUD'){ $individual_currencies = '$'; }else{ $individual_currencies = $individual_currencie; } }else { $individual_currencies = renderCurrency(); } if($individual_currencies == "£"){ $getRenderCurrency = "£"; }else if($individual_currencies == "€"){ $getRenderCurrency = "€"; }else{ $getRenderCurrency = $individual_currencies; } $lang_update = esc_html( __('Calendar Updated on', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $display_ornot = (@$cal_data->calendar_update_display == 'no') ? "style='display:none'":""; $lang_available = esc_html( __('Available', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $lang_unavailable = esc_html( __('Unavailable', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $last_sync_date = @get_date_from_gmt(@$cal_data->calendar_last_synchronized, 'F d, Y \a\t h:i a'); if($dateformat == 'usa'){ $start_dates = @$data['check_in_date']; $newDateString = date("m-d-Y", strtotime($start_dates)); $last_sync_date = @get_date_from_gmt($cal_data->calendar_last_synchronized, 'F d, Y \a\t h:i a'); }else if ($dateformat == 'euro'){ $last_sync_date = @get_date_from_gmt($cal_data->calendar_last_synchronized, 'd F, Y \a\t h:i a'); }else{ $last_sync_date = @get_date_from_gmt(@$cal_data->calendar_last_synchronized, 'Y, F d \a\t h:i a'); } //Attribution Code here which adds a Powered by VR Cal Sync under the Calendar. //First, make sure it is set, if its not, set it to yes by default $Next_arrow = esc_html( __('Next', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); $doattribution = $VRCalendarSettings->getSettings('attribution'); $textForTotal = ''; $textForTotal .= "<div class='default_price'>Total</div>"; $textForTotal .= "<div class='updated_price' style='display: none;'>".esc_html( __('Deposit Due Today', VRCALENDAR_PLUGIN_TEXT_DOMAIN) )." (".@$cal_data->deposit_percentage."%)</div>"; if(isset($_POST['user_first_name'])){ $user_first_name = $_POST['user_first_name'];}else{ $user_first_name = ''; } if(isset($_POST['user_last_name'])){ $user_last_name = $_POST['user_last_name'];}else{ $user_last_name = ''; } if(isset($_POST['user_email'])){ $user_email = $_POST['user_email']; }else{ $user_email = ''; } if(isset($_POST['user_phone'])){ $user_phone = $_POST['user_phone'];}else{ $user_phone = ''; } $calendar_extracharge_after_guest_no = 'style="display:none"'; if(@$cal_data->calendar_extracharge_after_limited_guests > 0) { $calendar_extracharge_after_guest_no = 'style="display:block"'; } $calendar_extracharge_after_child_no = 'style="display:none"'; if(@$cal_data->calendar_extracharge_after_limited_child > 0) { $calendar_extracharge_after_child_no = 'style="display:block"'; } $show_booking_from_one_page = @$cal_data->show_booking_from_one_page; $calendar_enable_booking = @$cal_data->calendar_enable_booking; $showFormData = 'style="display:none"'; if($show_booking_from_one_page == 'yes' && $calendar_enable_booking == "yes") $showFormData = 'style="display:block"'; if (!isset($doattribution)) { $doattribution = 'yes';} //Next, If attribution is desired print it, otherwise print blank string if ($doattribution == 'yes'){ $printattribution = "<div class=\"calendar-info\">".esc_html( __('Powered By', VRCALENDAR_PLUGIN_TEXT_DOMAIN) )." <a href=\"http://www.vrcalendarsync.com\" target=\"_blank\">".esc_html( __('Vacation Rental Calendar Sync', VRCALENDAR_PLUGIN_TEXT_DOMAIN) )."</a></div>"; } else { $printattribution = "";} $calendar_display_num_months = 0; if(@$cal_data->calendar_display_num_months > 0){ $calendar_display_num_months = $cal_data->calendar_display_num_months; $navigation_block = ''; if($cal_data->calendar_display_num_months <= 12){ $navigation_block = 'display:none;'; }else{ $navigation_block = 'display:block;'; } }else{ $calendar_display_num_months = 36 ; } $captchaImg = VRCALENDAR_PLUGIN_URL.'Public/captcha.php'; $submitNewClass = ''; $captchaOption = ''; $recaptchaHtml = ''; $recaptchaDisplay = ''; if(@$cal_data->calendar_recaptcha == 'yes'){ $btnType = "button"; $submitNewClass = 'onclick="javascript:get_action(this);"'; if($VRCalendarSettings->getSettings('re_sitekey') == ""){ $errorkey = "<div class='errorcaptkey'>You must add the SITE KEY from reCaptcha to enable this feature!</div>"; }else{ $errorkey = "<div id='rcaptcha'></div>"; } $recaptchaDisplay = 'display:table-row;'; $captchaScript = ' <script> var verifyCallback = function(v) { if(v.length != 0) { document.getElementById("captcha").innerHTML = ""; jQuery("#vrc_pcmd").val("saveBooking"); jQuery("#checkseasonal").attr("type","submit"); }else{ document.getElementById("captcha").innerHTML = "You cant leave Captcha Code empty"; jQuery("#vrc_pcmd").val(""); jQuery("#checkseasonal").attr("type","button"); return false; } }; var onloadCallback = function() { grecaptcha.render("rcaptcha", { "sitekey" : jQuery("#sitekey").val(), "callback" : verifyCallback, theme : "light" }); }; function get_action(form) { var v = grecaptcha.getResponse(); //alert(v); if(v.length != 0) { jQuery("#vrc_pcmd").val("saveBooking"); form.submit(); }else{ document.getElementById("captcha").innerHTML = "You cant leave Captcha Code empty"; jQuery("#vrc_pcmd").val(""); jQuery("#checkseasonal").attr("type","button"); return false; } } </script> <script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" async defer></script> '; }else{ $btnType = "submit"; $captchaOption = "saveBooking"; $recaptchaDisplay = 'display:none;'; } // $VRCalendar = VRCalendar::getInstance(); $months_per_page = @$cal_data->calendar_layout_options['rows'] * @$cal_data->calendar_layout_options['columns']; if($months_per_page > 0){ $months_per_page = $months_per_page; }else{ $months_per_page = 12; } $headout = ''; $pages = @ceil($calendar_display_num_months / $months_per_page); //echo $pages; $headout .= '<input type="hidden" value="'.$pages.'" class="total_pages">'; $headout .= '<input type="hidden" id="sitekey" value="'.$VRCalendarSettings->getSettings('re_sitekey').'">'; $calendar_html = getCalendar($cal_data, 1); $calendar_css = getCalendarCSS($cal_data); $calendar_name = @$cal_data->calendar_name; $uid = uniqid(); if(@$cal_data->deposit_enable == 'no'){ $customhtml = '<td>'.$getRenderCurrency.'<span id="table-booking-price-with-taxes" class="finaltotal" >'.$zero_value.'</span></td>'; }else{ $customhtml = '<td>'.$getRenderCurrency.'<span id="table-booking-price-with-taxes" class="customupdatedprice">'.$zero_value.'</span></td>'; } if($cal_data->calendar_rental_agreement_option == "upload_pdf"){ $rental_agreement = content_url().$cal_data->calendar_agreement_attachment; }else{ $rental_agreement = $cal_data->calendar_agreement_attachment; } $agreement_attachment_url = (@$cal_data->calendar_rental_agreement_required == 'yes')?$cal_data->calendar_agreement_attachment:''; $rental_agreement_text = "<input type='checkbox' name='rental_agreement_approval'> {$read_agree} <a href='".$rental_agreement."' target='_blank'>{$rental_agreement}</a> {$save_copy}.<input type='hidden' value='".$agreement_attachment_url."' name='calendar_agreement_value'>"; $calendarSetTaxperStay = @$cal_data->calendar_set_taxperstay; if($calendarSetTaxperStay == 'no'){ $setNo = 'style="display:none;"'; } $calendar_tax_charge = @$cal_data->calendar_tax_charge; if($calendar_tax_charge == 'no'){ $setNoperperson = 'style="display:none;"'; } $calendarSetGuestFees = @$cal_data->calendar_set_guestfee; if($calendarSetGuestFees == 'no'){ $setNoGuest = 'style="display:none;"'; } $calendarSetChildFees = @$cal_data->calendar_set_childfee; if($calendarSetChildFees == 'no'){ $setNoChild = 'style="display:none;"'; } if(@$cal_data->calendar_persons_option == "yes"){ $maxChild = @$cal_data->calendar_max_child_no; }else{ $maxChild = @$cal_data->calendar_max_guest_no; } if(@$cal_data->calendar_child_field == "yes"){ $col = "col-sm-6"; $field = ""; $value = $cal_data->calendar_max_child_no; $label = "Adults"; }else{ $col = "col-sm-12"; $field = "hide"; $value = "0"; $label = "Guest"; } if(@$cal_data->calendar_set_title == "no"){ $settitle = "display:none;"; }else{ $settitle = ""; } //$headout .= '<div class="please_wait" style="margin: 0 auto; width: 100%; display: block;position: absolute;top: 0;left: 0;height: 100%;z-index: 1;background: #fff;opacity: 0.5;"><img src="'. VRCALENDAR_PLUGIN_URL .'/assets/images/spinner.gif" alt="Smiley face" height="35" width="35"></div>'; $titlecolor = @$cal_data->calendar_layout_options['default_form_font_color']; $formheadercolor = @$cal_data->calendar_layout_options['default_form_bg_color']; //$show_booking_from_one_page = $cal_data->show_booking_from_one_page; $onepagevalue = 1; // if($show_booking_from_one_page == 'yes') // $onepagevalue = 1; $output = <<<E {$div_vrc_calendar_wrapper_open} <div class="vrc vrc-calendar vrc-calendar-id-{$calid}" id="vrc-calendar-uid-{$uid}"> <div id ="indicator-single-{$calid}" style="margin: 0 auto; width: 100%; display: none;position: absolute;top: 0;left: 0;height: 100%;z-index: 999;background: #fff;opacity: 0.5;"> <img src="{$url}/assets/images/spinner.gif" alt="Smiley face" height="35" width="35"> </div> <div id ="indicator-single-form-{$calid}" style="margin: 0 auto; width: 100%; display: none;position: absolute;top: 0;left: 0;height: 100%;z-index: 999;background: #fff;opacity: 0.5;"> <img src="{$url}/assets/images/spinner.gif" alt="Smiley face" height="35" width="35"> </div> <div class="calendar-header"> <div class="avail_labl"> <input type="hidden" name="onepagevalue" id="onepagevalue" value="$onepagevalue" /> <input type="hidden" name="nextpage" id="nextpage" value="1" /> <input type="hidden" name="valid_hourly_booking" id="valid_hourly_booking" value="0"> <input type="hidden" class="changedateformat" name="changedateformat" value="{$dateformat}"> <input type="hidden" name="cal_id" class="admin_calendar_id" value="{$calid}"> <input type="hidden" value="1" class="next_page-{$calid}"> <input type="hidden" name="valid_hourly_booking" id="valid_hourly_booking" value="0"> <input type="hidden" class="changedateformat" name="changedateformat" value="{$dateformat}"> <div class="blockdate_input"> <div class="label_lft"> <div class="color-label"> <div class="color-label_text"> <div class="color-label_box" style="background:#ec1919"> </div> <div class="color-label_info"> Website Blocked </div> <div class="color-label_box" style="background:#e66"> </div> <div class="color-label_info"> ICS link Blocked </div> <div class="color-label_box" style="background:#e96"> </div> <div class="color-label_info"> ICS link Reserved </div> <div class="color-label_box" style="background:#8fb5ff"> </div> <div class="color-label_info"> Booking Confirmed </div> <div class="color-label_box" style="background:#45a859"> </div> <div class="color-label_info"> Booking Approval Needed </div> </div> </div> </div> <div class="label_rgt"> <div class="block_date_enable"> <input type="button" id="blockdates_show" class="form-control blockdates_btn" value="Block Dates?"> <input type="button" id="addbooking_show" class="form-control bookdates_btn" value="Add Booking?"> </div> <div class="input_date hide"> <input type="text" class="form-control required" name="blockin_date" id="booking_checkin_date" value="" placeholder="Check In Date" aria-required="true" aria-invalid="false" readonly> <input type="text" class="form-control required" name="blockout_date" id="booking_checkout_date" value="" placeholder="Check Out Date" aria-required="true" readonly><input type="button" id="blockdates_cancel" class="form-control blockdates_btn" value="Cancel"> </div> <div class="input_date_booking hide"> <input type="text" class="form-control required" name="blockin_date" id="add_booking_checkin_date" value="" placeholder="Check In Date" aria-required="true" aria-invalid="false" readonly> <input type="text" class="form-control required" name="blockout_date" id="add_booking_checkout_date" value="" placeholder="Check Out Date" aria-required="true" readonly><input type="button" id="bookdates_cancel" class="form-control blockdates_btn" value="Cancel"> </div> </div> </div> </div> </div> <div class="head-indicator"> <div class="calendar-month-name">{$month_year_name}</div> <div class="btn-labl"> <div class="btn-nextprev"> <div class="button_calaner_header"> <div class="customNavigation"> <a class="a1 btn-prev-single-{$calid} pull-left" style="cursor:pointer;width: 30px;height: 30px;"> </a> <a class="a2 btn-next-single-{$calid} pull-right" style="cursor:pointer;width: 30px;height: 30px;"> </a> </div> </div> </div> </div> </div> <div class="calendar-slides calid-{$calid}"> {$calendar_html} </div> </div> <script> jQuery(".vrc-calendar .btn-select_month-single-{$calid}").change(function(){ jQuery("#indicator-single-{$calid}").show(); var id = '{$calid}'; var calendar = jQuery('.calendar-month-name').html(); var next_page = parseInt(jQuery(this).val()); var next_page_no = next_page; jQuery("#nextpage").val(next_page_no); var detailresponseurl = '{$siteurl}'; jQuery.ajax({ type : "post", dataType : "html", url : detailresponseurl, data : {action: "getSingleCalendarCustomAdmin", calendar: calendar, type: 'next',id:id, next_page:next_page_no }, success: function(response) { jQuery('.calid-{$calid}').html(response); if(jQuery(".block_date_enable").hasClass("hide")){ jQuery(".no-event-day").addClass("enable_block"); } if(!jQuery(".input_date_booking").hasClass("hide")){ jQuery(".no-event-day").addClass("enable_add"); } jQuery("#indicator-single-{$calid}").hide(); var next_cal_page = next_page; jQuery("#nextpage").val(next_cal_page); var chkindate = jQuery('#booking_checkin_date').val(); var chkoutdate = jQuery('#booking_checkout_date').val(); if(isNaN(chkindate)){ jQuery(".single-calendar table tr td div[data-booking-date='" + chkindate + "']").addClass('hasClicked'); } if(isNaN(chkoutdate)){ jQuery(this).addClass('hasClicked'); var dateformat = jQuery('.changedateformat').val(); if(dateformat == 'euro'){ var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var d_in = fordatein[0]; var m_in = fordatein[1]; var y_in = fordatein[2]; var d_out = fordateout[0]; var m_out = fordateout[1]; var y_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; }else if (dateformat == 'usa'){ var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var m_in = fordatein[0]; var d_in = fordatein[1]; var y_in = fordatein[2]; var m_out = fordateout[0]; var d_out = fordateout[1]; var y_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; }else { var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var y_in = fordatein[0]; var m_in = fordatein[1]; var d_in = fordatein[2]; var y_out = fordateout[0]; var m_out = fordateout[1]; var d_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; } //console.log(chkin); //$(this).addClass('hasClicked'); jQuery(".day-number").removeClass('hasClicked'); for(var get_d = parseInt(chkin); get_d <= parseInt(chkout); get_d++){ jQuery(".single-calendar table tr td div[date-highlight='" + get_d + "']").addClass('hasClicked'); } } jQuery('.next_page-{$calid}').val(next_cal_page); load_js(); } }); }); jQuery(".vrc-calendar .btn-next-single-{$calid}").click(function(){ jQuery("#indicator-single-{$calid}").show(); var id = '{$calid}'; var calendar = jQuery('.calendar-month-name').html(); var next_page = parseInt(jQuery('.next_page-{$calid}').val()); var next_page_no = next_page+1; var total_pages = parseInt(jQuery('.total_pages').val()); if(total_pages == next_page){ next_page_no = 1; } if(next_page_no > {$num_months}+1){ next_page_no = 1; } jQuery("#nextpage").val(next_page_no); var detailresponseurl = '{$siteurl}'; jQuery.ajax({ type : "post", dataType : "html", url : detailresponseurl, data : {action: "getSingleCalendarCustomAdmin", calendar: calendar, type: 'next',id:id, next_page:next_page_no }, success: function(response) { jQuery('.calid-{$calid}').html(response); jQuery("#indicator-single-{$calid}").hide(); var next_cal_page = next_page + 1; if(total_pages == next_page){ next_cal_page = 1; } if(next_cal_page > {$num_months}+1){ next_cal_page = 1; } if(!jQuery(".input_date").hasClass("hide")){ jQuery(".no-event-day").addClass("enable_block"); } if(!jQuery(".input_date_booking").hasClass("hide")){ jQuery(".no-event-day").addClass("enable_add"); } jQuery("#select_month").val(next_cal_page).attr("selected","selected"); jQuery("#nextpage").val(next_cal_page); var chkindate = jQuery('#booking_checkin_date').val(); var chkoutdate = jQuery('#booking_checkout_date').val(); if(isNaN(chkindate)){ jQuery(".single-calendar table tr td div[data-booking-date='" + chkindate + "']").addClass('hasClicked'); } if(isNaN(chkoutdate)){ jQuery(this).addClass('hasClicked'); var dateformat = jQuery('.changedateformat').val(); if(dateformat == 'euro'){ var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var d_in = fordatein[0]; var m_in = fordatein[1]; var y_in = fordatein[2]; var d_out = fordateout[0]; var m_out = fordateout[1]; var y_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; }else if (dateformat == 'usa'){ var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var m_in = fordatein[0]; var d_in = fordatein[1]; var y_in = fordatein[2]; var m_out = fordateout[0]; var d_out = fordateout[1]; var y_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; }else { var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var y_in = fordatein[0]; var m_in = fordatein[1]; var d_in = fordatein[2]; var y_out = fordateout[0]; var m_out = fordateout[1]; var d_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; } //console.log(chkin); //$(this).addClass('hasClicked'); jQuery(".day-number").removeClass('hasClicked'); for(var get_d = parseInt(chkin); get_d <= parseInt(chkout); get_d++){ jQuery(".single-calendar table tr td div[date-highlight='" + get_d + "']").addClass('hasClicked'); } } jQuery('.next_page-{$calid}').val(next_cal_page); load_js(); } }); }); jQuery(".vrc-calendar .btn-prev-single-{$calid}").click(function(){ jQuery("#indicator-single-{$calid}").show(); var id = '{$calid}'; var calendar = jQuery('.calendar-month-name').html(); var next_page = parseInt(jQuery('.next_page-{$calid}').val()); var next_page_no = next_page-1; if(next_page_no < 1){ next_page_no = 1; } jQuery("#nextpage").val(next_page_no); var detailresponseurl = '{$siteurl}'; jQuery.ajax({ type : "post", dataType : "html", url : detailresponseurl, data : {action: "getSingleCalendarCustomAdmin", calendar: calendar, type: 'next',id:id, next_page:next_page_no }, success: function(response) { jQuery('.calid-{$calid}').html(response); jQuery("#indicator-single-{$calid}").hide(); var next_cal_page = next_page-1; if(next_cal_page < 1){ next_cal_page = 1; } if(!jQuery(".input_date").hasClass("hide")){ jQuery(".no-event-day").addClass("enable_block"); } if(!jQuery(".input_date_booking").hasClass("hide")){ jQuery(".no-event-day").addClass("enable_add"); } jQuery("#select_month").val(next_cal_page).attr("selected","selected"); jQuery("#nextpage").val(next_cal_page); var chkindate = jQuery('#booking_checkin_date').val(); var chkoutdate = jQuery('#booking_checkout_date').val(); if(isNaN(chkindate)){ jQuery(".single-calendar table tr td div[data-booking-date='" + chkindate + "']").addClass('hasClicked'); } if(isNaN(chkoutdate)){ jQuery(this).addClass('hasClicked'); var dateformat = jQuery('.changedateformat').val(); if(dateformat == 'euro'){ var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var d_in = fordatein[0]; var m_in = fordatein[1]; var y_in = fordatein[2]; var d_out = fordateout[0]; var m_out = fordateout[1]; var y_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; }else if (dateformat == 'usa'){ var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var m_in = fordatein[0]; var d_in = fordatein[1]; var y_in = fordatein[2]; var m_out = fordateout[0]; var d_out = fordateout[1]; var y_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; }else { var fordatein = chkindate.split("-"); var fordateout = chkoutdate.split("-"); var y_in = fordatein[0]; var m_in = fordatein[1]; var d_in = fordatein[2]; var y_out = fordateout[0]; var m_out = fordateout[1]; var d_out = fordateout[2]; var chkin = y_in+m_in+d_in; var chkout = y_out+m_out+d_out; } //console.log(chkin); //$(this).addClass('hasClicked'); jQuery(".day-number").removeClass('hasClicked'); for(var get_d = parseInt(chkin); get_d <= parseInt(chkout); get_d++){ jQuery(".single-calendar table tr td div[date-highlight='" + get_d + "']").addClass('hasClicked'); } } jQuery('.next_page-{$calid}').val(next_cal_page); load_js(); } }); }); function load_js(){ var head= document.getElementsByTagName('head')[0]; var script= document.createElement('script'); script.type= 'text/javascript'; script.src='{$dir}assets/js/public.js?ver=1.0.0'; head.appendChild(script); }; </script> {$div_vrc_calendar_wrapper_close} {$calendar_css} E; ; echo $output; }else{ ?> <div class="license_error"> <?php echo esc_html( __('This is for Pro/Enterprise Version or check your License if Expired! Please Renew or Upgrade.', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ); ?> </div> <?php } function getCalendarCSS($cal_data) { $dir = VRCALENDAR_PLUGIN_URL; $cal_id = @$cal_data->calendar_id; $options = @$cal_data->calendar_layout_options; $style = <<<E <style> #my-calendar .day-number{ position: relative; font-weight: 600; } #my-calendar .pull-left{ float: left; } #my-calendar .pull-right{ float: right; } #my-calendar #select_month { padding: 5px 30px 5px 10px !important; } #my-calendar .head-indicator { display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 10px 0; } #my-calendar .btn-nextprev .customNavigation a.a1 { background: url("{$dir}assets/images/arrow_left.png") center center no-repeat; } #my-calendar .btn-nextprev .customNavigation a.a2 { background: url("{$dir}assets/images/arrow_right.png") center center no-repeat; } #my-calendar .customNavigation { z-index: 9; position: relative; display: flex; } #my-calendar .blockdate_input { display: flex; flex-direction: row-reverse; align-items: center; width: 100% !important; justify-content: space-between; } #my-calendar .color-label_text { display: flex; flex-direction: row; align-items: center; } #my-calendar .color-label_text .color-label_info { padding: 5px; font-size: 14px; margin-right: 5px; } #my-calendar .color-label_text .color-label_box { width: 25px; height: 25px; } #my-calendar .has-booking.last-data{ background: linear-gradient(135deg, #8fb5ff 50%,transparent 50%,transparent 100%); } #my-calendar .has-booking.first-data{ background: linear-gradient(135deg, transparent, transparent, transparent, transparent, transparent, #fff 8.5%, #8FB5FF 0); } #my-calendar .has-approve.last-data{ background: linear-gradient(135deg, #45a859 50%,transparent 50%,transparent 100%); } #my-calendar .has-approve.first-data{ background: linear-gradient(135deg, transparent, transparent, transparent, transparent, transparent, #fff 8.5%, #45a859 0); } #my-calendar .has-reserved_ics.last-data{ background: linear-gradient(135deg, #e96 50%,transparent 50%,transparent 100%); } #my-calendar .has-reserved_ics.first-data{ background: linear-gradient(135deg, transparent, transparent, transparent, transparent, transparent, #fff 8.5%, #e96 0); } #my-calendar .has-blocksite.last-data{ background: linear-gradient(135deg, #ec1919 50%,transparent 50%,transparent 100%); } #my-calendar .has-blocksite.first-data{ background: linear-gradient(135deg, transparent, transparent, transparent, transparent, transparent, #fff 8.5%, #ec1919 0); } #my-calendar .has-blocked_ics.last-data { background: linear-gradient(135deg, #e66 50%,transparent 50%,transparent 100%); } #my-calendar .has-blocked_ics.first-data { background: linear-gradient(135deg, transparent, transparent, transparent, transparent, transparent, #fff 8.5%, #e66 0); } #my-calendar .has-booking, #my-calendar .has-approve, #my-calendar .has-reserved_ics, #my-calendar .has-blocksite, #my-calendar .has-blocked_ics { position: absolute; left: 0; width: 100%; padding: 1px; color: #fff !important; } #my-calendar .has-booking { top: 24px; background: #8fb5ff; } #my-calendar .has-approve { top: 24px; background: #45a859; } #my-calendar .has-blocked_ics { background: #e66; top: 55px; } #my-calendar .has-blocksite { background: #ec1919; top: 55px; } #my-calendar .has-reserved_ics { background: #e96; top: 80px; } #my-calendar .list-day { z-index: 99; position: absolute; top: 0; right: 0; padding: 5px; margin-right: 10px; } .first-data { z-index: 1; } #my-calendar #indicator-single-{$cal_id} img, .please_wait img, #my-calendar #indicator-single-form-{$cal_id} img{ top: 50%; position: relative; opacity: 1; display: block; margin: 0 auto; } #my-calendar .calendar tr td.calendar-day-np { background: #f7f7f7; color: #3e3e3e; } #my-calendar .enable_block:hover { background: #f9f9f9; } #my-calendar .no-event-day.enable_block.hasClicked .list-day { color: #fff !important; } #my-calendar .no-event-day.enable_block { cursor: pointer !important; } #my-calendar .enable_add:hover { background: #f9f9f9; } #my-calendar .no-event-day.enable_add.hasClicked .list-day { color: #fff !important; } #my-calendar .no-event-day.enable_add { cursor: pointer !important; } #my-calendar .no-event-day { cursor: no-drop; } #my-calendar .vrc { position: relative; } #my-calendar .avail_labl, .date_update { position: relative; z-index: 2; width: 100%; } #my-calendar .booking-details:hover { opacity: 0.8; } #my-calendar .booking-details { cursor: pointer; color: #fff !important; } .vrc.vrc-calendar .calendar-header .btn-prev-single-{$cal_id}, .vrc.vrc-calendar .calendar-header .btn-next-single-{$cal_id} { display: block; width: 30px; height: 30px; text-indent: -99999px; cursor: pointer; text-decoration: none; border: none; } .vrc.vrc-calendar .calendar-month-container table tr td { padding: 0; } #my-calendar .calendar tr td { text-align: center; height: 40px; border: 1px solid #ccc; vertical-align: middle; } #my-calendar .calendar { width: 100%; padding-top: 20px; } #my-calendar .day-number.event-day.day-past { background: #f7f7f7 !important; } #my-calendar .calendar tr td .event-day, #my-calendar .calendar tr td .day-number, #my-calendar .calendar tr td .event-start, #my-calendar .calendar tr td .no-event-day, #my-calendar .calendar tr td .start-end-day { padding: 40px; min-height: 70px; } #my-calendar .vrc-calendar-id-{$cal_id}{ display: flex; flex-direction: column; } #my-calendar .calendar-header { display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 0 0 15px 0; } #my-calendar .blockdate_input input.blockdates_btn:hover, #my-calendar .blockdate_input input.bookdates_btn:hover { opacity: 0.9; } #my-calendar .blockdate_input input.bookdates_btn { min-height: 40px; background: #328f44; border: none; padding: 0 20px; color: #fff !important; cursor: pointer; font-weight: 500; } #my-calendar .blockdate_input input.blockdates_btn { min-height: 40px; background: #dd5b3d; border: none; padding: 0 20px; color: #fff !important; cursor: pointer; font-weight: 500; } #my-calendar .calendar-slides.calid-{$cal_id} { padding: 0 0 30px 0; } #my-calendar .ui-datepicker-inline.ui-datepicker.ui-widget.ui-widget-content.ui-helper-clearfix.ui-corner-all { display: none !important; } #my-calendar .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} .calendar-month-container { background:{$options['default_bg_color']}; color:{$options['default_font_color']}; border-color:{$options ['calendar_border_color']}; position: relative; padding: 0 30px 30px; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} * { color:#5e5e5e; //color:{$options['default_font_color']}; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} td.calendar-day-head { background: #5e5e5e; color: #fff; font-weight: 600; // background:{$options['week_header_bg_color']}; // color:{$options['week_header_font_color']}; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} td.calendar-day .day-number, .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} .day-number{ background: #fff; color: #5e5e5e; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} td.calendar-day .day-number.hasClicked{ background:{$options['sel_highlight_bg_color']} !important; color:{$options['sel_highlight_font_color']}; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} td.calendar-day .day-number.event-day, .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} .day-number.event-day{ background: #fff; //color: #3e3e3e; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} td.calendar-day .day-number.event-start { background: #fff; //color: #3e3e3e; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} td.calendar-day .day-number.event-end { background: #fff; //color: #3e3e3e; } .vrc.vrc-calendar.vrc-calendar-id-{$cal_id} td.calendar-day .day-number.start-end-day { background: #fff; //color: #3e3e3e; } </style> E; return $style; } function getCalendar($cal_data, $months,$next_page = 0) { // echo $cal_data->calendar_name; $calendar_html = ''; $months_per_page = 1; $pages = ceil($months / $months_per_page); $show_months = $months_per_page-1; $next_month = 0; $page = 0; if($next_page){ $show_months = $next_page*$months_per_page - 1; $next_month = ($next_page - 1) * $months_per_page; } while($page < $pages) { $calendar_html .= '<div class="calendar-page" >'; for($row=1; $row<=@$cal_data->calendar_layout_options['rows'] && $next_month<=$show_months; $row++) { $calendar_html .= '<div class="row">'; for($col=1; $col<=$cal_data->calendar_layout_options['columns'] && $next_month<=$show_months; $col++) { //$next_data = date('Y-m-d', strtotime("+{$next_month} months")); $next_data = date('Y-m-d', mktime(0, 0, 0, date('m')+$next_month, 1, date('Y'))); $month = date('n', strtotime($next_data)); $year = date('Y', strtotime($next_data)); $col_class = ''; if($cal_data->calendar_layout_options['columns']){ $col_class = floor(12/$cal_data->calendar_layout_options['columns']); } $calendar_html .= '<div class="col-md-'.$col_class.'">'; $calendar_html .= getMonthCalendar($cal_data, $month, $year); $calendar_html .= '</div>'; $next_month++; } $calendar_html .= '</div>'; } $calendar_html .= '</div>'; $page++; } return $calendar_html; } function getstatusOfCalender($calendar_id, $cDate) { $timeArray = array('0' => esc_html( __('12:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '1' => esc_html( __('1:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '2' => esc_html( __('2:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '3' => esc_html( __('3:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '4' => esc_html( __('4:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '5' => esc_html( __('5:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '6' => esc_html( __('6:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '7' => esc_html( __('7:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '8' => esc_html( __('8:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '9' => esc_html( __('9:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '10' => esc_html( __('10:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '11' => esc_html( __('11:00am', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '12' => esc_html( __('12:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '13' => esc_html( __('1:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '14' => esc_html( __('2:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ),'15' => esc_html( __('3:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '16' => esc_html( __('4:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '17' => esc_html( __('5:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '18' => esc_html( __('6:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '19' => esc_html( __('7:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '20' => esc_html( __('8:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '21' => esc_html( __('9:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '22' => esc_html( __('10:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '23' => esc_html( __('11:00pm', VRCALENDAR_PLUGIN_TEXT_DOMAIN) )); $timeKeysget = array('0' => esc_html( __('00:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '1' => esc_html( __('01:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '2' => esc_html( __('02:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '3' => esc_html( __('03:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '4' => esc_html( __('04:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '5' => esc_html( __('05:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '6' => esc_html( __('06:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '7' => esc_html( __('07:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '8' => esc_html( __('08:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '9' => esc_html( __('09:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '10' => esc_html( __('10:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '11' => esc_html( __('11:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '12' => esc_html( __('12:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '13' => esc_html( __('13:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '14' => esc_html( __('14:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ),'15' => esc_html( __('15:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '16' => esc_html( __('16:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '17' => esc_html( __('17:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '18' => esc_html( __('18:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '19' => esc_html( __('19:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '20' => esc_html( __('20:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '21' => esc_html( __('21:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '22' => esc_html( __('22:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), '23' => esc_html( __('23:00:00', VRCALENDAR_PLUGIN_TEXT_DOMAIN) )); global $wpdb; $table_name = $wpdb->prefix . 'vrcalandar_bookings'; $results = $wpdb->get_results( "SELECT booking_date_from, booking_date_to FROM $table_name WHERE (booking_admin_approved = 'yes' AND booking_calendar_id = '".$calendar_id."') AND DATE(booking_date_to) <= '".$cDate."'", OBJECT ); if(count($results) > 0) { $arrayinTimes = array(); foreach($results as $gettimes) { foreach($timeKeysget as $key => $timeget) { $VRCalendarEntity = VRCalendarEntity::getInstance(); $cal_data = $VRCalendarEntity->getCalendar($calendar_id); $hoursbookingdiifference = $cal_data->hoursbookingdiifference; $dates1 = date("H:i:s", strtotime('+'.$hoursbookingdiifference.' hours', strtotime($gettimes->booking_date_to))); $dates2 = date("H:i:s", strtotime('-'.$hoursbookingdiifference.' hours', strtotime($gettimes->booking_date_from))); if(date("Y-m-d", strtotime('-'.$hoursbookingdiifference.' hours', strtotime($gettimes->booking_date_from))) == @$_GET['bdate']){ if(strtotime($dates2) > strtotime($timeget)){ $arrayinTimes[$key] = $timeget; }else if(strtotime($dates1) <= strtotime($timeget)){ $arrayinTimes[$key] = $timeget; } }else{ if(strtotime($dates2) > strtotime($timeget)){ $arrayinTimes[$key] = $timeget; }else if(strtotime($dates1) < strtotime($timeget)){ $arrayinTimes[$key] = $timeget; } } } } if(count($arrayinTimes) > 0) { return 1; } else { return 0; } } else { return 0; } } function seasonalDays($from_date, $to_date){ // $from_date = new DateTime($from_date); //$to_date = new DateTime($to_date); $startDate = new DateTime($from_date); $endDate = new DateTime($to_date); $sundays = array(); while ($startDate <= $endDate) { if ($startDate->format('w') == 0) { $sundays[] = $startDate->format('Y-m-d'); } $startDate->modify('+1 day'); } var_dump($sundays); } function getMonthCalendar($cal_data, $month, $year) { $bookingCalendarIds = $cal_data->calendar_id; global $wpdb; $unable_dates = $wpdb->get_results("SELECT * FROM `{$wpdb->prefix}vrcalandar_unable_booking` WHERE `booking_calendar_id` = '".$bookingCalendarIds."'"); $VRCalendarSettings = VRCalendarSettings::getInstance(); $dateformat = $VRCalendarSettings->getSettings('dateformat'); $VRCalendarBooking = VRCalendarBooking::getInstance(); $VRCalendarEntity = VRCalendarEntity::getInstance(); $month_name = date_i18n('F', strtotime("{$year}-{$month}-1")); $year_name = date_i18n('Y', strtotime("{$year}-{$month}-1")); /* draw table */ $calendar = '<table cellpadding="0" cellspacing="0" class="calendar">'; $day_start = $VRCalendarSettings->getSettings('day_start'); if($day_start == "Sat"){ $headings = array( esc_html( __('Sat', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Sun', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Mon', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Tue', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Wed', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Thu', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Fri', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ) ); $date_value = 2; }elseif($day_start == "Mon"){ $headings = array( esc_html( __('Mon', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Tue', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Wed', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Thu', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Fri', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Sat', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Sun', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ) ); $date_value = 7; }else{ $headings = array( esc_html( __('Sun', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Mon', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Tue', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Wed', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Thu', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Fri', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ), esc_html( __('Sat', VRCALENDAR_PLUGIN_TEXT_DOMAIN) ) ); $date_value = 1; } $calendar.= '<tr class="calendar-row"><td class="calendar-day-head">'.implode('</td><td class="calendar-day-head">',$headings).'</td></tr>'; /* days and weeks vars now ... */ $running_day = date('w',mktime(0,0,0,$month,$date_value,$year)); $days_in_month = date('t',mktime(0,0,0,$month,1,$year)); $days_in_this_week = 1; $day_counter = 0; $dates_array = array(); $prev_month = date('t',mktime(0,0,0,$month-1,1,$year))-2; /* row for week one */ $calendar.= '<tr class="calendar-row">'; /* print "blank" days until the first of the current week */ for($x = 0; $x < $running_day; $x++): $calendar.= '<td class="calendar-day-np"> </td>'; $days_in_this_week++; endfor; /* keep going with days.... */ for($list_day = 1; $list_day <= $days_in_month; $list_day++): $cDate = date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)); //custom Code //19-02-2016 //$VRCalendarSettings = VRCalendarSettings::getInstance(); $pro_one_day_book = $cal_data->pro_one_day_book; $hourly_booking = $cal_data->hourly_booking; $hoursbookingdiifference = $cal_data->hoursbookingdiifference; $show_booking_from_one_page = $cal_data->show_booking_from_one_page; //Custom Code if($VRCalendarBooking->isStartEndDate($cal_data, $cDate )) { $booked_class = 'start-end-day'; //custom calender if($hourly_booking == 'yes'){ $valuesOfData = getstatusOfCalender($cal_data->calendar_id, $cDate); //20-02-2016 if($valuesOfData == 1) { $booked_class = 'no-event-day'; //'no-event-day'; }else{ $booked_class = 'event-day'; } }else if($pro_one_day_book == 'yes'){ $booked_class = 'event-day'; //'start-end-day'; } //custom calender } else if($VRCalendarBooking->isStartDate($cal_data, $cDate )) { //$booked_class = 'event-start'; $booked_class = 'no-event-day event-start'; if($hourly_booking == 'yes'){ $valuesOfData = getstatusOfCalender($cal_data->calendar_id, $cDate); //20-02-2016 if($valuesOfData == 1) { $booked_class = 'no-event-day'; //'no-event-day'; }else{ $booked_class = 'event-day'; } }else if($pro_one_day_book == 'yes'){ $booked_class = 'event-day'; //'start-end-day'; } } else if($VRCalendarBooking->isEndDate($cal_data, $cDate )) { $booked_class = 'no-event-day event-end'; //custom Calender if($hourly_booking == 'yes') { $booked_class = 'event-day'; } else if($pro_one_day_book == 'yes') { $booked_class = 'event-day';//'no-event-day event-end'; } //Custom Calender } else if( $VRCalendarBooking->isDateAvailable($cal_data, $cDate )) { $booked_class = 'no-event-day'; } else { $booked_class = 'event-day'; } if(count($unable_dates) > 0) { foreach ($unable_dates as $unableDates) { $booking_date_from = date("Y-m-d", strtotime($unableDates->booking_date_from)); $booking_date_to = date("Y-m-d", strtotime($unableDates->booking_date_to)); if($unableDates->booking_date_to == '0000-00-00 00:00:00') { if($booking_date_from == $cDate || $booking_date_from <= $cDate) { //event-day $booked_class = 'event-day'; } } if(strtotime($booking_date_from) <= strtotime($cDate) && strtotime($booking_date_to) >= strtotime($cDate)) { if($VRCalendarBooking->isStartEndDateBlocked($cal_data, $cDate )) { $booked_class = 'start-end-day'; //custom calender if($hourly_booking == 'yes'){ $valuesOfData = getstatusOfCalender($cal_data->calendar_id, $cDate); //20-02-2016 if($valuesOfData == 1) { $booked_class = 'no-event-day'; //'no-event-day'; }else{ $booked_class = 'event-day'; } }else if($pro_one_day_book == 'yes'){ $booked_class = 'event-day'; //'start-end-day'; } //custom calender } else if($VRCalendarBooking->isStartDateBlocked($cal_data, $cDate )) { //$booked_class = 'event-start'; $booked_class = 'no-event-day event-start'; if($hourly_booking == 'yes'){ $valuesOfData = getstatusOfCalender($cal_data->calendar_id, $cDate); //20-02-2016 if($valuesOfData == 1) { $booked_class = 'no-event-day'; //'no-event-day'; }else{ $booked_class = 'event-day'; } }else if($pro_one_day_book == 'yes'){ $booked_class = 'event-day'; //'start-end-day'; } } else if($VRCalendarBooking->isEndDateBlocked($cal_data, $cDate )) { $booked_class = 'no-event-day event-end'; //custom Calender if($hourly_booking == 'yes') { $booked_class = 'event-day'; } else if($pro_one_day_book == 'yes') { $booked_class = 'event-day';//'no-event-day event-end'; } //Custom Calender } else if( $VRCalendarBooking->isDateAvailableBlocked($cal_data, $cDate )) { $booked_class = 'no-event-day'; } else { $booked_class = 'event-day'; } } } } $booking_price = $VRCalendarEntity->getSingleNightCost($cal_data, $cDate); $month_namedd = date_i18n('m', strtotime("{$year}-{$month}-1")); $year_namedd = date_i18n('Y', strtotime("{$year}-{$month}-1")); $date = $year_namedd.'/'.$month_namedd.'/'.$list_day; $ddd = date('l', strtotime($date)); $getcalendardata = $VRCalendarEntity->getCalendar($bookingCalendarIds); if($getcalendardata->weekend_pricing == 'yes' && $getcalendardata->weekend_pricing != ''){ switch($ddd){ case 'Friday': if($getcalendardata->friday_night_discount != ''){ $booking_price = number_format($getcalendardata->friday_night_discount, 2, '.', ''); } break; case 'Saturday': if($getcalendardata->saturday_night_discount != ''){ $booking_price = number_format($getcalendardata->saturday_night_discount, 2, '.', ''); } break; case 'Sunday': if($getcalendardata->sunday_night_discount != ''){ $booking_price = number_format($getcalendardata->sunday_night_discount, 2, '.', ''); } break; } } if($dateformat == 'usa'){ $cDate = date('m-d-Y', mktime(0,0,0,$month,$list_day,$year)); }else if($dateformat == 'euro'){ $cDate = date('d-m-Y', mktime(0,0,0,$month,$list_day,$year)); }else{ $cDate = date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)); } $datetohighlight = date('Ymd', mktime(0,0,0,$month,$list_day,$year)); $calendar.= '<td class="calendar-day">'; $newArray = array(); $seasonal_weekend_price = ''; //echo $cDate; if(!empty($cal_data->calendar_price_exception)){ foreach($cal_data->calendar_price_exception as $keys=>$seasonalprices){ $begin = strtotime($seasonalprices->start_date); $end = strtotime($seasonalprices->end_date); $currentdatetime = strtotime($date); $seasonal_day_array = array(); // if($cal_data->calendar_enable_booking == 'yes' ){ if(isset($begin) && isset($end)){ if($begin <= $currentdatetime && $currentdatetime <= $end){ $startDate = new DateTime($seasonalprices->start_date); $endDate = new DateTime($seasonalprices->end_date); $sundays = array(); while ($startDate <= $endDate) { if($dateformat == 'usa'){ $seasonal_full_date = $startDate->format('m-d-Y'); }else if($dateformat == 'euro'){ $seasonal_full_date = $startDate->format('d-m-Y'); }else{ $seasonal_full_date = $startDate->format('Y-m-d'); } $sundays[$seasonal_full_date] = $startDate->format('l'); $startDate->modify('+1 day'); } $booking_price = ''; foreach($sundays as $daykey=>$dayvalue){ if($dateformat == 'usa'){ $expl_daykey = explode('-', $daykey); $daykey1 = $expl_daykey[2].'-'.$expl_daykey[0].'-'.$expl_daykey[1]; $expl_cDate = explode('-', $cDate); $cDate1 = $expl_cDate[2].'-'.$expl_cDate[0].'-'.$expl_cDate[1]; } switch ($dayvalue){ case 'Friday': if(strtotime($daykey1) != strtotime($cDate1)){ $booking_price = number_format(@$seasonalprices->variation_price_per_night, 2, '.', ''); }else{ $booking_price = number_format(@$seasonalprices->variation_friday_weekend_pricing, 2, '.', ''); $seasonal_weekend_price = $booking_price; } break; case 'Saturday': if(strtotime($daykey1) == strtotime($cDate1)){ $booking_price = number_format(@$seasonalprices->variation_saturday_weekend_pricing, 2, '.', ''); $seasonal_weekend_price = $booking_price; }else{ $booking_price = number_format(@$seasonalprices->variation_price_per_night, 2, '.', ''); } break; case 'Sunday': if(strtotime($daykey1) == strtotime($cDate1)){ $booking_price = number_format(@$seasonalprices->variation_sunday_weekend_pricing, 2, '.', ''); $seasonal_weekend_price = $booking_price; }else{ $booking_price = number_format(@$seasonalprices->variation_price_per_night, 2, '.', ''); } break; default: $booking_price = number_format(@$seasonalprices->variation_price_per_night, 2, '.', ''); } } } } } } if($cal_data->calendar_enable_booking == "yes"){ $bookingurl = "yes"; }else{ $bookingurl = $cal_data->calendar_booking_url; } if( $seasonal_weekend_price!=''){ $booking_price = $seasonal_weekend_price; } if($cal_data->calendar_show_tooltip == "yes"){ $tooltip = $booking_price; }else{ $tooltip = ''; } $dateparam = ''; if(!empty($VRCalendarSettings->getSettings('get_param'))){ $splitdate = explode("=",$VRCalendarSettings->getSettings('get_param')); $param_format = $splitdate[1]; $dateparam = 'data-parameter="'.date($param_format, mktime(0,0,0,$month,$list_day,$year)).'"'; } $caldate = strtotime(date('Ymd', mktime(0,0,0,$month,$list_day,$year))); $caldatenow = strtotime(date('Ymd')); if($caldate < $caldatenow){ $booked_class = 'event-day day-past'; } $booking_table = $wpdb->prefix.'vrcalandar_bookings'; $getbooked = $wpdb->get_results("SELECT * FROM {$booking_table} WHERE booking_calendar_id = '{$bookingCalendarIds}' AND booking_source = 'website' AND booking_status = 'confirmed'"); $getapprove = $wpdb->get_results("SELECT * FROM {$booking_table} WHERE booking_calendar_id = '{$bookingCalendarIds}' AND booking_source = 'website' AND booking_status = 'pending' AND booking_admin_approved = 'no'"); $getbooked_ics = $wpdb->get_results("SELECT * FROM {$booking_table} WHERE booking_calendar_id = '{$bookingCalendarIds}' AND booking_source LIKE '%ics%'OR booking_source LIKE '%ical%' AND booking_summary LIKE '%reserved%'"); $getlocked_ics = $wpdb->get_results("SELECT * FROM {$booking_table} WHERE booking_calendar_id = '{$bookingCalendarIds}' AND booking_source LIKE '%ics%' OR booking_source LIKE '%ical%' AND booking_summary LIKE '%blocked%' OR booking_summary LIKE '%Not available%'"); $getNotincluded_file = $wpdb->get_results("SELECT * FROM {$booking_table} WHERE booking_calendar_id = '{$bookingCalendarIds}' AND (booking_source LIKE '%ics%' OR booking_source LIKE '%ical%') AND booking_summary NOT LIKE '%blocked%' OR booking_summary NOT LIKE '%Not available%' AND booking_source != 'website'"); $getblocked_website = $wpdb->get_results("SELECT * FROM {$booking_table} WHERE booking_calendar_id = '{$bookingCalendarIds}' AND booking_source = 'Website Blocked' AND booking_summary = 'UNAVAILABLE'"); //echo $booking_price; $calendar .= '<div class="day-number '.$booked_class.'" '.$dateparam.' data-tooltip="" book-url="'.$bookingurl.'" data-calendar-id="'.$cal_data->calendar_id.'" date-highlight="'.$datetohighlight.'" data-booking-date="'.$cDate.'" data-price="'.$booking_price.'"><div class="list-day">'.$list_day.'</div>'; $cls_dbook = ""; foreach($getbooked as $dbook){ for ($x=strtotime($dbook->booking_date_from);$x<=strtotime($dbook->booking_date_to);$x+=86400){ if(date('Y-m-d',$x) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year))) { if(date('Y-m-d', strtotime($dbook->booking_date_from)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $list_day == 1){ if(!empty($dbook->booking_user_email)){ $details_text = "Confirmed Booking"; //$highlight_color = '#8fb5ff'; }else{ // foreach($cal_data->calendar_links as $clink) { // $highlight_color = $clink->color; // if(!empty($clink->name)){ // $details_text = ucfirst($clink->name); // }else{ $details_text = $dbook->booking_summary; // } // } } $individual_currency = json_decode($dbook->booking_sub_price); $details = '<div class="has-booking first-data has_popup" data-calendar-id="'.$bookingCalendarIds.'" data-booking-id="'.$dbook->booking_id.'" style="border-left: 1px solid #fff;"><a title="Click to see details.." class="booking-details" data-calendar-id="'.$bookingCalendarIds.'" data-booking-id="'.$dbook->booking_id.'">'.$details_text.'</a> <span class="popuptext my_popup_'.$dbook->booking_id.'"> <table class="popup_table"> <tr> <td>Full Name: </td><td>'.ucfirst($dbook->booking_user_lname).', '.ucfirst($dbook->booking_user_fname).'</td> </tr> <tr> <td>Email: </td><td>'.$dbook->booking_user_email.'</td> </tr> <tr> <td>Contact: </td><td>'.$dbook->booking_user_phone.'</td> </tr> <tr> <td>Total Amount: </td><td>'.$individual_currency->render_currency.$dbook->booking_total_price.'</td> </tr> </table> </span> </div>'; }else{ if(date('Y-m-d', strtotime($dbook->booking_date_to)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $booked_class == 'event-end'){ $cls_dbook .= ' last-data'; } $details = '<div class="has-booking'.$cls_dbook.'"> </div>'; } $calendar .= $details; } } } $cls_getNotincluded_file = ""; foreach($getNotincluded_file as $d_notincluded){ for ($x=strtotime($d_notincluded->booking_date_from);$x<=strtotime($d_notincluded->booking_date_to);$x+=86400){ if(date('Y-m-d',$x) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year))) { if(date('Y-m-d', strtotime($d_notincluded->booking_date_from)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $list_day == 1){ if(!empty($d_notincluded->booking_user_email)){ $details_text = ucfirst($d_notincluded->booking_user_fname).', '.$d_notincluded->booking_user_email; //$highlight_color = '#8fb5ff'; }else{ // foreach($cal_data->calendar_links as $clink) { // $highlight_color = $clink->color; // if(!empty($clink->name)){ // $details_text = ucfirst($clink->name); // }else{ $details_text = $d_notincluded->booking_summary; // } // } } $details = '<div class="has-reserved_ics first-data" style="border-left: 1px solid #fff;">'.$details_text.'</div>'; }else{ if(date('Y-m-d', strtotime($d_notincluded->booking_date_to)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $booked_class == 'event-end'){ $cls_getNotincluded_file .= ' last-data'; } $details = '<div class="has-reserved_ics'.$cls_getNotincluded_file.'"> </div>'; } $calendar .= $details; } } } $cls_dblocksite = ""; foreach($getblocked_website as $dblocksite){ for ($x=strtotime($dblocksite->booking_date_from);$x<=strtotime($dblocksite->booking_date_to);$x+=86400){ if(date('Y-m-d',$x) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year))) { if(date('Y-m-d', strtotime($dblocksite->booking_date_from)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $list_day == 1){ if(!empty($dblocksite->booking_user_email)){ $details_text = ucfirst($dblocksite->booking_user_fname).', '.$dblocksite->booking_user_email; //$highlight_color = '#8fb5ff'; }else{ // foreach($cal_data->calendar_links as $clink) { // $highlight_color = $clink->color; // if(!empty($clink->name)){ // $details_text = ucfirst($clink->name); // }else{ $details_text = $dblocksite->booking_summary; // } // } } $details = '<div class="has-blocksite first-data" style="border-left: 1px solid #fff;">'.$details_text.'</div>'; }else{ if(date('Y-m-d', strtotime($dblocksite->booking_date_to)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $booked_class == 'event-end'){ $cls_dblocksite .= ' last-data'; } $details = '<div class="has-blocksite'.$cls_dblocksite.'"> </div>'; } $calendar .= $details; } } } $cls_dbook_ics = ""; foreach($getbooked_ics as $dbook_ics){ for ($x=strtotime($dbook_ics->booking_date_from);$x<=strtotime($dbook_ics->booking_date_to);$x+=86400){ if(date('Y-m-d',$x) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year))) { if(date('Y-m-d', strtotime($dbook_ics->booking_date_from)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $list_day == 1){ if(!empty($dbook_ics->booking_user_email)){ $details_text = ucfirst($dbook_ics->booking_user_fname).', '.$dbook_ics->booking_user_email; //$highlight_color = '#8fb5ff'; }else{ // foreach($cal_data->calendar_links as $clink) { // $highlight_color = $clink->color; // if(!empty($clink->name)){ // $details_text = ucfirst($clink->name); // }else{ $details_text = $dbook_ics->booking_summary; // } // } } $details = '<div class="has-reserved_ics first-data" style="border-left: 1px solid #fff;">'.$details_text.'</div>'; }else{ if(date('Y-m-d', strtotime($dbook_ics->booking_date_to)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $booked_class == 'event-end'){ $cls_dbook_ics .= ' last-data'; } $details = '<div class="has-reserved_ics'.$cls_dbook_ics.'"> </div>'; } $calendar .= $details; } } } $cls_dlocked_ics = ""; foreach($getlocked_ics as $dlocked_ics){ for ($x=strtotime($dlocked_ics->booking_date_from);$x<=strtotime($dlocked_ics->booking_date_to);$x+=86400){ if(date('Y-m-d',$x) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year))) { if(date('Y-m-d', strtotime($dlocked_ics->booking_date_from)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $list_day == 1){ if(!empty($dlocked_ics->booking_user_email)){ $details_text = ucfirst($dlocked_ics->booking_user_fname).', '.$dlocked_ics->booking_user_email; //$highlight_color = '#8fb5ff'; }else{ // foreach($cal_data->calendar_links as $clink) { // $highlight_color = $clink->color; // if(!empty($clink->name)){ // $details_text = ucfirst($clink->name); // }else{ $details_text = $dlocked_ics->booking_summary; // } // } } $details = '<div class="has-blocked_ics first-data" style="border-left: 1px solid #fff;">'.$details_text.'</div>'; }else{ if(date('Y-m-d', strtotime($dlocked_ics->booking_date_to)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $booked_class == 'event-end'){ $cls_dlocked_ics .= ' last-data'; } $details = '<div class="has-blocked_ics'.$cls_dlocked_ics.'"> </div>'; } $calendar .= $details; } } } $cls_dapprove = ""; foreach($getapprove as $dapprove){ for ($x=strtotime($dapprove->booking_date_from);$x<=strtotime($dapprove->booking_date_to);$x+=86400){ if(date('Y-m-d',$x) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year))) { if(date('Y-m-d', strtotime($dapprove->booking_date_from)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $list_day == 1){ if(!empty($dapprove->booking_user_email)){ $details_text = "Needs Approval"; //$highlight_color = '#8fb5ff'; }else{ // foreach($cal_data->calendar_links as $clink) { // $highlight_color = $clink->color; // if(!empty($clink->name)){ // $details_text = ucfirst($clink->name); // }else{ $details_text = $dapprove->booking_summary; // } // } } $individual_currency_approve = json_decode($dapprove->booking_sub_price); $details = '<div class="has-approve has_popup first-data" data-calendar-id="'.$bookingCalendarIds.'" data-booking-id="'.$dapprove->booking_id.'" style="border-left: 1px solid #fff;"><a title="Click to see details.." class="booking-details" data-calendar-id="'.$bookingCalendarIds.'" data-booking-id="'.$dapprove->booking_id.'">'.$details_text.'</a> <div class="popuptext my_popup_'.$dapprove->booking_id.'"> <table class="popup_table"> <tr> <td>Full Name: </td><td>'.ucfirst($dapprove->booking_user_lname).', '.ucfirst($dapprove->booking_user_fname).'</td> </tr> <tr> <td>Email: </td><td>'.$dapprove->booking_user_email.'</td> </tr> <tr> <td>Contact: </td><td>'.$dapprove->booking_user_phone.'</td> </tr> <tr> <td>Total Amount: </td><td>'.$individual_currency_approve->render_currency.$dapprove->booking_total_price.'</td> </tr> </table> <input type="button" value="View" class="view_has_approve" data-calendar-id="'.$bookingCalendarIds.'" data-booking-id="'.$dapprove->booking_id.'"/> </div> </div>'; }else{ if(date('Y-m-d', strtotime($dapprove->booking_date_to)) == date('Y-m-d', mktime(0,0,0,$month,$list_day,$year)) || $booked_class == 'event-end'){ $cls_dapprove .= ' last-data'; } $details = '<div class="has-approve'.$cls_dapprove.'"> </div>'; } $calendar .= $details; } } } $calendar .= '</div>'; /* add in the day number */ $calendar.= '</td>'; if($running_day == 6): $calendar.= '</tr>'; if(($day_counter+1) != $days_in_month): $calendar.= '<tr class="calendar-row">'; endif; $running_day = -1; $days_in_this_week = 0; endif; $days_in_this_week++; $running_day++; $day_counter++; $dc = $day_counter; endfor; /* finish the rest of the days in the week */ if($days_in_this_week < 8 && $days_in_this_week>1): for($x = 1; $x <= (8 - $days_in_this_week); $x++): $calendar.= '<td class="calendar-day-np"> </td>'; endfor; endif; /* final row */ $calendar.= '</tr>'; /* end the table */ $calendar.= '</table>'; $result = <<<E <div class="calendar-month-container single-calendar"> {$calendar} </div> E; return $result; } ?>
Editor is loading...