summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomasz Zielinski <tomasz.zielinski@pyconsultant.eu>2012-01-14 14:58:04 +0100
committerTomasz Zielinski <tomasz.zielinski@pyconsultant.eu>2012-01-14 14:58:04 +0100
commitd40a86164c91ce26ea796a6253712bdab8218dea (patch)
tree5d88d83d50a425892e412617afb4b329aae881e9
parent6ebb5ede1fc24a60a43a7ca14b0611e185aca4ec (diff)
downloadaskbot-d40a86164c91ce26ea796a6253712bdab8218dea.tar.gz
askbot-d40a86164c91ce26ea796a6253712bdab8218dea.tar.bz2
askbot-d40a86164c91ce26ea796a6253712bdab8218dea.zip
Page_size removed for questions
-rw-r--r--askbot/const/__init__.py7
-rw-r--r--askbot/middleware/pagesize.py57
-rw-r--r--askbot/models/__init__.py2
-rw-r--r--askbot/models/question.py4
-rw-r--r--askbot/models/tag.py9
-rw-r--r--askbot/search/state_manager.py16
-rw-r--r--askbot/setup_templates/settings.py1
-rw-r--r--askbot/setup_templates/settings.py.mustache1
-rw-r--r--askbot/skins/common/media/js/utils.js1
-rw-r--r--askbot/skins/common/templates/widgets/related_tags.html2
-rw-r--r--askbot/skins/default/templates/macros.html34
-rw-r--r--askbot/skins/default/templates/main_page/paginator.html3
-rw-r--r--askbot/skins/default/templates/main_page/questions_loop.html2
-rw-r--r--askbot/skins/default/templates/main_page/tab_bar.html2
-rw-r--r--askbot/skins/default/templates/widgets/contributors.html2
-rw-r--r--askbot/startup_procedures.py1
-rw-r--r--askbot/tests/search_state_tests.py30
-rw-r--r--askbot/urls.py1
-rw-r--r--askbot/views/readers.py18
-rw-r--r--askbot/views/users.py3
20 files changed, 35 insertions, 161 deletions
diff --git a/askbot/const/__init__.py b/askbot/const/__init__.py
index 0386a39d..56ef89cf 100644
--- a/askbot/const/__init__.py
+++ b/askbot/const/__init__.py
@@ -67,12 +67,7 @@ TAG_LIST_FORMAT_CHOICES = (
PAGE_SIZE_CHOICES = (('10', '10',), ('30', '30',), ('50', '50',),)
ANSWERS_PAGE_SIZE = 10
-#todo: remove this duplication
-QUESTIONS_PER_PAGE_USER_CHOICES = (
- (10, u'10'),
- (30, u'30'),
- (50, u'50'),
-)
+QUESTIONS_PER_PAGE_USER_CHOICES = ((10, u'10'), (30, u'30'), (50, u'50'),)
UNANSWERED_QUESTION_MEANING_CHOICES = (
('NO_ANSWERS', _('Question has no answers')),
diff --git a/askbot/middleware/pagesize.py b/askbot/middleware/pagesize.py
deleted file mode 100644
index f10607ad..00000000
--- a/askbot/middleware/pagesize.py
+++ /dev/null
@@ -1,57 +0,0 @@
-import logging
-import traceback
-import sys
-from django.http import HttpResponse, Http404
-from django.template import RequestContext
-from django.conf import settings
-from askbot import utils
-
-# used in questions
-QUESTIONS_PAGE_SIZE = 10
-class QuestionsPageSizeMiddleware(object):
- def process_request(self, request):
- # Set flag to False by default. If it is True, then need to be saved.
- page_size_changed = False
- # get page_size from session, if failed then get default value
- user_page_size = request.session.get("page_size", QUESTIONS_PAGE_SIZE)
- # set page_size equal to logon user specified value in database
- if request.user.is_authenticated() \
- and request.user.questions_per_page > 0:
- user_page_size = request.user.questions_per_page
-
- try:
- # get new page_size from UI selection
- page_size = int(request.GET.get('page_size', user_page_size))
- if page_size != user_page_size:
- page_size_changed = True
-
- except ValueError:
- page_size = user_page_size
-
- # save this page_size to user database
- if page_size_changed:
- if request.user.is_authenticated():
- user = request.user
- user.questions_per_page = page_size
- user.save()
- # put page_size into session
- request.session["page_size"] = page_size
-
- def process_exception(self, request, exception):
- #todo: move this to separate middleware
- exc_type, exc_value, exc_traceback = sys.exc_info()
- logging.critical(''.join(traceback.format_tb(exc_traceback)))
- logging.critical(exc_type)
- logging.critical(exc_value)
- if exc_type == Http404:
- return None
- if getattr(settings, 'DEBUG', False) == True:
- return None
- else:
- #todo - we have a strange requirement - maybe remove
- #500.html needs RequestContext, while handler500 only receives Context
- #need to log some more details about the request
- logging.critical(utils.http.get_request_info(request))
- from askbot.skins.loaders import get_template
- template = get_template('500.jinja.html', request)
- return HttpResponse(template.render(RequestContext(request)))
diff --git a/askbot/models/__init__.py b/askbot/models/__init__.py
index 2dca7a7e..e7feecce 100644
--- a/askbot/models/__init__.py
+++ b/askbot/models/__init__.py
@@ -68,7 +68,7 @@ User.add_to_class('gold', models.SmallIntegerField(default=0))
User.add_to_class('silver', models.SmallIntegerField(default=0))
User.add_to_class('bronze', models.SmallIntegerField(default=0))
User.add_to_class(
- 'questions_per_page',
+ 'questions_per_page', # TODO: remove me and const.QUESTIONS_PER_PAGE_USER_CHOICES, we're no longer used!
models.SmallIntegerField(
choices=const.QUESTIONS_PER_PAGE_USER_CHOICES,
default=10
diff --git a/askbot/models/question.py b/askbot/models/question.py
index 5bca15f9..8aed4318 100644
--- a/askbot/models/question.py
+++ b/askbot/models/question.py
@@ -126,7 +126,7 @@ class ThreadManager(models.Manager):
)
- def run_advanced_search(self, request_user=None, search_state=None): # TODO: !! review and fix this
+ def run_advanced_search(self, request_user, search_state, page_size): # TODO: !! review and fix this
"""
all parameters are guaranteed to be clean
however may not relate to database - in that case
@@ -249,7 +249,7 @@ class ThreadManager(models.Manager):
orderby = QUESTION_ORDER_BY_MAP[sort_method]
qs = qs.order_by(orderby)
- related_tags = Tag.objects.get_related_to_search(questions = qs, search_state = search_state, ignored_tag_names = ignored_tag_names) # TODO: !!
+ related_tags = Tag.objects.get_related_to_search(questions = qs, page_size = page_size, ignored_tag_names = ignored_tag_names) # TODO: !!
if askbot_settings.USE_WILDCARD_TAGS and request_user.is_authenticated():
meta_data['interesting_tag_names'].extend(request_user.interesting_tags.split())
diff --git a/askbot/models/tag.py b/askbot/models/tag.py
index ed0454be..31ac9806 100644
--- a/askbot/models/tag.py
+++ b/askbot/models/tag.py
@@ -66,17 +66,12 @@ class TagQuerySet(models.query.QuerySet):
tag_filter |= models.Q(name__startswith = next_tag[:-1])
return self.filter(tag_filter)
- def get_related_to_search(
- self,
- questions = None,
- search_state = None,
- ignored_tag_names = None
- ):
+ def get_related_to_search(self, questions, page_size, ignored_tag_names):
"""must return at least tag names, along with use counts
handle several cases to optimize the query performance
"""
- if questions.count() > search_state.page_size * 3:
+ if questions.count() > page_size * 3:
"""if we have too many questions or
search query is the most common - just return a list
of top tags"""
diff --git a/askbot/search/state_manager.py b/askbot/search/state_manager.py
index 840901d3..7ba124d7 100644
--- a/askbot/search/state_manager.py
+++ b/askbot/search/state_manager.py
@@ -84,9 +84,9 @@ class SearchState(object):
@classmethod
def get_empty(cls):
- return cls(scope=None, sort=None, query=None, tags=None, author=None, page=None, page_size=None, user_logged_in=None)
+ return cls(scope=None, sort=None, query=None, tags=None, author=None, page=None, user_logged_in=None)
- def __init__(self, scope, sort, query, tags, author, page, page_size, user_logged_in):
+ def __init__(self, scope, sort, query, tags, author, page, user_logged_in):
# INFO: zip(*[('a', 1), ('b', 2)])[0] == ('a', 'b')
if (scope not in zip(*const.POST_SCOPE_LIST)[0]) or (scope == 'favorite' and not user_logged_in):
@@ -122,11 +122,6 @@ class SearchState(object):
if self.page == 0: # in case someone likes jokes :)
self.page = 1
- if not page_size or page_size not in zip(*const.PAGE_SIZE_CHOICES)[0]:
- self.page_size = int(askbot_settings.DEFAULT_QUESTIONS_PAGE_SIZE)
- else:
- self.page_size = int(page_size)
-
def __str__(self):
return self.query_string()
@@ -168,8 +163,6 @@ class SearchState(object):
lst.append('tags:%s' % urlquote(const.TAG_SEP.join(self.tags), safe=self.SAFE_CHARS))
if self.author:
lst.append('author:%d' % self.author)
- if self.page_size:
- lst.append('page_size:%d' % self.page_size)
if self.page:
lst.append('page:%d' % self.page)
return '/'.join(lst) + '/'
@@ -212,8 +205,3 @@ class SearchState(object):
ss = self.deepcopy()
ss.page = new_page
return ss
-
- def change_page_size(self, new_page_size):
- ss = self.deepcopy()
- ss.page_size = new_page_size
- return ss
diff --git a/askbot/setup_templates/settings.py b/askbot/setup_templates/settings.py
index 27ee77dc..ed51d2c4 100644
--- a/askbot/setup_templates/settings.py
+++ b/askbot/setup_templates/settings.py
@@ -104,7 +104,6 @@ MIDDLEWARE_CLASSES = (
#below is askbot stuff for this tuple
'askbot.middleware.anon_user.ConnectToSessionMessagesMiddleware',
'askbot.middleware.forum_mode.ForumModeMiddleware',
- 'askbot.middleware.pagesize.QuestionsPageSizeMiddleware',
'askbot.middleware.cancel.CancelActionMiddleware',
'django.middleware.transaction.TransactionMiddleware',
#'debug_toolbar.middleware.DebugToolbarMiddleware',
diff --git a/askbot/setup_templates/settings.py.mustache b/askbot/setup_templates/settings.py.mustache
index 4b01b4df..0575266c 100644
--- a/askbot/setup_templates/settings.py.mustache
+++ b/askbot/setup_templates/settings.py.mustache
@@ -103,7 +103,6 @@ MIDDLEWARE_CLASSES = (
#below is askbot stuff for this tuple
'askbot.middleware.anon_user.ConnectToSessionMessagesMiddleware',
'askbot.middleware.forum_mode.ForumModeMiddleware',
- 'askbot.middleware.pagesize.QuestionsPageSizeMiddleware',
'askbot.middleware.cancel.CancelActionMiddleware',
'django.middleware.transaction.TransactionMiddleware',
#'debug_toolbar.middleware.DebugToolbarMiddleware',
diff --git a/askbot/skins/common/media/js/utils.js b/askbot/skins/common/media/js/utils.js
index 9f1510ca..0b9957a0 100644
--- a/askbot/skins/common/media/js/utils.js
+++ b/askbot/skins/common/media/js/utils.js
@@ -179,7 +179,6 @@ QSutils.patch_query_string = function (query_string, patch, remove) {
add_selector('query');
add_selector('tags');
add_selector('author');
- add_selector('page_size');
add_selector('page');
return new_query_string;
diff --git a/askbot/skins/common/templates/widgets/related_tags.html b/askbot/skins/common/templates/widgets/related_tags.html
index 84e2ce0c..09baa9e7 100644
--- a/askbot/skins/common/templates/widgets/related_tags.html
+++ b/askbot/skins/common/templates/widgets/related_tags.html
@@ -1,4 +1,4 @@
-{% cache 0 "tags" tags search_tags scope sort query context.page context.page_size language_code %}
+{% cache 0 "tags" tags search_tags scope sort query context.page language_code %}
<div class="box">
<h2>{% trans %}Related tags{% endtrans %}</h2>
{% if tag_list_type == 'list' %}
diff --git a/askbot/skins/default/templates/macros.html b/askbot/skins/default/templates/macros.html
index 3af57587..9ddf54d4 100644
--- a/askbot/skins/default/templates/macros.html
+++ b/askbot/skins/default/templates/macros.html
@@ -603,40 +603,6 @@ answer {% if answer.accepted() %}accepted-answer{% endif %} {% if answer.author_
{% endspaceless %}
{%- endmacro -%}
-{%- macro pagesize_switch_main_page(p, position, search_state) -%} {# p is paginator context #}
- {% spaceless %}
- {% if p.is_paginated %}
- <div class="paginator" style="float:{{position}}">
- <span class="text">{% trans %}posts per page{% endtrans %}</span>
- {% if p.page_size == 10 %}
- <span class="curr">10</span>
- {% else %}
- <span class="page"><a href="{{ search_state.change_page_size(10).full_url() }}">10</a></span>
- {% endif %}
-
- {% if p.page_size == 30 %}
- <span class="curr">30</span>
- {% else %}
- <span class="page"><a href="{{ search_state.change_page_size(30).full_url() }}">30</a></span>
- {% endif %}
-
- {% if p.page_size == 50 %}
- <span class="curr">50</span>
- {% else %}
- <span class="page"><a href="{{ search_state.change_page_size(50).full_url() }}">50</a></span>
- {% endif %}
- </div>
- {% endif %}
- {% endspaceless %}
-{%- endmacro -%}
-
-
-
-
-
-
-
-
{%- macro inbox_link(user) -%}
{% if user.new_response_count > 0 or user.seen_response_count > 0 %}
diff --git a/askbot/skins/default/templates/main_page/paginator.html b/askbot/skins/default/templates/main_page/paginator.html
index 6697ca08..e7dc246a 100644
--- a/askbot/skins/default/templates/main_page/paginator.html
+++ b/askbot/skins/default/templates/main_page/paginator.html
@@ -1,8 +1,7 @@
{% import "macros.html" as macros %}
-{% if questions_count > page_size %}{# todo: remove magic number #}
+{% if questions_count > page_size %}
<div id="pager" class="pager">
{{ macros.paginator_main_page(context|setup_paginator, position='left', search_state=search_state) }}
- {{ macros.pagesize_switch_main_page(context, position='right', search_state=search_state) }}
<div class="clean"></div>
</div>
{% endif %}
diff --git a/askbot/skins/default/templates/main_page/questions_loop.html b/askbot/skins/default/templates/main_page/questions_loop.html
index a6d4f21b..7e924e63 100644
--- a/askbot/skins/default/templates/main_page/questions_loop.html
+++ b/askbot/skins/default/templates/main_page/questions_loop.html
@@ -1,5 +1,5 @@
{% import "macros.html" as macros %}
-{# cache 0 "questions" questions search_tags scope sort query context.page context.page_size language_code #}
+{# cache 0 "questions" questions search_tags scope sort query context.page language_code #}
{% for question_post in questions.object_list %}
{{macros.question_summary(question_post.thread, question_post, search_state=search_state)}}
{% endfor %}
diff --git a/askbot/skins/default/templates/main_page/tab_bar.html b/askbot/skins/default/templates/main_page/tab_bar.html
index 533940d0..bcb32930 100644
--- a/askbot/skins/default/templates/main_page/tab_bar.html
+++ b/askbot/skins/default/templates/main_page/tab_bar.html
@@ -1,6 +1,6 @@
{% import "macros.html" as macros %}
{% load extra_filters %}
-{% cache 0 "scope_sort_tabs" search_tags request.user scope sort query context.page context.page_size language_code %}
+{% cache 0 "scope_sort_tabs" search_tags request.user scope sort query context.page language_code %}
<a class="rss"
{% if feed_url %}
href="{{settings.APP_URL}}{{feed_url}}"
diff --git a/askbot/skins/default/templates/widgets/contributors.html b/askbot/skins/default/templates/widgets/contributors.html
index 14651f80..9aa357dd 100644
--- a/askbot/skins/default/templates/widgets/contributors.html
+++ b/askbot/skins/default/templates/widgets/contributors.html
@@ -1,4 +1,4 @@
-{% cache 600 "contributors" contributors search_tags scope sort query context.page context.page_size language_code %}
+{% cache 600 "contributors" contributors search_tags scope sort query context.page language_code %}
<div id="contrib-users" class="box">
<h2 class="contributorback">{% trans %}Contributors{% endtrans %}</h2>
{% spaceless %}
diff --git a/askbot/startup_procedures.py b/askbot/startup_procedures.py
index 05426898..448f8a29 100644
--- a/askbot/startup_procedures.py
+++ b/askbot/startup_procedures.py
@@ -77,7 +77,6 @@ def test_middleware():
'django.contrib.auth.middleware.AuthenticationMiddleware',
'askbot.middleware.anon_user.ConnectToSessionMessagesMiddleware',
'askbot.middleware.forum_mode.ForumModeMiddleware',
- 'askbot.middleware.pagesize.QuestionsPageSizeMiddleware',
'askbot.middleware.cancel.CancelActionMiddleware',
'django.middleware.transaction.TransactionMiddleware',
'askbot.middleware.view_log.ViewLogMiddleware',
diff --git a/askbot/tests/search_state_tests.py b/askbot/tests/search_state_tests.py
index 4e60dcd6..791ee206 100644
--- a/askbot/tests/search_state_tests.py
+++ b/askbot/tests/search_state_tests.py
@@ -12,7 +12,6 @@ class SearchStateTests(AskbotTestCase):
tags=tags,
author=None,
page=None,
- page_size=None,
user_logged_in=False
)
@@ -20,7 +19,7 @@ class SearchStateTests(AskbotTestCase):
def test_no_selectors(self):
ss = self._ss()
self.assertEqual(
- 'scope:all/sort:activity-desc/page_size:30/page:1/', # search defaults
+ 'scope:all/sort:activity-desc/page:1/', # search defaults
ss.query_string()
)
@@ -34,12 +33,11 @@ class SearchStateTests(AskbotTestCase):
# INFO: URLs for the following selectors accept only digits!
author=None,
page='0',
- page_size='59',
user_logged_in=False
)
self.assertEqual(
- 'scope:all/sort:activity-desc/page_size:30/page:1/', # search defaults
+ 'scope:all/sort:activity-desc/page:1/', # search defaults
ss.query_string()
)
@@ -51,12 +49,11 @@ class SearchStateTests(AskbotTestCase):
tags='miki, mini',
author='12',
page='2',
- page_size='50',
user_logged_in=False
)
self.assertEqual(
- 'scope:unanswered/sort:age-desc/query:alfa/tags:miki,mini/author:12/page_size:50/page:2/',
+ 'scope:unanswered/sort:age-desc/query:alfa/tags:miki,mini/author:12/page:2/',
ss.query_string()
)
@@ -68,12 +65,11 @@ class SearchStateTests(AskbotTestCase):
tags='miki, mini',
author='12',
page='2',
- page_size='50',
user_logged_in=False
)
self.assertEqual(
- 'scope:all/sort:age-desc/query:alfa/tags:miki,mini/author:12/page_size:50/page:2/',
+ 'scope:all/sort:age-desc/query:alfa/tags:miki,mini/author:12/page:2/',
ss.query_string()
)
@@ -84,12 +80,11 @@ class SearchStateTests(AskbotTestCase):
tags='miki, mini',
author='12',
page='2',
- page_size='50',
user_logged_in=True
)
self.assertEqual(
- 'scope:favorite/sort:age-desc/query:alfa/tags:miki,mini/author:12/page_size:50/page:2/',
+ 'scope:favorite/sort:age-desc/query:alfa/tags:miki,mini/author:12/page:2/',
ss.query_string()
)
@@ -105,12 +100,11 @@ class SearchStateTests(AskbotTestCase):
tags='miki, mini',
author='12',
page='2',
- page_size='50',
user_logged_in=False
)
self.assertEqual(
- 'scope:all/sort:relevance-desc/query:hejho/tags:miki,mini/author:12/page_size:50/page:2/',
+ 'scope:all/sort:relevance-desc/query:hejho/tags:miki,mini/author:12/page:2/',
ss.query_string()
)
@@ -121,12 +115,11 @@ class SearchStateTests(AskbotTestCase):
tags='miki, mini',
author='12',
page='2',
- page_size='50',
user_logged_in=False
)
self.assertEqual(
- 'scope:all/sort:activity-desc/tags:miki,mini/author:12/page_size:50/page:2/',
+ 'scope:all/sort:activity-desc/tags:miki,mini/author:12/page:2/',
ss.query_string()
)
@@ -139,12 +132,11 @@ class SearchStateTests(AskbotTestCase):
tags='miki, mini',
author='12',
page='2',
- page_size='50',
user_logged_in=False
)
self.assertEqual(
- 'scope:all/sort:activity-desc/query:hejho/tags:miki,mini/author:12/page_size:50/page:2/',
+ 'scope:all/sort:activity-desc/query:hejho/tags:miki,mini/author:12/page:2/',
ss.query_string()
)
@@ -153,14 +145,14 @@ class SearchStateTests(AskbotTestCase):
def test_query_escaping(self):
ss = self._ss(query=' alfa miki maki +-%#?= lalala/: ') # query coming from URL is already unescaped
self.assertEqual(
- 'scope:all/sort:activity-desc/query:alfa%20miki%20maki%20+-%25%23%3F%3D%20lalala%2F%3A/page_size:30/page:1/',
+ 'scope:all/sort:activity-desc/query:alfa%20miki%20maki%20+-%25%23%3F%3D%20lalala%2F%3A/page:1/',
ss.query_string()
)
def test_tag_escaping(self):
ss = self._ss(tags=' aA09_+.-#, miki ') # tag string coming from URL is already unescaped
self.assertEqual(
- 'scope:all/sort:activity-desc/tags:aA09_+.-%23,miki/page_size:30/page:1/',
+ 'scope:all/sort:activity-desc/tags:aA09_+.-%23,miki/page:1/',
ss.query_string()
)
@@ -172,7 +164,7 @@ class SearchStateTests(AskbotTestCase):
)
self.assertEquals(ss.stripped_query, '" haha hehe hoho')
self.assertEqual(
- 'scope:all/sort:activity-desc/query:%22%40anna%20haha%20%40%22maria%20fernanda%22%20%40%27diego%20maradona%27%20hehe%20%5Buser%3Akarl%20%20marx%5D%20hoho%20%20user%3A%27%20george%20bush%20%20%27/page_size:30/page:1/',
+ 'scope:all/sort:activity-desc/query:%22%40anna%20haha%20%40%22maria%20fernanda%22%20%40%27diego%20maradona%27%20hehe%20%5Buser%3Akarl%20%20marx%5D%20hoho%20%20user%3A%27%20george%20bush%20%20%27/page:1/',
ss.query_string()
)
diff --git a/askbot/urls.py b/askbot/urls.py
index 661581e5..de7b3026 100644
--- a/askbot/urls.py
+++ b/askbot/urls.py
@@ -68,7 +68,6 @@ urlpatterns = patterns('',
r'(%s)?' % r'/query:(?P<query>[^/]+)' + # INFO: question string cannot contain slash (/), which is a section terminator
r'(%s)?' % r'/tags:(?P<tags>[\w+.#,-]+)' + # Should match: const.TAG_CHARS + ','; TODO: Is `#` char decoded by the time URLs are processed ??
r'(%s)?' % r'/author:(?P<author>\d+)' +
- r'(%s)?' % r'/page_size:(?P<page_size>\d+)' +
r'(%s)?' % r'/page:(?P<page>\d+)' +
r'/$'),
diff --git a/askbot/views/readers.py b/askbot/views/readers.py
index b227c0d5..1d592ab6 100644
--- a/askbot/views/readers.py
+++ b/askbot/views/readers.py
@@ -75,13 +75,15 @@ def questions(request, **kwargs):
#######
- qs, meta_data, related_tags = models.Thread.objects.run_advanced_search(request_user=request.user, search_state=search_state)
+ page_size = int(askbot_settings.DEFAULT_QUESTIONS_PAGE_SIZE)
+
+ qs, meta_data, related_tags = models.Thread.objects.run_advanced_search(request_user=request.user, search_state=search_state, page_size=page_size)
tag_list_type = askbot_settings.TAG_LIST_FORMAT
if tag_list_type == 'cloud': #force cloud to sort by name
related_tags = sorted(related_tags, key = operator.attrgetter('name'))
- paginator = Paginator(qs, search_state.page_size)
+ paginator = Paginator(qs, page_size)
if paginator.num_pages < search_state.page:
search_state.page = 1
page = paginator.page(search_state.page)
@@ -90,7 +92,7 @@ def questions(request, **kwargs):
contributors = models.Thread.objects.get_thread_contributors(contributors_threads)
paginator_context = {
- 'is_paginated' : (paginator.count > search_state.page_size),
+ 'is_paginated' : (paginator.count > page_size),
'pages': paginator.num_pages,
'page': search_state.page,
@@ -100,7 +102,7 @@ def questions(request, **kwargs):
'next': page.next_page_number(),
'base_url' : search_state.query_string(),#todo in T sort=>sort_method
- 'page_size' : search_state.page_size,#todo in T pagesize -> page_size
+ 'page_size' : page_size,#todo in T pagesize -> page_size
}
# We need to pass the rss feed url based
@@ -130,12 +132,12 @@ def questions(request, **kwargs):
question_counter = ungettext('%(q_num)s question', '%(q_num)s questions', q_count)
question_counter = question_counter % {'q_num': humanize.intcomma(q_count),}
- if q_count > search_state.page_size:
+ if q_count > page_size:
paginator_tpl = get_template('main_page/paginator.html', request)
paginator_html = paginator_tpl.render(Context({
'context': functions.setup_paginator(paginator_context),
'questions_count': q_count,
- 'page_size' : search_state.page_size,
+ 'page_size' : page_size,
'search_state': search_state,
}))
else:
@@ -160,7 +162,7 @@ def questions(request, **kwargs):
'faces': [extra_tags.gravatar(contributor, 48) for contributor in contributors],
'feed_url': context_feed_url,
'query_string': search_state.query_string(),
- 'page_size' : search_state.page_size,
+ 'page_size' : page_size,
'questions': questions_html.replace('\n',''),
}
ajax_data['related_tags'] = [{
@@ -183,7 +185,7 @@ def questions(request, **kwargs):
'language_code': translation.get_language(),
'name_of_anonymous_user' : models.get_name_of_anonymous_user(),
'page_class': 'main-page',
- 'page_size': search_state.page_size,
+ 'page_size': page_size,
'query': search_state.query,
'questions' : page,
'questions_count' : paginator.count,
diff --git a/askbot/views/users.py b/askbot/views/users.py
index 2b779d44..28561bf4 100644
--- a/askbot/views/users.py
+++ b/askbot/views/users.py
@@ -796,14 +796,13 @@ def user(request, id, slug=None, tab_name=None):
user_view_func = USER_VIEW_CALL_TABLE.get(tab_name, user_stats)
- search_state = SearchState(
+ search_state = SearchState( # Non-default SearchState with user data set
scope=None,
sort=None,
query=None,
tags=None,
author=profile_owner.id,
page=None,
- page_size=None,
user_logged_in=profile_owner.is_authenticated(),
)