<?php

namespace Database\Seeders;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Carbon\Carbon;

class BackendUsersTableSeeder extends Seeder
{
    private $table = 'backend_users';

    protected function _getData()
    {
        $now = Carbon::now();

        return [
            [
                'id'         => 1,
                'first_name' => 'admin',
                'last_name'  => 'eae',
                'name'       => 'admin eae',
                'email'      => env('EAE_ADMIN_DEFAULT_EMAIL'),
                'username'   => 'admin',
                'password'   => bcrypt(env('EAE_ADMIN_DEFAULT_PASSWORD')),
                'location'   => '',
                'contact_1'  => '',
                'contact_2'  => '',
                'role'       => '',
                'type_id'    => 1,
                'created_at' => $now,
            ]
        ];
    }

    /**
     * Run the database seeders.
     *
     * @return void
     */
    public function run()
    {
        $data = $this->_getData();

        foreach ($data as $dataItem) {
            $dbItem = DB::table($this->table)->where('id', '=', $dataItem['id'])->first();

            if (!empty($dbItem)) {
                continue;
            }

            DB::table($this->table)->insert($dataItem);
        }
    }
}
