Tree Groups for Organic Groups

Events happening in the community are now at Drupal community events on www.drupal.org.
mrhanlon's picture

This idea is for a sub-module for Organic Groups. This module would allow creation of a group hierarchy that is tree-structured and that is easily modifiable for adding new groups into the hierarchy either as leaf nodes or into the body of the tree, as well as easy restructuring of the tree hierarchy. The hierarchy would allow the propagation of group events, such as changes to the tree structure involving the group, content changes to the group or descendant groups, etc.

The immediate use case for this module is a web site currently in development for the scientific/research community involving the study of phylogenetic trees. Scientists and researchers can gather around nodes of interest in the phylogenetic tree and contribute research, information, media, etc., related to that group. Scientists and researchers my choose to join at any level in the group hierarchy, and can subscribe to and manage notifications for groups below their chosen group(s) in the hierarchy.

While this module immediately sounds similar to the Subgroups for Organic Groups module, we think that some core differences may require a separate module. Some pitfalls of the Subgroups module that we seek to avoid:

  • Dependency on the Book module; this dependency limits the tree depth to 9. While some discussion has taken place to alleviate this dependency, little or no work seems to have been done.
  • The user propagation as it currently works in subgroups is not ideal for what we want. In subgroups, if a user joins a parent group they are propagated according to the propagation setting, which results in them joining ALL groups in the hierarchy. If they later wish to leave the group, they must unsubscribe from all groups. We think that unsubscribing from the parent node that was joined should automatically (or at least optionally) remove that membership. Said another way, the user is only joined to the parent group, but "subscribed" to the child groups.
  • An additional problem with user propagation in this manner, if additional nodes are added to the group hierarchy descendant to the node at which the user is a member, the user should be notified and automatically or optionally subscribed to notifications for that new group node. Subgroups does not currently support this. I.e., user propagation is a one-time event, taking place at the time a user joins the group. We think that user propagation should occur at every change to the group hierarchy.
  • Similar to user propagation, content propagation does not work as expected when reorganizing the group hierarchy. While the addition of new group nodes does fire the propagate content event, so that content is propagated to the new group, when a group node is moved within or removed from the hierarchy already propagated content remains, while it should be removed.

Any feedback or interest, especially from the organic groups and subgroups folks, would be greatly appreciated.

Comments

Node Hierarchy

mrhanlon's picture

Actually, I've just found this project: http://drupal.org/project/nodehierarchy . I think this provides the great majority of the functionality I need. I will seek to build a submodule to integrate node hierarchy with organic groups to gain the functionality I want.

Contributed Module Ideas

Group organizers

Group notifications

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