1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/ihatemoney_ynh.git synced 2024-09-03 19:26:15 +02:00
Commit graph

260 commits

Author SHA1 Message Date
Alexis Metaireau
f75bf39307 Transform the bill addition form, using a popup. See #53 2011-11-28 00:22:10 +01:00
Alexis Metaireau
8570e79170 reorganize the static folder structure 2011-11-28 00:20:30 +01:00
Alexis Metaireau
44060f03df update bootstrap to the last version. Clean some css 2011-11-27 23:11:09 +01:00
Alexis Metaireau
bb146b09d7 Fix #54. The flash message is now in green 2011-11-27 04:33:45 +01:00
Alexis Metaireau
ea29704819 jinja2.6 is required 2011-11-27 04:33:15 +01:00
Alexis Metaireau
f0c750f99a merge with quentin 2011-11-27 04:13:30 +01:00
Alexis Metaireau
47010d4cd7 change the icons, simplify some javascript 2011-11-27 04:11:22 +01:00
Tinmn
2cadead381 Members are now sorted by name in the balance. 2011-11-26 14:24:48 +01:00
Alexis Metaireau
672f2a1ca1 revert arnaud's commit about delete links 2011-11-24 00:27:51 +01:00
Tinmn
2a6ccaa0cf Correction of a (very) minor bug of bill hover (commit 6df17b7d97). 2011-11-21 02:35:57 +01:00
Tinmn
6df17b7d97 Bill's members highlights in the balance in accordance with #69.
I'm not satisfied with the payer display but I have better in mind.
2011-11-20 20:30:14 +01:00
Tinmn
2e9d1b882a Change delete bill logo in accordance with #67. 2011-11-20 16:43:03 +01:00
Tinmn
ebf705a20f Bill owers are now separated with a ',' in the bill list. 2011-11-20 16:32:48 +01:00
Tinmn
a5cc50b0c2 Addition of an auto hiding user information message in the add user text field (with translation). 2011-11-20 14:37:32 +01:00
Arnaud Bos
9962b6d60f Merge branch 'master' of github.com:spiral-project/ihatemoney 2011-11-17 09:07:32 +01:00
Arnaud Bos
3bf8cececf Minor CSS changes 2011-11-17 09:07:21 +01:00
A.Avenel
e20c3bdb6b Small fix in CommaDecimalField class 2011-11-03 13:33:11 +01:00
A.Avenel
6df3bcdf13 Oops, forgot to commit tests 2011-11-02 15:26:35 +01:00
A.Avenel
66bd6268fa Merge remote branches 'upstream/master' and 'origin/master' 2011-11-02 14:36:16 +01:00
A.Avenel
94ab8fbcc3 Part of a fix to #62 : french numbers should use commas rather than dots 2011-11-02 14:35:38 +01:00
Arnaud Bos
0fe49c13d5 See #54. Move the flashing message to absolute positionning to avoid annoying shifting of the bills list. 2011-11-02 13:44:55 +01:00
Arnaud Bos
ac2935b429 Ease "Add a bill" form occurrence with slideUp/slideDown effects. Related to #53. 2011-11-02 13:20:00 +01:00
Arnaud Bos
f3972db96a Add a way to delete a project. Fix #63 2011-11-02 12:16:01 +01:00
Arnaud Bos
655774e4d4 Merge pull request #65 from aavenel/master
Bug fix in order to show the calendar widget when you edit a bill.
2011-11-01 17:09:03 -07:00
Arnaud Bos
d9cf29c510 First draft of fixing sidebar ugly hovering effect pointed in #51. 2011-11-02 00:54:43 +01:00
A.Avenel
471ef87d3e Bug fix in order to show the calendar widget when you edit a bill. Also fix another bug related to cancel button. 2011-11-02 00:23:21 +01:00
Arnaud Bos
0d44b97c4a Make the new bill link more visible. Fix #50. 2011-11-01 14:41:51 +01:00
Arnaud Bos
5963d7df9d Replace edit / delete links by icons. Fix #49. 2011-11-01 14:35:20 +01:00
Arnaud Bos
d1b641b45e Correct "payed" --> "paid" typo. Fix #60. See #48 for spelling mistakes and typos 2011-11-01 13:07:32 +01:00
Arnaud Bos
7f805b63ca Improvement of the sidebar look. Related to #34. Fix #52. 2011-11-01 12:57:12 +01:00
Arnaud Bos
1e0898dd87 Last selected payer and translations. Fix #47.
- Last selected payer selected by default when creating a new bill

