![Image Alt Text](./hcmr-logo-mini.jpg?raw=true)(https://www.hcmr.gr)
![Image Alt Text](./msfd-logo-mini.jpg?raw=true)(https://msfd-portal.hcmr.gr)
# HCMR MSFD PORTAL
## ABOUT
The aim of the EU Marine Strategy Framework Directive 2008/56/EC, (MSFD), is to protect the marine environment across Europe. The MSFD was adopted in June 2008 and is the environmental component of Europe’s Integrated Maritime Policy.
The directive sets a target of “Good Environmental Status” which must be achieved in EU marine waters by 2020. Below is a timeline for the directive. Following the first cycle of management which ends in 2020, new programmes of measures will be set on a six yearly basis.
**HCMR MSFD PORTAL**, is a web mapping application providing a comprehensive platform for viewing, downloading, analyzing, querying, editing and styling data originating from multiple geospatial sources. It constitutes a simple and ready to deploy solution for any organization who wants to setup a Geoportal based on **ISO/OGC** Standards.
**HCMR MSFD PORTAL** has been developed in order to support the implementation of the **Infrastructure for Spatial Information for Europe (INSPIRE) Directive (2007/2/EC)**, as well as to serve needs of organizations targeting to share their geospatial resources. Its modular architecture allows implementing widgets for the realization of specific functionalities, integrated smoothly in a configurable and easy to use web application.
## TL; DR;
This platform has been developed by HCMR to aggregate and host all of the data that come from oceanographic sources. It includes restricted and non restricted data, products and GES (Good Environmental Status) indexes
## Requirements
HTTPS Web Server with PHP>=7.4.0
AlpineJS
NodeJS
Modern browser
Composer
## Installation
1. Copy the folder inside to your web server
2. Enable php_curl, php_xsl, php_gd2 extensions in the php.ini file
3. Run npm run build
3. Restart your web server
## Configuration
* If the project involves a local data repository, the **MSFD Repo API** should also be installed and connected
* Other external APIs can be connected by extending the API class in Services folder
# Working with the portal
## Interface structure
The web app portal is divided into three main parts. The top tabs, the sidebar tools and the main view. Top bar contains the map view which is the primary workspace, the metadata view which is the metadata search engine, the user manual view which contains the documentation and the user panel from where you may configure the application or the user profile.
## Map view
### sidebar
Sidebar consists of three tabs. First tab has the layer control tools from where the user may choose which layers he/she wants to show on the map or choose any extra actions from the context menu such as layer download or check citation.
The advanced search tool exists to make a more thorough search on data by defining more parameters than single entity search
The requests tool contains every request that the user submitted. When the request is complete, status changes to ready and the user is able to download the requested data. If the status contains an asterisk, the request contains restricted data for which the user has to contact the Institute by sending the request UUID to get a response about the data receival and License rules.
# Database
## Geospatial Schema
* Contains geoserver layer spatial data
## Metadata Schema
* foundation of all of the schema is the *submissions* table.
* Station References table contains all of the stations that are known of their position / working status / category and code name, to be used as references for each of the sampling actions.
* every table that contains the `station` suffix, contains a sampling action at a specific station for the corresponding data type
## Rawdata Schema
* Only for data that are direct subject of the Institute (no external data)
* Contains one table with raw data for every submission type
* Each raw data table may be of different structure, except two columns that are mandatory and the same in every table:
- Station id ( id that points to the `_stations` table that tells where the sampling took place)
- Value ( the raw data value for a specific parameter)
- Parameter id (id that points to the parameter table that tells which parameter is being measured, with what P01 code, P06 units and alias description)
* Related with the metadata schema
## Webapp Schema
* Includes configuration for the web portal (personal or global)
* Includes user table for login authentication
* Includes Groups table that is used to assign roles
### Directives
* each table corresponds to a specific data source for a specific date window
* the naming of the mentioned tables should be in format `_[extra_info_or_index]`
where:
`source_type`: cruise/beach_litter/ngo/argo/cetacean
`extra_info_or_index`: an iteration index such as an int, month or year that separates data for any reason
## CREDITS
The software has been developed on behalf of the Hellenic Center of Marine Research and is defined by a free and open source MIT License
Head of Department:
- Angelos Lykiardopoulos (angelo@hcmr.gr)
Researchers/Data Providing and preprocess:
- Sissy Iona (sissy@hcmr.gr)
- Paraskevi Drakopoulou (vivi@hcmr.gr)
- Valia Loukaidi (vloukaidi@hcmr.gr)
Fullstack Software Engineer/Oceanographer:
- Orestis Moresis (o.moresis@hcmr.gr)
Database Administrator:
- Vasilis Lakes (vaslak@hcmr.gr)
Infrastructure:
- Constantine Kalkavouras (ckalkav@hcmr.gr)
- Mihalis Iordanis (iordanism@hcmr.gr)