[drupal-devel] RFC, Help: Drupal for ambitious Campus-Wide Blogging project
Hi, I've been working on a plan for campus-wide blogging at USC using Drupal and am hoping to get some feedback, especially on the technical implementation side. Plan, documentation: https://w3.usc.edu/display/blogs/Home Clickable partial wires: http://w3.usc.edu/blogs/site/ I'm working from the latest Drupal 4.6.0 release (am keeping a separate svn vendor branch, as I think some core modifications will be unavoidable) The focus for the blogging functionality are: * formal and ad-hoc group forming - I think this will be done primarily through the organic groups module * fine-grained, layered, per-entry privacy control - throwing an interface on top of the by-node privacy * emergent taxonomies (freetags) - looking at Julian's Folksonomy as well as the new 4.6 Folksonomy module I'm not sure how roles plays with all this yet, I think since a lot of the control I'm looking at is group-based rather than traditional roles, I may just skip that entirely? Here are the issues I'm encountering so far that I'm hoping to get suggestions on: * webserver_auth - I'm kicking the wheels on the webserver_auth module (http://drupal.org/project/webserver_auth) right now (we use Shibboleth for our WebISO/SSO, but it's basically a form of Apache authentication). There seems to be an issue with how it processes the REMOTE_USER though. Can someone point me to docs or explain how the authmap works w/ the external user calls? I don't mind just hacking in there, but if possible, I'd like to do things the 'right way'. * first-login - is there a first-login module? basically, we need to create a step-by-step process for when users first sign-in: http://w3.usc.edu/blogs/site/Step%201.html * theming - this is perhaps a biggie. Drupal currently seems to work on a per-user basis for theme selection. We're looking to allow users to choose their own themes for their own blogs, that will apply on a per blog/space basis (and in the future customize w/ coloring, images): http://w3.usc.edu/blogs/site/My%20Blog.html Any suggestions? Are we going to have to write (adapt) our own theme engine? * friends view - one of the other big pieces is a creating a personal aggregator view (http://w3.usc.edu/blogs/site/My%20Favorites.html), sort of like a mega-livejournal/y!360 friends view. Is there anything out there that does this? * blog view - I've seen some earlier posts about adapting the 'blog' view to handle all types of content types. We're definitely interested in doing that. Any thoughts beyond the hacks that people have done already? * aggregation - one of the things we're trying to do is have a graceful way of handling users who already have their own blogs. I'm looking into the idea of using the rss aggregation solely for importing a user's external blogs into nodes for a user (see blog view for displaying all content types by a user) * major changes to input forms - I don't think there's any other options besides hacking away at the node and filter modules? * Dashboard - the main page view, once logged in and first-logged in'd, is for a Dashboard - does something like this exist? in the past, I've hacked things directly into the theme templates, but the 'right' way to do it is through a module (and then change the front-page setting from node to dashboard?) A lot of functionality is there, I think a fair bit of this is wrapping my head around the best way to implement within Drupal. As mentioned, any feedback, suggestions, pointers would be appreciated. (should I also post to the forums, or is that redundant?) .l
On 4/26/05, Leonard Lin <lhl@usc.edu> wrote:
Hi, I've been working on a plan for campus-wide blogging at USC using Drupal
Cool!
I'm working from the latest Drupal 4.6.0 release (am keeping a separate svn vendor branch, as I think some core modifications will be unavoidable)
When you make changes/additions that might be useful to others, please consider contributing them back to core or as a contrib module... even if the code is somewhat specific to your implementation, other devels might take an interest if the features would benefit them as well.
* emergent taxonomies (freetags) - looking at Julian's Folksonomy as well as the new 4.6 Folksonomy module
A form of folksonomy landed in core recently and will be part of the 4.7 release. You might want to make sure that whatever solution you use will be compatible should you choose to upgrade later. Backporting the changes to core might also be an option, although I am not sure whether there would be any advantage to that. See: http://drupal.org/node/19697
* theming - this is perhaps a biggie. Drupal currently seems to work on a per-user basis for theme selection. We're looking to allow users to choose their own themes for their own blogs, that will apply on a per blog/space basis (and in the future customize w/ coloring, images): http://w3.usc.edu/blogs/site/My%20Blog.html Any suggestions? Are we going to have to write (adapt) our own theme engine?
The theming code in Drupal is quite flexible. Writing your own theme engine is a possibility, but it's not what I would recommend. Drupal reads a global variable, $custom_theme, when it initializes the theme engine. It will then render the page using that theme. Then, you could provide an interface where users could enter additional CSS rules to further modify the color scheme / add images to their blog. The CSS could be placed into the header with the theme_add_style function. (but AFTER init_theme has been called... so the user CSS rules override those in the site theme) Take a look at includes/theme.inc -- especially the init_theme() and theme() functions.
* major changes to input forms - I don't think there's any other options besides hacking away at the node and filter modules?
Probably not if you want to change anything node.module does already. For adding items, there's the 'form pre' and 'form post' operations of the _nodeapi hook.
A lot of functionality is there, I think a fair bit of this is wrapping my head around the best way to implement within Drupal. As mentioned, any feedback, suggestions, pointers would be appreciated.
Well, I answered those questions for which I had immediate answers... hopefully, that was somewhat helpful.
(should I also post to the forums, or is that redundant?)
Perhaps... you might get your question heard by a different audience. Also, this sort of question typically goes on the drupal-support list, but I'm not complaining. :-) Anyway, good luck! Tom
On Apr 26, 2005, at 6:56 PM, Tom Dobes wrote:
(should I also post to the forums, or is that redundant?)
Perhaps... you might get your question heard by a different audience. Also, this sort of question typically goes on the drupal-support list, but I'm not complaining. :-)
Thanks Tom, I figured I'd drop a line in devel since, at least from my first cut, there looks like there will be some modifications I'll need to make to core, and I wanted to get some feedback there (I'll be happy to send possibly useful changes upstream after I get around to reading the contributor's guide :). Thanks for the theme info, btw, looking into that now. .l
participants (2)
-
Leonard Lin -
Tom Dobes