Close #55 and other UI bug fix.

This commit is contained in:
Trullemans Gregory 2021-05-14 11:01:23 +02:00
parent 720eae785b
commit ccbc730bab
6 changed files with 26 additions and 25 deletions

View File

@ -28,7 +28,7 @@ class Message(Markdownizable):
auto_now=True, verbose_name="Date of reading"
)
title = models.CharField(max_length=255, verbose_name="Title")
body = models.TextField(null=True, blank=True, verbose_name="Message",)
body = models.TextField(null=True, blank=True, verbose_name="Message")
@property
def is_read():

View File

@ -6,6 +6,7 @@ from django.http import HttpResponse, HttpResponseRedirect
from django.shortcuts import render, get_object_or_404
from django.views.decorators.http import require_http_methods
from django.urls import reverse
from datetime import datetime
from .forms import MessageForm
from .models import Message
@ -64,8 +65,8 @@ def get_message_details(request, messageid):
"""Récupère les détails (l'affichage ?) d'un message.
"""
message = get_object_or_404(Message, pk=messageid)
if not message.is_read and message.recipient == request.user.id:
message.is_read = True
if not message.read_at and message.recipient == request.user.id:
message.read_at = datetime.now()
message.save()
context = {"message": message, "type": None}

View File

@ -6,6 +6,6 @@ from . import views
profile_urlpatterns = [
path(r"^lookup/$", views.user_lookup, name="user_lookup"),
path(r"lookup/", views.user_lookup, name="user_lookup"),
path(r"edit/<int:profileid>/", views.profile_update, name="profile_update"),
]

View File

@ -16,26 +16,26 @@
{% csrf_token %}
<input type="hidden" id="id_writer" name="writer" value="{{ writer }}" />
<div class="form-group row {% if form.reader.errors %}has-error has-feedback{% endif %}">
<label for="id_reader_related" class="col-4 col-sm-2 col-md-3 col-lg-3 col-xl-3 col-form-label">To:</label>
<div class="form-group row {% if form.recipient.errors %}has-error has-feedback{% endif %}">
<label for="id_recipient_related" class="col-4 col-sm-2 col-md-3 col-lg-3 col-xl-3 col-form-label">To:</label>
<div class="col-8 col-sm-6 col-md-5 col-lg-5 col-xl-5">
{{ form.reader }}
{{ form.reader_related }}
{% if form.reader.errors %}&nbsp;<span class="btn btn-sm btn-danger">{% for error in form.reader.errors %}{{error}}{% endfor %}</span>{% endif %}
{{ form.recipient }}
{{ form.recipient_related }}
{% if form.recipient.errors %}&nbsp;<span class="btn btn-sm btn-danger">{% for error in form.recipient.errors %}{{error}}{% endfor %}</span>{% endif %}
</div>
</div>
<div class="form-group row {% if form.message_title.errors %}has-error has-feedback{% endif %}">
<label for="id_message_title" class="col-4 col-sm-2 col-md-3 col-lg-3 col-xl-3 col-form-label">Title</label>
<div class="form-group row {% if form.title.errors %}has-error has-feedback{% endif %}">
<label for="id_title" class="col-4 col-sm-2 col-md-3 col-lg-3 col-xl-3 col-form-label">Title</label>
<div class="col-8 col-sm-9 col-md-9 col-lg-9 col-xl-9">
{{ form.message_title }}
{% if form.message_title.errors %}&nbsp;<span class="btn btn-sm btn-danger">{% for error in form.message_title.errors %}{{error}}{% endfor %}</span>{% endif %}
{{ form.title }}
{% if form.title.errors %}&nbsp;<span class="btn btn-sm btn-danger">{% for error in form.title.errors %}{{error}}{% endfor %}</span>{% endif %}
</div>
</div>
<div class="form-group row {% if form.message_body.errors %}has-error has-feedback{% endif %}">
<label for="id_message_body" class="col-4 col-sm-2 col-md-3 col-lg-3 col-xl-3 col-form-label">Message</label>
<div class="form-group row {% if form.body.errors %}has-error has-feedback{% endif %}">
<label for="id_body" class="col-4 col-sm-2 col-md-3 col-lg-3 col-xl-3 col-form-label">Message</label>
<div class="col-8 col-sm-9 col-md-9 col-lg-9 col-xl-9">
{{ form.message_body }}
{% if form.message_body.errors %}&nbsp;<span class="btn btn-sm btn-danger">{% for error in form.message_body.errors %}{{error}}{% endfor %}</span>{% endif %}
{{ form.body }}
{% if form.body.errors %}&nbsp;<span class="btn btn-sm btn-danger">{% for error in form.body.errors %}{{error}}{% endfor %}</span>{% endif %}
</div>
</div>
<div class="form-group text-center">
@ -52,11 +52,11 @@
<script type="text/javascript" >
$(function(){
$('#id_reader_related').autocomplete({
$('#id_recipient_related').autocomplete({
source: function(request, response) {
$.ajax({
// context: this,
url: '/profile/lookup/?pattern=' + $('#id_reader_related').val(),
url: '/profile/lookup/?pattern=' + $('#id_recipient_related').val(),
dataType: "json",
success: function(data) {
if(data.length != 0) {

View File

@ -6,10 +6,10 @@
<div class="col-12 col-sm-12 col-md-8 col-lg-8 col-xl-6">
<div class="card">
<div class="card-header">
<h4 class="card-title">{{ message.message_title }}</h3>
<h4 class="card-title">{{ message.title }}</h3>
</div>
<div class="card-body">
{{ message.message_body }}
{{ message.body }}
</div>
<div class="card-footer row pt-0">
<div class="col-6">

View File

@ -22,8 +22,8 @@
<tr>
<th></th>
<th class="header">Title</th>
<th class="header text-center">Date</th>
<th class="header text-center">Sender</th>
<th class="header text-center">Date</th>
</tr>
</thead>
<tbody>
@ -36,9 +36,9 @@
</a>
{% endif %}
</td>
<td><a href="{% url 'message_details' message.id %}" {% if type == 'received' and message.is_read == False %}style="font-weight: bold;"{% endif %}>{{ message.message_title }}</a></td>
<td><a href="{% url 'message_details' message.id %}" {% if type == 'received' and message.is_read == False %}style="font-weight: bold;"{% endif %}>{{ message.title }}</a></td>
<td class="text-center">{{ message.sender }}</td>
<td>{{ message.written_at | date:"d M Y H:i" }}</td>
<td class="text-center">{{ message.writer }}</td>
</tr>
{% endfor %}
</tbody>
@ -70,7 +70,7 @@
0: { sorter: false },
},
// dateFormat: "uk",
sortList: [[2,0]]
sortList: [[3,0]]
})
});
</script>