class RoomsUnitController in Rooms - Drupal Booking for Hotels, B&Bs and Vacation Rentals 7
The Controller for RoomsUnit entities
Hierarchy
- class \DrupalDefaultEntityController implements DrupalEntityControllerInterface
- class \EntityAPIController implements EntityAPIControllerRevisionableInterface
- class \RoomsUnitController
- class \EntityAPIController implements EntityAPIControllerRevisionableInterface
Expanded class hierarchy of RoomsUnitController
1 string reference to 'RoomsUnitController'
- rooms_unit_entity_info in modules/
rooms_unit/ rooms_unit.module - Implements hook_entity_info().
File
- modules/
rooms_unit/ rooms_unit.module, line 778 - Manage units - Units are things that can be booked on a nightly basis (e.g. rooms - but also villas bungalows, etc).
View source
class RoomsUnitController extends EntityAPIController {
public function __construct($entityType) {
parent::__construct($entityType);
}
/**
* Creates a bookable unit.
*
* @param array $values
* The properties for the new unit type.
*
* @return RoomsUnit
* A unit object with all default fields initialized.
*/
public function create(array $values = array()) {
$unit_type = rooms_unit_type_load($values['type'], TRUE);
// Add values that are specific to our Room.
$values += array(
'unit_id' => '',
'is_new' => TRUE,
'title' => '',
'created' => '',
'changed' => '',
'base_price' => isset($unit_type->data['base_price']) ? $unit_type->data['base_price'] : 0,
'min_sleeps' => isset($unit_type->data['min_sleeps']) ? $unit_type->data['min_sleeps'] : 0,
'max_sleeps' => isset($unit_type->data['max_sleeps']) ? $unit_type->data['max_sleeps'] : 0,
'min_children' => isset($unit_type->data['min_children']) ? $unit_type->data['min_children'] : 0,
'max_children' => isset($unit_type->data['max_children']) ? $unit_type->data['max_children'] : 0,
'data' => array(
'cot_surcharge' => isset($unit_type->data['cot_surcharge']) ? $unit_type->data['cot_surcharge'] : 0,
),
);
$unit = parent::create($values);
return $unit;
}
/**
* Overriding the buildContent function to add entity specific fields.
*/
public function buildContent($entity, $view_mode = 'full', $langcode = NULL, $content = array()) {
$content = parent::buildContent($entity, $view_mode, $langcode, $content);
$content['state'] = array(
'#markup' => t('State') . ': ' . $entity->bookable . '<br/>',
);
$content['type'] = array(
'#markup' => t('Type') . ': ' . $entity->type . '<br/>',
);
$content['sleeps'] = array(
'#markup' => t('Sleeps') . ': ' . $entity->max_sleeps . '<br/>',
);
if (isset($entity->data['bed_arrangement'])) {
$content['bed_arrangement'] = array(
'#markup' => t('Double beds') . ': ' . $entity->data['bed_arrangement']['doubles'] . '<br/>' . t('Single beds') . ': ' . $entity->data['bed_arrangement']['singles'] . '<br/>',
);
}
return $content;
}
}
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 | Gets entities from the static cache. | 1 |
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. | |
EntityAPIController:: |
protected | property | ||
EntityAPIController:: |
protected | property | ||
EntityAPIController:: |
protected | property | ||
EntityAPIController:: |
protected | function |
Overrides DrupalDefaultEntityController::buildQuery(). Overrides DrupalDefaultEntityController:: |
1 |
EntityAPIController:: |
public | function |
Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface:: |
1 |
EntityAPIController:: |
public | function |
Implements EntityAPIControllerRevisionableInterface::deleteRevision(). Overrides EntityAPIControllerRevisionableInterface:: |
|
EntityAPIController:: |
public | function |
Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface:: |
1 |
EntityAPIController:: |
public | function |
Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface:: |
|
EntityAPIController:: |
public | function |
Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface:: |
1 |
EntityAPIController:: |
public | function |
Overridden. Overrides DrupalDefaultEntityController:: |
1 |
EntityAPIController:: |
public | function | Builds and executes the query for loading. | |
EntityAPIController:: |
protected | function | Renders a single entity property. | |
EntityAPIController:: |
public | function |
Overrides DrupalDefaultEntityController::resetCache(). Overrides DrupalDefaultEntityController:: |
1 |
EntityAPIController:: |
public | function |
Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface:: |
1 |
EntityAPIController:: |
protected | function | Saves an entity revision. | |
EntityAPIController:: |
public | function |
Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface:: |
1 |
RoomsUnitController:: |
public | function |
Overriding the buildContent function to add entity specific fields. Overrides EntityAPIController:: |
|
RoomsUnitController:: |
public | function |
Creates a bookable unit. Overrides EntityAPIController:: |
|
RoomsUnitController:: |
public | function |
Overridden. Overrides EntityAPIController:: |