just let me know if i can be of service with some graphics editing....
Q
You are not logged in. Please login or register.
PunBB Forums → Posts by quaker
just let me know if i can be of service with some graphics editing....
Q
im working on another one that he did.. the blue style im adding some imgs and then im going to compress them... shoot me an email and ill send you a screenshot.
Q
I hope that Jayjay will approve of it. i have put it on punres style for download. i have gave all the porpper credits in the footer.
Q
mattf i was looking at it.. i might be wrong but does that need a new query from the user db tables?
Q
quaker wrote:<?php echo $is_online = ($cur_post['is_online'] == $cur_post['poster_id']) ? '<strong>'.$lang_topic['Online'].'</strong>' : $lang_topic['Offline']; ?>
Is that a suggestion or alteration? (Can't be arsed checking the code at the 'mo). Why do I get the feeling this will practically be a full blown mod by the time it's finished.
Btw, Bingiman, is this going to be incorporated into Megapun? If so, would creating config vars for the DB be okay, instead of some of the variables that require editing? I assume you'd be able to adapt the installer and admin sheets to cover that occasion?
mattf i was looking at the code for online off line for bing. seeing how to add that for him...
Might as well start working on a install_mod.php now..hahaha....
Q
<?php echo $is_online = ($cur_post['is_online'] == $cur_post['poster_id']) ? '<strong>'.$lang_topic['Online'].'</strong>' : $lang_topic['Offline']; ?>
that kewl.. i like the box over...
ok ok it will never finally be finished due to people wanting more added to it....lol.
Q
i really do like this code. I want to thank everyone for helping out. i have added some info about the user to this script...
Q
demo link follows: http://nalan.org/8.php can we say final release?
<?php
define('PUN_ROOT', './');
require_once PUN_ROOT.'include/common.php';
//Set the page title here
$page_title = pun_htmlspecialchars($pun_config['o_board_title']);
define('PUN_ALLOW_INDEX', 1);
require_once PUN_ROOT.'header.php';
require_once PUN_ROOT.'include/parser.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/index.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/common.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/login.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/forum.php';
//----------------------------------------------------------------------//
//These are the forums from which the news is retrieved
$forumids = array(1,2);
//This is the overall limit for how many news items will be displayed
$master_limit = '10';
//This is the amount of characters above which truncation will occur
$trunc_chars = '100';
//----------------------------------------------------------------------//
if ($pun_config['o_index_message_show'] == 1)
{
?>
<div class="block">
<h2><span><?php echo pun_htmlspecialchars($pun_config['o_index_message_head']) ?></span></h2>
<div class="box">
<div class="inbox">
<?php echo $pun_config['o_index_message'] ?>
</div>
</div>
</div>
<?php
}
//----------------------------------------------------------------------//
function close_tags($string)
{
if (preg_match_all ('/<([a-z]+)[ >]/', $string, $start_tags))
{
$start_tags = $start_tags[1];
if (preg_match_all ('/<\/([a-z]+)>/', $string, $end_tags))
{
$complete_tags = array();
$end_tags = $end_tags[1];
foreach ($start_tags as $key => $val)
{
$posb = array_search ($val, $end_tags);
if (is_integer ($posb))
{
unset ($end_tags[$posb]);
}
else
{
$complete_tags[] = $val;
}
}
}
else
{
$complete_tags = $start_tags;
}
$complete_tags = array_reverse ($complete_tags);
for ($i = 0; $i < count ($complete_tags); $i++)
{
$string .= '</' . $complete_tags[$i] . '>';
}
}
// Removes irrelevant tags
$xhtml_tags = array ('</img>', '</hr>', '</br>');
$string = str_replace ($xhtml_tags, '', $string);
return $string;
}
//----------------------------------------------------------------------//
function truncate($string)
{
global $pun_config;
$trunc_chars = '100';
$length = $trunc_chars;
$append = ' ..... ';
if (strlen ($string) <= $length)
{
return $string;
}
else if ($length > 0)
{
preg_match ('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){'.$length.',}\b#U', $string, $matches);
$string = $matches[0];
$string = close_tags (preg_replace ('#\s*<[^>]+>?\s*$#', '', $string).$append);
return $string;
}
}
//----------------------------------------------------------------------//
$result = $db->query('SELECT t.id, t.subject, t.num_replies, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.forum_id, u.use_avatar, u.num_posts, u.registered, u.title, p.poster, p.poster_id, p.message, p.hide_smilies, p.posted, g.g_title, f.forum_name FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'posts AS p ON p.topic_id=t.id AND p.posted=t.posted INNER JOIN '.$db->prefix.'users AS u ON u.id=p.poster_id LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id WHERE t.forum_id IN ('.implode(',', $forumids).') AND t.moved_to IS NULL AND f.redirect_url IS NULL ORDER BY t.posted DESC LIMIT '.$master_limit) or error('Unable to fetch announcements', __FILE__, __LINE__, $db->error());
if ($db->num_rows($result))
{
while($cur_post = $db->fetch_assoc($result))
{
echo '<div class="block">';
if ($pun_config['o_avatars'] == '1' && $cur_post['use_avatar'] == '1' && $pun_user['show_avatars'] != '0')
{
if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif'))
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg'))
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png'))
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
}
else
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="img/noimage.gif" alt=""/></a>';
}
$news_message = parse_message($cur_post['message'], $cur_post['hide_smilies']);
if (pun_strlen($news_message) > $trunc_chars)
{
$news_message = truncate($news_message);
$read_more = ' | <a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_post['id'].'">Read More</a> | ';
}
else
{
$read_more = ' | ';
}
if ($cur_post['num_replies'] != '0')
{
$replies = ' <a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_post['id'].'#p'.$cur_post['last_post_id'].'">Replies</a>: '.$cur_post['num_replies'].' ';
}
else
{
$replies = ' Replies: '.$cur_post['num_replies'].' ';
}
echo "\t\t\t\t\t\t\t".'<h2><strong><a href="forum.php">Forum</a> » <a href="viewforum.php?id='.$cur_post['forum_id'].'">'.pun_htmlspecialchars($cur_post['forum_name']).'</a>'.'</strong></h2>'."\n";
?>
<div class="box">
<div class="inbox">
<ul><li>
<table cellSpacing="0" cellPadding="0" width="100%" border="0">
<tr>
<td style="border: 0px; padding: 0px 10px 7px 7px;"><a class="news_subject" href="viewtopic.php?id=<?php echo $cur_post['id']; ?>"><strong><?php echo $cur_post['subject']; ?></strong></a></td>
</tr>
</table>
<table cellSpacing="0" cellPadding="0" width="100%" border="0">
<tr>
<td align="left" style="white-space: nowrap; width: 8em; padding-left: 7px; padding-top: 6px; padding-bottom: 30px; border: 0px;" valign="top"><?php echo $user_avatar ?><p></p><strong><?php echo pun_htmlspecialchars($cur_post['poster']) ?></strong><p></p><?php echo 'Title: '.$cur_post['g_title'] ?><p></p><?php echo 'Total Post: '.$cur_post['num_posts'] ?><p></p><?php echo 'Registered Date: '. format_time($cur_post['registered'], true) ?></td>
<td style="text-align: left; border: 0px; padding-top: 0px;" valign="top"><?php echo $news_message."\n" ?></td>
</tr>
</table>
<table class="news_footer" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="100%">
<?php
echo "\t\t\t\t\t\t\t".'<span class="user" style="float:left">Posted: '.format_time($cur_post['posted']).' by:<span class="user'.(isset($cur_post['g_title']) ? ' '.strtolower(str_replace(' ', '', $cur_post['g_title'])) : '').'"> <a class="poster" href="profile.php?id='.$cur_post['poster_id'].'">'.pun_htmlspecialchars($cur_post['poster']).'</a>'.$read_more.'Views: '.$cur_post['num_views'].' |'.$replies.'</span></span>'."\n";
if ($cur_post['poster_id'] == $pun_user['id'] || $pun_user['g_id'] < PUN_GUEST)
{
echo "\t\t\t\t\t\t\t".'<a href="viewtopic.php?id='.$cur_post['id'].'">'.pun_htmlspecialchars($lang_portal['Visit_Topic']).'</a>'.'<span style="float:right">'.'<a href="misc.php?report='.$cur_post['id'].'">'.$lang_topic['Report'].'</a>'.' | <a href="delete.php?id='.$cur_post['id'].'">'.$lang_topic['Delete'].'</a> | <a href="edit.php?id='.$cur_post['id'].'">'.$lang_topic['Edit'].'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'">'.'Reply'.'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'&qid='.$cur_post['id'].'">'.$lang_topic['Quote'].'</a>'.' | <a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_post['id'].'">'.'Read More'.'</a>'.'</span>'."\n\n\n\n";
}
?>
</td>
</tr>
</table>
</li></ul>
</div>
</div>
</div>
<?php
}
}
?>
<div align="center">Theme Designed by: Shedrock - <a onclick="window.open(this.href); return false;" href="http://shednotes.com">shednotes.com</a></div>
<br/>
<?php
require PUN_ROOT.'footer.php';
?>
I guess everyone wants the index.php to be a mile long.. trying to add all of the first or second post of there forum.
Simply pull the topics from a news category is fine with me...
Q
power we have been working on a new index.php for a while at this threat maybe this will help you!
http://punbb.org/forums/viewtopic.php?id=16296&p=5
Q
Since i started this script... basically i wanted it to show the top post from every forum id.
bing has added a lot of functions and we continue to make it grow with more stuff.
Q
demo are in order and http://nalan.org/ 1.php threw 7.php as you can see the changes.
http://nalan.org/7.php is the last one.
my lastest code work.
<?php
define('PUN_ROOT', './');
require_once PUN_ROOT.'include/common.php';
//Set the page title here
$page_title = pun_htmlspecialchars($pun_config['o_board_title']);
define('PUN_ALLOW_INDEX', 1);
require_once PUN_ROOT.'header.php';
require_once PUN_ROOT.'include/parser.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/index.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/common.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/login.php';
require_once PUN_ROOT.'lang/'.$pun_user['language'].'/forum.php';
$newsid = array(); //These are the forums the news is retrieved from.
$newsid[] = '1';
$newsid[] = '4';
$newsdisplay = '5'; //This is how many news articles are displayed.
$trunc_chars = '350'; //Amount of characters before truncation occurs.
if ($pun_config['o_index_message_show'] == 1)
{
?>
<div class="block">
<h2><span><?php echo pun_htmlspecialchars($pun_config['o_index_message_head']) ?></span></h2>
<div class="box">
<div class="inbox">
<?php echo $pun_config['o_index_message'] ?>
</div>
</div>
</div>
<?php
}
//----------------------------------------------------------------------//
function close_tags($string)
{
if (preg_match_all ('/<([a-z]+)[ >]/', $string, $start_tags))
{
$start_tags = $start_tags[1];
if (preg_match_all ('/<\/([a-z]+)>/', $string, $end_tags))
{
$complete_tags = array();
$end_tags = $end_tags[1];
foreach ($start_tags as $key => $val)
{
$posb = array_search ($val, $end_tags);
if (is_integer ($posb))
{
unset ($end_tags[$posb]);
}
else
{
$complete_tags[] = $val;
}
}
}
else
{
$complete_tags = $start_tags;
}
$complete_tags = array_reverse ($complete_tags);
for ($i = 0; $i < count ($complete_tags); $i++)
{
$string .= '</' . $complete_tags[$i] . '>';
}
}
// Removes irrelevant tags
$xhtml_tags = array ('</img>', '</hr>', '</br>');
$string = str_replace ($xhtml_tags, '', $string);
return $string;
}
//----------------------------------------------------------------------//
function truncate($string)
{
global $pun_config;
$trunc_chars = '350';
$length = $trunc_chars;
if (strlen ($string) <= $length)
{
return $string;
}
else if ($length > 0)
{$append = '...';
preg_match ('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){'.$length.',}\b#U', $string, $matches);
$string = $matches[0];
$string = close_tags (preg_replace ('#\s*<[^>]+>?\s*$#', '', $string).$append);
return $string;
}
}
//----------------------------------------------------------------------//
foreach ($newsid as $forum)
{
$result = $db->query('SELECT t.id, t.subject, t.num_replies, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.forum_id, u.use_avatar, u.num_posts, u.registered, u.title, p.poster, p.poster_id, p.message, p.hide_smilies, p.posted, g.g_title, f.forum_name FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'posts AS p ON p.topic_id=t.id AND p.posted=t.posted INNER JOIN '.$db->prefix.'users AS u ON u.id=p.poster_id LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id WHERE t.forum_id='.$forum.' AND t.moved_to IS NULL AND f.redirect_url IS NULL ORDER BY t.posted DESC LIMIT '.$newsdisplay) or error('Unable to fetch announcements', __FILE__, __LINE__, $db->error());
if ($db->num_rows($result))
{
while($cur_post = $db->fetch_assoc($result))
{
echo '<div class="block">';
if ($pun_config['o_avatars'] == '1' && $cur_post['use_avatar'] == '1' && $pun_user['show_avatars'] != '0')
{
if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif'))
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg'))
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png'))
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
}
else
{
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img alt="" src="img/noimage.gif" /></a>';
}
$news_message = parse_message($cur_post['message'], $cur_post['hide_smilies']);
if (pun_strlen($news_message) > $trunc_chars)
{
$news_message = truncate($news_message);
$read_more = ' <a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_post['id'].'">Read More</a> |';
}
else
{
$read_more = '';
}
echo "\t\t\t\t\t\t\t".'<h2><strong><a href="forum.php">Forum</a> » <a href="viewforum.php?id='.$cur_post['forum_id'].'">'.pun_htmlspecialchars($cur_post['forum_name']).'</a>'.'</strong></h2>'."\n";
?>
<div class="box">
<div class="inbox">
<ul><li>
<table cellSpacing="0" cellPadding="0" width="100%" border="0">
<tr>
<td style="border: 0px; padding: 0px 10px 7px 7px;"><a class="news_subject" href="viewtopic.php?id=<?php echo $cur_post['id']; ?>"><?php echo $cur_post['subject']; ?></a></td>
</tr>
</table>
<table cellSpacing="0" cellPadding="0" width="100%" border="0">
<tr>
<td align="left" style="white-space: nowrap; width: 8em; padding-left: 7px; padding-top: 6px; padding-bottom: 30px; border: 0px;" valign="top"><?php echo $user_avatar ?><p></p><strong><?php echo pun_htmlspecialchars($cur_post['poster']) ?></strong><p></p><?php echo 'Title: '.$cur_post['g_title'] ?><p></p><?php echo 'Total Post: '.$cur_post['num_posts'] ?><p></p><?php echo 'Registered Date: '. format_time($cur_post['registered'], true) ?></td>
<td style="text-align: left; border: 0px; padding-top: 0px;" valign="top"><?php echo $news_message."\n" ?></td>
</tr>
</table>
<table class="news_footer" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="100%">
<?php
echo "\t\t\t\t\t\t\t".'<span class="user" style="float:left">Posted: '.format_time($cur_post['posted']).' by:<span class="user'.(isset($cur_post['g_title']) ? ' '.strtolower(str_replace(' ', '', $cur_post['g_title'])) : '').'"> <a class="poster" href="profile.php?id='.$cur_post['poster_id'].'">'.pun_htmlspecialchars($cur_post['poster']).'</a> |'.$read_more.' Views: '.$cur_post['num_views'].' | Replies: '. $cur_post['num_replies'].'</span></span>'."\n";
if ($cur_post['poster_id'] == $pun_user['id'] || $pun_user['g_id'] < PUN_GUEST)
{
echo "\t\t\t\t\t\t\t".'<a href="viewtopic.php?id='.$cur_post['id'].'">'.pun_htmlspecialchars($lang_portal['Visit_Topic']).'</a>'.'<span style="float:right">'.'<a href="misc.php?report='.$cur_post['id'].'">'.$lang_topic['Report'].'</a>'.' | <a href="delete.php?id='.$cur_post['id'].'">'.$lang_topic['Delete'].'</a> | <a href="edit.php?id='.$cur_post['id'].'">'.$lang_topic['Edit'].'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'">'.'Reply'.'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'&qid='.$cur_post['id'].'">'.$lang_topic['Quote'].'</a>'.' | <a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_post['id'].'">'.'Read More'.'</a>'.'</span>'."\n\n\n\n";
}
?>
</td>
</tr>
</table>
</li></ul>
</div>
</div>
</div>
<?php
}
}
}
require PUN_ROOT.'footer.php';
?>
here updated code again...hahah
<?php
define('PUN_ROOT', './');
require PUN_ROOT.'include/common.php';
//Set the page title here
$page_title = pun_htmlspecialchars($pun_config['o_board_title']);
define('PUN_ALLOW_INDEX', 1);
require PUN_ROOT.'header.php';
require PUN_ROOT.'include/parser.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/index.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/common.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/login.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/forum.php';
$newsid = '1'; //This is the forum the news is retrieved from
$newsdisplay = '5'; //This is how many news articles are displayed.
function close_tags($string)
{
// match opened tags
if(preg_match_all('/<([a-z\:\-]+)[ >]/', $string, $start_tags))
{
$start_tags = $start_tags[1];
// match closed tags
if(preg_match_all('/<\/([a-z]+)>/', $string, $end_tags))
{
$complete_tags = array();
$end_tags = $end_tags[1];
foreach($start_tags as $key => $val)
{
$posb = array_search($val, $end_tags);
if(is_integer($posb))
{
unset($end_tags[$posb]);
}
else
{
$complete_tags[] = $val;
}
}
}
else
{
$complete_tags = $start_tags;
}
$complete_tags = array_reverse($complete_tags);
for($i = 0; $i < count($complete_tags); $i++)
{
$string .= '</' . $complete_tags[$i] . '>';
}
}
// Removes the </img> tag
$xhtml_tags = array("</img>", "</hr>", "</br>");
$string = str_replace($xhtml_tags, "", $string);
return $string;
}
function truncate($str, $id) {
$len = '200'; //This is how many characters are displayed.
$splitter = '<!--MORE-->';
$append = ' ... <span class="barlink"><i><a href="viewtopic.php?pid='.$id.'#p'.$id.'"';
if(strlen($str) <= $len){
return $str;
}
if($len > 0 && !strstr($str,$splitter)){
preg_match('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){'.$len.',}\b#U', $str,$matches);
$str = $matches[0];
# remove trailing opener tags and close all other open tags:
$str = close_tags(preg_replace('#\s*<[^>]+>?\s*$#','',$str).$append);
} else {
$arr = explode($splitter,$str,2);
$str = $arr[0];
}
return $str;
}
if ($pun_config['o_index_message_show'] == 1)
{
?>
<div class="block">
<h2><span><?php echo pun_htmlspecialchars($pun_config['o_index_message_head']) ?></span></h2>
<div class="box">
<div class="inbox">
<?php echo $pun_config['o_index_message'] ?>
</div>
</div>
</div>
<?php
}
$result = $db->query('SELECT t.id, t.subject, t.num_replies, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.forum_id, u.use_avatar, p.id AS post_id, p.poster, p.poster_id, p.message, p.hide_smilies, p.posted, g.g_title, f.forum_name FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'posts AS p ON p.topic_id=t.id AND p.posted=t.posted INNER JOIN '.$db->prefix.'users AS u ON u.id=p.poster_id LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id WHERE t.forum_id='.$newsid.' AND t.moved_to IS NULL AND f.redirect_url IS NULL ORDER BY t.posted DESC LIMIT '.$newsdisplay) or error('Unable to fetch announcements', __FILE__, __LINE__, $db->error());
if ($db->num_rows($result))
{
while($cur_post = $db->fetch_assoc($result))
{
$id = ($cur_post['post_id']);
$pre = parse_message($cur_post['message'], $cur_post['hide_smilies']);
$str = truncate ($pre, $id);
?>
<div class="block">
<?php
if ($pun_config['o_avatars'] == '1' && $cur_post['use_avatar'] == '1' && $pun_user['show_avatars'] != '0')
{
if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif'))
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg'))
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png'))
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
else
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img alt="" src="img/noimage.gif" /></a>';
echo "\t\t\t\t\t\t\t".'<h2><strong><a href="forum.php">Forum</a> » <a href="viewforum.php?id='.$cur_post['forum_id'].'">'.pun_htmlspecialchars($cur_post['forum_name']).'</a>'.'</strong></h2>'."\n";
?>
<div class="box">
<div class="inbox">
<ul><li>
<table cellSpacing="0" cellPadding="0" width="100%" border="0">
<tr>
<td style="border: 0px; padding: 0px 10px 7px 7px;"><a class="news_subject" href="viewtopic.php?id=<?php echo $cur_post['id']; ?>"><?php echo $cur_post['subject']; ?></a></td>
</tr>
</table>
<table cellSpacing="0" cellPadding="0" width="100%" border="0">
<tr>
<td align="left" style="white-space: nowrap; width: 8em; padding-left: 7px; padding-top: 6px; padding-bottom: 30px; border: 0px;" valign="top"><?php echo $user_avatar ?></td>
<td style="text-align: left; border: 0px; padding-top: 0px;" valign="top"><?php echo $str ?></td>
</tr>
</table>
<table class="news_footer" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="100%">
<?php
echo "\t\t\t\t\t\t\t".'<span class="user" style="float:left">Posted: '.format_time($cur_post['posted']).' by:<span class="user'.(isset($cur_post['g_title']) ? ' '.strtolower(str_replace(' ', '', $cur_post['g_title'])) : '').'"> <a class="poster" href="profile.php?id='.$cur_post['poster_id'].'">'.pun_htmlspecialchars($cur_post['poster']).'</a> | Views: '. $cur_post['num_views'].' | Replies: '. $cur_post['num_replies'].'</span></span>'."\n";
if ($cur_post['poster_id'] == $pun_user['id'] || $pun_user['g_id'] < PUN_GUEST)
echo "\t\t\t\t\t\t\t".'<a href="viewtopic.php?id='.$cur_post['id'].'">'.pun_htmlspecialchars($lang_portal['Visit_Topic']).'</a>'.'<span style="float:right">'.'<a href="misc.php?report='.$cur_post['id'].'">'.$lang_topic['Report'].'</a>'.' | <a href="delete.php?id='.$cur_post['id'].'">'.$lang_topic['Delete'].'</a> | <a href="edit.php?id='.$cur_post['id'].'">'.$lang_topic['Edit'].'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'">'.'Reply'.'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'&qid='.$cur_post['id'].'">'.$lang_topic['Quote'].'</a>'.' | <a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_post['id'].'">'.'Read More'.'</a>'.'</span>'."\n\n\n\n";
?>
</td>
</tr>
</table>
</li></ul>
</div>
</div>
</div>
<?
}
}
require PUN_ROOT.'footer.php';
soonote how can i remove the ... view post im going to add a read more down by the quote etc.
Q
connorhd can u help with the coding.. i and bing have ask for help it seem we get questions with questions and no answers...
please?
yeh it would need a similar edit
would this work for my index.php that im creating ..
here is the thread
http://punbb.org/forums/viewtopic.php?id=16296&p=1
Q
thats an alternative version to the index.php in the miniportal mod, if this is easier...
find
$fid = intval($fid);
delete line
find// Fetch $show topics $result = $db->query('SELECT t.id, t.poster, t.subject, t.posted, t.last_post, f.id AS fid, f.forum_name FROM '.$db_prefix.'topics AS t INNER JOIN '.$db_prefix.'forums AS f ON t.forum_id=f.id WHERE f.id='.$fid.' AND t.moved_to IS NULL ORDER BY '.$order_by.' DESC') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error());
replace with
// Fetch $show topics if (is_array($fid)) $result = $db->query('SELECT t.id, t.poster, t.subject, t.posted, t.last_post, f.id AS fid, f.forum_name FROM '.$db_prefix.'topics AS t INNER JOIN '.$db_prefix.'forums AS f ON t.forum_id=f.id WHERE f.id IN ('.implode(",",$fid).') AND t.moved_to IS NULL ORDER BY '.$order_by.' DESC') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error()); else { $fid = intval($fid); $result = $db->query('SELECT t.id, t.poster, t.subject, t.posted, t.last_post, f.id AS fid, f.forum_name FROM '.$db_prefix.'topics AS t INNER JOIN '.$db_prefix.'forums AS f ON t.forum_id=f.id WHERE f.id='.$fid.' AND t.moved_to IS NULL ORDER BY '.$order_by.' DESC') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error()); }
where do u input that code at?
<?php define('PUN_ROOT', './'); define('PUN_QUIET_VISIT', 1); require PUN_ROOT.'include/common.php'; $page_title = pun_htmlspecialchars($pun_config['o_board_title']); define('PUN_ALLOW_INDEX', 1); require PUN_ROOT.'header.php'; require PUN_ROOT.'include/parser.php'; function pun_news($fid=1, $show=15, $truncate=1) { global $lang_common, $db, $pun_config, $db_prefix; $max_subject_length = 30; $show_max_topics = 50; $order_by = 't.posted'; $forum_sql = ''; // Was a forum ID supplied? if ( $fid ) $forum_sql = 'f.id='.$fid.' AND '; $show = intval($show); if ($show < 1 || $show > $show_max_topics) $show = 15; $saveddate=""; // Fetch $show topics if (is_array($fid)) $result = $db->query('SELECT t.id, t.poster, t.subject, t.posted, t.last_post, f.id AS fid, f.forum_name FROM '.$db_prefix.'topics AS t INNER JOIN '.$db_prefix.'forums AS f ON t.forum_id=f.id WHERE f.id IN ('.implode(",",$fid).') AND t.moved_to IS NULL ORDER BY '.$order_by.' DESC') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error()); else { $fid = intval($fid); $result = $db->query('SELECT t.id, t.poster, t.subject, t.posted, t.last_post, f.id AS fid, f.forum_name FROM '.$db_prefix.'topics AS t INNER JOIN '.$db_prefix.'forums AS f ON t.forum_id=f.id WHERE f.id='.$fid.' AND t.moved_to IS NULL ORDER BY '.$order_by.' DESC') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error()); } $show_count = 0; if ( !$db->num_rows($result) ) return $output; while ( ($show_count < $show) && ($cur_topic = $db->fetch_assoc($result)) ) { $temp = ''; if ($pun_config['o_censoring'] == '1') $cur_topic['subject'] = censor_words($cur_topic['subject']); if (pun_strlen($cur_topic['subject']) > $max_subject_length) $subject_truncated = trim(substr($cur_topic['subject'], 0, ($max_subject_length-5))).' ...'; else $subject_truncated = $cur_topic['subject']; $newsheading = '<a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_topic['id'].'&action=new" title="'.pun_htmlspecialchars($cur_topic['subject']).'">'.pun_htmlspecialchars($subject_truncated).'</a> - <em>Posted by '.$cur_topic['poster'].' at '.date('h:i A', $cur_topic['posted']).'</em><br>'; // Group posts by date $thisdate = date('l, d F Y', $cur_topic['posted']); if ($thisdate != $saveddate) { if ($saveddate) { $temp .= "</div></div>"; } $temp .= '<div class="block"><h2><span>'.$thisdate.'</span></h2><div class="box"><div class="inbox"><p>'; $saveddate = $thisdate; } else { $temp .= '<div class="inbox"><p>'; } $temp .= $newsheading.'</p><p>'; $id = $cur_topic['id']; $msg = $db->query('SELECT id, poster, poster_id, poster_ip, poster_email, message, posted, edited, edited_by FROM '.$db_prefix.'posts WHERE topic_id='.$id.' LIMIT 1') or error('Unable to fetch post info', __FILE__, __LINE__, $db->error()); if ( !$db->num_rows($msg) ) continue; $cur_post = $db->fetch_assoc($msg); // Display first paragraph only (comment out next four lines to turn off) if ($truncate == 1) { $paragraph = preg_split("/s*n+/", $cur_post['message']); if (isset($paragraph[1])) { $cur_post['message'] = $paragraph[0] . "..."; } } $cur_post['message'] = parse_message($cur_post['message'], 0); $temp .= $cur_post['message']; $temp .= "</p></div>"; if (isset($output)) { $output .= $temp; } else { $output = $temp; } ++$show_count; } // end of while $output .= "</div></div>"; return $output; } ?> <div class="block"> <h2><span>Welcome</span></h2> <div class="box"> <div class="inbox"> <p> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent augue. Nulla facilisi. Fusce bibendum accumsan erat. Quisque sollicitudin mattis neque. Sed dapibus. Integer a lectus eu sem consequat pellentesque. Morbi rhoncus nulla. Duis adipiscing interdum velit. Fusce ante. Ut vitae enim sit amet magna sodales hendrerit. In sed tortor at sapien convallis eleifend. Proin mauris. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Ut metus. Cras ac arcu et arcu porttitor blandit. Nam vitae lectus eget mauris sollicitudin placerat. Suspendisse vestibulum. Donec varius libero. Duis velit tellus, euismod vitae, consequat sed, consectetuer ut, purus. </p> <p> Praesent viverra venenatis magna. Etiam in dolor. Ut in justo ac nibh malesuada cursus. Duis urna arcu, aliquam vitae, consequat nec, tincidunt non, mi. Nunc lobortis. Nunc pharetra. Sed porttitor. Maecenas turpis tortor, blandit nec, dignissim in, porttitor eu, odio. In hac habitasse platea dictumst. Suspendisse augue odio, ornare a, elementum ac, tincidunt varius, orci. Nulla libero ante, hendrerit ac, consectetuer eu, sollicitudin et, eros. Duis sapien. Suspendisse ornare enim sit amet dui. Donec ullamcorper diam. </p> </div> </div> </div> <?php echo pun_news(1, 5, 0); require PUN_ROOT.'footer.php';
instead of 1 for the forum id put array(1,2,3,4) with a list of the forums you want
I decided to redo my site...
tell me what you think...
i edited the images added a footer image... and a new h2 image...
I will release the style soon with all the propper credits....
Q
i too get alot of .ru signups. its annoying!
i also get alot of email from russian spammers, wtf?anyways, it would be great if someone could make a plugin or modification for more effective (hrmm, mabe i mean more options for...) ban control and also a check on declining .ru addresses from signing up! i would like it to ban the address that signed up with .ru too!
someone make that please! its really need for this spam problem! the other modifications work, but only so much.
I simple just started banning domain name.... mail.ru au.fm ... if a spammer sign up.. oh well...that domain is banned. I hope someone can create a mod for this. but if not... banning i go.....
Q
I'd like this if it were just the forum and not the portal all together. That said, though, I love what has been done with PunBB here. Great work.
sodacake i use the style from MP on one of my site with permission of the designer... of MP...
Q
lie2815. i got an idea for your site on the metal part how to list the description of each item. it just came to me a few mins ago and i think that it will work for what you need.....
hit me up on messanger...
Q
New code.... BING HELPED ME WITH THIS..
change this to set the max characters.
ops i forgot this..
add this to ur _css
.news_subject {
background-color: inherit;
font-family: Tahoma, Verdana, "Lucida Sans Unicode", Arial, sans-serif;
font-size: 1.2em;
font-weight: bold;
text-decoration:none;
border-bottom:1px dotted #065C7C
}
a.news_subject:hover {
background-color: inherit;
color: #000000;
text-decoration: none;
border-bottom:1px solid #065C7C
}
.news_footer {
background-color: #DBE9EC;
color: inherit;
border-bottom: 1px solid #BBCEDE;
border-right: 1px solid #BBCEDE;
}
td,th {
color: #666666;
}
$max_subject_length=145
<?php
define('PUN_ROOT', './');
require PUN_ROOT.'include/common.php';
//Set the page title here
$page_title = pun_htmlspecialchars($pun_config['o_board_title']);
define('PUN_ALLOW_INDEX', 1);
require PUN_ROOT.'header.php';
require PUN_ROOT.'include/parser.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/index.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/common.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/login.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/forum.php';
$newsid = '1'; //This is the forum the news is retrieved from
$newsdisplay = '5'; //This is how many news articles are displayed.
$result = $db->query('SELECT t.id, t.subject, t.num_replies, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.forum_id, u.use_avatar, p.poster, p.poster_id, p.message, p.hide_smilies, p.posted, g.g_title, f.forum_name FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'posts AS p ON p.topic_id=t.id AND p.posted=t.posted INNER JOIN '.$db->prefix.'users AS u ON u.id=p.poster_id LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id WHERE t.forum_id='.$newsid.' AND t.moved_to IS NULL AND f.redirect_url IS NULL ORDER BY t.posted DESC LIMIT '.$newsdisplay) or error('Unable to fetch announcements', __FILE__, __LINE__, $db->error());
if ($db->num_rows($result))
{
while($cur_post = $db->fetch_assoc($result))
{
$cur_post['message'] = parse_message($cur_post['message'], $cur_post['hide_smilies']);
?>
<div class="block">
<?php
if ($pun_config['o_avatars'] == '1' && $cur_post['use_avatar'] == '1' && $pun_user['show_avatars'] != '0')
{
if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif'))
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg'))
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png'))
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png" '.$img_size[3].' title="'.$cur_post['poster'].'\'s Avatar" alt="'.$cur_post['poster'].'\'s Avatar" /></a>';
}
else
$user_avatar = '<a href="profile.php?id=' . $cur_post['poster_id'] . '"><img alt="" src="img/noimage.gif" /></a>';
echo "\t\t\t\t\t\t\t".'<h2><strong><a href="forum.php">Forum</a> » <a href="viewforum.php?id='.$cur_post['forum_id'].'">'.pun_htmlspecialchars($cur_post['forum_name']).'</a>'.'</strong></h2>'."\n";
?>
<div class="box">
<div class="inbox">
<ul><li>
<div style="padding-bottom: 6px;" ><a class="news_subject" href="viewtopic.php?id=<?php echo $cur_post['id']; ?>"><strong><?php echo $cur_post['subject']; ?></strong></a></div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="border: 0px; width: 90%;" valign="top" ><?php echo $subject_truncated = pun_htmlspecialchars(trim(substr($cur_post['message'], 0, ($max_subject_length=145)))).'.....'."\n" ?></td>
<td align="right" style="border: 0px; width: 10%;" valign="top"><?php echo $user_avatar ?></td>
</tr>
</table>
<br />
<br />
<table class="news_footer" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="100%">
<?php
echo "\t\t\t\t\t\t\t".'<span class="byuser" style="float:left">Posted: '.format_time($cur_post['posted']).' by:<span class="byuser'.(isset($cur_post['g_title']) ? ' '.strtolower(str_replace(' ', '', $cur_post['g_title'])) : '').'"> <a href="profile.php?id='.$cur_post['poster_id'].'" class="username">'.pun_htmlspecialchars($cur_post['poster']).'</a> | Views: '. $cur_post['num_views'].' | Replies: '. $cur_post['num_replies'].'</span></span>'."\n";
if ($cur_post['poster_id'] == $pun_user['id'] || $pun_user['g_id'] < PUN_GUEST)
echo "\t\t\t\t\t\t\t".'<a style="text-decoration: none" href="viewtopic.php?id='.$cur_post['id'].'" class="username">'.pun_htmlspecialchars($lang_portal['Visit_Topic']).'</a>'.'<span style="float:right">'.'<a href="misc.php?report='.$cur_post['id'].'">'.$lang_topic['Report'].'</a>'.' | <a href="delete.php?id='.$cur_post['id'].'">'.$lang_topic['Delete'].'</a> | <a href="edit.php?id='.$cur_post['id'].'">'.$lang_topic['Edit'].'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'">'.'Reply'.'</a>'.' | <a href="post.php?tid='.$cur_post['id'].'&qid='.$cur_post['id'].'">'.$lang_topic['Quote'].'</a>'.' | <a href="'.$pun_config['o_base_url'].'/viewtopic.php?id='.$cur_post['id'].'">'.'Read More'.'</a></span>'."\n\n\n\n";
?>
</td>
</tr>
</table>
</ul>
</div>
</div>
</div>
<?
}
}
?>
<br />
<br />
<?php
require PUN_ROOT.'footer.php';
coppermine. someone made a patch file for it.
Q
PunBB Forums → Posts by quaker
Powered by PunBB, supported by Informer Technologies, Inc.