MyBB Community Forums

Full Version: Since which version has the guest permission changed?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I am wondering since which version did the guest permission setting change? I updated from 1.4.8. to the latest 1.4.11 and as I said in an earlier post the guest can now either see nothing at all except for the different forum titles

view here

which looks very strange and rather like the forum isn't in use.

Or they can read all threads which wasn't the case originally and not ideal.

So since when did this change and why would this option be removed? I find it very strange, because this is not an uncommon option on the different competitor forum programs. So why would it be removed from MyBB?

Regards,

Martin
Just, change the guest settings back?

Plus, next time you give people a link to your forum you might want to translate it to english Big Grin


EDIT: After translating I saw... some of your forums you can see all the threads, some you can not. It just says there are no threads in that forum. I would suggest just checking your settings and making some a couple posts in the forums the guests can't see.

Translated version of the site: http://translate.google.com/translate?js...auto&tl=en
Thats the whole issue. I can't seem to change the settings back because those settings don't seem to be there anymore. Or am I overlooking something?

I am really lost on this.

I simply can't believe this option would have been removed between the upgrade from version 1.4.8 to 1.4.11

PS. I have added the option to choose your language at the bottom right of the forum for your convenianceWink.

EDIT: I am not sure what you mean. Could you elaborate?
Hahaha didn't see the translate thing sorry Toungue

Check the settings in ACP>>FORUMS AND POSTS>>Pick a category>>CHECK SETTINGS

And in the category Public Area I can see all the threads and posts but in the category
for registered users only I can't see anything
In all honestly the language choise wasn't there beforeRolleyes

The public arae is the way it should be but in the registered members area guest should at least be able to see the titles of the threads.

i have looked at ACP>>FORUMS AND POSTS>>Pick a category>>CHECK SETTINGS
but as you can see in these screenshots:

[Image: screenshotsetting.jpg]

and

[Image: screenshotsettings.jpg]

there is no option to only view the titles of the threads and not read the threads themselves.

This option must have been there in at least version 1.4.8 because before I updated to version 1.4.11 guest were able to see the titles of the threads but not read the threads.

That is what suprises me about this whole thing.
Quote:The public arae is the way it should be but in the registered members area guest should at least be able to see the titles of the threads.

This was changed long before 1.4.8. I believe the entire 1.4x branch does this. IMHO it's a poor implementation and I custom edited my files to correct the oddity. If you were using 1.2x you just might have assumed the feature continued but it was changed.

You can see on my hackforums.net that guests can see the index page and forumdisplay with all the data. They just can't see threads (showthread.php) themselves.

One real problem is that MyBB says "-" for posts and threads and gives a "no posts exist" type of error for the forum. Anyone that hides their thread views is penalized by mybb. Members incorrectly believe forums have no content when thousands of posts might exist. Hardly enticing to get guests to register.

If you want I can post my edits for you.
Well that would be very nice if you could provide me with the edits. Would this affect the open part of the forum? Also I have one forum part that is completely hidden and only available to certain members. Would it affect this?

I don't want to get into any arguement but I am sure this was possible in version 1.4.8 (maybe i used some sort of edit myself and have forgotten about it and it was overwritten by the latest update) because even though I didn't notice the change, my co-admin pointed it out to me and she asked me if I could change it back.

But it doesn't really matter, it isn't there now and it has indeed been a poor idae to remove this and hope they will put it back in the upcoming update.

Our Forum had the exact same viewing option as your hackforums.net. So your edit seem to work perfectlySmile

Quote:One real problem is that MyBB says "-" for posts and threads and gives a "no posts exist" type of error for the forum. Anyone that hides their thread views is penalized by mybb. Members incorrectly believe forums have no content when thousands of posts might exist. Hardly enticing to get guests to register.

You hit the nail right on the head. That is what is my problem as well. It is not really inviting to join if it looks like half of the forum is without content.
Basically you have 2 files to edit. What you're looking for is the 'canviewthreads' text.

inc/functions_forumlist.php
forumdisplay.php

In the forumlist find this:

			if($permissions['canviewthreads'] != 1)
			{
			    $hideinfo = true;
			}

Change the true to false.

In forumdisplay the edit is more complicated but still easy enough.

Find this:
if($foruminfo['allowtratings'] != 0 && $fpermissions['canviewthreads'] != 0)

Change to this:
if($foruminfo['allowtratings'] != 0)


