3,376

(17 replies, posted in Programming)

MattF wrote:

Just realised I have no idea what the output of the lookup would look like, big_smile, so another question if I may.

$db->query("SELECT id, username FROM ".$db->prefix."users");

What would the actual output look like? Apologies for asking so many questions. smile


Matt

You would have to use $db->fetch_assoc($result) or $db->fetch_row($result) to get at the actual data

MattF wrote:
Smartys wrote:
elbekko wrote:

Maximum size is the same as the int size on your system I think.

I think it's limited only by the memory your scripts are allocated wink

Right. Numpty mode on. big_smile What's a theoretical guess, (username, id), for a standard setup, then? The last two answers completely befuddled me. big_smile

The answer? Big enough that you shouldn't worry smile

Moved to Modifications

3,378

(17 replies, posted in Programming)

elbekko wrote:

Maximum size is the same as the int size on your system I think.

I think it's limited only by the memory your scripts are allocated wink

No problem smile

No, you made a mistake

FIND

$result = $db->query('SELECT SUM(num_topics), SUM(num_posts) FROM '.$db->prefix.'forums') or error('Unable to fetch topic/post count', __FILE__, __LINE__, $db->error());
$result = $db->query('SELECT COUNT(id) FROM '.$db->prefix.'blogs') or error('Unable to fetch total user count', __FILE__, __LINE__, $db->error());
$stats['total_blogs'] = $db->result($result);

REPLACE WITH

$result = $db->query('SELECT SUM(num_topics), SUM(num_posts) FROM '.$db->prefix.'forums') or error('Unable to fetch topic/post count', __FILE__, __LINE__, $db->error());
list($stats['total_topics'], $stats['total_posts']) = $db->fetch_row($result);
$result = $db->query('SELECT COUNT(id) FROM '.$db->prefix.'blogs') or error('Unable to fetch total user count', __FILE__, __LINE__, $db->error());
$stats['total_blogs'] = $db->result($result);

No problem smile

When you install a mod, there's a file with instructions that you follow. If the mod isn't working right, chances are you didn't follow the instructions correctly.

3,383

(18 replies, posted in General discussion)

grudon66: paste that line?

3,384

(17 replies, posted in Programming)

So you're trying to read through the folders in a directory and map the user IDs to a username?
Like you said, special characters are the issue: I would suggest just grabbing the id, username for every user and adding it to an array
so $user[1] = 'Guest', $user[2] = 'MattF', etc

That's alright smile

There is a box in 1.3 wink

Moved to Modifications
It sounds to me like you need to check the readme for the mod

3,388

(1 replies, posted in PunBB 1.2 troubleshooting)

No, there isn't a way to easily merge installs (although I'm playing around with this idea for some things in 1.3). It's a somewhat involved process to do manually, so I wouldn't suggest it. Essentially, you have to rejuggle a lot of the ids (ie: 2 users can't have the same ID, 2 posts can't have the same ID, etc)

3,389

(39 replies, posted in PunBB 1.2 troubleshooting)

<?php
/***********************************************************************

  Copyright (C) 2002-2005  Rickard Andersson (rickard@punbb.org)

  This file is part of PunBB.

  PunBB is free software; you can redistribute it and/or modify it
  under the terms of the GNU General Public License as published
  by the Free Software Foundation; either version 2 of the License,
  or (at your option) any later version.

  PunBB is distributed in the hope that it will be useful, but
  WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  MA  02111-1307  USA

************************************************************************/


define('PUN_ROOT', './');
require PUN_ROOT.'include/common.php';


if ($pun_user['g_read_board'] == '0')
    message($lang_common['No view']);


$id = isset($_GET['id']) ? intval($_GET['id']) : 0;
if ($id < 1)
    message($lang_common['Bad request']);

// Load the viewforum.php language file
require PUN_ROOT.'lang/'.$pun_user['language'].'/forum.php';// Load poll language file
require PUN_ROOT.'lang/'.$pun_user['language'].'/polls.php';

