-
Notifications
You must be signed in to change notification settings - Fork 39
/
Block.php
59 lines (45 loc) · 1.25 KB
/
Block.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
/**
* Command class for block
*
* @author Matthew McNaney <mcnaney at gmail dot com>
* @version $Id$
*/
\phpws\PHPWS_Core::initModClass('block', 'Block_Item.php');
class Block {
public static function show()
{
Block::showAllBlocks();
$key = \Canopy\Key::getCurrent();
if (empty($key) || $key->isDummy(true)) {
return;
}
Block::showBlocks($key);
}
public static function showAllBlocks()
{
$key = new \Canopy\Key;
$key->id = -1;
Block::showBlocks($key);
}
public static function showBlocks($key)
{
$db = new PHPWS_DB('block');
$db->addWhere('block_pinned.key_id', $key->id);
$db->addWhere('id', 'block_pinned.block_id');
\Canopy\Key::restrictView($db, 'block');
$result = $db->getObjects('Block_Item');
if (PHPWS_Error::isError($result)) {
PHPWS_Error::log($result);
return NULL;
}
if (empty($result)) {
return NULL;
}
foreach ($result as $block) {
$block->setPinKey($key);
Layout::add($block->view(), 'block', $block->getContentVar());
$GLOBALS['Current_Blocks'][$block->id] = TRUE;
}
}
}