/** * Request a Membership of a user * * @param <String> $params The id of the contact to request the relationship */ public static function requestRelationship($params) { $peopleController = PeopleController::getInstance(); $myProcManager = ProcManager::getInstance(); $currentUserId = $myProcManager->getCurrentProcess()->getLoginContext()->getEyeosUser()->getId(); $newContact = $peopleController->addNewContact($currentUserId, $params); $contactId = $newContact->getRelation()->getTargetId(); $lists = array(); $listsName = array(); $otherUser = UMManager::getInstance()->getUserById($contactId); $metaObject = MetaManager::getInstance()->retrieveMeta($otherUser); if ($metaObject == null) { $meta = array(); } else { $meta = $metaObject->getAll(); } $presenceManager = new PresenceManager(); $connected = $presenceManager->checkPresenceByUserId($params); $results = array('id' => $params, 'nickname' => $otherUser->getName(), 'state' => 'pending', 'lists' => $lists, 'listsName' => $listsName, 'meta' => $meta, 'relationDate' => $newContact->getRelation()->getLastModification(), 'connected' => $connected); return $results; }