<?php

namespace App\Http\Livewire\tablas;

use Livewire\Component;
use App\tb_libros;
use Livewire\WithPagination;

class TablaLibros extends Component
{

    use WithPagination;

    protected $paginationTheme = 'bootstrap';
    public $buscador;
    public $campo_orden = 'id';
    public $ordenado = 'desc';


    /***para ordenar cuando hacemos clik a las columnas***/
    public function ordenar($_columna)
    {
        $this->campo_orden =  $_columna;

        if($this->campo_orden == $_columna )
        {
            if($this->ordenado == 'desc' )
            {
                $this->ordenado = 'asc';
            }
            else
            {
                $this->ordenado = 'desc' ;
            }
        }
        else
        {
            $this->campo_orden =  $_columna;
            $this->ordenado = 'asc';
        }

     
    }

    public function updatingBuscador()
    {
         $this->resetPage();
    }

    public function render()
    {

        $libros = tb_libros::where('nombre','like','%'.$this->buscador.'%')
        ->orwhere('descripcion','like','%'.$this->buscador.'%')
        ->orwhere('categoria','like','%'.$this->buscador.'%')
        ->orderBy($this->campo_orden,$this->ordenado)
        ->paginate(10);
        return view('livewire.tablas.tabla-libros',compact('libros'));
    }

}


