Hi Janine,
<p>
My advise is study the data model and plsql first. The UI is very data modelly and plsql. After being familiar with it more or less the links in the UI is like what is really underneath. Membership and composition is very powerful, although I wished all that power can be harnessed through a UI rather than putting everything that groups can do on a UI.
<p>
Anyway you can try this api out and create your own. I have done small UI for one of our projects. Here are the helpful api.
<pre>
#create the group
set group_id [db_exec_plsql create_group "
select acs_group__new(
null, -- group_id
'group', -- object_type
now(), -- creation_date
:creation_user, -- creation_user
:creation_ip, -- creation_ip
null, -- email
null, -- url
:name, -- group_name
'needs approval', -- join_policy
null -- context_id
)"]
relation_add composition_rel $main_site_group $group_id
# delete the relationship
set rel_id [db_string get_relid "select rel_id from acs_rels where object_id_two = :group_id
and rel_type = 'composition_rel'"]
relation_remove $rel_id
# delete the group
db_exec_plsql delete_group "select acs_group__delete(:school_id)"
relation_add -creation_user $creation_user -creation_ip $creation_ip -member_state
"needs approval" membership_rel $teacher_group_id $user_id
if {![group::member_p -user_id $user_id -group_name
"Hastertwatch Teachers"]} {
</pre>
Those procs should be the likely procs you will use incase you make a small custom UI. Sorry for the code flood. I am a bit busy and could not have the time to explain and format this groups stuff.