diff options
Diffstat (limited to 'db/rest/util/_api_serve_media.sql')
-rw-r--r-- | db/rest/util/_api_serve_media.sql | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/db/rest/util/_api_serve_media.sql b/db/rest/util/_api_serve_media.sql deleted file mode 100644 index 8b0f0b8..0000000 --- a/db/rest/util/_api_serve_media.sql +++ /dev/null @@ -1,41 +0,0 @@ -CREATE FUNCTION _api.serve_media( - _name TEXT -) -RETURNS sys."*/*" -LANGUAGE plpgsql VOLATILE -AS $BODY$ -DECLARE - _headers TEXT; - _data BYTEA; -BEGIN - - SELECT FORMAT( - '[{"Content-Type": "%s"},' - '{"Content-Disposition": "inline; filename=\"%s\""},' - '{"Cache-Control": "max-age=259200"}]' - , m.type, m.name) - FROM admin.media m - WHERE m.name = _name INTO _headers; - - PERFORM SET_CONFIG('response.headers', _headers, true); - - SELECT m.content - FROM admin.media m - WHERE m.name = _name - INTO _data; - - IF FOUND THEN - RETURN(_data); - ELSE - PERFORM _api.raise( - _msg => 'api_not_found', - _err => 404 - ); - END IF; -END -$BODY$; - -GRANT EXECUTE ON FUNCTION _api.serve_media(TEXT) - TO rest_anon, rest_user; -GRANT SELECT ON TABLE admin.media - TO rest_anon, rest_user; |