/************loader.js**********************/
/**** loads all the necessary files and ****/
/**** configuration of the application *****/
/**** (var) init_onload_fn:stores all the function names to be executed on load of the application ****/
var init _onload _fn = new Array ( ) ;
var admin = false ;
/**** (var) global_date_format:date time format for all the date time variables****/
var global _date _format = "dd/mm/yyyy" ;
var global _time _format = "hh:MM:ss" ;
// var installing=false;
const BASE _URL = 'https://msfd-test.hcmr.gr' ;
const REPO _URL = 'https://msfd-repo.ath.hcmr.gr' ;
/**** (function) fn_execOnloadFn:executes all the functions that are stored to the init_onload_fn variable****/
/**** 100 ms after loading the application *************************************************************/
function fn _execOnloadFn ( )
{
setTimeout ( function ( )
{
Ext . each ( init _onload _fn , function ( item )
{
if ( item ) {
item ( ) ;
}
} ) ;
} , 100 ) ;
}
/**** (function) fn_getParameterByName(arg name(String)):get url variables values****/
function fn _getParameterByName ( name )
{
name = name . replace ( /[\[]/ , "\\[" ) . replace ( /[\]]/ , "\\]" ) ;
var regex = new RegExp ( "[\\?&]" + name + "=([^&#]*)" ) ,
results = regex . exec ( location . search ) ;
return results === null ? "" : decodeURIComponent ( results [ 1 ] . replace ( /\+/g , " " ) ) ;
}
/**** (function) fn_setUrlParameter(arg url(String), key(String), value(String)):set url variables values****/
function fn _setUrlParameter ( url , key , value ) {
var key = encodeURIComponent ( key ) ,
value = encodeURIComponent ( value ) ;
var baseUrl = url . split ( '?' ) [ 0 ] ,
newParam = key + '=' + value ,
params = '?' + newParam ;
if ( url . split ( '?' ) [ 1 ] === undefined ) { // if there are no query strings, make urlQueryString empty
urlQueryString = '' ;
} else {
urlQueryString = '?' + url . split ( '?' ) [ 1 ] ;
}
// If the "search" string exists, then build params from it
if ( urlQueryString ) {
var updateRegex = new RegExp ( '([\?&])' + key + '[^&]*' ) ;
var removeRegex = new RegExp ( '([\?&])' + key + '=[^&;]+[&;]?' ) ;
if ( typeof value === 'undefined' || value === null || value === '' ) { // Remove param if value is empty
params = urlQueryString . replace ( removeRegex , "$1" ) ;
params = params . replace ( /[&;]$/ , "" ) ;
} else if ( urlQueryString . match ( updateRegex ) !== null ) { // If param exists already, update it
params = urlQueryString . replace ( updateRegex , "$1" + newParam ) ;
} else { // Otherwise, add it to end of query string
params = urlQueryString + '&' + newParam ;
}
}
// no parameter was set so we don't need the question mark
params = params === '?' ? '' : params ;
var newurl = baseUrl + params ;
window . history . pushState ( { path : newurl } , '' , newurl ) ;
return baseUrl + params ;
}
/**** (function) fn_host:get host name of the application****/
function fn _host ( )
{
var _scheme = window . location . protocol ;
var _host = window . location . host ;
var _path = window . location . pathname ;
var host = _scheme + "//" + _host + _path ;
host = host . replace ( /[^\/]*$/ , '' ) ;
return host ;
}
var host = fn _host ( ) ;
var languageBtn ;
var topBanner = host + "img/logos/logo.png" ;
var topRightBanner = "" ;
var configFile = "config_en.js" ;
var aboutFile = "About_GET_SDI_Portalv4_GR.pdf" ;
var manualFile = "GETSDIPortalv4_Help_GR_v1.0.pdf" ;
var languageFile = "el_en.js" ;
fn _getLanguageFile ( ) ;
/**** (function) fn_getLanguageFile:get the necessary files ****/
/**** (configuration, translations,banners) according to the ***/
/***************** language selected **************************/
function fn _getLanguageFile ( )
{
var lang = fn _getParameterByName ( "lang" ) ;
lang = lang . toLowerCase ( ) ;
switch ( lang )
{
default :
languageFile = "en_us.js" ;
topBanner = host + "img/logos/logo.png" ;
configFile = "config_en.js" ;
aboutFile = "About_GET_SDI_Portalv4_GR.pdf" ;
manualFile = "GETSDIPortalv4_Help_GR_v1.0.pdf" ;
languageBtn = {
xtype : "button" ,
id : "languageBtn" ,
iconCls : "en_us" ,
handler : function ( ) {
window . location = host + "?lang=EN" ;
}
} ;
break ;
}
}
/***(var) loader_script_urls: stores all the external js script urls to be included*****/
var loader _script _urls = [
"https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js" ,
// "https://cdnjs.cloudflare.com/ajax/libs/jsgrid/1.5.3/jsgrid.min.js",
"https://code.highcharts.com/stock/highstock.js" ,
"https://code.highcharts.com/stock/modules/data.js" ,
"https://code.highcharts.com/stock/modules/exporting.js" ,
"https://code.highcharts.com/stock/modules/export-data.js" ,
"https://unpkg.com/dexie/dist/dexie.js" ,
// "https://unpkg.com/gridjs/dist/gridjs.umd.js"
] ;
/***(var) loader_script_files: stores all the internal js script urls to be included*****/
var loader _script _files = [
// "js/tools/gridjs/gridjs.umd.js",
// "js/tools/moment/moment.js",
"js/tools/leaflet/leaflet.js" ,
"js/tools/leaflet/leaflet-geoman.min.js" ,
"js/tools/leaflet/L.TileLayer.BetterWMS.js" ,
"js/tools/leaflet/leaflet.legend.js" ,
"js/tools/leaflet/L.Control.Window.js" ,
"js/tools/leaflet/leaflet.markerpies.js" ,
"js/tools/leaflet/leaflet.slider.js" ,
"js/tools/pickletree/pickletree.js" ,
"js/tools/extjs/ext-all.js" ,
"js/tools/proj4js/lib/proj4js-combined.js" ,
"js/tools/OpenLayers/OpenLayers.2.13.2.full.js" ,
"js/tools/OpenLayers/OpenLayers_fix_error.js" ,
"js/tools/OpenLayers/lib/OpenLayers/Control/ScaleBar.js" ,
"js/tools/OpenLayers/lib/OpenLayers/Handler/Path.js" ,
"js/tools/OpenLayers/lib/OpenLayers/Layer/EsriGeoJSON.js" ,
"js/tools/utils/date.format.js" ,
"js/tools/bulma/bulma-calendar.min.js" ,
"js/tools/utils/moment-with-locales.js" ,
"js/language/" + languageFile ,
"js/functions.js" ,
"js/layers.js" ,
"js/extras.js" ,
"js/modal.js" ,
"js/maptab/lib/servicesFunctions.js" ,
"js/maptab/lib/layersFunctions.js" ,
"js/maptab/lib/attributesFunctions.js" ,
"js/maptab/lib/featureFunctions.js" ,
"js/constants.js" ,
"js/" + configFile ,
"js/sidebar.js" ,
"js/treeview.js" ,
"js/annual_fisheries.js" ,
"js/maptab/maptab_services_manager/wms.js" ,
"js/maptab/maptab_services_manager/csw.js" ,
"js/maptab/maptab_services_manager.js" ,
"js/maptab/maptab_toolbar_general/map_controls_featureInfo.js" ,
"js/modules/charts/charts.js" ,
"js/metadatatab/metadatatab_west_form_panel.js" ,
"js/metadatatab/metadatatab_toolbar_general.js" ,
"js/metadatatab.js" ,
"js/metadatatab/metadatatab_map.js" ,
"js/config_functions.js" ,
"js/modules/layersmetadata/layersmetadata.js" ,
"js/modules/poseidon/poseidon.js" ,
"js/modules/configuration/configuration.js" ,
"js/mru-info.js" ,
"js/more-info.js" ,
"js/view-admin.js"
] ;
/***(var) loader_css_files: stores all the internal css (styles) urls to be included*****/
var loader _css _files = [
"js/tools/extjs/resources/css/ext-all.css" ,
"css/mermaid.min.css" ,
"css/style.css" ,
"css/leaflet.css" ,
"css/L.Control.Window.css" ,
"css/bulma-calendar.min.css"
] ;
/***(function) init_loader_files: appends all the script and css files to the header****/
/*** of the application: loader_script_urls, loader_script_files, loader_css_files *****/
function init _loader _files ( )
{
var URLscriptTags = new Array ( loader _script _urls . length ) ;
for ( var i = 0 , len = loader _script _urls . length ; i < len ; i ++ ) {
URLscriptTags [ i ] = "<script src='" + loader _script _urls [ i ] + "'></script>" ;
}
if ( URLscriptTags . length > 0 ) {
document . write ( URLscriptTags . join ( "" ) ) ;
}
var cssTags = new Array ( loader _css _files . length ) ;
for ( var i = 0 , len = loader _css _files . length ; i < len ; i ++ ) {
cssTags [ i ] = "<link rel='stylesheet' type='text/css' href='" + host + loader _css _files [ i ] + "' />" ;
}
if ( cssTags . length > 0 ) {
document . write ( cssTags . join ( "" ) ) ;
}
var scriptTags = new Array ( loader _script _files . length ) ;
for ( var i = 0 , len = loader _script _files . length ; i < len ; i ++ ) {
scriptTags [ i ] = "<script type='text/javascript' src='" + host + loader _script _files [ i ] + "'></script>" ;
}
if ( scriptTags . length > 0 ) {
document . write ( scriptTags . join ( "" ) ) ;
}
}
/**executes the init_loader_files function**/
init _loader _files ( ) ;
const BBOX = [ 5059029.5 , 1282860.0 , 6172886.0 , 2126159.0 ] ;
alert ( 'Because the web application is still under development, before using, please refresh your browser in order to use the latest interface by pressing: <Ctrl> + <F5> OR <Ctrl> + <Shift> + R' ) ;