/var/www/html/wp-content/plugins/timetable/

OS : Linux

PHP Version : 7.4.33

Software : Apache/2.4.6 (CentOS) PHP/7.4.33

Information System : Linux apprendre2 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64

Disable Function : 'upcoming_events_widget', 'description' => 'Displays upcoming events scrolling list' ); parent::__construct('timetable_upcoming_events', __('Upcoming Events', 'timetable'), $widget_options); } /** @see WP_Widget::widget */ function widget($args, $instance) { global $wpdb; global $wp_locale; $timetable_events_settings = get_option("timetable_events_settings"); extract($args); //these are our widget options $title = (isset($instance['title']) ? $instance['title'] : ""); $title_color = (isset($instance['title_color']) ? $instance['title_color'] : ""); $count = (isset($instance['count']) ? $instance['count'] : ""); $display_settings = (isset($instance['display_settings']) ? $instance['display_settings'] : ""); $within_next = (isset($instance['within_next']) ? $instance['within_next'] : ""); $time_format = (isset($instance['time_format']) ? $instance['time_format'] : ""); $time_format_custom = (isset($instance['time_format_custom']) ? $instance['time_format_custom'] : ""); $time_mode = (isset($instance['time_mode']) ? $instance['time_mode'] : ""); $timezone = (isset($instance['timezone']) ? $instance['timezone'] : ""); $auto_scroll = (isset($instance['auto_scroll']) ? $instance['auto_scroll'] : ""); $event_featured_image = (isset($instance['event_featured_image']) ? $instance['event_featured_image'] : ""); $disable_url = (isset($instance['disable_url']) ? $instance['disable_url'] : false); $custom_url = (isset($instance['custom_url']) ? $instance['custom_url'] : ""); $categories = (isset($instance['categories']) ? $instance['categories'] : ""); $hour_categories = (isset($instance['hour_categories']) ? $instance['hour_categories'] : ""); $background_color = (isset($instance['background_color']) ? $instance['background_color'] : ""); $hover_background_color = (isset($instance['hover_background_color']) ? $instance['hover_background_color'] : ""); $text_color = (isset($instance['text_color']) ? $instance['text_color'] : ""); $hover_text_color = (isset($instance['hover_text_color']) ? $instance['hover_text_color'] : ""); $item_border_color = (isset($instance['item_border_color']) ? $instance['item_border_color'] : ""); $hover_item_border_color = (isset($instance['hover_item_border_color']) ? $instance['hover_item_border_color'] : ""); echo $before_widget; if($time_mode=="server") { $phpDayNumber = date('w', current_time('timestamp', ($timezone=="utc" ? 1 : 0))); if($phpDayNumber==0) $phpDayNumber = 7; /*else $phpDayNumber++;*/ } //get all weekdays order numbers if($display_settings=="all") { $query = "SELECT menu_order FROM {$wpdb->posts} WHERE post_status='publish' AND menu_order=" . ($time_mode=="server" ? $phpDayNumber : "CASE WHEN DATE_FORMAT(CURDATE(), '%w') = 0 THEN 7 ELSE DATE_FORMAT(CURDATE(), '%w') END"); $current_day_number = $wpdb->get_row($query); $query = "SELECT menu_order FROM {$wpdb->posts} WHERE post_type='timetable_weekdays' AND post_status='publish' ORDER BY menu_order"; $weekdays_orders = $wpdb->get_results($query); $count_weekdays_orders = count($weekdays_orders); $weekdays_orders_sql = ""; $weekdays_orders_array = array(); for($i=0; $i<$count_weekdays_orders; $i++) $weekdays_orders_array[] = $weekdays_orders[$i]->menu_order; $weekdays_orders_array = array_values(array_unique($weekdays_orders_array)); $current_day_number_index = array_search($current_day_number->menu_order, $weekdays_orders_array); $weekdays_before_current = array_slice($weekdays_orders_array, 0, $current_day_number_index); $weekdays_after_current = array_slice($weekdays_orders_array, $current_day_number_index+1, $count_weekdays_orders-$current_day_number_index); $weekdays_orders_array_sorted = array_merge($weekdays_after_current, $weekdays_before_current); if((int)$within_next>0) $weekdays_orders_array_sorted = array_slice($weekdays_orders_array_sorted, 0, (int)$within_next); $count_weekdays_orders_sorted = count($weekdays_orders_array_sorted); for($i=0; $i<$count_weekdays_orders_sorted; $i++) $weekdays_orders_sql .= "'" . $weekdays_orders_array_sorted[$i] . "'" . ($i+1<$count_weekdays_orders_sorted ? "," : ""); } $query = "SELECT TIME_FORMAT(t1.start, '%H.%i') AS start, TIME_FORMAT(t1.end, '%H.%i') AS end, t1.event_id AS event_id, t1.before_hour_text AS description1, t1.after_hour_text AS description2, t2.post_title, t2.post_name, t3.post_title as weekday FROM ".$wpdb->prefix."event_hours AS t1 LEFT JOIN {$wpdb->posts} AS t2 ON t1.event_id=t2.ID LEFT JOIN {$wpdb->posts} AS t3 ON t1.weekday_id=t3.ID"; if(!empty($categories) && count($categories)) $query .= " LEFT JOIN $wpdb->term_relationships ON(t2.ID = $wpdb->term_relationships.object_id) LEFT JOIN $wpdb->term_taxonomy ON($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id) LEFT JOIN $wpdb->terms ON($wpdb->term_taxonomy.term_id = $wpdb->terms.term_id) WHERE $wpdb->terms.slug IN ('" . join("','", (array)$categories) . "') AND $wpdb->term_taxonomy.taxonomy = 'events_category' AND"; else $query .= " WHERE"; //global $post; $query .= " t2.post_type='" . $timetable_events_settings["slug"] . "' AND t2.post_status='publish' AND t3.post_type='timetable_weekdays' AND t3.post_status='publish'"; //AND t2.ID='" . $post->ID . "'"; if($hour_categories!=null && $hour_categories!="-") $query .= " AND t1.category IN('" . join("','", $hour_categories) . "')"; if($display_settings=="today") $query .= " AND t3.menu_order=" . ($time_mode=="server" ? $phpDayNumber : "CASE WHEN DATE_FORMAT(CURDATE(), '%w') = 0 THEN 7 ELSE DATE_FORMAT(CURDATE(), '%w') END") . " AND SUBTIME(t1.start, " . ($time_mode=="server" ? "TIME('" . date('H:i:s', current_time('timestamp', ($timezone=="utc" ? 1 : 0))) . "')" : "CURRENT_TIME()") . ")>0"; else if($display_settings=="current") $query .= " AND t3.menu_order=" . ($time_mode=="server" ? $phpDayNumber : "CASE WHEN DATE_FORMAT(CURDATE(), '%w') = 0 THEN 7 ELSE DATE_FORMAT(CURDATE(), '%w') END") . " AND SUBTIME(t1.end, " . ($time_mode=="server" ? "TIME('" . date('H:i:s', current_time('timestamp', ($timezone=="utc" ? 1 : 0))) . "')" : "CURRENT_TIME()") . ")>0 AND SUBTIME(t1.end, " . ($time_mode=="server" ? "TIME('" . date('H:i:s', current_time('timestamp', ($timezone=="utc" ? 1 : 0))) . "')" : "CURRENT_TIME()") . ")0) OR t3.menu_order IN(" . $weekdays_orders_sql . "))"; $query .= " GROUP BY t1.event_hours_id"; if($display_settings=="today" || $display_settings=="current") $query .= " ORDER BY t1.start, t1.end"; else $query .= " ORDER BY FIELD(t3.menu_order," . ($time_mode=="server" ? $phpDayNumber : "CASE WHEN DATE_FORMAT(CURDATE(), '%w') = 0 THEN 7 ELSE DATE_FORMAT(CURDATE(), '%w') END") . "," . $weekdays_orders_sql . "), t1.start, t1.end"; if((int)$count>0) $query .= " LIMIT " . $count; $event_hours = $wpdb->get_results($query); $event_hours_count = count($event_hours); $output = ''; $output .= '

'; if($title) { if($title_color!="") $before_title = str_replace(">", " style='color: #" . $title_color . ";'>",$before_title); $output .= $before_title . $title . $after_title; } $output .= '
'; if($event_hours_count): $output .= '
    '; for($i=0; $i<$event_hours_count; $i++) { $event_hours[$i]->start = date($time_format_custom, strtotime($event_hours[$i]->start)); $event_hours[$i]->end = date($time_format_custom, strtotime($event_hours[$i]->end)); //$output .= '' . $event_hours[$i]->post_title . ''; //get event color $reset_bg_color = false; $reset_border_color = false; if($hover_background_color=="" || $item_border_color=="") { $event_color = get_post_meta($event_hours[$i]->event_id, "timetable_color", true); if($hover_background_color=="") { $hover_background_color = $event_color; $reset_bg_color = true; } if($item_border_color=="") { $item_border_color = $event_color; $hover_item_border_color = $event_color; $reset_border_color = true; } } $event_custom_url = ""; $event_custom_url = get_post_meta($event_hours[$i]->event_id, "timetable_custom_url", true); if($event_custom_url!="") $custom_url = $event_custom_url; $output .= '
  • <' . ((int)$disable_url ? 'span' : 'a') . ' class="tt_upcoming_events_event_container"' . ($background_color!="" || $item_border_color!="" || $text_color!="" ? ' style="' . ($background_color!="" ? 'background-color: #' . $background_color . ';' : '') . ($item_border_color!="" ? 'border-' . ($wp_locale->text_direction=='rtl' ? 'right' : 'left') . '-color: #' . $item_border_color . ';' : '') . ($text_color!="" ? 'color: #' . $text_color . ';' : '') . '"' : '') . ($background_color!="" || $hover_background_color!="" || $item_border_color!="" || $hover_item_border_color!="" || $text_color!="" || $hover_text_color!="" ? ' onMouseOver="' . ($background_color!="" || $hover_background_color!="" ? 'this.style.backgroundColor=\'#'.($hover_background_color!="" ? $hover_background_color : '00A27C').'\';' : '') . ($item_border_color!="" || $hover_item_border_color!="" ? 'this.style.borderColor=\'#'.($hover_item_border_color!="" ? $hover_item_border_color : '00A27C').'\';' : '' ) . ($text_color!="" || $hover_text_color!="" ? 'this.style.color=\'#'.($hover_text_color!="" ? $hover_text_color : 'FFFFFF') . '\';' : '' ) . '" onMouseOut="' . ($background_color!="" || $hover_background_color!="" || $item_border_color!="" || $hover_item_border_color!="" || $text_color!="" || $hover_text_color!="" ? ($background_color!="" || $hover_background_color!="" ? 'this.style.backgroundColor=\'#'.($background_color!="" ? $background_color : 'FFF').'\';' : '') . ($item_border_color!="" || $hover_item_border_color!="" ? 'this.style.borderColor=\'#EFEFEF\';this.style.border' . ($wp_locale->text_direction=='rtl' ? 'Right' : 'Left') . 'Color=\'#'.($item_border_color!="" ? $item_border_color : 'EFEFEF').'\';' : '' ) . ($text_color!="" || $hover_text_color!="" ? 'this.style.color=\'#'.($text_color!="" ? $text_color : '34495E').'\';' : '') : '' ). '"' : '') . (!(int)$disable_url ? ' href="' . ($custom_url!="" ? esc_attr($custom_url) : get_permalink($event_hours[$i]->event_id)) . '"' : '') . ' title="' . $event_hours[$i]->post_title . '">' . ($event_hours[$i]->description1!="" || $event_hours[$i]->description2!="" ? '' : '') . $event_hours[$i]->post_title . '' . $event_hours[$i]->weekday . ', ' . $event_hours[$i]->start . ' - ' . $event_hours[$i]->end . '' . ($event_hours[$i]->description1!="" || $event_hours[$i]->description2!="" ? '' . $event_hours[$i]->description1 . ($event_hours[$i]->description1!="" && $event_hours[$i]->description2!="" ? '
    ' : '') . $event_hours[$i]->description2 . '
    ' : '') . ((int)$event_featured_image==1 ? get_the_post_thumbnail($event_hours[$i]->event_id) : '') . '
  • '; if($reset_bg_color) $hover_background_color = ""; if($reset_border_color) { $item_border_color = ""; $hover_item_border_color = ""; } } $output .= '
'; else: $output .= '

' . sprintf(__('No upcoming %s for today' , 'timetable'), strtolower($timetable_events_settings['label_plural'])) . '

'; endif; $output .= '
'; echo do_shortcode($output); echo $after_widget; } /** @see WP_Widget::update */ function update($new_instance, $old_instance) { $instance = $old_instance; $instance['title'] = (isset($new_instance['title']) ? strip_tags($new_instance['title']) : ""); $instance['title_color'] = (isset($new_instance['title_color']) ? strip_tags($new_instance['title_color']) : ""); $instance['count'] = (isset($new_instance['count']) ? strip_tags($new_instance['count']) : ""); $instance['display_settings'] = (isset($new_instance['display_settings']) ? strip_tags($new_instance['display_settings']) : ""); $instance['within_next'] = (isset($new_instance['within_next']) ? strip_tags($new_instance['within_next']) : ""); $instance['time_format'] = (isset($new_instance['time_format']) ? strip_tags($new_instance['time_format']) : ""); $instance['time_format_custom'] = (isset($new_instance['time_format_custom']) ? strip_tags($new_instance['time_format_custom']) : ""); $instance['time_mode'] = (isset($new_instance['time_mode']) ? strip_tags($new_instance['time_mode']) : ""); $instance['timezone'] = (isset($new_instance['timezone']) ? strip_tags($new_instance['timezone']) : ""); $instance['categories'] = (isset($new_instance['categories']) ? $new_instance['categories'] : ""); $instance['hour_categories'] = (isset($new_instance['hour_categories']) ? $new_instance['hour_categories'] : ""); $instance['auto_scroll'] = (isset($new_instance['auto_scroll']) ? $new_instance['auto_scroll'] : ""); $instance['event_featured_image'] = (isset($new_instance['event_featured_image']) ? $new_instance['event_featured_image'] : ""); $instance['disable_url'] = (isset($new_instance['disable_url']) ? $new_instance['disable_url'] : ""); $instance['custom_url'] = (isset($new_instance['custom_url']) ? strip_tags($new_instance['custom_url']) : ""); $instance['background_color'] = (isset($new_instance['background_color']) ? strip_tags($new_instance['background_color']) : ""); $instance['hover_background_color'] = (isset($new_instance['hover_background_color']) ? strip_tags($new_instance['hover_background_color']) : ""); $instance['text_color'] = (isset($new_instance['text_color']) ? strip_tags($new_instance['text_color']) : ""); $instance['hover_text_color'] = (isset($new_instance['hover_text_color']) ? strip_tags($new_instance['hover_text_color']) : ""); $instance['item_border_color'] = (isset($new_instance['item_border_color']) ? strip_tags($new_instance['item_border_color']) : ""); $instance['hover_item_border_color'] = (isset($new_instance['hover_item_border_color']) ? strip_tags($new_instance['hover_item_border_color']) : ""); return $instance; } /** @see WP_Widget::form */ function form($instance) { $timetable_events_settings = get_option("timetable_events_settings"); $title = (isset($instance['title']) ? esc_attr($instance['title']) : ""); $title_color = (isset($instance['title_color']) ? esc_attr($instance['title_color']) : ""); $count = (isset($instance['count']) ? esc_attr($instance['count']) : ""); $display_settings = (isset($instance['display_settings']) ? esc_attr($instance['display_settings']) : ""); $within_next = (isset($instance['within_next']) ? esc_attr($instance['within_next']) : ""); $time_format = (isset($instance['time_format']) ? esc_attr($instance['time_format']) : ""); $time_format_custom = (isset($instance['time_format_custom']) ? esc_attr($instance['time_format_custom']) : ""); $time_mode = (isset($instance['time_mode']) ? esc_attr($instance['time_mode']) : ""); $timezone = (isset($instance['timezone']) ? esc_attr($instance['timezone']) : ""); $categories = (isset($instance['categories']) ? $instance['categories'] : ""); $hour_categories = (isset($instance['hour_categories']) ? $instance['hour_categories'] : ""); $auto_scroll = (isset($instance['auto_scroll']) ? $instance['auto_scroll'] : ""); $event_featured_image = (isset($instance['event_featured_image']) ? $instance['event_featured_image'] : ""); $disable_url = (isset($instance['disable_url']) ? $instance['disable_url'] : ""); $custom_url = (isset($instance['custom_url']) ? $instance['custom_url'] : ""); $background_color = (isset($instance['background_color']) ? esc_attr($instance['background_color']) : ""); $hover_background_color = (isset($instance['hover_background_color']) ? esc_attr($instance['hover_background_color']) : ""); $text_color = (isset($instance['text_color']) ? esc_attr($instance['text_color']) : ""); $hover_text_color = (isset($instance['hover_text_color']) ? esc_attr($instance['hover_text_color']) : ""); $item_border_color = (isset($instance['item_border_color']) ? esc_attr($instance['item_border_color']) : ""); $hover_item_border_color = (isset($instance['hover_item_border_color']) ? esc_attr($instance['hover_item_border_color']) : ""); ?>

;">

>






" name="get_field_name('time_format_custom'); ?>" id="get_field_id('time_format_custom'); ?>"> 9:03 am

;">

;">

;">

;">

;">

;">