summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRadoslavL <rlelchev@abv.bg>2023-10-26 11:30:12 +0300
committerRadoslavL <rlelchev@abv.bg>2023-10-26 11:30:12 +0300
commite8c2388589494f1370231154ffb2030c3871291b (patch)
tree4ee1ed46429a933a336df21fd06629e34b0d0266
parent995df2d296fb5204887bc29f5ae3363cd286717f (diff)
downloadinvidious-e8c2388589494f1370231154ffb2030c3871291b.tar.gz
invidious-e8c2388589494f1370231154ffb2030c3871291b.tar.bz2
invidious-e8c2388589494f1370231154ffb2030c3871291b.zip
Removed the purging of the query parameters
-rw-r--r--assets/js/pagination.js12
-rw-r--r--src/invidious/frontend/pagination.cr6
-rw-r--r--src/invidious/views/channel.ecr1
3 files changed, 14 insertions, 5 deletions
diff --git a/assets/js/pagination.js b/assets/js/pagination.js
index 61473d55..2d985920 100644
--- a/assets/js/pagination.js
+++ b/assets/js/pagination.js
@@ -32,14 +32,22 @@ function button_press(){
// On the first page, the stored continuation token is null.
if (prev_ctoken === null) {
sessionStorage.removeItem(CONT_CACHE_KEY);
- window.location.href = window.location.href.split('?')[0];
+ let url = window.location.href.split('?')[0];
+ let params = window.location.href.split('?')[1];
+ let url_params = new URLSearchParams(params);
+ url_params.delete('continuation');
+ window.location.href = `${url}?${url_params.toString()}`;
return;
}
sessionStorage.setItem(CONT_CACHE_KEY, JSON.stringify(prev_data));
+ let url = window.location.href.split('?')[0];
+ let params = window.location.href.split('?')[1];
+ let url_params = new URLSearchParams(params);
+ url_params.set("continuation", prev_ctoken);
- window.location.href = `${window.location.pathname}?continuation=${prev_ctoken}`;
+ window.location.href = `${url}?${url_params.toString()}`;
};
addEventListener('DOMContentLoaded', function(){
diff --git a/src/invidious/frontend/pagination.cr b/src/invidious/frontend/pagination.cr
index 13464503..a29f5936 100644
--- a/src/invidious/frontend/pagination.cr
+++ b/src/invidious/frontend/pagination.cr
@@ -90,7 +90,7 @@ module Invidious::Frontend::Pagination
end
end
- def nav_ctoken(locale : String?, *, base_url : String | URI, ctoken : String?, first_page : Bool)
+ def nav_ctoken(locale : String?, *, base_url : String | URI, ctoken : String?, first_page : Bool, params : URI::Params)
return String.build do |str|
str << %(<div class="h-box">\n)
str << %(<div class="page-nav-container flexible">\n)
@@ -106,8 +106,8 @@ module Invidious::Frontend::Pagination
str << %(<div class="page-next-container flex-right">)
if !ctoken.nil?
- params_next = URI::Params{"continuation" => ctoken}
- url_next = HttpServer::Utils.add_params_to_url(base_url, params_next)
+ params["continuation"] = ctoken
+ url_next = HttpServer::Utils.add_params_to_url(base_url, params)
self.next_page(str, locale, url_next.to_s)
end
diff --git a/src/invidious/views/channel.ecr b/src/invidious/views/channel.ecr
index 9349fffc..fbb43358 100644
--- a/src/invidious/views/channel.ecr
+++ b/src/invidious/views/channel.ecr
@@ -22,6 +22,7 @@
base_url: relative_url,
ctoken: next_continuation,
first_page: continuation.nil?,
+ params: env.params.query,
)
%>