Hi,

Yes it is, as I was trying it but I am 100% sure that it will be easier for everyone if its in the form of an extension. Also Private Messaging is a good temporary solution but it won't be on record like threads which can be viewable by all support staff, mods, admins etc.

Also 1 question which just came to my mind. The user must not be able to edit / modify their thread / post once posted. Becuase if there's dispute of any type with the client then he may edit the content and evidence gets destroyed.

Thanks.

Hi,

I am glad that you are asking. I will explain how it can benefit PunBB and its users:

1. I run a small time hosting company and I right now have to use 3 different softwares in order to provide complete support to my clients i.e: Knowledge Base script, Support Ticket System and a Forum.

My client has to register at all 3 places differently in order to get help and support which I myself feel is very annoying. So if PunBB gets a private thread feature then in real I can pack all of these 3 things into 1 single PunBB.

Now you ask How ?

1. I create a forum category called Knowledgebase (Knowledge base script is taken care off)
2. Forum is already going to be there in PunBB (Forum is already done)
3. Private Threads in PunBB which will act as Support Ticket System. As this will be private, so clients will see their own threads (tickets). Why private ? Becuase clients will post their username / password etc. which nobody else should see.

This is a very basic thing which can be put in the forum rules in admin area of PunBB. phpBB and vB etc. already have this but they are slow and bulky. This will be a good additon as far as I think.

I am not sure how many people are using a forum software as a support ticket system but I think that its going to be a great reliefe for clients as they don't have to register at 3 different places, I don't have to update all the folders everytime there's a change, so its just going to be a great reliefe.

I hope many people who are using 3 different solutions may go for this. I know that this is not the best way but it works. Simply forcing the user to subscribe to the thread in the private forum and whenever admin/support staff replies the client gets an email telling that reply is there.

An example:

If I have (kikloo) has started a thread in private forum category, then its only visible by me, mods and admins. If anyone else tries to view then they get access denid or something like that.

Main thing is that with this feature added PunBB will be able to act as a Knowledge Base, Support Ticket System and Forum. All in One package! smile I hope you get my point.

Thanks.

3

(70 replies, posted in News)

Hi,

Can I upgrade from 1.2.19 to 1.3 ?

Thanks.

4

(1 replies, posted in PunBB 1.2 troubleshooting)

Hi,

I upgraded to 1.2.19 and i lost some of my few mods. Can I know where is Last Post on Index is available ?

Thanks.

Hi,

A extension for private threads would be a cool feature. So that the user who has posted can only view/reply/modify the thread in a particular forum category.

Ofcourse Mods / Admins would be also able to perform all functions too. Only other users should NOT be able to see the posts etc. at all and they should see only theirs.

Thanks.

6

(22 replies, posted in PunBB 1.2 troubleshooting)

MattF wrote:

The whole file, not just an excerpt of it.

Hi,

Done.

Thanks.

7

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

Here it is:

<?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';

// 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;

// 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></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';

?>
<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>&nbsp;</li><li>&raquo;&nbsp;<?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>
                                        <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
