open up index.php

find:

require PUN_ROOT.'lang/'.$pun_user['language'].'/portal.php';

after add:

if ($pun_user['is_guest'])
    message("GTFO!");

this looks amazing.....i may try it out.

Okay i have been playing around with userlist.php and i have been trying to figure out how i could modify it to look its best tongue

so i had a look at some other forum software userlists that included avatars and decided to center all of the coloum content and brighten up the username coloum a bit.

Here is the fully modified version of userlist.php:

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


// Load the userlist.php language file
require PUN_ROOT.'lang/'.$pun_user['language'].'/userlist.php';

// Load the search.php language file
require PUN_ROOT.'lang/'.$pun_user['language'].'/search.php';


// Determine if we are allowed to view post counts
$show_post_count = ($pun_config['o_show_post_count'] == '1' || $pun_user['g_id'] < PUN_GUEST) ? true : false;

$username = (isset($_GET['username']) && $pun_user['g_search_users'] == '1') ? $_GET['username'] : '';
$show_group = (!isset($_GET['show_group']) || intval($_GET['show_group']) < -1 && intval($_GET['show_group']) > 2) ? -1 : intval($_GET['show_group']);
$sort_by = (!isset($_GET['sort_by']) || $_GET['sort_by'] != 'username' && $_GET['sort_by'] != 'registered' && ($_GET['sort_by'] != 'num_posts' || !$show_post_count)) ? 'username' : $_GET['sort_by'];
$sort_dir = (!isset($_GET['sort_dir']) || $_GET['sort_dir'] != 'ASC' && $_GET['sort_dir'] != 'DESC') ? 'ASC' : strtoupper($_GET['sort_dir']);


$page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / '.$lang_common['User list'];
if ($pun_user['g_search_users'] == '1')
    $focus_element = array('userlist', 'username');

define('PUN_ALLOW_INDEX', 1);
require PUN_ROOT.'header.php';

?>
<div class="blockform">
    <h2><span><?php echo $lang_search['User search'] ?></span></h2>
    <div class="box">
    <form id="userlist" method="get" action="userlist.php">
        <div class="inform">
            <fieldset>
                <legend><?php echo $lang_ul['User find legend'] ?></legend>
                <div class="infldset">
<?php if ($pun_user['g_search_users'] == '1'): ?>                    <label class="conl"><?php echo $lang_common['Username'] ?><br /><input type="text" name="username" value="<?php echo pun_htmlspecialchars($username) ?>" size="25" maxlength="25" /><br /></label>
<?php endif; ?>                    <label class="conl"><?php echo $lang_ul['User group']."\n" ?>
                    <br /><select name="show_group">
                        <option value="-1"<?php if ($show_group == -1) echo ' selected="selected"' ?>><?php echo $lang_ul['All users'] ?></option>
<?php

$result = $db->query('SELECT g_id, g_title FROM '.$db->prefix.'groups WHERE g_id!='.PUN_GUEST.' ORDER BY g_id') or error('Unable to fetch user group list', __FILE__, __LINE__, $db->error());

while ($cur_group = $db->fetch_assoc($result))
{
    if ($cur_group['g_id'] == $show_group)
        echo "\t\t\t\t\t\t".'<option value="'.$cur_group['g_id'].'" selected="selected">'.pun_htmlspecialchars($cur_group['g_title']).'</option>'."\n";
    else
        echo "\t\t\t\t\t\t".'<option value="'.$cur_group['g_id'].'">'.pun_htmlspecialchars($cur_group['g_title']).'</option>'."\n";
}

?>
                    </select>
                    <br /></label>
                    <label class="conl"><?php echo $lang_search['Sort by']."\n" ?>
                    <br /><select name="sort_by">
                        <option value="username"<?php if ($sort_by == 'username') echo ' selected="selected"' ?>><?php echo $lang_common['Username'] ?></option>
                        <option value="registered"<?php if ($sort_by == 'registered') echo ' selected="selected"' ?>><?php echo $lang_common['Registered'] ?></option>
<?php if ($show_post_count): ?>                        <option value="num_posts"<?php if ($sort_by == 'num_posts') echo ' selected="selected"' ?>><?php echo $lang_ul['No of posts'] ?></option>
<?php endif; ?>                    </select>
                    <br /></label>
                    <label class="conl"><?php echo $lang_search['Sort order']."\n" ?>
                    <br /><select name="sort_dir">
                        <option value="ASC"<?php if ($sort_dir == 'ASC') echo ' selected="selected"' ?>><?php echo $lang_search['Ascending'] ?></option>
                        <option value="DESC"<?php if ($sort_dir == 'DESC') echo ' selected="selected"' ?>><?php echo $lang_search['Descending'] ?></option>
                    </select>
                    <br /></label>
                    <p class="clearb"><?php echo $lang_ul['User search info'] ?></p>
                </div>
            </fieldset>
        </div>
        <p><input type="submit" name="search" value="<?php echo $lang_common['Submit'] ?>" accesskey="s" /></p>
    </form>
    </div>
</div>
<?php


// Create any SQL for the WHERE clause
$where_sql = array();
$like_command = ($db_type == 'pgsql') ? 'ILIKE' : 'LIKE';

if ($pun_user['g_search_users'] == '1' && $username != '')
    $where_sql[] = 'u.username '.$like_command.' \''.$db->escape(str_replace('*', '%', $username)).'\'';
if ($show_group > -1)
    $where_sql[] = 'u.group_id='.$show_group;

// Fetch user count
$result = $db->query('SELECT COUNT(id) FROM '.$db->prefix.'users AS u WHERE u.id>1'.(!empty($where_sql) ? ' AND '.implode(' AND ', $where_sql) : '')) or error('Unable to fetch user list count', __FILE__, __LINE__, $db->error());
$num_users = $db->result($result);


// Determine the user offset (based on $_GET['p'])
$num_pages = ceil($num_users / 50);

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

// Generate paging links
$paging_links = $lang_common['Pages'].': '.paginate($num_pages, $p, 'userlist.php?username='.urlencode($username).'&show_group='.$show_group.'&sort_by='.$sort_by.'&sort_dir='.strtoupper($sort_dir));


?>
<div class="linkst">
    <div class="inbox">
        <p class="pagelink"><?php echo $paging_links ?></p>
    </div>
</div>

<div id="users1" class="blocktable">
    <h2><span><?php echo $lang_common['User list'] ?></span></h2>
    <div class="box">
        <div class="inbox">
        <table cellspacing="0">
        <thead>
            <tr>
                <th class="tcl" scope="col"><?php echo $lang_common['Username'] ?></th>
                <th class="tc2" scope="col"><?php echo 'Group Title'; ?></th><th class="tc4" scope="col">Avatar</th>
<?php if ($show_post_count): ?>                <th class="tc3" scope="col"><?php echo $lang_common['Posts'] ?></th>
<?php endif; ?>                <th class="tcr" scope="col"><?php echo $lang_common['Registered'] ?></th>
            </tr>
        </thead>
        <tbody>
<?php

// Grab the users
$result = $db->query('SELECT u.id, u.username, u.title, u.num_posts, u.registered, u.use_avatar, g.g_id, g.g_user_title, g.g_title FROM '.$db->prefix.'users AS u LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE u.id>1'.(!empty($where_sql) ? ' AND '.implode(' AND ', $where_sql) : '').' ORDER BY '.$sort_by.' '.$sort_dir.' LIMIT '.$start_from.', 50') or error('Unable to fetch user list', __FILE__, __LINE__, $db->error());
if ($db->num_rows($result))
{
    while ($user_data = $db->fetch_assoc($result))
    {
        $user_group = $user_data['g_user_title'];
        $user_title_field = get_title($user_data);
        $user_avatar = '';
        
        if ($pun_config['o_avatars'] == '1' && $user_data['use_avatar'] == '1' && $pun_user['show_avatars'] != '0')
        {
            if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$user_data['id'].'.gif'))
                $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$user_data['id'].'.gif" '.$img_size[3].' alt="" />';
            else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$user_data['id'].'.jpg'))
                $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$user_data['id'].'.jpg" '.$img_size[3].' alt="" />';
            else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$user_data['id'].'.png'))
                $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$user_data['id'].'.png" '.$img_size[3].' alt="" />';
        }
        else
            $user_avatar = '';
        
?>
                <tr>
                    <td class="tcl"><?php echo '<a href="profile.php?id='.$user_data['id'].'"><strong>'.pun_htmlspecialchars($user_data['username']).'</strong></a>' ?><br /><?php echo $user_title_field ?></td>
                    <td class="tc2"><?php echo $user_group ?></td>
                    <td class="tc4"><?php echo $user_avatar ?></td>
<?php if ($show_post_count): ?>                    <td class="tc3"><?php echo $user_data['num_posts'] ?></td>
<?php endif; ?>
                    <td class="tcr"><?php echo format_time($user_data['registered'], true) ?></td>
                </tr>
<?php

    }
}
else
    echo "\t\t\t".'<tr>'."\n\t\t\t\t\t".'<td class="tcl" colspan="'.(($show_post_count) ? 4 : 3).'">'.$lang_search['No hits'].'</td></tr>'."\n";

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

<div class="linksb">
    <div class="inbox">
        <p class="pagelink"><?php echo $paging_links ?></p>
    </div>
</div>
<?php

require PUN_ROOT.'footer.php';

Here is the modified css code located in base.css:

/* 6.3 Other Table Setup */

#users1 .tcl {WIDTH: 35%; TEXT-ALIGN: center; font-size: 14px}

#users1 .tcr {WIDTH: 20%; TEXT-ALIGN: center}

#users1 .tc2 {WIDTH: 20%; TEXT-ALIGN: center}

#users1 .tc3 {WIDTH: 10%; TEXT-ALIGN: center}

#users1 .tc4 {WIDTH: 15%; TEXT-ALIGN: center}

#debug .tcr {WIDTH: 85%; WHITE-SPACE: normal}

#punindex TD.tcr SPAN.byuser {DISPLAY: block}

feel free to try it out and let me know how it looks. You can also view a demo of this here: http://www.fatalgamers.org/forums/userlist.php

Just a small modification to display each users avatar under a new coloum in userlist.php

Enjoy smile

Open userlist.php

Find

<th class="tc2" scope="col"><?php echo $lang_common['Title'] ?></th>

Add after

<th class="tc4" scope="col">Avatar</th>

Find

$result = $db->query('SELECT u.id, u.username, u.title, u.num_posts, u.registered, g.g_id, g.g_user_title, g.g_title FROM '.$db->prefix.'users AS u LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE u.id>1'.(!empty($where_sql) ? ' AND '.implode(' AND ', $where_sql) : '').' ORDER BY '.$sort_by.' '.$sort_dir.' LIMIT '.$start_from.', 50') or error('Unable to fetch user list', __FILE__, __LINE__, $db->error());

Replace with

$result = $db->query('SELECT u.id, u.username, u.title, u.num_posts, u.registered, u.use_avatar, g.g_id, g.g_user_title, g.g_title FROM '.$db->prefix.'users AS u LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE u.id>1'.(!empty($where_sql) ? ' AND '.implode(' AND ', $where_sql) : '').' ORDER BY '.$sort_by.' '.$sort_dir.' LIMIT '.$start_from.', 50') or error('Unable to fetch user list', __FILE__, __LINE__, $db->error());

Find

$user_title_field = get_title($user_data);

Add after

$user_avatar = '';
        
        if ($pun_config['o_avatars'] == '1' && $user_data['use_avatar'] == '1' && $pun_user['show_avatars'] != '0')
        {
            if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$user_data['id'].'.gif'))
                $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$user_data['id'].'.gif" '.$img_size[3].' alt="" />';
            else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$user_data['id'].'.jpg'))
                $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$user_data['id'].'.jpg" '.$img_size[3].' alt="" />';
            else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$user_data['id'].'.png'))
                $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$user_data['id'].'.png" '.$img_size[3].' alt="" />';
        }
        else
            $user_avatar = '';

Find

<td class="tc2"><?php echo $user_title_field ?></td>

Add after

<td class="tc4"><?php echo $user_avatar ?></td>

Open base.css

Find

/* 6.3 Other Table Setup */

#users1 .tcl {WIDTH: 40%}

#users1 .tcr {WIDTH: 25%}

#users1 .tc2 {WIDTH: 25%; TEXT-ALIGN: left}

