/
Tables.php
55 lines (47 loc) · 1.5 KB
/
Tables.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
<?php
namespace Evoke\Element\Admin;
class Tables extends \Evoke\Element\Base
{
public function __construct(Array $setup)
{
$setup += array('Tables' => NULL,
'Translator' => NULL);
if (!isset($setup['Tables']))
{
throw new \InvalidArgumentException(__METHOD__ . ' needs Tables');
}
if (!$setup['Translator'] instanceof \Evoke\Core\Translator)
{
throw new \InvalidArgumentException(
__METHOD__ . ' needs Translator');
}
$adminTableEntries = array();
foreach($setup['Tables'] as $name)
{
$button = array(
array('a',
array('class' => 'Table_Button',
'href' => '/admin/' . strtolower($name) . '.php?' .
$setup['Translator']->getLanguageHTTPQuery()),
$setup['Translator']->get('Table_' . $name, __FILE__))));
$description = array(
array('div',
array('class' => 'Table_Description'),
$setup['Translator']->get(
'Table_' . $name . '_Description', __FILE__)));
$adminTableEntries[] =
array('div',
array('class' => 'Admin_Table_Entry'),
array(array('div',
array('class' => 'Table_Button_Div'),
$button),
array('div',
array('class' => 'Table_Description_Div'),
$description)));
}
parent::__construct(array('div',
array('class' => 'Admin_Tables'),
$adminTableEntries));
}
}
// EOF