def list_identifiers() -> str: text = f"*Available restaurants:*\n" for entry in main.list_restaurants(): text += f'- {entry["name"]}: `{entry["identifier"]}`\n' text += "- Solna: `solna`\n" text += "- Uppsala: `uppsala`\n" return text
def list_restaurants(): return flask.jsonify({ "restaurants": main.list_restaurants(), "url": flask.url_for("list_restaurants", _external=True), })
def handle_slack_request(): import logging logging.error(flask.request.form['text']) command_text = flask.request.form['text'] identifiers = command_text.split() available = [entry['identifier'] for entry in main.list_restaurants()] regions = ('ki', 'bmc', 'uu', 'uppsala', 'solna') text = '' for identifier in identifiers: if identifier not in available and identifier.lower() not in regions: text = f'*Available restaurants:*\n' for entry in main.list_restaurants(): text += f'- {entry["name"]}: `{entry["identifier"]}`\n' break elif identifier.lower() in regions: if identifier.lower() in ('solna', 'ki'): new_ids = [ entry['identifier'] for entry in main.list_restaurants() if entry['campus'] == 'Solna' ] else: new_ids = [ entry['identifier'] for entry in main.list_restaurants() if entry['campus'] == 'Uppsala' ] for ident in new_ids: restaurant_data = dict(main.get_restaurant(ident)) text += f'*{restaurant_data["title"]}*\n' for dish in restaurant_data['menu']: text += f'- {dish}\n' else: restaurant_data = dict(main.get_restaurant(identifier)) text += f'*{restaurant_data["title"]}*\n' for dish in restaurant_data['menu']: text += f'- {dish}\n' response = { "blocks": [{ "type": "section", "text": { "type": "mrkdwn", "text": text } }] } return flask.jsonify(response)
def handle_slack_command(): command_text = flask.request.form["text"] identifiers = command_text.split() available = [entry["identifier"] for entry in main.list_restaurants()] regions = ("ki", "bmc", "uu", "uppsala", "solna") text = "" for identifier in identifiers: if identifier in available: restaurant_data = dict(main.get_restaurant(identifier)) text += f'*{restaurant_data["title"]}*\n' for dish in restaurant_data["menu"]: text += f"- {dish}\n" elif identifier.lower() in regions: if identifier.lower() in ("solna", "ki"): new_ids = [ entry["identifier"] for entry in main.list_restaurants() if entry["campus"] == "Solna" ] else: new_ids = [ entry["identifier"] for entry in main.list_restaurants() if entry["campus"] == "Uppsala" ] for ident in new_ids: restaurant_data = dict(main.get_restaurant(ident)) text += f'*{restaurant_data["title"]}*\n' for dish in restaurant_data["menu"]: text += f"- {dish}\n" else: text = list_identifiers() break if not identifiers: text = list_identifiers() response = { "blocks": [{ "type": "section", "text": { "type": "mrkdwn", "text": text } }] } return flask.jsonify(response)
def api_list_restaurants(): return jsonify(main.list_restaurants())
def nbis_api_list_restaurants(): return jsonify({'restaurants': main.list_restaurants()})
def list_restaurants(): return jsonify({'restaurants': main.list_restaurants()})