123456789101112131415161718192021222324252627282930313233343536373839404142 |
- from flask import Blueprint, abort, request, jsonify
- import lib
- from sources import sources
- extra = Blueprint("extra", __name__)
- @extra.route("score", methods=["POST"])
- def check_score():
- js = request.get_json()
- p1 = js.get("point1", None)
- p2 = js.get("point2", None)
- if p1 is None or p2 is None:
- abort(400)
- try:
- lat1 = float(p1.get("lat", None))
- lng1 = float(p1.get("lng", None))
- lat2 = float(p2.get("lat", None))
- lng2 = float(p2.get("lng", None))
- except ValueError:
- abort(400)
- score, distance = lib.score((lat1, lng1), (lat2, lng2))
- return jsonify({
- "score": score,
- "distance": distance,
- })
- @extra.route("caches", methods=["GET"])
- def get_cached_points():
- return jsonify({
- "caches": [
- {
- "generationMethod": gm,
- "onlyAmerica": oa,
- "size": len(ps.stock)
- } for ((gm, oa), ps) in sources.items()
- ]
- })
|