/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php
* The array to compare from
* @param array|object $old_events
* An array to compare against
* @return array an array containing all entries from
* new events that were updated or are not present in the old events array.
*/
public function event_difference( $new_events, $old_events ) {
$map = $difference = array();
// Create map of new sync events
foreach( $new_events as $new_event ) {
$map[$new_event->id] = $new_event;
}
foreach( $old_events as $old_event ) {
$map_key = $old_event->event_id;
if( isset( $map[$map_key] ) ) {
$last_updated_old = date(DateTime::RFC3339_EXTENDED, strtotime($old_event->event_last_updated));
$last_updated_new = date(DateTime::RFC3339_EXTENDED, strtotime($map[$map_key]->updated));
if( $last_updated_new === $last_updated_old ) {
// Event already exists in gAppointments.
$map[$map_key] = 0;
} else {
// Event was updated or deleted. Append stdClass object with id of post.
$map[$map_key] = (object) array_merge( (array) $map[$map_key], array( 'post_id' => $old_event->post_id ) );
}
}
}
foreach( $map as $event_id => $event ) {
if( isset( $event->status) && $event->status === 'cancelled' && !isset( $event->post_id ) ) {
// Event does not exists and/or already deleted from gAppointments.
continue;
} else {
// Event was created. It will be added to gAppointments.
}
if( !is_int( $event ) ) $difference[] = $event;
Arguments
"Trying to get property 'updated' of non-object (View: /home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/partials/module-popup-consultation.blade.php) (View: /home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/partials/module-popup-consultation.blade.php)"
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/Engines/PhpEngine.php
/**
* Get the evaluated contents of the view at the given path.
*
* @param string $path
* @param array $data
* @return string
*/
protected function evaluatePath($path, $data)
{
$obLevel = ob_get_level();
ob_start();
// We'll evaluate the contents of the view inside a try/catch block so we can
// flush out any stray output that might get out before an error occurs or
// an exception is thrown. This prevents any partial views from leaking.
try {
$this->files->getRequire($path, $data);
} catch (Throwable $e) {
$this->handleViewException($e, $obLevel);
}
return ltrim(ob_get_clean());
}
/**
* Handle a view exception.
*
* @param \Throwable $e
* @param int $obLevel
* @return void
*
* @throws \Throwable
*/
protected function handleViewException(Throwable $e, $obLevel)
{
while (ob_get_level() > $obLevel) {
ob_end_clean();
}
Arguments
ErrorException {#26363
#message: "Trying to get property 'updated' of non-object (View: /home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/partials/module-popup-consultation.blade.php)"
#code: 0
#file: "/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php"
#line: 836
-previous: ErrorException {#28620
#message: "Trying to get property 'updated' of non-object"
#code: 0
#file: "/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php"
#line: 836
#severity: E_NOTICE
}
#severity: E_ERROR
}
4
/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php
* The array to compare from
* @param array|object $old_events
* An array to compare against
* @return array an array containing all entries from
* new events that were updated or are not present in the old events array.
*/
public function event_difference( $new_events, $old_events ) {
$map = $difference = array();
// Create map of new sync events
foreach( $new_events as $new_event ) {
$map[$new_event->id] = $new_event;
}
foreach( $old_events as $old_event ) {
$map_key = $old_event->event_id;
if( isset( $map[$map_key] ) ) {
$last_updated_old = date(DateTime::RFC3339_EXTENDED, strtotime($old_event->event_last_updated));
$last_updated_new = date(DateTime::RFC3339_EXTENDED, strtotime($map[$map_key]->updated));
if( $last_updated_new === $last_updated_old ) {
// Event already exists in gAppointments.
$map[$map_key] = 0;
} else {
// Event was updated or deleted. Append stdClass object with id of post.
$map[$map_key] = (object) array_merge( (array) $map[$map_key], array( 'post_id' => $old_event->post_id ) );
}
}
}
foreach( $map as $event_id => $event ) {
if( isset( $event->status) && $event->status === 'cancelled' && !isset( $event->post_id ) ) {
// Event does not exists and/or already deleted from gAppointments.
continue;
} else {
// Event was created. It will be added to gAppointments.
}
if( !is_int( $event ) ) $difference[] = $event;
Arguments
"Trying to get property 'updated' of non-object (View: /home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/partials/module-popup-consultation.blade.php)"
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/Engines/PhpEngine.php
/**
* Get the evaluated contents of the view at the given path.
*
* @param string $path
* @param array $data
* @return string
*/
protected function evaluatePath($path, $data)
{
$obLevel = ob_get_level();
ob_start();
// We'll evaluate the contents of the view inside a try/catch block so we can
// flush out any stray output that might get out before an error occurs or
// an exception is thrown. This prevents any partial views from leaking.
try {
$this->files->getRequire($path, $data);
} catch (Throwable $e) {
$this->handleViewException($e, $obLevel);
}
return ltrim(ob_get_clean());
}
/**
* Handle a view exception.
*
* @param \Throwable $e
* @param int $obLevel
* @return void
*
* @throws \Throwable
*/
protected function handleViewException(Throwable $e, $obLevel)
{
while (ob_get_level() > $obLevel) {
ob_end_clean();
}
Arguments
ErrorException {#28620
#message: "Trying to get property 'updated' of non-object"
#code: 0
#file: "/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php"
#line: 836
#severity: E_NOTICE
}
6
/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php
* The array to compare from
* @param array|object $old_events
* An array to compare against
* @return array an array containing all entries from
* new events that were updated or are not present in the old events array.
*/
public function event_difference( $new_events, $old_events ) {
$map = $difference = array();
// Create map of new sync events
foreach( $new_events as $new_event ) {
$map[$new_event->id] = $new_event;
}
foreach( $old_events as $old_event ) {
$map_key = $old_event->event_id;
if( isset( $map[$map_key] ) ) {
$last_updated_old = date(DateTime::RFC3339_EXTENDED, strtotime($old_event->event_last_updated));
$last_updated_new = date(DateTime::RFC3339_EXTENDED, strtotime($map[$map_key]->updated));
if( $last_updated_new === $last_updated_old ) {
// Event already exists in gAppointments.
$map[$map_key] = 0;
} else {
// Event was updated or deleted. Append stdClass object with id of post.
$map[$map_key] = (object) array_merge( (array) $map[$map_key], array( 'post_id' => $old_event->post_id ) );
}
}
}
foreach( $map as $event_id => $event ) {
if( isset( $event->status) && $event->status === 'cancelled' && !isset( $event->post_id ) ) {
// Event does not exists and/or already deleted from gAppointments.
continue;
} else {
// Event was created. It will be added to gAppointments.
}
if( !is_int( $event ) ) $difference[] = $event;
Arguments
"Trying to get property 'updated' of non-object"
/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php
* The array to compare from
* @param array|object $old_events
* An array to compare against
* @return array an array containing all entries from
* new events that were updated or are not present in the old events array.
*/
public function event_difference( $new_events, $old_events ) {
$map = $difference = array();
// Create map of new sync events
foreach( $new_events as $new_event ) {
$map[$new_event->id] = $new_event;
}
foreach( $old_events as $old_event ) {
$map_key = $old_event->event_id;
if( isset( $map[$map_key] ) ) {
$last_updated_old = date(DateTime::RFC3339_EXTENDED, strtotime($old_event->event_last_updated));
$last_updated_new = date(DateTime::RFC3339_EXTENDED, strtotime($map[$map_key]->updated));
if( $last_updated_new === $last_updated_old ) {
// Event already exists in gAppointments.
$map[$map_key] = 0;
} else {
// Event was updated or deleted. Append stdClass object with id of post.
$map[$map_key] = (object) array_merge( (array) $map[$map_key], array( 'post_id' => $old_event->post_id ) );
}
}
}
foreach( $map as $event_id => $event ) {
if( isset( $event->status) && $event->status === 'cancelled' && !isset( $event->post_id ) ) {
// Event does not exists and/or already deleted from gAppointments.
continue;
} else {
// Event was created. It will be added to gAppointments.
}
if( !is_int( $event ) ) $difference[] = $event;
Arguments
/home/boiterouge/public_html/wp-content/plugins/gappointments/includes/gcal_sync.php
*/
public function sync_events() {
if( !$this->is_two_way_sync() ) {
return false;
}
$calendar_id = $this->get_calendar_id();
if( $calendar_id === 'primary' ) {
return false;
}
$events_new = $this->get_events( $calendar_id );
if( isset( $events_new ) && !empty( $events_new ) ) {
wp_defer_term_counting(true);
wp_defer_comment_counting(true);
$events_old = $this->get_events_by_calendar_id( $calendar_id );
$events_to_update = $this->event_difference( $events_new, $events_old );
// Prepare default two-way syncronization service
$gcal_service_id = get_default_sync_service();
$gcal_service_id = is_null($gcal_service_id) ? $this->create_default_sync_service() : $gcal_service_id;
foreach( $events_to_update as $event ) {
// Get service ID by event's summary
if( isset( $event->summary ) && preg_match('/\\[(.*?)\\]/', $event->summary, $match) ) {
if( $page = get_page_by_title( $match[1], OBJECT, 'ga_services' ) ) {
$service_id = $page->ID;
}
}
// Set default two-way syncronization service as service ID
if ( !isset( $service_id ) ) {
$service_id = $gcal_service_id;
}
// Delete syncronization event if it was cancelled
Arguments
/home/boiterouge/public_html/wp-content/plugins/gappointments/gf-fields/ga-calendar.php
return (string) get_post_meta( $this->service_id, 'ga_service_available_times_mode', true );
}
private function service_capacity() {
return (int) get_post_meta( $this->service_id, 'ga_service_capacity', true );
}
private function custom_slots() {
return get_post_meta( $this->service_id, 'ga_service_custom_slots', true );
}
private function service_price() {
return get_post_meta( $this->service_id, 'ga_service_price', true );
}
private function two_way_sync() {
$sync = new ga_gcal_sync( null, $this->provider_id );
if( $sync->is_sync_enabled() ) {
$sync->sync_events();
} else {
return;
}
}
private function get_translation( $form_lang, $count ) {
return $count == 1 ? ga_get_form_translated_space($form_lang, $count) : ga_get_form_translated_spaces($form_lang, $count);
}
private function get_availability_option() {
if( $this->provider_id === 0 ) {
$global_availability = get_option( 'ga_appointments_appointment_availability' );
$availability = $global_availability !== false ? $global_availability : 'non-global';
} else {
$provider_availability = get_post_meta( $this->provider_id, 'ga_provider_appointment_availability', true );
$availability = !empty( $provider_availability ) ? $provider_availability : 'non-global';
}
return $availability;
}
} // end class
/home/boiterouge/public_html/wp-content/plugins/gappointments/gf-fields/ga-calendar.php
$date = new DateTime();
$date->setTimezone( new DateTimeZone( $this->time_zone ) );
$this->date_info = $date->setDate( (int) $this->year, (int) $this->month, 1 );
$this->num_days = $date->format('t');
$this->day_of_week = $this->date_info->format('w');
// Form translations
$this->form_lang = get_form_translations( null, $form_id );
// Days of week translated
$this->days_of_week = ga_get_form_translated_data($this->form_lang, 'weeks');
// Week starts on
$calendar = get_option('ga_appointments_calendar');
$this->week_starts = isset( $calendar['week_starts'] ) ? $calendar['week_starts'] : 'sunday';
//Maybe pull in appointments from google calendar
if ($execute_sync) {
$this->two_way_sync();
}
$this->provider_availability = $this->get_availability_option();
$this->get_appointments_query();
}
/**
* Get Available Days from Schedule
*/
private function get_available_days($array, $timestamp) {
// SERVICE PERIOD TYPE
$period_type = (string) get_post_meta($this->service_id, 'ga_service_period_type', true);
if( $period_type == 'date_range' ) {
$range = (array) get_post_meta($this->service_id, 'ga_service_date_range', true);
$dates = array();
if( isset($range['from']) && ga_valid_date_format($range['from']) && isset($range['to']) && ga_valid_date_format($range['to']) ) {
$period = new DatePeriod(
new DateTime($range['from']),
/home/boiterouge/public_html/wp-content/plugins/gappointments/gf-fields/gf-booking-calendar.php
while( $custom_date < $current_date ) {
next($custom_dates);
$custom_date = new DateTime( current( $custom_dates ), new DateTimeZone( ga_time_zone() ) );
}
$current_date = $custom_date;
}
}
// Form submited date & time
$selected_date = false;
$selected_slot = $time_val;
if( ga_valid_date_format($date_val) ) {
$current_date = new DateTime( $date_val, new DateTimeZone(ga_time_zone()) );
$selected_date = clone $current_date;
}
// Form submited date & time
// Calendar HTML
$calendar .= '<div id="ga_appointments_calendar" form_id="'.$form_id.'"><div class="ga_monthly_schedule_wrapper">' . PHP_EOL;
$ga_calendar = new GA_Calendar( $form_id, $current_date->format('m'), $current_date->format('Y'), $service_id, $provider_id, $selected_date, $selected_slot );
$calendar .= $ga_calendar->show();
$calendar .= '</div></div>' . PHP_EOL; // end #ga_appointments_calendar
// End Calendar HTML
// Multiple Slots Selection
$calendar .= '<div id="ga_selected_bookings">' . PHP_EOL;
$calendar .= $this->multiple_bookings_markup($form_id, $value, $service_id, $provider_id, $form_lang);
$calendar .= '</div>' . PHP_EOL; // end #ga_selected_bookings
// Multiple Slots Selection
}
else{
return '<p>' .ga_get_form_translated_data($form_lang, 'error_no_services'). '</p>';
}
$calendar .= '</div></div>' . PHP_EOL; // end grid-row
$calendar .= "<input type='hidden' name='input_{$id}[date]' id='{$field_id}' class='{$class} ginput_{$this->type}_input appointment_booking_date' value='{$date_val}'/>";
$calendar .= "<input type='hidden' name='input_{$id}[time]' id='{$field_id}_time' class='{$class} ginput_{$this->type}_input appointment_booking_time' value='{$time_val}'/>";
// Appointment cost hidden field just in case
Arguments
66
"04"
"2026"
7221
7225
false
""
/home/boiterouge/public_html/wp-content/plugins/gravityforms/common.php
}
return $fields;
break;
default :
if ( ! empty( $post_link ) ) {
return $post_link;
}
if ( $form === null ) {
$form = array( 'id' => 0 );
}
if ( ! isset( $lead ) ) {
$lead = null;
}
return $field->get_field_input( $form, $value, $lead );
break;
}
}
public static function is_ssl() {
global $wordpress_https;
$is_ssl = false;
$has_https_plugin = class_exists( 'WordPressHTTPS' ) && isset( $wordpress_https );
$has_is_ssl_method = $has_https_plugin && method_exists( 'WordPressHTTPS', 'is_ssl' );
$has_isSsl_method = $has_https_plugin && method_exists( 'WordPressHTTPS', 'isSsl' );
//Use the WordPress HTTPs plugin if installed
if ( $has_https_plugin && $has_is_ssl_method ) {
$is_ssl = $wordpress_https->is_ssl();
} else if ( $has_https_plugin && $has_isSsl_method ) {
$is_ssl = $wordpress_https->isSsl();
} else {
Arguments
array:58 [
"fields" => array:29 [
0 => GF_Field_HTML {#26365}
1 => GF_Field_Radio {#26372}
2 => GF_Field_HTML {#26368}
3 => GF_Field_Text {#26314}
4 => GF_Field_Page {#26370}
5 => GF_Field_HTML {#26367}
6 => GF_Field_Radio {#26369}
7 => GF_Field_HTML {#26373}
8 => GF_Field_Textarea {#26374}
9 => GF_Field_FileUpload {#26375}
10 => GF_Field_Page {#26376}
11 => GF_Field_HTML {#26377}
12 => GF_Appointment_Booking_Services {#26378}
13 => GF_Appointment_Booking_Providers {#26379}
14 => GF_Appointment_Booking_Calendar {#26380}
15 => GF_Field_Page {#26381}
16 => GF_Field_HTML {#26382}
17 => GF_Field_Name {#26383}
18 => GF_Field_Email {#26384}
19 => GF_Field_Phone {#26385}
20 => GF_Field_Text {#26386}
21 => GF_Field_Text {#26387}
22 => GF_Field_Textarea {#26388}
23 => GF_Field_Text {#26389}
24 => GF_Field_Text {#26390}
25 => GF_Field_Text {#26391}
26 => GF_Field_Text {#26392}
27 => GF_Field_Text {#26393}
28 => GF_Field_HTML {#26394}
]
"button" => array:7 [
"type" => "text"
"text" => "Envoyer"
"imageUrl" => ""
"width" => "auto"
"location" => "bottom"
"layoutGridColumnSpan" => 12
"id" => "submit"
]
"title" => "consultation gratuite"
"description" => ""
"version" => "2.9.20"
"id" => "66"
"markupVersion" => 2
"nextFieldId" => 43
"useCurrentUserAsAuthor" => true
"postContentTemplateEnabled" => false
"postTitleTemplateEnabled" => false
"postTitleTemplate" => ""
"postContentTemplate" => ""
"lastPageButton" => array:3 [
"type" => "text"
"text" => "Précédent"
"imageUrl" => ""
]
"pagination" => array:7 [
"type" => "percentage"
"pages" => array:4 [
0 => ""
1 => ""
2 => ""
3 => ""
]
"style" => "blue"
"backgroundColor" => null
"color" => null
"display_progressbar_on_confirmation" => false
"progressbar_completion_text" => null
]
"firstPageCssClass" => ""
"labelPlacement" => "top_label"
"descriptionPlacement" => "below"
"subLabelPlacement" => "below"
"requiredIndicator" => "text"
"customRequiredIndicator" => "(Nécessaire)"
"cssClass" => "form_conception custom_progressbar"
"saveButtonText" => "Enregistrer et continuer"
"limitEntries" => false
"limitEntriesCount" => ""
"limitEntriesPeriod" => ""
"limitEntriesMessage" => ""
"scheduleForm" => false
"scheduleStart" => ""
"scheduleEnd" => ""
"schedulePendingMessage" => ""
"scheduleMessage" => ""
"requireLogin" => false
"requireLoginMessage" => ""
"honeypotAction" => "abort"
"validationSummary" => false
"deprecated" => ""
"saveEnabled" => ""
"enableHoneypot" => false
"enableAnimation" => false
"save" => array:2 [
"enabled" => false
"button" => array:2 [
"type" => "link"
"text" => "Enregistrer et continuer"
]
]
"scheduleStartHour" => ""
"scheduleStartMinute" => ""
"scheduleStartAmpm" => ""
"scheduleEndHour" => ""
"scheduleEndMinute" => ""
"scheduleEndAmpm" => ""
"is_active" => "1"
"date_created" => "2023-11-06 20:21:09"
"is_trash" => "0"
"gappointments_translation" => array:59 [
"weeks" => array:7 [
"sun" => "Dim"
"mon" => "Lun"
"tue" => "Mar"
"wed" => "Mer"
"thu" => "Jeu"
"fri" => "Ven"
"sat" => "Sam"
]
"long_weeks" => array:7 [
"sunday" => "Dimanche"
"monday" => "Lundi"
"tuesday" => "Mardi"
"wednesday" => "Mercredi"
"thursday" => "Jeudi"
"friday" => "Vendredi"
"saturday" => "Samedi"
]
"january" => "Janvier [year]"
"february" => "Février [year]"
"march" => "Mars [year]"
"april" => "Avril [year]"
"may" => "Mai [year]"
"june" => "Juin [year]"
"july" => "Juillet [year]"
"august" => "Août [year]"
"september" => "Septembre [year]"
"october" => "Octobre [year]"
"november" => "Novembre [year]"
"december" => "Décembre [year]"
"slots_january" => "[day] Janvier, [year]"
"slots_february" => "[day] Février, [year]"
"slots_march" => "[day] Mars, [year]"
"slots_april" => "[day] Avril, [year]"
"slots_may" => "[day] Mai, [year]"
"slots_june" => "[day] Juin, [year]"
"slots_july" => "[day] Juillet, [year]"
"slots_august" => "[day] Août, [year]"
"slots_september" => "[day] Septembre, [year]"
"slots_october" => "[day] Octobre [year]"
"slots_november" => "[day] Novembre, [year]"
"slots_december" => "[day] Décembre, [year]"
"date_time_january" => "[week_long],[day] Janvier [year] at [time_start] - [time_end]"
"date_time_february" => "[week_long],[day] Février [year] at [time_start] - [time_end]"
"date_time_march" => "[week_long],[day] Mars [year] at [time_start] - [time_end]"
"date_time_april" => "[week_long],[day] Avril [year] at [time_start] - [time_end]"
"date_time_may" => "[week_long],[day] Mai [year] at [time_start] - [time_end]"
"date_time_june" => "[week_long],[day] Juin [year] at [time_start] - [time_end]"
"date_time_july" => "[week_long],[day] Juillet [year] at [time_start] - [time_end]"
"date_time_august" => "[week_long],[day] Août [year] at [time_start] - [time_end]"
"date_time_september" => "[week_long],[day] Septembre [year] at [time_start] - [time_end]"
"date_time_october" => "[week_long],[day] Octobre [year] at [time_start] - [time_end]"
"date_time_november" => "[week_long],[day] Novembre [year] at [time_start] - [time_end]"
"date_time_december" => "[week_long],[day] Décembre [year] at [time_start] - [time_end]"
"am" => "AM"
"pm" => "PM"
"space" => "[total] place disponible"
"spaces" => "[total] places disponibles"
"client_service" => "[service_name] with [provider_name]"
"provider_service" => "[service_name] with [client_name]"
"app_cost_text" => "Appointment Cost"
"error_required" => "This field is required"
"error_reached_max" => "You have reached the maximum number of booking allowed for [date]"
"error_required_date" => "Date was not selected"
"error_max_bookings" => "Maximum of [total] bookings allowed for [date]"
"error_required_service" => "Service was not selected"
"error_booked_date" => "You already booked [date]"
"error_date_valid" => "Date [date] is not available."
"error_slot_valid" => "Time slot on [date] is not available"
"error_required_slot" => "Time was not selected"
"error_services_form" => "Add booking services field to form"
"error_service_valid" => "Service not found"
"error_required_provider" => "Provider not selected."
"error_providers_service" => "Providers service not found."
"error_no_services" => "No service found."
]
"ga_service_category" => "alex"
"ga_form_review_page" => "0"
"notifications" => array:1 [
"6525ab978e245" => array:22 [
"id" => "6525ab978e245"
"isActive" => true
"to" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"name" => "Notification administrateur"
"event" => "form_submission"
"toType" => "email"
"subject" => "Nouveau message de {form_title}"
"message" => "{all_fields}"
"service" => "wordpress"
"toEmail" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"toField" => ""
"routing" => null
"fromName" => ""
"from" => "{admin_email}"
"replyTo" => ""
"bcc" => ""
"disableAutoformat" => false
"enableAttachments" => false
"notification_conditional_logic_object" => ""
"notification_conditional_logic" => "0"
"conditionalLogic" => null
"cc" => ""
]
]
"confirmations" => array:1 [
"6525ab978e355" => array:12 [
"id" => "6525ab978e355"
"name" => "Confirmation par défaut"
"isDefault" => true
"type" => "page"
"message" => "Merci de nous avoir contactés ! Nous vous répondrons sous peu."
"url" => ""
"pageId" => "7190"
"queryString" => ""
"event" => ""
"disableAutoformat" => false
"page" => "7190"
"conditionalLogic" => []
]
]
"page_instance" => 0
"theme" => "gravity-theme"
"styles" => ""
]
""
null
/home/boiterouge/public_html/wp-content/plugins/gravityforms/form_display.php
public static function get_field_content( $field, $value = '', $force_frontend_label = false, $form_id = 0, $form = null ) {
$field_label = $field->get_field_label( $force_frontend_label, $value );
$admin_buttons = $field->get_admin_buttons();
$input_type = GFFormsModel::get_input_type( $field );
$is_form_editor = GFCommon::is_form_editor();
$is_entry_detail = GFCommon::is_entry_detail();
$is_admin = $is_form_editor || $is_entry_detail;
if ( $input_type == 'adminonly_hidden' ) {
$field_content = ! $is_admin ? '{FIELD}' : sprintf( "%s<label class='gfield_label gform-field-label' >%s</label>{FIELD}", $admin_buttons, esc_html( $field_label ) );
} else {
$field_content = $field->get_field_content( $value, $force_frontend_label, $form );
}
$value = $field->get_value_default_if_empty( $value );
$field_content = str_replace( '{FIELD}', GFCommon::get_field_input( $field, $value, 0, $form_id, $form ), $field_content );
$field_content = gf_apply_filters( array( 'gform_field_content', $form_id, $field->id ), $field_content, $field, $value, 0, $form_id );
$admin_compact_view_menu = $is_form_editor ? sprintf( "<div id='dropdown_field_%s' data-js='gform-compact-view-overflow-menu' class='gform-compact-view-overflow-menu'></div>", $field->id ) : '';
if( $is_form_editor ) {
$field_content = '<div class="gfield-admin-wrapper">' . $field_content . '</div>' . ( $field->type !== 'submit' ? $admin_compact_view_menu : '' );
}
return $field_content;
}
public static function get_progress_bar( $form, $page, $confirmation_message = '' ) {
$form_id = $form['id'];
$progress_complete = false;
$progress_bar = '';
$page_count = self::get_max_page_number( $form );
$current_page = $page;
$page_name = rgars( $form['pagination'], sprintf( 'pages/%d', $current_page - 1 ) );
$page_name = ! empty( $page_name ) ? ' - ' . $page_name : '';
Arguments
GF_Appointment_Booking_Calendar {#26380}
""
0
66
array:58 [
"fields" => array:29 [
0 => GF_Field_HTML {#26365}
1 => GF_Field_Radio {#26372}
2 => GF_Field_HTML {#26368}
3 => GF_Field_Text {#26314}
4 => GF_Field_Page {#26370}
5 => GF_Field_HTML {#26367}
6 => GF_Field_Radio {#26369}
7 => GF_Field_HTML {#26373}
8 => GF_Field_Textarea {#26374}
9 => GF_Field_FileUpload {#26375}
10 => GF_Field_Page {#26376}
11 => GF_Field_HTML {#26377}
12 => GF_Appointment_Booking_Services {#26378}
13 => GF_Appointment_Booking_Providers {#26379}
14 => GF_Appointment_Booking_Calendar {#26380}
15 => GF_Field_Page {#26381}
16 => GF_Field_HTML {#26382}
17 => GF_Field_Name {#26383}
18 => GF_Field_Email {#26384}
19 => GF_Field_Phone {#26385}
20 => GF_Field_Text {#26386}
21 => GF_Field_Text {#26387}
22 => GF_Field_Textarea {#26388}
23 => GF_Field_Text {#26389}
24 => GF_Field_Text {#26390}
25 => GF_Field_Text {#26391}
26 => GF_Field_Text {#26392}
27 => GF_Field_Text {#26393}
28 => GF_Field_HTML {#26394}
]
"button" => array:7 [
"type" => "text"
"text" => "Envoyer"
"imageUrl" => ""
"width" => "auto"
"location" => "bottom"
"layoutGridColumnSpan" => 12
"id" => "submit"
]
"title" => "consultation gratuite"
"description" => ""
"version" => "2.9.20"
"id" => "66"
"markupVersion" => 2
"nextFieldId" => 43
"useCurrentUserAsAuthor" => true
"postContentTemplateEnabled" => false
"postTitleTemplateEnabled" => false
"postTitleTemplate" => ""
"postContentTemplate" => ""
"lastPageButton" => array:3 [
"type" => "text"
"text" => "Précédent"
"imageUrl" => ""
]
"pagination" => array:7 [
"type" => "percentage"
"pages" => array:4 [
0 => ""
1 => ""
2 => ""
3 => ""
]
"style" => "blue"
"backgroundColor" => null
"color" => null
"display_progressbar_on_confirmation" => false
"progressbar_completion_text" => null
]
"firstPageCssClass" => ""
"labelPlacement" => "top_label"
"descriptionPlacement" => "below"
"subLabelPlacement" => "below"
"requiredIndicator" => "text"
"customRequiredIndicator" => "(Nécessaire)"
"cssClass" => "form_conception custom_progressbar"
"saveButtonText" => "Enregistrer et continuer"
"limitEntries" => false
"limitEntriesCount" => ""
"limitEntriesPeriod" => ""
"limitEntriesMessage" => ""
"scheduleForm" => false
"scheduleStart" => ""
"scheduleEnd" => ""
"schedulePendingMessage" => ""
"scheduleMessage" => ""
"requireLogin" => false
"requireLoginMessage" => ""
"honeypotAction" => "abort"
"validationSummary" => false
"deprecated" => ""
"saveEnabled" => ""
"enableHoneypot" => false
"enableAnimation" => false
"save" => array:2 [
"enabled" => false
"button" => array:2 [
"type" => "link"
"text" => "Enregistrer et continuer"
]
]
"scheduleStartHour" => ""
"scheduleStartMinute" => ""
"scheduleStartAmpm" => ""
"scheduleEndHour" => ""
"scheduleEndMinute" => ""
"scheduleEndAmpm" => ""
"is_active" => "1"
"date_created" => "2023-11-06 20:21:09"
"is_trash" => "0"
"gappointments_translation" => array:59 [
"weeks" => array:7 [
"sun" => "Dim"
"mon" => "Lun"
"tue" => "Mar"
"wed" => "Mer"
"thu" => "Jeu"
"fri" => "Ven"
"sat" => "Sam"
]
"long_weeks" => array:7 [
"sunday" => "Dimanche"
"monday" => "Lundi"
"tuesday" => "Mardi"
"wednesday" => "Mercredi"
"thursday" => "Jeudi"
"friday" => "Vendredi"
"saturday" => "Samedi"
]
"january" => "Janvier [year]"
"february" => "Février [year]"
"march" => "Mars [year]"
"april" => "Avril [year]"
"may" => "Mai [year]"
"june" => "Juin [year]"
"july" => "Juillet [year]"
"august" => "Août [year]"
"september" => "Septembre [year]"
"october" => "Octobre [year]"
"november" => "Novembre [year]"
"december" => "Décembre [year]"
"slots_january" => "[day] Janvier, [year]"
"slots_february" => "[day] Février, [year]"
"slots_march" => "[day] Mars, [year]"
"slots_april" => "[day] Avril, [year]"
"slots_may" => "[day] Mai, [year]"
"slots_june" => "[day] Juin, [year]"
"slots_july" => "[day] Juillet, [year]"
"slots_august" => "[day] Août, [year]"
"slots_september" => "[day] Septembre, [year]"
"slots_october" => "[day] Octobre [year]"
"slots_november" => "[day] Novembre, [year]"
"slots_december" => "[day] Décembre, [year]"
"date_time_january" => "[week_long],[day] Janvier [year] at [time_start] - [time_end]"
"date_time_february" => "[week_long],[day] Février [year] at [time_start] - [time_end]"
"date_time_march" => "[week_long],[day] Mars [year] at [time_start] - [time_end]"
"date_time_april" => "[week_long],[day] Avril [year] at [time_start] - [time_end]"
"date_time_may" => "[week_long],[day] Mai [year] at [time_start] - [time_end]"
"date_time_june" => "[week_long],[day] Juin [year] at [time_start] - [time_end]"
"date_time_july" => "[week_long],[day] Juillet [year] at [time_start] - [time_end]"
"date_time_august" => "[week_long],[day] Août [year] at [time_start] - [time_end]"
"date_time_september" => "[week_long],[day] Septembre [year] at [time_start] - [time_end]"
"date_time_october" => "[week_long],[day] Octobre [year] at [time_start] - [time_end]"
"date_time_november" => "[week_long],[day] Novembre [year] at [time_start] - [time_end]"
"date_time_december" => "[week_long],[day] Décembre [year] at [time_start] - [time_end]"
"am" => "AM"
"pm" => "PM"
"space" => "[total] place disponible"
"spaces" => "[total] places disponibles"
"client_service" => "[service_name] with [provider_name]"
"provider_service" => "[service_name] with [client_name]"
"app_cost_text" => "Appointment Cost"
"error_required" => "This field is required"
"error_reached_max" => "You have reached the maximum number of booking allowed for [date]"
"error_required_date" => "Date was not selected"
"error_max_bookings" => "Maximum of [total] bookings allowed for [date]"
"error_required_service" => "Service was not selected"
"error_booked_date" => "You already booked [date]"
"error_date_valid" => "Date [date] is not available."
"error_slot_valid" => "Time slot on [date] is not available"
"error_required_slot" => "Time was not selected"
"error_services_form" => "Add booking services field to form"
"error_service_valid" => "Service not found"
"error_required_provider" => "Provider not selected."
"error_providers_service" => "Providers service not found."
"error_no_services" => "No service found."
]
"ga_service_category" => "alex"
"ga_form_review_page" => "0"
"notifications" => array:1 [
"6525ab978e245" => array:22 [
"id" => "6525ab978e245"
"isActive" => true
"to" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"name" => "Notification administrateur"
"event" => "form_submission"
"toType" => "email"
"subject" => "Nouveau message de {form_title}"
"message" => "{all_fields}"
"service" => "wordpress"
"toEmail" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"toField" => ""
"routing" => null
"fromName" => ""
"from" => "{admin_email}"
"replyTo" => ""
"bcc" => ""
"disableAutoformat" => false
"enableAttachments" => false
"notification_conditional_logic_object" => ""
"notification_conditional_logic" => "0"
"conditionalLogic" => null
"cc" => ""
]
]
"confirmations" => array:1 [
"6525ab978e355" => array:12 [
"id" => "6525ab978e355"
"name" => "Confirmation par défaut"
"isDefault" => true
"type" => "page"
"message" => "Merci de nous avoir contactés ! Nous vous répondrons sous peu."
"url" => ""
"pageId" => "7190"
"queryString" => ""
"event" => ""
"disableAutoformat" => false
"page" => "7190"
"conditionalLogic" => []
]
]
"page_instance" => 0
"theme" => "gravity-theme"
"styles" => ""
]
/home/boiterouge/public_html/wp-content/plugins/gravityforms/form_display.php
$span_class = $field->get_css_grid_class( $form );
$css_class = "gfield gfield--type-{$field->type} $choice_input_type_class $field_input_type_class $field_specific_class $selectable_class $span_class $error_class $section_class $admin_only_class $custom_class $hidden_class $html_block_class $html_formatted_class $html_no_follows_desc_class $option_class $quantity_class $product_class $total_class $donation_class $shipping_class $page_class $required_class $hidden_product_class $creditcard_warning_class $submit_width_class $calculation_class $sublabel_class $has_description_class $description_class $label_placement $visibility_class $admin_hidden_class";
$css_class = preg_replace( '/\s+/', ' ', $css_class ); // removing extra spaces
/*
* This filter is applied twice because fields may either be using it to modify the collection of HTML classes
* by removing elements, or by providing their own custom HTML classes, as well. We want to capture any
* custom classes which are provided, but cannot guarantee that the $css_class string has been manipulated
* in a reliable way. As of 2.5, the $field_classes value is used by the Settings API to apply those classes
* to the settings sidebar panel while a field is active.
*/
$field_classes = gf_apply_filters( array( 'gform_field_css_class', $form_id ), '', $field, $form );
$css_class = gf_apply_filters( array( 'gform_field_css_class', $form_id ), trim( $css_class ), $field, $form );
$style = '';
$field_id = $is_admin || empty( $form ) ? "field_$id" : 'field_' . $form_id . "_$id";
$field_content = self::get_field_content( $field, $value, $force_frontend_label, $form_id, $form );
$css_class = esc_attr( $css_class );
$field_container = $field->get_field_container(
array(
'id' => $field_id,
'class' => $css_class,
'style' => $style,
'data-field-class' => trim( $field_classes ),
),
$form
);
/**
* Modify the markup used for the field container.
*
* @since 1.8.9
*
* @param string $field_container The field container markup. {FIELD_CONTENT} placeholder indicates where the markup for the field content should be located.
Arguments
GF_Appointment_Booking_Calendar {#26380}
""
false
66
array:58 [
"fields" => array:29 [
0 => GF_Field_HTML {#26365}
1 => GF_Field_Radio {#26372}
2 => GF_Field_HTML {#26368}
3 => GF_Field_Text {#26314}
4 => GF_Field_Page {#26370}
5 => GF_Field_HTML {#26367}
6 => GF_Field_Radio {#26369}
7 => GF_Field_HTML {#26373}
8 => GF_Field_Textarea {#26374}
9 => GF_Field_FileUpload {#26375}
10 => GF_Field_Page {#26376}
11 => GF_Field_HTML {#26377}
12 => GF_Appointment_Booking_Services {#26378}
13 => GF_Appointment_Booking_Providers {#26379}
14 => GF_Appointment_Booking_Calendar {#26380}
15 => GF_Field_Page {#26381}
16 => GF_Field_HTML {#26382}
17 => GF_Field_Name {#26383}
18 => GF_Field_Email {#26384}
19 => GF_Field_Phone {#26385}
20 => GF_Field_Text {#26386}
21 => GF_Field_Text {#26387}
22 => GF_Field_Textarea {#26388}
23 => GF_Field_Text {#26389}
24 => GF_Field_Text {#26390}
25 => GF_Field_Text {#26391}
26 => GF_Field_Text {#26392}
27 => GF_Field_Text {#26393}
28 => GF_Field_HTML {#26394}
]
"button" => array:7 [
"type" => "text"
"text" => "Envoyer"
"imageUrl" => ""
"width" => "auto"
"location" => "bottom"
"layoutGridColumnSpan" => 12
"id" => "submit"
]
"title" => "consultation gratuite"
"description" => ""
"version" => "2.9.20"
"id" => "66"
"markupVersion" => 2
"nextFieldId" => 43
"useCurrentUserAsAuthor" => true
"postContentTemplateEnabled" => false
"postTitleTemplateEnabled" => false
"postTitleTemplate" => ""
"postContentTemplate" => ""
"lastPageButton" => array:3 [
"type" => "text"
"text" => "Précédent"
"imageUrl" => ""
]
"pagination" => array:7 [
"type" => "percentage"
"pages" => array:4 [
0 => ""
1 => ""
2 => ""
3 => ""
]
"style" => "blue"
"backgroundColor" => null
"color" => null
"display_progressbar_on_confirmation" => false
"progressbar_completion_text" => null
]
"firstPageCssClass" => ""
"labelPlacement" => "top_label"
"descriptionPlacement" => "below"
"subLabelPlacement" => "below"
"requiredIndicator" => "text"
"customRequiredIndicator" => "(Nécessaire)"
"cssClass" => "form_conception custom_progressbar"
"saveButtonText" => "Enregistrer et continuer"
"limitEntries" => false
"limitEntriesCount" => ""
"limitEntriesPeriod" => ""
"limitEntriesMessage" => ""
"scheduleForm" => false
"scheduleStart" => ""
"scheduleEnd" => ""
"schedulePendingMessage" => ""
"scheduleMessage" => ""
"requireLogin" => false
"requireLoginMessage" => ""
"honeypotAction" => "abort"
"validationSummary" => false
"deprecated" => ""
"saveEnabled" => ""
"enableHoneypot" => false
"enableAnimation" => false
"save" => array:2 [
"enabled" => false
"button" => array:2 [
"type" => "link"
"text" => "Enregistrer et continuer"
]
]
"scheduleStartHour" => ""
"scheduleStartMinute" => ""
"scheduleStartAmpm" => ""
"scheduleEndHour" => ""
"scheduleEndMinute" => ""
"scheduleEndAmpm" => ""
"is_active" => "1"
"date_created" => "2023-11-06 20:21:09"
"is_trash" => "0"
"gappointments_translation" => array:59 [
"weeks" => array:7 [
"sun" => "Dim"
"mon" => "Lun"
"tue" => "Mar"
"wed" => "Mer"
"thu" => "Jeu"
"fri" => "Ven"
"sat" => "Sam"
]
"long_weeks" => array:7 [
"sunday" => "Dimanche"
"monday" => "Lundi"
"tuesday" => "Mardi"
"wednesday" => "Mercredi"
"thursday" => "Jeudi"
"friday" => "Vendredi"
"saturday" => "Samedi"
]
"january" => "Janvier [year]"
"february" => "Février [year]"
"march" => "Mars [year]"
"april" => "Avril [year]"
"may" => "Mai [year]"
"june" => "Juin [year]"
"july" => "Juillet [year]"
"august" => "Août [year]"
"september" => "Septembre [year]"
"october" => "Octobre [year]"
"november" => "Novembre [year]"
"december" => "Décembre [year]"
"slots_january" => "[day] Janvier, [year]"
"slots_february" => "[day] Février, [year]"
"slots_march" => "[day] Mars, [year]"
"slots_april" => "[day] Avril, [year]"
"slots_may" => "[day] Mai, [year]"
"slots_june" => "[day] Juin, [year]"
"slots_july" => "[day] Juillet, [year]"
"slots_august" => "[day] Août, [year]"
"slots_september" => "[day] Septembre, [year]"
"slots_october" => "[day] Octobre [year]"
"slots_november" => "[day] Novembre, [year]"
"slots_december" => "[day] Décembre, [year]"
"date_time_january" => "[week_long],[day] Janvier [year] at [time_start] - [time_end]"
"date_time_february" => "[week_long],[day] Février [year] at [time_start] - [time_end]"
"date_time_march" => "[week_long],[day] Mars [year] at [time_start] - [time_end]"
"date_time_april" => "[week_long],[day] Avril [year] at [time_start] - [time_end]"
"date_time_may" => "[week_long],[day] Mai [year] at [time_start] - [time_end]"
"date_time_june" => "[week_long],[day] Juin [year] at [time_start] - [time_end]"
"date_time_july" => "[week_long],[day] Juillet [year] at [time_start] - [time_end]"
"date_time_august" => "[week_long],[day] Août [year] at [time_start] - [time_end]"
"date_time_september" => "[week_long],[day] Septembre [year] at [time_start] - [time_end]"
"date_time_october" => "[week_long],[day] Octobre [year] at [time_start] - [time_end]"
"date_time_november" => "[week_long],[day] Novembre [year] at [time_start] - [time_end]"
"date_time_december" => "[week_long],[day] Décembre [year] at [time_start] - [time_end]"
"am" => "AM"
"pm" => "PM"
"space" => "[total] place disponible"
"spaces" => "[total] places disponibles"
"client_service" => "[service_name] with [provider_name]"
"provider_service" => "[service_name] with [client_name]"
"app_cost_text" => "Appointment Cost"
"error_required" => "This field is required"
"error_reached_max" => "You have reached the maximum number of booking allowed for [date]"
"error_required_date" => "Date was not selected"
"error_max_bookings" => "Maximum of [total] bookings allowed for [date]"
"error_required_service" => "Service was not selected"
"error_booked_date" => "You already booked [date]"
"error_date_valid" => "Date [date] is not available."
"error_slot_valid" => "Time slot on [date] is not available"
"error_required_slot" => "Time was not selected"
"error_services_form" => "Add booking services field to form"
"error_service_valid" => "Service not found"
"error_required_provider" => "Provider not selected."
"error_providers_service" => "Providers service not found."
"error_no_services" => "No service found."
]
"ga_service_category" => "alex"
"ga_form_review_page" => "0"
"notifications" => array:1 [
"6525ab978e245" => array:22 [
"id" => "6525ab978e245"
"isActive" => true
"to" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"name" => "Notification administrateur"
"event" => "form_submission"
"toType" => "email"
"subject" => "Nouveau message de {form_title}"
"message" => "{all_fields}"
"service" => "wordpress"
"toEmail" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"toField" => ""
"routing" => null
"fromName" => ""
"from" => "{admin_email}"
"replyTo" => ""
"bcc" => ""
"disableAutoformat" => false
"enableAttachments" => false
"notification_conditional_logic_object" => ""
"notification_conditional_logic" => "0"
"conditionalLogic" => null
"cc" => ""
]
]
"confirmations" => array:1 [
"6525ab978e355" => array:12 [
"id" => "6525ab978e355"
"name" => "Confirmation par défaut"
"isDefault" => true
"type" => "page"
"message" => "Merci de nous avoir contactés ! Nous vous répondrons sous peu."
"url" => ""
"pageId" => "7190"
"queryString" => ""
"event" => ""
"disableAutoformat" => false
"page" => "7190"
"conditionalLogic" => []
]
]
"page_instance" => 0
"theme" => "gravity-theme"
"styles" => ""
]
/home/boiterouge/public_html/wp-content/plugins/gravityforms/form_display.php
$form = $honeypot_handler->maybe_add_honeypot_field( $form );
foreach ( $form['fields'] as $field ) {
$field->set_context_property( 'rendering_form', true );
/* @var GF_Field $field */
$field->conditionalLogicFields = self::get_conditional_logic_fields( $form, $field->id );
if ( is_array( $submitted_values ) ) {
$field_value = rgar( $submitted_values, $field->id );
if ( $field->type === 'consent'
&& ( $field_value[ $field->id . '.3' ] != GFFormsModel::get_latest_form_revisions_id( $form['id'] )
|| $field_value[ $field->id . '.2' ] != $field->checkboxLabel ) ) {
$field_value = GFFormsModel::get_field_value( $field, $field_values );
}
} else {
$field_value = GFFormsModel::get_field_value( $field, $field_values );
}
$form_string .= self::get_field( $field, $field_value, false, $form, $field_values );
$form_string .= self::get_row_spacer( $field, $form );
}
}
$form_string .= "</{$tag}>";
if ( $has_pages ) {
$last_page_button = rgar( $form, 'lastPageButton', array() );
$previous_button_alt = rgar( $last_page_button, 'imageAlt', __( 'Previous Page', 'gravityforms' ) );
$previous_button = self::get_form_button( $form['id'], "gform_previous_button_{$form['id']}", $last_page_button, __( 'Previous', 'gravityforms' ), 'gform_previous_button gform-theme-button gform-theme-button--secondary', $previous_button_alt, self::get_current_page( $form_id ) - 1 );
/**
* Filter through the form previous button when paged
*
* @param int $form_id The Form ID to filter through
* @param string $previous_button The HTML rendered button (rendered with the form ID and the function get_form_button)
* @param array $form The Form object to filter through
*/
$previous_button = gf_apply_filters( array( 'gform_previous_button', $form_id ), $previous_button, $form );
Arguments
GF_Appointment_Booking_Calendar {#26380}
null
false
array:58 [
"fields" => array:29 [
0 => GF_Field_HTML {#26365}
1 => GF_Field_Radio {#26372}
2 => GF_Field_HTML {#26368}
3 => GF_Field_Text {#26314}
4 => GF_Field_Page {#26370}
5 => GF_Field_HTML {#26367}
6 => GF_Field_Radio {#26369}
7 => GF_Field_HTML {#26373}
8 => GF_Field_Textarea {#26374}
9 => GF_Field_FileUpload {#26375}
10 => GF_Field_Page {#26376}
11 => GF_Field_HTML {#26377}
12 => GF_Appointment_Booking_Services {#26378}
13 => GF_Appointment_Booking_Providers {#26379}
14 => GF_Appointment_Booking_Calendar {#26380}
15 => GF_Field_Page {#26381}
16 => GF_Field_HTML {#26382}
17 => GF_Field_Name {#26383}
18 => GF_Field_Email {#26384}
19 => GF_Field_Phone {#26385}
20 => GF_Field_Text {#26386}
21 => GF_Field_Text {#26387}
22 => GF_Field_Textarea {#26388}
23 => GF_Field_Text {#26389}
24 => GF_Field_Text {#26390}
25 => GF_Field_Text {#26391}
26 => GF_Field_Text {#26392}
27 => GF_Field_Text {#26393}
28 => GF_Field_HTML {#26394}
]
"button" => array:7 [
"type" => "text"
"text" => "Envoyer"
"imageUrl" => ""
"width" => "auto"
"location" => "bottom"
"layoutGridColumnSpan" => 12
"id" => "submit"
]
"title" => "consultation gratuite"
"description" => ""
"version" => "2.9.20"
"id" => "66"
"markupVersion" => 2
"nextFieldId" => 43
"useCurrentUserAsAuthor" => true
"postContentTemplateEnabled" => false
"postTitleTemplateEnabled" => false
"postTitleTemplate" => ""
"postContentTemplate" => ""
"lastPageButton" => array:3 [
"type" => "text"
"text" => "Précédent"
"imageUrl" => ""
]
"pagination" => array:7 [
"type" => "percentage"
"pages" => array:4 [
0 => ""
1 => ""
2 => ""
3 => ""
]
"style" => "blue"
"backgroundColor" => null
"color" => null
"display_progressbar_on_confirmation" => false
"progressbar_completion_text" => null
]
"firstPageCssClass" => ""
"labelPlacement" => "top_label"
"descriptionPlacement" => "below"
"subLabelPlacement" => "below"
"requiredIndicator" => "text"
"customRequiredIndicator" => "(Nécessaire)"
"cssClass" => "form_conception custom_progressbar"
"saveButtonText" => "Enregistrer et continuer"
"limitEntries" => false
"limitEntriesCount" => ""
"limitEntriesPeriod" => ""
"limitEntriesMessage" => ""
"scheduleForm" => false
"scheduleStart" => ""
"scheduleEnd" => ""
"schedulePendingMessage" => ""
"scheduleMessage" => ""
"requireLogin" => false
"requireLoginMessage" => ""
"honeypotAction" => "abort"
"validationSummary" => false
"deprecated" => ""
"saveEnabled" => ""
"enableHoneypot" => false
"enableAnimation" => false
"save" => array:2 [
"enabled" => false
"button" => array:2 [
"type" => "link"
"text" => "Enregistrer et continuer"
]
]
"scheduleStartHour" => ""
"scheduleStartMinute" => ""
"scheduleStartAmpm" => ""
"scheduleEndHour" => ""
"scheduleEndMinute" => ""
"scheduleEndAmpm" => ""
"is_active" => "1"
"date_created" => "2023-11-06 20:21:09"
"is_trash" => "0"
"gappointments_translation" => array:59 [
"weeks" => array:7 [
"sun" => "Dim"
"mon" => "Lun"
"tue" => "Mar"
"wed" => "Mer"
"thu" => "Jeu"
"fri" => "Ven"
"sat" => "Sam"
]
"long_weeks" => array:7 [
"sunday" => "Dimanche"
"monday" => "Lundi"
"tuesday" => "Mardi"
"wednesday" => "Mercredi"
"thursday" => "Jeudi"
"friday" => "Vendredi"
"saturday" => "Samedi"
]
"january" => "Janvier [year]"
"february" => "Février [year]"
"march" => "Mars [year]"
"april" => "Avril [year]"
"may" => "Mai [year]"
"june" => "Juin [year]"
"july" => "Juillet [year]"
"august" => "Août [year]"
"september" => "Septembre [year]"
"october" => "Octobre [year]"
"november" => "Novembre [year]"
"december" => "Décembre [year]"
"slots_january" => "[day] Janvier, [year]"
"slots_february" => "[day] Février, [year]"
"slots_march" => "[day] Mars, [year]"
"slots_april" => "[day] Avril, [year]"
"slots_may" => "[day] Mai, [year]"
"slots_june" => "[day] Juin, [year]"
"slots_july" => "[day] Juillet, [year]"
"slots_august" => "[day] Août, [year]"
"slots_september" => "[day] Septembre, [year]"
"slots_october" => "[day] Octobre [year]"
"slots_november" => "[day] Novembre, [year]"
"slots_december" => "[day] Décembre, [year]"
"date_time_january" => "[week_long],[day] Janvier [year] at [time_start] - [time_end]"
"date_time_february" => "[week_long],[day] Février [year] at [time_start] - [time_end]"
"date_time_march" => "[week_long],[day] Mars [year] at [time_start] - [time_end]"
"date_time_april" => "[week_long],[day] Avril [year] at [time_start] - [time_end]"
"date_time_may" => "[week_long],[day] Mai [year] at [time_start] - [time_end]"
"date_time_june" => "[week_long],[day] Juin [year] at [time_start] - [time_end]"
"date_time_july" => "[week_long],[day] Juillet [year] at [time_start] - [time_end]"
"date_time_august" => "[week_long],[day] Août [year] at [time_start] - [time_end]"
"date_time_september" => "[week_long],[day] Septembre [year] at [time_start] - [time_end]"
"date_time_october" => "[week_long],[day] Octobre [year] at [time_start] - [time_end]"
"date_time_november" => "[week_long],[day] Novembre [year] at [time_start] - [time_end]"
"date_time_december" => "[week_long],[day] Décembre [year] at [time_start] - [time_end]"
"am" => "AM"
"pm" => "PM"
"space" => "[total] place disponible"
"spaces" => "[total] places disponibles"
"client_service" => "[service_name] with [provider_name]"
"provider_service" => "[service_name] with [client_name]"
"app_cost_text" => "Appointment Cost"
"error_required" => "This field is required"
"error_reached_max" => "You have reached the maximum number of booking allowed for [date]"
"error_required_date" => "Date was not selected"
"error_max_bookings" => "Maximum of [total] bookings allowed for [date]"
"error_required_service" => "Service was not selected"
"error_booked_date" => "You already booked [date]"
"error_date_valid" => "Date [date] is not available."
"error_slot_valid" => "Time slot on [date] is not available"
"error_required_slot" => "Time was not selected"
"error_services_form" => "Add booking services field to form"
"error_service_valid" => "Service not found"
"error_required_provider" => "Provider not selected."
"error_providers_service" => "Providers service not found."
"error_no_services" => "No service found."
]
"ga_service_category" => "alex"
"ga_form_review_page" => "0"
"notifications" => array:1 [
"6525ab978e245" => array:22 [
"id" => "6525ab978e245"
"isActive" => true
"to" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"name" => "Notification administrateur"
"event" => "form_submission"
"toType" => "email"
"subject" => "Nouveau message de {form_title}"
"message" => "{all_fields}"
"service" => "wordpress"
"toEmail" => "nader@redboxmedia.ca, alexb@redboxmedia.ca"
"toField" => ""
"routing" => null
"fromName" => ""
"from" => "{admin_email}"
"replyTo" => ""
"bcc" => ""
"disableAutoformat" => false
"enableAttachments" => false
"notification_conditional_logic_object" => ""
"notification_conditional_logic" => "0"
"conditionalLogic" => null
"cc" => ""
]
]
"confirmations" => array:1 [
"6525ab978e355" => array:12 [
"id" => "6525ab978e355"
"name" => "Confirmation par défaut"
"isDefault" => true
"type" => "page"
"message" => "Merci de nous avoir contactés ! Nous vous répondrons sous peu."
"url" => ""
"pageId" => "7190"
"queryString" => ""
"event" => ""
"disableAutoformat" => false
"page" => "7190"
"conditionalLogic" => []
]
]
"page_instance" => 0
"theme" => "gravity-theme"
"styles" => ""
]
[]
/home/boiterouge/public_html/wp-content/plugins/gravityforms/gravityforms.php
if ( defined( 'DOING_AJAX' ) && DOING_AJAX && ( ( isset( $_POST['form_id'] ) && rgpost( 'action' ) === 'rg_select_export_form' ) || ( isset( $_POST['export_form'] ) && rgpost( 'action' ) === 'gf_process_export' ) ) ) {
return 'export_entry_ajax';
}
return false;
}
/**
* Gets the form.
*
* @since Unknown
* @access public
*
* @uses GFFormDisplay::get_form()
* @uses GFCommon::get_base_path()
*/
public static function get_form( $form_id, $display_title = true, $display_description = true, $force_display = false, $field_values = null, $ajax = false, $tabindex = 0, $theme = null, $style_settings = null ) {
require_once( GFCommon::get_base_path() . '/form_display.php' );
return GFFormDisplay::get_form( $form_id, $display_title, $display_description, $force_display, $field_values, $ajax, $tabindex, $theme, $style_settings );
}
/**
* Runs when the Forms menu item is clicked.
*
* Checks to see if the installation wizard should be displayed instead.
*
* @since Unknown
* @access public
*/
public static function new_form() {
if ( self::maybe_display_wizard() ) {
return;
};
self::form_list_page();
}
/**
Arguments
"66"
false
false
false
[]
true
0
"data-form-theme='gravity-theme'"
""
/home/boiterouge/public_html/wp-content/plugins/gravityforms/gravityforms.php
break;
}
//displaying form
$title = strtolower( $title ) == 'false' ? false : true;
$description = strtolower( $description ) == 'false' ? false : true;
$field_values = htmlspecialchars_decode( $field_values );
$field_values = str_replace( array( '&', '[', ']' ), array( '&', '[', ']' ), $field_values );
$ajax = strtolower( $ajax ) == 'true' ? true : false;
//using name to lookup form if id is not specified
if ( empty( $id ) ) {
$id = $name;
}
parse_str( $field_values, $field_value_array ); //parsing query string like string for field values and placing them into an associative array
$field_value_array = stripslashes_deep( $field_value_array );
$shortcode_string = self::get_form( $id, $title, $description, false, $field_value_array, $ajax, $tabindex, $theme, $styles );
}
/**
* Filters the shortcode.
*
* @since Unknown
*
* @param string $shortcode_string The full shortcode string.
* @param array $attributes The attributes within the shortcode.
* @param string $content The content of the shortcode, if available.
*/
$shortcode_string = apply_filters( "gform_shortcode_{$action}", $shortcode_string, $attributes, $content );
return $shortcode_string;
}
/**
* Includes the add-on framework.
*
Arguments
"66"
false
false
false
[]
true
0
"gravity-theme"
""
/home/boiterouge/public_html/wp-includes/shortcodes.php
* Filters whether to call a shortcode callback.
*
* Returning a non-false value from filter will short-circuit the
* shortcode generation process, returning that value instead.
*
* @since 4.7.0
*
* @param false|string $return Short-circuit return value. Either false or the value to replace the shortcode with.
* @param string $tag Shortcode name.
* @param array|string $attr Shortcode attributes array or empty string.
* @param array $m Regular expression match array.
*/
$return = apply_filters( 'pre_do_shortcode_tag', false, $tag, $attr, $m );
if ( false !== $return ) {
return $return;
}
$content = isset( $m[5] ) ? $m[5] : null;
$output = $m[1] . call_user_func( $shortcode_tags[ $tag ], $attr, $content, $tag ) . $m[6];
/**
* Filters the output created by a shortcode callback.
*
* @since 4.7.0
*
* @param string $output Shortcode output.
* @param string $tag Shortcode name.
* @param array|string $attr Shortcode attributes array or empty string.
* @param array $m Regular expression match array.
*/
return apply_filters( 'do_shortcode_tag', $output, $tag, $attr, $m );
}
/**
* Searches only inside HTML elements for shortcodes and process them.
*
* Any [ or ] characters remaining inside elements will be HTML encoded
* to prevent interference with shortcodes that are outside the elements.
* Assumes $content processed by KSES already. Users with unfiltered_html
Arguments
array:4 [
"id" => "66"
"title" => "false"
"description" => "false"
"ajax" => "true"
]
""
"gravityform"
[internal]
Arguments
array:7 [
0 => "[gravityform id="66" title="false" description="false" ajax="true"]"
1 => ""
2 => "gravityform"
3 => " id="66" title="false" description="false" ajax="true""
4 => ""
5 => ""
6 => ""
]
/home/boiterouge/public_html/wp-includes/shortcodes.php
if ( false === strpos( $content, '[' ) ) {
return $content;
}
if ( empty( $shortcode_tags ) || ! is_array( $shortcode_tags ) ) {
return $content;
}
// Find all registered tag names in $content.
preg_match_all( '@\[([^<>&/\[\]\x00-\x20=]++)@', $content, $matches );
$tagnames = array_intersect( array_keys( $shortcode_tags ), $matches[1] );
if ( empty( $tagnames ) ) {
return $content;
}
$content = do_shortcodes_in_html_tags( $content, $ignore_html, $tagnames );
$pattern = get_shortcode_regex( $tagnames );
$content = preg_replace_callback( "/$pattern/", 'do_shortcode_tag', $content );
// Always restore square braces so we don't break things like <!--[if IE ]>.
$content = unescape_invalid_shortcodes( $content );
return $content;
}
/**
* Retrieves the shortcode regular expression for searching.
*
* The regular expression combines the shortcode tags in the regular expression
* in a regex class.
*
* The regular expression contains 6 different sub matches to help with parsing.
*
* 1 - An extra [ to allow for escaping shortcodes with double [[]]
* 2 - The shortcode name
* 3 - The shortcode argument list
* 4 - The self closing /
* 5 - The content of a shortcode when it wraps some content.
Arguments
"/\[(\[?)(gravityform)(?![\w-])([^\]\/]*(?:\/(?!\])[^\]\/]*)*?)(?:(\/)\]|\](?:([^\[]*+(?:\[(?!\/\2\])[^\[]*+)*+)\[\/\2\])?)(\]?)/"
"do_shortcode_tag"
"[gravityform id="66" title="false" description="false" ajax="true"]"
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/018674b64b94e4187fff780e1860d9934211b73d.php
<?php the_row(); ?>
<?php if(get_row_layout() == 'calculator-price-hero'): ?>
<?php if(have_rows('content')): ?>
<?php while(have_rows('content')): ?>
<?php
the_row();
$formId = get_sub_field('hero_calc_cta')['form_id'] ?? 66;
?>
<?php endwhile; ?>
<?php endif; ?>
<?php endif; ?>
<?php endwhile; ?>
<?php endif; ?>
<div class="module-consultation" style="pointer-events:none;">
<div class="popup_consultation" style="">
<div class="wrap_popup">
<div class="close"></div>
<div class="popup_content" data-formId="<?php echo e($formId); ?>">
<?php echo do_shortcode('[gravityform id="' . $formId . '" title="false" description="false" ajax="true"]'); ?>
</div>
<div class="logo_3d_consultation"></div>
</div>
</div>
</div>
<?php /**PATH /home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/partials/module-popup-consultation.blade.php ENDPATH**/ ?>
Arguments
"[gravityform id="66" title="false" description="false" ajax="true"]"
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/filesystem/Filesystem.php
/**
* Get the returned value of a file.
*
* @param string $path
* @param array $data
* @return mixed
*
* @throws \Illuminate\Contracts\Filesystem\FileNotFoundException
*/
public function getRequire($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
extract($__data, EXTR_SKIP);
return require $__path;
})();
}
throw new FileNotFoundException("File does not exist at path {$path}.");
}
/**
* Require the given file once.
*
* @param string $path
* @param array $data
* @return mixed
*/
public function requireOnce($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/018674b64b94e4187fff780e1860d9934211b73d.php"
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/filesystem/Filesystem.php
/**
* Get the returned value of a file.
*
* @param string $path
* @param array $data
* @return mixed
*
* @throws \Illuminate\Contracts\Filesystem\FileNotFoundException
*/
public function getRequire($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
extract($__data, EXTR_SKIP);
return require $__path;
})();
}
throw new FileNotFoundException("File does not exist at path {$path}.");
}
/**
* Require the given file once.
*
* @param string $path
* @param array $data
* @return mixed
*/
public function requireOnce($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
extract($__data, EXTR_SKIP);
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/Engines/PhpEngine.php
}
/**
* Get the evaluated contents of the view at the given path.
*
* @param string $path
* @param array $data
* @return string
*/
protected function evaluatePath($path, $data)
{
$obLevel = ob_get_level();
ob_start();
// We'll evaluate the contents of the view inside a try/catch block so we can
// flush out any stray output that might get out before an error occurs or
// an exception is thrown. This prevents any partial views from leaking.
try {
$this->files->getRequire($path, $data);
} catch (Throwable $e) {
$this->handleViewException($e, $obLevel);
}
return ltrim(ob_get_clean());
}
/**
* Handle a view exception.
*
* @param \Throwable $e
* @param int $obLevel
* @return void
*
* @throws \Throwable
*/
protected function handleViewException(Throwable $e, $obLevel)
{
while (ob_get_level() > $obLevel) {
ob_end_clean();
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/018674b64b94e4187fff780e1860d9934211b73d.php"
array:4 [
"__env" => Illuminate\View\Factory {#18427}
"app" => Roots\Acorn\Application {#18355}
"post" => WP_Post {#25764}
"siteName" => "Redbox Media – Agence de stratégie numérique, conception web et marketing web à Montréal"
]
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/Engines/CompilerEngine.php
*
* @param string $path
* @param array $data
* @return string
*/
public function get($path, array $data = [])
{
$this->lastCompiled[] = $path;
// If this given view has expired, which means it has simply been edited since
// it was last compiled, we will re-compile the views so we can evaluate a
// fresh copy of the view. We'll pass the compiler the path of the view.
if ($this->compiler->isExpired($path)) {
$this->compiler->compile($path);
}
// Once we have the path to the compiled file, we will evaluate the paths with
// typical PHP just like any other templates. We also keep a stack of views
// which have been rendered for right exception messages to be generated.
$results = $this->evaluatePath($this->compiler->getCompiledPath($path), $data);
array_pop($this->lastCompiled);
return $results;
}
/**
* Handle a view exception.
*
* @param \Throwable $e
* @param int $obLevel
* @return void
*
* @throws \Throwable
*/
protected function handleViewException(Throwable $e, $obLevel)
{
$e = new ErrorException($this->getMessage($e), 0, 1, $e->getFile(), $e->getLine(), $e);
parent::handleViewException($e, $obLevel);
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/018674b64b94e4187fff780e1860d9934211b73d.php"
array:4 [
"__env" => Illuminate\View\Factory {#18427}
"app" => Roots\Acorn\Application {#18355}
"post" => WP_Post {#25764}
"siteName" => "Redbox Media – Agence de stratégie numérique, conception web et marketing web à Montréal"
]
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/View.php
$this->factory->callComposer($this);
$contents = $this->getContents();
// Once we've finished rendering the view, we'll decrement the render count
// so that each sections get flushed out next time a view is created and
// no old sections are staying around in the memory of an environment.
$this->factory->decrementRender();
return $contents;
}
/**
* Get the evaluated contents of the view.
*
* @return string
*/
protected function getContents()
{
return $this->engine->get($this->path, $this->gatherData());
}
/**
* Get the data bound to the view instance.
*
* @return array
*/
public function gatherData()
{
$data = array_merge($this->factory->getShared(), $this->data);
foreach ($data as $key => $value) {
if ($value instanceof Renderable) {
$data[$key] = $value->render();
}
}
return $data;
}
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/partials/module-popup-consultation.blade.php"
array:4 [
"__env" => Illuminate\View\Factory {#18427}
"app" => Roots\Acorn\Application {#18355}
"post" => WP_Post {#25764}
"siteName" => "Redbox Media – Agence de stratégie numérique, conception web et marketing web à Montréal"
]
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/View.php
throw $e;
}
}
/**
* Get the contents of the view instance.
*
* @return string
*/
protected function renderContents()
{
// We will keep track of the amount of views being rendered so we can flush
// the section after the complete rendering operation is done. This will
// clear out the sections for any separate views that may be rendered.
$this->factory->incrementRender();
$this->factory->callComposer($this);
$contents = $this->getContents();
// Once we've finished rendering the view, we'll decrement the render count
// so that each sections get flushed out next time a view is created and
// no old sections are staying around in the memory of an environment.
$this->factory->decrementRender();
return $contents;
}
/**
* Get the evaluated contents of the view.
*
* @return string
*/
protected function getContents()
{
return $this->engine->get($this->path, $this->gatherData());
}
/**
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/View.php
$this->view = $view;
$this->path = $path;
$this->engine = $engine;
$this->factory = $factory;
$this->data = $data instanceof Arrayable ? $data->toArray() : (array) $data;
}
/**
* Get the string contents of the view.
*
* @param callable|null $callback
* @return array|string
*
* @throws \Throwable
*/
public function render(callable $callback = null)
{
try {
$contents = $this->renderContents();
$response = isset($callback) ? $callback($this, $contents) : null;
// Once we have the contents of the view, we will flush the sections if we are
// done rendering all views so that there is nothing left hanging over when
// another view gets rendered in the future by the application developer.
$this->factory->flushStateIfDoneRendering();
return ! is_null($response) ? $response : $contents;
} catch (Throwable $e) {
$this->factory->flushState();
throw $e;
}
}
/**
* Get the contents of the view instance.
*
* @return string
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/2b42524cae94a4327237c156ee993caf801f41ec.php
</div>
<div class="col-12 col-lg-8 col-md-8 col-sm-12 form_loading_page">
<?php if(ICL_LANGUAGE_CODE == 'fr'): ?>
<?php echo do_shortcode('[gravityform id="45" title="false" description="true" ajax="true" tabindex="49"]'); ?>
<?php else: ?>
<?php echo do_shortcode('[gravityform id="46" title="false" description="true" ajax="true" tabindex="49"]'); ?>
<?php endif; ?>
</div>
</div>
</div>
<?php endif; ?>
<?php endwhile; ?>
</div>
<?php if ($__env->exists('partials.module-popup-evenement')) echo $__env->make('partials.module-popup-evenement', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<?php if ($__env->exists('partials.module-popup-ecommerce')) echo $__env->make('partials.module-popup-ecommerce', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<?php if ($__env->exists('partials.module-popup-rh')) echo $__env->make('partials.module-popup-rh', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<?php if ($__env->exists('partials.module-popup-conception-web')) echo $__env->make('partials.module-popup-conception-web', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<?php if ($__env->exists('partials.module-popup-strategie-web')) echo $__env->make('partials.module-popup-strategie-web', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<?php if ($__env->exists('partials.module-popup-video')) echo $__env->make('partials.module-popup-video', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<?php if ($__env->exists('partials.module-popup-consultation')) echo $__env->make('partials.module-popup-consultation', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.loading', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?><?php /**PATH /home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/template-calculateur-de-prix.blade.php ENDPATH**/ ?>
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/filesystem/Filesystem.php
/**
* Get the returned value of a file.
*
* @param string $path
* @param array $data
* @return mixed
*
* @throws \Illuminate\Contracts\Filesystem\FileNotFoundException
*/
public function getRequire($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
extract($__data, EXTR_SKIP);
return require $__path;
})();
}
throw new FileNotFoundException("File does not exist at path {$path}.");
}
/**
* Require the given file once.
*
* @param string $path
* @param array $data
* @return mixed
*/
public function requireOnce($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/2b42524cae94a4327237c156ee993caf801f41ec.php"
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/filesystem/Filesystem.php
/**
* Get the returned value of a file.
*
* @param string $path
* @param array $data
* @return mixed
*
* @throws \Illuminate\Contracts\Filesystem\FileNotFoundException
*/
public function getRequire($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
extract($__data, EXTR_SKIP);
return require $__path;
})();
}
throw new FileNotFoundException("File does not exist at path {$path}.");
}
/**
* Require the given file once.
*
* @param string $path
* @param array $data
* @return mixed
*/
public function requireOnce($path, array $data = [])
{
if ($this->isFile($path)) {
$__path = $path;
$__data = $data;
return (static function () use ($__path, $__data) {
extract($__data, EXTR_SKIP);
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/Engines/PhpEngine.php
}
/**
* Get the evaluated contents of the view at the given path.
*
* @param string $path
* @param array $data
* @return string
*/
protected function evaluatePath($path, $data)
{
$obLevel = ob_get_level();
ob_start();
// We'll evaluate the contents of the view inside a try/catch block so we can
// flush out any stray output that might get out before an error occurs or
// an exception is thrown. This prevents any partial views from leaking.
try {
$this->files->getRequire($path, $data);
} catch (Throwable $e) {
$this->handleViewException($e, $obLevel);
}
return ltrim(ob_get_clean());
}
/**
* Handle a view exception.
*
* @param \Throwable $e
* @param int $obLevel
* @return void
*
* @throws \Throwable
*/
protected function handleViewException(Throwable $e, $obLevel)
{
while (ob_get_level() > $obLevel) {
ob_end_clean();
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/2b42524cae94a4327237c156ee993caf801f41ec.php"
array:4 [
"__env" => Illuminate\View\Factory {#18427}
"app" => Roots\Acorn\Application {#18355}
"post" => WP_Post {#25764}
"siteName" => "Redbox Media – Agence de stratégie numérique, conception web et marketing web à Montréal"
]
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/Engines/CompilerEngine.php
*
* @param string $path
* @param array $data
* @return string
*/
public function get($path, array $data = [])
{
$this->lastCompiled[] = $path;
// If this given view has expired, which means it has simply been edited since
// it was last compiled, we will re-compile the views so we can evaluate a
// fresh copy of the view. We'll pass the compiler the path of the view.
if ($this->compiler->isExpired($path)) {
$this->compiler->compile($path);
}
// Once we have the path to the compiled file, we will evaluate the paths with
// typical PHP just like any other templates. We also keep a stack of views
// which have been rendered for right exception messages to be generated.
$results = $this->evaluatePath($this->compiler->getCompiledPath($path), $data);
array_pop($this->lastCompiled);
return $results;
}
/**
* Handle a view exception.
*
* @param \Throwable $e
* @param int $obLevel
* @return void
*
* @throws \Throwable
*/
protected function handleViewException(Throwable $e, $obLevel)
{
$e = new ErrorException($this->getMessage($e), 0, 1, $e->getFile(), $e->getLine(), $e);
parent::handleViewException($e, $obLevel);
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/storage/framework/views/2b42524cae94a4327237c156ee993caf801f41ec.php"
array:4 [
"__env" => Illuminate\View\Factory {#18427}
"app" => Roots\Acorn\Application {#18355}
"post" => WP_Post {#25764}
"siteName" => "Redbox Media – Agence de stratégie numérique, conception web et marketing web à Montréal"
]
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/View.php
$this->factory->callComposer($this);
$contents = $this->getContents();
// Once we've finished rendering the view, we'll decrement the render count
// so that each sections get flushed out next time a view is created and
// no old sections are staying around in the memory of an environment.
$this->factory->decrementRender();
return $contents;
}
/**
* Get the evaluated contents of the view.
*
* @return string
*/
protected function getContents()
{
return $this->engine->get($this->path, $this->gatherData());
}
/**
* Get the data bound to the view instance.
*
* @return array
*/
public function gatherData()
{
$data = array_merge($this->factory->getShared(), $this->data);
foreach ($data as $key => $value) {
if ($value instanceof Renderable) {
$data[$key] = $value->render();
}
}
return $data;
}
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/resources/views/template-calculateur-de-prix.blade.php"
array:4 [
"__env" => Illuminate\View\Factory {#18427}
"app" => Roots\Acorn\Application {#18355}
"post" => WP_Post {#25764}
"siteName" => "Redbox Media – Agence de stratégie numérique, conception web et marketing web à Montréal"
]
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/View.php
throw $e;
}
}
/**
* Get the contents of the view instance.
*
* @return string
*/
protected function renderContents()
{
// We will keep track of the amount of views being rendered so we can flush
// the section after the complete rendering operation is done. This will
// clear out the sections for any separate views that may be rendered.
$this->factory->incrementRender();
$this->factory->callComposer($this);
$contents = $this->getContents();
// Once we've finished rendering the view, we'll decrement the render count
// so that each sections get flushed out next time a view is created and
// no old sections are staying around in the memory of an environment.
$this->factory->decrementRender();
return $contents;
}
/**
* Get the evaluated contents of the view.
*
* @return string
*/
protected function getContents()
{
return $this->engine->get($this->path, $this->gatherData());
}
/**
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/vendor/illuminate/view/View.php
$this->view = $view;
$this->path = $path;
$this->engine = $engine;
$this->factory = $factory;
$this->data = $data instanceof Arrayable ? $data->toArray() : (array) $data;
}
/**
* Get the string contents of the view.
*
* @param callable|null $callback
* @return array|string
*
* @throws \Throwable
*/
public function render(callable $callback = null)
{
try {
$contents = $this->renderContents();
$response = isset($callback) ? $callback($this, $contents) : null;
// Once we have the contents of the view, we will flush the sections if we are
// done rendering all views so that there is nothing left hanging over when
// another view gets rendered in the future by the application developer.
$this->factory->flushStateIfDoneRendering();
return ! is_null($response) ? $response : $contents;
} catch (Throwable $e) {
$this->factory->flushState();
throw $e;
}
}
/**
* Get the contents of the view instance.
*
* @return string
/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/index.php
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<?php /*
<?php echo file_get_contents(get_stylesheet_directory() . '/public/styles/app-critical.css'); ?>
<link rel="preload" href="<?= get_stylesheet_directory_uri() ?>/public/styles/app.css" as="style"
onload="this.onload=null;this.rel='stylesheet'" />
<noscript>
<link rel="stylesheet" href="<?= get_stylesheet_directory_uri() ?>/public/styles/app.css">
</noscript> */
?>
<?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
<?php wp_body_open(); ?>
<?php do_action('get_header'); ?>
<div id="app">
<?php echo \Roots\view(\Roots\app('sage.view'), \Roots\app('sage.data'))->render(); ?>
</div>
<?php do_action('get_footer'); ?>
<?php wp_footer(); ?>
<!-- CSS -->
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.js"></script>
</body>
</html>
/home/boiterouge/public_html/wp-includes/template-loader.php
}
break;
}
}
if ( ! $template ) {
$template = get_index_template();
}
/**
* Filters the path of the current template before including it.
*
* @since 3.0.0
*
* @param string $template The path of the template to include.
*/
$template = apply_filters( 'template_include', $template );
if ( $template ) {
include $template;
} elseif ( current_user_can( 'switch_themes' ) ) {
$theme = wp_get_theme();
if ( $theme->errors() ) {
wp_die( $theme->errors() );
}
}
return;
}
Arguments
"/home/boiterouge/public_html/wp-content/themes/redboxmediarefonte2022/index.php"
/home/boiterouge/public_html/wp-blog-header.php
<?php
/**
* Loads the WordPress environment and template.
*
* @package WordPress
*/
if ( ! isset( $wp_did_header ) ) {
$wp_did_header = true;
// Load the WordPress library.
require_once __DIR__ . '/wp-load.php';
// Set up the WordPress query.
wp();
// Load the theme template.
require_once ABSPATH . WPINC . '/template-loader.php';
}
Arguments
"/home/boiterouge/public_html/wp-includes/template-loader.php"
/home/boiterouge/public_html/index.php
<?php
/**
* Front to the WordPress application. This file doesn't do anything, but loads
* wp-blog-header.php which does and tells WordPress to load the theme.
*
* @package WordPress
*/
/**
* Tells WordPress to load the WordPress theme and output it.
*
* @var bool
*/
define( 'WP_USE_THEMES', true );
/** Loads the WordPress Environment and Template */
require __DIR__ . '/wp-blog-header.php';
Arguments
"/home/boiterouge/public_html/wp-blog-header.php"