// Fetch some info about the forum
$result = $db->query('SELECT f.forum_name, f.redirect_url, f.moderators, f.num_topics, f.sort_by, fp.post_topics FROM '.$db->prefix.'forums AS f LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND f.id='.$id) or error('Unable to fetch forum info', __FILE__, __LINE__, $db->error());
if (!$db->num_rows($result))
    message($lang_common['Bad request']);

$cur_forum = $db->fetch_assoc($result);

// Is this a redirect forum? In that case, redirect!
if ($cur_forum['redirect_url'] != '')
{
    header('Location: '.$cur_forum['redirect_url']);
    exit;
}

// Sort out who the moderators are and if we are currently a moderator (or an admin)
$mods_array = array();
if ($cur_forum['moderators'] != '')
    $mods_array = unserialize($cur_forum['moderators']);

$is_admmod = ($pun_user['g_id'] == PUN_ADMIN || ($pun_user['g_id'] == PUN_MOD && array_key_exists($pun_user['username'], $mods_array))) ? true : false;
//=========================
//=====RATE TOPIC CODE=====
//=========================
//Eric Subach (kha0s@comcast.net)
//=========================

$rate_topic = 0;

//Make sure Rate Topic is installed, enabled, and the user is not a guest.
if (isset ($pun_config['o_rt_cur_version']) && $pun_config['o_rt_enabled'] && !$pun_user['is_guest'])
{
    $rate_topic = 1;

    //Check for a language pack.
    if (file_exists (PUN_ROOT . 'lang/' . $pun_user['language'] . '/rate_topic.php'))
        require PUN_ROOT . 'lang/' . $pun_user['language'] . '/rate_topic.php';
    else if (file_exists (PUN_ROOT . 'lang/' . $pun_config['o_rt_default_lang'] . '/rate_topic.php'))
        require PUN_ROOT . 'lang/' . $pun_config['o_rt_default_lang'] . '/rate_topic.php';
    else
        $rate_topic = 0;
}

//If it's enabled, create the link to rate the topic.
if ($rate_topic)
    $pre_link = '<a href="rate.php?r_id=' . $id . '">' . $lang_rt['Rate topic'] . '</a> / ';

//==================
//=====END CODE=====
//==================

// Can we or can we not post new topics?
if (($cur_forum['post_topics'] == '' && $pun_user['g_post_topics'] == '1') || $cur_forum['post_topics'] == '1' || $is_admmod)
    $post_link = "\t\t".'<p class="postlink conr"><a href="post.php?fid='.$id.'">'.$lang_forum['Post topic'].'</a> <BR /> <a href="poll.php?fid='.$id.'">'.$lang_polls['New poll'].'</a></p>'."\n";
else
    $post_link = '';


// Determine the topic offset (based on $_GET['p'])
$num_pages = ceil($cur_forum['num_topics'] / $pun_user['disp_topics']);

$p = (!isset($_GET['p']) || $_GET['p'] <= 1 || $_GET['p'] > $num_pages) ? 1 : $_GET['p'];
$start_from = $pun_user['disp_topics'] * ($p - 1);

// Generate paging links
$paging_links = $lang_common['Pages'].': '.paginate($num_pages, $p, 'viewforum.php?id='.$id);


$page_title = pun_htmlspecialchars($pun_config['o_board_title'].' / '.$cur_forum['forum_name']);
define('PUN_ALLOW_INDEX', 1);
require PUN_ROOT.'header.php';
//=========================
//=====RATE TOPIC CODE=====
//=========================
//Eric Subach (kha0s@comcast.net)
//=========================

$rate_topic = 0;
$rate_stars = 0;

//Check if Rate Topic is installed and enabled.
if (isset ($pun_config['o_rt_cur_version']) && $pun_config['o_rt_enabled'])
{
    $rate_topic = 1;

    //Check for language pack.
    if (file_exists (PUN_ROOT . 'lang/' . $pun_user['language'] . '/rate_topic.php'))
        require PUN_ROOT . 'lang/' . $pun_user['language'] . '/rate_topic.php';
    else if (file_exists (PUN_ROOT . 'lang/' . $pun_config['o_rt_default_lang'] . '/rate_topic.php'))
        require PUN_ROOT . 'lang/' . $pun_config['o_rt_default_lang'] . '/rate_topic.php';
    else
        $rate_topic = 0;

    //Check if using stars or numbers.
    if ($pun_config['o_rt_use_stars'])
        if (file_exists (PUN_ROOT . 'img/rate_stars/' . $pun_config['o_rt_cur_stars']))
            $rate_stars = 1;
}

//==================
//=====END CODE=====
//==================
?>
<div class="linkst">
    <div class="inbox">
        <p class="pagelink conl"><?php echo $paging_links ?></p>
<?php echo $post_link ?>
        <ul><li><a href="index.php"><?php echo $lang_common['Index'] ?></a> </li><li>» <?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></li></ul>
        <div class="clearer"></div>
    </div>
</div>

<div id="vf" class="blocktable">
    <h2><span><?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></span></h2>
    <div class="box">
        <div class="inbox">
            <table cellspacing="0">
            <thead>
                <tr>
                    <th class="tcl" scope="col"><?php echo $lang_common['Topic'] ?></th>
                                        <!-- MOD AUTHOR COLUMN 1 line folowing added -->
                    <th class="tc2" scope="col"  style="WIDTH: 12%"><?php echo $lang_common['Author'] ?></th>
                    <th class="tc2" scope="col"><?php echo $lang_common['Replies'] ?></th>
                    <th class="tc3" scope="col"><?php echo $lang_forum['Views'] ?></th>
                    <th class="tcr" scope="col"><?php echo $lang_common['Last post'] ?></th>
                </tr>
            </thead>
            <tbody>
<?php

// Fetch list of topics to display on this page
// <!-- MOD AUTHOR COLUMN - SWITCH BLOCK -->
switch ($db_type)
{
    case 'mysql':
    case 'mysqli':
        $sql = 'SELECT p.poster_id AS has_posted, t.id, t.subject, t.poster, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to, sum(r.rate) AS rate, count(r.user_id) AS num_ratings FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id LEFT JOIN '.$db->prefix.'Ratings AS r ON t.id=r.topic_id WHERE t.forum_id='.$id.' GROUP BY t.id ORDER BY sticky DESC, '.(($cur_forum['sort_by'] == '1') ? 'posted' : 'last_post').' DESC LIMIT '.$start_from.', '.$pun_user['disp_topics'];
        break;

    case 'sqlite':
        $sql = 'SELECT p.poster_id AS has_posted, t.id, t.subject, t.poster, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to, sum(r.rate) AS rate, count(r.user_id) AS num_ratings FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id WHERE t.id IN(SELECT id FROM '.$db->prefix.'topics WHERE forum_id='.$id.' ORDER BY sticky DESC, '.(($cur_forum['sort_by'] == '1') ? 'posted' : 'last_post').' DESC LIMIT '.$start_from.', '.$pun_user['disp_topics'].') GROUP BY t.id ORDER BY t.sticky DESC, t.last_post DESC';
        break;

    default:
        $sql = 'SELECT p.poster_id AS has_posted, t.id, t.subject, t.poster, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to, sum(r.rate) AS rate, count(r.user_id) AS num_ratings FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id LEFT JOIN '.$db->prefix.'Ratings AS r ON t.id=r.topic_id WHERE t.forum_id='.$id.' GROUP BY t.id, t.subject, t.poster, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to, p.poster_id ORDER BY sticky DESC, '.(($cur_forum['sort_by'] == '1') ? 'posted' : 'last_post').' DESC LIMIT '.$start_from.', '.$pun_user['disp_topics'];
        break;

}

$result = $db->query($sql) or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error());

