Forums / Developer / Group Membership - Leave Group Function - remove location

Group Membership - Leave Group Function - remove location

Author Message

Paul Wilson

Tuesday 06 March 2007 3:32:17 am

Hi

I'm working on group membership functions - along the lines used in Kristof Cooman's Membership extension.

Basically a user's membership of a group is set by adding an extra location for the user's user object in the relevant user group folder.

I also want users to be able to remove themselves from groups.

For experimental purposes, I achieved this by posting template form data to the (kernel)/content/action.php script as follows:

{def $form_post_url="content/action"}
<form name="locationsform" method="post" action={$form_post_url|ezurl}>
    <input type="hidden" name="ContentNodeID" value="{$node.node_id}" />
    <input type="hidden" name="ContentObjectID" value="{$user_id}" />
    <input type="hidden" name="ViewMode" value="full" />
    <input type="hidden" name="ContentObjectLanguageCode" value="" />
    <input type="hidden" name="LocationIDSelection[]" value="{$current_member_of_user_group_node_id}" title="Remove me from this user group." />
    <input class="button" type="submit" name="RemoveAssignmentButton" value="Leave this Group" title="Remove me from this user group." />
</form>

Which works fine, as long as the current user is an Administrator User. Otherwise I get 'Access Denied -You don't have permission to access this area'.

Is there a way I can set permissions to allow this to work? Or is there some other easier method I've missed?

I'd be pleased to document the solution for everyone if someone can help me out.

Thanks

Claudia Kosny

Tuesday 06 March 2007 11:24:23 am

Hi Paul

I had to give the users permissions for content/manage_locations to get a similar thing working. Just try it out.

Claudia

Paul Wilson

Tuesday 06 March 2007 8:19:50 pm

Big thanks to you Claudia,

That worked like a charm. My reading of the code had taken me in a more ominous-looking (and apparently unneccessary) direction.

Regards

- Paul

eZ debug

Timing: Jan 30 2025 00:16:10
Script start
Timing: Jan 30 2025 00:16:10
Module start 'content'
Timing: Jan 30 2025 00:16:10
Module end 'content'
Timing: Jan 30 2025 00:16:10
Script end

Main resources:

Total runtime0.1562 sec
Peak memory usage2,048.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0061 588.0781180.8125
Module start 'content' 0.00610.0080 768.890693.9922
Module end 'content' 0.01410.1420 862.8828523.9219
Script end 0.1562  1,386.8047 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00362.3178200.0002
Check MTime0.00140.8853200.0001
Mysql Total
Database connection0.00080.527410.0008
Mysqli_queries0.107568.79281410.0008
Looping result0.00090.59331390.0000
Template Total0.141790.710.1417
Template load0.00100.609410.0010
Template processing0.140790.086410.1407
Override
Cache load0.00070.434610.0007
Sytem overhead
Fetch class attribute can translate value0.00060.359710.0006
XML
Image XML parsing0.00020.121010.0002
General
dbfile0.01187.5273200.0006
String conversion0.00000.003230.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0001 secs