summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/invidious/frontend/misc.cr14
-rw-r--r--src/invidious/views/search.ecr27
2 files changed, 30 insertions, 11 deletions
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)
-%>
<!-- Search redirection and filtering UI -->
-<% if videos.size == 0 %>
- <h3 style="text-align: center">
- <a href="/redirect?referer=<%= env.get?("current_page") %>"><%= translate(locale, "Broken? Try another Invidious Instance!") %></a>
- </h3>
-<%- else -%>
- <%= Invidious::Frontend::SearchFilters.generate(query.filters, query.text, query.page, locale) %>
-<%- end -%>
-
-<% if videos.size == 0 %><hr style="margin: 0;"/><% else %><hr/><% end %>
+<%= Invidious::Frontend::SearchFilters.generate(query.filters, query.text, query.page, locale) %>
+<hr/>
<div class="pure-g h-box v-box">
<div class="pure-u-1 pure-u-lg-1-5">
@@ -36,11 +31,21 @@
</div>
</div>
+<%- if videos.empty? -%>
+<div class="h-box no-results-error">
+ <div>
+ <%= translate(locale, "search_message_no_results") %><br/><br/>
+ <%= translate(locale, "search_message_change_filters_or_query") %><br/><br/>
+ <%= translate(locale, "search_message_use_another_instance", redirect_url) %>
+ </div>
+</div>
+<%- else -%>
<div class="pure-g">
- <% videos.each do |item| %>
+ <%- videos.each do |item| -%>
<%= rendered "components/item" %>
- <% end %>
+ <%- end -%>
</div>
+<%- end -%>
<div class="pure-g h-box">
<div class="pure-u-1 pure-u-lg-1-5">