Loading...
 
Skip to main content

Features / Usability


How to show a module to Anonymous users *only* ?

posts: 35 Switzerland

Situation:
On our intranet, I'm trying to lure users into logging in by showing them a "Last Changes" list (in the left column, with the login box on the right)
Once they've logged in, I'd like to *replace* that module by the content of the since-last-visit-new module (GREAT functionality, BTW), in other words, "don't show Last Changes anymore, but show Since Your Last Visit with clickable links".

I've tried:
- setting Last Changes to "Anonymous" only (and since-last-visit-new to Registered, of course) => shows for Registered users too 😑
- giving them the same order number => just lines them up one after the other 😑

I've thought about putting the Last Changes in the middle part for the anonymous users, but that seems to involve a bit of coding 😑

Any hints ?
TIA
Francois

posts: 1092

The code to do that was in comments .... I reintroduced the code in 1.9CVS.
So now you have a new check box in admin/general
"Hide anonymous-only modules from registered users:"
Don't forget to uncheck
"Display modules to all groups always:"
after having assign all the modules with the appropriate groups


posts: 35 Switzerland

Thx sylvie!
For now (workaround) I've just sent it to the bottom of the column (position 49), looking forward to upgrading to 1.9 when it's stable...

posts: 4664 Japan

For now, to separate Anonymous group from other groups, you can apply this hack from alt.thetinfoilhat.com to tikilib.php and userslib.php (as quoted from that page — not sure if that site is still online or not, but I want to give credit):

Both in tikilib.php and userslib.php the Anon group gets added to a user's list of groups; around line 1030 (Tiki 1.8.2) in tikilib.php:

Copy to clipboard
$ret[] = "Anonymous";


Replace this line with a conditional statement (otherwise Anonymous group won't work) (lines 1031-1033):

Copy to clipboard
if(count($ret) == 0) { // This could be an option in the admin menu $ret[] = "Anonymous"; }


And in /lib/userlib.php,
Same change as in tikilib.php, at around lines 732-735 (Tiki 1.8.2).

I use this at a couple of sites and it works fine, with no problems.

-- Gary