示例#1
0
{
	$res = json_decode(str_replace("'", '"', $_COOKIE['map_settings']), true);
	$coords = explode(',', $res['center']);
	$arParams['INIT_MAP_LON'] = (float) $coords[0];
	$arParams['INIT_MAP_LAT'] = (float) $coords[1];
	$arParams['INIT_MAP_SCALE'] = (int) $res['zoom'];
}
else
{
	if($_SERVER['HTTP_X_FORWARDED_FOR'])
	{
		$forwarded_for = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
		$forwarded_for = $forwarded_for[0];
	}
	
	list($arParams['INIT_MAP_LAT'], $arParams['INIT_MAP_LON']) = array_values(CGreensightGeoip::GetCoordinatesByIP($forwarded_for ? $forwarded_for : $_SERVER['REMOTE_ADDR']));
	
	/// Массив данных масштаба и положения карты
	if(!$arParams['INIT_MAP_LAT'] || !$arParams['INIT_MAP_LON'])
	{
		$arParams['INIT_MAP_LON'] = floatval($arParams['INIT_MAP_LON']);
		$arParams['INIT_MAP_LON'] = $arParams['INIT_MAP_LON'] ? $arParams['INIT_MAP_LON'] : 37.64;
		$arParams['INIT_MAP_LAT'] = floatval($arParams['INIT_MAP_LAT']);
		$arParams['INIT_MAP_LAT'] = $arParams['INIT_MAP_LAT'] ? $arParams['INIT_MAP_LAT'] : 55.76;
	}
	$arParams['INIT_MAP_SCALE'] = intval($arParams['INIT_MAP_SCALE']);
	$arParams['INIT_MAP_SCALE'] = $arParams['INIT_MAP_SCALE'] ? $arParams['INIT_MAP_SCALE'] : 10;
}

$arResult['ALL_MAP_TYPES'] = array('MAP', 'SATELLITE', 'HYBRID');
$arResult['ALL_MAP_OPTIONS'] = array('ENABLE_SCROLL_ZOOM' => 'ScrollZoom', 'ENABLE_DBLCLICK_ZOOM' => 'DblClickZoom', 'ENABLE_DRAGGING' => 'Dragging', 'ENABLE_HOTKEYS' => 'HotKeys', 'ENABLE_RULER' => 'Ruler');
示例#2
0
// если hole_id есть, то, значит, редактирование или удаление ямы
if ($hole_id > 0) {
    $arElement = C1234Hole::GetById($hole_id);
}
// проверка доступа
if ($hole_id && $arElement['USER_ID'] != $USER->GetID() && !$USER->IsAdmin()) {
    ShowError(GetMessage('ACCESS_DENIED'));
    return;
}
// координаты точек и центра карты
if (!$hole_id) {
    if ($_SERVER['HTTP_X_FORWARDED_FOR']) {
        $forwarded_for = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
        $forwarded_for = $forwarded_for[0];
    }
    $arResult['map_center'] = CGreensightGeoip::GetCoordinatesByIP($forwarded_for ? $forwarded_for : $_SERVER['REMOTE_ADDR']);
    if (!$arResult['map_center']) {
        $map_center = strlen($arResult['HOLE']['~COORDINATES_R'] > 2) ? $arResult['HOLE']['~COORDINATES_R'] : false;
        if (!$map_center && $arResult['PLACEMARKS']) {
            $map_center = array();
            foreach ($arResult['PLACEMARKS'] as &$p) {
                $map_center[0] += $p['LON'];
                $map_center[1] += $p['LAT'];
            }
            $map_center = $map_center[0] / sizeof($arResult['PLACEMARKS']) . ',' . $map_center[1] / sizeof($arResult['PLACEMARKS']);
        }
        $arResult['map_center'] = $map_center;
    } else {
        $arResult['map_center'] = $arResult['map_center']['longitude'] . ',' . $arResult['map_center']['latitude'];
    }
    if ($_REQUEST['coord']) {