HEX
Server: Apache/2.4.34 (Red Hat) OpenSSL/1.0.2k-fips
System: Linux WORDPRESS 3.10.0-1160.118.1.el7.x86_64 #1 SMP Thu Apr 4 03:33:23 EDT 2024 x86_64
User: digital (1020)
PHP: 7.2.24
Disabled: NONE
Upload Files
File: /datos/www/expodubai/wp-content/plugins/mec-fluent-layouts/core/skins/masonry/render.php
<?php
/** no direct access **/
defined('MECEXEC') or die();

$styling = $this->main->get_styling();
$event_colorskin = (isset($styling['mec_colorskin']) || isset($styling['color'])) ? 'colorskin-custom' : '';
$settings = $this->main->get_settings();
$this->localtime = isset($this->skin_options['include_local_time']) ? $this->skin_options['include_local_time'] : false;
$display_label = isset($this->skin_options['display_label']) ? $this->skin_options['display_label'] : false;
$reason_for_cancellation = isset($this->skin_options['reason_for_cancellation']) ? $this->skin_options['reason_for_cancellation'] : false;
?>
<div class="mec-wrap <?php echo $event_colorskin; ?>">
    <div class="mec-event-masonry">
        <?php
        foreach ($this->events as $date => $events) :
            foreach ($events as $event) :
                $location = isset($event->data->locations[$event->data->meta['mec_location_id']])? $event->data->locations[$event->data->meta['mec_location_id']] : array();
                $organizer = isset($event->data->organizers[$event->data->meta['mec_organizer_id']])? $event->data->organizers[$event->data->meta['mec_organizer_id']] : array();
                $event_color = isset($event->data->meta['mec_color']) ? '#'.$event->data->meta['mec_color'] : '';

                $start_time = (isset($event->data->time) ? $event->data->time['start'] : '');
                $end_time = (isset($event->data->time) ? $event->data->time['end'] : '');
                $event_start_date = !empty($event->date['start']['date']) ? $event->date['start']['date'] : '';

                $label_style = '';
                if (!empty($event->data->labels)) {
                    foreach ($event->data->labels as $label) {
                        if (!isset($label['style']) or (isset($label['style']) and !trim($label['style']))) {
                            continue;
                        }
                        if ($label['style'] == 'mec-label-featured') {
                            $label_style = esc_html__('Featured', 'mec-fl');
                        } elseif ($label['style'] == 'mec-label-canceled') {
                            $label_style = esc_html__('Canceled', 'mec-fl');
                        }
                    }
                }

                $speakers = '""';
                if (!empty($event->data->speakers)) {
                    $speakers= [];
                    foreach ($event->data->speakers as $key => $value) {
                        $speakers[] = array(
                        "@type"     => "Person",
                        "name"      => $value['name'],
                        "image"     => $value['thumbnail'],
                        "sameAs"    => $value['facebook'],
                        );
                    }

                    $speakers = json_encode($speakers);
                }
                $schema_settings = isset($settings['schema']) ? $settings['schema'] : '';
                if ($schema_settings == '1') :
                    ?>
            <script type="application/ld+json">
            {
                "@context"      : "http://schema.org",
                "@type"         : "Event",
                "startDate"     : "<?php echo !empty($event->data->meta['mec_date']['start']['date']) ? $event->data->meta['mec_date']['start']['date'] : '' ; ?>",
                "endDate"       : "<?php echo !empty($event->data->meta['mec_date']['end']['date']) ? $event->data->meta['mec_date']['end']['date'] : '' ; ?>",
                "location"      :
                {
                    "@type"         : "Place",
                    "name"          : "<?php echo (isset($location['name']) ? $location['name'] : ''); ?>",
                    "image"         : "<?php echo (isset($location['thumbnail']) ? esc_url($location['thumbnail']) : '');
                    ; ?>",
                    "address"       : "<?php echo (isset($location['address']) ? $location['address'] : ''); ?>"
                },
                "offers": {
                    "url": "<?php echo $event->data->permalink; ?>",
                    "price": "<?php echo isset($event->data->meta['mec_cost']) ? $event->data->meta['mec_cost'] : '' ; ?>",
                    "priceCurrency" : "<?php echo isset($settings['currency']) ? $settings['currency'] : ''; ?>"
                },
                "performer": <?php echo $speakers; ?>,
                "description"   : "<?php  echo esc_html(preg_replace('/<p>\\s*?(<a .*?><img.*?><\\/a>|<img.*?>)?\\s*<\\/p>/s', '<div class="figure">$1</div>', preg_replace('/\s/u', ' ', $event->data->post->post_content))); ?>",
                "image"         : "<?php echo !empty($event->data->featured_image['mecFluentMasonry']) ? esc_html($event->data->featured_image['mecFluentMasonry']) : '' ; ?>",
                "name"          : "<?php esc_html_e($event->data->title); ?>",
                "url"           : "<?php echo $this->main->get_event_date_permalink($event, $event->date['start']['date']); ?>"
            }
            </script>
                    <?php
                endif;

                $masonry_filter = '';
                if ($this->filter_by == 'category') {
                    if (isset($event->data->categories) && !empty($event->data->categories)) {
                        $masonry_filter = "[";
                        foreach ($event->data->categories as $key => $value) {
                            $masonry_filter .= '"' . $value['id'] . '",';
                        }

                        $masonry_filter .= "]";
                        $masonry_filter = str_replace(",]", "]", $masonry_filter);
                    }
                } elseif ($this->filter_by == 'label') {
                    if (isset($event->data->labels) && !empty($event->data->labels)) {
                        $masonry_filter = "[";
                        foreach ($event->data->labels as $key => $value) {
                            $masonry_filter .= '"' . $value['id'] . '",';
                        }

                        $masonry_filter .= "]";
                        $masonry_filter = str_replace(",]", "]", $masonry_filter);
                    }
                } elseif ($this->filter_by == 'organizer') {
                    if (isset($event->data->organizers) && !empty($event->data->organizers)) {
                        $masonry_filter = "[";
                        foreach ($event->data->organizers as $key => $value) {
                            $masonry_filter .= '"' . $value['id'] . '",';
                        }

                        $masonry_filter .= "]";
                        $masonry_filter = str_replace(",]", "]", $masonry_filter);
                    }
                } elseif ($this->filter_by == 'location') {
                    if (isset($event->data->locations) && !empty($event->data->locations)) {
                        $masonry_filter = "[";
                        foreach ($event->data->locations as $key => $value) {
                            $masonry_filter .= '"' . $value['id'] . '",';
                        }

                        $masonry_filter .= "]";
                        $masonry_filter = str_replace(",]", "]", $masonry_filter);
                    }
                }

                if (empty($masonry_filter)) {
                    $masonry_filter = "[\"\"]";
                }
                ?>
            <div data-sort-masonry="<?php echo $event->date['start']['date']; ?>" class="<?php echo (isset($event->data->meta['event_past']) and trim($event->data->meta['event_past'])) ? 'mec-past-event ' : ''; ?>mec-masonry-item-wrap <?php echo $this->filter_by_classes($event->data->ID); ?>">
                <div class="mec-masonry" style="border-bottom-color: <?php echo esc_attr($event_color); ?>;">
                    <article data-style="<?php echo $label_style; ?>" class="mec-event-article mec-clear <?php echo $this->get_event_classes($event); ?>">
                        <div class="mec-masonry-img">
                            <?php 
                                if (isset($event->data->featured_image) and $this->masonry_like_grid) {

                                    $image = get_the_post_thumbnail($event->data->ID, 'thumblist');
                                }elseif (isset($event->data->featured_image) and isset($event->data->featured_image['mecFluentMasonry']) and trim($event->data->featured_image['mecFluentMasonry'])){

                                    $image = $event->data->thumbnails['mecFluentMasonry'];
                                }else{
                                    
                                    $image = '';
                                }
                                $title = $image;
                                $class = '';
                                echo $this->display_link( $event, $title, $class );
                            ?>
                            <div class="mec-date-wrap<?php echo $event->data->thumbnails['thumblist'] ? ' mec-masonry-has-img' : ''; ?>">
                                <?php 
                                $days_number = '';
                                $days_name = '';
                                $months_name = '';
                                $years_number = '';
                                                                        
                                $start_date = $event->date['start']['date'];
                                $start_date_time = strtotime($start_date);
                                $days_number = $this->main->date_i18n($this->date_format_1, $start_date_time);
                                $months_name = $this->main->date_i18n($this->date_format_2, $start_date_time);
                                $days_name = $this->main->date_i18n('l', $start_date_time);
                                $years_number = $this->main->date_i18n('Y', $start_date_time);
                                
                                if(isset($settings['multiple_day_show_method']) and $settings['multiple_day_show_method'] == 'all_days'){

                                    $end_date = $event->date['end']['date'];
                                    $end_date_time = strtotime($end_date);
                                    $day = $this->main->date_i18n($this->date_format_1, $end_date_time);
                                    $m = $this->main->date_i18n($this->date_format_2, $end_date_time);
                                    $y = $this->main->date_i18n('Y', $end_date_time);

                                    if($days_number != $day || $months_name != $m || $years_number != $y){

                                        $days_number .= '-' . $day;
                                        $days_name .= '-'. $this->main->date_i18n('l', $end_date_time);
                                        
                                    }

                                    if($months_name != $m || $years_number != $y){

                                        $months_name .= '-' . $m;                                        
                                    }                                    

                                    if($years_number != $y){
                                        
                                        $years_number .= '-'. $y;
                                    }
                                }
                                    
                                ?>                                    
                                <div class="mec-event-date">
                                    <span class="mec-event-day-num"><?php echo $days_number; ?></span>
                                    <span><?php echo $months_name.' '.$years_number; ?></span>
                                </div>
                                <div class="mec-event-day">                                    
                                    <span><?php echo $days_name; ?></span>
                                </div>
                            </div>
                        </div>
                        <div class="mec-masonry-content mec-event-grid-modern">
                            <?php do_action('print_extra_fields_masonry', $event); ?>
                            <div class="mec-event-content">
                                <?php $soldout = $this->main->get_flags($event->data->ID, $event_start_date); ?>
                                <h4 class="mec-event-title"><?php
                                    $title = (is_array($event->data->tickets) and count($event->data->tickets) and !strpos($soldout, '%%soldout%%')) ? $this->main->m('register_button', __('REGISTER', 'mec-fl')) : $this->main->m('view_detail', __('View Detail', 'mec-fl'));
                                    $class = 'mec-color-hover';
                                    echo $this->display_link( $event, $title, $class );
                                ?></h4>
                                <?php echo $this->main->get_normal_labels($event, $display_label).$this->main->display_cancellation_reason($event, $reason_for_cancellation); ?>
                                <?php if (isset($location['address']) and trim($location['address'])) : ?>
                                    <div class="mec-event-location">
                                        <i class="mec-sl-location-pin"></i>
                                        <address class="mec-events-address"><span class="mec-address"><?php echo (isset($location['address']) ? $location['address'] : ''); ?></span></address>
                                    </div>
                                <?php endif; ?>
                                <?php echo $this->main->display_time($start_time, $end_time); ?>
                                <?php if ($this->localtime) {
                                    echo $this->main->module('local-time.type1', array('event'=>$event));
                                } ?>
                            </div>
                            <div class="mec-event-footer">
                                <?php
                                    $title = (is_array($event->data->tickets) and count($event->data->tickets) and !strpos($soldout, '%%soldout%%')) ? $this->main->m('register_button', __('REGISTER', 'mec-fl')) : $this->main->m('view_detail', __('View Detail', 'mec-fl'));
                                    $class = 'mec-booking-button';
                                    echo $this->display_link( $event, $title, $class );
                                ?>
                                <?php if (isset($settings['social_network_status']) and $settings['social_network_status'] != '0') : ?>
                                    <ul class="mec-event-sharing-wrap">
                                        <li class="mec-event-share">
                                            <a href="#" class="mec-event-share-icon">
                                                <i class="mec-sl-share"></i>
                                            </a>
                                        </li>
                                        <li>
                                            <ul class="mec-event-sharing">
                                                <?php echo $this->main->module('links.list', array('event'=>$event)); ?>
                                            </ul>
                                        </li>
                                    </ul>
                                <?php endif; ?>
                                <?php do_action('mec_masonry_button', $event); ?>
                            </div>
                        </div>
                    </article>

                </div>
            </div>
            <?php endforeach; ?>
        <?php endforeach; ?>
    </div>
</div>