<?php

use Illuminate\Database\Seeder;

use App\Shop;
use App\Header;
use App\Fortuneteller;

class UpdateHeaderShop extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        /* Update from SEO image to header*/
        /*$oldPath = public_path('uploads/image/shop/');
        $newPath = public_path('uploads/image/header/');
        $shops = Shop::all();
        foreach ($shops as $item) {
        	if (isset($item->seo) && $item->seo != null && $item->seo->image != null && $item->seo->image != '') {
        		$uri = "/shop/detail/" . $item->id;
        		$header = Header::select('id', 'uri')->notDeleted()->where('uri', $uri)->first();
        		if (!isset($header) || $header->id == null) {
        			Header::create([
			            'uri'          => $uri,
			            'title'        => $item->name,
			            'image'        => $item->seo->image,
			            'color'        => '#F1F1F1',
			            'type'         => 1,
			            'is_activated' => 1,
			            'created_at'   => date('Y-m-d H:i:s'),
			            'updated_at'   => date('Y-m-d H:i:s')
			        ]); 
			        copy($oldPath . $item->seo->image, $newPath . $item->seo->image);
			        print "Update Shop: " . $item->name . " and copied " . $item->seo->image . "\r\n";
        		} else {
                    $header->update(['type' => 0]);
                    print "Update Shop To Text: " . $item->name . "\r\n";
                }
        	}
        }*/

        /* Update default header after importing store */
        $shops = Shop::all();
        foreach ($shops as $item) {
            $uri = "/shop/detail/" . $item->id;
            $header = Header::select('id', 'uri')->notDeleted()->where('uri', $uri)->first();

            if (!isset($header) || $header->id == null) {
                Header::create([
                    'uri'          => $uri,
                    'title'        => $item->name,
                    'type'         => 1,
                    'is_activated' => 1,
                    'created_at'   => date('Y-m-d H:i:s'),
                    'updated_at'   => date('Y-m-d H:i:s')
                ]);
                print "Create Header Shop: " . $item->name . "\r\n";
            } else {
                $header->update(['type' => 1]);
                print "Update Shop To Mask Effect: " . $item->name . "\r\n";
            }
        }

        /* Update default header after importing teller */
        $tellers = Fortuneteller::all();
        foreach ($tellers as $item) {
            $uri = "/fortune-teller/detail/" . $item->id;
            $hasSlug = false;
            if ($item->slug != null && $item->slug != "") {
                $uri = "/fortune-teller/detail/" . $item->slug;
                $hasSlug = true;
            }

            $hTeller = Header::select('id', 'uri')
                ->notDeleted()
                ->where('uri', $uri)
                ->first();

            $hTitle = trim($item->display_name) . " 占い師";
            if (!isset($hTeller) || $hTeller->id == null) {
                Header::create([
                    'uri'          => $uri,
                    'title'        => $hTitle,
                    'type'         => 1,
                    'is_activated' => 1,
                    'created_at'   => date('Y-m-d H:i:s'),
                    'updated_at'   => date('Y-m-d H:i:s')
                ]);
                print "Create Header Teller: " . $hTitle . "\r\n";
            } else {
                $hTeller->update([
                    'title' => $hTitle,
                    'type'  => 1
                ]);
                print "Update Teller To Mask Effect: " . $hTitle . "\r\n";
            }

            if (!$hasSlug) {
                $item->update(['slug' => $item->id]);
                print "Update Teller Slug: " . $hTitle . " - " . $item->id . "\r\n";
            }
        }

    }
}
