Go Back   vb.org Archive > Community Discussions > Modification Requests/Questions (Unpaid)
Prev Previous Post   Next Post Next
  #5  
Old 09-16-2005, 03:24 AM
PennylessZ28 PennylessZ28 is offline
 
Join Date: Mar 2002
Location: North America
Posts: 737
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by aranthorn
Well, I modified NTLDR's 'Latest Threads On Forum Home' hack to do it
In Index.php
PHP Code:
// #################### PROCESS LATEST THREADS #######################
// fetch the permissions for each forum
$forumperms = array();

foreach(
$forumcache AS $forum) {

    
$forumperms["$forum[forumid]"] = fetch_permissions($forum['forumid']);

    
// ## HIDE FORUMS WITHOUT THE CANVIEW OR CANVIEWOTHERS PERMISSION ##
    
if (!($forumperms["$forum[forumid]"] & CANVIEW) || !($forumperms["$forum[forumid]"] & CANVIEWOTHERS)) {
        
$limitfids .= ','.$forum['forumid'];
    }
}
unset(
$forum);

if (
$vboptions['threadpreview'] > 0) {
    
$previewfield ', post.pagetext AS preview';
    
$previewjoin 'LEFT JOIN '.TABLE_PREFIX.'post AS post ON(post.postid = thread.firstpostid)';
}
$datecut2 TIMENOW - (7*24*60*60);
$getthreads $DB_site->query("
    ## GET LATEST THREADS ##
    SELECT thread.*,thread.iconid AS threadiconid 
$previewfield
    FROM "
.TABLE_PREFIX."thread AS thread
    LEFT JOIN "
.TABLE_PREFIX."deletionlog AS deletionlog ON(thread.threadid = deletionlog.primaryid AND type = 'thread')
    
$previewjoin
    WHERE thread.dateline > 
$datecut2
    AND open = '1'
    AND forumid NOT IN (0
$limitfids)
    AND thread.visible = '1'
    AND deletionlog.primaryid IS NULL
    ORDER BY replycount
    DESC LIMIT 50"
);

while(
$thread $DB_site->fetch_array($getthreads)) {

    
$threads true;
    
$thread['title'] = fetch_censored_text(fetch_trimmed_title(unhtmlspecialchars($thread['title']), 22));
    
$thread['date'] = vbdate($vboptions['dateformat'], $thread['lastpost'], 1);
    
$thread['time'] = vbdate($vboptions['timeformat'], $thread['lastpost']);
    
$thread['preview'] = preg_replace('#\[quote(=("|"|\'|).*\\2)?\](.*)\[/quote\]#siU'''$thread['preview']);
    
$thread['preview'] = htmlspecialchars_uni(fetch_trimmed_title(strip_bbcode(fetch_censored_text($thread['preview']), falsetrue), $vboptions['threadpreview']));
    
$thread['replycount'] = vb_number_format($thread['replycount']);
    
$thread['views'] = vb_number_format($thread['views']);

    
// thread icon
    
$show['icon'] = false;
  
$icon fetch_iconinfo($thread['iconid']);

  if (
is_array($icon)) {
      
$show['icon'] = true;
      
$thread['threadiconpath'] = $icon['iconpath'];
      
$thread['threadicontitle'] = $icon['title'];
  }

    
// show goto new post
    
$show['firstnew'] = false;
    
$bbforumview fetch_bbarray_cookie('forum_view'$thread['forumid']);

    if (
$bbforumview $bbuserinfo['lastvisit']) {
        
$lastread $bbforumview;
    } else {
        
$lastread $bbuserinfo['lastvisit'];
    }

    if (
$thread['lastpost'] > $lastread) {

        
$threadview fetch_bbarray_cookie('thread_lastview'$thread['threadid']);

        if (
$thread['lastpost'] > $threadview) {
            
$show['firstnew'] = true;
            
$show['icon'] = false;
        }
    }

    
exec_switch_bg();

    eval(
"\$dungeonbit2 .= \"".fetch_template('dungeonbit_2')."\";");
}
if (
$threads) {
    
$show['latestthreads'] = true;
}
// memory saving
unset($thread$threads);
$DB_site->free_result($getthreads); 
Then made a template called 'dungeonbit_2'
HTML Code:
<div class="smallfont">
	<if condition="$show['firstnew']">
		<a href="showthread.php?$session[sessionurl]threadid=$thread[threadid]&goto=newpost"><img src="$thread[threadiconpath]" alt="$thread[threadicontitle]" border="0" /></a>
	</if>
	<if condition="$show['icon'] && !$show['firstnew']">
		<img src="$thread[threadiconpath]" border="0" alt="$thread[threadicontitle]" title="$thread[threadicontitle]" style="vertical-align: text-middle" /> 
	</if>
	<a href="showthread.php?$session[sessionurl]threadid=$thread[threadid]" title="$thread[preview]"><strong>$thread[title]</strong></a>
	</if> <phrase 1="member.php?$session[sessionurl]find=lastposter&threadid=$thread[threadid]" 2="$thread[postusername]">$vbphrase[by_x]</phrase>
</div>
Then just plopped the $dungeonbit2 string on the FORUMHOME template where I wanted it.

Not to dig up an old thread, but what if you wanted to do both The Latest Threads, and Hot Threads?
Reply With Quote
 

Thread Tools
Display Modes

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 05:43 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03758 seconds
  • Memory Usage 2,576KB
  • Queries Executed 13 (?)
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
  • (2)bbcode_html
  • (2)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (1)postbit_attachment
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)showthread_list
  • (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_threadedmode.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
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • 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_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete