timegridio/timegrid

View on GitHub
app/TG/Repositories/UserRepository.php

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
<?php

namespace App\TG\Repositories;

use App\Models\User;

class UserRepository
{
    /**
     * @param $userData
     *
     * @return static
     */
    public function findOrCreate($userData)
    {
        $user = User::where('email', '=', $userData->email)->orWhere('username', '=', $userData->nickname)->first();
        if ($user !== null) {
            return $user;
        }

        return User::create([
            'username' => $userData->nickname,
            'name'     => $userData->nickname,
            'email'    => $userData->email,
        ]);
    }
}