def messages(request, association_pseudo): association = get_object_or_404(Association,pseudo=association_pseudo) if association.est_cachee_a(request.user.profile): return redirect(index) membres = Adhesion.objects.filter(association__pseudo = association_pseudo).order_by('-ordre', 'eleve__last_name') list_messages = Message.accessibles_par(request.user.profile).filter(association__pseudo=association_pseudo).order_by('-date') return render(request, 'association/messages.html', {'association' : association, 'list_messages': list_messages, 'membres': membres})
def search(request): query_string = '' found_messages = None found_users = None if ('q' in request.GET) and request.GET['q'].strip(): query_string = request.GET['q'] message_query = get_query(query_string, ['objet', 'contenu']) user_query = get_query( query_string, ['first_name', 'last_name', 'phone', 'chambre', 'user__username']) found_messages = Message.accessibles_par( request.user.profile).filter(message_query).order_by('-date') found_users = UserProfile.objects.filter(user_query).order_by( 'user__username') if query_string.lower() == 'dieu': found_users = UserProfile.objects.filter( user__username__in=['11leuren', '15veaux']) return render( request, 'recherche/resultats.html', { 'query_string': query_string, 'list_messages': found_messages, 'list_users': found_users })
def tous(request): all_messages = Message.accessibles_par(request.user.profile) paginator = Paginator(all_messages, 15) page = request.GET.get('page') try: list_messages = paginator.page(page) except PageNotAnInteger: list_messages = paginator.page(1) except EmptyPage: list_messages = paginator.page(paginator.num_pages) return render(request, 'messages/tous.html', {'list_messages': list_messages})
def index_json(request): eleve = request.user.profile list_messages = Message.accessibles_par(eleve).exclude(lu=eleve) response = HttpResponse(content_type='application/json') response.write(simplejson.dumps([{ 'id': m.id, 'association': m.association.nom, 'association_pseudo': m.association.pseudo, 'objet': m.objet, 'contenu': m.html_to_text(), 'date': str(m.date.day)+'/'+str(m.date.month)+'/'+str(m.date.year)+ " " + str(m.date.hour) + ":" + str(m.date.minute), 'expediteur': m.expediteur.user.username, 'important': request.user.profile in m.important.all() } for m in list_messages])) return response
def index(request): #On sélectionne les messages publics, et les messages dont l'utilisateur fait partie de l'assoce expeditrice, ou de l'assoce destinataires. if not request.user.is_authenticated(): url='http://mines-paris.eu/' return render(request, '1y1b/redirect.html', {'url': url}) else: eleve = request.user.profile list_messages = Message.accessibles_par(eleve).exclude(lu=eleve) paginator = Paginator(list_messages, 15) page = request.GET.get('page') try: list_messages = paginator.page(page) except PageNotAnInteger: list_messages = paginator.page(1) except EmptyPage: list_messages = paginator.page(paginator.num_pages) return render(request, 'messages/index.html', {'list_messages': list_messages})
def render(self, context): eleve = UserProfile.objects.get( user__username=self.login.resolve(context)) context['nombre_de_messages'] = Message.accessibles_par(eleve).exclude( lu=eleve).count() return ''
def importants(request): eleve = request.user.profile list_messages = Message.accessibles_par(eleve).filter(important=eleve) return render(request, 'messages/importants.html', {'list_messages': list_messages})