]> git.ipfire.org Git - people/shoehn/ipfire.org.git/blob - www/webapp/menu.py
Initial checkin.
[people/shoehn/ipfire.org.git] / www / webapp / menu.py
1 #!/usr/bin/python
2
3 import simplejson
4
5 from helpers import Item
6
7 class Menu(object):
8 def __init__(self, filename=None):
9 self.items = []
10
11 if filename:
12 self.load(filename)
13
14 def load(self, filename):
15 f = open(filename)
16 data = f.read()
17 f.close()
18
19 for item in simplejson.loads(data):
20 self.items.append(MenuItem(**item))
21
22
23 class MenuItem(Item):
24 def __init__(self, **args):
25 Item.__init__(self, **args)
26 self.active = False
27
28 # Parse submenu
29 if self.args.has_key("subs"):
30 self.args["items"] = []
31 for sub in self.args["subs"]:
32 self.args["items"].append(MenuItem(**sub))
33 del self.args["subs"]
34
35
36 if __name__ == "__main__":
37 m = Menu("menu.json")
38 print [i.args for i in m.items]