def post(self): form = NewMessageForm(self.request_arguments) if form.validate(): TextShowMessage.increment(form.message.data) self.render_view( IndexView, form=NewMessageForm(), messages_dict=self._get_messages_dict() ) else: self.render_view( IndexView, form=form, messages_dict=self._get_messages_dict())
def get(self): before_time = self.get_argument('before', None) if before_time: try: before_time = int(before_time) * 3600 except ValueError: raise HTTPError(http.client.BAD_REQUEST) messages = TextShowMessage.get_recent(timestamp=before_time) messages = tuple(messages) if len(messages) > 100: pager_next = messages[-1].hour * 3600 else: pager_next = None if messages: self.render_view(RecentView, messages=messages[:100], pager_next=pager_next) else: raise HTTPError(http.client.NOT_FOUND)
def _get_messages_dict(self): return wuffsite.model.textshow.aggregate( TextShowMessage.get_recent() )