screenshot_002.png

This project is not covered by Drupal’s security advisory policy.

OG Features aims to allow group owners and site administrators to disable certain features/functionality within a given group (without the use of the Spaces module).

What is a feature? A feature can either be a normal feature created by the Features module, it can be a custom module used to bundle existing components (views, node types, etc) of your site into OG features (toggleable entities), or it could be any module that introduces functionality for groups (like, OG aggregator, if integrated correctly); so, OG Features, does not require the Features module. A Feature or module can provide one or many OG Features.

If a user has adequate permissions, and there are toggleable features available, a tab will appear on the group labeled "Features" which provides a checkbox to enable/disable each feature for that group.

There is also an administrative interface, that allows site admins to configure each available OG feature to either be toggleable, always enabled, or always disabled, per group node type.

What is supported?

  • Node types
  • Views
  • Context
  • Panel panes
  • Page paths
    • For example, some modules add a tab to group home page. You can specify the path for OG Features to disable within the group
    • OG Features will also automatically disable any custom page callbacks implemented inside the feature module itself
  • OG menu links (D6) (specify the key of the link on the group details block)
  • Creativity
    • If you have a module that produces some functionality for groups, you can use the API to make your module toggleable within a group as an available feature! The feature does not have to contain any of these components, and can simply be used as an on/off for the functionality that your module produces.

Create an OG Feature

At this point in time, creating OG Features will require some development experience and a solid understanding of Drupal components, such as the supported integration points listed above.

From within a Feature or module, implement hook_og_features_registry(). Each og feature must specify the components that should be enabled/disabled for it.

function hook_og_features_registry() {
  $registry = array();
  
  $feature = new stdClass;
  $feature->id = 'my_feature';
  $feature->name = t('Blog');
  $feature->description = t('Provide a simple blog for your group');
  $feature->components = array(
    'views' => array(
      'og_tab_blogs',
    ),
    'node' => array(
      'blog',
    ),
  );
  $registry[$feature->id] = $feature;
  
  return $registry;
}

More information

View the README.txt and og_features.api.php documents.

Drupal 7 status

Use the D7 branch that matches the branch of OG that you are using. Upgrade instructions from D6 to D7 are included inside the README.txt.

Neither branches have been extensively tested in a production setting, but are considered safe to use. It's recommended that you tested thoroughly before deploying in production. Please grab the latest code, test it out, and report any issues you encounter.

Project information

  • caution Seeking new maintainer
    The current maintainers are looking for new people to take ownership.
  • caution No further development
    No longer developed by its maintainers.
  • chart icon61 sites report using this module
  • Created by mstef on , updated
  • shield alertThis project is not covered by the security advisory policy.
    Use at your own risk! It may have publicly disclosed vulnerabilities.

Releases