function evan_user_can($verb, Entity $object, Entity $target = NULL) { switch ($verb) { case 'post': if (!$target) { $target = elgg_get_logged_in_user_entity(); } $result = $target->canWriteToContainer(0, $object->getType(), $object->getSubtype()); break; case 'update': $result = $object->canEdit(); break; default: $result = false; break; } return elgg_trigger_plugin_hook("permission", $verb, array('actor' => elgg_get_logged_in_user_entity(), 'verb' => $verb, 'object' => $object, 'target' => $target), $result); }
public static function getExtraValues(ElggEntity $entity) { global $CONFIG; if (!$entity) { return FALSE; } $return['url'] = $entity->getURL(); $return['subtype'] = $entity->getSubtype(); $return['title'] = $entity->title; $return['icon_small'] = $entity->getIcon('small'); $return['icon_medium'] = $entity->getIcon('medium'); $return['icon_large'] = $entity->getIcon('large'); $return['access_id'] = $entity->access_id; $return['site_url'] = $CONFIG->wwwroot; if ($entity->canEdit()) { $return['canedit'] = $entity->canEdit(); } if ((string) $entity->container_name == '') { $container_entity = get_entity($entity->container_guid); if ($container_entity) { $return['container_name'] = $container_entity->name; $return['container_username'] = $container_entity->username; $return['container_url'] = $container_entity->getURL(); $return['container_icon'] = str_replace('size=medium', 'size=small', $container_entity->getIcon()); } } else { $return['container_name'] = $entity->name; $return['container_username'] = $entity->username; $return['container_url'] = $entity->getURL(); $return['container_icon'] = str_replace('size=medium', 'size=small', $entity->getIcon()); } return $return; }