| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | 
							- <?php
 
- /**
 
-  * All event handler functions for this plugin can be found in this file.
 
-  */
 
- /**
 
-  * When an expert leaves the group, remove the expert role
 
-  *
 
-  * @param string $event  the 'leave' event
 
-  * @param string $type   for the 'group' type
 
-  * @param array  $params the provided params
 
-  *
 
-  * @return void
 
-  */
 
- function questions_leave_group_handler($event, $type, $params) {
 
- 	
 
- 	if (empty($params) || !is_array($params)) {
 
- 		return;
 
- 	}
 
- 	
 
- 	$user = elgg_extract('user', $params);
 
- 	$group = elgg_extract('group', $params);
 
- 	if (empty($user) || !($user instanceof ElggUser) || empty($group) || !($group instanceof ElggGroup)) {
 
- 		return;
 
- 	}
 
- 	
 
- 	// is the user an expert in this group
 
- 	if (check_entity_relationship($user->getGUID(), QUESTIONS_EXPERT_ROLE, $group->getGUID())) {
 
- 		// remove the expert role
 
- 		remove_entity_relationship($user->getGUID(), QUESTIONS_EXPERT_ROLE, $group->getGUID());
 
- 	}
 
- }
 
- /**
 
-  * When an expert leaves the site, remove the expert role
 
-  *
 
-  * @param string           $event        the 'delete' event
 
-  * @param string           $type         for the 'member_of_site' type
 
-  * @param ElggRelationship $relationship the provided params
 
-  *
 
-  * @return void
 
-  */
 
- function questions_leave_site_handler($event, $type, $relationship) {
 
- 	
 
- 	if (empty($relationship) || !($relationship instanceof ElggRelationship)) {
 
- 		return;
 
- 	}
 
- 	
 
- 	$user = get_user($relationship->guid_one);
 
- 	$site = elgg_get_site_entity($relationship->guid_two);
 
- 	if (empty($user) || empty($site)) {
 
- 		return;
 
- 	}
 
- 	
 
- 	// is the user an expert in this site
 
- 	if (check_entity_relationship($user->getGUID(), QUESTIONS_EXPERT_ROLE, $site->getGUID())) {
 
- 		// remove the expert role
 
- 		remove_entity_relationship($user->getGUID(), QUESTIONS_EXPERT_ROLE, $site->getGUID());
 
- 	}
 
- }
 
 
  |