Proyectos de Subversion Moodle

Rev

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

Rev 290 Rev 291
Línea 37... Línea 37...
37
            $this->addRegion($this->regionName);
37
            $this->addRegion($this->regionName);
Línea 38... Línea 38...
38
 
38
 
39
            // Validar si los bloques existen
39
            // Validar si los bloques existen
40
            if (!$this->validateIfExistBlocks($this->regionName)) {
40
            if (!$this->validateIfExistBlocks($this->regionName)) {
41
                // Añadir bloques si no existen
41
                // Añadir bloques si no existen
42
                $this->addBlocksIfNotExist('courses', $this->regionName);
42
                $this->addBlocksIfNotExist($this->regionName);
43
            }
43
            }
44
        }
44
        }
Línea 45... Línea 45...
45
    }
45
    }
Línea 84... Línea 84...
84
 
84
 
85
        // Si todos los bloques existen y son únicos, devolvemos true.
85
        // Si todos los bloques existen y son únicos, devolvemos true.
86
        return true;
86
        return true;
Línea 87... Línea 87...
87
    }
87
    }
88
 
88
 
89
    public function addBlocksIfNotExist($page = 'courses', $region)
89
    public function addBlocksIfNotExist($page = 'courses')
90
    {
90
    {
91
        // Obtener los bloques actuales en todas las regiones
91
        // Obtener los bloques actuales en todas las regiones
92
        $allBlocks = [];
92
        $allBlocks = [];
Línea 106... Línea 106...
106
        // Añadir los bloques si no existen en la región actual
106
        // Añadir los bloques si no existen en la región actual
107
        foreach ($this->blockNames as $blockName) {
107
        foreach ($this->blockNames as $blockName) {
108
            $expectedBlockClass = 'block_' . $blockName;
108
            $expectedBlockClass = 'block_' . $blockName;
Línea 109... Línea 109...
109
 
109
 
110
            // Verificar si el bloque es único y no está marcado como duplicado
110
            // Verificar si el bloque es único y no está marcado como duplicado
111
            if (!isset($allBlocks[$expectedBlockClass]) || $allBlocks[$expectedBlockClass] === $region) {
111
            if (!isset($allBlocks[$expectedBlockClass]) || $allBlocks[$expectedBlockClass] === $this->regionName) {
112
                // Solo añadir el bloque si no está en la lista de bloques existentes de la región actual
112
                // Solo añadir el bloque si no está en la lista de bloques existentes de la región actual
113
                if (!$this->blockExistsInRegion($expectedBlockClass, $region)) {
113
                if (!$this->blockExistsInRegion($expectedBlockClass, $this->regionName)) {
114
                    $this->blockManager->add_block($blockName, $region, 1, true);
114
                    $this->blockManager->add_block($blockName, $this->regionName, 1, true);
115
                }
115
                }
116
            }
116
            }
117
        }
117
        }