class HeartbeatActivityController in Heartbeat 7
Controller class for heartbeat activity.
This extends the DrupalDefaultEntityController class, adding required special handling for heartbeat activity objects.
Hierarchy
- class \DrupalDefaultEntityController implements DrupalEntityControllerInterface
- class \HeartbeatActivityController
Expanded class hierarchy of HeartbeatActivityController
1 string reference to 'HeartbeatActivityController'
- heartbeat_entity_info in ./
heartbeat.entity.inc - Implement hook_entity_info().
File
- ./
heartbeat.entity.inc, line 138
View source
class HeartbeatActivityController extends DrupalDefaultEntityController {
/**
* Implements buildQuery().
*/
protected function buildQuery($ids, $conditions = array(), $revision_id = FALSE) {
$query = parent::buildQuery($ids, $conditions, $revision_id);
$query
->addTag('translatable');
$query
->addTag('heartbeat_activity_access');
$query
->addField('base', 'variables', 'variables');
$query
->addField('base', 'access', 'access');
$query
->join('users', 'u', 'u.uid = base.uid');
// Base table fields are automatically create in the parent.
//$query->fields('base');
$query
->fields('u');
// Override the permission based on the user profile status.
$query
->leftJoin('heartbeat_user_templates', 'hut', ' base.uid = hut.uid AND base.message_id = hut.message_id ');
$query
->addField('hut', 'status', 'access_status');
$query
->addField('base', 'access', 'access');
$query
->addField('u', 'access', 'users_access');
// This part is done by base.uaid in ($ids).
//$query->condition('ha.uaid', $uaid);
return $query;
}
/**
* Implements cacheGet().
*
* TODO think of conditions to use. Currently none.
*/
protected function cacheGet($ids, $conditions = array()) {
$activities = parent::cacheGet($ids, $conditions);
return $activities;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DrupalDefaultEntityController:: |
protected | property | Whether this entity type should use the static cache. | |
DrupalDefaultEntityController:: |
protected | property | Static cache of entities, keyed by entity ID. | |
DrupalDefaultEntityController:: |
protected | property | Array of information about the entity. | |
DrupalDefaultEntityController:: |
protected | property | Entity type for this controller instance. | |
DrupalDefaultEntityController:: |
protected | property | Additional arguments to pass to hook_TYPE_load(). | |
DrupalDefaultEntityController:: |
protected | property | Name of the entity's ID field in the entity database table. | |
DrupalDefaultEntityController:: |
protected | property | Name of entity's revision database table field, if it supports revisions. | |
DrupalDefaultEntityController:: |
protected | property | The table that stores revisions, if the entity supports revisions. | |
DrupalDefaultEntityController:: |
protected | function | Attaches data to entities upon loading. | 4 |
DrupalDefaultEntityController:: |
protected | function | Stores entities in the static entity cache. | |
DrupalDefaultEntityController:: |
protected | function | Ensures integer entity IDs are valid. | |
DrupalDefaultEntityController:: |
protected | function | Callback for array_filter that removes non-integer IDs. | |
DrupalDefaultEntityController:: |
public | function |
Implements DrupalEntityControllerInterface::load(). Overrides DrupalEntityControllerInterface:: |
|
DrupalDefaultEntityController:: |
public | function |
Implements DrupalEntityControllerInterface::resetCache(). Overrides DrupalEntityControllerInterface:: |
|
DrupalDefaultEntityController:: |
public | function | Constructor: sets basic variables. | |
HeartbeatActivityController:: |
protected | function |
Implements buildQuery(). Overrides DrupalDefaultEntityController:: |
|
HeartbeatActivityController:: |
protected | function |
Implements cacheGet(). Overrides DrupalDefaultEntityController:: |