// If there are topics in this forum.
if ($db->num_rows($result))
{
    while ($cur_topic = $db->fetch_assoc($result))
    {
        $icon_text = $lang_common['Normal icon'];
        $item_status = '';
        $icon_type = 'icon';
                // MOD AUTHOR COLUMN 1 following line added
        $author = '<a href="profile.php?id='.$cur_topic['has_posted'].'">'.pun_htmlspecialchars($cur_topic['poster']).'</a>';

        if ($cur_topic['moved_to'] == null)
            $last_post = '<a href="viewtopic.php?pid='.$cur_topic['last_post_id'].'#p'.$cur_topic['last_post_id'].'">'.format_time($cur_topic['last_post']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['last_poster']).'</span>';
        else
            $last_post = ' ';

        if ($pun_config['o_censoring'] == '1')
            $cur_topic['subject'] = censor_words($cur_topic['subject']);

if ($cur_topic['question'] != '') {
            if ($pun_config['o_censoring'] == '1')
                $cur_topic['question'] = censor_words($cur_topic['question']);
        
        
            if ($cur_topic['moved_to'] != 0)
                $subject = $lang_forum['Moved'].': '.$lang_polls['Poll'].': <a href="viewpoll.php?id='.$cur_topic['moved_to'].'">'.pun_htmlspecialchars($cur_topic['question']).'</a><br /> <span class="byuser"><b>'.pun_htmlspecialchars($cur_topic['subject']).'</b> '.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
            else if ($cur_topic['closed'] == '0')
                $subject = $lang_polls['Poll'].': <a href="viewpoll.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['question']).'</a><br \> <span class="byuser"><b>'.pun_htmlspecialchars($cur_topic['subject']).'</b> '.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
            else
            {
                $subject = $lang_polls['Poll'].': <a href="viewpoll.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['question']).'</a><br /> <span class="byuser"><b>'.pun_htmlspecialchars($cur_topic['subject']).'</b> '.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
                $icon_text = $lang_common['Closed icon'];
                $item_status = 'iclosed';
            }
    
            if (!$pun_user['is_guest'] && $cur_topic['last_post'] > $pun_user['last_visit'] && $cur_topic['moved_to'] == null)
            {
                $icon_text .= ' '.$lang_common['New icon'];
                $item_status .= ' inew';
                $icon_type = 'icon inew';

    
                $subject = '<strong>'.$subject.'</strong>';
                $subject_new_posts = '<span class="newtext">[ <a href="viewpoll.php?id='.$cur_topic['id'].'&action=new" title="'.$lang_common['New posts info'].'">'.$lang_common['New posts'].'</a> ]</span>';
            }
            else
                $subject_new_posts = null;
    
            // Should we display the dot or not? :)
            if (!$pun_user['is_guest'] && $pun_config['o_show_dot'] == '1')
            {
                if ($cur_topic['has_posted'] == $pun_user['id'])
                    $subject = '<strong>·</strong> '.$subject;
                else
                    $subject = '  '.$subject;
            }
                    // MOD AUTHOR COLUMN 2 following lines added
        else
            $subject = '  '.$subject;
        } else {
        if ($cur_topic['moved_to'] != 0)
            // <!-- MOD AUTHOR COLUMN 1 line folowing modified -->
            $subject = $lang_forum['Moved'].': <a href="viewtopic.php?id='.$cur_topic['moved_to'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a>';
        else if ($cur_topic['closed'] == '0')
            // <!-- MOD AUTHOR COLUMN 1 line folowing modified -->
            $subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a>';
        else
        {
            // <!-- MOD AUTHOR COLUMN 1 line folowing modified -->
            $subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a>';
                $icon_text = $lang_common['Closed icon'];
                $item_status = 'iclosed';

            }
    
            if (!$pun_user['is_guest'] && $cur_topic['last_post'] > $pun_user['last_visit'] && $cur_topic['moved_to'] == null)
            {
                $icon_text .= ' '.$lang_common['New icon'];
                $item_status .= ' inew';
                $icon_type = 'icon inew';

    
                $subject = '<strong>'.$subject.'</strong>';
                $subject_new_posts = '<span class="newtext">[ <a href="viewtopic.php?id='.$cur_topic['id'].'&action=new" title="'.$lang_common['New posts info'].'">'.$lang_common['New posts'].'</a> ]</span>';
            }
            else
                $subject_new_posts = null;
    
            // Should we display the dot or not? :)
            if (!$pun_user['is_guest'] && $pun_config['o_show_dot'] == '1')
            {
                if ($cur_topic['has_posted'] == $pun_user['id'])
                    $subject = '<strong>·</strong> '.$subject;
                else
                    $subject = '  '.$subject;
            }
        }

        if ($cur_topic['sticky'] == '1')
        {
            $subject = '<span class="stickytext">'.$lang_forum['Sticky'].': </span>'.$subject;
            $item_status .= ' isticky';
            $icon_text .= ' '.$lang_forum['Sticky'];
        }

        $num_pages_topic = ceil(($cur_topic['num_replies'] + 1) / $pun_user['disp_posts']);

if ($num_pages_topic > 1)
        {
            if ($cur_topic['question'] != '') 
                $subject_multipage = '[ '.paginate($num_pages_topic, -1, 'viewpoll.php?id='.$cur_topic['id']).' ]';
            else
                $subject_multipage = '[ '.paginate($num_pages_topic, -1, 'viewtopic.php?id='.$cur_topic['id']).' ]';
        }
        else
            $subject_multipage = null;

        // Should we show the "New posts" and/or the multipage links?
        if (!empty($subject_new_posts) || !empty($subject_multipage))
        {
            $subject .= '  '.(!empty($subject_new_posts) ? $subject_new_posts : '');
            $subject .= !empty($subject_multipage) ? ' '.$subject_multipage : '';
        }
        //=========================
        //=====RATE TOPIC CODE=====
        //=========================
        //Eric Subach (kha0s@comcast.net)
        //=========================

        if ($rate_topic)
        {
            //If any ratings, calculate the overall rating.
            if ($cur_topic['num_ratings'] > 0)
            {
                $rating = $cur_topic['rate'] / $cur_topic['num_ratings'];
                $rating = round ($rating, 2);

                $subject .= ' ';

                //If the user is not a guest, make the rating clickable to view who voted.
                if (!$pun_user['is_guest'])
                    $subject .= '<a href="rate.php?v_id=' . $cur_topic['id'] . '">';

                //Rating is rounded to the closest star or half-star.
                //If stars are enabled, find what image file to load.
                if ($rate_stars)
                {
                    if ($rating >= 0.0 && $rating < 0.25)
                        $file_name = 'Star_0';
                    else if ($rating >= 0.25 && $rating < 0.75)
                        $file_name = 'Star_0_Half';
                    else if ($rating >= 0.75 && $rating < 1.25)
                        $file_name = 'Star_1';
                    else if ($rating >= 1.25 && $rating < 1.75)
                        $file_name = 'Star_1_Half';
                    else if ($rating >= 1.75 && $rating < 2.25)
                        $file_name = 'Star_2';
                    else if ($rating >= 2.25 && $rating < 2.75)
                        $file_name = 'Star_2_Half';
                    else if ($rating >= 2.75 && $rating < 3.25)
                        $file_name = 'Star_3';
                    else if ($rating >= 3.25 && $rating < 3.75)
                        $file_name = 'Star_3_Half';
                    else if ($rating >= 3.75 && $rating < 4.25)
                        $file_name = 'Star_4';
                    else if ($rating >= 4.25 && $rating < 4.75)
                        $file_name = 'Star_4_Half';
                    else
                        $file_name = 'Star_5';

                    $subject .= '<img src="' . PUN_ROOT . 'img/rate_stars/' . $pun_config['o_rt_cur_stars'] . '/' . $file_name . '.gif" />';
                }
                //Otherwise, use numbers.
                else
                {
                    $decimal = ($rating - floor ($rating)) * 100;
                    $rating = floor ($rating);

                    if ($decimal >= 25 && $decimal < 75)
                        $rating += 0.5;
                    if ($decimal >= 75)
                        $rating += 1;

                    $subject .= '<strong><small>' . $rating . ' / 5</small></strong>';
                }

                //If the link was made clickable, end the tag.
                if (!$pun_user['is_guest'])
                    $subject .= '</a>';
            }
        }

        //==================
        //=====END CODE=====
        //==================
?>
                <tr<?php if ($item_status != '') echo ' class="'.trim($item_status).'"'; ?>>
                    <td class="tcl">
                        <div class="intd">
                            <div class="<?php echo $icon_type ?>"><div class="nosize"><?php echo trim($icon_text) ?></div></div>
                            <div class="tclcon">
                                <?php echo $subject."\n" ?>
                            </div>
                        </div>
                    </td>
                    <!-- MOD AUTHOR COLUMN 1 line folowing added -->
                    <td class="tc2"  style="WIDTH: 12%"><?php echo ($cur_topic['moved_to'] == null) ? $author : ' ' ?></td>
                    <td class="tc2"><?php echo ($cur_topic['moved_to'] == null) ? $cur_topic['num_replies'] : ' ' ?></td>
                    <td class="tc3"><?php echo ($cur_topic['moved_to'] == null) ? $cur_topic['num_views'] : ' ' ?></td>
                    <td class="tcr"><?php echo $last_post ?></td>
                </tr>
<?php

    }
}
else
{

?>
                <tr>
                    <td class="tcl" colspan="4"><?php echo $lang_forum['Empty forum'] ?></td>
                </tr>
<?php

}

?>
            </tbody>
            </table>
        </div>
    </div>
</div>

<div class="linksb">
    <div class="inbox">
        <p class="pagelink conl"><?php echo $paging_links ?></p>
<?php echo $post_link ?>
        <ul><li><a href="index.php"><?php echo $lang_common['Index'] ?></a> </li><li>» <?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></li></ul>
        <div class="clearer"></div>
    </div>
</div>
<?php

$forum_id = $id;
$footer_style = 'viewforum';
require PUN_ROOT.'footer.php';

3,390

(17 replies, posted in Programming)

What exactly are you trying to do?

FIND

    if ($cur_forum['moderators'] != '')
    {
        $mods_array = unserialize($cur_forum['moderators']);
        $moderators = array();

        while (list($mod_username, $mod_id) = @each($mods_array))
            $moderators[] = '<a href="profile.php?id='.$mod_id.'">'.pun_htmlspecialchars($mod_username).'</a>';

        $moderators = "\t\t\t\t\t\t\t\t".'<p><em>('.$lang_common['Moderated by'].'</em> '.implode(', ', $moderators).')</p>'."\n";
    }

AFTER, ADD

            if (!empty($sfdb))
            {
                foreach ($sfdb as $sub_forums)
                {
                    if ($cur_forum['fid'] == $sub_forums[0] && !$pun_user['is_guest'] && $sub_forums[5] > $pun_user['last_visit'])
                    {
                        $item_status = 'inew';
                        $icon_text = $lang_common['New icon'];
                        $icon_type = 'icon inew';
                    }
                }
            }

Moved to Modifications

Moved to Modifications

Moved to Modifications
The search system doesn't search any content in your site, it searches forum posts/topics

Hopefully we'll put hooks in enough places that it will be that flexible wink

sirena wrote:

Works great!!

Thanks all - this will be really useful to a punBB project of mine where alpha sorting of topics just made so much sense.

Soonotes, can I suggest that you submit your code to the punres wiki - I'm sure others will find it useful. I wouldn't want to take credit for your code.

pogenwurst may also like to post this solution to the 'How do I' FAQ sticky in the punbb 'Modifications' forum:

http://punbb.org/forums/viewtopic.php?id=10134

And while I am dishing out suggestions left and right, could this be rolled into the code for punBB proper by one of the developers?

It doesn't add too much 'weight' to the codebase but is very useful.

At the same time, we could add any number of possible sorts for just that reason wink
I'm sure it can be written as an extension for 1.3 smile

Except

ORDER BY sticky '.$order.', '.$by.'

should be

ORDER BY sticky DESC, '.$by.' '.$order.'

Aha
Moved to Modifications, since I now realize you're talking about a mod

You wouldn't use a PHP function (natsort) to sort it wink
What you would want to do is create a series of if statements for the sort_by values and then replace the places the code uses

(($cur_forum['sort_by'] == '1') ? 'posted' : 'last_post')

with your new variable

Modify the HTML in viewforum.php wink