if ($pun_user['is_guest'] || $pun_config['o_show_dot'] == '0')
{
        // Without "the dot"
        $sql = 'SELECT id, poster, subject, posted, last_post, last_post_id, last_poster, num_views, num_replies, closed, sticky, moved_to 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'];
}
else
{
        // With "the dot"
        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 FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id AND p.poster_id='.$pun_user['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 FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id AND p.poster_id='.$pun_user['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 FROM '.$db->prefix.'topics AS t LEFT JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id AND p.poster_id='.$pun_user['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))
        {
                if (intval($_GET["id"])  == "5" && ($pun_user['g_id'] < PUN_GUEST || $cur_topic['poster'] == $pun_user['username']))
                {
                        $icon_text = $lang_common['Normal icon'];
                        $item_status = '';
                        $icon_type = 'icon';

                        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'].'&nbsp;'.pun_htmlspecialchars($cur_topic['last_poster']).'</span>';
                        else
                                $last_post = '&nbsp;';

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

                        if ($cur_topic['moved_to'] != 0)
                                $subject = $lang_forum['Moved'].': <a href="viewtopic.php?id='.$cur_topic['moved_to'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';
                        else if ($cur_topic['closed'] == '0')
                                $subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';
                        else
                        {
                                $subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.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">[&nbsp;<a href="viewtopic.php?id='.$cur_topic['id'].'&amp;action=new" title="'.$lang_common['New posts info'].'">'.$lang_common['New posts'].'</a>&nbsp;]</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>&middot;</strong>&nbsp;'.$subject;
                                else
                                        $subject = '&nbsp;&nbsp;'.$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)
                                $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 .= '&nbsp; '.(!empty($subject_new_posts) ? $subject_new_posts : '');
                                $subject .= !empty($subject_multipage) ? ' '.$subject_multipage : '';
                        }

?>
                                        <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>
                                                <td class="tc2"><?php echo ($cur_topic['moved_to'] == null) ? $cur_topic['num_replies'] : '&nbsp;' ?></td>
                                                <td class="tc3"><?php echo ($cur_topic['moved_to'] == null) ? $cur_topic['num_views'] : '&nbsp;' ?></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>&nbsp;</li><li>&raquo;&nbsp;<?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';

Thanks.

Hi,

Anyone with any superior suggestions ??!
What i have done is hide the checkbox in post.php and made it 1 by default. So i guess this is the way to go !!

Thanks.

9

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

Nothing I just used your last code which was condensed.

Thanks.

10

(22 replies, posted in PunBB 1.2 troubleshooting)

HI,

okay I found a prob. the threads are not showing up in any forum if a guest is online. How to fix ?

Thanks.

Hi,

My main website is set to 750px so I wanted this to be at 750px also.

Thanks.

Reines wrote:

Keep in mind 750px can only be center aligned if the users screen resolution is over 750px, if they are using anything smaller it will look bad.

Hi,

I don't think I have to take care about that. 750 is max I can do to stay with the standards.

Thanks,

Hi,

Great! smile

Thanks.

14

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

This is fixed. I am using the new condensed version!

Thanks.

Hi,

Where i can change navigation bar ? I need to remove userlist.php from it.

Thanks.

16

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

But as Mattf said, this requires more customization specially in post.php and search.php to make it turly invisible. I am working on it.

Thanks.

17

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

Excellent works like a chram. Here's the code in case anyone needs it. You have to add some code in viewforum.php:

Find - Starts on line: 138 and ends at line: 142:

// If there are topics in this forum.
if ($db->num_rows($result))
{
        while ($cur_topic = $db->fetch_assoc($result))
        {

After above, Add:

                if (intval($_GET["id"])  == "5")
                {
                        if ($pun_user['g_id'] < PUN_GUEST || $cur_topic['poster'] == $pun_user['username'])
                        {

Find:

                                                        <td class="tcr"><?php echo $last_post ?></td>
                                                </tr>
<?php

After Add:

          }
}

Hope this works.

Thanks.

18

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

Yes sorry. How to get the username of the logged in user ? The logged in user's username is required so that I can compare it with the poster's username.

// check if this is private forum
if ($_GET["id"]  == "7")
{
        echo "pass: 1";
        if ($cur_topic['poster'] == "kikloo") // here i need to put logged in user's username
        {
                // do stuff
        }
}

Thanks.

19

(22 replies, posted in PunBB 1.2 troubleshooting)

What is code for ?

Admin and Mods ? PUN_ADMIN and PUN_MOD ?

Thanks.

20

(3 replies, posted in PunBB 1.2 troubleshooting)

Ya, i am already using code tags but php codes so it colorizes the words etc.

21

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

I tried, i was checking if the username was same as the thread starter's name then it would show else it won't. But this is not enough as I am not familiar with punbb code etc. If i use the above criteria then only poster will see the post, mods and admins won't be able to see the code. So I need mods and admins to see all the posts.

Please help.

Thanks.

22

(3 replies, posted in PunBB 1.2 troubleshooting)

Hi,

Are there some php code tags available ?

Thanks.

23

(1 replies, posted in PunBB 1.2 troubleshooting)

Hi,

I have done this.

Thanks.

24

(22 replies, posted in PunBB 1.2 troubleshooting)

Hi,

No probs. please tell me how to do it.

Thanks.

Great! smile