예제 #1
0
     $result = substr($result, 2);
     $typeAndId = explode('_', $result);
     if ($typeAndId[0] == 0) {
         $userRecipients[] = $typeAndId[1];
     } else {
         $groupRecipients[] = $typeAndId[1];
     }
 }
 if (count($groupRecipients) > 0) {
     $usersTableGateway = new DirectusUsersTableGateway($acl, $ZendDb);
     $result = $usersTableGateway->findActiveUserIdsByGroupIds($groupRecipients);
     foreach ($result as $item) {
         $userRecipients[] = $item['id'];
     }
 }
 $messagesTableGateway = new DirectusMessagesTableGateway($acl, $ZendDb);
 $id = $messagesTableGateway->sendMessage($requestPayload, array_unique($userRecipients), $currentUser['id']);
 $params['id'] = $id;
 preg_match_all('/@\\[.*?\\]/', $requestPayload['message'], $results);
 $messageBody = $requestPayload['message'];
 $results = $results[0];
 $recipientString = "";
 $len = count($results);
 $i = 0;
 foreach ($results as $result) {
     $newresult = substr($result, 0, -1);
     $newresult = substr($newresult, strpos($newresult, " ") + 1);
     $messageBody = str_replace($result, $newresult, $messageBody);
     if ($i == $len - 1) {
         if ($i > 0) {
             $recipientString .= " and " . $newresult;
예제 #2
0
파일: index.php 프로젝트: hyrmedia/directus
function getInbox()
{
    global $ZendDb, $acl, $authenticatedUser;
    $tableGateway = new DirectusMessagesTableGateway($acl, $ZendDb);
    return $tableGateway->fetchMessagesInboxWithHeaders($authenticatedUser['id']);
}