I'm very new to Drupal. I want to give users basically their own web sites that they control using the Drupal system on my servers. This means enabling/disabling modules for their personal site, editing comments on content they've posted, administrating module options within their site (configuring comments for their site, etc.), allowing users to use different themes for their site only, allowing them to create their own basic themes easily and add complex themes that they've created, for use across the system or just on their site depending on specification, etc.

Is there any module or combination of modules that can do all of these things? I don't want users to have full control over the system of course, but I want the experience to be about as customizable for them as it is for people with a full Drupal install all to themselves.

If not, I'm interested in developing it. I'm not sure if I'd release all of it or parts of it to the community because I believe it would be applicable to commercial interests. Where should I start with module development? Would anyone be interested in helping me create this set of modules and/or extending current ones?

Thank you. ^_^

Comments

PurpleEdge’s picture

Have you tried doing it through Administer/Access Control/Roles and Permissions?

drupalguest’s picture

... can drupal provide user homepage?

i'm thinking about the main site as www.example.com
then when any user sign up, they will be www.example.com/user1, www.example.com/user2, www.example.com/user3, etc. etc.

=====
Free: Sony PSP (1.8gb)--New Ipod NANO (4gb)--New XBOX 360 (20gb)

venkat-rk’s picture

Not sure exactly what your requirement is, but, yes, it can, with this module:
http://drupal.org/node/10083

grbitz’s picture

I've tried changing the access control options, and they work for some things, but for comments, it's all or nothing, and I'm sure it's similar for other things. I don't want the users to be able to edit/configure comments on everybody's stuff, only on content that they've created.

I'm not sure how to use roles, but I don't know that they'll work. I'm looking over the blog and comment modules now to get an idea of how they work. I'll probably be changing them soon.

grbitz’s picture

What do the operators -> and => do? I can't find them in The Manual.

Harry Slaughter’s picture

that is PHP syntax, it's not Drupal specific. You'll have to learn PHP if you want to start editing code.

And it sounds like you really need to be doing some reading up on Drupal if you want to manage a bunch of users.

The best way to learn Drupal is to get it installed and play with it while reading the docs: http://drupal.org/handbooks

--
Living in fear of patch hell?
Want a stable development environment?
Support Dev Releases: http://drupal.org/node/30903
Support Code cleanup too: http://drupal.org/node/28540

--
Devbee - http://devbee.net/

grbitz’s picture

Yeah, I've made three big systems in PHP but I've never made a lot of use of arrays before, sorry. I still never found -> in the manual, but the code makes it look like it's just the value of the key.

Maybe Drupal isn't suited to my needs for this. It'd probably be faster just to make my own system, but then it doesn't have the community or the extensibility or anything else of Drupal. I'd like to make it work, but I don't know, it's looking kind of bleak. ;(

Anonymous’s picture

I think that the only real way to do this is to configure multiple sites (by creating a new settings file in sites/newsite/settings.php). They can operate from the same codebase, but you can give each site it's own db and thus it's own settings and private space.

I doubt this could be done with a module, it would involve modifications to the drupal core to be able to do some of the things you mention.

grbitz’s picture

Hmm okay. I think these would be good changes to Drupal, do you agree? Maybe we should start working on these. But we should do what we can with modules first. :)

Anonymous’s picture

Honestly, I don't see the point. Drupal can already do exactly what you want, why go to the hassle of writing modules to do it? I mean, if you want to be able to do multiple drupal sites from the same installation, drupal is set up to do that by setting up a site config for each. You can use the same db, with different table prefixes, you can share tables if you want, etc. The only reason I could think of to do a module to allow 'user' sites is if you wanted them to be able to do limited things within the main drupal page (like you don't want them to administer the site with modules, themes, etc but you want them to have a space in drupal where they can mange their own section).

If you want them to basically have their own drupal installation, well, why not just do it the way it's set up? You can just create a simple admin module that let's you create a new settings file for the new site and you're good to go.

grbitz’s picture

Well, let me be more clear. I'm looking for something that will allow my users to have complete control over editing their posts, the theme that visitors see when they go to their page, comments left by others (edit/unpublish, others should be able to edit their own comments), and that's all really.

I want to include some community features, and I think writing a module for that would be much more logical. Right now I'm thinking of a watched users list that allows users to add other users and be alerted when they update, preferably via a watched users page that says which person updated of course and then includes the time and the snippet or the first part of the text if no snippet is available. I didn't see any modules that had this kind of functionality either. It'd be interesting to see if we could get that to work across servers, but right now the same server is good. I guess this is like RSS or Atom ... maybe we can incorporate one of them.

venkat-rk’s picture

Right now I'm thinking of a watched users list that allows users to add other users and be alerted when they update, preferably via a watched users page that says which person updated of course and then includes the time and the snippet or the first part of the text if no snippet is available.

Try the buddylist module. It does most of what you want:
http://drupal.org/project/buddylist

Also spend some time exploring the user pages snippets in the snippets section of the handbook on this site. Some very interesting snippets there. Sorry I am unable to give you the link.

venkat-rk’s picture

Not sure if you want to set up a multi-site install or want to be a reseller. If the latter, Bryght might be the way to go:
http://www.bryght.com/solutions/resellers