manifest.json

Qualsevol mòdul necessita el fitxer manifest.json. El fitxer s'ha d'ubicar al directori principal del mòdul (per exemple, ui/modules/module_name/manifest.json).

Com a mínim, manifest.json hauria d'especificar aquests camps:

{
           "manifest_version": 2.0,
           "id": "la_meva_adreça_ip",
           "name": "La meva adreça IP",
           "namespace": "LaMevaAdreçaIP",
           "version": "1.0"
       }

Paràmetres admesos a manifest.json (premeu al nom del paràmetre per veure una descripció detallada):

Paràmetre Descripció Obligatori
manifest_version Versió manifest del mòdul.
id ID únic del mòdul.
nom Nom del mòdul que es mostrarà a la secció Administració.
espai de noms Espai de noms PHP per a classes de mòduls.
versió Versió del mòdul.
tipus Tipus del mòdul. Per al giny s'ha d'establir a widget Sí per als ginys, en cas contrari no
giny Configuració del giny. S'empra només per a ginys.
accions Accions per registrar-se al mòdul.
actius Estils CSS i fitxers JavaScript per incloure. No
autor Autor del mòdul.
configuració Valors per defecte per a les opcions de mòduls personalitzats.
descripció Descripció del mòdul.
url Un enllaç a la descripció del mòdul.

manifest_version

Versió manifest del mòdul. Actualment, la versió suportada és la 2.0.

Tipus: Doble

Exemple:

"manifest_version": 2.0

id

ID del mòdul. Ha de ser únic. Per evitar futurs conflictes de noms, es recomana emprar el prefix per als mòduls (nom de l'autor o de l'empresa, o qualsevol altre). Per exemple, si un mòdul és un exemple per a les lliçons i el nom del mòdul és "El meu mòdul", l'ID serà "example_my_module".

Tipus: Cadena

Exemple:

"id": "example_my_module"

nom

Nom del mòdul que es veurà a la secció Administració.

Tipus: Cadena

Exemple:

"nom": "El meu mòdul"

namespace

Namespace PHP per els mòduls de classes.

Tipus: Cadena

Exemple:

"namespace": "ClockWidget"

versió

Versió del mòdul, que es veurà a la secció Administració.

Tipus: Cadena

Exemple:

"versió": "1.0"

tipus

Tipus del mòdul. Obligatori per ginys i ha de ser igual a "giny".

Tipus: Cadena

Per defecte: "module"

Exemple:

"tipus": "giny"

accions

Accions per registrar-se al mòdul. Cal definir la clau d'objecte classe per a cada acció, les altres claus d'acció són opcionals.

Tipus: Objecte

Tecles d'objecte admeses si tipus és mòdul:

  • write.your.action.name (objecte) - nom de l'acció, s'ha d'escriure en minúscula [a-z], separant les paraules amb punts. Admet les tecles:
    • classe (cadena; obligatori) - nom de la classe d'acció.
    • disposició (cadena) - disseny d'acció. Valors admesos: layout.json, layout.htmlpage (per defecte), null.
    • layout (cadena) - vista d'acció.

Exemple:

"actions": {
           "module.example.list": {
               "class": "ExampleList",
               "view": "example.list",
               "layout": "layout.htmlpage"
               }
           }

Tecles d'objecte admeses si tipus és giny:

  • widget.{id}.view (objecte) - nom de fitxer i classe per a la vista de widget. Substituïu {id} pel valor id del giny (per exemple, widget.example_clock.view). Admet les tecles:
    • classe (cadena; obligatori) - nom de classe d'acció per al mode de visualització de widgets per ampliar la classe CControllerDashboardWidgetView predeterminada. El fitxer font de la classe s'ha d'ubicar al directori accions.
    • visualització (cadena) - vista de giny. S'ha d'ubicar al directori views. Si el fitxer de visualització és widget.view.php, que s'espera per defecte, aquest paràmetre potser s'omet. Si empreu un nom diferent, especifiqueu-lo aquí.
  • widget.{id}.edit (objecte) - nom del fitxer per a la vista de configuració del giny. Substituïu {id} pel valor id del giny (per exemple, widget.example_clock.edit). Admet les claus:
    • classe (cadena; obligatori) - nom de la classe d'acció per al mode de visualització de configuració del widget. El fitxer font de la classe s'ha d'ubicar al directori actions.
    • visualització (cadena) - vista de configuració del widget. S'ha d'ubicar al directori views. Si el fitxer de visualització és widget.edit.php, que s'espera per defecte, aquest paràmetre potser s'omet. Si empreu un nom diferent, especifiqueu-lo aquí.

