##// END OF EJS Templates
Pass all GET params over thread list links
neko259 -
r1375:b88219b9 default
parent child Browse files
Show More
@@ -65,7 +65,7 b' class AllThreadsView(PostMixin, BaseBoar'
65 65 params[CONTEXT_FORM] = form
66 66 params[PARAMETER_BANNERS] = Banner.objects.order_by('-id').all()
67 67
68 self.get_page_context(paginator, params, page)
68 self.get_page_context(paginator, params, page, request.GET.dict())
69 69
70 70 return render(request, TEMPLATE, params)
71 71
@@ -82,7 +82,7 b' class AllThreadsView(PostMixin, BaseBoar'
82 82
83 83 return self.get(request, form)
84 84
85 def get_page_context(self, paginator, params, page):
85 def get_page_context(self, paginator, params, page, url_params):
86 86 """
87 87 Get pagination context variables
88 88 """
@@ -92,20 +92,24 b' class AllThreadsView(PostMixin, BaseBoar'
92 92 params[PARAMETER_CURRENT_PAGE] = current_page
93 93 if current_page.has_previous():
94 94 params[PARAMETER_PREV_LINK] = self.get_previous_page_link(
95 current_page)
95 current_page, url_params)
96 96 if current_page.has_next():
97 params[PARAMETER_NEXT_LINK] = self.get_next_page_link(current_page)
97 params[PARAMETER_NEXT_LINK] = self.get_next_page_link(current_page,
98 url_params)
99
100 def get_previous_page_link(self, current_page, params):
101 params['page'] = current_page.previous_page_number()
102 return self.get_reverse_url(params)
98 103
99 def get_previous_page_link(self, current_page):
100 return self.get_reverse_url() + '?page=' \
101 + str(current_page.previous_page_number())
104 def get_next_page_link(self, current_page, params):
105 params['page'] = current_page.next_page_number()
106 return self.get_reverse_url(params)
102 107
103 def get_next_page_link(self, current_page):
104 return self.get_reverse_url() + '?page=' \
105 + str(current_page.next_page_number())
108 def get_url_params(self, params):
109 return '?' + '&'.join(['{}={}'.format(key, params[key]) for key in params.keys()])
106 110
107 def get_reverse_url(self):
108 return reverse('index')
111 def get_reverse_url(self, params):
112 return reverse('index') + self.get_url_params(params)
109 113
110 114 @transaction.atomic
111 115 def create_thread(self, request, form: ThreadForm, html_response=True):
@@ -55,9 +55,8 b' class TagView(AllThreadsView, Dispatcher'
55 55
56 56 return params
57 57
58 def get_reverse_url(self):
59 return reverse('tag', kwargs={
60 'tag_name': self.tag_name})
58 def get_reverse_url(self, params):
59 return reverse('tag', kwargs={'tag_name': self.tag_name}) + self.get_url_params(params)
61 60
62 61 def get(self, request, tag_name, form=None):
63 62 self.tag_name = tag_name
General Comments 0
You need to be logged in to leave comments. Login now