The attached add-on files may be out of date. Please visit Devot-ee for the latest versions.
There is a quite popular feature request - to allow membership in multiple groups. One of the main reasons for such feature is the need to have more power in assigning weblogs to users. For example, if you have 3 weblogs - A, B and C - and need to allow some users to post into A, some others - into B, yet some others into C, yet some others into A and B, yet some others into A and C etc., then for managing weblog permissions you need a lot of member groups. To be exact, if you have number N of weblogs, you may need
2N - 1
member groups.
To solve the problem of too many member groups I created Weblog Rights extension. It allows you to assign weblogs on per-member basis. So, for managing weblog permissions of the above example you will need only 1 member group.
Unfortunately, for this extension to work a hack is needed.
In /system/core/core.functions.php around line: 1195 (inside function fetch_assigned_weblogs($all_sites = FALSE) )
find:
return array_values($allowed_blogs);Replace it with:
// -------------------------------------------
// 'assigned_weblogs_array' hook.
// - Exclude/Include weblogs in the asigned weblogs array.
//
global $EXT;
if ($EXT->active_hook('assigned_weblogs_array') === TRUE)
{
$allowed_blogs = $EXT->call_extension('assigned_weblogs_array', $allowed_blogs);
}
return array_values($allowed_blogs);Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.