Proyectos de Subversion Moodle

Rev

Rev 399 | Rev 401 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 399 Rev 400
Línea 4... Línea 4...
4
{
4
{
5
    public $user;
5
    public $user;
6
    public $userID;
6
    public $userID;
7
    public $currentUser;
7
    public $currentUser;
8
    public $blockManager;
8
    public $blockManager;
9
    public $blockExists;
-
 
10
    public $blockNames;
9
    public $blockNames;
11
    public $regionName;
10
    public $regionName;
Línea 12... Línea 11...
12
 
11
 
13
    public function __construct($regionName, $blockNames)
12
    public function __construct($regionName, $blockNames)
Línea 36... Línea 35...
36
        if (!in_array($this->regionName, $this->blockManager->get_regions())) {
35
        if (!in_array($this->regionName, $this->blockManager->get_regions())) {
37
            $this->blockManager->add_region($this->regionName);
36
            $this->blockManager->add_region($this->regionName);
38
        }
37
        }
39
    }
38
    }
Línea -... Línea 39...
-
 
39
 
40
 
40
 
41
    public function validateIfExistBlocks()
41
    public function addBlocksIfNotExist()
42
    {
42
    {
43
        $blocks = $this->blockManager->get_blocks_for_region($this->regionName);
43
        $blocks = $this->blockManager->get_blocks_for_region($this->regionName);
Línea 44... Línea -...
44
        $blockNamesInBlocks = array_map(fn($block) => $block->name(), $blocks);
-
 
45
 
-
 
46
        $this->blockExists = true;
44
        $blockNamesInBlocks = array_map(fn($block) => $block->name(), $blocks);
47
 
45
 
48
        foreach ($this->blockNames as $blockName) {
-
 
49
            if (!in_array($blockName, $blockNamesInBlocks)) {
-
 
50
                $this->blockExists = false;
-
 
51
                break;
-
 
52
            }
-
 
53
        }
-
 
54
 
-
 
55
        return $this->blockExists;
-
 
56
    }
-
 
57
 
-
 
58
 
-
 
59
    public function addBlocksIfNotExist()
-
 
60
    {
-
 
61
        if (!$this->blockExists) {
46
        foreach ($this->blockNames as $blockName) {
62
            foreach ($this->blockNames as $blockName) {
47
            if (!in_array($blockName, $blockNamesInBlocks)) {
63
                $this->blockManager->add_block($blockName, $this->regionName, 1, true);
48
                $this->blockManager->add_block($blockName, $this->regionName, 1, true);
64
            }
49
            }
Línea 71... Línea 56...
71
 
56
 
Línea 72... Línea 57...
72
        $this->addRegion(); // Validar si la región existe y añadirla en caso de no existir
57
        $this->addRegion(); // Validar si la región existe y añadirla en caso de no existir
Línea 73... Línea -...
73
 
-
 
74
        $this->blockManager->load_blocks(true); // Cargar bloques en la región
58
 
Línea 75... Línea 59...
75
 
59
        $this->blockManager->load_blocks(true); // Cargar bloques en la región
76
        $exist = $this->validateIfExistBlocks(); // Valida si el listado de bloques pasados por parametros coincide con los bloques cargados
-
 
Línea 77... Línea 60...
77
        // $this->addBlocksIfNotExist(); // Agrega los bloques en caso de no coincidir
60
 
78
 
61
        $this->addBlocksIfNotExist(); // Agrega los bloques en caso de no coincidir
79
        $blocks = $this->blockManager->get_blocks_for_region($this->regionName);
62