Thread: vBindex
View Single Post
  #401  
Old 07-26-2002, 05:17 PM
Grower Grower is offline
 
Join Date: Dec 2001
Posts: 8
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I highly recommend everybody using this hack to install also "Thread Preview Hack". Some level of data redundancy is the only way to go with this kind of hack. Then you can remove extra queries in loop (putting query into a loop is always the worst solution and should be avoided).

For those who have installed this hack and have also "firstpostid" column in thread table here is code you can use for pulling news:
Code:
// news by nakkid (modified)
// -------------------------
$newsquery=$DB_site->query("SELECT thread.threadid,thread.title,thread.dateline,thread.postusername,thread.postuserid,
thread.replycount,thread.iconid,post.pagetext,icon.title AS icontitle,icon.iconpath
FROM thread
LEFT JOIN post ON thread.firstpostid = post.postid
LEFT JOIN icon ON icon.iconid = post.iconid
WHERE forumid='$newsforum' ORDER BY thread.dateline DESC LIMIT $newsposts");
while ($news=$DB_site->fetch_array($newsquery)) {
  $newsthreadid=$news[threadid];
  $newstitle=$news[title];
  $newstime=vbdate($timeformat,$news[dateline]);
  $newsdate=vbdate($dateformat,$news[dateline]);
  $newsusername=$news[postusername];
  $newsuserid=$news[postuserid];
  $comments=$news[replycount];

  $newstext=bbcodeparse($news[pagetext],$newsforum,1);
  $newstext=str_replace("<br />","",$newstext);

  if ($news[iconid]=='0') {
	$news[icontitle]="";
	$news[iconpath]="https://vborg.vbsupport.ru/images/icons/icon.gif";
  }

  eval("\$newsbits .= \"".gettemplate('home_newsbit')."\";");
}

eval("\$news = \"".gettemplate('home_news')."\";");
Also there is an error on first few lines where templatesused string is filled (missing commas) which caused extra queries. Here is fixed code:
Code:
$templatesused='error_nopermission,home,home_buddy1,home_buddy2,home_footer,home_header,home_headinclude,home_left';
$templatesused.=',home_login,home_logout,home_news,home_newsbit,home_nothreads,home_poll,home_pollresult,home_right';
$templatesused.=',home_threadbit,home_threads,forumhome_loggedinuser,forumhome_loggedinusers,maxloggedin';
This thread is so long that I hope I'm not reposting something already fixed
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01058 seconds
  • Memory Usage 1,768KB
  • 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_code
  • (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