]>
Commit | Line | Data |
---|---|---|
5470bdf1 MT |
1 | #!/usr/bin/python |
2 | ||
9068dba1 | 3 | from misc import Object |
5470bdf1 MT |
4 | |
5 | class MenuEntry(object): | |
6 | def __init__(self, _data): | |
7 | self._data = _data | |
8 | self.submenu = None | |
9 | ||
10 | @property | |
11 | def id(self): | |
12 | return self._data.get("id") | |
13 | ||
14 | @property | |
15 | def type(self): | |
16 | return self._data.get("type", "root") | |
17 | ||
18 | @property | |
19 | def title(self): | |
20 | return self._data.get("title", "") | |
21 | ||
22 | @property | |
23 | def description(self): | |
24 | return self._data.get("description", "") | |
25 | ||
26 | @property | |
27 | def item(self): | |
28 | if self.type == "config": | |
29 | return self._data.get("item") | |
30 | ||
31 | @property | |
32 | def submenu_level(self): | |
33 | if self.type == "header": | |
34 | return int(self._data.get("item")) | |
35 | ||
36 | ||
9068dba1 | 37 | class NetBoot(Object): |
5470bdf1 MT |
38 | def get_menu(self, level=0): |
39 | menu = [] | |
40 | ||
31c90b72 | 41 | for m in self.db.query("SELECT * FROM boot_menu WHERE level = %s ORDER by level,prio", level): |
5470bdf1 MT |
42 | m = MenuEntry(m) |
43 | ||
44 | if m.type == "header": | |
45 | m.submenu = self.get_menu(m.submenu_level) | |
46 | ||
47 | menu.append(m) | |
48 | ||
49 | return menu | |
50 | ||
51 | def get_config(self, id): | |
5470bdf1 | 52 | return self.db.get("SELECT * FROM boot WHERE id = %s", id) |