summaryrefslogtreecommitdiffstats
path: root/backend
diff options
context:
space:
mode:
authorRyan Rix <phrkonaleash@gmail.com>2009-12-04 21:39:17 -0700
committerRyan Rix <phrkonaleash@gmail.com>2009-12-04 21:39:17 -0700
commitd87d53743b65d2e9f40ca24bafeb745885969c21 (patch)
treebdb0ca6d9ca7b0941f8a00aec7f73e634129dd82 /backend
parent28555e043d0c9779d4f40e3876237d78c7b4dcf9 (diff)
downloadfedora-tour-d87d53743b65d2e9f40ca24bafeb745885969c21.tar.gz
fedora-tour-d87d53743b65d2e9f40ca24bafeb745885969c21.tar.xz
fedora-tour-d87d53743b65d2e9f40ca24bafeb745885969c21.zip
Work
Diffstat (limited to 'backend')
-rw-r--r--backend/tour_menuobject.py21
1 files changed, 13 insertions, 8 deletions
diff --git a/backend/tour_menuobject.py b/backend/tour_menuobject.py
index 9149902..3ae853f 100644
--- a/backend/tour_menuobject.py
+++ b/backend/tour_menuobject.py
@@ -20,6 +20,7 @@
import io
import os.path
import xml.parsers.expat
+import sys
class MenuNode:
parent = 0
@@ -46,6 +47,7 @@ class MenuObject:
node = MenuNode()
node.nodes = list()
+ node.parent = False
if parent != False:
node.parent = parent
@@ -60,23 +62,26 @@ class MenuObject:
def parserStartElement(self, name, attrs):
print "Encountered "+name+" node Start"
+ self.currentElement = name
+
if name == "Package":
self.rootNode = self.addNode(False)
- self.currentElement = "Package"
+ self.activeNode = self.rootNode
elif name == "Page":
self.activeNode = self.addNode(self.activeNode)
-
- self.currentElement = "Page"
elif name == "DisplayName":
self.currentElement = "DisplayName"
- elif name == "Icon":
- if self.rootNode == self.activeNode:
- self.currentElement = "Icon"
- else:
- print "<Icon> node is only allowed underneath the <Package> Node. Please file a bug on the Fedora-tour Fedora component at http://bugzilla.redhat.com"
+ elif name == "Icon" or name == "DocRoot" or name == "Locale" or name == "Priority":
+ """
+ These tags are only allowed under root, so we should err if this happens.
+ """
+ if self.activeNode.parent != False:
+ print self.rootNode
+ print self.activeNode
+ print "<"+name+"> node is only allowed underneath the <Package> Node. Please file a bug on the Fedora-tour Fedora component at http://bugzilla.redhat.com"
sys.exit()
def parserEndElement(self, name):