mivita/app/Repositories/UserRepository.php
2020-01-02 19:22:30 +01:00

73 lines
No EOL
1.6 KiB
PHP

<?php
namespace App\Repositories;
use App\Models\UserAccount;
use App\User;
class UserRepository extends BaseRepository {
public function __construct(User $model)
{
$this->model = $model;
}
public function update($data)
{
if($data['user_id'] === "new" || $data['user_id'] == 0){
$this->model = User::create([
'email' => $data['email'],
'password' => env('APP_KEY'),
]);
}
else{
$this->model = $this->getById($data['user_id']);
}
if(!$this->model->account_id){
$account = new UserAccount();
}else{
$account = $this->model->account;
}
$data['same_as_billing'] = !isset($data['same_as_billing']) ? 0 : 1;
$account->fill($data)->save();
if(!$this->model->account_id){
$this->model->account_id = $account->id;
$this->model->save();
}
return;
}
public function deleteUser(User $user)
{
if($user->account){
$user->account->delete();
}
$user->email = "delete".time();
$user->password = "";
$user->confirmed = 0;
$user->confirmation_code = "delete".time();
$user->confirmation_date = null;
$user->confirmation_code_to = null;
$user->confirmation_code_remider = 2;
$user->agreement = null;
$user->active = 0;
$user->token = '';
$user->active_date = null;
$user->admin = 0;
$user->save();
return true;
}
}