Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons

Reply
 
Thread Tools
Import Unread News from a Forum Details »»
Import Unread News from a Forum
Version: 3.0, by antialiasis antialiasis is offline
Developer Last Online: Nov 2013 Show Printable Version Email this Page

Version: 3.5.4 Rating:
Released: 05-08-2006 Last Update: 06-23-2006 Installs: 16
Uses Plugins Template Edits
 
No support by the author.

This hack will allow you to specify one or more forum IDs in your Admin CP as "news forums". Every time a thread is created in these forums, all users will see an "Unread news" notification at the top of every page of the forum until they view the unread news thread. If many news threads are unread, they will all be shown in the notification and removed one by one as each thread is viewed.

This hack both serves to make sure all users are aware of posted news and to give users who return after a long absence a quick rundown of what has been going on in the forums since they last were there.

As of version 2.0, it is possible to specify:

- Time cutoff: all news older than x days will count as read
- Only check for read status on latest x threads: only the latest x news will be shown if unread; all older news will always be treated as read
- Maximum number of news to display at one time: if a user has more unread news (after the time cutoff and latest x filter) than the number specfied, only that number will actually be displayed on the page
- Whether to make users see news created before they joined as unread
- Whether to show the date and time when each news thread was made or just the date

Please note that you must have Paul_M's Display who has read a thread hack installed for this to function correctly! You don't need to actually have the people who have read the thread shown for anybody at all (heck, if you're completely uninterested in what that hack does, you don't even need to make the template edit for it), but as long as it's installed, this hack will work.

Version 3.0 adds the ability to have more than one news forum and to set a PHP condition for each forum which must be met in order for news from that forum to be imported.

Installation

Simply download the product attached to this post and import it via the Admin CP Product Manager. Then make one template edit: add

Code:
$unreadnews
to the bottom of the header template.

------------------------------------

