drupal/core/modules/history/history.install

68 lines
1.5 KiB
PHP

<?php
/**
* @file
* Installation functions for History module.
*/
/**
* Implements hook_schema().
*/
function history_schema() {
$schema['history'] = [
'description' => 'A record of which {users} have read which {node}s.',
'fields' => [
'uid' => [
'description' => 'The {users}.uid that read the {node} nid.',
'type' => 'int',
'not null' => TRUE,
'default' => 0,
],
'nid' => [
'description' => 'The {node}.nid that was read.',
'type' => 'int',
'unsigned' => TRUE,
'not null' => TRUE,
'default' => 0,
],
'timestamp' => [
'description' => 'The Unix timestamp at which the read occurred.',
'type' => 'int',
'not null' => TRUE,
'default' => 0,
'size' => 'big',
],
],
'primary key' => ['uid', 'nid'],
'indexes' => [
'nid' => ['nid'],
],
];
return $schema;
}
/**
* Implements hook_update_last_removed().
*/
function history_update_last_removed() {
return 8101;
}
/**
* Remove the year 2038 date limitation.
*/
function history_update_10100(&$sandbox = NULL) {
$connection = \Drupal::database();
if ($connection->schema()->tableExists('history') && $connection->databaseType() != 'sqlite') {
$new = [
'description' => 'The Unix timestamp at which the read occurred.',
'type' => 'int',
'not null' => TRUE,
'default' => 0,
'size' => 'big',
];
$connection->schema()->changeField('history', 'timestamp', 'timestamp', $new);
}
}