diff options
author | Paul Duncan <pabs@pablotron.org> | 2016-03-08 13:07:57 -0500 |
---|---|---|
committer | Paul Duncan <pabs@pablotron.org> | 2016-03-08 13:07:57 -0500 |
commit | 46418b2237f86dc7b41c8c2a3dd5725634dceffe (patch) | |
tree | 1874bc0416d3f1530d91f249a487779ff95d4914 /src/guff/api/post.cr | |
parent | 1cbbb00e3c6bcf4255fee485de3f2828ff2d1d4c (diff) | |
download | old-guff-46418b2237f86dc7b41c8c2a3dd5725634dceffe.tar.bz2 old-guff-46418b2237f86dc7b41c8c2a3dd5725634dceffe.zip |
add date filters
Diffstat (limited to 'src/guff/api/post.cr')
-rw-r--r-- | src/guff/api/post.cr | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/guff/api/post.cr b/src/guff/api/post.cr index 7141530..55abd86 100644 --- a/src/guff/api/post.cr +++ b/src/guff/api/post.cr @@ -3,13 +3,27 @@ require "json" module Guff module API module PostAPI + GET_POSTS_FILTERS = { + q: "q", + year: "year", + month: "month", + day: "day", + } + private def do_post_get_posts( context : HTTP::Server::Context, args : Hash(String, String) ) + # build filters + filters = GET_POSTS_FILTERS.reduce({} of Symbol => String) do |r, k, s| + r[k] = args[s] if args.has_key?(s) + r + end + + # get and return posts @models.post.get_posts( site_id: get_site(context), - q: args["q"]? || "", + filters: filters, tags: get_posts_tags(args["tags"]), page: args.has_key?("page") ? args["page"].to_i : 1, ) |