Skip to content

Commit 2ff6068

Browse files
committed
docs: aggiornamento documentazione query di installazione
1 parent 79ae168 commit 2ff6068

1 file changed

Lines changed: 74 additions & 0 deletions

File tree

.github/STANDARD.md

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,80 @@ Per tabelle non presenti all'interno della lista ufficiale di OpenSTAManager (fi
2323
- `updated_at timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP`
2424
- `created_at timestamp NULL DEFAULT CURRENT_TIMESTAMP`
2525

26+
27+
### Aggiunta modulo
28+
Con l'introduzione delle traduzioni, in fase di aggiunta di nuovi moduli, è necessario definire le traduzioni per le due lingue disponibili.
29+
30+
Note:
31+
- id: viene incrementato automaticamente, non valorizzare
32+
- created_at e updated_at: si valorizzano automaticamente (se la tabella è in tables.php)
33+
- LAST_INSERT_ID() funziona solo per inserimenti singoli, per inserimenti multipli usare SELECT MAX(`id`)
34+
35+
Questo è un esempio di query per l'aggiunta di un modulo:
36+
37+
```sql
38+
-- Creazione tabella
39+
CREATE TABLE `NOME_TABELLA_MODULO` (
40+
`id` int NOT NULL AUTO_INCREMENT,
41+
`name` varchar(255) NOT NULL,
42+
PRIMARY KEY (`id`)
43+
) ENGINE=InnoDB;
44+
-- Aggiungere il nome della nuova tabella al file update/tables.php per i campi updated_at e created_at
45+
46+
-- Aggiunta modulo
47+
INSERT INTO `zz_modules` (`name`, `directory`, `options`, `options2`, `icon`, `version`, `compatibility`, `order`, `parent`, `default`, `enabled`, `use_notes`, `use_checklists`) VALUES
48+
('NOME MODULO', 'CARTELLA_MODULO', 'SELECT |select| FROM `NOME_TABELLA` WHERE 1=1 HAVING 2=2', '', 'fa fa-angle-right', '2.9', '2.9', 1, (SELECT `id` FROM `zz_modules` AS `t` WHERE `name` = 'MODULO PARENT'), 1, 1, 0, 0);
49+
50+
INSERT INTO `zz_modules_lang` (`id_lang`, `id_record`, `title`) VALUES
51+
(1, (SELECT MAX(`id`) FROM `zz_modules`), 'TITOLO MODULO ITALIANO'),
52+
(2, (SELECT MAX(`id`) FROM `zz_modules`), 'TITOLO MODULO INGLESE');
53+
```
54+
55+
56+
### Aggiunta vista
57+
58+
Questo è un esempio di query per l'aggiunta di una vista:
59+
60+
```sql
61+
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `visible`) VALUES
62+
((SELECT `id` FROM `zz_modules` WHERE `name` = 'NOME MODULO'), 'id', '`NOME_TABELLA`.`id`', 1, 0),
63+
((SELECT `id` FROM `zz_modules` WHERE `name` = 'NOME MODULO'), 'Nome', '`NOME_TABELLA`.`name`', 2, 1);
64+
65+
INSERT INTO `zz_views_lang` (`id_lang`, `id_record`, `title`) VALUES
66+
(1, (SELECT MAX(`id`)-1 FROM `zz_views`), 'id'),
67+
(2, (SELECT MAX(`id`)-1 FROM `zz_views`), 'id'),
68+
(1, (SELECT MAX(`id`) FROM `zz_views`), 'Nome'),
69+
(2, (SELECT MAX(`id`) FROM `zz_views`), 'Name');
70+
```
71+
72+
73+
### Aggiunta plugin
74+
75+
Questo è un esempio di query per l'aggiunta di un plugin:
76+
77+
```sql
78+
INSERT INTO `zz_plugins` (`name`, `idmodule_from`, `idmodule_to`, `position`, `script`, `enabled`, `default`, `order`, `compatibility`, `version`, `options`, `directory`, `help`) VALUES
79+
('NOME PLUGIN', (SELECT `id` FROM `zz_modules` WHERE `name` = 'MODULO INIZIALE'), (SELECT `id` FROM `zz_modules` WHERE `name` = 'MODULO FINALE'), 'tab', '', 1, 1, 0, '2.*', '2.9', 'custom', 'CARTELLA_PLUGIN', '');
80+
81+
INSERT INTO `zz_plugins_lang` (`id_lang`, `id_record`, `name`, `title`) VALUES
82+
(1, (SELECT MAX(`id`) FROM `zz_plugins`), 'NOME PLUGIN', 'TITOLO PLUGIN ITALIANO'),
83+
(2, (SELECT MAX(`id`) FROM `zz_plugins`), 'NOME PLUGIN', 'TITOLO PLUGIN INGLESE');
84+
```
85+
86+
87+
### Aggiunta impostazione
88+
89+
Questo è un esempio di query per l'aggiunta di un'impostazione:
90+
91+
```sql
92+
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`) VALUES
93+
('NOME IMPOSTAZIONE', '', 'TIPO IMPOSTAZIONE', 1, 'SEZIONE');
94+
95+
INSERT INTO `zz_settings_lang` (`id_lang`, `id_record`, `title`, `help`) VALUES
96+
(1, (SELECT MAX(`id`) FROM `zz_settings`), 'TITOLO IMPOSTAZIONE ITALIANO', ''),
97+
(2, (SELECT MAX(`id`) FROM `zz_settings`), 'TITOLO IMPOSTAZIONE INGLESE', '');
98+
```
99+
26100
## Note
27101

28102
Malgrado una buona parte del codice ufficiale non segua completamente queste buone pratiche, è consigliato l'implementazione di queste linee guida per nuove funzioni e strutture mentre il sistema di base viene lentamente standardizzato.

0 commit comments

Comments
 (0)