Exemple:

"actions": {
           "widget.tophosts.view": {
               "class": "WidgetView"
           },
           "widget.tophosts.column.edit": {
               "class": "ColumnEdit",
               "view": "column.edit",
               "layout": "layout.json"
           }
       }

actius

Estils CSS i fitxers JavaScript a incloure.

Tipus: Objecte

Claus d'objectes admeses:

  • css (matriu) - Fitxers CSS a incloure. Els fitxers s'han d'ubicar a assets/css.
  • js (matriu) - Fitxers JavaScript a incloure. Els fitxers s'han d'ubicar a assets/js.

Exemple:

"assets": {
           "css": ["widget.css"],
           "js": ["widget.js"]
       }

autor

Mòdul autor. L'autor es veurà a la secció Administració.

Tipus: Cadena

Exemple:

"autor": "Ausiàs March"

configuració

Valors per defecte per a les opcions del mòdul. L'objecte pot contindre qualsevol clau personalitzada. Si s'especifiquen, aquests valors s'escriuran a la base de dades durant el registre del mòdul. Les variables noves que s'afegeixin més tard s'escriuran a la primera crida. Després, els valors de les variables només es poden canviar directament a la base de dades.

Tipus: Objecte

Exemple:

"config": {
           "username": "Admin",
           "password": "",
           "auth_url": "https://example.com/auth"
       }

descripció

Mòdul descripció.

Tipus: Cadena

Exemple:

"descripció": "Això és un giny de rellotge."

giny

Configuració del giny. S'empra si el tipus s'estableix a giny.

Tipus: Objecte

Claus d'objecte admeses:

  • nom (cadena) - s'empra a la llista de ginys i com a capçalera predeterminada. Si és buit, s'emprarà el paràmetre "nom" del mòdul.

  • mida (objecte) - dimensions del giny predeterminades. Admet les claus:

    • amplada (enter) - amplada del giny predeterminada.
    • alçada (enter) - alçada del giny predeterminada.
  • form_class (cadena) - formulari de classe amb camps de giny. S'ha d'ubicar al directori include. Si la classe és WidgetForm.php, que s'espera per defecte, aquest paràmetre potser s'omet. Si empreu un nom diferent, especifiqueu-lo aquí.

  • js_class (cadena) - nom d'una classe JavaScript per al mode de visualització de ginys per ampliar la classe CWidget predeterminada. La classe es carregarà amb el tauler. El fitxer font de la classe s'ha d'ubicar al directori assets/js. Veieu també: actius.

  • use_time_selector (booleà): determina si el giny requereix un selector de temps del tauler. Valors admesos: cert, fals (per defecte).

  • refresh_rate (enter) - taxa d'actualització del giny en segons (per defecte: 60).

Exemple:

"widget": {
           "name": "",                       
           "template_support": true,      
           "size": {                       
               "width": 12,
               "height": 5
           },
           "form_class": "WidgetForm", 
           "js_class": "CWidget",         
           "use_time_selector": false,    
           "refresh_rate": 60             
       }

url

Enllaç a la descripció del mòdul. Per als ginys, aquest enllaç s'obrirà en fer clic a la icona d'ajuda a la finestra Afegir giny o Editar giny. Si url no és especificat, fent clic a la icona d'ajuda s'obrirà la pàgina general Ginys del tauler.

Tipus: Cadena

Exemple:

"url": "http://exemple.cat"