33aef7beb98723b8f6291051d47c17759fc13163
[racktables] / wwwroot / inc / navigation.php
1 <?php
2
3 # This file is a part of RackTables, a datacenter and server room management
4 # framework. See accompanying file "COPYING" for the full copyright and
5 # licensing information.
6
7 /*
8
9 This file contains a series of arrays that define RackTables as a tree
10 of discrete views ("pages"). Each such page may be in turn split info a set of
11 "tabs". In the latter case it is also possible to define a set of "operations"
12 for a particular combination of page and tab (location). These operations
13 represent actions requested by the user and often expect additional data
14 provided to be executed correctly (constraints on the additional data are
15 defined and validated in ophandlers.php).
16
17 Every page split into tabs must define a tab internally named "default". It is
18 assumed that this default tab never defines any operations and thus remains
19 read-only.
20
21 */
22
23 $page = array();
24 $tab = array();
25 $trigger = array();
26
27 $ophandler = array();
28 $tabhandler = array();
29 $hook = array();
30 $ophandlers_stack = array();
31 $tabhandlers_stack = array();
32 $hooks_stack = array();
33
34 $delayauth = array();
35 $svghandler = array();
36 $ajaxhandler = array();
37
38 /*
39 Syntax:
40 // Require file.php when processing tab "tab" of the page "page":
41 $interface_requires['page-tab'] = array ('file.php');
42
43 // Same, different notation:
44 $interface_requires['page-tab'] = 'file.php';
45
46 // Require three files for every tab of the page "page":
47 $interface_requires['page-*'] = array ('file1.php', 'file2.php', 'file3.php');
48 */
49 $interface_requires = array();
50
51 $indexlayout = array
52 (
53 array ('rackspace', 'depot', 'ipv4space', 'ipv6space'),
54 array ('files', 'reports', 'ipv4slb', '8021q'),
55 array ('config', 'objectlog', 'virtual', 'cables'),
56 );
57
58 $page['index']['title'] = 'Main page';
59 $page['index']['handler'] = 'renderIndex';
60
61 $page['rackspace']['title'] = 'Rackspace';
62 $page['rackspace']['parent'] = 'index';
63 $tab['rackspace']['default'] = 'Browse';
64 $tab['rackspace']['editlocations'] = 'Manage locations';
65 $tab['rackspace']['editrows'] = 'Manage rows';
66 $tab['rackspace']['history'] = 'History';
67 $tabhandler['rackspace']['default'] = 'renderRackspace';
68 $tabhandler['rackspace']['editlocations'] = 'renderRackspaceLocationEditor';
69 $tabhandler['rackspace']['editrows'] = 'renderRackspaceRowEditor';
70 $tabhandler['rackspace']['history'] = 'renderRackspaceHistory';
71 $ophandler['rackspace']['editlocations']['addLocation'] = 'addLocation';
72 $ophandler['rackspace']['editlocations']['updateLocation'] = 'updateLocation';
73 $ophandler['rackspace']['editlocations']['deleteLocation'] = 'deleteLocation';
74 $ophandler['rackspace']['editrows']['addRow'] = 'addRow';
75 $ophandler['rackspace']['editrows']['updateRow'] = 'updateRow';
76 $ophandler['rackspace']['editrows']['deleteRow'] = 'deleteRow';
77
78 $page['depot']['parent'] = 'index';
79 $page['depot']['title'] = 'Objects';
80 $tab['depot']['default'] = 'Browse';
81 $tab['depot']['addmore'] = 'Add more';
82 $tabhandler['depot']['default'] = 'renderDepot';
83 $tabhandler['depot']['addmore'] = 'renderAddMultipleObjectsForm';
84 $ophandler['depot']['addmore']['addObjects'] = 'addMultipleObjects';
85 $ophandler['depot']['addmore']['addLotOfObjects'] = 'addLotOfObjects';
86 $ophandler['depot']['addmore']['deleteObject'] = 'deleteObject';
87
88 $page['location']['bypass'] = 'location_id';
89 $page['location']['bypass_type'] = 'natural';
90 $page['location']['parent'] = 'rackspace';
91 $tab['location']['default'] = 'View';
92 $tab['location']['edit'] = 'Properties';
93 $tab['location']['log'] = 'Log';
94 $tab['location']['tags'] = 'Tags';
95 $tab['location']['files'] = 'Files';
96 $tabhandler['location']['default'] = 'renderLocationPage';
97 $tabhandler['location']['edit'] = 'renderEditLocationForm';
98 $tabhandler['location']['log'] = 'renderObjectLogEditor';
99 $tabhandler['location']['tags'] = 'renderEntityTags';
100 $tabhandler['location']['files'] = 'renderFilesForEntity';
101 $trigger['location']['tags'] = 'trigger_tags';
102 $ophandler['location']['edit']['clearSticker'] = 'clearSticker';
103 $ophandler['location']['edit']['updateLocation'] = 'updateLocation';
104 $ophandler['location']['edit']['deleteLocation'] = 'deleteLocation';
105 $ophandler['location']['log']['add'] = 'addObjectlog';
106 $ophandler['location']['log']['del'] = 'tableHandler';
107 $ophandler['location']['tags']['saveTags'] = 'saveEntityTags';
108 $ophandler['location']['files']['addFile'] = 'addFileToEntity';
109 $ophandler['location']['files']['linkFile'] = 'linkFileToEntity';
110 $ophandler['location']['files']['unlinkFile'] = 'unlinkFile';
111
112 $page['row']['bypass'] = 'row_id';
113 $page['row']['bypass_type'] = 'natural';
114 $page['row']['parent'] = 'rackspace';
115 $tab['row']['default'] = 'View';
116 $tab['row']['edit'] = 'Properties';
117 $tab['row']['editracks'] = 'Manage racks';
118 $tab['row']['newrack'] = 'Add new rack';
119 $tab['row']['log'] = 'Log';
120 $tab['row']['tagroller'] = 'Tag roller';
121 $tab['row']['files'] = 'Files';
122 $tabhandler['row']['default'] = 'renderRow';
123 $tabhandler['row']['edit'] = 'renderEditRowForm';
124 $tabhandler['row']['editracks'] = 'renderRackSortForm';
125 $tabhandler['row']['newrack'] = 'renderNewRackForm';
126 $tabhandler['row']['log'] = 'renderObjectLogEditor';
127 $tabhandler['row']['tagroller'] = 'renderTagRollerForRow';
128 $tabhandler['row']['files'] = 'renderFilesForEntity';
129 $ophandler['row']['edit']['clearSticker'] = 'clearSticker';
130 $ophandler['row']['edit']['deleteRow'] = 'deleteRow';
131 $ophandler['row']['edit']['updateRow'] = 'updateRow';
132 $ophandler['row']['newrack']['addRack'] = 'addRack';
133 $ophandler['row']['log']['add'] = 'addObjectlog';
134 $ophandler['row']['log']['del'] = 'tableHandler';
135 $ophandler['row']['tagroller']['rollTags'] = 'rollTags';
136 $ophandler['row']['files']['addFile'] = 'addFileToEntity';
137 $ophandler['row']['files']['linkFile'] = 'linkFileToEntity';
138 $ophandler['row']['files']['unlinkFile'] = 'unlinkFile';
139
140 $page['rack']['bypass'] = 'rack_id';
141 $page['rack']['bypass_type'] = 'natural';
142 $page['rack']['parent'] = 'row';
143 $tab['rack']['default'] = 'View';
144 $tab['rack']['edit'] = 'Properties';
145 $tab['rack']['log'] = 'Log';
146 $tab['rack']['design'] = 'Design';
147 $tab['rack']['problems'] = 'Problems';
148 $tab['rack']['tags'] = 'Tags';
149 $tab['rack']['files'] = 'Files';
150 $tabhandler['rack']['default'] = 'renderRackPage';
151 $tabhandler['rack']['edit'] = 'renderEditRackForm';
152 $tabhandler['rack']['log'] = 'renderObjectLogEditor';
153 $tabhandler['rack']['design'] = 'renderRackDesign';
154 $tabhandler['rack']['problems'] = 'renderRackProblems';
155 $tabhandler['rack']['tags'] = 'renderEntityTags';
156 $tabhandler['rack']['files'] = 'renderFilesForEntity';
157 $trigger['rack']['tags'] = 'trigger_tags';
158 $ophandler['rack']['design']['updateRack'] = 'updateRackDesign';
159 $ophandler['rack']['problems']['updateRack'] = 'updateRackProblems';
160 $ophandler['rack']['edit']['clearSticker'] = 'clearSticker';
161 $ophandler['rack']['edit']['updateRack'] = 'updateRack';
162 $ophandler['rack']['edit']['deleteRack'] = 'deleteRack';
163 $ophandler['rack']['edit']['cleanRack'] = 'cleanRack';
164 $ophandler['rack']['log']['add'] = 'addObjectlog';
165 $ophandler['rack']['log']['del'] = 'tableHandler';
166 $ophandler['rack']['tags']['saveTags'] = 'saveEntityTags';
167 $ophandler['rack']['files']['addFile'] = 'addFileToEntity';
168 $ophandler['rack']['files']['linkFile'] = 'linkFileToEntity';
169 $ophandler['rack']['files']['unlinkFile'] = 'unlinkFile';
170
171 $page['object']['bypass'] = 'object_id';
172 $page['object']['bypass_type'] = 'natural';
173 $page['object']['bypass_tabs'] = array ('hl_port_id', 'hl_ip');
174 $page['object']['parent'] = 'depot';
175 $tab['object']['default'] = 'View';
176 $tab['object']['edit'] = 'Properties';
177 $tab['object']['log'] = 'Log';
178 $tab['object']['rackspace'] = 'Rackspace';
179 $tab['object']['ports'] = 'Ports';
180 $tab['object']['ip'] = 'IP';
181 $tab['object']['nat4'] = 'NATv4';
182 $tab['object']['liveports'] = 'Live ports';
183 $tab['object']['livecdp'] = 'Live CDP';
184 $tab['object']['livelldp'] = 'Live LLDP';
185 $tab['object']['snmpportfinder'] = 'SNMP sync';
186 $tab['object']['editrspvs'] = 'VS links';
187 $tab['object']['editvslinks'] = 'VSG links';
188 $tab['object']['lvsconfig'] = 'keepalived.conf';
189 $tab['object']['autoports'] = 'AutoPorts';
190 $tab['object']['tags'] = 'Tags';
191 $tab['object']['files'] = 'Files';
192 $tab['object']['ucs'] = 'UCS';
193 $tab['object']['8021qorder'] = '802.1Q order';
194 $tab['object']['8021qports'] = '802.1Q ports';
195 $tab['object']['8021qsync'] = '802.1Q sync';
196 $tabhandler['object']['default'] = 'renderObject';
197 $tabhandler['object']['edit'] = 'renderEditObjectForm';
198 $tabhandler['object']['log'] = 'renderObjectLogEditor';
199 $tabhandler['object']['rackspace'] = 'renderRackSpaceForObject';
200 $tabhandler['object']['ports'] = 'renderPortsForObject';
201 $tabhandler['object']['ip'] = 'renderIPForObject';
202 $tabhandler['object']['nat4'] = 'renderNATv4ForObject';
203 $tabhandler['object']['liveports'] = 'renderPortsInfo';
204 $tabhandler['object']['livecdp'] = 'renderDiscoveredNeighbors';
205 $tabhandler['object']['livelldp'] = 'renderDiscoveredNeighbors';
206 $tabhandler['object']['snmpportfinder'] = 'renderSNMPPortFinder';
207 $tabhandler['object']['lvsconfig'] = 'renderLVSConfig';
208 $tabhandler['object']['autoports'] = 'renderAutoPortsForm';
209 $tabhandler['object']['tags'] = 'renderEntityTags';
210 $tabhandler['object']['files'] = 'renderFilesForEntity';
211 $tabhandler['object']['editrspvs'] = 'renderSLBEditTab';
212 $tabhandler['object']['editvslinks'] = 'renderTripletForm';
213 $tabhandler['object']['8021qorder'] = 'render8021QOrderForm';
214 $tabhandler['object']['8021qports'] = 'renderObject8021QPorts';
215 $tabhandler['object']['8021qsync'] = 'renderObject8021QSync';
216 $tabhandler['object']['ucs'] = 'renderEditUCSForm';
217 $trigger['object']['rackspace'] = 'trigger_rackspace';
218 $trigger['object']['ports'] = 'trigger_ports';
219 $trigger['object']['ip'] = 'trigger_ip';
220 $trigger['object']['nat4'] = 'trigger_natv4';
221 $trigger['object']['liveports'] = 'trigger_liveports';
222 $trigger['object']['livecdp'] = 'trigger_LiveCDP';
223 $trigger['object']['livelldp'] = 'trigger_LiveLLDP';
224 $trigger['object']['snmpportfinder'] = 'trigger_snmpportfinder';
225 $trigger['object']['editrspvs'] = 'trigger_isloadbalancer';
226 $trigger['object']['editvslinks'] = 'trigger_isloadbalancer';
227 $trigger['object']['lvsconfig'] = 'trigger_isloadbalancer';
228 $trigger['object']['autoports'] = 'trigger_autoports';
229 $trigger['object']['tags'] = 'trigger_tags';
230 $trigger['object']['8021qorder'] = 'trigger_object_8021qorder';
231 $trigger['object']['8021qports'] = 'trigger_object_8021qports';
232 $trigger['object']['8021qsync'] = 'trigger_object_8021qsync';
233 $trigger['object']['ucs'] = 'trigger_ucs';
234 $ophandler['object']['edit']['linkObjects'] = 'linkObjects';
235 $ophandler['object']['edit']['unlinkObjects'] = 'tableHandler';
236 $ophandler['object']['rackspace']['updateObjectAllocation'] = 'updateObjectAllocation';
237 $ophandler['object']['ports']['addPort'] = 'addPortForObject';
238 $ophandler['object']['ports']['editPort'] = 'editPortForObject';
239 $ophandler['object']['ports']['addMultiPorts'] = 'addMultiPorts';
240 $ophandler['object']['ports']['addBulkPorts'] = 'addBulkPorts';
241 $ophandler['object']['ports']['useup'] = 'tableHandler';
242 $ophandler['object']['ports']['delPort'] = 'tableHandler';
243 $ophandler['object']['ports']['deleteAll'] = 'tableHandler';
244 $ophandler['object']['ports']['renameAll'] = 'renameObjectPorts';
245 $ophandler['object']['ports']['unlinkPort'] = 'unlinkPort';
246 $ophandler['object']['ip']['upd'] = 'updIPAllocation';
247 $ophandler['object']['ip']['add'] = 'addIPAllocation';
248 $ophandler['object']['ip']['del'] = 'delIPAllocation';
249 $ophandler['object']['edit']['clearSticker'] = 'clearSticker';
250 $ophandler['object']['edit']['update'] = 'updateObject';
251 $ophandler['object']['edit']['resetObject'] = 'resetObject';
252 $ophandler['object']['log']['add'] = 'addObjectlog';
253 $ophandler['object']['log']['del'] = 'tableHandler';
254 $ophandler['object']['nat4']['addNATv4Rule'] = 'addPortForwarding';
255 $ophandler['object']['nat4']['delNATv4Rule'] = 'delPortForwarding';
256 $ophandler['object']['nat4']['updNATv4Rule'] = 'updPortForwarding';
257 $ophandler['object']['livecdp']['importDPData'] = 'importDPData';
258 $ophandler['object']['livelldp']['importDPData'] = 'importDPData';
259 $ophandler['object']['autoports']['generate'] = 'generateAutoPorts';
260 $ophandler['object']['tags']['saveTags'] = 'saveEntityTags';
261 $ophandler['object']['files']['addFile'] = 'addFileToEntity';
262 $ophandler['object']['files']['linkFile'] = 'linkFileToEntity';
263 $ophandler['object']['files']['unlinkFile'] = 'unlinkFile';
264 $ophandler['object']['editrspvs']['addLB'] = 'addLoadBalancer';
265 $ophandler['object']['editrspvs']['delLB'] = 'tableHandler';
266 $ophandler['object']['editrspvs']['updLB'] = 'tableHandler';
267 $ophandler['object']['editvslinks']['addLink'] = 'createTriplet';
268 $ophandler['object']['editvslinks']['del'] = 'removeTriplet';
269 $ophandler['object']['editvslinks']['updPort'] = 'updateTripletConfig';
270 $ophandler['object']['editvslinks']['updIp'] = 'updateTripletConfig';
271 $ophandler['object']['lvsconfig']['submitSLBConfig'] = 'submitSLBConfig';
272 $ophandler['object']['snmpportfinder']['querySNMPData'] = 'querySNMPData';
273 $ophandler['object']['8021qorder']['add'] = 'add8021QOrder';
274 $ophandler['object']['8021qorder']['del'] = 'del8021QOrder';
275 $ophandler['object']['8021qports']['save8021QConfig'] = 'save8021QPorts';
276 $ophandler['object']['8021qports']['exec8021QRecalc'] = 'process8021QRecalcRequest';
277 $ophandler['object']['8021qsync']['exec8021QPull'] = 'process8021QSyncRequest';
278 $ophandler['object']['8021qsync']['exec8021QPush'] = 'process8021QSyncRequest';
279 $ophandler['object']['8021qsync']['resolve8021QConflicts'] = 'resolve8021QConflicts';
280 $ophandler['object']['8021qsync']['updPortList'] = 'update8021QPortList';
281 $ophandler['object']['ucs']['autoPopulateUCS'] = 'autoPopulateUCS';
282 $ophandler['object']['ucs']['cleanupUCS'] = 'cleanupUCS';
283 $delayauth['object-8021qports-save8021QConfig'] = TRUE;
284 $delayauth['object-8021qorder-add'] = TRUE;
285 $delayauth['object-8021qorder-del'] = TRUE;
286 $interface_requires['object-8021qorder'] = 'interface-8021q.php';
287 $interface_requires['object-8021qports'] = 'interface-8021q.php';
288 $interface_requires['object-8021qsync'] = 'interface-8021q.php';
289
290 $page['ipv4space']['parent'] = 'index';
291 $tab['ipv4space']['default'] = 'Browse';
292 $tab['ipv4space']['newrange'] = 'Add';
293 $tab['ipv4space']['manage'] = 'Delete';
294 $tabhandler['ipv4space']['default'] = 'renderIPSpace';
295 $tabhandler['ipv4space']['newrange'] = 'renderIPNewNetForm';
296 $tabhandler['ipv4space']['manage'] = 'renderIPSpaceEditor';
297 $ophandler['ipv4space']['newrange']['add'] = 'addIPv4Prefix';
298 $ophandler['ipv4space']['manage']['del'] = 'delIPv4Prefix';
299
300 $page['ipv6space']['parent'] = 'index';
301 $tab['ipv6space']['default'] = 'Browse';
302 $tab['ipv6space']['newrange'] = 'Add';
303 $tab['ipv6space']['manage'] = 'Delete';
304 $tabhandler['ipv6space']['default'] = 'renderIPSpace';
305 $tabhandler['ipv6space']['newrange'] = 'renderIPNewNetForm';
306 $tabhandler['ipv6space']['manage'] = 'renderIPSpaceEditor';
307 $ophandler['ipv6space']['newrange']['add'] = 'addIPv6Prefix';
308 $ophandler['ipv6space']['manage']['del'] = 'delIPv6Prefix';
309
310 $page['ipv4net']['parent'] = 'ipv4space';
311 $page['ipv4net']['bypass'] = 'id';
312 $page['ipv4net']['bypass_type'] = 'natural';
313 $page['ipv4net']['bypass_tabs'] = array ('pg');
314 $tab['ipv4net']['default'] = 'Browse';
315 $tab['ipv4net']['properties'] = 'Properties';
316 $tab['ipv4net']['liveptr'] = 'Live PTR';
317 $tab['ipv4net']['tags'] = 'Tags';
318 $tab['ipv4net']['files'] = 'Files';
319 $tab['ipv4net']['8021q'] = '802.1Q';
320 $tabhandler['ipv4net']['default'] = 'renderIPNetwork';
321 $tabhandler['ipv4net']['properties'] = 'renderIPNetworkProperties';
322 $tabhandler['ipv4net']['liveptr'] = 'renderLivePTR';
323 $tabhandler['ipv4net']['tags'] = 'renderEntityTags';
324 $tabhandler['ipv4net']['files'] = 'renderFilesForEntity';
325 $tabhandler['ipv4net']['8021q'] = 'renderVLANIPLinks';
326 $trigger['ipv4net']['tags'] = 'trigger_tags';
327 $trigger['ipv4net']['8021q'] = 'trigger_ipv4net_vlanconfig';
328 $ophandler['ipv4net']['properties']['editRange'] = 'editIPv4Net';
329 $ophandler['ipv4net']['properties']['del'] = 'delIPv4Prefix';
330 $ophandler['ipv4net']['liveptr']['importPTRData'] = 'importPTRData';
331 $ophandler['ipv4net']['tags']['saveTags'] = 'saveEntityTags';
332 $ophandler['ipv4net']['files']['addFile'] = 'addFileToEntity';
333 $ophandler['ipv4net']['files']['linkFile'] = 'linkFileToEntity';
334 $ophandler['ipv4net']['files']['unlinkFile'] = 'unlinkFile';
335 $ophandler['ipv4net']['8021q']['bind'] = 'bindVLANtoIPv4';
336 $ophandler['ipv4net']['8021q']['unbind'] = 'unbindVLANfromIPv4';
337 $interface_requires['ipv4net-8021q'] = 'interface-8021q.php';
338
339 $page['ipv6net']['parent'] = 'ipv6space';
340 $page['ipv6net']['bypass'] = 'id';
341 $page['ipv6net']['bypass_type'] = 'natural';
342 $tab['ipv6net']['default'] = 'Browse';
343 $tab['ipv6net']['properties'] = 'Properties';
344 $tab['ipv6net']['tags'] = 'Tags';
345 $tab['ipv6net']['files'] = 'Files';
346 $tab['ipv6net']['8021q'] = '802.1Q';
347 $tabhandler['ipv6net']['default'] = 'renderIPNetwork';
348 $tabhandler['ipv6net']['properties'] = 'renderIPNetworkProperties';
349 $tabhandler['ipv6net']['tags'] = 'renderEntityTags';
350 $tabhandler['ipv6net']['files'] = 'renderFilesForEntity';
351 $tabhandler['ipv6net']['8021q'] = 'renderVLANIPLinks';
352 $trigger['ipv6net']['tags'] = 'trigger_tags';
353 $trigger['ipv6net']['8021q'] = 'trigger_ipv6net_vlanconfig';
354 $ophandler['ipv6net']['properties']['editRange'] = 'editIPv6Net';
355 $ophandler['ipv6net']['properties']['del'] = 'delIPv6Prefix';
356 $ophandler['ipv6net']['tags']['saveTags'] = 'saveEntityTags';
357 $ophandler['ipv6net']['files']['addFile'] = 'addFileToEntity';
358 $ophandler['ipv6net']['files']['linkFile'] = 'linkFileToEntity';
359 $ophandler['ipv6net']['files']['unlinkFile'] = 'unlinkFile';
360 $ophandler['ipv6net']['8021q']['bind'] = 'bindVLANtoIPv6';
361 $ophandler['ipv6net']['8021q']['unbind'] = 'unbindVLANfromIPv6';
362 $interface_requires['ipv6net-8021q'] = 'interface-8021q.php';
363
364 //$page['ipaddress']['parent'] = 'ipnet'; - this is commented intentionally, there is a special hack in getPath
365 $page['ipaddress']['bypass'] = 'ip';
366 $page['ipaddress']['bypass_type'] = 'inet';
367 $tab['ipaddress']['default'] = 'Browse';
368 $tab['ipaddress']['properties'] = 'Properties';
369 $tab['ipaddress']['assignment'] = 'Allocation';
370 $tab['ipaddress']['log'] = 'Change log';
371 $tabhandler['ipaddress']['default'] = 'renderIPAddress';
372 $tabhandler['ipaddress']['properties'] = 'renderIPAddressProperties';
373 $tabhandler['ipaddress']['assignment'] = 'renderIPAddressAllocations';
374 $tabhandler['ipaddress']['log'] = 'renderIPAddressLog';
375 $trigger['ipaddress']['log'] = 'triggerIPAddressLog';
376 $ophandler['ipaddress']['properties']['editAddress'] = 'editAddress';
377 $ophandler['ipaddress']['assignment']['del'] = 'delIPAllocation';
378 $ophandler['ipaddress']['assignment']['upd'] = 'updIPAllocation';
379 $ophandler['ipaddress']['assignment']['add'] = 'addIPAllocation';
380
381 $page['ipv4slb']['title'] = 'IP SLB';
382 $page['ipv4slb']['parent'] = 'index';
383 $tab['ipv4slb']['default'] = 'Virtual services';
384 $tab['ipv4slb']['vs'] = 'VS groups';
385 $tab['ipv4slb']['lbs'] = 'Load balancers';
386 $tab['ipv4slb']['rspools'] = 'RS pools';
387 $tab['ipv4slb']['rservers'] = 'Real servers';
388 $tab['ipv4slb']['defconfig'] = 'Default configs';
389 $tab['ipv4slb']['new_vs'] = 'new VS';
390 $tab['ipv4slb']['new_vsg'] = 'new VS group';
391 $tab['ipv4slb']['new_rs'] = 'new RS pool';
392 $tabhandler['ipv4slb']['default'] = 'renderVSList';
393 $tabhandler['ipv4slb']['vs'] = 'renderVSGList';
394 $tabhandler['ipv4slb']['lbs'] = 'renderLBList';
395 $tabhandler['ipv4slb']['rspools'] = 'renderRSPoolList';
396 $tabhandler['ipv4slb']['rservers'] = 'renderRealServerList';
397 $tabhandler['ipv4slb']['defconfig'] = 'renderSLBDefConfig';
398 $tabhandler['ipv4slb']['new_vs'] = 'renderNewVSForm';
399 $tabhandler['ipv4slb']['new_vsg'] = 'renderNewVSGForm';
400 $tabhandler['ipv4slb']['new_rs'] = 'renderNewRSPoolForm';
401 $ophandler['ipv4slb']['new_vs']['add'] = 'addVService';
402 $ophandler['ipv4slb']['new_vsg']['add'] = 'addVSG';
403 $ophandler['ipv4slb']['new_rs']['add'] = 'addRSPool';
404 $ophandler['ipv4slb']['defconfig']['save'] = 'updateSLBDefConfig';
405
406 $page['ipv4vs']['parent'] = 'ipv4slb:default';
407 $page['ipv4vs']['bypass'] = 'vs_id';
408 $page['ipv4vs']['bypass_type'] = 'natural';
409 $tab['ipv4vs']['default'] = 'View';
410 $tab['ipv4vs']['edit'] = 'Edit';
411 $tab['ipv4vs']['editlblist'] = 'VS links';
412 $tab['ipv4vs']['tags'] = 'Tags';
413 $tab['ipv4vs']['files'] = 'Files';
414 $tabhandler['ipv4vs']['default'] = 'renderVirtualService';
415 $tabhandler['ipv4vs']['edit'] = 'renderEditVService';
416 $tabhandler['ipv4vs']['editlblist'] = 'renderSLBEditTab';
417 $tabhandler['ipv4vs']['tags'] = 'renderEntityTags';
418 $tabhandler['ipv4vs']['files'] = 'renderFilesForEntity';
419 $trigger['ipv4vs']['tags'] = 'trigger_tags';
420 $ophandler['ipv4vs']['edit']['updIPv4VS'] = 'updateVService';
421 $ophandler['ipv4vs']['edit']['del'] = 'deleteVService';
422 $ophandler['ipv4vs']['editlblist']['addLB'] = 'addLoadBalancer';
423 $ophandler['ipv4vs']['editlblist']['delLB'] = 'tableHandler';
424 $ophandler['ipv4vs']['editlblist']['updLB'] = 'tableHandler';
425 $ophandler['ipv4vs']['tags']['saveTags'] = 'saveEntityTags';
426 $ophandler['ipv4vs']['files']['addFile'] = 'addFileToEntity';
427 $ophandler['ipv4vs']['files']['linkFile'] = 'linkFileToEntity';
428 $ophandler['ipv4vs']['files']['unlinkFile'] = 'unlinkFile';
429
430 $page['ipvs']['parent'] = 'ipv4slb:vs';
431 $page['ipvs']['bypass'] = 'vs_id';
432 $page['ipvs']['bypass_type'] = 'natural';
433 $tab['ipvs']['default'] = 'View';
434 $tab['ipvs']['edit'] = 'Edit';
435 $tab['ipvs']['editvslinks'] = 'VSG links';
436 $tab['ipvs']['tags'] = 'Tags';
437 $tab['ipvs']['files'] = 'Files';
438 $tab['ipvs']['convert'] = 'Migrate';
439 $tabhandler['ipvs']['default'] = 'renderVS';
440 $tabhandler['ipvs']['edit'] = 'renderEditVS';
441 $tabhandler['ipvs']['editvslinks'] = 'renderTripletForm';
442 $tabhandler['ipvs']['tags'] = 'renderEntityTags';
443 $tabhandler['ipvs']['files'] = 'renderFilesForEntity';
444 $tabhandler['ipvs']['convert'] = 'renderIPVSConvert';
445 $ophandler['ipvs']['edit']['updVS'] = 'updateVS';
446 $ophandler['ipvs']['edit']['del'] = 'deleteVS';
447 $ophandler['ipvs']['edit']['addIP'] = 'addIPToVS';
448 $ophandler['ipvs']['edit']['addPort'] = 'addPortToVS';
449 $ophandler['ipvs']['edit']['updIP'] = 'updateIPInVS';
450 $ophandler['ipvs']['edit']['updPort'] = 'updatePortInVS';
451 $ophandler['ipvs']['edit']['delIP'] = 'removeIPFromVS';
452 $ophandler['ipvs']['edit']['delPort'] = 'removePortFromVS';
453 $ophandler['ipvs']['editvslinks']['addLink'] = 'createTriplet';
454 $ophandler['ipvs']['editvslinks']['del'] = 'removeTriplet';
455 $ophandler['ipvs']['editvslinks']['updPort'] = 'updateTripletConfig';
456 $ophandler['ipvs']['editvslinks']['updIp'] = 'updateTripletConfig';
457 $ophandler['ipvs']['tags']['saveTags'] = 'saveEntityTags';
458 $ophandler['ipvs']['files']['addFile'] = 'addFileToEntity';
459 $ophandler['ipvs']['files']['linkFile'] = 'linkFileToEntity';
460 $ophandler['ipvs']['files']['unlinkFile'] = 'unlinkFile';
461 $ophandler['ipvs']['convert']['convert'] = 'doVSMigrate';
462 $trigger['ipvs']['tags'] = 'trigger_tags';
463 $trigger['ipvs']['convert'] = 'trigger_ipvs_convert';
464
465 $page['ipv4rspool']['parent'] = 'ipv4slb:rspools';
466 $page['ipv4rspool']['bypass'] = 'pool_id';
467 $page['ipv4rspool']['bypass_type'] = 'natural';
468 $tab['ipv4rspool']['default'] = 'View';
469 $tab['ipv4rspool']['edit'] = 'Edit';
470 $tab['ipv4rspool']['editlblist'] = 'VS links';
471 $tab['ipv4rspool']['editvslinks'] = 'VSG links';
472 $tab['ipv4rspool']['editrslist'] = 'RS list';
473 $tab['ipv4rspool']['tags'] = 'Tags';
474 $tab['ipv4rspool']['files'] = 'Files';
475 $trigger['ipv4rspool']['tags'] = 'trigger_tags';
476 $tabhandler['ipv4rspool']['default'] = 'renderRSPool';
477 $tabhandler['ipv4rspool']['edit'] = 'renderEditRSPool';
478 $tabhandler['ipv4rspool']['editrslist'] = 'renderRSPoolServerForm';
479 $tabhandler['ipv4rspool']['editvslinks'] = 'renderTripletForm';
480 $tabhandler['ipv4rspool']['editlblist'] = 'renderSLBEditTab';
481 $tabhandler['ipv4rspool']['tags'] = 'renderEntityTags';
482 $tabhandler['ipv4rspool']['files'] = 'renderFilesForEntity';
483 $ophandler['ipv4rspool']['edit']['updIPv4RSP'] = 'updIPv4RSP';
484 $ophandler['ipv4rspool']['edit']['cloneIPv4RSP'] = 'cloneRSPool';
485 $ophandler['ipv4rspool']['edit']['del'] = 'deleteRSPool';
486 $ophandler['ipv4rspool']['editrslist']['addRS'] = 'addRealServer';
487 $ophandler['ipv4rspool']['editrslist']['delRS'] = 'tableHandler';
488 $ophandler['ipv4rspool']['editrslist']['updRS'] = 'updateRealServer';
489 $ophandler['ipv4rspool']['editrslist']['addMany'] = 'addRealServers';
490 $ophandler['ipv4rspool']['editlblist']['addLB'] = 'addLoadBalancer';
491 $ophandler['ipv4rspool']['editlblist']['delLB'] = 'tableHandler';
492 $ophandler['ipv4rspool']['editlblist']['updLB'] = 'tableHandler';
493 $ophandler['ipv4rspool']['editvslinks']['addLink'] = 'createTriplet';
494 $ophandler['ipv4rspool']['editvslinks']['del'] = 'removeTriplet';
495 $ophandler['ipv4rspool']['editvslinks']['updPort'] = 'updateTripletConfig';
496 $ophandler['ipv4rspool']['editvslinks']['updIp'] = 'updateTripletConfig';
497 $ophandler['ipv4rspool']['tags']['saveTags'] = 'saveEntityTags';
498 $ophandler['ipv4rspool']['files']['addFile'] = 'addFileToEntity';
499 $ophandler['ipv4rspool']['files']['linkFile'] = 'linkFileToEntity';
500 $ophandler['ipv4rspool']['files']['unlinkFile'] = 'unlinkFile';
501
502 $page['search']['handler'] = 'searchHandler';
503 $page['search']['parent'] = 'index';
504 $page['search']['bypass'] = 'q';
505
506 $page['config']['title'] = 'Configuration';
507 $page['config']['handler'] = 'renderConfigMainpage';
508 $page['config']['parent'] = 'index';
509 $interface_requires['config-*'] = 'interface-config.php';
510
511 $page['userlist']['title'] = 'Local users';
512 $page['userlist']['parent'] = 'config';
513 $tab['userlist']['default'] = 'View';
514 $tab['userlist']['edit'] = 'Edit';
515 $tabhandler['userlist']['default'] = 'renderUserList';
516 $tabhandler['userlist']['edit'] = 'renderUserListEditor';
517 $ophandler['userlist']['edit']['updateUser'] = 'updateUser';
518 $ophandler['userlist']['edit']['createUser'] = 'createUser';
519 $ophandler['userlist']['edit']['deleteUser'] = 'deleteUser';
520 $interface_requires['userlist-*'] = 'interface-config.php';
521
522 $page['user']['parent'] = 'userlist';
523 $page['user']['bypass'] = 'user_id';
524 $page['user']['bypass_type'] = 'natural';
525 $tab['user']['default'] = 'View';
526 $tab['user']['properties'] = 'Properties';
527 $tab['user']['tags'] = 'Tags';
528 $tab['user']['files'] = 'Files';
529 $tabhandler['user']['default'] = 'renderUser';
530 $tabhandler['user']['tags'] = 'renderEntityTags';
531 $tabhandler['user']['files'] = 'renderFilesForEntity';
532 $tabhandler['user']['properties'] = 'renderUserProperties';
533 $ophandler['user']['properties']['edit'] = 'editUserProperties';
534 $ophandler['user']['tags']['saveTags'] = 'saveEntityTags';
535 $ophandler['user']['files']['addFile'] = 'addFileToEntity';
536 $ophandler['user']['files']['linkFile'] = 'linkFileToEntity';
537 $ophandler['user']['files']['unlinkFile'] = 'unlinkFile';
538 $interface_requires['user-*'] = 'interface-config.php';
539
540 $page['perms']['title'] = 'Permissions';
541 $page['perms']['parent'] = 'config';
542 $tab['perms']['default'] = 'View';
543 $tab['perms']['edit'] = 'Edit';
544 $tabhandler['perms']['default'] = 'renderRackCodeViewer';
545 $tabhandler['perms']['edit'] = 'renderRackCodeEditor';
546 $ophandler['perms']['edit']['saveRackCode'] = 'saveRackCode';
547 $interface_requires['perms-*'] = 'interface-config.php';
548
549 $page['parentmap']['title'] = 'Object container compatibility';
550 $page['parentmap']['parent'] = 'config';
551 $tab['parentmap']['default'] = 'View';
552 $tab['parentmap']['edit'] = 'Edit';
553 $tabhandler['parentmap']['default'] = 'renderObjectParentCompatViewer';
554 $tabhandler['parentmap']['edit'] = 'renderObjectParentCompatEditor';
555 $ophandler['parentmap']['edit']['add'] = 'tableHandler';
556 $ophandler['parentmap']['edit']['del'] = 'tableHandler';
557 $interface_requires['parentmap-*'] = 'interface-config.php';
558
559 $page['portmap']['title'] = 'Port compatibility';
560 $page['portmap']['parent'] = 'config';
561 $tab['portmap']['default'] = 'View';
562 $tab['portmap']['edit'] = 'Edit';
563 $tabhandler['portmap']['default'] = 'renderOIFCompatViewer';
564 $tabhandler['portmap']['edit'] = 'renderOIFCompatEditor';
565 $ophandler['portmap']['edit']['add'] = 'addOIFCompat';
566 $ophandler['portmap']['edit']['del'] = 'delOIFCompat';
567 $ophandler['portmap']['edit']['addPack'] = 'addOIFCompatPack';
568 $ophandler['portmap']['edit']['delPack'] = 'delOIFCompatPack';
569 $interface_requires['portmap-*'] = 'interface-config.php';
570
571 $page['portifcompat']['title'] = 'Enabled port types';
572 $page['portifcompat']['parent'] = 'config';
573 $tab['portifcompat']['default'] = 'View';
574 $tab['portifcompat']['edit'] = 'Edit';
575 $tabhandler['portifcompat']['default'] = 'renderIIFOIFCompat';
576 $tabhandler['portifcompat']['edit'] = 'renderIIFOIFCompatEditor';
577 $ophandler['portifcompat']['edit']['add'] = 'tableHandler';
578 $ophandler['portifcompat']['edit']['del'] = 'tableHandler';
579 $ophandler['portifcompat']['edit']['addPack'] = 'addIIFOIFCompatPack';
580 $ophandler['portifcompat']['edit']['delPack'] = 'delIIFOIFCompatPack';
581 $interface_requires['portifcompat-*'] = 'interface-config.php';
582
583 $page['portoifs']['title'] = 'Port outer interfaces';
584 $page['portoifs']['parent'] = 'config';
585 $tab['portoifs']['default'] = 'View';
586 $tab['portoifs']['edit'] = 'Edit';
587 $tabhandler['portoifs']['default'] = 'renderPortOIFViewer';
588 $tabhandler['portoifs']['edit'] = 'renderPortOIFEditor';
589 $ophandler['portoifs']['edit']['add'] = 'tableHandler';
590 $ophandler['portoifs']['edit']['del'] = 'tableHandler';
591 $ophandler['portoifs']['edit']['upd'] = 'tableHandler';
592 $interface_requires['portoifs-*'] = 'interface-config.php';
593
594 $page['attrs']['title'] = 'Attributes';
595 $page['attrs']['parent'] = 'config';
596 $tab['attrs']['default'] = 'View';
597 $tab['attrs']['editattrs'] = 'Edit attributes';
598 $tab['attrs']['editmap'] = 'Edit map';
599 $tabhandler['attrs']['default'] = 'renderAttributes';
600 $tabhandler['attrs']['editattrs'] = 'renderEditAttributesForm';
601 $tabhandler['attrs']['editmap'] = 'renderEditAttrMapForm';
602 $ophandler['attrs']['editattrs']['add'] = 'tableHandler';
603 $ophandler['attrs']['editattrs']['del'] = 'tableHandler';
604 $ophandler['attrs']['editattrs']['upd'] = 'tableHandler';
605 $ophandler['attrs']['editmap']['add'] = 'supplementAttrMap';
606 $ophandler['attrs']['editmap']['del'] = 'tableHandler';
607 $interface_requires['attrs-*'] = 'interface-config.php';
608
609 $page['dict']['title'] = 'Dictionary';
610 $page['dict']['parent'] = 'config';
611 $tab['dict']['default'] = 'View';
612 $tab['dict']['chapters'] = 'Manage chapters';
613 $tabhandler['dict']['default'] = 'renderDictionary';
614 $tabhandler['dict']['chapters'] = 'renderChaptersEditor';
615 $ophandler['dict']['chapters']['add'] = 'tableHandler';
616 $ophandler['dict']['chapters']['del'] = 'tableHandler';
617 $ophandler['dict']['chapters']['upd'] = 'tableHandler';
618 $interface_requires['dict-*'] = 'interface-config.php';
619
620 $page['chapter']['parent'] = 'dict';
621 $page['chapter']['bypass'] = 'chapter_no';
622 $page['chapter']['bypass_type'] = 'natural';
623 $tab['chapter']['default'] = 'View';
624 $tab['chapter']['edit'] = 'Edit';
625 $tabhandler['chapter']['default'] = 'renderChapter';
626 $tabhandler['chapter']['edit'] = 'renderChapterEditor';
627 $ophandler['chapter']['edit']['add'] = 'tableHandler';
628 $ophandler['chapter']['edit']['del'] = 'tableHandler';
629 $ophandler['chapter']['edit']['upd'] = 'tableHandler';
630 $interface_requires['chapter-*'] = 'interface-config.php';
631
632 $page['ui']['title'] = 'User interface';
633 $page['ui']['parent'] = 'config';
634 $tab['ui']['default'] = 'View';
635 $tab['ui']['edit'] = 'Change';
636 $tab['ui']['reset'] = 'Reset';
637 $tabhandler['ui']['default'] = 'renderUIConfig';
638 $tabhandler['ui']['edit'] = 'renderConfigEditor';
639 $tabhandler['ui']['reset'] = 'renderUIResetForm';
640 $ophandler['ui']['edit']['upd'] = 'updateUI';
641 $ophandler['ui']['reset']['resetUIConfig'] = 'resetUIConfig';
642 $interface_requires['ui-*'] = 'interface-config.php';
643
644 $page['tagtree']['title'] = 'Tag tree';
645 $page['tagtree']['parent'] = 'config';
646 $tab['tagtree']['default'] = 'View';
647 $tab['tagtree']['edit'] = 'Edit tree';
648 $tab['tagtree']['descriptions'] = 'Edit descriptions';
649 $tab['tagtree']['resolve'] = 'Circular references';
650 $tabhandler['tagtree']['default'] = 'renderTagTree';
651 $tabhandler['tagtree']['edit'] = 'renderTagTreeEditor';
652 $tabhandler['tagtree']['descriptions'] = 'renderTagDescriptionsEditor';
653 $tabhandler['tagtree']['resolve'] = 'renderGraphCycleResolver';
654 $ophandler['tagtree']['edit']['createTag'] = 'tableHandler';
655 $ophandler['tagtree']['edit']['destroyTag'] = 'tableHandler';
656 $ophandler['tagtree']['edit']['updateTag'] = 'updateTag';
657 $ophandler['tagtree']['descriptions']['updTagDescr'] = 'tableHandler';
658 $ophandler['tagtree']['resolve']['updateTag'] = 'updateTag';
659 $trigger['tagtree']['resolve'] = 'triggerGraphCycleResolver';
660 $interface_requires['tagtree-*'] = 'interface-config.php';
661
662 $page['myaccount']['title'] = 'My account';
663 $page['myaccount']['parent'] = 'config';
664 $tab['myaccount']['default'] = 'Info';
665 $tab['myaccount']['mypassword'] = 'Password change';
666 $tab['myaccount']['interface'] = 'Interface preferences';
667 $tab['myaccount']['qlinks'] = 'Quick links';
668 $trigger['myaccount']['mypassword'] = 'trigger_passwdchange';
669 $tabhandler['myaccount']['default'] = 'renderMyAccount';
670 $tabhandler['myaccount']['mypassword'] = 'renderMyPasswordEditor';
671 $tabhandler['myaccount']['interface'] = 'renderConfigEditor';
672 $tabhandler['myaccount']['qlinks'] = 'renderMyQuickLinks';
673 $ophandler['myaccount']['mypassword']['changeMyPassword'] = 'changeMyPassword';
674 $ophandler['myaccount']['interface']['upd'] = 'saveMyPreferences';
675 $ophandler['myaccount']['interface']['reset'] = 'resetMyPreference';
676 $ophandler['myaccount']['qlinks']['save'] = 'saveQuickLinks';
677 $interface_requires['myaccount-*'] = 'interface-config.php';
678
679 $page['cableconf']['title'] = 'Patch cables';
680 $page['cableconf']['parent'] = 'config';
681 $tab['cableconf']['default'] = 'View';
682 $tab['cableconf']['connectors'] = 'Edit connectors';
683 $tab['cableconf']['cabletypes'] = 'Edit cable types';
684 $tab['cableconf']['conncompat'] = 'Connector compatibility';
685 $tab['cableconf']['oifcompat'] = 'Outer interface compatibility';
686 $tabhandler['cableconf']['default'] = 'renderPatchCableConfiguration';
687 $tabhandler['cableconf']['connectors'] = 'renderPatchCableConnectorEditor';
688 $tabhandler['cableconf']['cabletypes'] = 'renderPatchCableTypeEditor';
689 $tabhandler['cableconf']['conncompat'] = 'renderPatchCableConnectorCompatEditor';
690 $tabhandler['cableconf']['oifcompat'] = 'renderPatchCableOIFCompatEditor';
691 $ophandler['cableconf']['connectors']['add'] = 'tableHandler';
692 $ophandler['cableconf']['connectors']['del'] = 'tableHandler';
693 $ophandler['cableconf']['connectors']['upd'] = 'tableHandler';
694 $ophandler['cableconf']['cabletypes']['add'] = 'tableHandler';
695 $ophandler['cableconf']['cabletypes']['del'] = 'tableHandler';
696 $ophandler['cableconf']['cabletypes']['upd'] = 'tableHandler';
697 $ophandler['cableconf']['conncompat']['add'] = 'tableHandler';
698 $ophandler['cableconf']['conncompat']['del'] = 'tableHandler';
699 $ophandler['cableconf']['oifcompat']['add'] = 'tableHandler';
700 $ophandler['cableconf']['oifcompat']['del'] = 'tableHandler';
701 $interface_requires['cableconf-*'] = 'interface-cables.php';
702
703 $page['reports']['title'] = 'Reports';
704 $page['reports']['parent'] = 'index';
705 $tab['reports']['default'] = 'Totals';
706 $tab['reports']['8021q'] = '802.1Q';
707 $tab['reports']['warranty'] = 'Expirations';
708 $tab['reports']['integrity'] = 'Data Integrity';
709 $tab['reports']['serverconf'] = 'Server configuration';
710 $tabhandler['reports']['default'] = 'renderSystemReports';
711 $tabhandler['reports']['8021q'] = 'render8021QReport';
712 $tabhandler['reports']['warranty'] = 'renderExpirations';
713 $tabhandler['reports']['integrity'] = 'renderDataIntegrityReport';
714 $tabhandler['reports']['serverconf'] = 'renderServerConfigurationReport';
715 $interface_requires['reports-default'] = 'code.php';
716 $interface_requires['reports-serverconf'] = 'dictionary.php';
717 $interface_requires['reports-*'] = 'interface-reports.php';
718
719 $page['files']['title'] = 'Files';
720 $page['files']['parent'] = 'index';
721 $tab['files']['default'] = 'Browse';
722 $tab['files']['manage'] = 'Manage';
723 $tabhandler['files']['default'] = 'renderFileBrowser';
724 $tabhandler['files']['manage'] = 'renderFileManager';
725 $ophandler['files']['manage']['addFile'] = 'addFileWithoutLink';
726 $ophandler['files']['manage']['unlinkFile'] = 'unlinkFile';
727 $ophandler['files']['manage']['deleteFile'] = 'deleteFile';
728
729 $page['file']['bypass'] = 'file_id';
730 $page['file']['bypass_type'] = 'natural';
731 $page['file']['parent'] = 'files';
732 $tab['file']['default'] = 'View';
733 $tab['file']['edit'] = 'Properties';
734 $tab['file']['tags'] = 'Tags';
735 $tab['file']['editText'] = 'Edit text';
736 $tab['file']['replaceData'] = 'Upload replacement';
737 $tab['file']['download'] = 'Download';
738 $trigger['file']['tags'] = 'trigger_tags';
739 $trigger['file']['editText'] = 'trigger_file_editText';
740 $tabhandler['file']['default'] = 'renderFile';
741 $tabhandler['file']['edit'] = 'renderFileProperties';
742 $tabhandler['file']['tags'] = 'renderEntityTags';
743 $tabhandler['file']['editText'] = 'renderTextEditor';
744 $tabhandler['file']['replaceData'] = 'renderFileReuploader';
745 $tabhandler['file']['download'] = 'renderFileDownloader';
746 $ophandler['file']['edit']['updateFile'] = 'updateFile';
747 $ophandler['file']['tags']['saveTags'] = 'saveEntityTags';
748 $ophandler['file']['editText']['updateFileText'] = 'updateFileText';
749 $ophandler['file']['replaceData']['replaceFile'] = 'replaceFile';
750
751 $page['8021q']['title'] = '802.1Q';
752 $page['8021q']['parent'] = 'index';
753 $tab['8021q']['default'] = 'Status';
754 $tab['8021q']['vdlist'] = 'Manage domains';
755 $tab['8021q']['vstlist'] = 'Manage templates';
756 $tabhandler['8021q']['default'] = 'render8021QStatus';
757 $tabhandler['8021q']['vdlist'] = 'renderVLANDomainListEditor';
758 $tabhandler['8021q']['vstlist'] = 'renderVSTListEditor';
759 $ophandler['8021q']['vdlist']['add'] = 'createVLANDomain';
760 $ophandler['8021q']['vdlist']['del'] = 'tableHandler';
761 $ophandler['8021q']['vdlist']['upd'] = 'updateVLANDomain';
762 $ophandler['8021q']['vstlist']['add'] = 'tableHandler';
763 $ophandler['8021q']['vstlist']['del'] = 'tableHandler';
764 $ophandler['8021q']['vstlist']['upd'] = 'tableHandler';
765 $interface_requires['8021q-*'] = 'interface-8021q.php';
766
767 $page['vlandomain']['parent'] = '8021q';
768 $page['vlandomain']['bypass'] = 'vdom_id';
769 $page['vlandomain']['bypass_type'] = 'natural';
770 $tab['vlandomain']['default'] = 'View';
771 $tab['vlandomain']['vlanlist'] = 'VLAN list';
772 $tab['vlandomain']['8021qorder'] = '802.1Q orders';
773 $trigger['vlandomain']['8021qorder'] = 'trigger_8021q_configured';
774 $tabhandler['vlandomain']['default'] = 'renderVLANDomain';
775 $tabhandler['vlandomain']['8021qorder'] = 'render8021QOrderForm';
776 $tabhandler['vlandomain']['vlanlist'] = 'renderVLANDomainVLANList';
777 $ophandler['vlandomain']['8021qorder']['add'] = 'add8021QOrder';
778 $ophandler['vlandomain']['8021qorder']['del'] = 'del8021QOrder';
779 $ophandler['vlandomain']['vlanlist']['add'] = 'tableHandler';
780 $ophandler['vlandomain']['vlanlist']['del'] = 'tableHandler';
781 $ophandler['vlandomain']['vlanlist']['upd'] = 'tableHandler';
782 $delayauth['vlandomain-8021qorder-add'] = TRUE;
783 $delayauth['vlandomain-8021qorder-del'] = TRUE;
784 $interface_requires['vlandomain-*'] = 'interface-8021q.php';
785
786 $page['vlan']['parent'] = 'vlandomain';
787 $page['vlan']['bypass'] = 'vlan_ck';
788 $page['vlan']['bypass_type'] = 'uint-vlan1';
789 $tab['vlan']['default'] = 'View';
790 $tab['vlan']['edit'] = 'Edit';
791 $tab['vlan']['ipv4'] = 'IPv4';
792 $tab['vlan']['ipv6'] = 'IPv6';
793 $trigger['vlan']['ipv4'] = 'trigger_vlan_ipv4net';
794 $trigger['vlan']['ipv6'] = 'trigger_vlan_ipv6net';
795 $tabhandler['vlan']['default'] = 'renderVLANInfo';
796 $tabhandler['vlan']['edit'] = 'renderEditVlan';
797 $tabhandler['vlan']['ipv4'] = 'renderVLANIPLinks';
798 $tabhandler['vlan']['ipv6'] = 'renderVLANIPLinks';
799 $ophandler['vlan']['edit']['del'] = 'deleteVlan';
800 $ophandler['vlan']['edit']['clear'] = 'clearVlan';
801 $ophandler['vlan']['edit']['upd'] = 'tableHandler';
802 $ophandler['vlan']['ipv4']['bind'] = 'bindVLANtoIPv4';
803 $ophandler['vlan']['ipv4']['unbind'] = 'unbindVLANfromIPv4';
804 $ophandler['vlan']['ipv6']['bind'] = 'bindVLANtoIPv6';
805 $ophandler['vlan']['ipv6']['unbind'] = 'unbindVLANfromIPv6';
806 $interface_requires['vlan-*'] = 'interface-8021q.php';
807
808 $page['vst']['parent'] = '8021q';
809 $page['vst']['bypass'] = 'vst_id';
810 $page['vst']['bypass_type'] = 'natural';
811 $tab['vst']['default'] = 'View';
812 $tab['vst']['editrules'] = 'Edit';
813 $tab['vst']['8021qorder'] = '802.1Q orders';
814 $tab['vst']['tags'] = 'Tags';
815 $trigger['vst']['editrules'] = 'trigger_vst_editrules';
816 $trigger['vst']['8021qorder'] = 'trigger_8021q_configured';
817 $trigger['vst']['tags'] = 'trigger_tags';
818 $tabhandler['vst']['default'] = 'renderVST';
819 $tabhandler['vst']['editrules'] = 'renderVSTRulesEditor';
820 $tabhandler['vst']['8021qorder'] = 'render8021QOrderForm';
821 $tabhandler['vst']['tags'] = 'renderEntityTags';
822 $ophandler['vst']['editrules']['clone'] = 'cloneVST';
823 $ophandler['vst']['editrules']['upd'] = 'updVSTRule';
824 $ophandler['vst']['8021qorder']['add'] = 'add8021QOrder';
825 $ophandler['vst']['8021qorder']['del'] = 'del8021QOrder';
826 $ophandler['vst']['tags']['saveTags'] = 'saveEntityTags';
827 $delayauth['vst-8021qorder-add'] = TRUE;
828 $delayauth['vst-8021qorder-del'] = TRUE;
829 $interface_requires['vst-*'] = 'interface-8021q.php';
830
831 $page['dqueue']['parent'] = '8021q';
832 $page['dqueue']['bypass'] = 'dqcode';
833 $page['dqueue']['bypass_type'] = 'enum/dqcode';
834 $tab['dqueue']['default'] = 'View';
835 $tabhandler['dqueue']['default'] = 'renderDeployQueue';
836 $interface_requires['dqueue-*'] = 'interface-8021q.php';
837
838 $page['objectlog']['title'] = 'Log records';
839 $page['objectlog']['parent'] = 'index';
840 $tab['objectlog']['default'] = 'View';
841 $tabhandler['objectlog']['default'] = 'allObjectLogs';
842
843 $page['virtual']['title'] = 'Virtual Resources';
844 $page['virtual']['parent'] = 'index';
845 $tab['virtual']['default'] = 'Summary';
846 $tabhandler['virtual']['default'] = 'renderVirtualResourcesSummary';
847
848 $page['cables']['title'] = 'Patch cables';
849 $page['cables']['parent'] = 'index';
850 $tab['cables']['default'] = 'View';
851 $tab['cables']['amount'] = 'Consume/replenish';
852 $tab['cables']['heaps'] = 'Configure heaps';
853 $trigger['cables']['amount'] = 'triggerPatchCableHeapsConfigured';
854 $tabhandler['cables']['default'] = 'renderPatchCableHeapSummary';
855 $tabhandler['cables']['amount'] = 'renderPatchCableHeapAmount';
856 $tabhandler['cables']['heaps'] = 'renderPatchCableHeapEditor';
857 $ophandler['cables']['heaps']['add'] = 'tableHandler';
858 $ophandler['cables']['heaps']['del'] = 'tableHandler';
859 $ophandler['cables']['heaps']['upd'] = 'tableHandler';
860 $ophandler['cables']['amount']['dec'] = 'consumePatchCable';
861 $ophandler['cables']['amount']['inc'] = 'replenishPatchCable';
862 $ophandler['cables']['amount']['set'] = 'setPatchCableAmount';
863 $interface_requires['cables-*'] = 'interface-cables.php';
864
865 $page['plugins']['title'] = 'Plugins';
866 $page['plugins']['parent'] = 'config';
867 $tab['plugins']['default'] = 'View';
868 $tab['plugins']['edit'] = 'Edit';
869 $tabhandler['plugins']['default'] = 'renderPluginConfig';
870 $tabhandler['plugins']['edit'] = 'renderPluginEditor';
871 $ophandler['plugins']['edit']['install'] = 'installPlugin';
872 $ophandler['plugins']['edit']['uninstall'] = 'uninstallPlugin';
873 $ophandler['plugins']['edit']['enable'] = 'tableHandler';
874 $ophandler['plugins']['edit']['disable'] = 'tableHandler';
875 $ophandler['plugins']['edit']['upgrade'] = 'upgradePlugin';
876 $interface_requires['plugins-*'] = 'interface-config.php';
877
878 $ajaxhandler['get-parent-node-options'] = 'getParentNodeOptionsAJAX';
879 $ajaxhandler['get-location-select'] = 'getLocationSelectAJAX';
880 $ajaxhandler['verifyCode'] = 'verifyCodeAJAX';
881 $ajaxhandler['get-port-link'] = 'getPortInfoAJAX';
882 $ajaxhandler['get-port-mac'] = 'getPortInfoAJAX';
883 $ajaxhandler['get-port-portmac'] = 'getPortInfoAJAX';
884 $ajaxhandler['get-port-conf'] = 'getPortInfoAJAX';
885 $ajaxhandler['upd-ip-name'] = 'updateIPNameAJAX';
886 $ajaxhandler['upd-ip-comment'] = 'updateIPCommentAJAX';
887 $ajaxhandler['upd-rack-sort-order'] = 'updateRackSortOrderAJAX';
888 $ajaxhandler['upd-reservation-port'] = 'updatePortRsvAJAX';
889 $ajaxhandler['upd-reservation-cable'] = 'updateCableIdAJAX';
890 $ajaxhandler['net-usage'] = 'getNetUsageAJAX';
891 $ajaxhandler['get-slb-form'] = 'renderSLBFormAJAX';
892 $ajaxhandler['triplet-preview'] = 'getTripletConfigAJAX';
893 $ajaxhandler['autocomplete'] = 'getAutocompleteListAJAX';
894
895 $popuphandler['objlist'] = 'renderPopupObjectSelector';
896 $popuphandler['portlist'] = 'renderPopupPortSelector';
897 $popuphandler['inet4list'] = 'renderPopupIPv4Selector';