Иконка ресурса

View Map 1.8

Нет прав для скачивания

Hope

Premium
Сообщения
48,318
Решения
22
Реакции
71,959
Баллы
40,905
Пользователь Hope разместил новый ресурс:

View Map - Карты от Google в сообщениях форума.

Плагин позволит Вам использовать в сообщениях форума карты от Google с указанием местоположения.

Использование:
  • В панели пользователя нажмите на ссылку "View Map"
  • Переместите карту в нужное положение
  • Скопируйте код и вставьте е го в сообщение форума
Настройка:
  • Скопируйте файлы viewmap.php и crosshair.gif в отдельную директорию форума, например в папку /misc/
  • Отредактируйте файл viewmap.php, заменив в нём код: <a...

Узнать больше об этом ресурсе...
 
Что то не сростается ни как. Кто нить тестил ?

Код:
<?php

// default zoom
$zoom = 11;

// default forum URL
$forum_url = 'http://www.southbayriders.com/forums/';

// default forum title
$forum_title = 'Forums';

// default view map title
$view_map = 'View Map';

?>

<html>
<title><?php echo $view_map;?></title>
<head>

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>

<style type="text/css">

.breadcrumb {
    padding: 0px 0px 10px 0px;
}

</style>

<?php

error_reporting(E_ALL & ~E_NOTICE);

// get coordinates from URL
$coordinates = $_GET['coordinates'];

?>

<script type="text/javascript">

var height = window.innerHeight - 20;
var map;
var geocoder;
var centerChangedLast;
var markersArray = [];

function initialize()
{
    var latlng = new google.maps.LatLng(<?php echo $coordinates;?>);
    var myOptions =
    {
        zoom: <?php echo $zoom;?>,
        center: latlng,
        scaleControl: true,
        scrollwheel: false,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
    geocoder = new google.maps.Geocoder();
   
    setupEvents();
    centerChanged();
    addMarkerAtCenter();
}

function setupEvents()
{
    var marker = new google.maps.Marker(
    {
        map: map,
        icon: 'viewmap_crosshair.gif'
    });
    marker.bindTo('position', map, 'center');
   
    google.maps.event.addListener(map, 'center_changed', centerChanged);
}

function getCenterLatLngText()
{
    document.getElementById("latlng").className="coordinate";   
    return '[map=' + map.getCenter().lat().toFixed(6) +','+ map.getCenter().lng().toFixed(6) +']View Map[/map]';
}

function centerChanged()
{
    centerChangedLast = new Date();
    var latlng = getCenterLatLngText();
    document.getElementById('latlng').innerHTML = latlng;
}

function geocode()
{
    var address = document.getElementById("address").value;
    geocoder.geocode({
    'address': address,
    'partialmatch': true}, geocodeResult);
}

function geocodeResult(results, status)
{
    if (status == 'OK' && results.length > 0)
    {
        map.fitBounds(results[0].geometry.viewport);
    }
    else
    {
        alert("Geocode was not successful for the following reason: " + status);
    }
}

function addMarkerAtCenter()
{
    marker = new google.maps.Marker(
    {
        position: map.getCenter(),
        map: map
    });
    markersArray.push(marker);
}

function deleteOverlays()
{
    if (markersArray)
    {
        for (i in markersArray)
        {
            markersArray[i].setMap(null);
        }
        markersArray.length = 0;
    }
}

</script>

</head>
<body onload="initialize()">

<div class="breadcrumb">
<a href="<?php echo $forum_url;?>"><?php echo $forum_title;?></a> > <?php echo $view_map;?>
</div>

<div id="map">
<div id="map_canvas" style="width:100%;"></div>
</div>

<script type="text/javascript">
var height = window.innerHeight;
height = height - 140;
document.getElementById("map_canvas").style.height = height + "px";
</script>

<br />
<div id="latlng"></div>
<br />

Find Place: <input id="address" type="text" size="50">
<input type="button" value="Go" onclick="geocode()">
<input type="button" value="Add Marker at Center" onclick="addMarkerAtCenter()">
<input type="button" onClick="deleteOverlays()" value="Remove Markers" title="Remove Markers">

</body>
</html>

И какую строчку редактировать ?
 
Смените на свой URL:
Код:
// default forum URL
$forum_url = 'http://www.southbayriders.com/forums/';
 
возможно ли через этот плагин покладывать маршруты с точки а в точку б ?
 
Может кому пригодится:
Небольшая русификация и настройки :-)

Русская кнопочка в сообщении, а не View Map
3.png
Перед установкой плагина в файле addon-ViewMap_v1.6 меняем в 70 строке
Код:
<replace_html><![CDATA[<a href="viewmap?coordinates={option}" target="_blank"><button type="button">View Map</button></a>]]></replace_html>
На
Код:
<replace_html><![CDATA[<a href="viewmap?coordinates={option}" target="_blank"><button type="button">Посмотреть карту</button></a>]]></replace_html>


Настройка плагина в файле viewmap.php
2.png

Русифицируем кнопочки на странице карты, в конце файла viewmap.php
PHP:
Find Place: <input id="address" type="text" size="50" onkeyup="if (event.keyCode == 13) { geocode();}">
<input type="button" value="Go" onclick="geocode()">
<input type="button" value="Add Marker at Center" onclick="addMarkerAtCenter()">
<input type="button" onClick="deleteOverlays()" value="Remove Markers" title="Remove Markers">
меням на
PHP:
Что ищем?: <input id="address" type="text" size="50" onkeyup="if (event.keyCode == 13) { geocode();}">
<input type="button" value="Найти" onclick="geocode()">
<input type="button" value="Добавить маркер в центр" onclick="addMarkerAtCenter()">
<input type="button" onClick="deleteOverlays()" value="Удалить маркеры" title="Удалить маркеры">

Добавляем возможность менять масштаб карты с помощью скролла мыши
Находим в этом же файле viewmap.php 58 строку
и меняем:
scrollwheel: false,
на
scrollwheel: true,

При необходимости меняем тип карты который будет отображаться по дефолту
  • MapTypeId.ROADMAP – стандартное представление дорожной карты. Этот тип карты используется по умолчанию.
  • MapTypeId.SATELLITE – карта из спутниковых снимков Google Earth.
  • MapTypeId.HYBRID – сочетание обычной и спутниковой карты.
  • MapTypeId.TERRAIN – физическая карта на основе данных о ландшафте.
Находим в этом же файле viewmap.php 59 строку и меняем тип карты на любой из выше представленных.
mapTypeId: google.maps.MapTypeId.ROADMAP

Переводим кнопку View Map в меню - фраза viewmap_view_map
1.png
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza

Похожие темы

Назад
Сверху Снизу