MediaWiki:Common.js — различия между версиями

Материал из Энциклопедия фонда «Хайазг»
Перейти к: навигация, поиск
Строка 4: Строка 4:
 
function ymGeocod(val, val2, val3, val4)
 
function ymGeocod(val, val2, val3, val4)
 
{
 
{
 +
  /*
 +
    val -адрес
 +
    val2-картинка
 +
    val3-статус объекта
 +
    val4-название объекта
 +
  */
 
   var re= /\s/g
 
   var re= /\s/g
 +
  //преобразование названия для использоваиня в ссылке
 
   ref = val4.replace(re,'_');
 
   ref = val4.replace(re,'_');
 
   //создание переменной для содержимого балуна
 
   //создание переменной для содержимого балуна
   var tmp_bcont = val2 +'<br>'+ val4 +'<br>' + val3 +'<br>' +'<a href=http://draft.hayazg.info/'+ref+'>Перейти к объекту</a>';
+
   var tmp_bcont = val2 +'<br>'+ val4 +'<br>' + val3 +'<br>' +'<a href=http://draft.hayazg.info/'+ref+'>Подробнее</a>';
 
   //создание переменной для геокодинга
 
   //создание переменной для геокодинга
 
   var mygeocod = ymaps.geocode(val, {results:1});
 
   var mygeocod = ymaps.geocode(val, {results:1});
Строка 32: Строка 39:
 
     )
 
     )
 
}
 
}
function reger(reger)
 
{//alert("reger func");
 
//var str= reger;
 
//alert(str);
 
var str= reger.toString();
 
//alert(str);
 
//var reg = new RegExp("","g");
 
//var reg = /\/n/gi;
 
//var reg = /\n/gi;
 
//var res = str.replace(reg, "\ ");
 
//alert(res);
 
//return res = str.replace(reg, "\ ");
 
//return res = str.replace(/\\n/, "\ ");
 
//var res= str.replace(reg, '\\');
 
//var res = str;
 
//alert(res);
 
return str;
 
}
 
// // Удаление всех меток с карты
 
// function ymDeleteMarker () {
 
//  // Удаляем все  метки из кластера
 
//  cluster.removeAll();
 
//  // Удаляем кластер с карты
 
//  myMap.geoObjects.remove(cluster);
 
// }
 
 
//центральная функция             
 
//центральная функция             
 
function ymInit(S_all)
 
function ymInit(S_all)
 
{
 
{
//массив адресов
 
//ar= adresses;
 
//массив данных об адресах
 
//ar2 = about;
 
 
   // Создаем кластеризатор со стандартными иконками
 
   // Создаем кластеризатор со стандартными иконками
 
   cluster = new ymaps.Clusterer();//{clusterIcons : clusterIcons});
 
   cluster = new ymaps.Clusterer();//{clusterIcons : clusterIcons});

Версия 07:14, 8 июня 2012

/* Размещённый здесь JavaScript код будет загружаться всем пользователям при обращении к каждой странице */
//получает адреса, обрабатывает и отображает точки на карте

function ymGeocod(val, val2, val3, val4)
{
  /*
    val -адрес
    val2-картинка
    val3-статус объекта
    val4-название объекта
  */
  var re= /\s/g
  //преобразование названия для использоваиня в ссылке
  ref = val4.replace(re,'_');
  //создание переменной для содержимого балуна
  var tmp_bcont = val2 +'<br>'+ val4 +'<br>' + val3 +'<br>' +'<a href=http://draft.hayazg.info/'+ref+'>Подробнее</a>';
  //создание переменной для геокодинга
  var mygeocod = ymaps.geocode(val, {results:1});
  //после обработки делаем функцию...
    mygeocod.then(
      function(res){
        if(res.geoObjects.getLength()) {
          //координаты точки для маркера
          var point = res.geoObjects.get(0).geometry.getCoordinates();
          //plac- маркер с контентом, его передать в кластерер
          var plac = new ymaps.Placemark
            (point, 
              {balloonContent: tmp_bcont },
              {//здесь параметры картинок для маркеров
              /*iconImageHref:'plac.png', iconImageSize: [50,42]*/
              }
            );
          //добавление маркеров в кластерер
          cluster.add(plac);    
          //отображение кластерера на карте
          myMap.geoObjects.add(cluster);
        }
      }
    )
}
//центральная функция             
function ymInit(S_all)
{
  // Создаем кластеризатор со стандартными иконками
  cluster = new ymaps.Clusterer();//{clusterIcons : clusterIcons});
  //создание кластеризатора с пользовательскими иконками
  //cluster = new ymaps.Clusterer({clusterIcons : clusterIcons});

  // Создание экземпляра карты myMap и его привязка к контейнеру с
  //  заданным id ("map")
  myMap = new ymaps.Map('map', {
    center: [47.23,39.73],
    zoom: 10,
  });
  
  //добавление инструментов для просмотра
  myMap.controls
  // Кнопка изменения масштаба
  .add('zoomControl')
  // Список типов карты
  .add('typeSelector')
  // Стандартный набор кнопок
  .add('mapTools');
  //скролл колесиком
  myMap.behaviors.enable('scrollZoom');

//обработка входящей информации
/*
  A_all[i][0]-картинка
  A_all[i][1]-адрес
  A_all[i][2]-доп инфа.
  A_all[i][3]-название здания-памятника
*/
S_all=S_all.toString();
    A_all=S_all.split('‼');
  for (var i=0;i<A_all.length; i++)
    {A_all[i]=A_all[i].split('|');}
  
  //последовательный геокодинг и добавление адресов на карту в кластере
  for (var i=0; i < A_all.length; i++)
    { 
      if (A_all[i][2]==null){continue;}
        else{
              ymGeocod(A_all[i][1], A_all[i][0], A_all[i][2], A_all[i][3]);
            }
    }
}