From 62d7abdd9e699779a7e74ed5569aa6d631004210 Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Wed, 6 Apr 2022 22:23:22 +0200 Subject: Add a user friendly message for when no results are found --- src/invidious/frontend/misc.cr | 14 ++++++++++++++ src/invidious/views/search.ecr | 27 ++++++++++++++++----------- 2 files changed, 30 insertions(+), 11 deletions(-) create mode 100644 src/invidious/frontend/misc.cr (limited to 'src') diff --git a/src/invidious/frontend/misc.cr b/src/invidious/frontend/misc.cr new file mode 100644 index 00000000..43ba9f5c --- /dev/null +++ b/src/invidious/frontend/misc.cr @@ -0,0 +1,14 @@ +module Invidious::Frontend::Misc + extend self + + def redirect_url(env : HTTP::Server::Context) + prefs = env.get("preferences").as(Preferences) + + if prefs.automatic_instance_redirect + current_page = env.get?("current_page").as(String) + redirect_url = "/redirect?referer=#{current_page}" + else + redirect_url = "https://redirect.invidious.io#{env.request.resource}" + end + end +end diff --git a/src/invidious/views/search.ecr b/src/invidious/views/search.ecr index f1f6ab20..7110703e 100644 --- a/src/invidious/views/search.ecr +++ b/src/invidious/views/search.ecr @@ -9,18 +9,13 @@ url_prev_page = "/search?q=#{search_query_encoded}&#{filter_params}&page=#{query.page - 1}" url_next_page = "/search?q=#{search_query_encoded}&#{filter_params}&page=#{query.page + 1}" + + redirect_url = Invidious::Frontend::Misc.redirect_url(env) -%> -<% if videos.size == 0 %> -

- "><%= translate(locale, "Broken? Try another Invidious Instance!") %> -

-<%- else -%> - <%= Invidious::Frontend::SearchFilters.generate(query.filters, query.text, query.page, locale) %> -<%- end -%> - -<% if videos.size == 0 %>
<% else %>
<% end %> +<%= Invidious::Frontend::SearchFilters.generate(query.filters, query.text, query.page, locale) %> +
@@ -36,11 +31,21 @@
+<%- if videos.empty? -%> +
+
+ <%= translate(locale, "search_message_no_results") %>

+ <%= translate(locale, "search_message_change_filters_or_query") %>

+ <%= translate(locale, "search_message_use_another_instance", redirect_url) %> +
+
+<%- else -%>
- <% videos.each do |item| %> + <%- videos.each do |item| -%> <%= rendered "components/item" %> - <% end %> + <%- end -%>
+<%- end -%>
-- cgit v1.2.3