More realistic URL example in docstrings.
[philipp/winterrodeln/wrfeed.git] / wrfeed / controllers / berichte.py
index 01d634c004820d80fcaf679ed27031172351cdec..0815056739a88ff106d17006925ad95a01333bee 100644 (file)
@@ -5,7 +5,7 @@
 Format:
     http://www.winterrodeln.org/feed/berichte/alle
     http://www.winterrodeln.org/feed/berichte/bahn/kemater_alm
-    http://www.winterrodeln.org/feed/berichte/bahnen/22+42+132 
+    http://www.winterrodeln.org/feed/berichte/bahnen/5+280+251
 See:
     http://www.atompub.org/
     http://effbot.org/zone/element.htm
@@ -129,20 +129,32 @@ def create_feed(page_title=None, page_ids=None):
 class BerichteController(BaseController):
 
     def alle(self):
-        """http://www.winterrodeln.org/feed/berichte/alle"""
+        """Handles URLs like
+        http://127.0.0.1:5000/berichte/alle
+        http://www.winterrodeln.org/feed/berichte/alle
+        """
         response.content_type = 'application/atom+xml'
         return create_feed()
 
 
     def bahn(self, id):
-        """http://www.winterrodeln.org/feed/berichte/bahn/kemater_alm"""
+        """Handles URLs like
+        http://127.0.0.1:5000/berichte/bahn/kemater_alm
+        http://www.winterrodeln.org/feed/berichte/bahn/kemater_alm
+        """
         response.content_type = 'application/atom+xml'
         return create_feed(page_title=id)
 
 
     def bahnen(self, id):
-        """http://www.winterrodeln.org/feed/berichte/bahnen/22+42+132"""
+        """Handles URLs like
+        http://127.0.0.1:5000/berichte/bahnen/5+280+251
+        http://www.winterrodeln.org/feed/berichte/bahnen/5+280+251
+        """
         page_ids = id.split('+')
-        page_ids = [int(page_id) for page_id in page_ids]
+        try:
+            page_ids = [int(page_id) for page_id in page_ids]
+        except ValueError:
+            abort(400) # bad request
         response.content_type = 'application/atom+xml'
         return create_feed(page_ids=page_ids)