Remove First/Last Name for Users (#855)

* Update Tests

* Update Translations

* Add Migration

* Remove First/Last Names
This commit is contained in:
Charles 2025-01-03 17:13:44 -05:00 committed by GitHub
parent 9d48799c28
commit 8f51502c6d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
44 changed files with 40 additions and 132 deletions

View File

@ -19,7 +19,7 @@ class StoreUserRequest extends ApplicationApiRequest
{
$rules = $rules ?? User::getRules();
$response = collect($rules)->only([
return collect($rules)->only([
'external_id',
'email',
'username',
@ -27,23 +27,11 @@ class StoreUserRequest extends ApplicationApiRequest
'language',
'timezone',
])->toArray();
$response['first_name'] = $rules['name_first'];
$response['last_name'] = $rules['name_last'];
return $response;
}
public function validated($key = null, $default = null): array
{
$data = parent::validated();
$data['name_first'] = $data['first_name'];
$data['name_last'] = $data['last_name'];
unset($data['first_name'], $data['last_name']);
return $data;
return parent::validated();
}
/**
@ -53,8 +41,6 @@ class StoreUserRequest extends ApplicationApiRequest
{
return [
'external_id' => 'Third Party Identifier',
'name_first' => 'First Name',
'name_last' => 'Last Name',
];
}
}

View File

@ -40,8 +40,6 @@ use Spatie\Permission\Traits\HasRoles;
* @property string $uuid
* @property string $username
* @property string $email
* @property string|null $name_first
* @property string|null $name_last
* @property string $password
* @property string|null $remember_token
* @property string $language
@ -78,8 +76,6 @@ use Spatie\Permission\Traits\HasRoles;
* @method static Builder|User whereId($value)
* @method static Builder|User whereLanguage($value)
* @method static Builder|User whereTimezone($value)
* @method static Builder|User whereNameFirst($value)
* @method static Builder|User whereNameLast($value)
* @method static Builder|User wherePassword($value)
* @method static Builder|User whereRememberToken($value)
* @method static Builder|User whereTotpAuthenticatedAt($value)
@ -126,8 +122,6 @@ class User extends Model implements AuthenticatableContract, AuthorizableContrac
'external_id',
'username',
'email',
'name_first',
'name_last',
'password',
'language',
'timezone',
@ -152,8 +146,6 @@ class User extends Model implements AuthenticatableContract, AuthorizableContrac
'timezone' => 'UTC',
'use_totp' => false,
'totp_secret' => null,
'name_first' => '',
'name_last' => '',
'oauth' => '[]',
];
@ -165,8 +157,6 @@ class User extends Model implements AuthenticatableContract, AuthorizableContrac
'email' => 'required|email|between:1,255|unique:users,email',
'external_id' => 'sometimes|nullable|string|max:255|unique:users,external_id',
'username' => 'required|between:1,255|unique:users,username',
'name_first' => 'nullable|string|between:0,255',
'name_last' => 'nullable|string|between:0,255',
'password' => 'sometimes|nullable|string',
'language' => 'string',
'timezone' => 'string',
@ -265,14 +255,6 @@ class User extends Model implements AuthenticatableContract, AuthorizableContrac
$this->attributes['email'] = mb_strtolower($value);
}
/**
* Return a concatenated result for the accounts full name.
*/
public function getNameAttribute(): string
{
return trim($this->name_first . ' ' . $this->name_last);
}
/**
* Returns all servers that a user owns.
*/
@ -394,7 +376,7 @@ class User extends Model implements AuthenticatableContract, AuthorizableContrac
public function getFilamentName(): string
{
return $this->name_first ?: $this->username;
return $this->username;
}
public function getFilamentAvatarUrl(): ?string

View File

@ -37,8 +37,6 @@ class UserTransformer extends BaseTransformer
'uuid' => $user->uuid,
'username' => $user->username,
'email' => $user->email,
'first_name' => $user->name_first,
'last_name' => $user->name_last,
'language' => $user->language,
'root_admin' => $user->isRootAdmin(),
'2fa_enabled' => (bool) $user->use_totp,

View File

@ -25,8 +25,6 @@ class UserTransformer extends BaseClientTransformer
'uuid' => $user->uuid,
'username' => $user->username,
'email' => $user->email,
'first_name' => $user->name_first,
'last_name' => $user->name_last,
'language' => $user->language,
'image' => 'https://gravatar.com/avatar/' . md5(Str::lower($user->email)), // deprecated
'admin' => $user->isRootAdmin(), // deprecated, use "root_admin"

View File

@ -29,8 +29,6 @@ class UserFactory extends Factory
'uuid' => Uuid::uuid4()->toString(),
'username' => $this->faker->userName() . '_' . Str::random(10),
'email' => Str::random(32) . '@example.com',
'name_first' => $this->faker->firstName(),
'name_last' => $this->faker->lastName(),
'password' => $password ?: $password = bcrypt('password'),
'language' => 'en',
'use_totp' => false,

View File

@ -0,0 +1,30 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('users', function (Blueprint $table) {
$table->dropColumn('name_first');
$table->dropColumn('name_last');
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('users', function (Blueprint $table) {
$table->addColumn('varchar', 'name_first');
$table->addColumn('varchar', 'name_last');
});
}
};

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'هل هذا المستخدم مدير؟',
'ask_email' => 'عنوان البريد الإلكتروني',
'ask_username' => 'اسم المستخدم',
'ask_name_first' => 'الاسم الأول',
'ask_name_last' => 'الاسم الأخير',
'ask_password' => 'كلمة المرور',
'ask_password_tip' => 'إذا كنت ترغب في إنشاء حساب بكلمة مرور عشوائية يتم إرسالها بالبريد الإلكتروني للمستخدم، أعد تشغيل هذا الأمر (CTRL+C) ومرر علامة `--no-password`.',
'ask_password_help' => 'يجب أن تكون كلمات المرور بطول 8 أحرف على الأقل وتحتوي على حرف كبير ورقم على الأقل.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Je tento uživatel správcem?',
'ask_email' => 'Emailová adresa',
'ask_username' => 'Uživatelské jméno',
'ask_name_first' => 'Jméno',
'ask_name_last' => 'Příjmení',
'ask_password' => 'Heslo',
'ask_password_tip' => 'Pokud chcete vytvořit účet s náhodným heslem zaslaným uživateli, spusťte znovu tento příkaz (CTRL+C) a přejděte do proměnné `--no-password`.',
'ask_password_help' => 'Heslo musí mít délku nejméně 8 znaků a obsahovat alespoň jedno velké písmeno a číslo.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Er denne bruger en administrator?',
'ask_email' => 'E-mailadresse',
'ask_username' => 'Brugernavn',
'ask_name_first' => 'Fornavn',
'ask_name_last' => 'Efternavn',
'ask_password' => 'Adgangskode',
'ask_password_tip' => 'Hvis du vil oprette en konto med en tilfældig adgangskode sendt til brugeren, skal du køre denne kommando igen (CTRL+C) og tilføje `--no-password` flaget.',
'ask_password_help' => 'Adgangskoder skal være mindst 8 tegn og indeholde mindst et stort bogstav og et tal.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Ist dieses Benutzerkonto ein Administratorkonto?',
'ask_email' => 'E-Mail Adresse',
'ask_username' => 'Benutzername',
'ask_name_first' => 'Vorname',
'ask_name_last' => 'Nachname',
'ask_password' => 'Passwort',
'ask_password_tip' => 'Wenn du ein Benutzerkonto mit einem zufälligen Passwort erstellen möchtest, führe diesen Befehl (CTRL+C) erneut aus und gebe die `--no-password` Flag an.',
'ask_password_help' => 'Passwörter müssen mindestens 8 Zeichen lang sein und mindestens einen Großbuchstaben und eine Zahl enthalten.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => '¿Es este usuario un administrador?',
'ask_email' => 'Dirección de correo electrónico',
'ask_username' => 'Nombre de usuario',
'ask_name_first' => 'Nombre',
'ask_name_last' => 'Apellido',
'ask_password' => 'Contraseña',
'ask_password_tip' => 'Si deseas crear una cuenta con una contraseña aleatoria enviada por correo electrónico al usuario, vuelve a ejecutar este comando (CTRL+C) y pasa la bandera `--no-password`.',
'ask_password_help' => 'Las contraseñas deben tener al menos 8 caracteres de longitud y contener al menos una letra mayúscula y un número.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Onko tämä käyttäjä järjestelmänvalvoja?',
'ask_email' => 'Sähköpostiosoite',
'ask_username' => 'Käyttäjänimi',
'ask_name_first' => 'Etunimi',
'ask_name_last' => 'Sukunimi',
'ask_password' => 'Salasana',
'ask_password_tip' => 'Mikäli haluat luoda tilin satunnaisella salasanalla, joka lähetetään sähköpostitse käyttäjälle, suorita tämä komento uudelleen (CTRL+C) ja lisää --no-password tunniste.',
'ask_password_help' => 'Salasanan on oltava vähintään 8 merkkiä pitkä ja siinä on oltava vähintään yksi iso kirjain ja numero.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Cet utilisateur est-il un administrateur ?',
'ask_email' => 'Adresse e-mail',
'ask_username' => 'Nom d\'utilisateur',
'ask_name_first' => 'Prénom',
'ask_name_last' => 'Nom',
'ask_password' => 'Mot de passe',
'ask_password_tip' => 'Si vous souhaitez créer un compte avec un mot de passe aléatoire envoyé à l\'utilisateur, ré-exécutez cette commande (CTRL+C) et passez le paramètre `--no-password`.',
'ask_password_help' => 'Les mots de passe doivent comporter au moins 8 caractères et contenir au moins une lettre majuscule et un chiffre.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'האם משתמש זה הוא מנהל מערכת?',
'ask_email' => 'כתובת דוא"ל',
'ask_username' => 'שם משתמש',
'ask_name_first' => 'שם פרטי',
'ask_name_last' => 'שם משפחה',
'ask_password' => 'סיסמה',
'ask_password_tip' => 'אם ברצונך ליצור חשבון עם סיסמה אקראית שנשלחת באימייל למשתמש, הפעל מחדש את הפקודה הזו (CTRL+C) והעביר את הדגל `--no-password`.',
'ask_password_help' => 'סיסמאות חייבות להיות באורך של לפחות 8 תווים ולהכיל לפחות אות גדולה ומספר אחד.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'このユーザーは管理者ですか?',
'ask_email' => 'メールアドレス',
'ask_username' => 'ユーザー名',
'ask_name_first' => '名',
'ask_name_last' => '姓',
'ask_password' => 'パスワード',
'ask_password_tip' => 'ランダムなパスワードでアカウントを作成したい場合は、コマンド「CTRL+C」を実行し、フラグ「--no-password」を設定してください。',
'ask_password_help' => 'パスワードは8文字以上で、1文字以上の大文字、数字が必要です。',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is deze gebruiker een beheerder?',
'ask_email' => 'E-mailadres',
'ask_username' => 'Gebruikersnaam',
'ask_name_first' => 'Voornaam',
'ask_name_last' => 'Achternaam',
'ask_password' => 'Wachtwoord',
'ask_password_tip' => 'Als je een account wilt aanmaken met een willekeurig wachtwoord dat naar de gebruiker wordt gestuurd, voer dit commando opnieuw uit (CTRL+C) en geef de `--no-password` parameter op.',
'ask_password_help' => 'Wachtwoorden moeten minstens 8 tekens lang zijn en minstens één hoofdletter en één cijfer bevatten.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Er denne brukeren en administrator?',
'ask_email' => 'E-postadresse',
'ask_username' => 'Brukernavn',
'ask_name_first' => 'Fornavn',
'ask_name_last' => 'Etternavn',
'ask_password' => 'Passord',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Czy ten użytkownik jest administratorem?',
'ask_email' => 'Adres E-mail',
'ask_username' => 'Nazwa Użytkownika',
'ask_name_first' => 'Imię',
'ask_name_last' => 'Nazwisko',
'ask_password' => 'Hasło',
'ask_password_tip' => 'Jeśli chcesz utworzyć konto z losowym hasłem wysłanym e-mailem do użytkownika, ponownie uruchom tę komendę (CTRL+C) i przekaż flagę `--no-password`.',
'ask_password_help' => 'Hasła muszą mieć co najmniej 8 znaków i zawierać co najmniej jedną wielką literę oraz cyfrę.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Является ли пользователь администратором?',
'ask_email' => 'Адрес эл. почты',
'ask_username' => 'Имя пользователя',
'ask_name_first' => 'Имя',
'ask_name_last' => 'Фамилия',
'ask_password' => 'Пароль',
'ask_password_tip' => 'Если Вы хотите создать пользователя со случайным паролем, который будет отправлен ему на адрес эл. почты, выполните эту команду снова, нажав CTRL+C и добавив флаг `--no-password`.',
'ask_password_help' => 'Пароль должен содержать минимум одну заглавную букву и число, а также иметь длину не менее 8 символов.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Je tento používateľ správcom?',
'ask_email' => 'Emailová Adresa',
'ask_username' => 'Používateľské meno',
'ask_name_first' => 'Krstné meno',
'ask_name_last' => 'Priezvisko',
'ask_password' => 'Heslo',
'ask_password_tip' => 'Ak by ste chceli vytvoriť účet s náhodným heslom zaslaným používateľovi e-mailom, spustite tento príkaz znova (CTRL+C) a zadajte flag `--no-password`.',
'ask_password_help' => 'Heslá musia mať dĺžku aspoň 8 znakov a musia obsahovať aspoň jedno veľké písmeno a číslo.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Kullanıcı yönetici olarak mı eklensin?',
'ask_email' => 'E-Posta',
'ask_username' => 'Kullanıcı Adı',
'ask_name_first' => 'Adı',
'ask_name_last' => 'Soyadı',
'ask_password' => 'Parola',
'ask_password_tip' => 'Kullanıcıya e-postayla gönderilen rastgele bir parolayla bir hesap oluşturmak istiyorsanız, bu komutu (CTRL+C) yeniden çalıştırın ve "--no-password" işaretini iletin.',
'ask_password_help' => 'Şifreler en az 8 karakter uzunluğunda olmalı ve en az bir büyük harf ve rakam içermelidir.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Цей користувач є адміністратором?',
'ask_email' => 'Адрес електронної пошти',
'ask_username' => 'Ім\'я користувача',
'ask_name_first' => 'Ім’я',
'ask_name_last' => 'Прізвище',
'ask_password' => 'Пароль',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -11,8 +11,6 @@ return [
'ask_admin' => 'Is this user an administrator?',
'ask_email' => 'Email Address',
'ask_username' => 'Username',
'ask_name_first' => 'First Name',
'ask_name_last' => 'Last Name',
'ask_password' => 'Password',
'ask_password_tip' => 'If you would like to create an account with a random password emailed to the user, re-run this command (CTRL+C) and pass the `--no-password` flag.',
'ask_password_help' => 'Passwords must be at least 8 characters in length and contain at least one capital letter and number.',

View File

@ -23,7 +23,7 @@ class ExternalUserControllerTest extends ApplicationApiIntegrationTestCase
$response->assertJsonStructure([
'object',
'attributes' => [
'id', 'external_id', 'uuid', 'username', 'email', 'first_name', 'last_name',
'id', 'external_id', 'uuid', 'username', 'email',
'language', 'root_admin', '2fa', 'created_at', 'updated_at',
],
]);
@ -36,8 +36,6 @@ class ExternalUserControllerTest extends ApplicationApiIntegrationTestCase
'uuid' => $user->uuid,
'username' => $user->username,
'email' => $user->email,
'first_name' => $user->name_first,
'last_name' => $user->name_last,
'language' => $user->language,
'root_admin' => (bool) $user->isRootAdmin(),
'2fa' => (bool) $user->totp_enabled,

View File

@ -25,8 +25,8 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
$response->assertJsonStructure([
'object',
'data' => [
['object', 'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'first_name', 'last_name', 'language', 'root_admin', '2fa_enabled', '2fa', 'created_at', 'updated_at']],
['object', 'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'first_name', 'last_name', 'language', 'root_admin', '2fa_enabled', '2fa', 'created_at', 'updated_at']],
['object', 'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'language', 'root_admin', '2fa_enabled', '2fa', 'created_at', 'updated_at']],
['object', 'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'language', 'root_admin', '2fa_enabled', '2fa', 'created_at', 'updated_at']],
],
'meta' => ['pagination' => ['total', 'count', 'per_page', 'current_page', 'total_pages']],
]);
@ -53,8 +53,6 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
'uuid' => $this->getApiUser()->uuid,
'username' => $this->getApiUser()->username,
'email' => $this->getApiUser()->email,
'first_name' => $this->getApiUser()->name_first,
'last_name' => $this->getApiUser()->name_last,
'language' => $this->getApiUser()->language,
'root_admin' => $this->getApiUser()->isRootAdmin(),
'2fa_enabled' => (bool) $this->getApiUser()->totp_enabled,
@ -71,8 +69,6 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
'uuid' => $user->uuid,
'username' => $user->username,
'email' => $user->email,
'first_name' => $user->name_first,
'last_name' => $user->name_last,
'language' => $user->language,
'root_admin' => (bool) $user->isRootAdmin(),
'2fa_enabled' => (bool) $user->totp_enabled,
@ -95,7 +91,7 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
$response->assertJsonCount(2);
$response->assertJsonStructure([
'object',
'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'first_name', 'last_name', 'language', 'root_admin', '2fa', 'created_at', 'updated_at'],
'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'language', 'root_admin', '2fa', 'created_at', 'updated_at'],
]);
$response->assertJson([
@ -106,8 +102,6 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
'uuid' => $user->uuid,
'username' => $user->username,
'email' => $user->email,
'first_name' => $user->name_first,
'last_name' => $user->name_last,
'language' => $user->language,
'root_admin' => (bool) $user->root_admin,
'2fa' => (bool) $user->totp_enabled,
@ -131,7 +125,7 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
$response->assertJsonStructure([
'object',
'attributes' => [
'id', 'external_id', 'uuid', 'username', 'email', 'first_name', 'last_name', 'language', 'root_admin', '2fa', 'created_at', 'updated_at',
'id', 'external_id', 'uuid', 'username', 'email', 'language', 'root_admin', '2fa', 'created_at', 'updated_at',
'relationships' => ['servers' => ['object', 'data' => [['object', 'attributes' => []]]]],
],
]);
@ -212,15 +206,13 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
$response = $this->postJson('/api/application/users', [
'username' => 'testuser',
'email' => 'test@example.com',
'first_name' => 'Test',
'last_name' => 'User',
]);
$response->assertStatus(Response::HTTP_CREATED);
$response->assertJsonCount(3);
$response->assertJsonStructure([
'object',
'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'first_name', 'last_name', 'language', 'root_admin', '2fa', 'created_at', 'updated_at'],
'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'language', 'root_admin', '2fa', 'created_at', 'updated_at'],
'meta' => ['resource'],
]);
@ -246,14 +238,12 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase
$response = $this->patchJson('/api/application/users/' . $user->id, [
'username' => 'new.test.name',
'email' => 'new@emailtest.com',
'first_name' => $user->name_first,
'last_name' => $user->name_last,
]);
$response->assertStatus(Response::HTTP_OK);
$response->assertJsonCount(2);
$response->assertJsonStructure([
'object',
'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'first_name', 'last_name', 'language', 'root_admin', '2fa', 'created_at', 'updated_at'],
'attributes' => ['id', 'external_id', 'uuid', 'username', 'email', 'language', 'root_admin', '2fa', 'created_at', 'updated_at'],
]);
$this->assertDatabaseHas('users', ['username' => 'new.test.name', 'email' => 'new@emailtest.com']);

View File

@ -25,8 +25,6 @@ class AccountControllerTest extends ClientApiIntegrationTestCase
'uuid' => $user->uuid,
'username' => $user->username,
'email' => $user->email,
'first_name' => $user->name_first,
'last_name' => $user->name_last,
'language' => 'en',
'image' => 'https://gravatar.com/avatar/' . md5(Str::lower($user->email)),
'admin' => false,