| 1 |
/**
|
| 2 |
* $Id: README.txt,v 1.1.2.3 2007/09/07 16:31:13 rconstantine Exp $
|
| 3 |
* @package OG_CTA
|
| 4 |
* @category NeighborForge
|
| 5 |
*/
|
| 6 |
|
| 7 |
This module adds the ability to have certain content types available only to certain groups.
|
| 8 |
|
| 9 |
Since the permissions system only gives a user permission to create a given content type or not,
|
| 10 |
and doesn't allow us to specify where that user can place that content, this module aims to be
|
| 11 |
one way to take care of that. A primary goal of this module was to NOT change any core files.
|
| 12 |
|
| 13 |
--Setup--
|
| 14 |
The site admin must first install the module per the regular drupal installation pattern. This
|
| 15 |
will:
|
| 16 |
1) add a table to the database
|
| 17 |
2) adjust it's weight in the table to come after certain other modules
|
| 18 |
3) add a 'site-wide' entry in our new table (more on this later)
|
| 19 |
4) add a 'default' entry in our new table (more on this later)
|
| 20 |
5) copy the settings from OG's block called og_block_detail
|
| 21 |
6) deactivate og_block_detail
|
| 22 |
7) using the data from og_block_detail, insert an entry for our block which overrides functionality
|
| 23 |
8) update the title of the menu entry for 'Create content' to indicate a little better that this
|
| 24 |
menu is for site-wide content only
|
| 25 |
|
| 26 |
--Site Configuration--
|
| 27 |
The site admin then must go to admin/og/og_content_types to:
|
| 28 |
1) change settings for the 'site-wide' content types
|
| 29 |
2) change settings for the organic group 'default' content types
|
| 30 |
3) add groups to monitor separately
|
| 31 |
4) change setting for separately-monitored groups
|
| 32 |
|
| 33 |
The settings that can be changed from this UI are:
|
| 34 |
1) 'allowed' - this means that a group owner CAN enable or ACTIVATE a given content type for the group.
|
| 35 |
the owner doesn't have to ACTIVATE any content type, though that would be a boring group. the group
|
| 36 |
owner can create any kind of ALLOWED content, even if his members can't. this would effectively be
|
| 37 |
a read-only group. comments can still be made.
|
| 38 |
2) 'required' - this means that as the site admin, you want the users of a group to AT LEAST be able to
|
| 39 |
create the given content type. this is useful if you think group owners might have trouble figureing
|
| 40 |
things out, or you want your site to be known for a particular feature.
|
| 41 |
3) propagate an 'allowed' setting for one content type to all groups except the 'Site Wide' group. This
|
| 42 |
is particularly useful when you create a new content type well after your group admins have customized
|
| 43 |
how they use the content types you have allowed them to activate or deactivate.
|
| 44 |
|
| 45 |
--Group Configuration--
|
| 46 |
The group admin must go to og_content_types/manage from within the group to:
|
| 47 |
1) view and select which ALLOWED content types are ACTIVATED.
|
| 48 |
those types not ALLOWED will be hidden. those types which are REQUIRED will be disabled.
|
| 49 |
|
| 50 |
--What all of this does--
|
| 51 |
This changes three major things:
|
| 52 |
1) in the main navigation menu, you should be familiar with the sub menu called 'Create content'. this
|
| 53 |
module removes all menu items which point to the creation of content types not ALLOWED at the 'site-wide'
|
| 54 |
settings.
|
| 55 |
2) in the group detail block, which also has a menu of content type creation with a gid in the url, this
|
| 56 |
module substitutes its block instead of the standard OG block. this allows for the removal of DEACTIVATED
|
| 57 |
or NOT_ALLOWED content type links.
|
| 58 |
3) this module changes (in $_menu) the callback reference for node_add so that changes can be made to the
|
| 59 |
page which is displayed. those content types which are either DEACTIVATED or NOT_ALLOWED at the 'site-wide'
|
| 60 |
level are removed from the display. additionally, any attempt to go to node/add or any node/add/$type URL
|
| 61 |
directly are intercepted and routed to node/add, displaying the ALLOWED and ACTIVATED types the user can
|
| 62 |
create. this also works for URLs with gids in them.
|
| 63 |
4) this module deactivates groups in the Audience fieldset that do not allow the Content Type currently
|
| 64 |
being created.
|
| 65 |
|
| 66 |
--Uninstallation--
|
| 67 |
This is done the usual way, first by deactivating, then uninstalling. A reversal of any changes made during
|
| 68 |
installation is performed.
|