HEX
Server: Apache
System: Linux host.fiblib.com 5.14.0-570.58.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Oct 29 06:24:11 EDT 2025 x86_64
User: scientificreligi (1062)
PHP: 8.0.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //home/scientificreligi/www/wp-content/plugins/auteur-framework/shortcodes/google-map/template.php
<?php
/**
 *  Shortcode attributes
 * @var $atts
 * @var $el_class
 * @var $map_height
 * @var $map_height_lg
 * @var $map_height_md
 * @var $map_height_sm
 * @var $map_height_mb
 * @var $map_zoom
 * @var $scroll_wheel
 * @var $overlay
 * @var $map_style
 * @var $map_style_content
 * @var $markers
 * @var $css_animation
 * @var $animation_duration
 * @var $animation_delay
 * @var $el_class
 * @var $css
 * @var $responsive
 * Shortcode class
 * @var $this WPBakeryShortCode_GSF_Google_Map
 */
$el_class = $map_height = $map_height_lg = $map_height_md = $map_height_sm = $map_height_mb = $map_zoom = $scroll_wheel = $overlay = $map_style = $map_style_content = $markers =
$css_animation = $animation_duration = $animation_delay = $el_class = $css = $responsive = '';

$atts = vc_map_get_attributes($this->getShortcode(), $atts);

extract($atts);

if (intval($map_zoom) <= 0 || intval($map_zoom) > 22) {
    $map_zoom = 13;
}
$wrapper_classes = array(
    'gsf-google-map',
    G5P()->core()->vc()->customize()->getExtraClass($el_class),
    $this->getCSSAnimation($css_animation),
    vc_shortcode_custom_css_class($css),
    $responsive
);
if ('' !== $css_animation && 'none' !== $css_animation) {
    $animation_class = G5P()->core()->vc()->customize()->get_animation_class($animation_duration, $animation_delay);
    $wrapper_classes[] = $animation_class;
}

$map_class = 'google-map-'.uniqid();
$map_height = str_replace('|', '', $map_height);
$map_height_lg = str_replace('|', '', $map_height_lg);
$map_height_md = str_replace('|', '', $map_height_md);
$map_height_sm = str_replace('|', '', $map_height_sm);
$map_height_mb = str_replace('|', '', $map_height_mb);
$map_css = <<<CSS
    .{$map_class} {
        height: {$map_height};
    }
    @media (max-width: 1199px) {
        .{$map_class} {
            height: {$map_height_lg};
        }    
    }
    @media (max-width: 991px) {
        .{$map_class} {
            height: {$map_height_md};
        }    
    }
    @media (max-width: 767px) {
        .{$map_class} {
            height: {$map_height_sm};
        }    
    }
    @media (max-width: 575px) {
        .{$map_class} {
            height: {$map_height_mb};
        }    
    }
CSS;
GSF()->customCss()->addCss($map_css);
$wrapper_classes[] = $map_class;

$class_to_filter = implode(' ', array_filter($wrapper_classes));
$class_to_filter .= vc_shortcode_custom_css_class($css, ' ');
$css_class = apply_filters(VC_SHORTCODE_CUSTOM_CSS_FILTER_TAG, $class_to_filter, $this->getShortcode(), $atts);
$googlemap_api_key = G5P()->options()->get_google_map_api_key();
$map_style_snippet = '';
switch ( $map_style ) {
    case 'theme':
        $map_style_snippet = '[{featureType:"all",elementType:"geometry.fill",stylers:[{visibility:"on"},{color:"#f3f2ee"}]},{featureType:"poi.attraction",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"poi.business",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"poi.government",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"poi.medical",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"poi.park",elementType:"geometry.fill",stylers:[{color:"#c9dfb0"}]},{featureType:"poi.park",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"poi.park",elementType:"labels.text.stroke",stylers:[{color:"#000000"},{visibility:"off"}]},{featureType:"poi.place_of_worship",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"poi.school",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"poi.sports_complex",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"road",elementType:"geometry.fill",stylers:[{color:"#ffffff"},{visibility:"on"}]},{featureType:"road",elementType:"geometry.stroke",stylers:[{visibility:"on"},{color:"#e5e5e1"}]},{featureType:"road",elementType:"geometry.fill",stylers:[{color:"#ffffff"},{visibility:"on"}]},{featureType:"road",elementType:"geometry.stroke",stylers:[{visibility:"on"},{color:"#e5e5e1"}]},{featureType:"road",elementType:"labels.text.fill",stylers:[{color:"#141414"}]},{featureType:"road.arterial",elementType:"geometry.fill",stylers:[{color:"#fefd89"}]},{featureType:"water",elementType:"geometry.fill",stylers:[{color:"#a6c0db"}]}]';
        break;
    case 'light':
        $map_style_snippet = '[{featureType:"all",elementType:"geometry.fill",stylers:[{weight:"2.00"}]},{featureType:"all",elementType:"geometry.stroke",stylers:[{color:"#9c9c9c"}]},{featureType:"all",elementType:"labels.text",stylers:[{visibility:"on"}]},{featureType:"landscape",elementType:"all",stylers:[{color:"#f2f2f2"}]},{featureType:"landscape",elementType:"geometry.fill",stylers:[{color:"#ffffff"}]},{featureType:"landscape.man_made",elementType:"geometry.fill",stylers:[{color:"#ffffff"}]},{featureType:"poi",elementType:"all",stylers:[{visibility:"off"}]},{featureType:"road",elementType:"all",stylers:[{saturation:-100},{lightness:45}]},{featureType:"road",elementType:"geometry.fill",stylers:[{color:"#f1f0ef"}]},{featureType:"road",elementType:"labels.text.fill",stylers:[{color:"#7b7b7b"}]},{featureType:"road",elementType:"labels.text.stroke",stylers:[{color:"#ffffff"}]},{featureType:"road.highway",elementType:"all",stylers:[{visibility:"simplified"}]},{featureType:"road.arterial",elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"transit",elementType:"all",stylers:[{visibility:"off"}]},{featureType:"water",elementType:"all",stylers:[{color:"#edf7fb"},{visibility:"on"}]},{featureType:"water",elementType:"geometry.fill",stylers:[{color:"#edf7fb"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#070707"}]},{featureType:"water",elementType:"labels.text.stroke",stylers:[{color:"#ffffff"}]}]';
        break;
    case 'sliver':
        $map_style_snippet = '[{elementType:"geometry",stylers:[{color:"#f5f5f5"}]},{elementType:"labels.icon",stylers:[{visibility:"off"}]},{elementType:"labels.text.fill",stylers:[{color:"#616161"}]},{elementType:"labels.text.stroke",stylers:[{color:"#f5f5f5"}]},{featureType:"administrative.land_parcel",elementType:"labels.text.fill",stylers:[{color:"#bdbdbd"}]},{featureType:"poi",elementType:"geometry",stylers:[{color:"#eeeeee"}]},{featureType:"poi",elementType:"labels.text.fill",stylers:[{color:"#757575"}]},{featureType:"poi.park",elementType:"geometry",stylers:[{color:"#e5e5e5"}]},{featureType:"poi.park",elementType:"labels.text.fill",stylers:[{color:"#9e9e9e"}]},{featureType:"road",elementType:"geometry",stylers:[{color:"#ffffff"}]},{featureType:"road.arterial",elementType:"labels.text.fill",stylers:[{color:"#757575"}]},{featureType:"road.highway",elementType:"geometry",stylers:[{color:"#dadada"}]},{featureType:"road.highway",elementType:"labels.text.fill",stylers:[{color:"#616161"}]},{featureType:"road.local",elementType:"labels.text.fill",stylers:[{color:"#9e9e9e"}]},{featureType:"transit.line",elementType:"geometry",stylers:[{color:"#e5e5e5"}]},{featureType:"transit.station",elementType:"geometry",stylers:[{color:"#eeeeee"}]},{featureType:"water",elementType:"geometry",stylers:[{color:"#c9c9c9"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#9e9e9e"}]}]';
        break;
    case 'retro':
        $map_style_snippet = '[{elementType:"geometry",stylers:[{color:"#ebe3cd"}]},{elementType:"labels.text.fill",stylers:[{color:"#523735"}]},{elementType:"labels.text.stroke",stylers:[{color:"#f5f1e6"}]},{featureType:"administrative",elementType:"geometry.stroke",stylers:[{color:"#c9b2a6"}]},{featureType:"administrative.land_parcel",elementType:"geometry.stroke",stylers:[{color:"#dcd2be"}]},{featureType:"administrative.land_parcel",elementType:"labels.text.fill",stylers:[{color:"#ae9e90"}]},{featureType:"landscape.natural",elementType:"geometry",stylers:[{color:"#dfd2ae"}]},{featureType:"poi",elementType:"geometry",stylers:[{color:"#dfd2ae"}]},{featureType:"poi",elementType:"labels.text.fill",stylers:[{color:"#93817c"}]},{featureType:"poi.park",elementType:"geometry.fill",stylers:[{color:"#a5b076"}]},{featureType:"poi.park",elementType:"labels.text.fill",stylers:[{color:"#447530"}]},{featureType:"road",elementType:"geometry",stylers:[{color:"#f5f1e6"}]},{featureType:"road.arterial",elementType:"geometry",stylers:[{color:"#fdfcf8"}]},{featureType:"road.highway",elementType:"geometry",stylers:[{color:"#f8c967"}]},{featureType:"road.highway",elementType:"geometry.stroke",stylers:[{color:"#e9bc62"}]},{featureType:"road.highway.controlled_access",elementType:"geometry",stylers:[{color:"#e98d58"}]},{featureType:"road.highway.controlled_access",elementType:"geometry.stroke",stylers:[{color:"#db8555"}]},{featureType:"road.local",elementType:"labels.text.fill",stylers:[{color:"#806b63"}]},{featureType:"transit.line",elementType:"geometry",stylers:[{color:"#dfd2ae"}]},{featureType:"transit.line",elementType:"labels.text.fill",stylers:[{color:"#8f7d77"}]},{featureType:"transit.line",elementType:"labels.text.stroke",stylers:[{color:"#ebe3cd"}]},{featureType:"transit.station",elementType:"geometry",stylers:[{color:"#dfd2ae"}]},{featureType:"water",elementType:"geometry.fill",stylers:[{color:"#b9d3c2"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#92998d"}]}]';
        break;
    case 'dark':
        $map_style_snippet = '[{elementType:"geometry",stylers:[{color:"#212121"}]},{elementType:"labels.icon",stylers:[{visibility:"off"}]},{elementType:"labels.text.fill",stylers:[{color:"#757575"}]},{elementType:"labels.text.stroke",stylers:[{color:"#212121"}]},{featureType:"administrative",elementType:"geometry",stylers:[{color:"#757575"}]},{featureType:"administrative.country",elementType:"labels.text.fill",stylers:[{color:"#9e9e9e"}]},{featureType:"administrative.land_parcel",stylers:[{visibility:"off"}]},{featureType:"administrative.locality",elementType:"labels.text.fill",stylers:[{color:"#bdbdbd"}]},{featureType:"poi",elementType:"labels.text.fill",stylers:[{color:"#757575"}]},{featureType:"poi.park",elementType:"geometry",stylers:[{color:"#181818"}]},{featureType:"poi.park",elementType:"labels.text.fill",stylers:[{color:"#616161"}]},{featureType:"poi.park",elementType:"labels.text.stroke",stylers:[{color:"#1b1b1b"}]},{featureType:"road",elementType:"geometry.fill",stylers:[{color:"#2c2c2c"}]},{featureType:"road",elementType:"labels.text.fill",stylers:[{color:"#8a8a8a"}]},{featureType:"road.arterial",elementType:"geometry",stylers:[{color:"#373737"}]},{featureType:"road.highway",elementType:"geometry",stylers:[{color:"#3c3c3c"}]},{featureType:"road.highway.controlled_access",elementType:"geometry",stylers:[{color:"#4e4e4e"}]},{featureType:"road.local",elementType:"labels.text.fill",stylers:[{color:"#616161"}]},{featureType:"transit",elementType:"labels.text.fill",stylers:[{color:"#757575"}]},{featureType:"water",elementType:"geometry",stylers:[{color:"#000000"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#3d3d3d"}]}]';
        break;
    case 'night':
        $map_style_snippet = '[{elementType:"geometry",stylers:[{color:"#242f3e"}]},{elementType:"labels.text.fill",stylers:[{color:"#746855"}]},{elementType:"labels.text.stroke",stylers:[{color:"#242f3e"}]},{featureType:"administrative.locality",elementType:"labels.text.fill",stylers:[{color:"#d59563"}]},{featureType:"poi",elementType:"labels.text.fill",stylers:[{color:"#d59563"}]},{featureType:"poi.park",elementType:"geometry",stylers:[{color:"#263c3f"}]},{featureType:"poi.park",elementType:"labels.text.fill",stylers:[{color:"#6b9a76"}]},{featureType:"road",elementType:"geometry",stylers:[{color:"#38414e"}]},{featureType:"road",elementType:"geometry.stroke",stylers:[{color:"#212a37"}]},{featureType:"road",elementType:"labels.text.fill",stylers:[{color:"#9ca5b3"}]},{featureType:"road.highway",elementType:"geometry",stylers:[{color:"#746855"}]},{featureType:"road.highway",elementType:"geometry.stroke",stylers:[{color:"#1f2835"}]},{featureType:"road.highway",elementType:"labels.text.fill",stylers:[{color:"#f3d19c"}]},{featureType:"transit",elementType:"geometry",stylers:[{color:"#2f3948"}]},{featureType:"transit.station",elementType:"labels.text.fill",stylers:[{color:"#d59563"}]},{featureType:"water",elementType:"geometry",stylers:[{color:"#17263c"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#515c6d"}]},{featureType:"water",elementType:"labels.text.stroke",stylers:[{color:"#17263c"}]}]';
        break;
    case 'aubergine':
        $map_style_snippet = '[{elementType:"geometry",stylers:[{color:"#1d2c4d"}]},{elementType:"labels.text.fill",stylers:[{color:"#8ec3b9"}]},{elementType:"labels.text.stroke",stylers:[{color:"#1a3646"}]},{featureType:"administrative.country",elementType:"geometry.stroke",stylers:[{color:"#4b6878"}]},{featureType:"administrative.land_parcel",elementType:"labels.text.fill",stylers:[{color:"#64779e"}]},{featureType:"administrative.province",elementType:"geometry.stroke",stylers:[{color:"#4b6878"}]},{featureType:"landscape.man_made",elementType:"geometry.stroke",stylers:[{color:"#334e87"}]},{featureType:"landscape.natural",elementType:"geometry",stylers:[{color:"#023e58"}]},{featureType:"poi",elementType:"geometry",stylers:[{color:"#283d6a"}]},{featureType:"poi",elementType:"labels.text.fill",stylers:[{color:"#6f9ba5"}]},{featureType:"poi",elementType:"labels.text.stroke",stylers:[{color:"#1d2c4d"}]},{featureType:"poi.park",elementType:"geometry.fill",stylers:[{color:"#023e58"}]},{featureType:"poi.park",elementType:"labels.text.fill",stylers:[{color:"#3C7680"}]},{featureType:"road",elementType:"geometry",stylers:[{color:"#304a7d"}]},{featureType:"road",elementType:"labels.text.fill",stylers:[{color:"#98a5be"}]},{featureType:"road",elementType:"labels.text.stroke",stylers:[{color:"#1d2c4d"}]},{featureType:"road.highway",elementType:"geometry",stylers:[{color:"#2c6675"}]},{featureType:"road.highway",elementType:"geometry.stroke",stylers:[{color:"#255763"}]},{featureType:"road.highway",elementType:"labels.text.fill",stylers:[{color:"#b0d5ce"}]},{featureType:"road.highway",elementType:"labels.text.stroke",stylers:[{color:"#023e58"}]},{featureType:"transit",elementType:"labels.text.fill",stylers:[{color:"#98a5be"}]},{featureType:"transit",elementType:"labels.text.stroke",stylers:[{color:"#1d2c4d"}]},{featureType:"transit.line",elementType:"geometry.fill",stylers:[{color:"#283d6a"}]},{featureType:"transit.station",elementType:"geometry",stylers:[{color:"#3a4762"}]},{featureType:"water",elementType:"geometry",stylers:[{color:"#0e1626"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#4e6d70"}]}]';
        break;
    case 'custom':
        $map_style_snippet = rawurldecode(base64_decode(strip_tags($map_style_content)));
        break;
    default:
        $map_style_snippet = '';
}

