Skip to content
Snippets Groups Projects
Commit ef88b6a7 authored by FORESTIER Fabien's avatar FORESTIER Fabien
Browse files

Add doc for changelog and contact pages

parent 4a1cfa69
No related branches found
No related tags found
2 merge requests!14Doc webapp,!13Doc webapp
# Changelog
In order to keep our users updated with the latest features developped and bugs that have been fixed, we implemented a changelog feature.
The component retrieves from the dedicated [service](../../services/changelog.md) the changelog of each released version from the most recent to the oldest.
Each changelog being available both in French and English, the component only displays the ones matching the current language of the application.
# Contact
The contact page allow a user to contact the support team through the [email](../../services/mailer.md) service.
When a user is not logged in, he/she will need to fill some personal information (firstname, lastname, email) in order for the support team to be able to reply. In the case he/she is logged in the information will already be completed.
The user can select a subject from a predefined list but can also enter un custom one.
The component has been developped to read a `subject` query parameter from the current url. If one exists the component sets the `subject` value of the form with the value of the query parameter. This is the way we implemented the `Contact us` feature on the info page of a dataset detail. Indeed, when one clicks the button, he/she is redirected to the contact page where the `subject` is the name of the dataset that was beeing consulted.
In order to submit the contact form, the user has to accept the general term of use and the processing of the information by checking the dedicated box at the bottom of the form.
......@@ -13,56 +13,23 @@ Here is our `/src` folder structure:
* `dataset-details/`: contains the components and logic allowing the display of a dataset information (metadata, data, map...)
* `datasets/`: contains the components and some of the logic related to the research
* `editorialisation/`: contains the components and logic related to the display of editorial content (static pages, articles)
* `elasticsearch/`:
* `elasticsearch/`: provides an interface to the elasticsearch service and contains all the logic needed to access the data indexed in elasticsearch (data sets, pages, articles)
* `map/`: contains the components and logic allowing the display and manipulation of a map
* `shared/`: provides components, directives and others things that can be reused in different modules
* `shared/`: provides components, directives and others things that can be reused in any module of the application
* `user/`: contains the components and logic related to the user management in the application (login, logout, user profil...)
* `src/assets/`: contains all the images, favicon, svg, fonts, dynamic config file...
* `src/environments/`: contains files with static configuration.
* `src/i18n/`: this folder is dedicated to the translation. The are two types of files:
* `.xlf`:
* `.ts`:
* `src/scss/`:
* `src/app-routing.module.ts`:
* `src/app.component(.ts, .html, .scss)`:
* `src/app.module.ts`:
* `src/routes.ts`:
Each module is organized in the following way: (not all the subfolders are required)
* `<module-name>.module.ts`:
* `<module-name>-routing.module.ts`:
* `components/`:
* `directives/`:
* `guards/`:
* `handlers/`:
* `interceptors/`:
* `models/`:
* `pipes/`:
* `resolvers/`:
* `services/`:
* `validators/`:
Inside one module each component has its own folder with one `.ts`, one `.scss` and one `html` file.
* `.xlf`: for static texts written in html files
* `.ts`: for dynamic texts retrieved by HTTP calls
* `src/scss/`: contains the main stylesheets of the application
* `src/routes.ts`: contains the translation of the different url fragments of all the application
## CSS integration with Bulma
All the styling work has been done with [Bulma](https://bulma.io/), a free and open source CSS framework based on Flexbox.
It is highlighy customizable and easy to integrate in a project.
To do so, a `variables.scss` file that contains our project variables, overrides the Bulma variables (color, padding, anything you want). Then Bulma is imported and added to our main `style.scss`. That's it, our style incorporate a personalized Bulma .
## Research features
This core feature is based on [Elasticsearch](https://www.elastic.co/fr/) (ES). Almost all the information in the portal (including datasets, articles, geographical data) is indexed in ES. This allows lot's of possibilities with the powerful features of this tool.
Here are the features existing on the portal:
* *research*: thanks to ES great indexation, to go through millions of documents is super fast (millions because we are not only looking inside the metadata, but also inside the data)
* *autocompletion*: using the score based on some criteria, we provides an autocompletion feature that helps to give a context for some research keywords.
* *suggestion*: if a research didn't give good or no results (for example because of a typo), a word with more results will be suggested.
Of course there is a plenty of room for improvements for these features (and for new ones). ES is very powerful but also very complex to master. It's in a constant improvement.
## API & Downloads feature
In order to override the default Bulma style, we added a `init_bulma.scss` file that redefines some of the Bulma variables (color, padding, anything you want). In this file, we also import a `variables.scss` file which contains our custom scss variables and Bulma scss files. Finally `init_bulma.scss` is imported in `styles.scss` which is the main scss file of the app.
## CI/CD
......@@ -8,4 +8,15 @@
#### Suggestion
#### Dataset result
\ No newline at end of file
#### Dataset result
## Research features
This core feature is based on [Elasticsearch](https://www.elastic.co/fr/) (ES). Almost all the information in the portal (including datasets, articles, geographical data) is indexed in ES. This allows lot's of possibilities with the powerful features of this tool.
Here are the features existing on the portal:
* *research*: thanks to ES great indexation, to go through millions of documents is super fast (millions because we are not only looking inside the metadata, but also inside the data)
* *autocompletion*: using the score based on some criteria, we provides an autocompletion feature that helps to give a context for some research keywords.
* *suggestion*: if a research didn't give good or no results (for example because of a typo), a word with more results will be suggested.
Of course there is a plenty of room for improvements for these features (and for new ones). ES is very powerful but also very complex to master. It's in a constant improvement.
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment