I am trying to integrate Forum Feeds of a PHPBB3 Forum into an external Frontpage.
For this I'm using an example from the phpbbwiki : here is the code
My problem is that this only works if the user is authenticated on the forum allready, but I would like the user to see topics that are open to guest users, instead of a PHPBB default (blank-)page.
In this case I am using ajax to return topics in JSON, but this should not really matter for my problem here.
It would be good to know if this is achievable within the scope of what PHPBB is able to deliver and where to start looking if this is a more complicated problem.
If this is a simple matter for some of you I would be grateful for help.
Thank you!
update
The SQL Statement for retrieval of the posts is not created, because the user does not seem to have read permissions. The conditional that fails is (funnction: create_where_clauses) :
// If the type is forum, do the check to make sure the user has read permissions
else if( $type == 'forum_id' && $auth->acl_get('f_read', $id_check) )
where id_check is the current forum_id.
Here is part of the user data object:
["user_id"] => string(1) "1"
["user_type"]=> string(1) "2"
["group_id"] => string(1) "1"
This User is in the GUESTS Group and its type is IGNORE by default. I'have tried setting user_type to 0=NORMAL - to no avail.
As a normal visitor on the PHPBB3 Forum I can read all open forums and I wonder why this generic guest user cannot access the forums.
update and sollution
I want to thank you for the answer that brought me on track again. I would have searchted endlessly for a sollution in the depths of PHPBBs user management when the original mistake I made was just a dumb copy/paste problem...
$forum_id = array(2, 5);
$forum_id_where = create_where_clauses($forum_id, 'forum');
$topic_id = array(20, 50);
$topic_id_where = create_where_clauses($topic_id, 'topic');
These two lines where taken from the tutorial and still in place when trying to retrieve data from "all" forums and topics. Incidentally those Forum Id's where open to registered users and closed to non-authenticated users. When lifiting the above content restrictions the script again performs as it should be.
So again - extra thanks goes to Andy.