milesj / forum

[Deprecated] A CakePHP plugin for forum / bulletin board systems.
MIT License
131 stars 57 forks source link

Notifications #10

Closed jameslarking closed 12 years ago

jameslarking commented 12 years ago

Are there any plans in place for putting notifications in place for topics or general daily summaries?

milesj commented 12 years ago

Yes but the most I was planning on doing was list out all the activity in the topics you have posted in, within a user dashboard.

jameslarking commented 12 years ago

I was thinking more along the lines of emails notifying people of new posts in threads they have posted on or are subscribed to. A bit like the email that GitHub sent me notifying me of your message on this issue.

milesj commented 12 years ago

The only issue I have is that the emails could get really spammy. Say a topic gets replied to 15 times within a few minutes, you'll get spammed with 15 emails. The only way to circumvent this is with a cronjob but that would require quite a bit of work on the devs end, unless you don't mind doing that.

milesj commented 12 years ago

Also, Cake 1.3 or 2.0?

jameslarking commented 12 years ago

I know what you mean about the spam so was thinking it should certainly be an option to auto subscribe people to topics that they are posting to and make it up to whoever is installing it as to whether they turn this on or not. Making a shell to send a daily summary wouldn't be an issue and yes, I can do this. The tricky part for me might be integrating with the existing options interface etc although I haven't really looked at the code yet to see how easy that's going to be.

I'll fork it and have a bit more of a think tomorrow.

jameslarking commented 12 years ago

regards cake version choice, I actually don't mind. I didn't notice a 2.x branch of your code. If there is one then I'll probably use that. Do you have one?

jameslarking commented 12 years ago

actually, i guess it doesn't need to be an option in the interface, can just put it in config file. that would be easier.

jameslarking commented 12 years ago

I've done fairly well with this today. I have a "notifications" branch in my fork of your project which has post notifications up and running. I've not created a pull request yet as I think it probably needs a bit more testing as well as some more code documentation but you're welcome to give it a go.

jameslarking commented 12 years ago

just realised i haven't added the necessary schema. will do that probably tomorrow now but if you are planning on looking at it then you'll need table subscriptions with topic_id and user_id as well as an auto inc id field

milesj commented 12 years ago

Looks interesting, I would of made the notification settings part of the settings table so that you can configure it in the admin.

Also a shell to handle the email sending.

jameslarking commented 12 years ago

yeah, agreed but I think way is also valid so that other people using the forum wouldn't have to set up a cron to send the messages (so it works straight out of the box). I added the option to "sendImmediately" which would use this method and planned the shell that would use be introduced if this option was not selected.

agree with you on the settings table too - haven't looked at where that is configured - can you point me in the direction?

milesj commented 12 years ago

Would have to add it to the schema and the settings view.

https://github.com/jameslarking/cake-forum/blob/notifications/config/schema/settings.sql https://github.com/jameslarking/cake-forum/blob/notifications/views/forum/admin_settings.ctp

milesj commented 12 years ago

Added in 2.2.