# Installation

**🚀 How to Start the Script for Proper Operation**

1. **Download and install Oxmysql** (required dependency): 👉 <https://github.com/overextended/oxmysql>

1\. **Add the following lines to your `server.cfg`**

```
# iZaap Studios - Punishment System
ensure oxmysql
ensure izaap_jobmenu
```

**🛠️ Insert the SQL and Configure Your Framework:**

{% tabs %}
{% tab title="SQL" %}

```sql
CREATE TABLE IF NOT EXISTS `jobslots` (
  `citizenid` VARCHAR(50) NOT NULL PRIMARY KEY,
  `slots` TEXT NOT NULL
);


```

{% endtab %}

{% tab title="QBCORE" %}

```lua
--==============================================================--
--                     🧩 CONFIGURACIÓN PRINCIPAL                --
--                       iZaap Studios - JobMenu                --
--==============================================================--

Config = {}

-- 🔧 Framework en uso ('qb' para QBCore, 'esx' para ESX)
-- Puedes forzarlo desde tu server.cfg con:
--    set izaap_framework "qb"
--    set izaap_framework "esx"
Config.Framework = GetConvar('izaap_framework', 'qb')  -- 'qb' o 'esx'


--==============================================================--
-- ⚙️ COMANDOS CONFIGURABLES
--==============================================================--

-- 📂 Comando para abrir el menú principal del JobMenu
Config.OpenCommand = 'jobmenu'

-- ➕ Comando para agregar un nuevo slot de trabajo a un jugador
Config.AddSlotCommand = 'addslotjob'     -- Puedes cambiarlo a 'agregarslot', por ejemplo

-- 🛠 Comando para establecer la cantidad total de slots que tiene un jugador
Config.SetSlotCommand = 'setslotjob'     -- Puedes cambiarlo a 'modificarslots' si prefieres


-- 🎯 Cantidad inicial de slots por jugador (mínimo 2 recomendado)
Config.Slots = 2

Config.UIText = {
    sidebarTitle = "JOBMENU",
    sidebarInicio = "Home",
    sidebarSlots = "Slots",
    tituloPrincipal = "iZaap Scripts",
    statSlots = "Slots Totales",
    statTrabajo = "Trabajo Actual",
    bienvenida = "¡Bienvenido al menú de Trabajo! Selecciona “Mis Slots” para ver tus trabajos almacenados.",
    footer = "⭐ ¡Gestiona tu trabajo de forma sencilla con iZaap Scripts ⭐"
}



```

{% endtab %}

{% tab title="ESX" %}

```lua
--==============================================================--
--                     🧩 CONFIGURACIÓN PRINCIPAL                --
--                       iZaap Studios - JobMenu                --
--==============================================================--

Config = {}

-- 🔧 Framework en uso ('qb' para QBCore, 'esx' para ESX)
-- Puedes forzarlo desde tu server.cfg con:
--    set izaap_framework "qb"
--    set izaap_framework "esx"
Config.Framework = GetConvar('izaap_framework', 'esx')  -- 'qb' o 'esx'


--==============================================================--
-- ⚙️ COMANDOS CONFIGURABLES
--==============================================================--

-- 📂 Comando para abrir el menú principal del JobMenu
Config.OpenCommand = 'jobmenu'

-- ➕ Comando para agregar un nuevo slot de trabajo a un jugador
Config.AddSlotCommand = 'addslotjob'     -- Puedes cambiarlo a 'agregarslot', por ejemplo

-- 🛠 Comando para establecer la cantidad total de slots que tiene un jugador
Config.SetSlotCommand = 'setslotjob'     -- Puedes cambiarlo a 'modificarslots' si prefieres


-- 🎯 Cantidad inicial de slots por jugador (mínimo 2 recomendado)
Config.Slots = 2

Config.UIText = {
    sidebarTitle = "JOBMENU",
    sidebarInicio = "Home",
    sidebarSlots = "Slots",
    tituloPrincipal = "iZaap Scripts",
    statSlots = "Slots Totales",
    statTrabajo = "Trabajo Actual",
    bienvenida = "¡Bienvenido al menú de Trabajo! Selecciona “Mis Slots” para ver tus trabajos almacenados.",
    footer = "⭐ ¡Gestiona tu trabajo de forma sencilla con iZaap Scripts ⭐"
}



```

{% endtab %}
{% endtabs %}
