The easiest thing to do would be to set the minimum forum permission for the user_view action to Registered Users - that way, any guest that clicks it will be taken to a login page with an error message:
Guests are not authorized to access that page. Please login as a user Note that you'll want to do this even if you do decide to edit the templates to remove the link - otherwise someone could enter: gforum.cgi?username=Fred and view Fred's profile. As far as template changes go, you're looking at many, many changes as you mentioned. Basically, everywhere you find <%msg_username%>, <%post_username%>, or <%user_username%> is going to be linked right now - it'll be something like:
<a href="gforum.cgi?username=<%user_username%>"><%user_username%></a>
You'd have to change all of them to:
<%if current_user_id%><a href="gforum.cgi?username=<%user_username%>"><%user_username%></a><%else%><%user_username%><%endif%>
However, since usernames appear in many, many places, I would think just disabling the action and having the error message display is a much easier option.
Jason Rhinelander
Gossamer Threads jason@gossamer-threads.com