def field_data(): """ Load field information from MongoDB """ search = {} search["_id"] = int(request.args["id"]) field = field_collection.find_one(search) return jsonify(field)
def detailed_coverage_json(): """ Return a JSON structure """ filter = request.args.get("filter", "R") # filter size = request.args.get("size", 1.) # size in degrees if not (request.args.has_key("ra") and request.args.has_key("dec")): abort(404) ra = ag.RA.fromDegrees(str(request.args["ra"])) dec = ag.Dec.fromDegrees(str(request.args["dec"])) size = ag.Angle.fromDegrees(str(size)) fields = survey_coverage.get_overlapping_fields(ra.degrees, dec.degrees, filter=filter, size=size.degrees) mongo_fields = [] for field in fields: mongo_field = field_collection.find_one({"_id" : field.id}) if mongo_field == None: continue mongo_field["size"] = pg.camera_size_radius mongo_field["number_of_observations"] = field.number_of_exposures mongo_fields.append(mongo_field) return jsonify(fields=mongo_fields, center={"ra" : ra.degrees, "dec" : dec.degrees, "size" : size.degrees})