Орла
Области
Компаний
Пользователи
Галерея
Фиксированные новости
Орла
Отзывы о фирмах
Тарифы
Пользователи
Области
Банкоматы
Торговые точки
Доска объявлений
Курсы валют
Скидки
организации Орла
организации области
товары
сайты
сайты Орел
Данные
Разделы
Поиск
Поиск запросы
Статистика
Показы каталога организаций
Статистика клиенты
Пользователи
Сайты
Управление сайтом
Анкета
Аптеки
Афиша
Афиша новая
Баннеры
Бизнес >
Викторина
Голосование
Гость на сайте
Истории
Календарь событий
Каталоги >
Конкурс красоты
Конкурс аудио
Консультации
Меню
Новое на сайте
Новости >
Организации >
Программа ТВ
Публикации
Разделы сайта
Рассылка
Рестораны
Секрет фирмы >
Сервисы >
Ссылки
Тесты
Файловый менеджер
Форум
Фотогалерея
Обратная связь
Недвижимость
Новый год
Тексты
Пользователи
Юридический рейтинг
Отзывы на товары
Бан пользователей
Жалобы
Новые тесты
Коронавирус
Файловый менеджер
Имя файла
OrganizationListApp.js
Содержимое
/** * Ртот РєРѕРґ отвечает Р·Р° СЃРїРёСЃРѕРє организаций. * Р’ частности, этот РєРѕРґ может показывать РјРёРЅРё карту РїСЂРё клике РїРѕ адресу. */ new Vue({ el: '#vue-organization-list-app', data: { /** * активный элемент (span, div, a), РїРѕ которому кликнули Рё который выступает * РІ роли контейнера для popover'a */ $activeElement: null, /** * Р’ этой переменной будет true, если popover открыт Рё false, если закрыт */ popoverOpened: false }, methods: { /** * ФУнкция привязывает Placemark Рє карте * @param map * @param lat * @param lng * @param ballonContent */ attachPlacemark: function(map, lat, lng, ballonContent) { var placemark = new ymaps.Placemark( [lat, lng], { balloonContent: ballonContent }, { hideIconOnBallon: false } ); map.geoObjects.add(placemark); map.setCenter([lat, lng]); map.setZoom(14); }, getScreenWidth: function() { var ratio = window.devicePixelRatio || 1; return screen.width * ratio; }, /** * Событие возникает, РєРѕРіРґР° кликаем РїРѕ адресу, чтобы показать карту * @param organizationId */ onShowAddressOnMapHandler: function(organizationId) { var vm = this; var $container = $('.js-organization-item-address-popper-' + organizationId); if ($container.length === 0) { return; } // уничтожим РІСЃРµ РґСЂСѓРіРёРµ попперы $('.js-organization-item-address-popper').each(function() { if (typeof $(this).popover !== 'undefined') { $(this).popover('dispose'); } }); $container.popover({ placement: screen.width < vm.getScreenWidth() ? 'bottom' : 'right', container: 'body', height: 200, html: true, content: function () { return '<div style="height:400px;width:'+ (vm.getPoperWidth()-3) + 'px; box-sizing: border-box" id="jq-address-item-map-container-' + organizationId + '"></div>'; } },{ modifiers: { preventOverflow: { padding: 0 }, flip: { padding: 0 } }, }).on('shown.bs.popover', function() { vm.popoverOpened = true; // инициализируем карту РІ контейнере setTimeout(function() { ymaps.ready(function() { var map = new ymaps.Map('jq-address-item-map-container-' + organizationId, { center: [52.96,36.06], zoom: 10, controls: [] }); // получим баллун axios.get('/ajax/organizations/placemark.php', { params: { id: organizationId } }).then(function(response) { response = response.data; if (response.success === false) { return; } vm.attachPlacemark(map, response.data.lat, response.data.lng, response.data.template); }); }); }, 300); }); $container.popover('toggle'); $('.popover-body').css('padding', '1px'); $('.popover') .css('max-width', vm.getPoperWidth() + 'px') .css('box-shadow', 'rgba(0, 0, 0, 0.2) 0px 0px 88px 0px'); vm.$activeElement = $container; }, getPoperWidth: function() { if (screen.width > 1100) { return 450; } else { return screen.width - 10; } } }, /** * Р’ этом блоке находится РєРѕРґ, который выполняется РїСЂРё клике РїРѕ документу * Его задача - скрыть блок popovera, если РјС‹ кликнули РІРЅРµ контейнера. */ mounted: function() { var vm = this; document.addEventListener('click', function(e) { if (vm.$activeElement === null || vm.$activeElement === undefined) { return; } var $popover = $('.popover'); if ($popover[0].contains(e.target) === false && vm.popoverOpened === true) { vm.$activeElement.popover('dispose'); vm.popoverOpened = false; } }); } });
/js/2.0/organizations/
Имя
Дата
Размер
..
2026-05-25
MapListApp.js
2026-05-25
4 кб.
MapListApp.js~
2019-02-15
4 кб.
OrganizationApp.js
2019-02-11
5 кб.
OrganizationAppMap.js
2026-05-25
2 кб.
OrganizationAppMap.js~
2020-05-13
2 кб.
OrganizationListApp.js
2019-02-14
5 кб.
OrganizationListAppMap.js
2018-01-16
5 кб.
OrganizationSearch.js
2019-02-15
2 кб.
/js/2.0/organizations
Загрузить файлы
Файл 1
Файл 2
Файл 3