- Fix some translation typos and modify a few labels
2011-10-20 04:18:12 +02:00
Alexis Metaireau
6f4f04b117 Document the API. Fix #46 2011-10-18 23:26:13 +02:00
Alexis Metaireau
4e1819523f Minor changes to the slidebar. See #34 2011-10-18 18:39:38 +02:00
Alexis Metaireau
b88b317faa Bills can't be negative. Fix #45 2011-10-18 18:13:54 +02:00
Alexis Metaireau
6e3834048b Use the relation table for "has_bills".
This fixes a bug related to the way we made joins to query q postgresql db.
I found that we didn't needed at all any join, so a simple lookup in the m2m relation table allows to speed up things.

Fix #44
2011-10-18 17:48:23 +02:00
Arnaud Bos
c3b3e2f770 Paint sidebar in green. Close #34 2011-10-18 04:30:34 +02:00
Alexis Metaireau
6f3b9dfda8 change the link in the footer as well 2011-10-18 00:04:50 +02:00
Alexis Metaireau
435ec2626d Make the rest module a flask extension.
It's now flask_rest.
2011-10-17 17:30:57 +02:00
Alexis Metaireau
3f9022ac13 the format for the date is yy-mm-dd 2011-10-17 00:15:44 +02:00
Alexis Metaireau
db7e1496b0 Add the ability to change the language explicitely. I'm not sure the UI is better with this. Any thoughts are welcome. Fix #35 2011-10-17 00:03:41 +02:00
Alexis Metaireau
f7a969240a Add a datepicker (with support of i18n). Fix #37 2011-10-16 23:38:27 +02:00
Alexis Metaireau
9a3e4537cb Format floats with 2 decimals. Fix #39 2011-10-16 13:59:22 +02:00
Alexis Metaireau
2553303fa4 serve static files with nginx 2011-10-15 21:50:15 +02:00
Alexis Metaireau
ebcd64237d clicking on the logo should return on the homepage 2011-10-15 21:49:27 +02:00
Alexis Metaireau
c1267da2ea translate 'each' as well 2011-10-15 02:53:09 +02:00
Alexis Metaireau
8acd4984dd add the project's title in the list of bills 2011-10-15 02:40:19 +02:00
Alexis Metaireau
ad392db53e update some strings in the french translation 2011-10-15 02:26:43 +02:00
Alexis Metaireau
b07c8a9273 remove the archive feature for now 2011-10-15 02:25:12 +02:00
Alexis Metaireau
d9c7977a59 fix a bit the UI (identifier on bill's list) 2011-10-15 02:24:02 +02:00
Alexis Metaireau
c54fac69c9 Fix translations of forms.
Forms are not context related, thus translations are done only once if not done
in a lazy way. the fix is to use lazy_gettext rather than gettext. Fix #12
2011-10-15 01:58:30 +02:00
Alexis Metaireau
f61d1432c7 Translate the application using Flask-babel.
The only translation so far is french, but more can be added. The browser language
is used thanks to the HTTP languages headers.

There are still some problems with the translation of some strings, I don't know
why this is. See #12
2011-10-15 01:19:19 +02:00
Alexis Metaireau
45ccc8b509 I HAZ TO RUN TESTS BEFORE COMMITING 2011-10-14 15:48:31 +02:00
Alexis Metaireau
9c4fd0c210 add epio.ini 2011-10-13 23:14:27 +02:00
Alexis Metaireau
20f905a5c0 put back requirements.txt in budget 2011-10-13 23:05:53 +02:00
Alexis Metaireau
f0f73a3c8b move requirements.txt 2011-10-13 22:54:58 +02:00
Alexis Metaireau
97132ce88a Fix some problems related to postgresql and models 2011-10-13 21:27:56 +02:00
Alexis Metaireau
b7ba8e43c4 Coerce the payer choice to int, default is unicode. Fix #33 2011-10-13 21:24:23 +02:00
Alexis Metaireau
fdb75316d6 Coerce the payer choice to int, default is unicode 2011-10-13 20:20:11 +02:00
Alexis Metaireau
5245a1a6c7 Do not prompt the user with a 'prompt()' in javascript when deleting members. Fix #29 2011-10-08 17:13:36 +02:00
Alexis Metaireau
7d9fde0460 Round the balance. Fix #1 2011-10-08 16:43:46 +02:00
Alexis Metaireau
75209aeed0 Add a password recovery feature. Fix #32 2011-10-08 15:52:12 +02:00
Alexis Metaireau
1338653bd2 iclude the edit_project template 2011-10-08 15:12:29 +02:00
Alexis Metaireau
19ae3ab3b2 merge with master 2011-10-08 13:45:05 +02:00
Alexis Metaireau
48bc551853 Complete the REST API + Tests. Fix #27 2011-10-08 13:27:30 +02:00
Arnaud Bos
402dbce153 Merge mistake, my bad
- Restore ProjectForm.password as a PasswordField and not TextField
2011-09-18 23:50:14 +02:00
Arnaud Bos
681f22f3e4 Merge branch 'master' into auth-forms-usability 2011-09-18 23:39:10 +02:00
Alexis Metaireau
20ab40690d Provide a way to edit a project. Fix #17 2011-09-14 22:03:18 +02:00
Alexis Metaireau
5721be1d15 Fix #26. Footer is now relative 2011-09-14 18:22:26 +02:00
Alexis Metaireau
7bf3492961 Merge branch 'master' of github.com:ametaireau/budget-manager 2011-09-14 14:52:17 +02:00
Alexis Metaireau
1b8258a521 Add a test for #23 2011-09-14 14:50:54 +02:00
Arnaud Bos
6212b643ec Simplified #30 fix. 2011-09-14 02:19:10 +02:00
Arnaud Bos
34ccb3546d Validate authentication form if given identifier is null. Fix #30. 2011-09-14 02:07:26 +02:00
Arnaud Bos
89e1bbe134 Make the identifier clearer to the end-user.
- Send an email to the user with the summary of the created project
  containing a reminder of the identifier, password and a link.

- Add flash message with the identifier in the /invite page/

- Add a small note containing the identifier in the upper right corner
  of the project main page.
2011-09-14 01:16:25 +02:00
Alexis Metaireau
b0d41291af API: Create and Update support 2011-09-13 22:58:53 +02:00
Alexis Metaireau
8528526f0b API: set the mimetype on the response 2011-09-13 19:24:48 +02:00
Alexis Metaireau
e13ceaf351 REST API is now able to list stuff \o/ 2011-09-13 18:15:07 +02:00
Alexis Metaireau
a60b0c2b48 add mimetype support to the rest API utils 2011-09-13 11:52:11 +02:00
Alexis Metaireau
d2e2260e52 Add a serialization mechanism 2011-09-13 11:27:36 +02:00
Alexis Metaireau
ef3d761fc7 Add Handlers for members and bills. 2011-09-11 23:00:32 +02:00
Alexis Metaireau
4bb96b28de API first draft: utils. (related to #27)
Introduces the "rest" module, with reusable utils for flask applications (will be packaged as a flask extension later on).
2011-09-11 22:11:36 +02:00
Arnaud Bos
88cd2f8675 Fix #24 on Authentication and New project forms usability.
- Do not display anymore the identifier field in home.

- Let the user enter the id if the slug generated from project name already exists as a project id.

- Moved get_billform_for from 'utils' to 'forms', to avoid issue (was 'from forms import ...' into utils,
  and 'from utils import ...' into forms, which causeed an error).
2011-09-11 05:30:28 +02:00
Alexis Metaireau
ef353d643c Refactor the application to use blueprints.
This allows to isolate some behavior in the context of the web application so
the API and the web application can behave in different ways.
2011-09-09 21:21:37 +02:00
Alexis Metaireau
45dc6edacb Move some logic to the models and add comments. 2011-09-09 19:57:28 +02:00
Alexis Metaireau
801802836a Start working on archive management 2011-09-09 19:14:19 +02:00
Alexis Metaireau
0303ab4db7 Add a way to reactivate an user, make the add project non obstrusive 2011-08-25 18:25:58 +02:00
Alexis Metaireau
3f8cabd5a8 change the color of the font in the main page 2011-08-25 18:25:10 +02:00
Alexis Metaireau
1ccfa8a07d don't display delete link if the user is deactivated 2011-08-22 23:30:48 +02:00
Alexis Metaireau
e0a40a0c7c display a flash message when an user is coming back 2011-08-22 23:29:10 +02:00
Alexis Metaireau
e97d460a4a iterate also on deactivated people, show them if they owe or should receive money 2011-08-22 23:26:49 +02:00
Alexis Metaireau
5550e18cfd Add missing tests. Fixes #14 and #22. 2011-08-22 23:19:00 +02:00
Alexis Metaireau
9eab5be9a3 RequestRedirect uses a HTTP 301. We need 303.
This is mainly because 301 is cacheable whereas 303 (See other) isn't.
The redirect response given by the app when trying to connect to a project
(via /project_name) while not authenticated was to permanently redirect to
/authenticate.

Once authenticated, the browser was redirected to the /project_name, that was
cached, leading to an endless loop.

303 see other allows to solve this problem.
2011-08-21 22:35:01 +02:00
Alexis Metaireau
63777c16bc authentication dance 2011-08-21 22:20:50 +02:00
Alexis Metaireau
16fcfd284e Add a flash message + the name of the site when sending invitations 2011-08-21 21:55:47 +02:00
Alexis Metaireau
929833cc04 put back stuff in the wrong place for now 2011-08-21 21:21:52 +02:00
Alexis Metaireau
ab44f253cd style the send invitations page 2011-08-21 21:16:32 +02:00
Alexis Metaireau
35ea308a26 Fix a weird behavior with tests and databases.
Now all the database during the tests is in memory, created for each test and cleared at the end of the test.
2011-08-21 20:54:20 +02:00
Alexis Metaireau
63a6491001 some more design fixes 2011-08-21 15:09:20 +02:00
Alexis Metaireau
a90959ba70 include bootstrap.css in the files to avoid weird changes in the future, Add a mention about the freedom of the project. Fixes #16 2011-08-21 14:57:05 +02:00
Alexis Metaireau
b941248662 add a demo feature (see #16) 2011-08-21 03:27:59 +02:00
Alexis Metaireau
5be9b2a0ce wording 2011-08-21 03:19:20 +02:00
Alexis Metaireau
85549cc98d graph some stuff from the spiral website 2011-08-21 03:16:54 +02:00
Alexis Metaireau
a6825cdcb7 styling & usability 2011-08-21 02:37:15 +02:00
Alexis Metaireau
03bb52f4c1 Do not loop-redirect on authenticate. 2011-08-21 02:23:53 +02:00
Alexis Metaireau
d584391929 minor styling changes (homepage) 2011-08-21 02:23:48 +02:00
Alexis Metaireau
2fdc86136d minor changes to the homepage 2011-08-21 01:50:35 +02:00
Alexis Metaireau
7d60bee0ef Re-design (Fixes #19) 2011-08-21 01:42:10 +02:00
Alexis Metaireau
95fb9bbbfd Add the project to the local context even if it is already in session. 2011-08-20 00:28:58 +02:00
Alexis Metaireau
3c4d87ae52 forgot to commit changes to web.py 2011-08-20 00:24:00 +02:00
Alexis Metaireau
28a3abf96d No need anymore to pass the project_id to the urls.
The project is now directly added to the context local g object, and injected on the fly into the urls that need it.

This commits also add ideas found while reading the flask documentation. The project can be enhanced in many ways, some ideas are stated there.
2011-08-19 23:44:54 +02:00
Alexis Metaireau
402d756bf1 Make flash messages go away after 2 seconds. 2011-08-10 23:55:07 +02:00
Alexis Metaireau
065fe965a0 Add a set_default argument to the get_billform_for function. 2011-08-10 19:47:06 +02:00
Alexis Metaireau
67350e7acc Add some simple javascript for usability.
* Ask confirmation before deleting an user
* Display the form when clicking on the add bill button
* Only show the delete button (for users) on mouse over.
2011-08-10 19:23:54 +02:00
Alexis Metaireau
822058b251 Add some more tests about membership. (#14)
Fixes #15 as invalid: deactivated users are not listed on the bill form or on the balance.
2011-08-10 17:49:35 +02:00
Alexis Metaireau
683c7ee0b8 Add tests about project creation and member add.
See #14
2011-08-10 17:07:23 +02:00
Frédéric Sureau
325b098345 Margin added between the add bill button and the bill list. 2011-08-10 13:16:46 +02:00
Frédéric Sureau
8a79f2d00c The delete bill feature has been fixed. #6 2011-08-10 13:05:01 +02:00
Frédéric Sureau
922bf769f9 It is now possible to edit existing bills. 2011-08-10 12:59:30 +02:00
Frédéric Sureau
af2ca220a7 Automatically select all members of the 'payed for' field when adding a bill. 2011-08-10 10:48:14 +02:00
Frédéric Sureau
7ee2e74969 Changed 'for' value of checkboxes labels when adding a bill. This is now possible to check the correct box when you click on the label. 2011-08-10 10:28:41 +02:00
Alexis Metaireau
98f9d96a27 Fixes various typos. 2011-08-10 01:05:25 +02:00
Alexis Metaireau
5c44e495b7 get ready for production, baby :) 2011-08-10 00:53:15 +02:00
Alexis Metaireau
8050defa8f remove the debug route for production 2011-08-10 00:47:50 +02:00
Alexis Metaireau
0b180a7e9a use checkboxes rather than select multiple. Fixes #10 2011-08-10 00:20:16 +02:00
Alexis Metaireau
04fa8d5b02 Styling stuff. Fixes #9 (Adds a menu) 2011-08-09 23:49:44 +02:00
Alexis Metaireau
10642d9ad1 formatting 2011-08-09 23:49:44 +02:00
Alexis Metaireau
cdc6f2e1c4 Add tests to make test that invitations are sent.
Fixes #7
2011-08-09 23:49:44 +02:00
Alexis Metaireau
bdbc6361b9 fixes authentication (#9) 2011-08-09 23:49:44 +02:00
Alexis Metaireau
78914962ed Add tests about sending notifications. #7 2011-08-09 23:49:44 +02:00
Alexis Metaireau
4b08af56f8 Do not redirect users to the creation form when they are trying to log in.
Fixes #9
2011-08-09 23:49:44 +02:00
Frédéric Sureau
0e5bab13af Users are deleted when no bill is assigned to them. Fixes #5 2011-08-09 19:34:46 +02:00
Frédéric Sureau
cb05727ec3 We now are able to set the date when adding a bill. 2011-08-09 18:28:48 +02:00
Frédéric Sureau
3c5ac5b782 The bills list now only displays the specific bills of the project. 2011-08-09 18:05:55 +02:00
Frédéric Sureau
efb9d8942c Corrected typo on home page 2011-08-09 17:26:57 +02:00
Frédéric Sureau
1c33248e72 Updated header label in the bills list. 2011-08-05 17:05:33 +02:00
Frédéric Sureau
e6def5587a Changed password field type in authentication form. 2011-08-05 16:44:31 +02:00
Frédéric Sureau
410c4596df Error display changed. 2011-08-05 16:42:43 +02:00
Frédéric Sureau
4e24edd5c9 Submit button label changed in project creation form 2011-08-05 16:12:02 +02:00
Frédéric Sureau
f4da4d9a33 Changing submit buttons display 2011-08-05 16:10:21 +02:00
Alexis Metaireau
769bcbf3f1 Makes the computation working. 2011-07-31 23:55:18 +02:00
Alexis Metaireau
548101d8bb Some more theming and fixes. 2011-07-31 23:55:02 +02:00
Alexis Metaireau
37be0f4fa1 Theming.
Uses uni-form to style forms and add a macro to ease this.
Of course, the overall thing has to be reworked, but having this in place will
help us to have something easier to change when we will really care about design.

All the form templates can now be defined in templates/forms.html and be called
thansk to {{ forms.name_of_the_form(form) }}.

I've done some styling, but that's really not my thing, feel free to modify it.
2011-07-31 16:33:29 +02:00
Alexis Metaireau
3417a5a7d4 List the projects in session into the home page.
This allows easier access when people don't remembre the name / url of their projects.
2011-07-31 00:53:12 +02:00
Alexis Metaireau
2df6e11f05 Adding a bill is now working properly 2011-07-31 00:41:28 +02:00
Alexis Metaireau
ea136b506b List existing sessions on the home.
Also factorize the code to display errors in forms.
2011-07-30 15:47:51 +02:00
Alexis Metaireau
87ea045059 Invite people after project creation.
Uses the flask-mail extension.
2011-07-30 15:47:26 +02:00
Alexis Metaireau
e214b39b44 Fixes an unwanted error "user already exists".
Doing a query with an AND SQL statement needs to be done with multiple "filter" callswith SQLAlchemy.

Here, we want to be sure that the username is not used AND that the project is the same than the eventual users that would match. The previous version of the code returned an user with the same name, even if the user wasn't in the right group.
2011-07-30 01:51:13 +02:00
Alexis Metaireau
ab305ccbc6 Put back the old version of authenticate.
(Fred, is there a reason why you're using form.id.validate()? Doesn't seem to be defined in here.

Also properly deletes the session using session.clear rather than session = None.
As session is an observable object, if it is updated to None, the session will *not* be invalided at the end of the request. Instead, you have to call clear() which will clear its members so the cookie will be updated accordingly at the end of the request.
2011-07-30 01:32:55 +02:00
Alexis Metaireau
0fc95cefb4 Add templates to add a member. 2011-07-30 01:31:56 +02:00
Alexis Metaireau
fcf33e9fdb Uses blueprint classes rather than floats. 2011-07-30 01:31:14 +02:00
Frédéric Sureau
e9b9a06779 Adding bill works 2011-07-29 17:14:33 +02:00