Current File : /home/pacjaorg/public_html/km/components/com_djclassifieds/layouts/googlemap.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;

JHtml::_('jquery.framework');

$lat = $displayData['lat'];
$lon = $displayData['lon'];
$region_id = $displayData['region_id'];
$address = $displayData['address'];
$icon_img = !empty($displayData['icon_img']) ? $displayData['icon_img'] : null;
$context = isset($displayData['context']) ? $displayData['context'] : 'profile';
$par = $displayData['par'];

?>

<div id="google_map_box">
    <div id="djmap" style="width:100%;height:210px;display:none;"></div>
    <?php if($par->get('gm_img_on_start',0)==1){ ?>
        <div id="show_map_outer" class="show_map_outer">
            <img src="<?php echo DJClassifiedsTheme::getImgAssetPath('map_blank.png'); ?>" alt="" />
            <button type="button" id="show_map_btn" class="button"><?php echo JText::_('COM_DJCLASSIFIEDS_SHOW_MAP'); ?></button>
        </div>
    <?php } ?>
    <?php if($context == 'item'){ ?>
        <?php if($par->get('show_lat_lng',0) && $lat > 0 && $lon > 0){ ?>
            <div class="geo_coordinates"><?php echo JText::_('COM_DJCLASSIFIEDS_GEOGRAPHIC_COORDINATES')?>:
                <span><?php echo '('.(float)$lat.','.(float)$lon.')'; ?></span>
            </div>
        <?php } ?>
        <div class="map_info"><?php echo JText::_('COM_DJCLASSIFIEDS_MAP_ACCURACY')?></div>
        <?php if($par->get('show_gm_driving')==1){ ?>
            <?php $geoloc_address = DJClassifiedsGeocode::getGeolocAddress($region_id, $address); ?>
            <form action="<?php echo JRoute::_('index.php'); ?>" method="post" class="gm_drive_dir" target="_blank">
                <label><?php echo JText::_('COM_DJCLASSIFIEDS_DRIVE_DIRECTIONS');?></label>
                <input type="hidden" name="option" value="com_djclassifieds" />
                <input type="hidden" name="view" value="item" />
                <input type="hidden" name="task" value="driveDirections" />
                <input type="hidden" name="latitude" value="<?php echo $lat; ?>" />
                <input type="hidden" name="longitude" value="<?php echo $lon; ?>" />
                <input type="text" class="inputbox" name="saddr" placeholder="<?php echo JText::_('COM_DJCLASSIFIEDS_ENTER_ADDRESS');?>" />
                <input class="button" type="submit" value="<?php echo JText::_('COM_DJCLASSIFIEDS_DIRECTIONS_SEARCH'); ?>" />
                <input type="hidden" name="daddr" value="<?php echo $geoloc_address; ?>" />
            </form>
            <?php 
                if(isset($_COOKIE["djcf_latlon"])){
                    $saddr = str_ireplace('_', ',', $_COOKIE["djcf_latlon"]);
                    echo '<a class="gm_drive_dir_l" target="_blank" href="https://maps.google.com/maps?saddr='.$saddr.'&daddr='.$geoloc_address.'">'.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>';
                }
            ?>
            <script>
                function getDJDriveLocation()
                {
                    if(navigator.geolocation){
                        navigator.geolocation.getCurrentPosition(showDJDrivePosition);
                    }else{
                        console.error('<?php echo JText::_('COM_DJCLASSIFIEDS_GEOLOCATION_IS_NOT_SUPPORTED_BY_THIS_BROWSER');?>');
                    }
                }
                function showDJDrivePosition(position)
                {
                    setDJLocationCookie(position);				  	
                    window.open("http://maps.google.com/maps?saddr="+ (position.coords.latitude+','+position.coords.longitude) +"&daddr=<?php echo $geoloc_address; ?>");
                }
            </script>
        <?php } ?>
    <?php } ?>
</div>

<script>		
    <?php if($par->get('gm_img_on_start',0)==1){ ?>
        jQuery('#show_map_btn').on('click', function(){
            document.getElementById('show_map_outer').innerHTML = '';
            mapaStart();
        });
    <?php }else{ ?>
        jQuery(function(){
            mapaStart();
        });
    <?php } ?>

    var djmap;
    var map_marker = new google.maps.InfoWindow();
    var geokoder = new google.maps.Geocoder();
    
    function addMarker(position,txt,icon)
    {
        var markerOpt =  
        { 
            position: position, 
            icon: icon,
            map: djmap
        } 
        var marker = new google.maps.Marker(markerOpt);

        return marker;
    }
            
    function mapaStart()    
    {		 	 
        <?php if($icon_img){ ?>
            <?php $icon_size = getimagesize(JPATH_ROOT.'/'.$icon_img); ?>
            var size = new google.maps.Size(<?php echo $icon_size[0].','.$icon_size[1]; ?>);
            var start_point = new google.maps.Point(0,0);
            var anchor_point = new google.maps.Point(<?php echo ($icon_size[0]/2).','.$icon_size[1];?>);   
            var icon = new google.maps.MarkerImage("<?php echo JUri::root().$icon_img; ?>", size, start_point, anchor_point);
        <?php }else{ ?>
            var icon = '';
        <?php }	?>

    <?php $gm_scrollwheel = $par->get('gm_scrollwheel','1') ? 'true' : 'false'; ?>
    <?php $map_styles = trim($par->get('gm_styles','')) == '' ? '[]' : $par->get('gm_styles'); ?>
        
    <?php if($lat > 0 && $lon > 0){ ?>
        document.getElementById('djmap').style.display='block';
        var adLatlng = new google.maps.LatLng(<?php echo $lat.','.$lon; ?>);
        var scrollw = <?php echo $gm_scrollwheel; ?>;
        var MapOptions = {
            zoom: <?php echo $par->get('gm_zoom','10'); ?>,
            scrollwheel: scrollw,
            center: adLatlng,
            mapTypeId: google.maps.MapTypeId.<?php echo $par->get('gm_type','ROADMAP'); ?>,
            navigationControl: true,
            styles: <?php echo $map_styles; ?>
        };
        djmap = new google.maps.Map(document.getElementById('djmap'), MapOptions);
        var marker = addMarker(adLatlng,'',icon);
    <?php }else{ ?>
        var adres = '<?php echo DJClassifiedsGeocode::getGeolocAddress($region_id, $address); ?>';
        var scrollw = <?php echo $gm_scrollwheel; ?>;
        geokoder.geocode({address: adres}, function (results, status)
        {
            if(status == google.maps.GeocoderStatus.OK)
            {
                document.getElementById('djmap').style.display = 'block';
                var MapOptions = {
                    zoom: <?php echo $par->get('gm_zoom','10'); ?>,
                    scrollwheel: scrollw,
                    center: results[0].geometry.location,
                    mapTypeId: google.maps.MapTypeId.ROADMAP,
                    navigationControl: true,
                    styles: <?php echo $map_styles; ?>
                };
                djmap = new google.maps.Map(document.getElementById('djmap'), MapOptions); 
                var marker = addMarker(results[0].geometry.location,'',icon);
            }
        });		
    <?php } ?>      
    }
</script>
Site is undergoing maintenance

PACJA Events

Maintenance mode is on

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