1. 30 Jun, 2019 1 commit
    • Florent Chehab's avatar
      Feat(pagination) & Feat(filter previous exchanges) · 80323181
      Florent Chehab authored
      Pagination:
      * Paginated endpoints for offers and previous exchanges,
      * Added front component to display paginated data,
      * Display offer in the front
      
      Filter on previous exchanges:
      * Added a denormalized model to store information
      * Compute it in cron and in transaction
      * Filter in front
      
      Closes #123
      80323181
  2. 29 Jun, 2019 2 commits
    • Florent Chehab's avatar
      Finish(external data): cron, mapping, offers, etc. · 9fa79975
      Florent Chehab authored
      * Setup cron to automatically update remote data
      * Support partial (login based) utc data update
      * Tweaked models to record untouched or unlincked situations
      * take them into account in the front and the back,
      * Auto creation of general feedback also
      * Added info about unlinked utc partners in the front
      * Added button to request update ent data
      * Added university offer module to the front
      
      Other:
      * Tweaked loading scripts
      * tweaked models
      * Fixed SelectField
      
      Closes #28
      9fa79975
    • Segolene Brisemeur's avatar
      feat(external_data): load utc · cfb80538
      Segolene Brisemeur authored
      * Updated models to closely match UTC db spec
      * Updating loading data and tests to match
      * Added UTC partner model
      * Added class and command to fetch from the API on top of utc DB
      
      Also:
      
      * Removed department and Specialty models
      * Added some denormalization and signals / custom save maintain coherence
      
      Solves #53
      WIP #28
      cfb80538
  3. 26 Jun, 2019 1 commit
    • Florent Chehab's avatar
      feat(taggedItems): reworked, clean and operationnal & twaeked(site... · 6a5274e8
      Florent Chehab authored
      feat(taggedItems): reworked, clean and operationnal & twaeked(site information): added notification parameter
      
      WARNING:
      * Cleaned ALL migrations files as there were to many issues during the cleaning of taggedModels,
      
      Tagged Items:
      * Only for university and country now
      * Auto creation on university/country creation
      * Front operationnal
      * Removed tag models and abstract tagged item
      
      Site Information:
      * Added a `should_notify` boolean to the model/front
      
      Other:
      * Added a default bot user
      * Fixed timezone warning in the back
      * Clean signals setup
      * Fixed proptypes of Fields in the front
      * Added HiddenField
      * Deleted now useless files
      
      Closes #30 #58
      6a5274e8
  4. 23 Jun, 2019 2 commits
    • Florent Chehab's avatar
      feat(SiteInformation): back & front + tweaks · ae65342b
      Florent Chehab authored
      * Update home page
      * Display dynamic information on the home page (external data update and site informations)
      * back and front for SiteInformation
      * Footer with important information
      * Notification on connect for import information
      * Fixed markdown currency rounding
      
      Closes #120
      ae65342b
    • Florent Chehab's avatar
      feat(previous departure feedbacks): presentation & edit done 🎉 | Tones of tweaks · de3c1897
      Florent Chehab authored
      Previous exchange feedbacks:
      * renamed some fields
      * added would recommend field in course feedback
      * uniformized grading scheme
      * Added viewsets/serializers in the back (+permissions & performance concerns)
      * Support edit in the front
      
      Tweaks:
      * directly return in the `obj_info` if the model is versioned or not
      * Added support for required get parameters
      * enum for model moderation level
      * More versatile metric feedback component
      * Fixed how the editor (frontend component) was telling if something has been moderated
      * Added a CURRENT_USER variable instead of using the one from html directly
      * Diminished website font-size
      * Better proptypes / defaultProps in fields
      * Added optionnal comment text on fields
      * Fixed the number field
      * Added Helper classes to centralize the manipulation of redux store data
      * Teaked pseudo/username returned by the api
      
      Closes #29 #32
      de3c1897
  5. 16 Jun, 2019 1 commit
    • Florent Chehab's avatar
      feat(rgpd/cgu): everything is ready · b89d8b63
      Florent Chehab authored
      * Full handling of RGPD/CGU validation
      * management command to clean user personnal data created
      * Added RGPD and CGU as markdown in the documentation (also used in the front)
      
      Front:
      * Multiple entrypoints for the different needs
      * Added raw file loader
      * bumped frontend image version
      * More generic front template (for the multiple entries)
      * Added NotFound Component
      * More generic Markdown component (in regards to handling off-the-api situations and heading size)
      
      Closes #67
      b89d8b63
  6. 15 Jun, 2019 1 commit
    • Florent Chehab's avatar
      feat(Recommendation List): done | tweaks(a lot of stuff): · 2f3e6bb6
      Florent Chehab authored
      Recommendation list:
      * Focus on performance with silent state update (and no hook)
      * Whole logic and componets working
      * Updated few stuff in the back
      * Complete validation of the recommendation list json content (and tests for most of it)
      * Compute universities from the JSON on save
      
      Fixes #34
      Fixse #127
      
      Tweaks:
      * Reworked downshift multiple
      * Reworked selected and multislect field to use downshift multiple when there are too many options
      * Fixed wrong used of do_before_save
      * Drop use of redux for filter; switch to static handling of part of the state: much more natural
      
      Fixes #125
      
      Other:
      New components: CopyToClipBoard, LinkToUser, onBlurContainer, SimplePopupMenu
      Updated SaveButton
      2f3e6bb6
  7. 02 Jun, 2019 1 commit
    • Florent Chehab's avatar
      feat(frontend): general improvements · 8f668e77
      Florent Chehab authored
      * Final touch to truncated markdown
      * A bit of reorganization and hookification
      * Fixed tabbar position on university page
      * Change mobile phone notification bar color
      * WIP responsiveness in course feedback
      * Shared parameters and HOC for pages / styles
      8f668e77
  8. 01 Jun, 2019 3 commits
    • Solene Aboud's avatar
      feat(recommendation list): back & front almost done · 2e1e841b
      Solene Aboud authored
      Backend:
      * Added recommendation list model
      * Added smart serializers/viewsets for the model
      * Added DRF permissions `IsFollower` and `IsPublic`
      * Backend handling of following,
      
      Frontend:
      * Cleaned setup
      * Textblock ready
      * Better save button
      * List and view recommendation
      
      Both:
      Connected for creation and save of recommendation
      
      Almost done #34
      2e1e841b
    • Alexandre Lanceart's avatar
      feat(external data): loading currencies · 6cad83dd
      Alexandre Lanceart authored
      * Added an app in the backend dedicated to the link with external data
      * Create a command to update the data
      * Support updating data from fixer
      * Updated doc accordingly
      
      Almost done #28
      6cad83dd
    • Alexandre Lanceart's avatar
      feat(site): CGU/RGPD requierements & ban user · 6f07c0ea
      Alexandre Lanceart authored
      * Added the necessary behavior to require the validation of CGU and RGPD.
      * Added matching tests for this
      * Added the possibility to ban users
      * Also fixed the API Viewsets so that they can be registered like any model viewset
      
      Fixes #121
      Fixes #122
      6f07c0ea
  9. 26 May, 2019 1 commit
  10. 25 May, 2019 1 commit
    • Segolene Brisemeur's avatar
      feature(language storing) · 59c8c491
      Segolene Brisemeur authored
      * Added language model
      * Added CSV data and loading script
      * Language stored in course feedback
      
      Fixes #116
      Fixes #32 (Not really fixed, but language now store in feedback)
      59c8c491
  11. 24 May, 2019 2 commits
    • Florent Chehab's avatar
      enhance(request security): · c2c2f7d4
      Florent Chehab authored
      * Updated all DRF custom permissions to make sure they have has_permission and has_object_permission
      * Changed default permission
      * Updated middleware to filter incomming request based on their type
      * Added test for this
      
      Closes #118
      c2c2f7d4
    • Florent Chehab's avatar
      Feature(self hosted map tiles): · 7dc6e615
      Florent Chehab authored
      * Added map tile server to docker-compose dev and prod
      * Moved from leaflet to mapbox gl for vector tiles (changed npm dependencies)
      * Custom map styles for light and dark mode
      * Changed frontend map status saving (dropped redux / simpler static data saving)
      
      Closes #117
      7dc6e615
  12. 11 May, 2019 1 commit
    • Florent Chehab's avatar
      Feature(deploy config) & tweaks · 6e2273e3
      Florent Chehab authored
      * Deployment is now fully automated with docker / docker-compose (Backend served through uWSGI with Nginx)
      * Logs are configured in django and handled by a dedicated docker service (and kept for 30 days)
      * Frontend crash logging handled through the backend
      * Quick documentation of the deploy setup
      
      Fixes #110 Fixes #66
      
      Also:
      
      * Moved the envs directory to the more general server dir
      * New Picture and File model/serializer/viewset added
      * Image validator added (didn't use django image field as it wasn't supporting svg)
      * Removed symbolink of assets from the frontend in the backend to make sure we can boot the server in no time
      6e2273e3
  13. 04 May, 2019 1 commit
  14. 23 Apr, 2019 2 commits
  15. 21 Apr, 2019 1 commit
    • Florent Chehab's avatar
      Redesign(front theme) 🎨🎉 & tweaks (routing, etc.) · 4cfe777a
      Florent Chehab authored
      * Complete redesign of the frontend theme => mobile friendly++ 🎨🎉
      * Redesigned how the theme can be customized
      * (adapted the backend to store the theme correctly + testing)
      * Added a default theme for the app
      * Centralized routing in the APP for consistency
      * Quick fix to prevent rerendering on layout change in the university page
      
      (backend migration required)
      
      Fixes #19 #20
      4cfe777a
  16. 17 Apr, 2019 1 commit
    • Florent Chehab's avatar
      Refactor(json validation): moved to standard json-schema · b9500eb2
      Florent Chehab authored
      * JSON validation in now performed against `json-schemas` which give a standard way of handling this.
      * All previous validation moved to new setup (`useful_links` field & `TaggedItem` in particular)
      * Tags handling slightly updated (schemas are now hardcoded in the app and not stored in db)
      * All new validators are unitested 🎉
      * A bit of documentation added
      
      ----
      * Bumped backend image to version 0.2.1 with new python packages requirements
      ----
      
      Fixes #112
      Mentions #113 #57
      b9500eb2
  17. 14 Apr, 2019 1 commit
    • Florent Chehab's avatar
      feat(production backend dockerfile) & enhanced(backend deps) & fix(userInfo bugs) · 7b30fd5f
      Florent Chehab authored
      * Dropped the use of Pandas & updated loading scripts accordingly
      * Separated python requirements files
      * Updated Dockerfile to be able to also build a production ready image (without dev dependencies)
      * Backend images size cut in more than half 🎉
      * Updated a bit the documentation related to Docker
      * CI now depends on clear image tags
      * Fixed the serializers of User and enhanced frontend of userinfo
      * Fixed wrong compose in frontend
      
      Fixes #108 #109 #104
      Linked to #66 for new prod dockerfile
      7b30fd5f
  18. 13 Apr, 2019 2 commits
  19. 12 Apr, 2019 1 commit
    • Florent Chehab's avatar
      setup(cleaned & debugging) · 48a1e8ac
      Florent Chehab authored
      * **Added documentation regarding how to debug the backend and the frontend**
      * Updated webpack config to ease debugging (no more mimify) and a bit better production config
      * Added .env files to configure env variables in the project
      * Updated backend image to support .env files
      * Updated backend to use .env files
      * Updated CI settings accordingly
      * Added documentation about IDE setup
      * Removed `.vscode` folder from repo
      
      Fixes #106 #105 Linked to #66 for .env files
      48a1e8ac
  20. 07 Apr, 2019 1 commit
  21. 05 Apr, 2019 2 commits
    • Florent Chehab's avatar
      feat(custom user model, admin) · d9a3b179
      Florent Chehab authored
      * The custom user model previously introduced can now be fully edited in the admin of the site.
      d9a3b179
    • Florent Chehab's avatar
      feat(user page) 🍾 & fixes 🎊: · 6ce40dc9
      Florent Chehab authored
      * Added a user page to show user information
      * Updated backend to handle the new data
      * Added backend test related to this
      * User can now be anonymous
      * NB: only users with level == authenticated user can be anonymous on the site
      * Backend serializers updated to return the pseudonyme of the user
      * Added a boolean field form element
      
      Fixes #64 #65
      
      Other fixes:
      
      * Added basic test for userData
      * Fixed bug in ReadOnly permission
      * Fixed typos/bugs in new CrudActions
      * Enhance fields declaration in abstract serializers
      * Changed jsx linting rules
      * Moved generic editors files
      * Updated network errors handling
      6ce40dc9
  22. 31 Mar, 2019 1 commit
    • Florent Chehab's avatar
      refactor(frontend api interactions) · da3d378b
      Florent Chehab authored
      * Complete redesign of the api actions / reducers,
      * Now makes use of Axios,
      * No more black magic,
      * Doc updated,
      
      BREAKING: All `...Specific` reducers results are no under `...One` and `readSpecific` moved to `readOne`
      
      Also,
      * Fixed bug regarding opposite user_can_moderate value returned by backend
      
      Fixes #98
      da3d378b
  23. 30 Mar, 2019 2 commits
    • Florent Chehab's avatar
      feat(standard filtering, tweaks): REST Api and other · 3a615383
      Florent Chehab authored
      * Filtering on client request should now be performed with the standard `?attr=...` syntaxe
      * Frontend updated for this new syntaxe
      * Backend and frontend documentation updated with new changes
      * Updated the location of the the api documentation to `/api-doc`
      * Fixed bug preventing api-doc to render
      * backend python requirements updated
      * Updated dockerfile / docker-compose to make sure we wait for the db
      
      Fixes #97 #80
      3a615383
    • Florent Chehab's avatar
      refactor(backend): removed dynamic imports 🎊 · 243f43bf
      Florent Chehab authored
      * Removed all dynamic imports to have more standard Django infrastructre and ease future refactoring
      * Removed now useless config files
      * Returns the list of available endpoints to the frontend directly from the html
      * updated documentation accordingly
      
      Fixes #95
      243f43bf
  24. 24 Mar, 2019 4 commits
  25. 23 Mar, 2019 1 commit
    • Florent Chehab's avatar
      feat(backend): complete refactoring of the backend · 4c12f242
      Florent Chehab authored
      * Added new BaseModel /serializer/viewsets
      * Change names of abstract models/serializers/viewsets
      * Folder structure changed in tha backend
      * Added some backend test
      * Corrected bug related to moderation on non versionned modeles
      * Corrected bug related to no post permissions
      * Updated doc accordingly
      
      Fixes #91
      4c12f242
  26. 19 Mar, 2019 1 commit
  27. 17 Mar, 2019 1 commit
    • Florent Chehab's avatar
      feat(backend): huge redesign and simplification · 26e608b7
      Florent Chehab authored
      * Removed `model_config` from all models; updated `MyModelSerializer` to include a new `obj_info` field. Updated frontend to take the change into account. (Fixes #78)
      * Removed `get_viewset_permissions` from most viewsets and added a generic getter in `MyModelViewset`.
      * Added support for composable permissions classes :confetti\_ball: (Fixes #45)
      * Cleaned config files: separated the files; added `defaults.yaml`
      * Moved `shared` folder (content) to `backend.backend_app.config` (still accessible to frontend, but it's cleaner that way since this folder contains files concerning only the backend).
      * Performance update with caching some attributes;
      * Even cleaner backend dynamic imports (#46)
      * Added a good chunck of documentation related to the backend (#74)
      * Added checks (runned when server is started or indirectly with `make check_backend`)
      26e608b7
  28. 16 Mar, 2019 1 commit
    • Florent Chehab's avatar
      removed(all TODOs): · 0e4c1aef
      Florent Chehab authored
      Some of them were simply removed, oter were fixed.
      From now on, the use of TODO is not permitted in the code.
      0e4c1aef