# Instalación

Zeus Backfoffice actúa como un paquete añadido de Laravel, es decir, debe ser instalado sobre un proyecto existente.

Se requiere una versión de Laravel 7 o superior.

# Instalación mediante composer

El paquete se instala mediante el repositorio Satis privado de Zeus, así que previamente hay que añadirlo en el composer.json del proyecto:

"repositories": [
    {
        "type": "composer",
        "url": "https://packages.zeus.vision"
    }
]

Entonces se podrá instalar mediante Composer:

composer require zeus/backoffice

# Instalación del backoffice

A continuación se genera la estructura mínima necesaria para funcionar.
También se incluye gestión básica de usuarios.

php artisan backoffice:install

En ese momento se habrá creado la siguiente estructura bajo la carpeta app del proyecto:

.
├── Backoffice
│   ├── Sections
│   │   └── Users.php
│   ├── Authorize.php
│   └── Sidebar.php
│   ...

En la carpeta Sections se crearán los archivos de configuración de las secciones.

En el archivo Sidebar.php se configuran los elementos que aparecerán en la barra de navegación lateral.

En el archivo Authorize.php se definen las reglas para mostrar o no el Backoffice.

# Actualización

Cuando se recibe una nueva actualización del backoffice al ejecutar composer update, es necesario actualizar los archivos assets CSS y JS que puedan haber cambiado en la nueva versión.

Simplemente después de recibir una nueva actualización hay que ejecutar el comando:

php artisan backoffice:update

# Mantener assets siempre actualizados

Para evitar tener que ejecutar el comando anterior cada vez que se recibe una actualización puedes añadir un hook de Composer y los assets se actualizarán automáticamente en cada nueva versión del backoffice.
En el archivo composer.json de tu proyecto añades:

"scripts": {
    "post-update-cmd": [
        "@php artisan backoffice:update"
    ]
}