aboutsummaryrefslogtreecommitdiff
path: root/ihatemoney
AgeCommit message (Collapse)AuthorFilesLines
2018-09-03Simplify a JS function. (#371)Alexis Metaireau2-19/+8
2018-08-11Add a favicon.ico route and logo. (#381)Alexis Metaireau2-1/+8
Might fix #255
2018-08-11Remove Sentry, as it's not used anymore on prod. (#380)Alexis Metaireau1-4/+0
Fixes #312.
2018-08-10Fix failing tests (#365)Alexis Metaireau1-2/+5
* Remove unwanted space in utils.py * Fix email validation when sending invites
2018-08-05Remove unwanted space in utils.pyAlexis Métaireau1-1/+1
2018-08-05Enhance translation tooling (#360)JocelynDelalande2-298/+10
* Add a `make update-translations` command To collect new strings to be translated from code. Totally cheated on @Glandos commands :-) Ref #336 Ref https://github.com/spiral-project/ihatemoney/issues/336#issue-322069517 * Document translation process Fix #336 * Drop noisy location comments from .po files Fix #339 * Drop .pot header As it serves no purpose with our translation workflow. .po header could be removed also, but pybabel has no option for that. Ref #339
2018-08-05Remove strict_slashes for /Glandos2-1/+7
I don't know why, but on my setup (nginx + uwsgi), the `strict_slashes` (default to `True`) was causing an infinite loop. I think it could be safely removed for this route only.
2018-08-05Merge branch 'master' into almet/fix-pbkdf2-checkAlexis Métaireau21-526/+786
2018-07-16Merge branch 'master' into almet/fix-supervisord-templateAlexis Metaireau13-499/+719
2018-07-16Fix Apache conf template, without relying on environment var (#359)JocelynDelalande2-1/+2
`python-home` is prefered over `python-path`. It will work with or without a virtualenv. See http://modwsgi.readthedocs.io/en/develop/configuration-directives/WSGIDaemonProcess.html
2018-06-17compile l10nAdrien CLERC1-0/+0
2018-06-17fix fr l10nAdrien CLERC1-1/+1
2018-05-15compile translations to MOAdrien CLERC1-0/+0
2018-05-15update fr l10nAdrien CLERC1-50/+53
2018-05-15update locales from template with pybabelAdrien CLERC1-199/+236
2018-05-15new extraction with pybabelAdrien CLERC1-136/+238
2018-02-07Add statistics support to APIJocelyn Delalande2-0/+42
2018-02-07Move member stats computation to a dedicated methodJocelyn Delalande2-14/+21
2018-02-07Change statistics data structureJocelyn Delalande3-35/+35
Clearer data structure, and simpler template This commit has a side effect: sidebar now hides disabled members. IMHO, the disabled members should either be hidden or shown consistently between sidebar and central table. Previous status was: shown in sidebar (if balance ≠ 0) and hidden in central table.
2018-02-06Remove dead codeJocelyn Delalande1-1/+1
2018-02-04Remove unused CSS odd/even classesJocelyn Delalande3-3/+3
That was forgotten from fe39258630e55d4a3e1297a01a1c8fd39bad3a4e
2018-01-26Display sidebar scroll-bar only if requiredJocelyn Delalande1-1/+2
This fix a regression from #316 (scrollbar was displayed all the time). Note that the padding-bottom value is totally empiric, but proved OK on my Fx and Chrome instances + some responsive tests. There might be finer solutions, feel free :-).
2018-01-25API: Migrate from flask-rest to flask-restful (#315)0livd4-93/+120
The flask-rest custom json encoder is still needed and thus was added to ihatemoney's utils. Closes #298
2018-01-25Make sidebar scrollable (#316)Richard Coates1-0/+1
* Make sidebar scrollable Make sidebar scrollable. * Update CHANGELOG.rst Fixes #318
2018-01-14Use Jinja2 strict rendering.Alexis Métaireau3-12/+24
For this I had to create an Jinja2 explicit environment, so I put a function in `ihatemoney.utils.create_jinja2_env(strict_rendering=False)`. When using this environment and if `strict_rendering` is activated, templates using undefined variables will now error out rather than failing silently.
2018-01-14Fix the supervisord template.Alexis Métaireau2-2/+4
The script was relying on the presence of an environment variable, which is only set when the virtualenv is activated. But a virtualenv does not have to be activated to work (it's possible to call the python command directly). This fixes it by relying on `sys.executable` which should be correct at all times. Fixes #306
2018-01-07manage commands testing (#313)JocelynDelalande2-4/+31
* Rename manage.ConfigTemplate → manage.GenerateConfig To be consistent with the CLI name: `generate-config`. * Add tests for manage.py commands * Run tests from pip-installed package To be able to detect packaging-related issues on test runs. refs #305
2018-01-05Do not enforce a check on sha256 hash algorithm.Alexis Métaireau1-1/+1
This makes it inconsistent with our own generated passwords. Only check that the password has been hashed. Fixes #310.
2018-01-05Fix the supervisord template.Alexis Métaireau2-2/+4
The script was relying on the presence of an environment variable, which is only set when the virtualenv is activated. But a virtualenv does not have to be activated to work (it's possible to call the python command directly). This fixes it by relying on `sys.executable` which should be correct at all times. Fixes #306
2018-01-05Include all .j2 files in the packaged version.Alexis Métaireau7-10/+10
I've also renamed the templates to *.j2 in order to make things clearer to others. Having extensions with the name of the locale doesn't seem to be a good practice, and would need us to add the locales in the MANIFEST file each time we add one. Fix #305
2018-01-05Enable basic auth passthrough for API (#303)donkers1-0/+1
* Enable basic auth passthrough for API Added the couple of apache configuration lines necessary to get the basic authentication working for the API. * Revert the addition of "AuthType Basic" Did some more testing on my server here and I totally agree, don't need "AuthType Basic".
2017-12-29Allow to disable/enable member via API (#301)JocelynDelalande2-1/+38
Disable was already (kind-of) possible via API via DELETE, but not re-enabling. Kudos to @almet for helping me fixing that damn BooleanField :-)
2017-12-27Fix tests layout so that API tests are not ran twiceJocelyn Delalande1-6/+5
Bad inheritance was causing APITestsCase tests to be ran twice.
2017-12-27Merge pull request #299 from spiral-project/fix-duplicate-member-validationJocelynDelalande1-1/+7
Fix duplicate member validation
2017-12-27Silent stderr output during app init for some commands (#293)JocelynDelalande1-0/+12
Avoid confusing the user for the commands outputing text to the user. fix #277
2017-12-27Add tests for #294Alexis Métaireau1-1/+7
2017-12-27Position flash messages with CSS rather than JS (#292)JocelynDelalande2-6/+11
Visual result is exactly the same, but less black magic :-).
2017-12-27 Fix PUT api/project/:code/members/:id (#297)JocelynDelalande2-3/+12
* Fix PUT api/project/:code/members/:id Before that commit, every PUT *must* change the name of the members, so that was : - no idempotence, - no ability to change only weight fix #295 * Remove redundant comment
2017-12-23Remove un-needed sidebar block (#291)JocelynDelalande1-1/+0
{% block sidebar %} is used by sidebar_table_layout.html and its children, not by layout.html nor its direct children. This is dead code removal.
2017-12-22Remove API password (#290)JocelynDelalande2-7/+17
* Remove the password from API GET responses While keeping it for POST/PUT. fix #289 * Add a test to check password change via API
2017-12-21Replace some CSS by some JS (#288)JocelynDelalande2-14/+3
2017-12-21Use hashed passwords for projects (#286)0livd7-31/+74
- Remove all occurences of clear text project passwords. - Migrate the database to hash the previously stored passwords. Closes #232
2017-12-15Use token based auth in invitation e-mails (#280)0livd12-57/+97
* Use token based auth in invitation e-mails Invitation e-mails no longer contain the clear text project password * Skip invite page after project creation - Replace ``The project identifier is demo, remember it!`` by ``Invite other people to join this project!`` (linking to the invite page) - Encourage users to share the project password via other communication means in the reminder email
2017-11-11Fix some typos using codespell (#285)Alexandre Avenel2-3/+3
2017-11-01Update installation doc to include doc about production values, fix #266. (#282)Lucas Verney1-0/+7
2017-10-26Use token based auth to reset passwords (#269)0livd12-16/+153
Send a mail containing a password reset token link instead of sending a clear text password. Ref #232
2017-10-23Make authentication logic simpler and safer (#270)0livd2-38/+29
* Fixed exposed password in session The project password was set in clear text in the session cookie. The cookie payload is only base64 encoded so it must not be used to store private information. The password is simply replaced by a boolean. * Simplify authentication logic
2017-10-23Enhance install process by generating config files from templates (#275)JocelynDelalande7-30/+138
* Add a command to generate configuration examples Config files are generated from templates (which remplace previous example files). - solve the issue of hard-to-explain configuration examples - ease pkg path seeking (avoid it, actually) - add working defaults for sqlite and unix socket paths (instead of /replace/me/path/example) - move settings comments from default_settings.py to ihatemoney.cfg.j2, as it is the one that will be facing user. * Use generate-config command in install doc Also follow the new working defaults of templates for socket and db path. * Fix doc settings table On the long term, plaintext tables might destroy humanity. * Mention templates dir URL in documentation As requested by @almet
2017-09-07Do not import the whole werkzeug pkg (#271)0livd1-4/+4
2017-09-04Enhance the dashboard. (#262)0livd11-35/+153
* Update to a more flexible admin authentication * Admin can now access any project * Add delete and edit options in the dashboard * Add a link to the dashboard in the nav bar This is a rework of the changes proposed by @Olivd, so they can apply on top of the latest master without trouble. All credit goes to him for the code.