Using Organic Groups to Create Work Sites

Events happening in the community are now at Drupal community events on www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

This is a proposal on how to use Organic Groups to create work sites for collaboration.

One of the nice features of a tool like Microsoft SharePoint, is the ability to create mini-sites for collaborating on a project, on a document, or just with other team members. You can create mini-sites within mini-sites and you can create mini-sites that are centered around a particular document. Each site then has a series of "lists" associated with it, which are essentially the same concept as different node types or modules for managing content. For example, you can have a task list, an issue tracking list, a list of documents, a list of announcements, and custom lists of items based around custom tables---e.g., a list of computers, IPs, and operating systems managed by a group.

Most of this is actually possible in Drupal 5.1 as is. My goal here is to outline a way of doing this that works with currently available modules in Drupal. This isn't totally related to document management, but setting up the structure for this provides a nice way of organizing your documents.

I have not yet had the opportunity to test this, but I would welcome anyone to make corrections if you give this a try and find issues or difficult spots that need to be worked out.

Modules

Here's the list of modules you will/may want:

  • Organic Groups - For basic access control and grouping of documents related to a given project.
  • Subgroups for Organic Groups - If you want to have nested groups.
  • CCK - If you want to create custom lists of information or if you want your document nodes to have extra metadata fields
  • Upload - The built-in upload module is good enough for the initial revision of this document, but a nicer file management module might be better to include here (perhaps fileupload?)

Setup

Modules

Install all of the modules listed above and activate them. Go through the permissions of each and set them to suit your needs. You'll specifically want to choose who can create groups.

Content Type: Document

After this, you will need to create a new content type, Document with type "document" (or whatever you prefer). Give the document type a description, e.g. "Contains an uploaded document and associates metadata with that document." Make the title field "File Title" and body "Comment" or "Description". You might set the number of required words to force your users to describe their files when the create new nodes.

In the Explanation of Guidelines, you should put something like: "Please type the title of your document, briefly describe it, and upload exactly one file to attach to the document description. Make sure to check 'List' to have your upload listed below the description." Make sure to set "Create a new revision" as the default in the workflow. This way, anytime someone uploads a new document or makes a change to the metadata, the old information and old file is still available under the revisions tab. Enable attachments and set the rest of the settings to suit your needs. Create the content type.

Now, you may want to add additional metadata fields via CCK, such as the original author's name, editors, original filename, original creation date, etc. This is all up to you and your needs.

Content Type: Workgroup

Now, you'll need to create another content type. This one we'll name "workgroup". Give it a description, e.g., "A team or project web site for organizing documents." Make the title field "Group name" and body "Description". Again, consider setting the number of required words so that the group has a good description.

In the Explanation of Guidelines, state your policy on when a group should be created and how it's approved, etc. Disabled attachments and setup the rest to suit your needs.

Again, you may want to use CCK to associate fields with your groups. For example, you might want the project or department listed. You may have a link to the account of the manager responsible for oversight of the project (which may very well be different from the group owner).

Organic Groups Configuragion

Go into the Organic Groups configuration and configure the settings to suit the needs of your organization. Make sure that during your configuration, you enable "workgroup" in "Group home page node types". Also make sure that "Document" is not selected in "Omitted content types".

Finishing Up

Now, you can create a new workgroup node for your workgroup. Fill it out and then go to the group page and create your document nodes and upload the documents you want to share. If you've install the Subgroups module, you should also be able to create nested groups, where the members of the child group are automatically members of the parent.

Advantages

Your users can join the groups they belong want to collaborate on or be part of. They can upload documents and search according to the metadata associated with the documents. They can create new revisions of the documents and browse the old revisions (if you've granted them access to the revisions). You can use the Organic Groups to make the content private to members and require approval to join the group to keep your documents protected (also assuming you've set up the upload module correctly).

Issues

There are many. Here are a few:

  • The upload module is not a very good method for uploading exactly one file (does not require a file upload and can allow multiple uploads) and doesn't provide any kind of helpful organization of uploaded files. It also provides very minimal access control.
  • Organic groups are nice, but have their own limitations as well. For example, groups can be created using different node types as the base, but each node type can't have a custom group configuration. Groups are configured globally.
  • I have not considered how taxonomy might be used to associate additional metadata with the documents or groups.
  • Search does not index the contents of files, which is a very valuable feature in a true DMS.
  • There's no file hierarchy or folder organization within the group. The structure is just a flat list.

Contributions are Welcome

Please feel free to update and improve this document.

Document Management

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: