Commit Graph

8 Commits

Author SHA1 Message Date
Régis Freyd a2172f0851 Add style CI (#503)
Hopefully this will result in slightly better code.
2017-07-26 21:02:55 -04:00
Régis Freyd 4a0598b9d7 Add ability to define name order (#377)
Not everyone lives in the western culture. In some countries, names are not defined in the `firstname lastname` order, but rather the opposite, `lastname firstname`.

You can now define this order in your Settings panel.

Close #372
2017-06-22 16:43:19 -04:00
Régis Freyd 5b5b2da5f8 Add multi user support and subscriptions (#359)
This pull request adds support to multi users in one account. It also introduces the notion of subscriptions.

Accounts can now have multiple users.

Subscriptions are defined by a new env variable called REQUIRES_SUBSCRIPTION, and defaults to false. As promised, all the paid features on .com will be free if you download and host Monica on your own server.
2017-06-20 20:51:40 -04:00
Yamamoto Kadir 86fe1baeef Refactor SettingsController for readability (#308)
* Refactor SettingsController
* Fix issues with account deletion
2017-06-16 19:26:06 -04:00
Yamamoto Kadir 496d23e4a7 Separate PeopleController into smaller chunks (#253)
* Edit relation docblocks of Contact model
* Move activities to its own controller
* Move reminders to its own controller
* Move tasks to its own controller
* Refactor Gift in preparation for the move
* Move gifts into its own controller
* Fix failing tests
* Move debt to its own controllelr
* Fix tests failing on PHP7
* Move significant others to its own controller
* Move kids to its own controller
* Move notes to its own controller
* Some more adjustments & solving #277
And more query optimizations
2017-06-15 15:03:22 -04:00
Yamamoto Kadir 50005544ee Fix some relationship inconsistencies and reduce dashboard queries (#209)
This normalizes all relationships and adds relations to models to take advantage of laravel's eagerloading and reduce queries to the database.

This might go against the 'add any kind of complexities whatsoever' rule in the contribution guide, but I think adding relations would eventually simplify the code base. The amount of queries just on the dashboard fell from ~70 to 26. There's also a lot of boilerplate code in the Contact model to retrieve relationships and to maintain accurate count of them (fields like number_of_*). They can be greatly simplified with the addition of relations.

One other thing in the Contact model was the definition of the Contact-User relation. This definition uses the account_id field in the contacts table and and relates it to id in users. I'm not sure if this is the intention, since the id from accounts table is used when assigning account_id for a contact. This seems to have worked so far, because both a user and its associated account are created at the same time during registration and their ids match, but if there was any difference, this relationship would relate wrong contacts and users. I changed the relationship name to account. This makes the path to a user from a contact is $contact->account->user right now.
2017-06-11 23:01:23 -04:00
Paul Anthony 503f38ee06 Add new currency table and make debt currency agnostic (#188)
* add new currency table and make debt currency agnostic

* removed currencytableseeder from production run job

* russian ruble added to currencies

* fix up default value

* fix down migration and remove seed
2017-06-10 21:34:15 -04:00
Regis Freyd 2e6760e7db Migrate to organization 2017-02-16 19:21:44 -05:00