View Full Version : Thread Display/Digest Hack?
I know VB doesn't have a 'digest' function. Will this be a new feature in the 2.0 upgrade? If not, is there a known hack that will create a digest for selected threads in *chronological* order, regardless of how the threads are displayed in each forum?
I switched from UBB, and I find VB to be a far superior product. The only feature I miss is the digest function, because I do a lot of thread archiving, and I (and several of my members) like to save finished threads as text files. In UBB, the digest will email the text of a thread - in chronological order - to whoever wants it, no matter how the threads are displayed in the forums.
I'm not looking for notification that tells me someone's posted to a thread, I need something that will email the text of the thread itself. I did search this section for a similar hack, but I came up empty-handed.
In VB, I've been using the 'Show As Printable Version' feature, and this works to a degree. The only dilemma I have is that I've got the threads displayed 'newest to oldest'. When I click on 'Show As Printable Version', it will display the text, but the text will also be listed from newest to oldest (and we'd prefer to not have to re-read it from the bottom to the top). As is stands, I have to switch the thread order back to chronological order, save all the finished threads as printed versions/text, then switch back.
Does anyone have any suggestions?
- RJ
I'm evaluating VB and I really need the digest function as well. I would like to be able to email to the group as well, but will settle for digest.
With VB you will not need to get rid of any message like you had to with ubb. I think that's partly why there isnt a digest made.
I have made a digest function for our team forums at SitePoint. I am going to upgrade that to fit version 2.0 and a member's subscribed forums. It will run as a CRON job and create the digests as often as you set the job to run.
Wluke, Great, are you willing to make that hack available? p.s. to the prior persons comment, the reason for the digest is becaus manay members want just a summary of the emails, not individual emails. It's much easier to take a quick look at what has transpired that way for many folks.
Since no one seems to be jumping on this, I'm going to have to hack it(in the truest sense) together. Here's the approach I've been thinking on....I'd appreciate any comments or suggestions.
1) Add a userfield to keep an array of the forums on a per user basis. This will keep a flag of some sort for each forum noting that the user wants a digest for that particular forum.
2) Modify forum bits to have a checkbox for each displayed forum that would allow user to request a digest for that forum. (I need some help here...what would be the cleanest way to do this? I would like it transparent to user...i.e. I'd rather not have to have them click some button to save the changes, it should be saved no matter what they do on the page).
3) A chron job will run daily to gather the text from new messages since the prior chron run...probably forum by forum for now....i.e. user would get one email per forum they have digest enabled for.
Step one, build the text for messages.
Step two, scan the user,userfied tables to see who gets this forum in digest mode and send email..pref. a large BCC for fewer emails going through SMTP
I'm still working through the best way to manage the forum flags in the forum display bits and the best way to represent the flag data in the db....I was thinking of a mask but don't want to complicate it if I don't have to.
Any thougts or other examples out there would be appreciated.
Anyone see probs with just doing a chronological forum display versus a forum/thread sort? If so, how would the later look in the email?
Originally posted by dons
Since no one seems to be jumping on this, I'm going to have to hack it(in the truest sense) together. Here's the approach I've been thinking on....I'd appreciate any comments or suggestions.
[quote]
1) Add a userfield to keep an array of the forums on a per user basis. This will keep a flag of some sort for each forum noting that the user wants a digest for that particular forum.
Would be better to add a field to the "subscribedforum" table.
digest smallint 6 not null default 0;
There is already an email notification field in there, but I feel it has other uses.
2) Modify forum bits to have a checkbox for each displayed forum that would allow user to request a digest for that forum. (I need some help here...what would be the cleanest way to do this? I would like it transparent to user...i.e. I'd rather not have to have them click some button to save the changes, it should be saved no matter what they do on the page).
In my opinion the cleanest way to do this would be similar to the move/delete functionality on the PM screen. They would have to click a button but you can set the programming in such a way so that the screen doesn't refresh.
3) A chron job will run daily to gather the text from new messages since the prior chron run...probably forum by forum for now....i.e. user would get one email per forum they have digest enabled for.
This is the best way to do it automatically.
pref. a large BCC for fewer emails going through SMTP
Programmatically using BCC over individual TO: must likely won't save email resources but might on PHP.
Anyone see probs with just doing a chronological forum display versus a forum/thread sort? If so, how would the later look in the email?
If someone subscribes to a very active forum, these emails can be quite large. I am personally working on doing a layout like:
Newthread title (XX replies)
Snippet of Text
...
Old Thread Title has XX New Replies
...
Related News (most likely from Moreover)
NewThreads are those created within the last 24 hours. Old Threads anything else. I will most likely insert targetted text advertisements in my digests as well.
What I have currently is for our team forums. It doesn't have subscription or template capabilities. It sends an email to everyone who has access to those forums regardless of their desire to receive it.
Is the emailupdate field really planned for other use? I can't find a reference to it in the code.
I'm also looking for a hack like this.
What about an extra field for example digestsent for the posts, true/false.
For digest make the email for all posts where digestsent =false, then set for these posts digestsent = true. Then you will only receive the new posts.
Anyway, looking forward to see your progress.
At this point it's not clear to me that I need to flag the posts themselves that a digest was processed if it's date/time driven...maybe just a field to log the date/time when the last digests were processed.
Originally posted by dons
Is the emailupdate field really planned for other use? I can't find a reference to it in the code.
Well I plan on using it for a different purpose. I have already added the digest field to my database and plan on offering a different digest for each forum and a summary digest for the entire community.
The summary digest will be available on a daily and weekly basis by subscription.
I am currently adding code so that the "emailupdate" field which is currently not referenced in the code can be marked to send members every post as they are made for the forums they choose. This would make the forum system more like a series of mailing lists and would improve participation in my opinion. This will however add a query to the database and as such, I had been waiting until vB 22 was much closer to final release. Since the issues with the upcoming beta 4 seem to small, I am pressing forward with the features I had planned for my communities. Some will be released to the public and some won't be.
You don't need a field to tell whether the digest was sent or not. If it runs as a CRON job you only have to pick up those posts and new threads that were made after the previous digest was made. If the digests are run daily then you simply have to pick all posts that were created at time() - 86400 (which is 24 hours earlier). If they are run weekly then you have to select from time() - 604800 (or 24 hours * 7 days).
Is also a good option, had not thought of this.
Wayne, that was my thinking. On the mode to send an email(emailupdate) for each post dynamically...to me it looks like either modifying the email_moderator template to include $message or if we want to retain that style, add another template and processing to the newthread and newforum
What approach are you taking for that? If we can work this through together that would be nice.
I am going to allow to forms of notification....
1. Normal Notification like they get now.
2. Notification with the message include.
This will add an option to their profile asking to "Include Message Text in Email Notifications?". Then if they say yes here, it will include the text in the Notification template. If not then they won't.
All send you a URL and a login later so you can see what I am talking about.
Luke, any progress? I'd love to see what you are doing on this...dcs;)
any news on this hack, I need this pretty badly....I went from a yahoo groups site that had daily participation to the new VB site that gets hardly any participation....for my users at least, the ease of posting and reciving emails make for a MUCH more interactive site.
Wayne Luke
05-16-2001, 03:40 PM
<a href="http://vbulletin.com/forum/showthread.php?s=&threadid=16290" target="_blank">http://vbulletin.com/forum/showthrea...threadid=16290</a>
bretzke
12-18-2001, 04:11 PM
I too am evaluating vB and need this funtion. I cannot access the above link. Is there a live site that is using this so I can see how this is working? Thanks!
Lesane
12-18-2001, 04:19 PM
change the .com to .org in the above url ;)
https://vborg.vbsupport.ru/showthread.php?s=&threadid=16290
hmolina
01-08-2003, 03:56 PM
okay... this would be just what i need... but how do i who knows very little about this stuff do this???
i'm only beginning to learn about php and mysql... how do i get this hack to work???
-Henry
hmolina
01-13-2003, 01:10 PM
can anyone email me what the email will look like|??? or do i have to build that??
-Henry
vBulletin® v3.8.12 by vBS, Copyright ©2000-2025, vBulletin Solutions Inc.