15
15
* $sezione_x = get_option('sezione_x)
16
16
* $opzione_y = $sezione_x['opzione_y]
17
17
*/
18
- abstract class Config
18
+ abstract class config
19
19
{
20
- /**
21
- * Opzionalmente, specifica i valori di default da
20
+ /**
21
+ * Opzionalmente, specifica i valori di default da
22
22
* quando non viene trovata un'opzione a database.
23
23
*
24
24
* Esempio:
25
25
* return [
26
- * 'tavoli.management_mode' => 'standard',
27
- * 'tavoli.default_staff_id' => null,
28
- * 'impostazioni_ristorante.max_capacity_per_turno' => 50,
29
- * 'impostazioni_sistema.max_giorni_gestione_turni' => 20,
30
- * ];
26
+ * 'tavoli.management_mode' => 'standard',
27
+ * 'tavoli.default_staff_id' => null,
28
+ * 'impostazioni_ristorante.max_capacity_per_turno' => 50,
29
+ * 'impostazioni_sistema.max_giorni_gestione_turni' => 20,
30
+ * ];
31
31
*
32
32
* NOTA BENE: Volendo qui puoi anche inserire opzioni che non
33
33
* esistono a database o nelle pagine di settings. È un buon modo
34
34
* per avere un controllo centralizzato di quelle opzioni che non
35
35
* hai ancora esposto all'utente.
36
- */
37
- public static function getDefaults (): array
36
+ */
37
+ public static function getDefaults (): array
38
38
{
39
39
return [];
40
40
}
@@ -49,36 +49,36 @@ public static function getDefaults(): array
49
49
*/
50
50
protected static $ db_prefix = '' ;
51
51
52
- /**
53
- * Accedi alle opzioni senza curarti di dove sono immagazzinate.
54
- *
55
- * Ad esempio, per accedere all'elemento foo contenuto nell'opzione
56
- * serializzata bar, basta chiamare config( 'bar.foo' ). Per accedere
57
- * all'intera opzione serializzata, basta chiamare config( 'bar' ).
58
- *
59
- * Se l'opzione non esiste, verrà ritornato il valore di default
60
- * dato come secondo argomento; se questi è null, verrà ritornato
61
- * il valore di default definito in getDefaults; se non esiste
62
- * nemmeno questo, verrà ritornato null.
63
- *
64
- * Il modello è quello della funzione config di Laravel:
65
- * https://laravel.com/docs/8.x/helpers#method-config
66
- *
67
- * @throws Exception Quando viene passata una stringa vuota o invalida.
68
- *
69
- * @todo Aggiungi ricorsività
70
- */
71
- public static function config ( string $ query , $ default = null )
72
- {
73
- $ tokens = explode ( '. ' , $ query );
52
+ /**
53
+ * Accedi alle opzioni senza curarti di dove sono immagazzinate.
54
+ *
55
+ * Ad esempio, per accedere all'elemento foo contenuto nell'opzione
56
+ * serializzata bar, basta chiamare config( 'bar.foo' ). Per accedere
57
+ * all'intera opzione serializzata, basta chiamare config( 'bar' ).
58
+ *
59
+ * Se l'opzione non esiste, verrà ritornato il valore di default
60
+ * dato come secondo argomento; se questi è null, verrà ritornato
61
+ * il valore di default definito in getDefaults; se non esiste
62
+ * nemmeno questo, verrà ritornato null.
63
+ *
64
+ * Il modello è quello della funzione config di Laravel:
65
+ * https://laravel.com/docs/8.x/helpers#method-config
66
+ *
67
+ * @throws Exception Quando viene passata una stringa vuota o invalida.
68
+ *
69
+ * @todo Aggiungi ricorsività
70
+ */
71
+ public static function config ( string $ query , $ default = null )
72
+ {
73
+ $ tokens = explode ( '. ' , $ query );
74
74
75
- $ option_name = $ tokens [0 ];
75
+ $ option_name = $ tokens [0 ];
76
76
77
- if ( ! $ option_name ) {
78
- throw new Exception ( 'Passato valore vuoto o invalido a config ' , 1 );
79
- }
77
+ if ( ! $ option_name ) {
78
+ throw new Exception ( 'Passato valore vuoto o invalido a config ' , 1 );
79
+ }
80
80
81
- $ default = $ default ?? self ::getDefaultValue ( $ query );
81
+ $ default = $ default ?? self ::getDefaultValue ( $ query );
82
82
83
83
$ option_key = $ option_name ;
84
84
@@ -88,21 +88,21 @@ public static function config( string $query, $default = null )
88
88
89
89
$ option_value = get_option ( $ option_key , $ default );
90
90
91
- if ( count ( $ tokens ) === 1 ) {
92
- return $ option_value ;
93
- }
91
+ if ( count ( $ tokens ) === 1 ) {
92
+ return $ option_value ;
93
+ }
94
94
95
- return $ option_value [ $ tokens [1 ] ] ?? $ default ;
96
- }
95
+ return $ option_value [ $ tokens [1 ] ] ?? $ default ;
96
+ }
97
97
98
- /**
99
- * Data un'opzione, ritorna il suo valore di default;
100
- * se non è definito, ritorna null
101
- */
102
- public static function getDefaultValue ( string $ query )
103
- {
104
- $ defaults = self ::getDefaults ();
105
-
106
- return $ defaults [ $ query ] ?? null ;
107
- }
98
+ /**
99
+ * Data un'opzione, ritorna il suo valore di default;
100
+ * se non è definito, ritorna null
101
+ */
102
+ public static function getDefaultValue ( string $ query )
103
+ {
104
+ $ defaults = self ::getDefaults ();
105
+
106
+ return $ defaults [ $ query ] ?? null ;
107
+ }
108
108
}
0 commit comments