| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 | 
							- <?php
 
- /**
 
-  * Action to save a new related group
 
-  */
 
- $group_guid = (int) get_input("group_guid");
 
- $guid = (int) get_input("guid");
 
- if (!empty($group_guid) && !empty($guid)) {
 
- 	$group = get_entity($group_guid);
 
- 	$related = get_entity($guid);
 
- 	
 
- 	// do we have groups
 
- 	if (!empty($group) && elgg_instanceof($group, "group") && !empty($related) && elgg_instanceof($related, "group")) {
 
- 		if ($group->canEdit()) {
 
- 			if ($group->getGUID() != $related->getGUID()) {
 
- 				// not already related?
 
- 				if (!check_entity_relationship($group->getGUID(), "related_group", $related->getGUID())) {
 
- 					
 
- 					if (add_entity_relationship($group->getGUID(), "related_group", $related->getGUID())) {
 
- 						// notify the other owner about this
 
- 						if ($group->getOwnerGUID() != $related->getOwnerGUID()) {
 
- 							$subject = elgg_echo("group_tools:related_groups:notify:owner:subject");
 
- 							$message = elgg_echo("group_tools:related_groups:notify:owner:message", array(
 
- 								$related->getOwnerEntity()->name,
 
- 								elgg_get_logged_in_user_entity()->name,
 
- 								$related->name,
 
- 								$group->name
 
- 							));
 
- 							
 
- 							notify_user($related->getOwnerGUID(), $group->getOwnerGUID(), $subject, $message);
 
- 						}
 
- 						
 
- 						system_message(elgg_echo("group_tools:action:related_groups:success"));
 
- 					} else {
 
- 						register_error(elgg_echo("group_tools:action:related_groups:error:add"));
 
- 					}
 
- 				} else {
 
- 					register_error(elgg_echo("group_tools:action:related_groups:error:already"));
 
- 				}
 
- 			} else {
 
- 				register_error(elgg_echo("group_tools:action:related_groups:error:same"));
 
- 			}
 
- 		} else {
 
- 			register_error(elgg_echo("groups:cantedit"));
 
- 		}
 
- 	} else {
 
- 		register_error(elgg_echo("groups:notfound:details"));
 
- 	}
 
- } else {
 
- 	register_error(elgg_echo("InvalidParameterException:MissingParameter"));
 
- }
 
- forward(REFERER);
 
 
  |