Skip to content

Commit

Permalink
Fix route_to link (#572)
Browse files Browse the repository at this point in the history
* Fix route to link

* Fix map coords

* Fix tests

* Return map center in pp url
  • Loading branch information
kalyanov authored Apr 2, 2024
1 parent 0347a57 commit d7352ae
Show file tree
Hide file tree
Showing 8 changed files with 45 additions and 17 deletions.
2 changes: 1 addition & 1 deletion config.main.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

"trafficLayerMinZoom": 10,
"trafficLayerUpdateInterval": 300000,
"ppLink2gis": "{gislink}/directions/tab/{rsType}/points/{point}?m={center}%2F{zoom}&routeLink=true",
"ppLink2gis": "{gislink}/directions/tab/{rsType}/points/|{point}?m={center}%2F{zoom}&routeLink=true",
"openLink2gis": "{gislink}/?m={center}%2F{zoom}&openLink=true",
"ppnotLink": "http://2gis.{domain}/{projectCode}/center/{center}/zoom/{zoom}/routeTab/rsType/{rsType}/to/{point}╎{name}",
"photosLink": "http://2gis.{domain}/photos/{id}",
Expand Down
13 changes: 13 additions & 0 deletions src/DGAttribution/src/DGAttribution.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
/**
* Компонент отвечающий за копирайт на карте. В нем выводяться различные ссылки плюс логотип или кнопка.
*
* 1. Если в опциях карты передан logotype: true то будет логотип 2GIS
* 2. Если на карте нет маркеров, то будет кнопка "Открыть в 2ГИС" и ссылка на 2ГИС (openLink2gis config.main.json)
* 3. Если на карте есть 1 маркер, то будет кнопка "Доехать с 2ГИС" и ссылка на 2ГИС с параметрами для построения маршрута до этого маркера (ppLink2gis config.main.json)
*
* Компонент подписывается на события добавления и удаления слоев в карте, метод _mapEvents).
* Если добавляется/удаляется маркер, то он добавляется/удаляется в массив _markers,
* а затем первый маркер из этого массива сохраняется в _markerToRoute.
* Поиск проезда будет предлагаться до маркера _markerToRoute.
*/

DG.Control.Attribution.include(DG.Locale);
DG.Control.Attribution.Dictionary = {};
DG.Control.Attribution.include({
Expand Down
8 changes: 5 additions & 3 deletions src/DGCustomization/test/DGMapSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -92,11 +92,13 @@ describe('DGMap', function () {

describe('#getBoundsZoom', function () {
it('should return 16', function () {
var sw = DG.latLng(54.97369439559682, 80.59043041467668),
ne = DG.latLng(54.97441793550156, 80.59262982606889),
// тут должен быть баунд территории, которая не содержить проекта,
// при этом такой, что при призуме к нему будет зум > 16
var sw = DG.latLng(67.521706581271, 97.5729274749756),
ne = DG.latLng(67.52332271114147, 97.57734775543214),
b = DG.latLngBounds(sw, ne);

expect(map.getBoundsZoom(b)).to.be(16);
expect(map.getBoundsZoom(b)).to.be(16); // 16 - это максимальный зум карты в месте где нет проекта
});
});
});
2 changes: 1 addition & 1 deletion src/DGGeoclicker/test/GeoclickerSpec.js

Large diffs are not rendered by default.

9 changes: 6 additions & 3 deletions src/DGProjectDetector/test/ProjectDetectorInSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,14 @@ describe('DG.ProjectDetectorIn', function () {
mapContainer = document.createElement('div');

start = new DG.LatLng(54.98117239821992, 82.88922250270844);

// Где-то где есть проект
project1 = new DG.LatLng(54.97902673261798, 82.819265127182);
project2 = new DG.LatLng(54.98620210307464, 73.41429233551025);

desert1 = new DG.LatLng(56.97, 81.00);
desert2 = new DG.LatLng(54.49, 79.66);
// Где-то в лесу, там где нет проекта
desert1 = new DG.LatLng(59.56, 86.32);
desert2 = new DG.LatLng(65.38, 87.39);

document.body.appendChild(mapContainer);
mapContainer.style.width = 1900 + 'px';
Expand Down Expand Up @@ -165,7 +168,7 @@ describe('DG.ProjectDetectorIn', function () {
map.setView(project1, 17);

expect(map.setZoomAround(project2, maxZoom)).to.be(map);
expect(map.getZoom()).to.be(maxDesertZoom);
expect(map.getZoom()).to.be(maxZoom);
});

it('zoom in the project', function () {
Expand Down
9 changes: 7 additions & 2 deletions src/DGProjectDetector/test/ProjectDetectorInitSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,13 @@ describe('DG.ProjectDetectorInit', function () {

before(function () {
mapContainer = document.createElement('div');
project1 = new DG.LatLng(55.00, 83.00);
desert1 = new DG.LatLng(55.00, 80.00);

// Где-то где есть проект
project1 = new DG.LatLng(54.97902673261798, 82.819265127182);

// Где-то в лесу, там где нет проекта
desert1 = new DG.LatLng(59.56, 86.32);

document.body.appendChild(mapContainer);
mapContainer.style.width = 1900 + 'px';
mapContainer.style.height = 600 + 'px';
Expand Down
9 changes: 6 additions & 3 deletions src/DGProjectDetector/test/ProjectDetectorOutOfWorldSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,14 @@ describe('DG.ProjectDetectorOut', function () {
mapContainer = document.createElement('div');

start = new DG.LatLng(54.98117239821992, 360 + 82.88922250270844);

// Где-то где есть проект
project1 = new DG.LatLng(54.97902673261798, 360 + 82.819265127182);
project2 = new DG.LatLng(54.98620210307464, 360 + 73.41429233551025);

desert1 = new DG.LatLng(55.00, 360 + 80.00);
desert2 = new DG.LatLng(61.00, 360 + 90.00);
// Где-то в лесу, там где нет проекта
desert1 = new DG.LatLng(59.56, 360 + 86.32);
desert2 = new DG.LatLng(65.38, 360 + 87.39);

document.body.appendChild(mapContainer);
mapContainer.style.width = 1900 + 'px';
Expand Down Expand Up @@ -165,7 +168,7 @@ describe('DG.ProjectDetectorOut', function () {
map.setView(project1, 17);

expect(map.setZoomAround(project2, maxZoom)).to.be(map);
expect(map.getZoom()).to.be(maxDesertZoom);
expect(map.getZoom()).to.be(maxZoom);
});

it('zoom in the project', function () {
Expand Down
10 changes: 6 additions & 4 deletions src/DGProjectDetector/test/ProjectDetectorUnderSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,14 @@ describe('DG.ProjectDetectorUnder', function () {
mapContainer = document.createElement('div');

start = new DG.LatLng(54.98117239821992, 82.88922250270844);

// Где-то где есть проект
project1 = new DG.LatLng(54.97902673261798, 82.819265127182);
project2 = new DG.LatLng(54.98620210307464, 73.41429233551025);

desert1 = new DG.LatLng(55.00, 80.00);
desert2 = new DG.LatLng(61.00, 90.00);
// Где-то в лесу, там где нет проекта
desert1 = new DG.LatLng(59.56, 86.32);
desert2 = new DG.LatLng(65.38, 87.39);

document.body.appendChild(mapContainer);
mapContainer.style.width = 1900 + 'px';
Expand Down Expand Up @@ -165,7 +168,7 @@ describe('DG.ProjectDetectorUnder', function () {
map.setView(project1, 17);

expect(map.setZoomAround(project2, maxZoom)).to.be(map);
expect(map.getZoom()).to.be(maxDesertZoom);
expect(map.getZoom()).to.be(maxZoom);
});

it('zoom in the project', function () {
Expand Down Expand Up @@ -393,7 +396,6 @@ describe('DG.ProjectDetectorUnder', function () {
});

describe('#isProjectHere', function () {

it('without params', function () {
expect(map.projectDetector.isProjectHere()).to.not.be.ok();
});
Expand Down

0 comments on commit d7352ae

Please sign in to comment.