codetech / codetechcomputerclub

codeTech Computer Club's website.
MIT License
4 stars 1 forks source link

Add Subscribe Feature to Projects #1

Open jonjmz opened 10 years ago

jonjmz commented 10 years ago
jacksonrayhamilton commented 10 years ago

We might use a subscription table with the following fields:

However, we do already have a join table that creates a hasAndBelongsToMany relationship between users and projects. That is already technically sufficient for "subscribing" (actually "joining", and then just sending update messages to all users who have joined the project).

The benefit that a subscriptions table offers is the ability to control whether you receive certain types of messages for certain projects. The disadvantage is that it offers an extra level of complexity to the application; users "join" a project, but does that mean they are automatically "subscribed" to it as well? (I'd say that initially they are, but they can unsubscribe after they join it.)

Users could also subscribe to a project that they have not joined.

Because adding a subscriptions table adds an extra level of complexity to the application, it might be better to first implement a "Join Project" button, and then email updates to any joined users if they have receiveemail or receivesms set to true; then later (maybe very soon) we can implement actual subscriptions.

jacksonrayhamilton commented 10 years ago

Ability to subscribe and unsubscribe implemented; needs a place to set preferences for subscriptions, and an ability to send subscription messages when updating a project page.