InitClass
in package
Clase base para el Init de los plugins. Cada plugin puede tener una clase Init en su raíz que extienda de esta, para ejecutar código en cada arranque de FacturaScripts o al activar, actualizar o desinstalar el plugin.
Table of Contents
Methods
- init() : void
- Se ejecuta en cada arranque de FacturaScripts (en cada petición).
- uninstall() : void
- Se ejecuta al desinstalar el plugin.
- update() : void
- Se ejecuta al activar o actualizar el plugin. Es el lugar para crear o actualizar los datos que necesite el plugin.
- getNamespace() : string
- Devuelve el namespace del plugin, por ejemplo FacturaScripts\Plugins\MiPlugin.
- loadExtension() : bool
- Carga una extensión sobre su clase objetivo, que se deduce del namespace: la extensión MiPlugin\Extension\Model\Cliente se aplica sobre el modelo Cliente.
- updateTableData() : void
- Actualiza los datos de la tabla con el contenido de su CSV de datos iniciales.
- loadBusinessDocumentExtension() : bool
- Aplica la extensión a cada uno de los modelos indicados.
Methods
init()
Se ejecuta en cada arranque de FacturaScripts (en cada petición).
public
abstract init() : void
Es el lugar para cargar extensiones y mods, o registrar workers.
uninstall()
Se ejecuta al desinstalar el plugin.
public
abstract uninstall() : void
update()
Se ejecuta al activar o actualizar el plugin. Es el lugar para crear o actualizar los datos que necesite el plugin.
public
abstract update() : void
getNamespace()
Devuelve el namespace del plugin, por ejemplo FacturaScripts\Plugins\MiPlugin.
protected
getNamespace() : string
Return values
stringloadExtension()
Carga una extensión sobre su clase objetivo, que se deduce del namespace: la extensión MiPlugin\Extension\Model\Cliente se aplica sobre el modelo Cliente.
protected
loadExtension(mixed $extension) : bool
Las clases base de documentos (BusinessDocument, SalesDocument, etc.) aplican la extensión a todos sus modelos, y EditController y ListController a todos los controladores Edit* y List*.
Parameters
- $extension : mixed
-
Instancia de la extensión a cargar.
Return values
bool —True si se ha encontrado la clase objetivo y se ha cargado la extensión.
updateTableData()
Actualiza los datos de la tabla con el contenido de su CSV de datos iniciales.
protected
updateTableData(string $tableName) : void
Útil en el update() del plugin para restaurar datos esenciales.
Parameters
- $tableName : string
-
Nombre de la tabla.
loadBusinessDocumentExtension()
Aplica la extensión a cada uno de los modelos indicados.
private
loadBusinessDocumentExtension(mixed $extension, array<string|int, mixed> $models) : bool
Parameters
- $extension : mixed
-
Instancia de la extensión a cargar.
- $models : array<string|int, mixed>
-
Nombres de los modelos sobre los que aplicarla.