Ни у кого не было такого? Использую плагин Яндекс карт старой версии, он у меня работает на всех браузерах, кроме Internet Explorer. Ссылка
http://www.tobtovar.ru/sputnikovaya-karta-tobolska. Сам плагин можно скачать здесь
http://webmap-blog.ru/files/soft/plg_ymap01.zip.
Я не хочу устанавливать сам компонент Яндекс карт, так как мне не нужно добавление меток, а нужно чтобы всегда показвался один и тот же город, как сейчас. Новых плагинов с такой же настройкой я не нашел, тем более официальный сайт похоже уже этим не занимается
www.yar-it.com.
Помогите настроить плагин под Internet Explorer. Может подскажите в чем проблема.
Выкладываю сами файлы:
Это код из файла plugin_yandexmap.php
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
$mainframe->registerEvent( 'onBeforeDisplayContent', 'plgContentYMap' );
function plgContentYMap ( &$row, &$params, $page=0 )
{
$plugin =& JPluginHelper::getPlugin('content', 'plugin_yandexmap');
$pluginParams = new JParameter( $plugin->params );
preg_match_all('/\{ymap\s*([^}]*)}/',$row->text,$matches,PREG_OFFSET_CAPTURE);
$html = array();
foreach ($matches[0] as $tag_num => $tag) {
$html[$tag_num]['content'] = YMapProcessTag($matches[1][$tag_num][0], $pluginParams);
$html[$tag_num]['offset'] = $tag[1];
$html[$tag_num]['length'] = strlen($tag[0]);
}
/* echo "<pre>";
print_r($html);
echo "</pre>"; */
// $row->text = preg_replace('/\{ymap\}/','***',$row->text);
$str = & $row->text;
foreach (array_reverse($html) as $part) {
$str = substr_replace($str,$part['content'],$part['offset'],$part['length']);
}
}
function YMapProcessTag(& $tag_params, & $plugin_params)
{
static $y_map_id = 0;
preg_match_all('/(\S+)\s*=\s*(\S+)/',$tag_params, $matches);
$my_params = array();
foreach ($matches[1] as $num=>$key)
{
$my_params[$key] = $matches[2][$num];
}
$doc = & JFactory::getDocument();
foreach ($plugin_params->toArray() as $p_name => $p_value) {
if (!isset($my_params[$p_name]))
$my_params[$p_name] = $p_value;
}
if ($y_map_id === 0) {
$doc->addScript('http://api-maps.yandex.ru/1.0/index.xml?key='.$my_params['apiKey']);
}
$my_params['mapType'] = strtolower($my_params['mapType']);
switch ($my_params['mapType']) {
case 'map':
$map_type = 'map.setType(YMaps.MapType.MAP);';
break;
case 'satellite':
$map_type = 'map.setType(YMaps.MapType.SATELLITE);';
break;
case 'hybrid':
$map_type = 'map.setType(YMaps.MapType.HYBRID);';
break;
default:
$map_type = '';
}
$my_params['zoomType'] = strtolower($my_params['zoomType']);
switch ($my_params['zoomType']) {
case 'large':
$zoom_type = 'var zoomControl = new YMaps.Zoom();';
break;
case 'small':
$zoom_type = 'var zoomControl = new YMaps.SmallZoom();';
break;
default:
$zoom_type = '';
break;
}
if (!empty($zoom_type)) {
$zoom_type .= "\nmap.addControl(zoomControl);";
}
if (intval($my_params['showMapType'])) {
$typeControl = 'var typeControl = new YMaps.TypeControl();';
$typeControl .= 'map.addControl(typeControl);';
} else {
$typeControl = '';
}
if (intval($my_params['showToolBar'])) {
$toolbarControl = 'var toolbarControl = new YMaps.ToolBar();';
$toolbarControl .= 'map.addControl(toolbarControl);';
} else {
$toolbarControl = '';
}
if (intval($my_params['showMiniMap'])) {
$mmControl = 'var minimapControl = new YMaps.MiniMap();';
$mmControl .= 'map.addControl(minimapControl);';
} else {
$mmControl = '';
}
if (intval($my_params['scrollZoom'])) {
$scrollZoom = 'map.enableScrollZoom();';
} else {
$scrollZoom = 'map.disableScrollZoom();';
}
if (intval($my_params['dblClickZoom'])) {
$dblClickZoom = 'map.enableDblClickZoom();';
} else {
$dblClickZoom = 'map.disableDblClickZoom();';
}
$placemarks = '';
for ($i = 0; $i < 2; $i++) {
if (!isset($my_params['placemark_enabled_'.$i])) break;
$placemark_enabled = $my_params['placemark_enabled_'.$i];
if (!$placemark_enabled) continue;
$placemark_lat = $my_params['placemark_lat_'.$i];
$placemark_lon = $my_params['placemark_lon_'.$i];
$placemark_content = $my_params['placemark_content_'.$i];
$placemark_open = intval($my_params['placemark_open_'.$i]);
$placemark_ballon = $my_params['placemark_ballon_'.$i];
$placemarks .= 'var placemark_'.$i.' = new YMaps.Placemark(new YMaps.GeoPoint('.$placemark_lon.', '.$placemark_lat.'));';
if (!empty($placemark_content))
$placemarks .= "\n".'placemark_'.$i.'.setIconContent("'.addslashes($placemark_content).'");';
$placemarks .= "\n".'map.addOverlay(placemark_'.$i.');';
$placemarks .= "\n".'placemark_'.$i.'.setBalloonContent("'.addslashes($placemark_ballon).'");';
if ($placemark_open) {
$placemarks .= "\n".'placemark_'.$i.'.openBalloon();';
}
}
$j_content = '
window.addEvent(\'domready\', function() {
var map = new YMaps.Map(document.getElementById("YMaps_'.$y_map_id.'"));
center = new YMaps.GeoPoint('.$my_params['lon'].', '.$my_params['lat'].');
map.setCenter(center, '.$my_params['zoom'].');
'.$map_type.'
'.$zoom_type.'
'.$typeControl.'
'.$toolbarControl.'
'.$mmControl.'
'.$scrollZoom.'
'.$dblClickZoom.'
'.$placemarks.'
}
)
';
$doc->addScriptDeclaration($j_content);
$content = '';
$content .= '<div id="YMaps_'.$y_map_id.'" style="width:'.$my_params['width'].'; height: '.$my_params['height'].';"></div>';
$y_map_id += 1;
return $content;
}
?>
Это файл plugin_yandexmap.xml
<?xml version="1.0" encoding="utf-8"?>
<install version="1.5" type="plugin" group="content" method="upgrade">
<name>Content - Yandex Maps</name>
<author>Evgeny Marchenko</author>
<creationDate>February 2009</creationDate>
<copyright>(C) 2008</copyright>
<license>Private</license>
<authorEmail>xengine@mail.ru</authorEmail>
<authorUrl>freedom-ru.net</authorUrl>
<version>0.1</version>
<description>DESCRIPTION YMAP</description>
<files>
<filename plugin="plugin_yandexmap">plugin_yandexmap.php</filename>
</files>
<languages>
<language tag="ru-RU">ru-RU.plg_content_plugin_yandexmap.ini</language>
</languages>
<params>
<!-- <param name="timeinterval" type="text" size= "4" default="500" label="Timeinterval" description="To show the map a timeinterval in ms is done to wait for the page is loaded correctly (default 500ms). Especially for IE this can prevent a fatal error." />-->
<param name="apiKey" type="text" size= "40" default="" label="YMAP_API" description="YMAP_API_D" />
<param name="width" type="text" size= "10" default="100%" label="YMAP_WIDTH" description="YMAP_WIDTH_D" />
<param name="height" type="text" size= "10" default="400px" label="YMAP_HEIGHT" description="YMAP_HEIGHT_D" />
<param name="lat" type="text" size= "15" default="57.577674" label="YMAP_LAT" description="YMAP_LAT_D" />
<param name="lon" type="text" size= "15" default="39.831767" label="YMAP_LON" description="YMAP_LON_D" />
<param name="zoom" type="list" size= "2" default="10" label="YMAP_ZOOM" description="YMAP_ZOOM_D">
<option value="17">17</option>
<option value="16">16</option>
<option value="15">15</option>
<option value="14">14</option>
<option value="13">13</option>
<option value="12">12</option>
<option value="11">11</option>
<option value="10">10</option>
<option value="9">9</option>
<option value="8">8</option>
<option value="7">7</option>
<option value="6">6</option>
<option value="5">5</option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</param>
<param name="zoomType" type="radio" size= "5" default="Large" label="YMAP_ZOOMTYPE" description="YMAP_ZOOMTYPE_D">
<option value="Large">YMAP_ZOOMTYPE_N</option>
<option value="Small">YMAP_ZOOMTYPE_S</option>
<option value="None">YMAP_ZOOMTYPE_O</option>
</param>
<!-- <param name="zoomNew" type="radio" size= "1" default="0" label="Doubleclick and Continues zoom" description="Give the use doubleclick zoom and smooth zooming?">
<option value="1">Yes</option>
<option value="0">No</option>
</param>
<param name="zoomWheel" type="radio" size= "1" default="0" label="Mousewheel zoom" description="Zoom map with mousewheel?">
<option value="1">Yes</option>
<option value="0">No</option>
</param>-->
<param name="mapType" type="radio" size= "9" default="Normal" label="YMAP_MAPTYPE" description="YMAP_MAPTYPE">
<option value="Map">YMAP_MAPTYPE_S</option>
<option value="Satellite">YMAP_MAPTYPE_SP</option>
<option value="Hybrid">YMAP_MAPTYPE_G</option>
</param>
<param name="showMapType" type="radio" size= "1" default="1" label="YMAP_SHOWMAPTYPE" description="YMAP_SHOWMAPTYPE_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="showToolBar" type="radio" size= "1" default="0" label="YMAP_SHOWTOOLBAR" description="YMAP_SHOWTOOLBAR_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="showMiniMap" type="radio" size= "1" default="0" label="YMAP_SHOWMINIM" description="YMAP_SHOWMINIM_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="scrollZoom" type="radio" size= "1" default="1" label="YMAP_SCROLLZOOM" description="YMAP_SCROLLZOOM_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="dblClickZoom" type="radio" size= "1" default="1" label="YMAP_DBLCLIKZ" description="YMAP_DBLCLIKZ_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="@spacer" type="spacer" default="" label="YMAP_SPASER" description="YMAP_SPASER" />
<param name="placemark_enabled_0" type="radio" size= "1" default="1" label="YMAP_PLACEMARK" description="YMAP_PLACEMARK_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="placemark_lat_0" type="text" size= "15" default="57.577674" label="YMAP_LATPL" description="YMAP_LATPL_D" />
<param name="placemark_lon_0" type="text" size= "15" default="39.831767" label="YMAP_LONPL" description="YMAP_LONPL_D" />
<param name="placemark_content_0" type="text" default="Жми сюда!" label="YMAP_TEXT" description="YMAP_TEXT_D" />
<param name="placemark_open_0" type="radio" size= "1" default="1" label="YMAP_OPENM" description="YMAP_OPENM_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="placemark_ballon_0" type="textarea" rows="3" cols="30" default="<h3>Привет, Joomla пользователь<h3>" label="YMAP_CONT" description="YMAP_CONT_D" />
<param name="@spacer" type="spacer" default="" label="" description="" />
<param name="placemark_enabled_1" type="radio" size= "1" default="1" label="YMAP_PLACEMARK" description="YMAP_PLACEMARK_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="placemark_lat_1" type="text" size= "15" default="57.577674" label="YMAP_LATPL" description="YMAP_LATPL_D" />
<param name="placemark_lon_1" type="text" size= "15" default="39.831767" label="YMAP_LONPL" description="YMAP_LONPL_D" />
<param name="placemark_content_1" type="text" default="Жми сюда!" label="YMAP_TEXT" description="YMAP_TEXT_D" />
<param name="placemark_open_1" type="radio" size= "1" default="1" label="YMAP_OPENM" description="YMAP_OPENM_D">
<option value="1">YMAP_YES</option>
<option value="0">YMAP_NO</option>
</param>
<param name="placemark_ballon_1" type="textarea" rows="3" cols="30" default="<h3>Привет, Joomla пользователь<h3>" label="YMAP_CONT" description="YMAP_CONT_D" />
</params>
</install>