Source code for samlab.dashboard.service.favorites

# Copyright 2018, National Technology & Engineering Solutions of Sandia, LLC
# (NTESS).  Under the terms of Contract DE-NA0003525 with NTESS, the U.S.
# Government retains certain rights in this software.

import flask

from samlab.dashboard.server import application, require_auth, require_permissions, socketio
from samlab.dashboard.service import require_backend


[docs]@application.route("/favorites") @require_auth def get_favorites(): require_permissions(["read"]) favorites = require_backend("favorites") return flask.jsonify(favorites=favorites.get())
[docs]@application.route("/favorites/<allow(layouts):service>/<name>", methods=["PUT", "DELETE"]) @require_auth def put_delete_favorites_service_name(service, name): if flask.request.method == "PUT": require_permissions(["write"]) label = flask.request.json["label"] require_backend("favorites").create(service, name, label) return flask.jsonify() elif flask.request.method == "DELETE": require_permissions(["delete"]) require_backend("favorites").delete(service, name) return flask.jsonify()