You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: per-sviluppatori/structure/moduli/README.md
+68-2Lines changed: 68 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,14 +28,30 @@ Il codice sorgente di ogni modulo di OpenSTAManager è all'interno di un percors
28
28
```
29
29
.
30
30
└── modules
31
-
└── modulo
31
+
└── {modulo}
32
+
└── ajax
33
+
├── complete.php
34
+
├── search.php
35
+
└── select.php
36
+
└── modals
37
+
└── {modal}.php
38
+
└── plugins
39
+
└── {plugin}.php
40
+
└── src
41
+
└── {object}.php
32
42
├── actions.php
33
43
├── add.php
44
+
├── bulk.php
45
+
├── buttons.php
34
46
├── controller_after.php
35
47
├── controller_before.php
36
48
├── edit.php
37
49
├── init.php
38
-
└── modutil.php
50
+
├── modutil.php
51
+
├── validation.php
52
+
└── variables.php
53
+
54
+
Il nome dei file contenenti le parentesi graffe {} possono assumere qualsiasi valore.
39
55
```
40
56
41
57
Il gestionale supporta in modo nativo questa struttura, che può essere ampliata e personalizzata secondo le proprie necessità: si consiglia pertanto di analizzare i moduli **Iva**, **Dashboard** e **Contratti** per esempi di diversa complessità.
@@ -44,6 +60,36 @@ Il gestionale supporta in modo nativo questa struttura, che può essere ampliata
44
60
**Attenzione**: la presenza dei file sopra indicati è necessaria esclusivamente per i _moduli fisici_, cioè moduli che presentano la necessità di interagire con il codice sorgente e modificare i dati del gestionale. Per moduli presenti esclusivamente a livello di database (per sempio, **Movimenti**), si veda la sezione [Database](./#database).
45
61
{% endhint %}
46
62
63
+
### 📒 ajax/complete.php
64
+
65
+
Il file `ajax/complete.php` contiene diversi template HTML che fanno riferimento al modulo e sono gestiti tramite il parametro `op` che permette di identificare quale template viene richiesto.
66
+
67
+
Questi template possono essere richiamati da qualsiasi file anche al di fuori del modulo corrispondente.
68
+
69
+
### 📒 ajax/search.php
70
+
71
+
Il file `ajax/search.php` si occupa di estrarre le informazioni necessarie per la ricerca globale del modulo di riferimento.
72
+
73
+
Questo avviene tramite l'esecuzione di una query e la visualizzazione in HTML dei risultati ottenuti.
74
+
75
+
### 📒 ajax/select.php
76
+
77
+
l file `ajax/select.php` contiene le query che fanno riferimento al modulo per quanto riguarda la valorizzazione dei campi input select (menù a tendina), sono gestiti tramite il parametro `ajax-source` che permette di identificare quale query viene richiesta.
78
+
79
+
Queste query possono essere richiamate via ajax tramite valorizzando nel campo input l'attributo `ajax-source` da qualsiasi file anche al di fuori del modulo corrispondente.
80
+
81
+
### 📒 modals/{modal}.php
82
+
83
+
l file `modals/{modal}.php` contiene il template HTML dedicato alla visualizzazione di una specifica pop-up richiamata nel modulo.
84
+
85
+
### 📒 plugins/{plugins}.php
86
+
87
+
l file `plugins/{plugin}.php` contiene lo script per la gestione di un plugin del modulo di riferimento, in caso di un plugin articolato in più file è necessario utilizzare il percorso `plugins/` specifico.
88
+
89
+
### 📒 src/{object}.php
90
+
91
+
l file `src/{object}.php` permette la gestione e la creazione di oggetti Eloquent del modulo andando a definire le varie funzioni specifiche dell'oggetto.
92
+
47
93
### 📒 actions.php
48
94
49
95
Il file `actions.php` gestisce tutte le operazioni supportate dal modulo.
@@ -60,6 +106,16 @@ In base alla configurazione del modulo nel database, il file `edit.php` può ass
60
106
61
107
**Attenzione**: il progetto individua in automatico la presenza del file `add.php` e agisce di conseguenza per permettere o meno l'inserimento di nuovi _record_. {: .notice--danger}
62
108
109
+
### 📒 bulk.php
110
+
111
+
Il file `bulk.php` si occupa di gestire le **azioni di gruppo** accessibili nel modulo che vengono visualizzate sotto alla tabella principale.
112
+
113
+
Il file è formato da due parti, la prima contiene le operazioni di gruppo che vengono effettuate, sempre gestite dal parametro `op`, mentre la seconda parte contiene il template per la visualizzazione all'interno del modulo.
114
+
115
+
### 📒 buttons.php
116
+
117
+
Il file `buttons.php` viene incluso nel file `edit.php` e viene utilizzato per mostrare nella parte superiore della schermata (in fase di modifica record) i pulsanti/avvisi definiti nel file.
118
+
63
119
### 📒 init.php
64
120
65
121
Il file `init.php` si occupa di individuare le informazioni principali utili all'identificazione e alla modifica dei singoli elementi del modulo.
@@ -78,6 +134,16 @@ Il file `modutil.php` viene utilizzato per definire le funzioni PHP specifiche d
78
134
79
135
Si noti che un modulo non è necessariamente limitato all'utilizzo del proprio file `modutil.php`: come avviene per esempio in **Fatture** e **Interventi**, risulta possibile richiamare file di questa tipologia da altri moduli (in questo caso, da **Articoli** per la gestione delle movimentazioni di magazzino).
80
136
137
+
### 📒 validation.php
138
+
139
+
Il file `validation.php` viene utilizzato per effettuare controlli di validazione su un specifico campo input.
140
+
141
+
Per richiamare la validazione è necessario inserire l'attributo `validation` nel campo input con il nome del controllo da effettuare.
142
+
143
+
### 📒 variables.php
144
+
145
+
Il file `variables.php` contiene le variabili che possono essere utilizzate nei template delle email per la sostituzione automatica in base al record del modulo.
146
+
81
147
## 📒 Database
82
148
83
149
All'interno del database del progetto, le tabelle con il suffisso `zz` sono generalmente dedicate alla gestione delle funzioni di base del gestionale.
0 commit comments