Esta web utiliza cookies propias y de terceros para su funcionamiento. ¿Aceptas? Leer más
Desarrollar plugins sobre webportal

SectionController

Si hereda de SectionController podrá crear rápidamente páginas con varias pestañas o secciones, cada una con un listado, buscador, ordenación, paginación, etc.

Ejemplo de SectionController

<?php
namespace FacturaScripts\Plugins\MyPlugin\Controller;

use FacturaScripts\Core\Base\DataBase\DataBaseWhere;
use FacturaScripts\Plugins\webportal\Lib\WebPortal\SectionController;

class PluginList extends SectionController
{

    protected function createSections()
    {
        $this->addListSection('plugins', 'WebProject', 'Section/Plugins', 'plugins', 'fa-plug', '2018');
        $this->addOrderOption('plugins', 'LOWER(name)', 'name', 1);
        $this->addSearchOptions('plugins', ['name', 'description']);
    }

    protected function loadData(string $sectionName)
    {
        switch ($sectionName) {
            case 'plugins':
                $where = [new DataBaseWhere('plugin', true)];
                $this->loadListSection($sectionName, $where);
                break;
        }
    }
}

createSections()

Añada las secciones que necesite dentro de esta función, así como las opciones de búsqueda y ordenación.

loadData()

Cargue los datos a mostrar en cada sección desde esta función. Puede llamar a loadListSection() con el nombre de la sección y un array de databasewhere para que el controlador se encargue de cargar los datos.