Now we can get a list of the blocks being on display in the course page.

Could be used by one block to detect the existence of another, for example.
This commit is contained in:
defacer 2004-05-21 11:06:49 +00:00
parent c5507e52f4
commit 0784eb7ef1
2 changed files with 26 additions and 0 deletions

View File

@ -109,6 +109,9 @@
$missingblocks = array();
$recblocks = get_records('blocks','visible','1');
// Note down which blocks are going to get displayed
blocks_used($allblocks, $recblocks);
if($editing && $recblocks) {
foreach($recblocks as $recblock) {
// If it's not hidden or displayed right now...
@ -131,6 +134,11 @@
}
} else {
$USER->editing = false;
// Note down which blocks are going to get displayed
$allblocks = array_merge($leftblocks, $rightblocks);
$recblocks = get_records('blocks','visible','1');
blocks_used($allblocks, $recblocks);
}
$SESSION->fromdiscussion = "$CFG->wwwroot/course/view.php?id=$course->id";

View File

@ -889,4 +889,22 @@ function blocks_get_block_ids ($blockinfo) {
//Just call this with the appropiate parammeters.
return blocks_get_default_blocks(NULL,$blockinfo);
}
// This is used to register the blocks that are displayed in the course page.
// Set in course/view.php, and read from any other place.
function blocks_used($blocks = NULL, $records = NULL) {
static $used = NULL;
if(!empty($blocks) && !empty($records)) {
$used = array();
foreach($blocks as $val) {
if($val > 0 && isset($records[$val])) {
$used[] = $records[$val]->name;
}
}
}
return $used;
}
?>