Rework a bit on top of @bnjbvr's MR to add basic email notifications
support.
* Cleaned the code a bit.
* Add a `Date` and a `Message-ID` header to improve the spam score.
Thanks a lot @bnjbvr's for the MR!
* Remove the text-decoration due to the use of links
* Make the link element occupy the whole table cell, without padding
* Use `router-link` instead of `a` tag
Some Weboob backends were returning multiple phone numbers
(comma-separated) or phone numbers in different formats (with or without
spaces, with or without separating dots, etc).
This commit harmonizes all of this so that all phone links will be
rendered correctly and be usable to call in a single click.
Related, https://git.weboob.org/weboob/devel/merge_requests/42.
Weboob does handle the raised exceptions when fetching housing posts
through the `WebNip` class. However, when fetching details, we directly
call the Weboob backend method and no exceptions handling is done.
When importing data with a `crontask`, websites may be offline for some
time, especially at night, then leading to a failure in import process.
Let's just handle such exceptions so that an offline website does not
break the whole import process. Details from the temporary offline
websites which could not be fetched will be fetched at next run.
This closes#60.
Tcl stations GPS coordinates are given as `lng, lat` and not `lat, lng`
hence it was not working because the found stations were too far from
the housing post location, as reported by @bnjbvr.
This commit should fix this.
All the backend part has been rewritten to handle multiple constraints
in the config (== multiple queries).
Also did some linting.
Still to be done: frontend part and doc.
"Followed" page is now sorted by notation for each postal code. Notes
left about the flats are listed in the list, to help have a good
overview of the followed flats.
This closes issue #45.
The mobile UI is now more responsive, without grid in the details view.
Clicking on a line in the flats table sends the user to the flat
details. Also features better title descriptions and reactive title of
the tab.
Whooshalchemy was adding an event every time a new db session was
created, thus increasing a lot the computation time at each new call.
This is now fixed, and is a partial fix for #43.
When importing flats for the first time, their status was not correctly
set, resulting in flats not being marked as ignored when they should be.
This is a bug introduced with the fix for issue #31, now fixed.
Instead of a binary "followed" / "not followed" status, use 5 stars to
allow users to give a note to a flat between 0 (not followed) and 5. Any
note different from zero add a "followed" status.
Closes issue #36.
* Add a database field to store `notes` (as a memo) about flats.
* Add matching UI elements to let users store their notes about flats.
This commit closes issue #34.
* Fix status on details page
* Fix follow button on details page
* Replace back button by a link on the flat status
* Fix leaflet markers position, close#24
* Fix Leaflet icons
* Add unfollow link on followed posts
* Init Webpack / Babel / etc setup.
* Build the app using Vue, Vue-router, Vuex.
* i18n
Some backends changes were made to match the webapp development:
* Return the flat status as a single string ("new" rather than
"FlatStatus.new")
* Completely switch to calling Weboob API directly for fetching
* Use Canister for Bottle logging
* Handle merging of details dict better
* Add a WSGI script
* Keep track of duplicates
* Webserver had to be restarted to fetch external changes to the db
* Handle leboncoin module better
Also add contributions guidelines.
Closes issue #3
Closes issue #14.