bugfix/67-reverse-for-profile-update #69

Merged
Fred merged 3 commits from bugfix/67-reverse-for-profile-update into master 2021-06-19 08:27:21 +02:00
3 changed files with 138 additions and 109 deletions
Showing only changes of commit fe964af90a - Show all commits

View File

@ -7,5 +7,5 @@ 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/", views.profile_update, name="profile_update"),
] ]

View File

@ -60,17 +60,12 @@ def user_lookup(request):
@login_required @login_required
@require_http_methods(["GET", "POST"]) @require_http_methods(["GET", "POST"])
def profile_update(request, profileid): def profile_update(request):
"""Modification d'un profil utilisateur. """Modification du profil de l'utilisateur connecté
Args:
profileid (int): L'identifiant du profil utilisateur à modifier.
""" """
profile = get_object_or_404(Profile, pk=profileid) profile = request.user.profile
if profile.user != request.user:
raise PermissionDenied("Permission denied : you don't have the permission to update this profile.")
if request.method == "POST": if request.method == "POST":
form = ProfileForm(request.POST, instance=profile) form = ProfileForm(request.POST, instance=profile)

View File

@ -87,93 +87,95 @@
<i class="tim-icons icon-bullet-list-67 visible-on-sidebar-mini"></i> <i class="tim-icons icon-bullet-list-67 visible-on-sidebar-mini"></i>
</button> </button>
</div> </div>
<div class="navbar-toggle d-inline"> <div class="navbar-toggle d-inline">
<button type="button" class="navbar-toggler"> <button type="button" class="navbar-toggler">
<span class="navbar-toggler-bar bar1"></span> <span class="navbar-toggler-bar bar1"></span>
<span class="navbar-toggler-bar bar2"></span> <span class="navbar-toggler-bar bar2"></span>
<span class="navbar-toggler-bar bar3"></span> <span class="navbar-toggler-bar bar3"></span>
</button>
</div>
<a class="navbar-brand" href="/">Dashboard</a>
</div>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navigation" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-bar navbar-kebab"></span>
<span class="navbar-toggler-bar navbar-kebab"></span>
<span class="navbar-toggler-bar navbar-kebab"></span>
</button>
<div class="collapse navbar-collapse" id="navigation">
<ul class="navbar-nav ml-auto">
<li class="search-bar input-group">
<button class="btn btn-link" id="search-button" data-toggle="modal" data-target="#searchModal">
<i class="tim-icons icon-zoom-split"></i>
<span class="d-lg-none d-md-block">Search</span>
</button> </button>
</li> </div>
<li class="dropdown nav-item"> <a class="navbar-brand" href="/">Dashboard</a>
<a href="javascript:void(0)" class="dropdown-toggle nav-link" data-toggle="dropdown"> </div>
<i class="tim-icons icon-sound-wave"></i> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navigation" aria-expanded="false" aria-label="Toggle navigation">
<p class="d-lg-none">Flash access</p> <span class="navbar-toggler-bar navbar-kebab"></span>
</a> <span class="navbar-toggler-bar navbar-kebab"></span>
<ul class="dropdown-menu dropdown-menu-right dropdown-navbar"> <span class="navbar-toggler-bar navbar-kebab"></span>
<li class="nav-link"> </button>
<a href="{% url 'calendar' %}" class="nav-item dropdown-item"><i class="far fa-calendar-alt"></i> Calendrier</a> <div class="collapse navbar-collapse" id="navigation">
</li> <ul class="navbar-nav ml-auto">
<li class="nav-link"> <li class="search-bar input-group">
<a href="{% url 'chrono_create' %}" class="nav-item dropdown-item"><i class="far fa-stopwatch"></i> New chrono</a> <button class="btn btn-link" id="search-button" data-toggle="modal" data-target="#searchModal">
</li> <i class="tim-icons icon-zoom-split"></i>
<li class="nav-link"> <span class="d-lg-none d-md-block">Search</span>
<a href="{% url 'score_create' %}" class="nav-item dropdown-item"><i class="far fa-share-alt"></i> New score</a> </button>
</li> </li>
<li class="nav-link"> <li class="dropdown nav-item">
<a href="#" class="nav-item dropdown-item"><i class="far fa-bezier-curve"></i> Program</a> <a href="javascript:void(0)" class="dropdown-toggle nav-link" data-toggle="dropdown">
</li> <i class="tim-icons icon-sound-wave"></i>
</ul> <p class="d-lg-none">Flash access</p>
</li> </a>
<li class="dropdown nav-item"> <ul class="dropdown-menu dropdown-menu-right dropdown-navbar">
<a href="javascript:void(0)" class="dropdown-toggle nav-link" data-toggle="dropdown"> <li class="nav-link">
{% if number_unreaded_message %} <a href="{% url 'calendar' %}" class="nav-item dropdown-item"><i class="far fa-calendar-alt"></i> Calendrier</a>
<div class="notification d-none d-lg-block d-xl-block"></div> </li>
{% endif %} <li class="nav-link">
<i class="tim-icons icon-email-85"></i> <a href="{% url 'chrono_create' %}" class="nav-item dropdown-item"><i class="far fa-stopwatch"></i> New chrono</a>
<p class="d-lg-none">Notifications</p> </li>
</a> <li class="nav-link">
<ul class="dropdown-menu dropdown-menu-right dropdown-navbar"> <a href="{% url 'score_create' %}" class="nav-item dropdown-item"><i class="far fa-share-alt"></i> New score</a>
<li class="nav-link"> </li>
<a href="{% url 'compose_message' %}" class="nav-item dropdown-item"><i class="tim-icons icon-pencil"></i> Compose message</a> <li class="nav-link">
</li> <a href="#" class="nav-item dropdown-item"><i class="far fa-bezier-curve"></i> Program</a>
<li class="nav-link"> </li>
<a href="{% url 'received_messages' %}" class="nav-item dropdown-item"><i class="tim-icons icon-email-85"></i> Received messages</a> </ul>
</li> </li>
<li class="nav-link"> <li class="dropdown nav-item">
<a href="{% url 'sent_messages' %}" class="nav-item dropdown-item"><i class="tim-icons icon-send"></i> Sent messages</a> <a href="javascript:void(0)" class="dropdown-toggle nav-link" data-toggle="dropdown">
</li> {% if number_unreaded_message %}
</ul> <div class="notification d-none d-lg-block d-xl-block"></div>
</li> {% endif %}
<li class="dropdown nav-item"> <i class="tim-icons icon-email-85"></i>
<a href="#" class="dropdown-toggle nav-link" data-toggle="dropdown"> <p class="d-lg-none">Notifications</p>
<div class="photo"> </a>
<img src="{% static '/img/mike.jpg' %}" alt="Profile Photo"> <ul class="dropdown-menu dropdown-menu-right dropdown-navbar">
</div> <li class="nav-link">
<b class="caret d-none d-lg-block d-xl-block"></b> <a href="{% url 'compose_message' %}" class="nav-item dropdown-item"><i class="tim-icons icon-pencil"></i> Compose message</a>
<p class="d-lg-none">Log out</p> </li>
</a> <li class="nav-link">
<ul class="dropdown-menu dropdown-navbar"> <a href="{% url 'received_messages' %}" class="nav-item dropdown-item"><i class="tim-icons icon-email-85"></i> Received messages</a>
<li class="nav-link"> </li>
<a href="{% url 'profile_update' request.session.profileid %}" class="nav-item dropdown-item">Profile</a> <li class="nav-link">
</li> <a href="{% url 'sent_messages' %}" class="nav-item dropdown-item"><i class="tim-icons icon-send"></i> Sent messages</a>
<!-- <li class="nav-link"> --> </li>
</ul>
</li>
<li class="dropdown nav-item">
<a href="#" class="dropdown-toggle nav-link" data-toggle="dropdown">
<div class="photo">
<img src="{% static '/img/mike.jpg' %}" alt="Profile Photo">
</div>
<b class="caret d-none d-lg-block d-xl-block"></b>
<p class="d-lg-none">Log out</p>
</a>
{% if request.user %}
<ul class="dropdown-menu dropdown-navbar">
<li class="nav-link">
<a href="{% url 'profile_update' %}" class="nav-item dropdown-item">Profile</a>
</li>
<!-- <li class="nav-link"> -->
<!-- <a href="javascript:void(0)" class="nav-item dropdown-item">Settings</a> --> <!-- <a href="javascript:void(0)" class="nav-item dropdown-item">Settings</a> -->
<!-- </li> --> <!-- </li> -->
<li class="dropdown-divider"></li> <li class="dropdown-divider"></li>
<li class="nav-link"> <li class="nav-link">
<a href="{% url 'logout' %}" class="nav-item dropdown-item">Log out</a> <a href="{% url 'logout' %}" class="nav-item dropdown-item">Log out</a>
</li> </li>
</ul> </ul>
</li> {% endif %}
<li class="separator d-lg-none"></li> </li>
</ul> <li class="separator d-lg-none"></li>
</ul>
</div>
</div> </div>
</div>
</nav> </nav>
<div class="modal modal-search fade" id="searchModal" tabindex="-1" role="dialog" aria-labelledby="searchModal" aria-hidden="true"> <div class="modal modal-search fade" id="searchModal" tabindex="-1" role="dialog" aria-labelledby="searchModal" aria-hidden="true">
<div class="modal-dialog" role="document"> <div class="modal-dialog" role="document">
@ -237,7 +239,7 @@
</div> </div>
<div class="togglebutton switch-change-color mt-3"> <div class="togglebutton switch-change-color mt-3">
<span class="label-switch">LIGHT MODE</span> <span class="label-switch">LIGHT MODE</span>
<input type="checkbox" name="checkbox" {% if request.session.template == 0 %}checked{% endif %} class="bootstrap-switch" data-on-label="" data-off-label="" /> <input type="checkbox" name="checkbox" {% if request.session.template == 0 %}checked{% endif %} class="bootstrap-switch" data-on-label="" data-off-label="" />
<span class="label-switch label-right">DARK MODE</span> <span class="label-switch label-right">DARK MODE</span>
</div> </div>
</li> </li>
@ -301,26 +303,57 @@
$full_page = $('.full-page'); $full_page = $('.full-page');
$sidebar_responsive = $('body > .navbar-collapse'); $sidebar_responsive = $('body > .navbar-collapse');
{% if request.session.is_sidebar_minified %}sidebar_mini_active = true; {
{% else %}sidebar_mini_active = false;{% endif %} %
if request.session.is_sidebar_minified %
}
sidebar_mini_active = true; {
%
else %
}
sidebar_mini_active = false; {
%
endif %
}
{% if request.session.template == 0%}white_color = false;
{% else %}white_color = true;{% endif %} {
%
if request.session.template == 0 %
}
white_color = false; {
%
else %
}
white_color = true; {
%
endif %
}
window_width = $(window).width(); window_width = $(window).width();
fixed_plugin_open = $('.sidebar .sidebar-wrapper .nav li.active a p').html(); fixed_plugin_open = $('.sidebar .sidebar-wrapper .nav li.active a p').html();
{% if request.session.sidebar == 1 %} {
color = "blue"; %
{% elif request.session.sidebar == 2 %} if request.session.sidebar == 1 %
color = "green"; }
{% elif request.session.sidebar == 3 %} color = "blue"; {
color = "orange"; %
{% elif request.session.sidebar == 4 %} elif request.session.sidebar == 2 %
color = "red"; }
{% endif %} color = "green"; {
%
elif request.session.sidebar == 3 %
}
color = "orange"; {
%
elif request.session.sidebar == 4 %
}
color = "red"; {
%
endif %
}
$sidebar.attr('data', color); $sidebar.attr('data', color);
$main_panel.attr('data', color); $main_panel.attr('data', color);
$full_page.attr('filter-color', color); $full_page.attr('filter-color', color);
@ -417,5 +450,6 @@
{% block footerscript %}{% endblock %} {% block footerscript %}{% endblock %}
</body> </body>
</html> </html>