Classi per la configurazione upload
Cristiano Magro
2019-07-09 4664b779371a1497134b77c771a7d4eef2f775ec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
/**
 * Costruzione di un filtro
 * User: Cristiano Magro
 * Date: 09/07/2019
 */
 
class FilterExt
{
    private $titolo;
    private $extensions;
 
    public function __construct($titolo = null, $ext = null)
    {
        $this->titolo = $titolo;
        $this->extensions[$ext] = $ext;
    }
 
    /**
     * Costruisco la struttura json del filtro.
     * La lista viene collassata in una stringa
     * @return string struttura json del filtro
     */
    public function getFilter()
    {
        $new = new stdClass();
        $new->title = $this->titolo;
 
        //riordino le chiavi
        sort($this->extensions);
 
        $new->extensions = implode(',', $this->extensions);
 
        return json_encode($new);
    }
 
    /**
     * Aggiungo alla lista una estensione.
     * @param string $newExt
     * @return FilterExt
     */
    public function addExt($newExt)
    {
        $this->extensions[$newExt] = $newExt;
        return $this;
    }
 
    /**
     * @return string Titolo del filtro
     */
    public function getTitolo()
    {
        return $this->titolo;
    }
 
    public function getFilterObj()
    {
        return json_decode($this->getFilter());
    }
}