Renamed RodelbahnboxValidator to RodelbahnboxDictValidator.
[philipp/winterrodeln/wrpylib.git] / wrpylib / wrvalidators.py
index a4cc1051d7eab48f93403c07e5916c130c266344..beea7205929e085f3a25039c0d7ad96c816801e0 100644 (file)
@@ -745,3 +745,31 @@ class SledRental(BoolUnicodeTupleValidator):
     u'Talstation (nur mit Ticket); Schneealm' <=> (True, u'Talstation (nur mit Ticket); Schneealm')"""
     def __init__(self):
         BoolUnicodeTupleValidator.__init__(self, Loop(ValueCommentList()))
+
+
+class RodelbahnboxDictValidator(formencode.Schema):
+    """Takes the fields of the Rodelbahnbox as dict of strings and returns them as dict of appropriet types."""
+    def __init__(self):
+        self.add_field(u'Position', GeoNone()) # '47.583333 N 15.75 E'
+        self.add_field(u'Position oben', GeoNone()) # '47.583333 N 15.75 E'
+        self.add_field(u'Höhe oben', UnsignedNone()) # '2000'
+        self.add_field(u'Position unten', GeoNone()) # '47.583333 N 15.75 E'
+        self.add_field(u'Höhe unten', UnsignedNone()) # '1200'
+        self.add_field(u'Länge', UnsignedNone()) # 3500
+        self.add_field(u'Schwierigkeit', GermanDifficulty()) # 'mittel'
+        self.add_field(u'Lawinen', GermanAvalanches()) # 'kaum'
+        self.add_field(u'Betreiber', UnicodeNone()) # 'Max Mustermann'
+        self.add_field(u'Öffentliche Anreise', GermanPublicTransport()) # 'Mittelmäßig'
+        self.add_field(u'Aufstieg möglich', GermanBoolNone()) # 'Ja'
+        self.add_field(u'Aufstieg getrennt', GermanTristateFloatComment()) # 'Ja'
+        self.add_field(u'Gehzeit', UnsignedNone()) # 90
+        self.add_field(u'Aufstiegshilfe', GermanLift()) # 'Gondel (unterer Teil)'
+        self.add_field(u'Beleuchtungsanlage', GermanTristateFloatComment())
+        self.add_field(u'Beleuchtungstage', UnsignedCommentNone(7)) # '3 (Montag, Mittwoch, Freitag)'
+        self.add_field(u'Rodelverleih', SledRental()) # 'Talstation Serlesbahnan'
+        self.add_field(u'Gütesiegel', GermanCachet()) # 'Tiroler Naturrodelbahn-Gütesiegel 2009 mittel'
+        self.add_field(u'Webauskunft', UrlNeinNone()) # 'http://www.nösslachhütte.at/page9.php'
+        self.add_field(u'Telefonauskunft', PhoneCommentListNeinLoopNone(comments_are_optional=False)) # '+43-664-5487520 (Mitterer Alm)'
+        self.add_field(u'Bild', UnicodeNone())
+        self.add_field(u'In Übersichtskarte', GermanBoolNone())
+        self.add_field(u'Forumid', UnsignedNeinNone())