FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » FUDforum Development » Plugins and Code Hacks » [MOD] 10 Recent Topics  () 3 Votes
Show: Today's Messages :: Unread Messages :: Polls :: Message Navigator
| Subscribe to topic | Remove from bookmarks 
Switch to threaded view of this topic Create a new topic Submit Reply
icon10.gif  [MOD] 10 Recent Topics [message #166161] Tue, 04 October 2011 15:52 Go to next message
SecTest is currently offline  SecTest   Germany
Messages: 7
Registered: August 2011
Karma: 2
Junior Member
add to buddy list
ignore all messages by this user
Hi,

I created this mod for my site, and i want to share it with you. I think many peoples need it Wink

1) recenttopics.inc.t
(Create "recenttopics.inc.t" in "../src/" folder)
<?
/*
Mod Recent Topics
Author: LHT
*/
function enable_recenttopics()
{
	// Queries
	$get_thread_informations = q('SELECT id,last_post_date,replies,views,last_post_id FROM '. $GLOBALS['DBHOST_TBL_PREFIX'] .'thread ORDER BY last_post_date DESC LIMIT 20');
	$RECENT_TOPICS = array (
		0  	=> array(),
		1   => array(),
		2   => array(),
		3   => array(),
		4   => array(),
		5   => array(),
		6   => array(),
		7   => array(),
		8   => array(),
		9   => array()
	);
	$RECENT_TOPICS_COUNT = 0;
	while($store_array = db_rowarr($get_thread_informations)) {
		$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['THREADID']=$store_array[0];
		$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['DATE']=date("D, d F Y",$store_array[1]);
		$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['REPLIES']=$store_array[2];
		$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['VIEWS']=$store_array[3];
		$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['LASTPOSTID']=$store_array[4];
		$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['SUBJECT']= q_singleval('SELECT subject FROM '. $GLOBALS['DBHOST_TBL_PREFIX'] .'msg WHERE thread_id='. $store_array[0]);
		if(sizeof($RECENT_TOPICS[$RECENT_TOPICS_COUNT]['SUBJECT'])>0)
		{
			$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['POSTERID']= q_singleval('SELECT poster_id FROM '. $GLOBALS['DBHOST_TBL_PREFIX'] .'msg WHERE thread_id='. $store_array[0]);
			$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['POSTERALIAS']=q_singleval('SELECT alias FROM '. $GLOBALS['DBHOST_TBL_PREFIX'] .'users WHERE id='.$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['POSTERID']);
			$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['LASTPOSTERID']= q_singleval('SELECT poster_id FROM '. $GLOBALS['DBHOST_TBL_PREFIX'] .'msg WHERE id='. $store_array[4]);
			$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['LASTPOSTERALIAS']=q_singleval('SELECT alias FROM '. $GLOBALS['DBHOST_TBL_PREFIX'] .'users WHERE id='.$RECENT_TOPICS[$RECENT_TOPICS_COUNT]['LASTPOSTERID']);
			$RECENT_TOPICS_COUNT++;
		}else
		{
			$RECENT_TOPICS_COUNT--;
		}
	}
	// Recent Topics Table's body
	for($RECENT_TOPICS_COUNT=0;$RECENT_TOPICS_COUNT<10;$RECENT_TOPICS_COUNT++)
	{
		echo '
<tr class="row">
	<td class="RowStyleB nw">'. $RECENT_TOPICS_COUNT .'</td>
	<td colspan="3" class="RowStyleA wa"><a href="index.php?t=msg&amp;th='. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['THREADID'] .'&amp;start=0&amp;">'. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['SUBJECT'] .'</a></td>
	<td class="RowStyleA nw"><a href="index.php?t=usrinfo&id='. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['POSTERID'] .'&">'. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['POSTERALIAS'] .'</a></td>
	<td class="RowStyleB nw">'. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['REPLIES'] .'</td>
	<td class="RowStyleB nw">'. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['VIEWS'] .'</td>
	<td class="RowStyleA nw"><a href="index.php?t=usrinfo&id='. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['LASTPOSTERID'] .'&">'. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['LASTPOSTERALIAS'] .'</a></td>
	<td class="RowStyleB nw">'. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['DATE'] .'</td>
	
</tr>';
	}
	// Recent Topics Table's foot
	echo '
	</table><br>';
	// Free Memory
	unset($get_thread_informations);
	unset($store_array);
	unset($RECENT_TOPICS);
}
?>


