CHANGELOG.md 4.47 KB
Newer Older
Thomas Frion's avatar
Thomas Frion committed
1
2
3
4
# CHANGELOG

## 2020-02-10

Thomas Frion's avatar
Thomas Frion committed
5
6
7
8
9
10
11
12
Instalation of the existing project with Django 

## 2020-03-16

* Initialization of Rest API, with Django (back-end)
    * Create Unit model for database
    * Add connection data fo database
* Initialization of the Angular project (front-end)
Thomas Frion's avatar
Thomas Frion committed
13
14
15
16
17
18
* Creation of a snippet to explain how to fix libgeos version trouble (available [here](https://gricad-gitlab.univ-grenoble-alpes.fr/Projets-INFO4/19-20/8/app-pghm/snippets/167))


## 2020-03-17

* Creation of contributing rules
Thomas Frion's avatar
Thomas Frion committed
19
20
21
22
23
24
25
26
27
28
* Start of model creation

##  2020-03-24

* Fixing problems created by a Django update:
    * MIDDLEWARE issue: Under definition of `MIDDLEWARE_CLASSES` array in `settings.py` add, if is not already done, `MIDDLEWARE = MIDDLEWARE_CLASSES`
    * WSGI issue: in `MIDDLEWARE_CLASSES` array in `settings.py` comment or remove the line `'django.contrib.auth.middleware.SessionAuthenticationMiddleware',`
* Continuation of the design
* Installation of the `django-rest-swagger` module. This module allows to generate the API documentation automatically (with the swagger style).
* Test of the `rest_framework` module with the creation of a feature that allows to get all users (GET htt://127.0.0.1/users)
Thomas Frion's avatar
Thomas Frion committed
29
30
31
32
33
34
35
36
37
38
39
40
41


## 2020-03-30

* Creation of the 'link' between a user (officer) and his unit.
* Improvement of the link (previously described). Create a PghmUser class that inherits of User (default class). Then add a foreign key field that points to the unit.
    * New class and field created
    * attempt to change the column by default of foreign key (use the unit's code instead of unit's id)
    * it remains to modify the forms of the admin part for take the change into account.
* TODO:
    * CRUD on User and unit
    * Finish API function
    * Generate the documentation of what will have been done
Thomas Frion's avatar
Thomas Frion committed
42
43
44
45
46

## 2020-04-06

* Adding the unit field in user administration forms
* Creation of unit administration interfaces
Thomas Frion's avatar
Thomas Frion committed
47
48
49
50
51
52
53
54
55

## 2020-04-10
* API For users:
    *  GET | POST | UPDATE | DELETE
* API For units:
    * GET | POST | UPDATE | DELETE
    * A unit can be selected by its code
* Refactoring of views' code
* Implementation of automatic document generation
Thomas Frion's avatar
Thomas Frion committed
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70

## 2020-05-12

* Back-end:
    * Webcam management
        * Model
        * API => CRUD
        * Admin form

## 2020-05-13

* Back-end:
    * External services management (feature to manage different external services such as IGN's API or OSM's API)
        * Model
        * Admin form
Thomas Frion's avatar
Thomas Frion committed
71
        * API => CRUD
Thomas Frion's avatar
Thomas Frion committed
72
        
Thomas Frion's avatar
Thomas Frion committed
73
74
75
76
77
78
79
80
    * Code refactored: now we are using the submodule system provided by Django and Python. So each resource is now a submodule

## 2020-05-18

* The connection between front-end and back-end is established (only for login)
* Redirection when you are not logged in works
* Redirection when you are logged in works too
* There was a bug with forms inside the side-left bar: the form controllers were missing. We added them now.
Thomas Frion's avatar
Thomas Frion committed
81
* Client for using the API is done. To know more about that module check the [wiki](https://gricad-gitlab.univ-grenoble-alpes.fr/Projets-INFO4/19-20/8/app-pghm/-/wikis/%5BFRONT%5D-API---Client).
Thomas Frion's avatar
Thomas Frion committed
82

Thomas Frion's avatar
Thomas Frion committed
83
84
85
86
87
88
## 2020-05-19

* Update API Client => Add Authorization in HTTP header
* Update Login process => Now we load the associated unit's information
* Load of OpenStreetMap with settings of the current unit

Thomas Frion's avatar
Thomas Frion committed
89
90
## 2020-05-22

Thomas Frion's avatar
Thomas Frion committed
91
* Adding map tiles => OpenStreet Map and OpenTopo Map
Thomas Frion's avatar
Thomas Frion committed
92
93
94
95
96
* Marker of the unit, with a popup which contains information about unit (coordinates,email, name)
* Display of coordinates in DD format and DMS formats
* Add controller to change map tiles
* Fix some bugs with the API client
* Preparation of the code to get the available services. The code is commented for the moment, because the only available service is the IGN one and the key at our disposal for the moment is not valid.
Thomas Frion's avatar
Thomas Frion committed
97
* Adding a new "sub-resource" to search a service by name
Thomas Frion's avatar
Thomas Frion committed
98
99
100
101
102
103
104

## 2020-05-26

* Add custom icon for makers
* Display all Gendarmerie units and the unit information (name, phone, address)
* The units are displayed according the current map bounds and zoom
* The Gendarmerie units are save in database (API side)
Thomas Frion's avatar
Thomas Frion committed
105
106
107
108
109
110
111
112

## 2020-05-29

* Refactoring the unit parts in Django side (API)
* Adding Police units
* Adding station resource
* Linking the station resource to webcam resource
* Use geojson for station
Thomas Frion's avatar
Thomas Frion committed
113
* Add the station layer on the map with their webcams acording the maps bounds
Thomas Frion's avatar
Thomas Frion committed
114
115
116
117
118
119
120
* Optimization of the addition/deletion of Gendarmerie units
* 

**TODO**
* Like Gendarmerie units, define when we call the api for stations
* Optimization of API calls
* Add image inside the popup of webcams