<?php /** @noinspection PhpUndefinedMethodInspection */

namespace App\dev;



use App\DataTables\AvailableDatesDataTable;
use App\pub_size;
use App\PubDate;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

trait extras
{
    public function add_dates(Request $request, AvailableDatesDataTable $dataTable)
    {
        if (strtoupper($request->method()) == 'POST')
        {
            $data = $request->all();
            $new = PubDate::create($data);

            return redirect()->back()->with('success','Date has been successfully been added');
        }

        return $dataTable->render('admin.date');
    }


    public function date_edit(Request $request,$id)
    {
        $response = PubDate::query()->find($id);

        if (strtoupper($request->method()) == 'POST')
        {
            $data = $request->all();
            $response->update($data);

            return response()->json('complete');
        }
        return response()->json($response);
    }

    public  function date_toggle($id)
    {
        $update = PubDate::query()->find($id);
        if($update->state == true):
            $update->state = 0;
            $flash = 'SUCCESSFULLY DISABLED';
        else:
            $update->state = 1;
            $flash = 'SUCCESSFULLY ENABLED';
            endif;

            $update->save();
            return redirect()->back()->with('success',$update->date.' ' .$flash);
    }

    public function pub_post(Request $request){
        $pub = new pub_size;
        $pub->category   = $request->category;
        $pub->p_size   = $request->p_size;
        $pub->p_type   = $request->p_type;
        $pub->cost     = $request->cost;
        $pub->save();
        return redirect()->route('admin.pub')->with('data','Recorded Added');
    }





    /***************************/
    public function category_response($id)
    {
            $get = pub_size::query()->where('category',$id)->select('p_size')->get();
            return response()->json($get);
    }

    public function price_response($id,$size,$color)
    {
            $get = pub_size::query()->where([['category',$id],['p_size',$size],['p_type',$color]])->select('cost')->first();
            return response()->json($get);
    }
}
