View Single Post
  #480  
Old 08-18-2004, 09:30 PM
PokerFinder PokerFinder is offline
 
Join Date: Aug 2004
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi,

I have made changes per your sugestions...thanks...now...I can't get my posts to show up on usenet. it simply stays on my forum but i can get new posts fine.

i did several tests sending and out of 9, only 1 post went through...my port 119 isnt blocked and i have used a nntp gateway before (mynewsgroups but switched to this wonderful hack. please help!

ps. am i suppose to have the gateway or nntp/newsgroup settings in vbulletin option in admin cp area? i saw them when i installed it but then it disappeared :ermm:

Quote:
Originally Posted by kmike
Observant Usenet user emailed me that some replies going to Usenet from our gateway didn't have "References" header and "Re: " in the subject. I investigated this, and it appears that current code is indeed buggy.

Current code first chooses new forum threads and then new posts to send to news server, but SQL query responsible for new threads gets it all wrong.
It gets not only new threads' posts themselves, but also posts to the same thread by the thread author, if the thread was started from the forum. It means that all subsequent forum posts to the thread by the thread author won't get "References" header and also "Re: " in the subject, and therefore won't be threaded in the newsgroups.

The fix is to use special "firstpostid" field in the thread table for determining the first post in the thread.

Replace this code:
PHP Code:
                $get_newthreads=$DB_site->query("SELECT post.*, thread.*,
                        post.dateline AS postdateline, post.msgid AS postmsgid,
                        thread.title AS threadtitle
                        FROM " 
TABLE_PREFIX "post as post LEFT JOIN " .
                        
TABLE_PREFIX "thread as thread ON (
                        thread.threadid = post.threadid
                        AND post.userid = thread.postuserid)
                        WHERE post.isusenetpost = 0 AND
                        post.postid > 
{$nntp_settings['last_postid']} AND
                        thread.forumid = 
{$group['forum']}"); 
with this:
PHP Code:
                $get_newthreads=$DB_site->query("SELECT post.*, thread.*,
                        post.dateline AS postdateline, post.msgid AS postmsgid,
                        thread.title AS threadtitle
                        FROM " 
TABLE_PREFIX "thread as thread LEFT JOIN " .
                        
TABLE_PREFIX "post as post ON
                        thread.firstpostid = post.postid
                        WHERE post.isusenetpost = 0 AND
                        post.postid > 
{$nntp_settings['last_postid']} AND
                        thread.forumid = 
{$group['forum']}"); 
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01118 seconds
  • Memory Usage 1,799KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.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_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • 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
  • showpost_complete