Same name and namespace in other branches
  1. 4.6.x includes/common.inc \flood_register_event()
  2. 4.7.x includes/common.inc \flood_register_event()
  3. 5.x includes/common.inc \flood_register_event()
  4. 6.x includes/common.inc \flood_register_event()

Registers an event for the current visitor to the flood control mechanism.

Parameters

$name: The name of an event.

$window: Optional number of seconds before this event expires. Defaults to 3600 (1 hour). Typically uses the same value as the flood_is_allowed() $window parameter. Expired events are purged on cron run to prevent the flood table from growing indefinitely.

$identifier: Optional identifier (defaults to the current user's IP address).

5 calls to flood_register_event()
contact_personal_form_submit in modules/contact/contact.pages.inc
Form submission handler for contact_personal_form().
contact_site_form_submit in modules/contact/contact.pages.inc
Form submission handler for contact_site_form().
FloodFunctionalTest::testCleanUp in modules/system/system.test
Test flood control mechanism clean-up.
user_login_final_validate in modules/user/user.module
The final validation handler on the login form.
user_pass_validate in modules/user/user.pages.inc
Form validation handler for user_pass().

File

includes/common.inc, line 1353
Common functions that many Drupal modules will need to reference.

Code

function flood_register_event($name, $window = 3600, $identifier = NULL) {
  if (!isset($identifier)) {
    $identifier = ip_address();
  }
  db_insert('flood')
    ->fields(array(
    'event' => $name,
    'identifier' => $identifier,
    'timestamp' => REQUEST_TIME,
    'expiration' => REQUEST_TIME + $window,
  ))
    ->execute();
}