def users_list(request, _page_index=1): # Check is login _islogin = __is_login(request) _page_title = u"网友们" _users = User.objects.order_by("-addtime") _login_user = None _login_user_friend_list = None if _islogin: try: _login_user = User.objects.get(id=__user_id(request)) _login_user_friend_list = _login_user.friend.all() except: _login_user = None # Page Bar _page_bar = formatter.pagebar(_users, _page_index, "", "control/userslist_pagebar.html") # Get message list _offset_index = (int(_page_index) - 1) * PAGE_SIZE _last_item_index = PAGE_SIZE * int(_page_index) # Get current page _users = _users[_offset_index:_last_item_index] # Body content _template = loader.get_template("users_list.html") _context = Context( { "page_tile": _page_title, "users": _users, "login_user_friend_list": _login_user_friend_list, "islogin": _islogin, "userid": __user_id(request), "page_bar": _page_bar, } ) _output = _template.render(_context) return HttpResponse(_output)
def index_user_page(request, _username, _page_index): # Get user login state _islogin = __is_login(request) _page_title = u"首页" try: # Get post params _message = request.POST["message"] _is_post = True except KeyError: _is_post = False # save message if _is_post: # check login if not _islogin: return HttpResponseRedirect("/signin/") # save message _category = Category.objects.get_or_create(name=u"网页") try: _user = User.objects.get(id=__user_id(request)) except: return HttpResponseRedirect("/signin/") _note = Note(message=_message, category=_category, user=_user) _note.save(self, *args, **kwargs) return HttpResponseRedirect("/user/" + _user.username) _userid = -1 # Get message list _offset_index = (int(_page_index) - 1) * PAGE_SIZE _last_item_index = PAGE_SIZE * int(_page_index) _login_user_friend_list = None if _islogin: # Get friend message if user is logined _login_user = User.objects.get(username=__user_name(request)) _login_user_friend_list = _login_user.friend.all() else: _login_user = None _friends = None _self_home = False if _username != "": # there is get user's message _user = get_object_or_404(User, username=_username) _userid = _user.id _notes = Note.objects.filter(user=_user).order_by("-addtime") _page_title = u"%s" % _user.realname # Get friend lists _friends = _user.friend.get_query_set().order_by("id")[0:FRIEND_LIST_MAX] if _userid == __user_id(request): _self_home = True else: # Get all message _user = None if _islogin: _query_users = [_login_user] _query_users.extend(_login_user.friend.all()) _notes = Note.objects.filter(user__in=_query_users).order_by("-addtime") else: # Get all user message _notes = Note.objects.order_by("-addtime") # Page bar _page_bar = formatter.pagebar(_notes, _page_index, _username) # Get current page _notes = _notes[_offset_index:_last_item_index] # Body content _template = loader.get_template("index.html") _context = Context( { "page_title": _page_title, "notes": _notes, "islogin": _islogin, "userid": __user_id(request), "self_home": _self_home, "user": _user, "page_bar": _page_bar, "friends": _friends, "login_user_friend_list": _login_user_friend_list, } ) _output = _template.render(_context) return HttpResponse(_output)