openfarmcc / OpenFarm

A free and open database for farming and gardening knowledge. You can grow anything!
https://OpenFarm.cc
MIT License
1.58k stars 243 forks source link

Shared Gardens #485

Open roryaronson opened 9 years ago

roryaronson commented 9 years ago

My roommates and I share the same physical Garden, it only makes sense that we should be able to share the same virtual one too.

This may be a feature for way down the road as it starts to make OpenFarm somewhat of a social network, which, I think is something that could be really powerful.

Thoughts?

md5 commented 9 years ago

As​ an outside observer, my first thought is: What happens when people "break up"? Can one of them trash the data that the other one cares about? How do you determine who should actually control the garden?

Perhaps you can make it easy to clone a shared garden into a private one or something. Or perhaps I'm just paranoid :)

roryaronson commented 9 years ago

Haha no that's a super valid point! Maybe there doesn't really need to be an owner, only people who access it? Like in real life: there are Gardens, and people can access them, but the garden never really goes away if everybody leaves town.

Perhaps someone could vandalize the garden though. A break up happens and one person deletes all the plants in the garden ;( But perhaps that is not for us to manage...

Though there could be some basic access controls. For example a garden could be viewed or edited by: anyone, a specific group of people, or just one person.

md5 commented 9 years ago

Perhaps it would actually be worth looking at something like mongoid-history to deal with vandalism concerns, though you have to think seriously about storage concerns when you start storing the history of every change. Having a history would be good for just being able to recover from screwups too.

roryaronson commented 9 years ago

Yes I was thinking about that dangerous delete garden button this morning. Maybe it should be an 'Archive Garden' button, and once a garden is archived it can either be deleted or restored.

There could also be an undo button for any changes made? Not sure how hard that is...