As I go through the lullabot podcasts one of them hit on a challenge I'm working on. I have a series of related sites and the need to have complex user profiles and different user profiles for different roles. There are several ways to do this with modules that make user profiles into full blown nodes. Then a little CCK/Views magic and life is very good. The problem is that then user profiles are nodes.
So you say that's what I wanted and in many ways it is but I want to do two things that the profile module does and don't work with profiles as nodes. First I want to share tables for profiles but not share a node table. Your identity is the same on the network of sites but the content is different on each site. Second I want the field-level access control that comes with profiles. The CCK table structure works much better for my needs as these are each 100-field profiles. It seems for the moment that short of rewriting the profile module, which the current timeline doesn't allow, I'll have to forgo the sharing of profile tables and disable search on the site overall (not a huge loss in this case) and then maybe take a look at the profile module. In the end I think we probably need profiles that are pseudo full nodes.
The solution might look something like this:
- A profile_cck module that implements profiles as cck content types but instead of having
content_typetables we'd have
- Profiles have access to all the cck fields and types for building
- Different content types can be created for different roles
- Table sharing is possible if one wishes to share profiles and not share content
- User profiles are not searched via the core search interface and security can continue to be much as it is today when it comes to profiles
- Profile cck fields have the same (or similar) privacy options as the current profile module
- A separate search module search_profile adds the available fields to core search for sites that want to search user profiles at the same time as content (possibly this is a setting in profile_cck but it seems like a separate module might be better and allow more customization of search
Now, if somebody would kindly invent the "extra hours in the day" module I'd like to get right on this one.