load_user_by_username() public method

Stores the full data in the user cache so they do not need to be loaded again Returns the user id so you may use get_user() from the returned value
public load_user_by_username ( string $username ) : integer
$username string Raw username to load (will be cleaned)
return integer User ID for the username
Esempio n. 1
0
 /**
  * Executes the command user:delete
  *
  * Deletes a user from the database. An option to delete the user's posts
  * is available, by default posts will be retained.
  *
  * @param InputInterface  $input  The input stream used to get the options
  * @param OutputInterface $output The output stream, used to print messages
  *
  * @return int 0 if all is well, 1 if any errors occurred
  */
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $name = $input->getArgument('username');
     $mode = $input->getOption('delete-posts') ? 'remove' : 'retain';
     if ($name) {
         $io = new SymfonyStyle($input, $output);
         $user_id = $this->user_loader->load_user_by_username($name);
         $user_row = $this->user_loader->get_user($user_id);
         if ($user_row['user_id'] == ANONYMOUS) {
             $io->error($this->language->lang('NO_USER'));
             return 1;
         }
         if (!function_exists('user_delete')) {
             require $this->phpbb_root_path . 'includes/functions_user.' . $this->php_ext;
         }
         user_delete($mode, $user_row['user_id'], $user_row['username']);
         $this->log->add('admin', ANONYMOUS, '', 'LOG_USER_DELETED', false, array($user_row['username']));
         $io->success($this->language->lang('USER_DELETED'));
     }
     return 0;
 }
Esempio n. 2
0
 /**
  * Executes the command user:activate
  *
  * Activate (or deactivate) a user account
  *
  * @param InputInterface  $input  The input stream used to get the options
  * @param OutputInterface $output The output stream, used to print messages
  *
  * @return int 0 if all is well, 1 if any errors occurred
  */
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $io = new SymfonyStyle($input, $output);
     $name = $input->getArgument('username');
     $mode = $input->getOption('deactivate') ? 'deactivate' : 'activate';
     $user_id = $this->user_loader->load_user_by_username($name);
     $user_row = $this->user_loader->get_user($user_id);
     if ($user_row['user_id'] == ANONYMOUS) {
         $io->error($this->language->lang('NO_USER'));
         return 1;
     }
     // Check if the user is already active (or inactive)
     if ($mode == 'activate' && $user_row['user_type'] != USER_INACTIVE) {
         $io->error($this->language->lang('CLI_DESCRIPTION_USER_ACTIVATE_ACTIVE'));
         return 1;
     } else {
         if ($mode == 'deactivate' && $user_row['user_type'] == USER_INACTIVE) {
             $io->error($this->language->lang('CLI_DESCRIPTION_USER_ACTIVATE_INACTIVE'));
             return 1;
         }
     }
     // Activate the user account
     if (!function_exists('user_active_flip')) {
         require $this->phpbb_root_path . 'includes/functions_user.' . $this->php_ext;
     }
     user_active_flip($mode, $user_row['user_id']);
     // Notify the user upon activation
     if ($mode == 'activate' && $this->config['require_activation'] == USER_ACTIVATION_ADMIN) {
         $this->send_notification($user_row, $input);
     }
     // Log and display the result
     $msg = $mode == 'activate' ? 'USER_ADMIN_ACTIVATED' : 'USER_ADMIN_DEACTIVED';
     $log = $mode == 'activate' ? 'LOG_USER_ACTIVE' : 'LOG_USER_INACTIVE';
     $this->log->add('admin', ANONYMOUS, '', $log, false, array($user_row['username']));
     $this->log->add('user', ANONYMOUS, '', $log . '_USER', false, array('reportee_id' => $user_row['user_id']));
     $io->success($this->language->lang($msg));
     return 0;
 }