Changeset 131

Show
Ignore:
Timestamp:
01/15/06 21:17:43 (3 years ago)
Author:
ben
Message:

Membership moderation for communities

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • devel/_friends/requests.php

    r130 r131  
    11<?php 
    22 
    3         //      ELGG manage friends and groups page 
     3        //      ELGG manage friendship requests page 
    44 
    55        // Run includes 
  • devel/units/communities/communities_actions.php

    r127 r131  
    7575                                } 
    7676                        break; 
     77                         
     78                // Approve a membership request 
     79                                case "friends:approve:request": 
     80                                                                                if (isset($_REQUEST['request_id']) && logged_on && run("users:type:get", $page_owner) == "community") { 
     81                                                                                         
     82                                                                                        $request_id = (int) $_REQUEST['request_id']; 
     83                                                                                        $request = db_query("select users.name, friends_requests.owner, friends_requests.friend from friends_requests left join users on users.ident = friends_requests.owner where friends_requests.ident = $request_id"); 
     84                                                                                        if (sizeof($request) > 0) { 
     85                                                                                                $request = $request[0]; 
     86                                                                                                if (run("permissions:check",array("userdetails:change", $page_owner))) { 
     87                                                                                                        db_query("delete from friends_requests where ident = $request_id"); 
     88                                                                                                        db_query("insert into friends set owner = " . $request->owner . ", friend = " . $request->friend); 
     89                                                                                                        $messages[] = sprintf(gettext("You approved the membership request. %s is now a member of this community."),stripslashes($request->name)); 
     90                                                                                                } else { 
     91                                                                                                        $messages[] = gettext("Error: you do not have authority to modify this membership request."); 
     92                                                                                                } 
     93                                                                                        } else { 
     94                                                                                                $messages[] = gettext("An error occurred: the membership request could not be found."); 
     95                                                                                        } 
     96                                                                                         
     97                                                                                } 
     98                                                                                break; 
     99                                // Reject a membership request 
     100                                case "friends:decline:request": 
     101                                                                                if (isset($_REQUEST['request_id']) && logged_on && run("users:type:get", $page_owner) == "community") { 
     102                                                                                         
     103                                                                                        $request_id = (int) $_REQUEST['request_id']; 
     104                                                                                        $request = db_query("select users.name, friends_requests.owner, friends_requests.friend from friends_requests left join users on users.ident = friends_requests.owner where ident = $request_id"); 
     105                                                                                        if (sizeof($request) > 0) { 
     106                                                                                                $request = $request[0]; 
     107                                                                                                if (run("permissions:check",array("userdetails:change", $page_owner))) { 
     108                                                                                                        db_query("delete from friends_requests where ident = $request_id"); 
     109                                                                                                        $messages[] = sprintf(gettext("You declined the membership request. %s is not a member of this community."),stripslashes($request->name)); 
     110                                                                                                } else { 
     111                                                                                                        $messages[] = gettext("Error: you do not have authority to modify this membership request."); 
     112                                                                                                } 
     113                                                                                        } else { 
     114                                                                                                $messages[] = gettext("An error occurred: the membership request could not be found."); 
     115                                                                                        } 
     116                                                                                         
     117                                                                                } 
     118                                                                                break; 
     119                                 
     120                        } 
    77121                 
    78122        } 
  • devel/units/communities/main.php

    r74 r131  
    4848                $function['communities:owned'][] = path . "units/communities/communities_create.php"; 
    4949 
     50        // Membership requests 
     51                $function['communities:requests:view'][] = path . "units/communities/communities_membership_requests.php"; 
     52                 
    5053        // Check access levels 
    5154                $function['users:access_level_check'][] = path . "units/communities/communities_access_level_check.php"; 
  • devel/units/communities/menu_sub.php

    r45 r131  
    4646                                                                ) 
    4747                                                                ); 
     48                        $run_result .= run("templates:draw", array( 
     49                                                                        'context' => 'submenuitem', 
     50                                                                        'name' => gettext("View membership requests"), 
     51                                                                        'location' => url . '_communities/requests.php?profile_id=' . $page_owner 
     52                                                                ) 
     53                                                                ); 
    4854                } 
    4955