summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOmar Roth <omarroth@hotmail.com>2018-08-05 18:35:52 -0500
committerOmar Roth <omarroth@hotmail.com>2018-08-05 18:35:52 -0500
commit5a6b36eccef00ed789786abde8bcb8214ed76321 (patch)
treeb2dd20606d20ad4c3ae875d43eb91f0357b25149
parent9d6cdc3032eeb2fd5a7e3a86237d1c6a3381826a (diff)
downloadinvidious-5a6b36eccef00ed789786abde8bcb8214ed76321.tar.gz
invidious-5a6b36eccef00ed789786abde8bcb8214ed76321.tar.bz2
invidious-5a6b36eccef00ed789786abde8bcb8214ed76321.zip
Add extra handling for year format
-rw-r--r--src/invidious.cr12
-rw-r--r--src/invidious/helpers/utils.cr7
2 files changed, 14 insertions, 5 deletions
diff --git a/src/invidious.cr b/src/invidious.cr
index 47fccb95..9b26b889 100644
--- a/src/invidious.cr
+++ b/src/invidious.cr
@@ -336,19 +336,23 @@ end
# Search
get "/results" do |env|
- search_query = env.params.query["search_query"]?
+ query = env.params.query["search_query"]?
+ query ||= env.params.query["q"]?
+ query ||= ""
+
page = env.params.query["page"]?.try &.to_i?
page ||= 1
- if search_query
- env.redirect "/search?q=#{URI.escape(search_query)}&page=#{page}"
+ if query
+ env.redirect "/search?q=#{URI.escape(query)}&page=#{page}"
else
env.redirect "/"
end
end
get "/search" do |env|
- query = env.params.query["q"]?
+ query = env.params.query["search_query"]?
+ query ||= env.params.query["q"]?
query ||= ""
page = env.params.query["page"]?.try &.to_i?
diff --git a/src/invidious/helpers/utils.cr b/src/invidious/helpers/utils.cr
index 4adc8ec2..3a9003da 100644
--- a/src/invidious/helpers/utils.cr
+++ b/src/invidious/helpers/utils.cr
@@ -63,7 +63,12 @@ def decode_time(string)
end
def decode_date(string : String)
- # Time matches format "20 hours ago", "40 minutes ago"...
+ # String matches 'YYYY'
+ if string.match(/\d{4}/)
+ return Time.new(string.to_i, 1, 1)
+ end
+
+ # String matches format "20 hours ago", "40 minutes ago"...
date = string.split(" ")[-3, 3]
delta = date[0].to_i