Proyectos de Subversion Moodle

Rev

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

Rev 388 Rev 389
Línea 38... Línea 38...
38
        }
38
        }
39
    }
39
    }
Línea 40... Línea 40...
40
 
40
 
41
    public function validateIfExistBlocks()
41
    public function validateIfExistBlocks()
-
 
42
    {
42
    {
43
        // Obtener los bloques para la región especificada
-
 
44
        $blocks = $this->blockManager->get_blocks_for_region($this->regionName);
-
 
45
 
-
 
46
        // Verificamos que hay bloques disponibles y que el array de blockNames no esté vacío
-
 
47
        if (empty($this->blockNames) || empty($blocks)) {
-
 
48
            $this->blockExists = false; // No hay bloques que validar
-
 
49
            return $this->blockExists;
-
 
50
        }
-
 
51
 
-
 
52
        // Extraer los nombres de los bloques en un array
-
 
53
        $blockNamesInBlocks = array_map(fn($block) => $block->name(), $blocks);
-
 
54
 
43
        $blocks = $this->blockManager->get_blocks_for_region($this->regionName);
55
        // Asumimos que todos los bloques existen inicialmente
Línea -... Línea 56...
-
 
56
        $this->blockExists = true;
44
        $this->blockExists = true;
57
 
45
 
-
 
46
        foreach ($this->blockNames as $blockName) {
-
 
47
            $blockFound = false;
-
 
48
 
-
 
49
            foreach ($blocks as $block) {
58
        // Verificar si cada bloque en blockNames existe en blockNamesInBlocks
50
                $blockclass = $block->name();
-
 
51
                if ($blockclass == $blockName) {
-
 
52
                    $blockFound = true;
-
 
53
                    break;
-
 
54
                }
-
 
55
            }
59
        foreach ($this->blockNames as $blockName) {
56
            if (!$blockFound) {
60
            if (!in_array($blockName, $blockNamesInBlocks, true)) {
57
                $this->blockExists = false;
61
                $this->blockExists = false; // Si falta algún bloque, lo marcamos
58
                break; // Si un bloque no existe, no es necesario seguir buscando
62
                break; // Salimos al encontrar el primer bloque faltante
Línea 59... Línea 63...
59
            }
63
            }
60
        }
64
        }