The project module is the central piece of the project package. It defines the project content type and provides custom ways of browsing projects.

Installation

To enable projects on your site to be grouped by type, you should enable the core Taxonomy module from the modules administration page (Administer > Site building > Modules) before installing the Project module.

Install the Project module as you would any other--put the files in place, go to the modules administration page, and enable the Project module. Note that Project creates its own group on the Modules page, since there is a collection of related Project modules.

Permissions

The following set of permissions controls access to projects and project releases:

access own projects
For users who don't have the general access projects permission, this permission lets them access their own projects and project releases (ones they created).
access projects
Access projects, e.g., browse listings and bring up project pages and project release information.
administer projects
An overall permission that allows users to set project and project release configuration as well as create and edit all projects.
maintain projects
Allows users to create and edit their own projects and project releases.

Configuration

Setting up project categories

If the core Taxonomy module was enabled when the Project module was first installed, the Project module will automatically create a vocabulary called "Project types". This vocabulary will be used to categorize projects on your site by type. If you have not enabled the core Taxonomy module on your site you can skip this section.

You should first enable the "Project types" vocabulary for the Project content type. Do this by clicking the "edit vocabulary" link next to this vocabulary on the categories administration page (Administer > Content management > Categories). If you wish to change the name of this vocabulary you can do so. The Project module does not care what the name of your project types vocabulary is, only that it is a vocabulary that is enabled for (and only for) "Project" types.

To use this vocabulary to categorize project types you must also add one or more terms that represent types of projects you have on your site. To do this, click the "add terms" link next to the Project types vocabulary.

The first level of terms you create here will become your project types. For example, on drupal.org, these terms are Modules, Themes, and so on.

By creating a second level of terms, you enable categorization within that project type. So if you want to allow users to categorize modules as either "mail" or "utility", themes as either "blue" or "green", and wanted a third type, "widgets", that didn't have subcategories, you could create a set of terms in the Projects vocabulary as follows:

  • Modules
    • mail
    • utility
  • Themes
    • blue
    • green
  • Widgets

Project module settings

Configuration of the Project module is done from the project settings page (Administer > Project administration > Project settings).

Projects can be browsed and sorted by three methods: by category, by name, and by date. These sort options will appear to users as tabs that can be clicked to bring up a listing of projects.

The "Default sort option" setting controls which tab is the default one when browsing projects. So, if you wish browsing to default to categories, select categories here.

For each project type, you can select which of these browsing options to enable using the "Enabled sorting options" settings.

The category option is relevant only if you've created second-level terms for a particular project type. Using the sample project vocabulary given above, the categories for browsing Modules would be "mail" and "utility". You might choose to enable browsing by category for Modules and Themes, but not for Widgets, since they don't have categories defined.

When browsing projects by category or date, the listings are paged, meaning that only a set number of projects are displayed per page, with links to see the rest. You can control the length of these lists with the "Number of projects to list in paged browsing" setting.

See also

Comments

courtney.evans’s picture

Apparently there are only two options for access control to a project, either you can only see your own projects or you can see everyone's projects. Is there an alternative model to this? I would like to create lots of projects and have a specific access list for each.

rsvelko’s picture

use content_access module to be able to set up by node and role