#users1 .tc3 {WIDTH: 10%; TEXT-ALIGN: center}

#debug .tcr {WIDTH: 85%; WHITE-SPACE: normal}

#punindex TD.tcr SPAN.byuser {DISPLAY: block}

Replace with

/* 6.3 Other Table Setup */

#users1 .tcl {WIDTH: 35%}

#users1 .tcr {WIDTH: 20%}

#users1 .tc2 {WIDTH: 20%; TEXT-ALIGN: left}

#users1 .tc3 {WIDTH: 10%; TEXT-ALIGN: center}

#users1 .tc4 {WIDTH: 15%; TEXT-ALIGN: center}

#debug .tcr {WIDTH: 85%; WHITE-SPACE: normal}

#punindex TD.tcr SPAN.byuser {DISPLAY: block}

Save and upload

It may turn out messy looking depending upon the maximum avatar size for your forums. I also suggest applying the default avatar modification found at http://www.punres.org in the wiki. This will help keep everything aligned.

55

(12 replies, posted in Feature requests)

thank you smartys tongue

56

(12 replies, posted in Feature requests)

Well, seeing as how rss will be more extensive in punbb 1.3 i suggest adding an rss button to the header like so.

(this is just an example from the current version of punbb)

<link rel="alternate" type="application/rss+xml" href="http://www.fatalgamers.org/forums/extern.php?action=new&type=RSS" title="Forum Feeds" />

correct smartys smile and thank you for informing him.

Any suggestions?

Just wondering if this set up appealed to you more than the default set up. It is nothing big, just a little tweak.

here is the demo: http://fatalgamers.org/forums/userlist.php

here is the file code:

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


// Load the userlist.php language file
require PUN_ROOT.'lang/'.$pun_user['language'].'/userlist.php';

// Load the search.php language file
require PUN_ROOT.'lang/'.$pun_user['language'].'/search.php';


// Determine if we are allowed to view post counts
$show_post_count = ($pun_config['o_show_post_count'] == '1' || $pun_user['g_id'] < PUN_GUEST) ? true : false;

$username = (isset($_GET['username']) && $pun_user['g_search_users'] == '1') ? $_GET['username'] : '';
$show_group = (!isset($_GET['show_group']) || intval($_GET['show_group']) < -1 && intval($_GET['show_group']) > 2) ? -1 : intval($_GET['show_group']);
$sort_by = (!isset($_GET['sort_by']) || $_GET['sort_by'] != 'username' && $_GET['sort_by'] != 'registered' && ($_GET['sort_by'] != 'num_posts' || !$show_post_count)) ? 'username' : $_GET['sort_by'];
$sort_dir = (!isset($_GET['sort_dir']) || $_GET['sort_dir'] != 'ASC' && $_GET['sort_dir'] != 'DESC') ? 'ASC' : strtoupper($_GET['sort_dir']);


$page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / '.$lang_common['User list'];
if ($pun_user['g_search_users'] == '1')
    $focus_element = array('userlist', 'username');

define('PUN_ALLOW_INDEX', 1);
require PUN_ROOT.'header.php';

?>
<div class="blockform">
    <h2><span><?php echo $lang_search['User search'] ?></span></h2>
    <div class="box">
    <form id="userlist" method="get" action="userlist.php">
        <div class="inform">
            <fieldset>
                <legend><?php echo $lang_ul['User find legend'] ?></legend>
                <div class="infldset">
<?php if ($pun_user['g_search_users'] == '1'): ?>                    <label class="conl"><?php echo $lang_common['Username'] ?><br /><input type="text" name="username" value="<?php echo pun_htmlspecialchars($username) ?>" size="25" maxlength="25" /><br /></label>
<?php endif; ?>                    <label class="conl"><?php echo $lang_ul['User group']."\n" ?>
                    <br /><select name="show_group">
                        <option value="-1"<?php if ($show_group == -1) echo ' selected="selected"' ?>><?php echo $lang_ul['All users'] ?></option>
<?php

$result = $db->query('SELECT g_id, g_title FROM '.$db->prefix.'groups WHERE g_id!='.PUN_GUEST.' ORDER BY g_id') or error('Unable to fetch user group list', __FILE__, __LINE__, $db->error());

while ($cur_group = $db->fetch_assoc($result))
{
    if ($cur_group['g_id'] == $show_group)
        echo "\t\t\t\t\t\t".'<option value="'.$cur_group['g_id'].'" selected="selected">'.pun_htmlspecialchars($cur_group['g_title']).'</option>'."\n";
    else
        echo "\t\t\t\t\t\t".'<option value="'.$cur_group['g_id'].'">'.pun_htmlspecialchars($cur_group['g_title']).'</option>'."\n";
}

?>
                    </select>
                    <br /></label>
                    <label class="conl"><?php echo $lang_search['Sort by']."\n" ?>
                    <br /><select name="sort_by">
                        <option value="username"<?php if ($sort_by == 'username') echo ' selected="selected"' ?>><?php echo $lang_common['Username'] ?></option>
                        <option value="registered"<?php if ($sort_by == 'registered') echo ' selected="selected"' ?>><?php echo $lang_common['Registered'] ?></option>
<?php if ($show_post_count): ?>                        <option value="num_posts"<?php if ($sort_by == 'num_posts') echo ' selected="selected"' ?>><?php echo $lang_ul['No of posts'] ?></option>
<?php endif; ?>                    </select>
                    <br /></label>
                    <label class="conl"><?php echo $lang_search['Sort order']."\n" ?>
                    <br /><select name="sort_dir">
                        <option value="ASC"<?php if ($sort_dir == 'ASC') echo ' selected="selected"' ?>><?php echo $lang_search['Ascending'] ?></option>
                        <option value="DESC"<?php if ($sort_dir == 'DESC') echo ' selected="selected"' ?>><?php echo $lang_search['Descending'] ?></option>
                    </select>
                    <br /></label>
                    <p class="clearb"><?php echo $lang_ul['User search info'] ?></p>
                </div>
            </fieldset>
        </div>
        <p><input type="submit" name="search" value="<?php echo $lang_common['Submit'] ?>" accesskey="s" /></p>
    </form>
    </div>
</div>
<?php


// Create any SQL for the WHERE clause
$where_sql = array();
$like_command = ($db_type == 'pgsql') ? 'ILIKE' : 'LIKE';

if ($pun_user['g_search_users'] == '1' && $username != '')
    $where_sql[] = 'u.username '.$like_command.' \''.$db->escape(str_replace('*', '%', $username)).'\'';
if ($show_group > -1)
    $where_sql[] = 'u.group_id='.$show_group;

// Fetch user count
$result = $db->query('SELECT COUNT(id) FROM '.$db->prefix.'users AS u WHERE u.id>1'.(!empty($where_sql) ? ' AND '.implode(' AND ', $where_sql) : '')) or error('Unable to fetch user list count', __FILE__, __LINE__, $db->error());
$num_users = $db->result($result);


// Determine the user offset (based on $_GET['p'])
$num_pages = ceil($num_users / 50);

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

// Generate paging links
$paging_links = $lang_common['Pages'].': '.paginate($num_pages, $p, 'userlist.php?username='.urlencode($username).'&show_group='.$show_group.'&sort_by='.$sort_by.'&sort_dir='.strtoupper($sort_dir));


?>
<div class="linkst">
    <div class="inbox">
        <p class="pagelink"><?php echo $paging_links ?></p>
    </div>
</div>

<div id="users1" class="blocktable">
    <h2><span><?php echo $lang_common['User list'] ?></span></h2>
    <div class="box">
        <div class="inbox">
        <table cellspacing="0">
        <thead>
            <tr>
                <th class="tcl" scope="col"><?php echo $lang_common['Username'] ?> / User Title</th>
                <th class="tc2" scope="col"><?php echo 'Group Title' ?></th>
<?php if ($show_post_count): ?>                <th class="tc3" scope="col"><?php echo $lang_common['Posts'] ?></th>
<?php endif; ?>                <th class="tcr" scope="col"><?php echo $lang_common['Registered'] ?></th>
            </tr>
        </thead>
        <tbody>
<?php

// Grab the users
$result = $db->query('SELECT u.id, u.username, u.title, u.num_posts, u.registered, g.g_id, g.g_user_title, g.g_title FROM '.$db->prefix.'users AS u LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE u.id>1'.(!empty($where_sql) ? ' AND '.implode(' AND ', $where_sql) : '').' ORDER BY '.$sort_by.' '.$sort_dir.' LIMIT '.$start_from.', 50') or error('Unable to fetch user list', __FILE__, __LINE__, $db->error());
if ($db->num_rows($result))
{
    while ($user_data = $db->fetch_assoc($result))
    {
        $user_title_field = get_title($user_data);
        $group_title = $user_data['g_user_title'];
?>
                <tr>
                    <td class="tcl"><?php echo '<a href="profile.php?id='.$user_data['id'].'"><strong>'.pun_htmlspecialchars($user_data['username']).'</strong></a>' ?><br /><?php echo $user_title_field ?></td>
                    <td class="tc2"><?php echo $group_title ?></td>
<?php if ($show_post_count): ?>                    <td class="tc3"><?php echo $user_data['num_posts'] ?></td>
<?php endif; ?>
                    <td class="tcr"><?php echo format_time($user_data['registered'], true) ?></td>
                </tr>
<?php

    }
}
else
    echo "\t\t\t".'<tr>'."\n\t\t\t\t\t".'<td class="tcl" colspan="'.(($show_post_count) ? 4 : 3).'">'.$lang_search['No hits'].'</td></tr>'."\n";

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

<div class="linksb">
    <div class="inbox">
        <p class="pagelink"><?php echo $paging_links ?></p>
    </div>
</div>
<?php

require PUN_ROOT.'footer.php';

i was thinking of adding a user avatar field.

depends on where or who you buy/register the domain from tongue

try extendending the margin-left and the margin-right under #main

albsat wrote:

@neofutur

please consider once again to include the Attachment mod cause is is very important and makes MyBestBB a killing forum.

regards

no your just mentioning this because it will make things easier for you......not everybody uses the attachment mod and at times this modifications can conflict with other modifications and cause problems. if you wanted to use the attachment that bad then you would make an attempt to install it.

yes as smartys said you must place that code in a file and put that file under include/user and then use this code inside of the box:

<pun_include "filename.php">

Just sharing this with some of you tongue

this modification is rather simple and what it does is add a forum description block to viewforum.php depending on whether or not a description is set.

Add this to viewforum.php:

if($cur_forum['forum_desc'] != '')
    $forum_description = '<div class="block"><h2><span>Forum Description</span></h2><div class="box"><div style="margin: 3px" class="inbox"><strong>'.$cur_forum['forum_name'].':</strong> '.$cur_forum['forum_desc'].'</div></div></div>';
    else
    $forum_description = '';

Find this query:

$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());

Add this to the query:

f.forum_desc,

Find these lines:

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

Before these lines add this line:

<?php echo $forum_description ?>

As a result to the following step above you should have something like this:

<?php echo $forum_description ?>
<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>

That should be it tongue let me know if you encounter any problems and i will see what steps i have missed.

Well, i figured that this modification would be great for punbb. How about a modification that lets administrators configure the span style of each seperate usergroup. Similar to colored usergroups, but more extended.

I thought of this in the midst of putting something together for moderator and administrator spans in viewtopic.php:

if($cur_post['g_id'] == PUN_ADMIN)
            $username = '<a href="profile.php?id='.$cur_post['poster_id'].'"><span>- [ '.pun_htmlspecialchars($cur_post['username']).' ] -</span></a>';
        else if($cur_poster['g_id'] == PUN_MOD)
            $username = '<a href="profile.php?id='.$cur_post['poster_id'].'"><span>( -'.pun_htmlspecialchars($cur_post['username']).'- )</span></a>';
        else
            $username = '<a href="profile.php?id='.$cur_post['poster_id'].'">'.pun_htmlspecialchars($cur_post['username']).'</a>';

seems very nice smartys smile will have a look at this in due time

if you are refering to the modified arcade.php then have a look at this code:

<?php


session_name("arcade_games");
session_start();

// Session first run?
if (!isset($_SESSION['firsttime']))
{
    // Set defaults
    $_SESSION['firsttime'] = true;
    $_SESSION['cat']=0;
    $_SESSION['nump']=10;
    $_SESSION['search']='';
    $_SESSION['rsearch']='game_name';
    $_SESSION['page']=0;
    $_SESSION['sorto']='DESC';
    $_SESSION['sortby']='game_id';
}
else
{
    // no first run, use post or request
    if (isset($_POST['nump'])) $_SESSION['nump']=$_POST['nump'];
    if (isset($_POST['cat'])) $_SESSION['cat']=$_POST['cat'];
    if (isset($_POST['search'])) $_SESSION['search']=$_POST['search'];
    if (isset($_POST['rsearch'])) $_SESSION['rsearch']=$_POST['rsearch'];
    if (isset($_REQUEST['page'])) $_SESSION['page']=$_REQUEST['page'];
    if (isset($_POST['sorto'])) $_SESSION['sorto']=$_POST['sorto'];
    if (isset($_POST['sortby'])) $_SESSION['sortby']=$_POST['sortby'];
}

// Define local vars
$s_nump = $_SESSION['nump'];
$s_cat = $_SESSION['cat'];
$s_search = $_SESSION['search'];
$s_rsearch = $_SESSION['rsearch'];
$s_page = $_SESSION['page'];
$s_sorto = $_SESSION['sorto'];
$s_sortby = $_SESSION['sortby'];


if (!defined('PUN_ROOT')) define('PUN_ROOT','./');

require PUN_ROOT.'include/common.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/arcade.php';
require PUN_ROOT.'header.php';

$page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / Arcade Games';
if (!function_exists('generate_config_cache'))
    require PUN_ROOT.'include/cache.php';
    
if ($pun_config['arcade_live'] == '0')
    message($lang_arcade['arcade disabled']);
    
    
if (!$pun_user['is_guest'])
{
    // Fetch total game count
    $result = $db->query('SELECT COUNT(game_id) FROM '.$db->prefix.'arcade_games') or error('Unable to fetch total game count', __FILE__, __LINE__, $db->error());
    $num_games = $db->result($result);

    
    // Arcade Statistic Block
    ?>
    <div class="blockform">
    <h2><span><?php echo 'Arcade Games ('.$lang_arcade['number games'].' '.$num_games.')' ?></span></h2>
        <div class="box">
        <?// Newest games ?>
        <table cellspacing="0" style="padding: 2px 2px 2px 2px; border:none;">            
        <tr style="padding: 2px 2px 2px 2px; border:none;" width="25%">
            <td valign="top" width="20%" style="padding: 2px 2px 2px 2px; border:none;">
            <fieldset>
            <legend align="left"> <?php echo ''.$lang_arcade['new_games'].'' ?> </legend>
            <table width="0" border="0" cellspacing="0" cellpadding="0" style="padding: 0px 0px 0px 0px; border:none;">
            <?
            // Get latest games
            $result2 = $db->query('SELECT game_id, game_name, game_image FROM '.$db->prefix.'arcade_games ORDER BY game_id DESC LIMIT '.$pun_config['arcade_numnew'].'') or error('Unable to get latest games', __FILE__, __LINE__, $db->error());
            $i = 1;
            while($line = $db->fetch_assoc($result2))
            {
                echo '
  <tr style="padding: 0px 0px 0px 0px; border:none;">
    <td style="padding: 0px 0px 0px 0px; border:none;"><a href="arcade_play.php?id='.$line['game_id'].'"><img width="15" hight="5" align="center" src="games/images/'.$line['game_image'].'" /></a></td>
    <td style="padding: 0px 0px 0px 2px; border:none;"><div align="left"><a href="arcade_play.php?id='.$line['game_id'].'">'.$line['game_name'].'</a></div></td>
  </tr>
';
                $i++;
            }

            ?></table><p></p>

            </td></fieldset>
            <?// King of Highscore images ?>
            <td valign="top" width="50%" style="padding: 2px 2px 2px 2px; border:none;">
            <fieldset>
            <legend align="left"> <?php echo ''.$lang_arcade['highscore_champs'].'' ?> </legend><p></p>
            
            <table cellspacing="0" style="padding: 0px 0px 0px 0px; border:none;">
            <tr style="padding: 0px 0px 0px 0px; border:none;">
            <td class="alt2" align="center" nowrap="nowrap" valign="middle" width="33%" style="padding: 0px 0px 0px 0px; border:none;"><b><img src="./img/arcade/king1.gif" alt="1"></b></td>
            <td class="alt2" align="center" nowrap="nowrap" valign="middle" width="33%" style="padding: 0px 0px 0px 0px; border:none;"><b><img src="./img/arcade/king2.gif" alt="2"></b></td>
            <td class="alt2" align="center" nowrap="nowrap" valign="middle" width="33%" style="padding: 0px 0px 0px 0px; border:none;"><b><img src="./img/arcade/king3.gif" alt="3"></b></td>
            </tr>
    <?php
            // Count all Highscores per user, display the king of the highscores
            $sql = 'SELECT id,username, COUNT(*) AS count_top FROM '.$db->prefix.'arcade_ranking INNER JOIN '.$db->prefix.'users ON ('.$db->prefix.'users.id = '.$db->prefix.'arcade_ranking.rank_player) WHERE '.$db->prefix.'arcade_ranking.rank_topscore = 1 GROUP BY '.$db->prefix.'arcade_ranking.rank_player ORDER BY count_top DESC LIMIT 3';
            $query = $db->query($sql) or error("Impossible to collect highscores per user.", __FILE__, __LINE__, $db->error());
            $i = 1;
            while($line = $db->fetch_assoc($query))
            {                
                echo '<td width="33%" align="center" nowrap="nowrap" valign="middle" style="padding: 0px 0px 0px 0px; margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; border:none; "><strong><span style="text-decoration:blink"><a href="profile.php?id='.$line['id'].'">'.$line['username'].'</a></strong></span><br/>'.$lang_arcade['with'].' <b>'.$line['count_top'].'</b> '.$lang_arcade['highscores'].'</td>';
                $i++;
            }
    ?>
            </table>
            </fieldset>
            <p></p>
            <fieldset>
            <legend align="left"> <?php echo ''.$lang_arcade['new_highscore_champs'].'' ?> </legend><table cellspacing="0" style="padding: 2px 2px 2px 2px; border:none;" width="100%"><tr style="padding: 2px 2px 2px 2px; border:none; "><td style="padding: 2px 2px 2px 2px; border:none;" ><strong>User</strong></td><td style="padding: 2px 2px 2px 2px; border:none;" ><strong>Game</strong></td><td style="padding: 2px 2px 2px 2px; border:none;" ><strong>Score</strong></td><td style="padding: 2px 2px 2px 2px; border:none;" ><strong>Date</strong></td></tr>
    <?php
            // Find the latest Highscores    
            $sql = 'SELECT game_name, game_id, game_image, rank_topscore, username, id, rank_date, rank_score FROM '.$db->prefix.'arcade_ranking, '.$db->prefix.'arcade_games, '.$db->prefix.'users WHERE rank_topscore = 1 AND rank_game = game_filename AND '.$db->prefix.'users.id = rank_player GROUP BY game_name ORDER BY rank_date DESC LIMIT '.$pun_config['arcade_numchamps'].'';
            $query = $db->query($sql) or error("Impossible to select the latest highscores.", __FILE__, __LINE__, $db->error());
            $i = 1;
            while($line = $db->fetch_assoc($query))
            {
                // Display the latest Highscores    
                echo '
<tr style="padding: 0px 0px 0px 0px; border:none; "><td style="padding: 0px 0px 0px 0px; border:none; "><a href="profile.php?id='.$line['id'].'">'.$line['username'].'</a></td><td style="padding: 0px 0px 0px 0px; border:none; "><table style="padding: 0px 0px 0px 0px; border:none; ">
  <tr style="padding: 0px 0px 0px 0px; border:none; ">
    <td style="padding: 0px 0px 0px 0px; border:none;" width="15"><a href="arcade_play.php?id='.$line['game_id'].'"><img width="15" hight="15" src="games/images/'.$line['game_image'].'" /></a></td>
    <td style="padding: 0px 0px 0px 0px; border:none;" align="left"><a href="arcade_play.php?id='.$line['game_id'].'">'.$line['game_name'].'</a></td>
  </tr>
</table>
</td><td style="padding: 0px 0px 0px 0px; border:none; ">'.$line['rank_score'].'</td><td style="padding: 0px 0px 0px 0px; border:none; ">('.format_time($line['rank_date']).')</td></tr>';
                $i++;
            }
    ?></table>
            
    
            </fieldset>
            <?// Most played games ?>
            </td>
            <td  valign="top" width="25%" style="padding: 2px 2px 2px 2px; border:none;" >
            <fieldset>
            <legend align="left"> <?php echo ''.$lang_arcade['most_played'].'' ?> </legend><p></p>
            <table width="0" border="0" cellspacing="0" cellpadding="0" style="padding: 0px 0px 0px 0px; border:none;">
            <?
            // Find most played games
            $result3 = $db->query('SELECT game_id, game_name, game_played, game_image FROM '.$db->prefix.'arcade_games ORDER BY game_played DESC LIMIT '.$pun_config['arcade_mostplayed'].'') or error('Unable to get most played games', __FILE__, __LINE__, $db->error());
            $i = 1;
            while($line = $db->fetch_assoc($result3))
            {
                // Display most played games
                                echo '
  <tr style="padding: 0px 0px 0px 0px; border:none;">
    <td style="padding: 0px 0px 0px 0px; border:none;"><a href="arcade_play.php?id='.$line['game_id'].'"><img width="15" hight="5" align="center" src="games/images/'.$line['game_image'].'" /></a></td>
    <td style="padding: 0px 0px 0px 2px; border:none;"><div align="left"><a href="arcade_play.php?id='.$line['game_id'].'">'.$line['game_name'].'</a></div></td>
  </tr>
';
                $i++;
            }
            ?></table><p></p>
            </fieldset>
            
            <?// Get random game
            $result6 = $db->query('SELECT game_id, game_name,game_image,game_played,rank_topscore,username,id,rank_date,rank_score FROM '.$db->prefix.'arcade_games, '.$db->prefix.'arcade_ranking, '.$db->prefix.'users order by RAND() LIMIT 1') or error('Unable to fetch total game count', __FILE__, __LINE__, $db->error());
    $randg = $db->fetch_assoc($result6);?>
            <p><fieldset>
            <legend align="left"><? echo $lang_arcade['randomg'] ?></legend><p></p>
            <table width="0" border="0" cellspacing="0" cellpadding="0" style="padding: 0px 0px 0px 0px; border:none;">
  <tr style="padding: 0px 0px 0px 0px; border:none;">
    <td style="padding: 0px 0px 0px 0px; border:none;" width="50"><a href="arcade_play.php?id=<? echo $randg['game_id'] ?>" title="<? echo $lang_arcade['Pic Click']?>"><img align="center" src="games/images/<? echo $randg['game_image']?>" /></a></td>
    <td style="padding: 2px 2px 2px 2px; border:none;"><div align="left"><a href="arcade_play.php?id=<? echo $randg['game_id']?>"><? echo $randg['game_name']?></a><br><?php echo''.$lang_arcade['times played'].' <strong>'.$randg['game_played'].'</strong><br />
<a href="arcade_ranking.php?id='.$randg['game_id'].'">'.$lang_arcade['View Highscores'].'</a>'; ?>
</div></td>
  </tr>
</table>

            <p>
            </fieldset>
            
            </td>
        </tr>
        </table>
        </div>
    </div>    

<?php


    // Define search query
    if (strlen($s_search)>0) $sqlquery .= " WHERE {$s_rsearch} LIKE '%{$s_search}%'";
    
    // Did we use a category or the search box?
    if ($s_cat>0)
    {
        if (strlen($s_search)>0)
        {
            $sqlquery .= " AND game_cat = {$s_cat} ORDER BY game_name {$s_sorto}";
        }
        else
        {
            $sqlquery .= " WHERE game_cat = {$s_cat} ORDER BY game_name {$s_sorto}";
        }
    }
    else
    {
        $sqlquery .= " ORDER BY {$s_sortby} {$s_sorto}";
    }
    
    // Filter Block
    ?>
    <div class="box" style="padding:5px;">
        <fieldset>
            <legend><? echo $lang_arcade['filter']?></legend>
            <div class="infldset">
                <form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>" enctype="multipart/form-data">
                    <table cellspacing="0" style="padding: 0px 0px 0px 0px; margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; border:none; ">
                    <tr>
                        <td valign="top" align="left" width="20%" style="padding: 0px 0px 0px 0px; margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; border:none; "><? echo $lang_arcade['numgames']?><p>
                        <select id="nump" name="nump">
                        <option value="10" <?php if ($s_nump == 10) echo ' selected="selected"' ?>>10</option>
                        <option value="25" <?php if ($s_nump == 25) echo ' selected="selected"' ?>>25</option>
                        <option value="50" <?php if ($s_nump == 50) echo ' selected="selected"' ?>>50</option>
                        <option value="100" <?php if ($s_nump == 100) echo ' selected="selected"' ?>>100</option>
                        </select><p>
                        <input type="radio" name="sorto" value="ASC" <?php if ($s_sorto == 'ASC') { echo ' checked'; } ?> />
                         <?echo $lang_arcade['asc']?> 
                        <input type="radio" name="sorto" value="DESC" <?php if ($s_sorto == 'DESC') { echo ' checked'; } ?> />
                         <?echo $lang_arcade['desc']?>
                        </td>
                        <td valign="top" align="left" style="padding: 0px 0px 0px 0px; margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; border:none; "><? echo $lang_arcade['sortby']?><p>
                        <select id="sortby" name="sortby">
                        <option value="game_name" <?php if ($s_sortby == 'game_name') echo ' selected="selected"' ?>><? echo $lang_arcade['name']?></option>
                        <option value="game_id" <?php if ($s_sortby == 'game_id') echo ' selected="selected"' ?>><? echo $lang_arcade['date']?></option>
                        </select><p>
                        </td>
                        <td valign="top" align="left" style="padding: 0px 0px 0px 0px; margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; border:none; "><? echo $lang_arcade['category']?><p>
                        <select id="cat" name="cat">
                        <option value="0" <?php if ($s_cat == 0) echo ' selected="selected"' ?>><? echo $lang_arcade['all cat']?></option>
                        <option value="1" <?php if ($s_cat == 1) echo ' selected="selected"' ?>><? echo $lang_arcade['cat1']?></option>
                        <option value="2" <?php if ($s_cat == 2) echo ' selected="selected"' ?>><? echo $lang_arcade['cat2']?></option>
                        <option value="3" <?php if ($s_cat == 3) echo ' selected="selected"' ?>><? echo $lang_arcade['cat3']?></option>
                        <option value="4" <?php if ($s_cat == 4) echo ' selected="selected"' ?>><? echo $lang_arcade['cat4']?></option>
                        <option value="5" <?php if ($s_cat == 5) echo ' selected="selected"' ?>><? echo $lang_arcade['cat5']?></option>
                        <option value="6" <?php if ($s_cat == 6) echo ' selected="selected"' ?>><? echo $lang_arcade['cat6']?></option>
                        <option value="7" <?php if ($s_cat == 7) echo ' selected="selected"' ?>><? echo $lang_arcade['cat7']?></option>
                        <option value="8" <?php if ($s_cat == 8) echo ' selected="selected"' ?>><? echo $lang_arcade['cat8']?></option>
                        <option value="9" <?php if ($s_cat == 9) echo ' selected="selected"' ?>><? echo $lang_arcade['cat9']?></option>
                        </select>
                        </td>
                        <td valign="top" align="left" style="padding: 0px 0px 0px 0px; margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; border:none; "><? echo $lang_arcade['search']?><p>
                        <input type="text" id="search" name="search" size="20" maxlength="100" value="<?php echo pun_htmlspecialchars($s_search); ?>" />
                          
                        <p><input type="radio" name="rsearch" value="game_name" <?php if ($s_rsearch == 'game_name') { echo ' checked'; } ?> />
                         <?echo $lang_arcade['gname']?> 
                        <input type="radio" name="rsearch" value="game_desc" <?php if ($s_rsearch == 'game_desc') { echo ' checked'; } ?> />
                         <?echo $lang_arcade['gdesc']?>
                        </td>
                    </tr>
                    <tr>
                        <td valign="bottom" colspan="5" style="padding: 0px 0px 0px 0px; margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; border:none; ">
                        <input type="hidden" name="page" value="0" />
                        <br><p><input type="submit" name="filter" value="<?echo $lang_arcade['start']?>" />      <input name="filter" type="submit" onclick="nump.value='10';cat.value='0';search.value='';rsearch.value='game_name';elements[5].checked = true;elements[2].checked = true;sortby.value='game_id';window.location='<?php echo $_SERVER['PHP_SELF'] ?>';" value="<?echo $lang_arcade['reset']?>" />
                        </td>
                    </tr>
                    </table>
                </form>
            </div>
        </fieldset>
    </div>    
    
<?php

    // Fetch game count and generate pages, after using filter
    $result = $db->query('SELECT COUNT(game_id) FROM '.$db->prefix.'arcade_games '.$sqlquery) or error('Unable to fetch filter count', __FILE__, __LINE__, $db->error());
    $num_games2 = $db->result($result);
    $currec = $s_page * $s_nump;
    $kolvop = ceil($num_games2 / $s_nump);
    $cp = ($kolvop == 0? 1 : $kolvop);
    $nump = $s_nump;


    // Generate page links
     if ($cp>1)
        {
            echo '<p>', $lang_common['Pages'],':';
            for ($i=1;$i<=$cp;$i++)
            if (($i-1)==$s_page) echo " $i ";
            else echo ' <a href="'.$_SERVER['PHP_SELF'].'?page='.($i-1).'">'.$i.'</a> ';
        }
        echo '<p>';

?>
<div class="blockform">
<h2><span><?php echo ''.$lang_arcade['Games'].''; ?></span></h2>
    <div class="box">
        <div class="inbox">
            <table cellspacing="0">
            <thead>
                <tr>
                    <th class="tc2" scope="col" width="25%" nowrap="nowrap"><?php echo $lang_arcade['Games'] ?></th>
                    <th class="tc2" scope="col" width="25%" nowrap="nowrap"><?php echo $lang_arcade['Champion'] ?></th>
                    <th class="tc3" scope="col" width="25%" nowrap="nowrap"><?php echo $lang_arcade['Personal Best'] ?></th>
                    <th class="tcr" scope="col" width="25%" ><?php echo $lang_arcade['Description'] ?> / <?php echo $lang_arcade['How to play'] ?></th>
                </tr>
            </thead>
<tbody>
            
<?php
        // Filter query
        $result = $db->query('SELECT * FROM '.$db->prefix.'arcade_games '.$sqlquery." LIMIT $currec,$nump") or error("Impossible to filter games", __FILE__, __LINE__, $db->error());
        while($line = $db->fetch_assoc($result))
        {
            // Find Top Highscore of each game        
            $sql2 = 'SELECT rank_player, rank_score, username, id FROM '.$db->prefix.'arcade_ranking, '.$db->prefix.'users WHERE rank_game = "'.$line['game_filename'].'" AND '.$db->prefix.'users.id = '.$db->prefix.'arcade_ranking.rank_player ORDER BY rank_score DESC LIMIT 1';
            $query = $db->query($sql2) or error("Impossible to find the topscore of each game", __FILE__, __LINE__, $db->error());
            $resultat = $db->fetch_assoc($query);
            if (($resultat['rank_score']) && ($pun_config['arcade_showtop'] > 0))
                $h_score = ''.$lang_arcade['Top highscore'].'<strong>'.$resultat['rank_score'].'</strong><i> '.$lang_arcade['by'].' <strong><a href="profile.php?id='.$resultat['id'].'">'.$resultat['username'].'</a></i></strong> <p>'.$lang_arcade['played'].' <strong>'.$line['game_played'].'</strong></p>';
            else
                $h_score = ' ';
                echo '            <thead>
                <tr>
                    <td class="tc1" scope="col" width="25%" ><table style="padding: 0px 0px 0px 0px; border:none; "><tr style="padding: 0px 0px 0px 0px; border:none; ">
                                                <td style="padding: 0px 0px 0px 0px; border:none; " align="left" width="50"><a href="arcade_play.php?id='.$line['game_id'].'" title="'.$lang_arcade['Pic Click'].'"><img src="games/images/'.$line['game_image'].'" alt="'.$line['game_name'].'" /></a></td>
                                                <td style="padding: 0px 0px 0px 0px; border:none; " align="left">'.$lang_arcade['Play'].': "<a href="arcade_play.php?id='.$line['game_id'].'" title="'.$lang_arcade['Pic Click'].'">'.$line['game_name'].'</a>"<br>
'.$lang_arcade['times played'].' <strong>'.$line['game_played'].'</strong></td>
                                                </tr>
                                                </table></td>
                    <td class="tc2" scope="col" width="25%" nowrap="nowrap">';
                    if ($resultat['rank_score'] > 0) {
                    echo''.$lang_arcade['Top highscore'].'<strong>'.$resultat['rank_score'].'</strong><br />
<i> '.$lang_arcade['by'].' <strong><a href="profile.php?id='.$resultat['id'].'">'.$resultat['username'].'</a></i></strong><br />
<a href="arcade_ranking.php?id='.$line['game_id'].'">'.$lang_arcade['View Highscores'].'</a>'; } else { echo ''.$lang_arcade['Top highscore'].'<strong> N/A'; } echo '</td>
                    <td class="tc2" scope="col" width="25%" nowrap="nowrap">'; 
                    $result21 = $db->query('SELECT rank_score, game_id, game_name, game_played FROM '.$db->prefix.'arcade_ranking, '.$db->prefix.'arcade_games WHERE rank_game = "'.$line['game_filename'].'" AND rank_player = "'.$pun_user['id'].'"') or error('Unable to fetch scores info', __FILE__, __LINE__, $db->error());
if(mysql_num_rows($result21) <= 0)
{
?>
<? echo $lang_arcade['Not played Yet'] ?><?php echo '<br />'.$lang_arcade['Play'].': <br />"<a href="arcade_play.php?id='.$line['game_id'].'" title="'.$lang_arcade['Pic Click'].'">'.$line['game_name'].'</a>"'; ?>
<?php
}
else
{
    $line21 = $db->fetch_assoc($result21);
?>
    
    <? echo $lang_arcade['Personal Best'],': ' ?> <strong><? echo $line21['rank_score'] ?></strong>
    
<?php
}
?><?php echo '</td>
                    <td class="tc1" scope="col" width="25%" ><i>'.$line['game_desc'].'</i></td>
                </tr>
            </thead>';
            }
    ?>
    </tbody></table></div></div></div>

    <?php
        // Generate page links
     if ($cp>1)
        {
            echo $lang_common['Pages'],':';
            for ($i=1;$i<=$cp;$i++)
            if (($i-1)==$s_page) echo " $i ";
            else echo ' <a href="'.$_SERVER['PHP_SELF'].'?page='.($i-1).'">'.$i.'</a> ';
        }
        echo '<p>';
        
    require PUN_ROOT.'footer.php';

}
else
    message($lang_common['No permission']);

67

(35 replies, posted in General discussion)

well, i'm currently using bluehost as my hosting service smile i have been with them for more than half a year and i can say that everything has run rather smoothly and seems great smile in the duration of my hosting i'm pretty sure that they have only had 1 downtime or so......

check it out for yourself: http://www.bluehost.com

my previous host was sitegrounds.....they were amazing

http://www.sitegrounds.com

might have either been your host or someone has haxed your bases yikes

i dont know about hiding them........but i believe that punbb has a function to prune topics/posts older than a certain date set.

i'm still in the progress of coding punportal 2.1......this version consists of more features/blocks.....it will also be the last release of punportal seeing as how i have alot going on in my life. I have discussed this on punres multiple times, but i thought i could just clarify this here as well tongue i hope you will enjoy the next release.

71

(3 replies, posted in PunBB 1.2 discussion)

just out of curiousity tongue do you have a hosting service?

if so then all you must do is access ftp upload the "upload" folder in the download to your chosen directory....once you have completed that task then all you must do is run install.php and follow the instructions.

72

(4 replies, posted in Feature requests)

yeah that sort of thing is very easy to abuse.

73

(4 replies, posted in Programming)

indeed tongue we all love him

that forum software seems like it needs alot of work.......i wouldnt worry about it at this point tongue stick to punbb, it looks nice, its lightweight, simple, and fast....just a kick ass forum software imo.

75

(4 replies, posted in PunBB 1.2 show off)

tongue pretty nice