Find this:
if($fpermissions['canviewthreads'] != 0)
{
	// Start Getting Threads
	$query = $db->query("
		SELECT t.*, {$ratingadd}{$select_rating_user}t.username AS threadusername, u.username
		FROM ".TABLE_PREFIX."threads t
		LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid){$select_voting}
		WHERE t.fid='$fid' $tvisibleonly $datecutsql2
		ORDER BY t.sticky DESC, {$t}{$sortfield} $sortordernow $sortfield2
		LIMIT $start, $perpage
	");
	while($thread = $db->fetch_array($query))
	{
		$threadcache[$thread['tid']] = $thread;

		// If this is a moved thread - set the tid for participation marking and thread read marking to that of the moved thread
		if(substr($thread['closed'], 0, 5) == "moved")
		{
			$tid = substr($thread['closed'], 6);
			if(!$tids[$tid])
			{
				$moved_threads[$tid] = $thread['tid'];
				$tids[$thread['tid']] = $tid;
			}
		}
		// Otherwise - set it to the plain thread ID
		else
		{
			$tids[$thread['tid']] = $thread['tid'];
			if($moved_threads[$tid])
			{
				unset($moved_threads[$tid]);
			}
		}
	}
}
else
{
	$tids = $threadcache = null;
}

Change to this:
	// Start Getting Threads
	$query = $db->query("
		SELECT t.*, {$ratingadd}{$select_rating_user}t.username AS threadusername, u.username
		FROM ".TABLE_PREFIX."threads t
		LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid){$select_voting}
		WHERE t.fid='$fid' $tvisibleonly $datecutsql2
		ORDER BY t.sticky DESC, {$t}{$sortfield} $sortordernow $sortfield2
		LIMIT $start, $perpage
	");
	while($thread = $db->fetch_array($query))
	{
		$threadcache[$thread['tid']] = $thread;

		// If this is a moved thread - set the tid for participation marking and thread read marking to that of the moved thread
		if(substr($thread['closed'], 0, 5) == "moved")
		{
			$tid = substr($thread['closed'], 6);
			if(!$tids[$tid])
			{
				$moved_threads[$tid] = $thread['tid'];
				$tids[$thread['tid']] = $tid;
			}
		}
		// Otherwise - set it to the plain thread ID
		else
		{
			$tids[$thread['tid']] = $thread['tid'];
			if($moved_threads[$tid])
			{
				unset($moved_threads[$tid]);
			}
		}
	}


Find this:
if($fpermissions['canviewthreads'] != 0)
{
	// How many posts are there?
	if($datecut > 0)
	{
		$query = $db->simple_select("threads", "COUNT(tid) AS threads", "fid = '$fid' $visibleonly $datecutsql");
		$threadcount = $db->fetch_field($query, "threads");
	}
	else
	{
		$query = $db->simple_select("forums", "threads, unapprovedthreads", "fid = '{$fid}'", array('limit' => 1));
		$forum_threads = $db->fetch_array($query);
		$threadcount = $forum_threads['threads'];
		if($ismod == true)
		{
			$threadcount += $forum_threads['unapprovedthreads'];
		}
		
		// If we have 0 threads double check there aren't any "moved" threads
		if($threadcount == 0)
		{
			$query = $db->simple_select("threads", "COUNT(tid) AS threads", "fid = '$fid' $visibleonly", array('limit' => 1));
			$threadcount = $db->fetch_field($query, "threads");
		}
	}
}

Change to this:
	// How many posts are there?
	if($datecut > 0)
	{
		$query = $db->simple_select("threads", "COUNT(tid) AS threads", "fid = '$fid' $visibleonly $datecutsql");
		$threadcount = $db->fetch_field($query, "threads");
	}
	else
	{
		$query = $db->simple_select("forums", "threads, unapprovedthreads", "fid = '{$fid}'", array('limit' => 1));
		$forum_threads = $db->fetch_array($query);
		$threadcount = $forum_threads['threads'];
		if($ismod == true)
		{
			$threadcount += $forum_threads['unapprovedthreads'];
		}
		
		// If we have 0 threads double check there aren't any "moved" threads
		if($threadcount == 0)
		{
			$query = $db->simple_select("threads", "COUNT(tid) AS threads", "fid = '$fid' $visibleonly", array('limit' => 1));
			$threadcount = $db->fetch_field($query, "threads");
		}
	}


That's my edits.

Btw read this: http://community.mybboard.net/thread-49276-page-1.html

And this: http://community.mybboard.net/thread-43658-page-1.html

As you can see this was screwed up around 1.4.4. You just probably didn't notice it or had custom edits.
This worked perfectly!!!

Thank you so much this is exactly what I was looking for. I think I had some edits before which made this same effect possible. Some of it started to come back but by far not enough to get it fixed. Your edits really did the trick!

I am a happy camper Big GrinBig GrinBig GrinBig GrinBig GrinBig GrinBig GrinBig GrinBig Grin