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. | Sí |
| id | ID únic del mòdul. | |
| nom | Nom del mòdul que es mostrarà a la secció Administració. | |
| [espai de noms](#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"