If using PHP version 4.x (or if you are getting an error message that looks something like Fatal error: Call to undefined function: array_combine() in /public_html/global.php(359) : eval()'d code on line 139), you additionally need to find this line in the Import News plugin on the hook global_start:

PHP Code:
   $newsarray array_combine($newsids$newsinfo); 
Replace it with

PHP Code:
   $newsarray = array();
foreach (
$newsids AS $key => $id)
{
   
$newsarray["$id"] = $newsinfo["$key"];

If using PHP 5 or later (which is the case if you don't get that error message), you will not need to make this edit.

------------------------------------

Afterwards, go to your vBulletin options, find the News Import System setting group, specify your news forum(s), set the other settings if you want, and turn the system on.

Don't forget to click Install if it's working for you. Enjoy!

Version 3.0: Added ability to have multiple news forums and use conditionals.
Version 2.23: Important bugfix from version 2.22
Version 2.22: Bugfixes
Version 2.21: Cutting off on the user's join date has been made an optional feature specified in the admin CP, and some unnecessary code has been removed. Also added alternative templates for no particular reason.
Version 2.2: Fixed uncached template, added "More..." link that links to the news forum when unread news are cut off by "Maximum number of news to display at one time" option, and all news created before the user registered will now count as read for that user. (Imagine registering and having twenty "unread news" notifications you have to plough through...)
Version 2.01: Added template edit information (I'm an official idiot for forgetting that) and fixed table prefixes.
Version 2.0: Added functionality (see above)

----------------------------

EXTRA: Alternative templates

If you don't like the way the current unread news box looks, I've got some more standard-looking templates you can use instead if you want. This also allows you to collapse the unread news, which might be useful. Just replace the templates, see how it looks, and revert the templates again if you liked the other look better.

Alternative custom_unreadnews template:

Code:
<if condition="$show['unreadnews']">
<br />
<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
   <thead>
      <tr>
         <td class="tcat"><a href="#top" style="float:$stylevar[right]" onclick="return toggle_collapse('unreadnews')"><img id="collapseimg_unreadnews" src="$stylevar[imgdir_button]/collapse_tcat$vbcollapse[collapseimg_unreadnews].gif" alt="" border="0" /></a> Unread News</td>
      </tr>
   </thead>
   <tbody id="collapseobj_unreadnews" style="$vbcollapse[collapseobj_unreadnews]">
      $newsitems
      <if condition="$show['importnewscutoff']">
      <tr>
         <td class="alt1"><a href="forumdisplay.php?$session[sessionurl]f={$vbulletin->options['importnewsforum']}" class="smallfont">More...</a></td>
      </tr>
      </if>
   </tbody>
</table>
</if>
Alternative custom_newsbit template:

Code:
      <tr>
         <td class="alt1">$timestamp: <strong><a href="showthread.php?$session[sessionurl]t=$id">$info[title]</a></strong></td>
      </tr>

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #32  
Old 05-11-2006, 07:15 AM
VTXCafe.com VTXCafe.com is offline
 
Join Date: Jul 2005
Posts: 73
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well, I tried again:

Fatal error: Call to undefined function: array_combine() in /public_html/global.php(359) : eval()'d code on line 139

Still not working.
Reply With Quote
  #33  
Old 05-11-2006, 09:50 AM
antialiasis's Avatar
antialiasis antialiasis is offline
 
Join Date: Jan 2006
Location: Iceland
Posts: 346
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You're using PHP 4.x. Follow the special instructions in the first post about editing the Import News plugin on global_start.

(I added information about that error message, too, for others who don't know what PHP version they're using - better play it safe.)
Reply With Quote
  #34  
Old 05-11-2006, 10:50 AM
reteep reteep is offline
 
Join Date: Mar 2004
Location: Germany
Posts: 164
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This mod is great, works here!
Reply With Quote
  #35  
Old 05-11-2006, 11:24 AM
rmxs rmxs is offline
 
Join Date: Apr 2006
Posts: 419
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

FINALY i unistall the global anouchements i install you hack and i unstall again tha GLOBAN anouch...

And everything Work Fine
Reply With Quote
  #36  
Old 05-11-2006, 12:47 PM
antialiasis's Avatar
antialiasis antialiasis is offline
 
Join Date: Jan 2006
Location: Iceland
Posts: 346
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by rmxs
FINALY i unistall the global anouchements i install you hack and i unstall again tha GLOBAN anouch...

And everything Work Fine
I'm glad it's working for you now.

Incidentally, thank you for posting that. It made me realize why I was having problems with something else: the order in which plugins are loaded depends on the time of installation. There must have been some plugins in Global Announcements that had to be loaded after some in my hack for some reason, which is why you were having those problems.

Another thing to know for future hacks...
Reply With Quote
  #37  
Old 05-11-2006, 02:35 PM
rmxs rmxs is offline
 
Join Date: Apr 2006
Posts: 419
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

can you tell me now how i fix this

Uncached templates: custom_newsbit (3)

The number (3) change if there is more news now there is 3
Reply With Quote
  #38  
Old 05-11-2006, 02:59 PM
antialiasis's Avatar
antialiasis antialiasis is offline
 
Join Date: Jan 2006
Location: Iceland
Posts: 346
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Oh, right, I forgot to cache that one.

Just add

PHP Code:
$globaltemplates[] = 'custom_newsbit'
to the bottom of the Cache import news template plugin on cache_templates.

Updated XML will be up soon; I'm going to add a couple of hack features anyway so I'll let it wait until I'm done with that.
Reply With Quote
  #39  
Old 05-11-2006, 03:05 PM
rmxs rmxs is offline
 
Join Date: Apr 2006
Posts: 419
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I have already add this i fount a tutorial about I waitng for more Features
Reply With Quote
  #40  
Old 05-11-2006, 03:56 PM
antialiasis's Avatar
antialiasis antialiasis is offline
 
Join Date: Jan 2006
Location: Iceland
Posts: 346
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Version 2.2 up, with a couple of additions and the template cache fix.

Any feature suggestions would be very much appreciated. I like working on this thing.
Reply With Quote
  #41  
Old 05-11-2006, 04:37 PM
rmxs rmxs is offline
 
Join Date: Apr 2006
Posts: 419
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

nice..

Suggestion : in new version you add all news created before the user registered will now count as read for that user..

byt now with this all new users dont know the news about forum...

i install it for that reason NEW Members READ THE NEWS

I thing it better to cutoff more than 5 and with More Link the BLOCK LOAD THE REST (if there is more news..)

I keep for the time the old Version new users must read the NEWS...

Keep going
Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:47 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.14024 seconds
  • Memory Usage 2,320KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_code
  • (3)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete