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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
<?php
class Application_Form_BootmenuEntriesAdd extends Zend_Form
{
private $bootoslist;
private $configlist;
private $maxorder;
public function setBootoslist($bootoslist){
$this->bootoslist = $bootoslist;
}
public function setMaxorder($maxorder){
$this->maxorder = $maxorder;
}
public function setConfiglist($configlist){
$this->configlist = $configlist;
}
public function init()
{
if(!isset($_POST['bootosID'])){
$firstbootos = array_slice($this->bootoslist,0,1);
$_POST['bootosID'] = $firstbootos[0]->getID();
}
$this->setName("BootMenuEntryAdd");
$this->setMethod('post');
$this->addElement('text', 'title', array(
'filters' => array('StringTrim'),
'validators' => array(
array('StringLength', false, array(0, 50)),
),
'required' => true,
'label' => 'Title:',
));
$bootosfield = $this->createElement('select','bootosID');
$bootosfield ->setLabel('BootOs:');
$bootosfield->setAttrib('onChange', "document.getElementById('BootMenuEntryAdd').submit();");
if(count($this->bootoslist)>0){
foreach($this->bootoslist as $bootos => $b){
$bootosfield->addMultiOption($b->getID(), $b->getTitle());
}
}
$bootosfield->setRegisterInArrayValidator(false);
$this->addElement($bootosfield);
$this->addElement('textarea', 'kcl', array(
'filters' => array('StringTrim'),
'validators' => array(
array('StringLength', false, array(0, 50)),
),
'required' => false,
'cols' => 50,
'rows' => 5,
'label' => 'KCL:',
'value' => $this->bootoslist[$_POST['bootosID']]->getDefaultkcl()
));
$defaultconfigid = $this->bootoslist[$_POST['bootosID']]->getConfigID();
$configfield = $this->createElement('select','configID');
$configfield->setLabel('Config:');
$configfield->addMultiOption($defaultconfigid, 'default');
if(count($this->configlist)>0){
foreach($this->configlist as $config => $c){
if($c->getID() != $defaultconfigid)
$configfield->addMultiOption($c->getID(), $c->getTitle());
}
}
$configfield->setRegisterInArrayValidator(false);
$this->addElement($configfield);
$orderfield = $this->createElement('select','order');
$orderfield ->setLabel('Position:');
for ($i = 0; $i <= $this->maxorder; $i++) {
$orderfield->addMultiOption($i, $i+1);
}
$orderfield->setRegisterInArrayValidator(false);
$this->addElement($orderfield);
$this->addElement('submit', 'addbootmenuentry', array(
'required' => false,
'ignore' => true,
'label' => 'Add Bootmenuentry',
));
$this->addElement('button', 'Cancel', array(
'onclick' => 'self.location="/bootmenu"'
));
}
}
|