feature/metafeeds: Support for canteen meta feeds and index feed (#2)
* feature/metafeeds: Restructured API, splitted menu and meta feed * feature/metafeeds: add field 'key' to Canteen * feature/metafeeds: added helper function for reverse urls * feature/metafeeds: added menu feed url to meta feed * feature/metafeeds: added missing test (added: testing meta feed rendering in retrievaltest) * feature/metafeeds: added feed index page * whitespace fix * feature/metafeeds: added alias urls * feature/metafeeds: moved meta feed default url * feature/metafeeds: moved index generation to views * feature/metafeeds: inlined builder instance creation * feature/metafeeds: removed unused 'menu' parameter * feature/metafeeds: replaced 'reverse' module with Flask's url_for * feature/metafeeds: removed unused import * feature/metafeeds: removed unused function parameters * feature/metafeeds: moved menu feed url generation to views.py * feature/metafeeds: cleanup debug prints removing debug prints that should never have been committed.
This commit is contained in:
+14
-9
@@ -2,6 +2,7 @@
|
||||
|
||||
from pyopenmensa.feed import LazyBuilder
|
||||
|
||||
|
||||
PRICE_ROLE_MAPPING = {
|
||||
'student': 'preis_s',
|
||||
'other': 'preis_g',
|
||||
@@ -48,18 +49,22 @@ def _process_day(builder, day):
|
||||
roles=None)
|
||||
|
||||
|
||||
def _create_builder(canteen):
|
||||
def render_menu(menu):
|
||||
builder = LazyBuilder()
|
||||
builder.name = canteen.name
|
||||
builder.address = canteen.street
|
||||
builder.city = canteen.city
|
||||
return builder
|
||||
|
||||
|
||||
def render(canteen, menu):
|
||||
builder = _create_builder(canteen)
|
||||
|
||||
for day in _active_days(menu):
|
||||
_process_day(builder, day)
|
||||
|
||||
return builder.toXMLFeed()
|
||||
|
||||
|
||||
def render_meta(canteen, menu_feed_url):
|
||||
builder = LazyBuilder()
|
||||
|
||||
builder.name = canteen.name
|
||||
builder.address = canteen.street
|
||||
builder.city = canteen.city
|
||||
|
||||
builder.define(name="full", priority="0", url=menu_feed_url, source=None, dayOfWeek="*", dayOfMonth="*", hour="8-18", minute="0", retry="30 1")
|
||||
|
||||
return builder.toXMLFeed()
|
||||
|
||||
Reference in New Issue
Block a user