[development] module announcement: og_sites, providing multisite features

Nedjo Rogers nedjo at islandnet.com
Tue Apr 3 03:13:54 UTC 2007


An early preview release of a module that may be of interest to developers 
and to anyone using multisites.

OG Sites enables a multisite configuration in which a central 'hub' site has 
a number of associated sites. The hub site features content and users from 
all sites, while each associated site can access only its own data (plus 
content explicitly shared from the hub site).

This is accomplished through organic groups. Each associated site gets an 
organic group on the hub site. When content is created on an associated 
site, it gets assigned to that site's organic group on the hub site (and 
ditto for users). This association is the basis for determining access.

Some features that may interest developers, and may be applicable/adaptible 
elsewhere:

* The code is structured to have plugins by module. For example, node 
support is in node.inc, user support in user.inc. New module support can be 
added through a new plugin, which will be automatically detected and loaded 
if the module it implements is available.
* Tables are shared dynamically (using hook_init()) rather than through 
configuration in the settings.php file.
* The install functions automate node type and node creation. The 
og_sites_hub install function creates a new content type, assigns it as an 
organic group type, and then creates a node for the group. The og_sites 
install function creates an organic group node on the hub site.
* Access is limited through various means: hook_menu() for menu item 
overrides, hook_db_rewrite_sql() for node access, hook_form_alter() to reset 
the rows in admin tables.

For more information, see the README:

http://cvs.drupal.org/viewcvs/drupal/contributions/modules/og_sites/README.txt?view=markup

Any reviews or feedback through the issue queue or privately by email would 
also be greatly appreciated.

OG Sites is produced by CivicSpace and development is sponsored by Alpha, 
alpha.org. 



More information about the development mailing list