| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 | <?php/** * @file * Install, update and uninstall functions for the user module. *//** * Implements hook_schema(). */function user_schema() {  $schema['users_data'] = [    'description' => 'Stores module data as key/value pairs per user.',    'fields' => [      'uid' => [        'description' => 'Primary key: {users}.uid for user.',        'type' => 'int',        'unsigned' => TRUE,        'not null' => TRUE,        'default' => 0,      ],      'module' => [        'description' => 'The name of the module declaring the variable.',        'type' => 'varchar_ascii',        'length' => DRUPAL_EXTENSION_NAME_MAX_LENGTH,        'not null' => TRUE,        'default' => '',      ],      'name' => [        'description' => 'The identifier of the data.',        'type' => 'varchar_ascii',        'length' => 128,        'not null' => TRUE,        'default' => '',      ],      'value' => [        'description' => 'The value.',        'type' => 'blob',        'not null' => FALSE,        'size' => 'big',      ],      'serialized' => [        'description' => 'Whether value is serialized.',        'type' => 'int',        'size' => 'tiny',        'unsigned' => TRUE,        'default' => 0,      ],    ],    'primary key' => ['uid', 'module', 'name'],    'indexes' => [      'module' => ['module'],      'name' => ['name'],    ],    'foreign keys' => [      'uid' => ['users' => 'uid'],    ],  ];  return $schema;}/** * Implements hook_install(). */function user_install() {  $storage = \Drupal::entityManager()->getStorage('user');  // Insert a row for the anonymous user.  $storage    ->create([      'uid' => 0,      'status' => 0,      'name' => '',    ])    ->save();  // We need some placeholders here as name and mail are unique.  // This will be changed by the settings form in the installer.  $storage    ->create([      'uid' => 1,      'name' => 'placeholder-for-uid-1',      'mail' => 'placeholder-for-uid-1',      'status' => TRUE,    ])    ->save();}/** * Fix invalid token in the status_blocked email body. */function user_update_8100() {  $config_factory = \Drupal::configFactory();  $config = $config_factory->getEditable('user.mail');  $mail = $config->get('status_blocked');  if (strpos($mail['body'], '[site:account-name]') !== FALSE) {    $mail['body'] = str_replace('[site:account-name]', '[site:name]', $mail['body']);    $config->set('status_blocked', $mail)->save(TRUE);  }}
 |