def conversations(request): for foreign_language in request.user.preferreduserlanguage_set.all(): # we update these in middleware but only when the session-length # cookie is not set. So it makes sense to update them when a user # arrives at the conversations page. models.update_visit_stats(request.user.native_language, foreign_language.language) models.WaitingUser.objects.filter(user=request.user).delete() languages_json = json.dumps([(l.language, l.language_name()) for l in request.user.preferreduserlanguage_set.all()]) flash_vars = json.dumps( { "cirrus_url": settings.CIRRUS_URL, "stomp_login": "******", "stomp_password": "******", "stomp_server": settings.STOMP_SERVER, "stomp_port": settings.STOMP_PORT, "stomp_subscribe_destination": request.user.stomp_destination(), } ) return render_to_response( "conversations/conversations.html", { "languages_json": languages_json, "flash_vars": flash_vars, "js_debug": settings.JS_DEBUG, "scripts": scriptlists.JS, }, context_instance=RequestContext(request), )
def _make_visit_records(self, user): visit_record_ids = [] for foreign_language in user.preferreduserlanguage_set.all(): visit_record = models.ConversationsVisit( user=user, native_language=user.native_language, foreign_language=foreign_language.language) visit_record.save() visit_record_ids.append(visit_record.id) models.update_visit_stats( user.native_language, foreign_language.language) return ','.join([str(id) for id in visit_record_ids])