Current File : /home/pacjaorg/public_html/kmm/plugins/djclassifieds/leaflet/layouts/item.php
<?php
/**
 * @package DJ-Classifieds
 * @copyright Copyright (C) DJ-Extensions.com, All rights reserved.
 * @license http://www.gnu.org/licenses GNU/GPL
 * @author url: http://dj-extensions.com
 * @author email contact@dj-extensions.com
 */
 
defined('_JEXEC') or die;

$view_type = $displayData['view_type'];
$item = $displayData['item'];
$icon_img = $displayData['icon_img'];
$icon_size = $displayData['icon_size'];
$tile_data = $displayData['tile_data'];
$par = $displayData['par'];
$params = $displayData['params'];

$app = JFactory::getApplication();

echo '<div id="djmap" style="width:100%;'.($app->isClient('administrator') ? 'height:300px;' : 'height:210px;').'display:none;"></div>';
if($par->get('gm_img_on_start', 0) && !$app->isClient('administrator')){
    echo '<div id="show_map_outer" class="show_map_outer"><img src="'.DJClassifiedsTheme::getImgAssetPath('map_blank.png').'" alt="" /><button type="button" id="show_map_btn" class="button">'.JText::_('COM_DJCLASSIFIEDS_SHOW_MAP').'</button></div>';
}

if($view_type != 'profile'){
    if($par->get('show_lat_lng', 0) && !$app->isClient('administrator') && floatval($item->latitude) && floatval($item->longitude)){
        echo '<div class="geo_coordinates">'.JText::_('COM_DJCLASSIFIEDS_GEOGRAPHIC_COORDINATES').': <span>('.rtrim($item->latitude,'0').', '.rtrim($item->longitude,'0').')</span></div>';
    }
    
    if($par->get('show_lat_lng', 0) && !$app->isClient('administrator')){
        echo '<div class="map_info">'.JText::_('COM_DJCLASSIFIEDS_MAP_ACCURACY').'</div>';
    }
    
    if($par->get('show_gm_driving', 0) && !$app->isClient('administrator')){
        echo '<form action="'.JRoute::_('index.php').'" method="post" class="gm_drive_dir" target="_blank">
            <label>'.JText::_('COM_DJCLASSIFIEDS_DRIVE_DIRECTIONS').'</label>
            <input type="hidden" name="option" value="com_ajax">
            <input type="hidden" name="group" value="djclassifieds">
            <input type="hidden" name="plugin" value="leafletDriveDirections">
            <input type="hidden" name="format" value="raw">
            <input type="hidden" name="lat" value="'.$item->latitude.'">
            <input type="hidden" name="lng" value="'.$item->longitude.'">
            <input type="text" class="inputbox" name="saddr" placeholder="'.JText::_('COM_DJCLASSIFIEDS_ENTER_ADDRESS').'">
            <input class="button" type="submit" value="'.JText::_('COM_DJCLASSIFIEDS_DIRECTIONS_SEARCH').'">						
        </form>';

        if(isset($_COOKIE["djcf_latlon"])){
            $lat_lng =  str_ireplace('_', ',', $_COOKIE["djcf_latlon"]);
            echo '<a class="gm_drive_dir_l" target="_blank" href="https://www.openstreetmap.org/directions?route='.$lat_lng.';'.$item->latitude.','.$item->longitude.'">'.JText::_('COM_DJCLASSIFIEDS_OR_USE_LOCALIZATION').'<span></span></a>';
        }else{
            echo '<span class="gm_drive_dir_l"><button class="button" onclick="getDJDriveLocation()">'.JText::_('COM_DJCLASSIFIEDS_OR_USE_LOCALIZATION').'</button><span></span></span>';
            echo '<script>
            function getDJDriveLocation()
            {
                if(navigator.geolocation){
                    navigator.geolocation.getCurrentPosition(showDJDrivePosition);
                }else{
                    console.error("'.JText::_('COM_DJCLASSIFIEDS_GEOLOCATION_IS_NOT_SUPPORTED_BY_THIS_BROWSER').'");
                }
            }
            function showDJDrivePosition(position)
            {
                setDJLocationCookie(position);				  	
                window.open("https://www.openstreetmap.org/directions?route="+position.coords.latitude+","+position.coords.longitude+";'.$item->latitude.','.$item->longitude.'");						  							  				 
            }
            </script>';
        }
    }
}

echo '<script>
    var djmap;
    var djmarker;

    jQuery(document).ready(function(){
        if(jQuery("#show_map_btn").length){
            jQuery("#show_map_btn").click(function(){
                jQuery("#show_map_outer").empty();
                mapInit();
            });
        }else{
            mapInit();
        }

        function mapInit(){
            var lat = "'.$item->latitude.'";
            var lng = "'.$item->longitude.'";
            var zoom = "'.$par->get('gm_zoom','10').'";
            var scrollWheelZoom = "'.($par->get('gm_scrollwheel','1') ? true : false).'";

            var myIcon = L.icon({
                iconUrl: "'.$icon_img.'",
                iconSize: ['.$icon_size[0].', '.$icon_size[1].'],
                iconAnchor: '.($icon_img ? '['.($icon_size[0]/2).', '.$icon_size[1].']' : 'null').'
            });

            var mapOptions = {
                center: new L.LatLng(lat, lng),
                scrollWheelZoom: scrollWheelZoom,
                //layers: new L.TileLayer("https://a.tiles.mapbox.com/v3/mapbox.world-bright/{z}/{x}/{y}.png"),
                zoom: zoom
            };

            djmap = new L.Map("djmap", mapOptions);

            L.tileLayer("'.$tile_data[0].'", '.json_encode($tile_data[1]).').addTo(djmap);
            djmap.attributionControl.setPrefix("'.addslashes($tile_data[2]).'");

            var opts = {};
            '.($icon_img ? 'opts.icon = myIcon;' : '').'
            '.($app->isClient('administrator') ? 'opts.draggable = true;opts.autoPan = true;' : '').'
            djmarker = new L.Marker([lat, lng], opts);
            djmarker.bindPopup("<div style=\"width:200px\"><b>'.addslashes(($item->name ? $item->name : '')).'</b>'.($item->intro_desc ? '<br>'.addslashes(str_replace(array("\n","\r","\r\n"), '',$item->intro_desc)) : '').'</div>"'.($icon_img ? ', {offset: L.point(0, -'.($icon_size[1]/2).')}' : '').');

            '.($app->isClient('administrator') ? '
            djmarker.on("moveend",function(e){
                my_lat = e.target._latlng.lat;
                my_lng = e.target._latlng.lng;
                jQuery("#jform_latitude").val(my_lat);
                jQuery("#jform_longitude").val(my_lng);
            });

            jQuery("#jform_latitude").change(function(){
                my_lat = jQuery(this).val();
                coord = new L.LatLng(my_lat, my_lng);
                djmarker.setLatLng(coord);
                djmap.panTo(coord);
            });
            jQuery("#jform_longitude").change(function(){
                my_lng = jQuery(this).val();
                coord = new L.LatLng(my_lat, my_lng);
                djmarker.setLatLng(coord);
                djmap.panTo(coord);
            });
            ' : '').'

            djmap.addLayer(djmarker);
            
            jQuery("a[href=\"#location\"]").on("shown",function(e){
                djmap.invalidateSize();
            });
            jQuery("button[aria-controls=\"location\"]").on("click",function(e){
                djmap.invalidateSize();
            });

            jQuery("#djmap").show();
            djmap.invalidateSize();
        }
    });
</script>';
Site is undergoing maintenance

PACJA Events

Maintenance mode is on

Site will be available soon. Thank you for your patience!