Forum OpenACS Development: Re: Should object_id 0 be a user or a person?

Posted by Lars Pind on
So just for kicks, I did this:

- granted 'forum_create' to "The Public" (turns out the privilege 'forum_post' isn't used anywhere at all, we should remove it)

- insert into users (user_id) values (0);

Lo and behold, without any further changes, I can now make anonymous postings to forums, and they show up as having been made by "Unregistered Visitor".

The only glitch I can see is that when you click through the name to see the forums posting by Unregistered, and then click  through the name again to see the user's community-member page, that page just says:

"No user found
There is no community member with the user_id of 0"

Because the unregistered user isn't in cc_users, because that view only shows people who are part of 'registered users'. Which is probably the way we want to keep it, so we just need the community-member page to special-case the unregistered visitor user and say something meaningful then. Trivial fix.

Now, the only tricky problem I see is one of UI: I think we still want to *encourage* people to sign in, even though they *can* post anonymously.

The best way I can think of to do that is to still redirect to the login page, but then have an option there that says "continue as anonymous guest user" or something to that effect. We should probably make it a page parameter to determine whether we should offer that option or not, as clearly in most cases we do not. Yet.

So [ad_redirect_for_registration -allow_anonymous]?

The drawback is that we're going to flash this login page every single time you want to do something where we encourage you to log in, such as posting to the forums.

How does that sound?