diff --git a/html/user/forum_user_posts.php b/html/user/forum_user_posts.php
index 8817da6f7f..c53b29ab09 100644
--- a/html/user/forum_user_posts.php
+++ b/html/user/forum_user_posts.php
@@ -3,18 +3,36 @@
require_once('../inc/util.inc');
require_once('../inc/time.inc');
require_once('../inc/forum.inc');
-
+require_once('../inc/user.inc');
+require_once('../inc/db.inc');
db_init();
$userid = $_GET['userid'];
$offset = $_GET['offset'];
if (!$offset) $offset=0;
+if (!$userid) $userid=-1;
+$hide = 1;
$count = 10;
$user = lookup_user_id($userid);
+$logged_in_user = get_logged_in_user(false);
+if( $logged_in_user = get_logged_in_user(false) ) {
+ $logged_in_user = getForumPreferences($logged_in_user);
+ if ( $user->id == $logged_in_user->id || isSpecialUser($logged_in_user,0) ) $hide = 0;
+}
page_head("Posts by $user->name");
-$result = mysql_query("select * from post where user=$userid order by id desc limit $offset,$count");
+
+if( $hide ) {
+ $result = mysql_query("select * from post
+ where user=$userid
+ and hidden=0
+ order by id desc limit $offset,$count");
+} else {
+ $result = mysql_query("select * from post
+ where user=$userid
+ order by id desc limit $offset,$count");
+}
$n = 0;
start_table();
while($post = mysql_fetch_object($result)) {