<?php
declare(strict_types=1);

namespace mystic\forum\utils;

use mystic\forum\Database;
use mystic\forum\orm\User;

final class ValidationUtils {
    use StaticClass;

    public static function isUsernameValid(string $name): bool {
        return !!preg_match('/^[a-z0-9]([._](?![._])|[a-z0-9]){2,30}[a-z0-9]$/', $name);
    }

    public static function isUsernameAvailable(Database &$db, string $name): bool {
        $user = new User();
        $user->name = $name;
        return !$db->fetchWhere($user, "name");
    }
}