[MOD] 10 Recent Topics [message #166161] |
Tue, 04 October 2011 15:52 |
|
SecTest
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
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&th='. $RECENT_TOPICS[$RECENT_TOPICS_COUNT]['THREADID'] .'&start=0&">'. $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:
=============================================================
Find:
{TEMPLATE-DATA: announcements}
Add after:
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 #166215 is a reply to message #166214] |
Wed, 12 October 2011 05:48 |
The Witcher
Messages: 675 Registered: May 2009 Location: USA
Karma: 3
|
Senior Member |
add to buddy list stop ignoring messages by this user
|
|
SecTest wrote on Tue, 11 October 2011 18:42I 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.
Correct, and Yes I did, but I think I've got it now, thanks! It looks like a large part of the problem was my trying to build and implement it into a custom path theme at the same time I installed it rather than Just applying it directly to path_info itself and then building a new template set.
It seems the Mod doesn't need to be applied to every template set individually; applying it to the default and path info template sets works so far for all the included stock FUDforum template sets/themes (although it appears you can add it individually if you don't want it on every theme).
Only the 1st half of step 3 can or apparently needs to be applied to path_info's index.tmpl (like you said "Path_Info uses Data from other Themes/template sets" and I guess that's part of it).
I still want to fiddle with it some, and there are a few things I'd like to change for my own preferences (Last 10 Messages instead of 10 Last Message, Started By instead of starter, ability to change the number of msg's to show + or -).
All in all I like it a lot more than I thought I would, and I'm seeing more potential than at 1st glance.
"I'm a Witcher, I solve human problems; not always using a sword!"
|
|
|
|