Proyectos de Subversion Moodle

Rev

Rev 208 | Rev 210 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
177 ariadna 1
<?php
2
require_once(__DIR__ . '/cesa.php');
183 ariadna 3
 
177 ariadna 4
class StaticsBlocks extends Cesa
5
{
209 ariadna 6
    public function __construct($title)
177 ariadna 7
    {
183 ariadna 8
        // Ahora pasamos un array de varios bloques en lugar de un solo bloque
209 ariadna 9
        parent::__construct($title, ['cesa_course_rating', 'comments'], 'side-pre');
177 ariadna 10
    }
11
 
187 ariadna 12
    public function renderBlocks()
177 ariadna 13
    {
187 ariadna 14
        global $PAGE, $OUTPUT;
177 ariadna 15
 
187 ariadna 16
        // Establecemos la URL del bloque estático (si es necesario)
209 ariadna 17
        // $PAGE->set_url('/cesa/statics_blocks.php', array('userid' => $this->userID));
183 ariadna 18
 
19
        // Añadimos la región si no existe
177 ariadna 20
        $this->addRegion();
21
 
183 ariadna 22
        // Cargamos los bloques existentes
177 ariadna 23
        $this->blockManager->load_blocks(true);
24
 
183 ariadna 25
        // Validamos si los bloques existen y los agregamos si es necesario
26
        $this->validateIfExistBlocks();
209 ariadna 27
        $this->addBlocksIfNotExist($this->title);
177 ariadna 28
 
187 ariadna 29
        // Renderizamos los bloques en la región específica, sin header ni footer
30
        $blocksView = $OUTPUT->blocks_for_region($this->regionName);
177 ariadna 31
 
187 ariadna 32
        return $blocksView;
177 ariadna 33
    }
209 ariadna 34
 
35
    public function addBlocksIfNotExist($page = 'courses')
36
    {
37
        if (!$this->blockExists) {
38
            foreach ($this->blockNames as $blockName) {
39
                $this->blockManager->add_block($blockName, $this->regionName, 1, true);
40
            }
41
            exit;
42
        }
43
    }
177 ariadna 44
}
45
 
193 ariadna 46
/* // Instanciamos y renderizamos la página con los bloques estáticos
177 ariadna 47
$statics_blocks = new StaticsBlocks();
193 ariadna 48
echo $statics_blocks->renderBlocks(); */