function history_write
Same name in other branches
- 8.9.x core/modules/history/history.module \history_write()
- 10 core/modules/history/history.module \history_write()
- 11.x core/modules/history/history.module \history_write()
Updates 'last viewed' timestamp of the specified entity for the current user.
Parameters
$nid: The node ID that has been read.
$account: (optional) The user account to update the history for. Defaults to the current user.
1 call to history_write()
- HistoryController::readNode in core/
modules/ history/ src/ Controller/ HistoryController.php - Marks a node as read by the current user right now.
File
-
core/
modules/ history/ history.module, line 107
Code
function history_write($nid, $account = NULL) {
if (!isset($account)) {
$account = \Drupal::currentUser();
}
if ($account->isAuthenticated()) {
$request_time = \Drupal::time()->getRequestTime();
\Drupal::database()->merge('history')
->keys([
'uid' => $account->id(),
'nid' => $nid,
])
->fields([
'timestamp' => $request_time,
])
->execute();
// Update static cache.
$history =& drupal_static('history_read_multiple', []);
$history[$nid] = $request_time;
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.