You are here

protected function SingleHeartbeat::prepareStream in Heartbeat 6.4

prepareStream

Parameters

$text:

Return value

HeartbeatParser object

Overrides HeartbeatAccess::prepareStream

File

includes/singleheartbeat.inc, line 43

Class

SingleHeartbeat
Concrete class SingleHeartbeat Defines a stream for one activity message.

Code

protected function prepareStream() {
  global $user, $language;
  $this->stream->offset_sql = $this->_offset_sql;

  // Prevent already assigned language to be overriden
  if (empty($this->stream->language)) {
    $this->stream->language = $language->language;
  }

  // Sql parts
  // If users are involved (uid or uid_target) in heartbeat_activity
  // check if they are not blocked (status = 1).
  $this->stream->sql_start = "SELECT\n      hm.hid AS 'hid', hm.message AS 'message_orig',\n      hm.message_concat AS 'message_concat_orig',\n      hm.attachments AS 'attachments', hm.concat_args,\n      hm.custom AS 'custom', hm.description as 'description',\n      hm.perms, hm.variables AS 'variables_orig',\n      ua.*, ua_users.*,\n      1 AS 'count'\n    FROM {heartbeat_activity} ua\n    LEFT JOIN {heartbeat_messages} hm ON ua.message_id = hm.message_id\n    LEFT JOIN {users} ua_users ON ua.uid = ua_users.uid\n    LEFT JOIN {users} ua_target_users ON ua.uid_target = ua_target_users.uid\n    WHERE\n      ua.uaid = %d\n      AND (ua_users.uid = 0 OR ua_users.status = 1)\n      AND (ua_target_users.uid = 0 OR ua_target_users.status = 1)\n    ";
  $this->stream->sql_end = "";
  $heartbeat = $this
    ->createHeartbeatParser();
  return $heartbeat;
}