Close #55 and other UI bug fix.
This commit is contained in:
parent
720eae785b
commit
ccbc730bab
|
@ -28,7 +28,7 @@ class Message(Markdownizable):
|
||||||
auto_now=True, verbose_name="Date of reading"
|
auto_now=True, verbose_name="Date of reading"
|
||||||
)
|
)
|
||||||
title = models.CharField(max_length=255, verbose_name="Title")
|
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
|
@property
|
||||||
def is_read():
|
def is_read():
|
||||||
|
|
|
@ -6,6 +6,7 @@ from django.http import HttpResponse, HttpResponseRedirect
|
||||||
from django.shortcuts import render, get_object_or_404
|
from django.shortcuts import render, get_object_or_404
|
||||||
from django.views.decorators.http import require_http_methods
|
from django.views.decorators.http import require_http_methods
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
from .forms import MessageForm
|
from .forms import MessageForm
|
||||||
from .models import Message
|
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.
|
"""Récupère les détails (l'affichage ?) d'un message.
|
||||||
"""
|
"""
|
||||||
message = get_object_or_404(Message, pk=messageid)
|
message = get_object_or_404(Message, pk=messageid)
|
||||||
if not message.is_read and message.recipient == request.user.id:
|
if not message.read_at and message.recipient == request.user.id:
|
||||||
message.is_read = True
|
message.read_at = datetime.now()
|
||||||
message.save()
|
message.save()
|
||||||
|
|
||||||
context = {"message": message, "type": None}
|
context = {"message": message, "type": None}
|
||||||
|
|
|
@ -6,6 +6,6 @@ from . import views
|
||||||
|
|
||||||
|
|
||||||
profile_urlpatterns = [
|
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"),
|
path(r"edit/<int:profileid>/", views.profile_update, name="profile_update"),
|
||||||
]
|
]
|
||||||
|
|
|
@ -16,26 +16,26 @@
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
|
|
||||||
<input type="hidden" id="id_writer" name="writer" value="{{ writer }}" />
|
<input type="hidden" id="id_writer" name="writer" value="{{ writer }}" />
|
||||||
<div class="form-group row {% if form.reader.errors %}has-error has-feedback{% endif %}">
|
<div class="form-group row {% if form.recipient.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>
|
<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">
|
<div class="col-8 col-sm-6 col-md-5 col-lg-5 col-xl-5">
|
||||||
{{ form.reader }}
|
{{ form.recipient }}
|
||||||
{{ form.reader_related }}
|
{{ form.recipient_related }}
|
||||||
{% if form.reader.errors %} <span class="btn btn-sm btn-danger">{% for error in form.reader.errors %}{{error}}{% endfor %}</span>{% endif %}
|
{% if form.recipient.errors %} <span class="btn btn-sm btn-danger">{% for error in form.recipient.errors %}{{error}}{% endfor %}</span>{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group row {% if form.message_title.errors %}has-error has-feedback{% endif %}">
|
<div class="form-group row {% if form.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>
|
<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">
|
<div class="col-8 col-sm-9 col-md-9 col-lg-9 col-xl-9">
|
||||||
{{ form.message_title }}
|
{{ form.title }}
|
||||||
{% if form.message_title.errors %} <span class="btn btn-sm btn-danger">{% for error in form.message_title.errors %}{{error}}{% endfor %}</span>{% endif %}
|
{% if form.title.errors %} <span class="btn btn-sm btn-danger">{% for error in form.title.errors %}{{error}}{% endfor %}</span>{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group row {% if form.message_body.errors %}has-error has-feedback{% endif %}">
|
<div class="form-group row {% if form.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>
|
<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">
|
<div class="col-8 col-sm-9 col-md-9 col-lg-9 col-xl-9">
|
||||||
{{ form.message_body }}
|
{{ form.body }}
|
||||||
{% if form.message_body.errors %} <span class="btn btn-sm btn-danger">{% for error in form.message_body.errors %}{{error}}{% endfor %}</span>{% endif %}
|
{% if form.body.errors %} <span class="btn btn-sm btn-danger">{% for error in form.body.errors %}{{error}}{% endfor %}</span>{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group text-center">
|
<div class="form-group text-center">
|
||||||
|
@ -52,11 +52,11 @@
|
||||||
<script type="text/javascript" >
|
<script type="text/javascript" >
|
||||||
$(function(){
|
$(function(){
|
||||||
|
|
||||||
$('#id_reader_related').autocomplete({
|
$('#id_recipient_related').autocomplete({
|
||||||
source: function(request, response) {
|
source: function(request, response) {
|
||||||
$.ajax({
|
$.ajax({
|
||||||
// context: this,
|
// context: this,
|
||||||
url: '/profile/lookup/?pattern=' + $('#id_reader_related').val(),
|
url: '/profile/lookup/?pattern=' + $('#id_recipient_related').val(),
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
success: function(data) {
|
success: function(data) {
|
||||||
if(data.length != 0) {
|
if(data.length != 0) {
|
||||||
|
|
|
@ -6,10 +6,10 @@
|
||||||
<div class="col-12 col-sm-12 col-md-8 col-lg-8 col-xl-6">
|
<div class="col-12 col-sm-12 col-md-8 col-lg-8 col-xl-6">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h4 class="card-title">{{ message.message_title }}</h3>
|
<h4 class="card-title">{{ message.title }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
{{ message.message_body }}
|
{{ message.body }}
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer row pt-0">
|
<div class="card-footer row pt-0">
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
|
|
|
@ -22,8 +22,8 @@
|
||||||
<tr>
|
<tr>
|
||||||
<th></th>
|
<th></th>
|
||||||
<th class="header">Title</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">Sender</th>
|
||||||
|
<th class="header text-center">Date</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
@ -36,9 +36,9 @@
|
||||||
</a>
|
</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</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>{{ message.written_at | date:"d M Y H:i" }}</td>
|
||||||
<td class="text-center">{{ message.writer }}</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
|
@ -70,7 +70,7 @@
|
||||||
0: { sorter: false },
|
0: { sorter: false },
|
||||||
},
|
},
|
||||||
// dateFormat: "uk",
|
// dateFormat: "uk",
|
||||||
sortList: [[2,0]]
|
sortList: [[3,0]]
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
Loading…
Reference in New Issue