2) recenttopics.tmpl
(Create recenttopics.tmpl in ../thm/YOUR_THEME_NAME/tmpl/ folder)
{PHP_FILE: input: recenttopics.inc.t; output: recenttopics.inc;}
{MAIN_SECTION: recenttopics RecentTopics}
<table cellspacing="1" cellpadding="2" class="ContentTable">
<tr>
	<th class="nw">{MSG: rated}</th>
	<th colspan="3" class="wa">10 {MSG: usrinfo_last_post}</th>
	<th class="nw">{MSG: starter}</th>
	<th class="nw">{MSG: replies}</th>
	<th class="nw">{MSG: views}</th>
	<th class="nw">{MSG: last_poster}</th>
	<th class="nw">{MSG: date_posted}</th>
</tr>
	{FUNC: enable_recenttopics()}
{MAIN_SECTION: END}


3) Modify index.tmpl
(Open "index.tmpl" in "../thm/YOUR_THEME_NAME/tmpl/" with Text Editor)
=============================================================
Find:
{REF: draw_forum_list.tmpl}

Add after:
{REF: recenttopics.tmpl}

=============================================================
Find:
{TEMPLATE-DATA: announcements}

Add after:
{TEMPLATE: recenttopics}


4) Modify language file
(Open "msg" in ../thm/YOUR_THEME_NAME/i18n/YOUR_LANG/ with Text Editor)
Add:
rated:Rated
starter:Starter
last_poster: Last Poster


5) Rebuild your Template from Admin Panel !



Re: [MOD] 10 Recent Topics [message #166184 is a reply to message #166161] Sun, 09 October 2011 08:39 Go to previous messageGo to next message
naudefj is currently offline  naudefj   South Africa
Messages: 3771
Registered: December 2004
Karma: 28
Senior Member
Administrator
Core Developer
add to buddy list
ignore all messages by this user
Excellent mod, thanks!

On a side note: mods like these are kind of difficult to install. If you have time, it would be great if you can refactor it into a plugin.
Message by The Witcher is ignored  [reveal message]  [reveal all messages by The Witcher]  [stop ignoring this user] Go to previous messageGo to next message
Re: [MOD] 10 Recent Topics [message #166209 is a reply to message #166206] Tue, 11 October 2011 09:19 Go to previous messageGo to next message
naudefj is currently offline  naudefj   South Africa
Messages: 3771
Registered: December 2004
Karma: 28
Senior Member
Administrator
Core Developer
add to buddy list
ignore all messages by this user
The path_info theme should probably not have a index.tmpl" at all. Please rename/delete it and let us know if it helps.
Message by The Witcher is ignored  [reveal message]  [reveal all messages by The Witcher]  [stop ignoring this user] Go to previous messageGo to next message
Re: [MOD] 10 Recent Topics [message #166214 is a reply to message #166213] Tue, 11 October 2011 19:42 Go to previous messageGo to next message
SecTest is currently offline  SecTest   Germany
Messages: 7
Registered: August 2011
Karma: 2
Junior Member
add to buddy list
ignore all messages by this user
I remember that Path_Info uses Data from other Theme. Did you try to build Default theme first, then build Path_Info ?

@naudefi: Thanks, I'll try to make it into plugin later when i have time.
Message by The Witcher is ignored  [reveal message]  [reveal all messages by The Witcher]  [stop ignoring this user] Go to previous messageGo to next message
Re : Re: [MOD] 10 Recent Topics [message #168089 is a reply to message #166215] Thu, 24 January 2013 16:11 Go to previous message
TheDude is currently offline  TheDude
Messages: 120
Registered: November 2012
Location: France
Karma: 2
Senior Member
add to buddy list
ignore all messages by this user
Awesome mod : works perfectly !
Thanks
TheDude


Quick Reply
Formatting Tools:   
  Switch to threaded view of this topic Create a new topic
Previous Topic: Using mailman, fud, /etc/aliases, maillist.php, and custom filter scripts
Next Topic: Spotify plugin
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Thu Oct 10 19:34:05 EDT 2024

Total time taken to generate the page: 0.05363 seconds