X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;ds=inline;f=lib%2Fpleroma%2Fweb%2Fplugs%2Fcache.ex;h=935b2d83464fb5f2514c92803a81193d1bf66ba8;hb=502382da45e88a2b932878cdb0e134a21189ed01;hp=11185485999cee96315d9122bbac857888955157;hpb=79bc4bcc3cb89bb5860470626df5f02991b95885;p=akkoma diff --git a/lib/pleroma/web/plugs/cache.ex b/lib/pleroma/web/plugs/cache.ex index 111854859..935b2d834 100644 --- a/lib/pleroma/web/plugs/cache.ex +++ b/lib/pleroma/web/plugs/cache.ex @@ -97,13 +97,21 @@ defmodule Pleroma.Web.Plugs.Cache do key = cache_key(conn, opts) content_type = content_type(conn) + should_cache = not Map.get(conn.assigns, :skip_cache, false) + conn = unless opts[:tracking_fun] do - @cachex.put(:web_resp_cache, key, {content_type, body}, ttl: ttl) + if should_cache do + @cachex.put(:web_resp_cache, key, {content_type, body}, ttl: ttl) + end + conn else tracking_fun_data = Map.get(conn.assigns, :tracking_fun_data, nil) - @cachex.put(:web_resp_cache, key, {content_type, body, tracking_fun_data}, ttl: ttl) + + if should_cache do + @cachex.put(:web_resp_cache, key, {content_type, body, tracking_fun_data}, ttl: ttl) + end opts.tracking_fun.(conn, tracking_fun_data) end