sasgis 3 лет назад
Родитель
Сommit
6a6886a308
8 измененных файлов: 96 добавлений и 84 удалений
  1. +23
    -19
      Navionics/navionics.SonarChart.layer.zmp/GetUrlScript.txt
  2. +1
    -2
      Navionics/navionics.SonarChart.layer.zmp/params.txt
  3. +23
    -19
      Navionics/navionics.SonarChart.zmp/GetUrlScript.txt
  4. +1
    -2
      Navionics/navionics.SonarChart.zmp/params.txt
  5. +23
    -19
      Navionics/navionics.layer.zmp/GetUrlScript.txt
  6. +1
    -2
      Navionics/navionics.layer.zmp/params.txt
  7. +23
    -19
      Navionics/navionics.zmp/GetUrlScript.txt
  8. +1
    -2
      Navionics/navionics.zmp/params.txt

+ 23
- 19
Navionics/navionics.SonarChart.layer.zmp/GetUrlScript.txt Просмотреть файл

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_1&TRANSPARENT=TRUE&theme=0';
cReqParams = 'transparent=true&ugc=true&layer=1&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.SonarChart.layer.zmp/params.txt Просмотреть файл

@@ -5,7 +5,7 @@ ParentSubMenu_ru=Водные карты
ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
asLayer=1
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics_sonarchart_layer
Ext=.png
@@ -14,4 +14,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

+ 23
- 19
Navionics/navionics.SonarChart.zmp/GetUrlScript.txt Просмотреть файл

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_1&TRANSPARENT=FALSE&theme=0';
cReqParams = 'transparent=false&ugc=true&layer=1&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.SonarChart.zmp/params.txt Просмотреть файл

@@ -4,7 +4,7 @@ name=Navionics SonarChart(TM)
ParentSubMenu_ru=Водные карты
ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics_sonarchart
Ext=.png
@@ -13,4 +13,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

+ 23
- 19
Navionics/navionics.layer.zmp/GetUrlScript.txt Просмотреть файл

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_0&TRANSPARENT=TRUE&theme=0';
cReqParams = 'transparent=true&ugc=true&layer=0&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.layer.zmp/params.txt Просмотреть файл

@@ -5,7 +5,7 @@ ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
name=Navionics Marine Charts
asLayer=1
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics_layer
Ext=.png
@@ -14,4 +14,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

+ 23
- 19
Navionics/navionics.zmp/GetUrlScript.txt Просмотреть файл

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_0&TRANSPARENT=FALSE&theme=0';
cReqParams = 'transparent=false&ugc=true&layer=0&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.zmp/params.txt Просмотреть файл

@@ -4,7 +4,7 @@ name=Navionics Marine Charts
ParentSubMenu_ru=Водные карты
ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics
Ext=.png
@@ -13,4 +13,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

Загрузка…
Отмена
Сохранить