Skip to content

Commit ce93ea5

Browse files
MatteoPistorellogitbook-bot
authored andcommitted
GitBook: [#5] No subject
1 parent 46fad5c commit ce93ea5

1 file changed

Lines changed: 68 additions & 2 deletions

File tree

per-sviluppatori/structure/moduli/README.md

Lines changed: 68 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,30 @@ Il codice sorgente di ogni modulo di OpenSTAManager è all'interno di un percors
2828
```
2929
.
3030
└── 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
3242
├── actions.php
3343
├── add.php
44+
├── bulk.php
45+
├── buttons.php
3446
├── controller_after.php
3547
├── controller_before.php
3648
├── edit.php
3749
├── 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.
3955
```
4056

4157
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
4460
**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).
4561
{% endhint %}
4662

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+
4793
### 📒 actions.php
4894

4995
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
60106

61107
**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}
62108

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+
63119
### 📒 init.php
64120

65121
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
78134

79135
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).
80136

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+
81147
## 📒 Database
82148

83149
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

Comments
 (0)