<?php

namespace App\Http\Controllers\Promociones;

use App\Http\Controllers\Controller;
use App\Models\Files;
use App\Models\Promociones;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Storage;
use Dompdf\Dompdf;

class PromocionesFilesUploadsController extends Controller
{
    public function store()
    {
        $file = request()->file('file');
        $type = request('type', null);

        $model = new Files();
        return $model->uploadBorrador(
            $file,
            Promociones::class,
            $type
        );
    }

    public function show($id)
    {
        $result =  Files::find($id);

        $rutaArchivo =  $result->ruta;

        if (Storage::exists($rutaArchivo)) {
            $nombreArchivo = $result->titulo;
            $rutaCompleta = storage_path('app/' . $rutaArchivo);

            return response()->download($rutaCompleta, $nombreArchivo);
        } else {
            abort(404, 'El archivo no existe');
        }
    }

    public function destroy($id): Response
    {
        Files::findOrFail($id)
            ->where('borrador', true)
            ->delete();

        return response()->noContent();
    }
}