$map_style_snippet = json_encode( $map_style_snippet );

$map_id = 'map-' . uniqid();
?>
<div id="<?php echo esc_attr($map_id) ?>"
     class="<?php echo esc_attr($css_class) ?>">
</div>
<?php
$markers = (array)vc_param_group_parse_atts($markers); ?>
<script type="text/javascript">
    jQuery( document ).ready( function( $ ) {
        var gmMapDiv = $( "<?php echo '#' . $map_id; ?>" );
        (
            function( $ ) {
                if ( gmMapDiv.length ) {
                    gmMapDiv.gmap3( {
                        action: "init",
                        marker: {
                            values: [
                                <?php
                                foreach ($markers as $marker) {
                                $address = isset( $marker['address'] ) ? $marker['address'] : '';
                                if (empty($address)) {
                                    continue;
                                }


                                $description = isset( $marker['description'] ) ? '<div class="gmap-marker-content">' . $marker['description'] . '</div>' : '';
                                $title = isset( $marker['title'] ) ? '<h5 class="gmap-marker-title">' . $marker['title'] . '</h5>' : '';
                                $icon = isset( $marker['icon'] ) ? $marker['icon'] : '';
                                $icon_url = '';
                                if ($icon != '') {
                                    $icon = wp_get_attachment_image_src($icon, 'full');
                                    if (is_array($icon) && !empty($icon)) {
                                        $icon_url = $icon[0];
                                    }
                                }

                                if (empty($icon_url)) {
                                    $icon_url = G5P()->pluginUrl('shortcodes/google-map/assets/images/map-point.png');
                                }

                                $_data = "0";
                                if ( $title !== '' || $description !== '' ) {
                                    $_data = '<div class="gmap-marker-wrap">' . $title . $description . '</div>';
                                    $_data = json_encode( nl2br( $_data ) );
                                }
                                ?>
                                {
                                    address: "<?php echo esc_js( $address ); ?>",
                                    data: <?php echo '' . $_data;?>,
                                    options: {
                                        icon: '<?php echo esc_url($icon_url); ?>',
                                        <?php if('on' === $overlay): ?>
                                        visible: false
                                        <?php endif; ?>
                                    }
                                },
                                <?php } ?>
                            ],
                            events: {
                                click: function( marker, event, context ) {
                                    if ( context.data == 0 ) {
                                        return;
                                    }
                                    var map = $( this ).gmap3( "get" );
                                    infowindow = $( this ).gmap3( { get: { name: "infowindow" } } );
                                    if ( infowindow ) {
                                        infowindow.open( map, marker );
                                        infowindow.setContent( context.data );
                                    } else {
                                        $( this ).gmap3( {
                                            infowindow: {
                                                anchor: marker,
                                                options: { content: context.data }
                                            }
                                        } );
                                    }
                                },
                                callback:function(m)
                                { //m will be the array of markers
                                    var bounds = new google.maps.LatLngBounds();
                                    for(var i=0;i<m.length;++i)
                                    {
                                        bounds.extend(m[i].getPosition());
                                    }
                                    try {
                                        var map = $(this).gmap3({action:'get'});
                                        map.fitBounds(bounds);
                                        map.setCenter(bounds.getCenter())
                                    } catch(e) {}
                                }
                            }
                        },
                        <?php if('on' === $overlay): ?>
                        overlay: {
                            values: [
                                <?php
                                foreach ($markers as $marker) {
                                $address = isset( $marker['address'] ) ? $marker['address'] : '';
                                $description = isset( $marker['description'] ) ? '<div class="gmap-marker-desc">' . $marker['description'] . '</div>' : '';
                                $title = isset( $marker['title'] ) ? '<h5 class="gmap-marker-title">' . $marker['title'] . '</h5>' : '';
                                $icon = isset( $marker['icon'] ) ? $marker['icon'] : '';
                                $icon_url = '';
                                if ($icon != '') {
                                    $icon = wp_get_attachment_image_src($icon, 'full');
                                    $icon_url = $icon[0];
                                }

                                $_data = "0";
                                if ( $title !== '' || $description !== '' ) {
                                    $_data = '<div class="gmap-marker-wrap">' . $title . $description . '</div>';

                                }
                                $_data = json_encode( nl2br( $_data ) );
                                ?>
                                {
                                    address: "<?php echo esc_js( $address ); ?>",
                                    data: <?php echo ( $_data );?>,
                                    options: {
                                        content: '<div><div class="map-point-animate">' + '<div class="map-point-center<?php echo (!empty($icon_url) ? ' has-icon' : ''); ?>"><?php echo (!empty($icon_url) ? '<img src="' . $icon_url . '">' : ''); ?></div>' + '<div class="map-point-signal"></div>' + '<div class="map-point-signal2"></div>' + '</div></div>',
                                    }
                                },
                                <?php } ?>
                            ],
                            events: {
                                click: function( overlay, event, context ) {
                                    if ( context.data == 0 ) {
                                        return;
                                    }
                                    var map = $( this ).gmap3( "get" );
                                    infowindow = $( this ).gmap3( { get: { name: "infowindow" } } );
                                    if ( infowindow ) {
                                        infowindow.open( map, overlay );
                                        infowindow.setContent( context.data );
                                    } else {
                                        $( this ).gmap3( {
                                            infowindow: {
                                                anchor: overlay,
                                                options: { content: context.data }
                                            }
                                        } );
                                    }
                                },
                                callback:function(m)
                                { //m will be the array of markers
                                    var bounds = new google.maps.LatLngBounds();
                                    for(var i=0;i<m.length;++i)
                                    {
                                        bounds.extend(m[i].getPosition());
                                    }
                                    try{
                                        var map=$(this).gmap3({action:'get'});
                                        map.fitBounds(bounds);
                                        map.setCenter(bounds.getCenter())
                                    }catch(e){}
                                }
                            }
                        },
                        <?php endif; ?>
                        map: {
                            options: {
                                zoom: parseInt( <?php echo esc_attr($map_zoom) ?> ),
                                mapTypeId : google.maps.MapTypeId.ROADMAP,
                                zoomControl: true,
                                mapTypeControl: false,
                                scaleControl: false,
                                scrollwheel: <?php echo ($scroll_wheel === 'on' ? 'true' : 'false'); ?>,
                                streetViewControl: false,
                                draggable: true,
                                <?php if (!empty($map_style_snippet)): ?>
                                styles: <?php echo json_decode( $map_style_snippet ) ?>
                                <?php endif; ?>
                            }
                        }
                    } );
                }
            }
        )( jQuery );
    } );
</script>