Drupal project
Drupal project
We have reached out to the Drupal community on whether to pick up the "Subgroups for Organic Groups":http://drupal.org/project/og_subgroups project and make the changes we want or to "create a new project":http://groups.drupal.org/node/58803.
Some documentation of the limitations of the Subgroups module and the changes that we envision (from http://groups.drupal.org/node/58803):
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.