diff --git a/kfet/static/kfet/js/history.js b/kfet/static/kfet/js/history.js index 8559f050..1c6495a7 100644 --- a/kfet/static/kfet/js/history.js +++ b/kfet/static/kfet/js/history.js @@ -1,28 +1,28 @@ -function KHistory(options={}) { +function KHistory(options = {}) { $.extend(this, KHistory.default_options, options); this.$container = $(this.container); - this.reset = function() { + this.reset = function () { this.$container.html(''); }; - this.addOpeGroup = function(opegroup) { + this.addOpeGroup = function (opegroup) { var $day = this._getOrCreateDay(opegroup['at']); var $opegroup = this._opeGroupHtml(opegroup); $day.after($opegroup); var trigramme = opegroup['on_acc_trigramme']; - var is_cof = opegroup['is_cof']; - for (var i=0; i Éditer + {% if perms.kfet.delete_account %} + +
+ {% csrf_token %} +
+ {% endif %}
-{% endblock %} +{% endblock %} \ No newline at end of file diff --git a/kfet/urls.py b/kfet/urls.py index 04d1cf82..681b7c31 100644 --- a/kfet/urls.py +++ b/kfet/urls.py @@ -186,6 +186,12 @@ urlpatterns = [ teamkfet_required(views.ArticleUpdate.as_view()), name="kfet.article.update", ), + # Article - Delete + path( + "articles//delete", + views.ArticleDelete.as_view(), + name="kfet.article.delete", + ), # Article - Statistics path( "articles//stat/sales/list", diff --git a/kfet/views.py b/kfet/views.py index d1a40a82..f517bbfe 100644 --- a/kfet/views.py +++ b/kfet/views.py @@ -877,6 +877,20 @@ class ArticleUpdate(SuccessMessageMixin, UpdateView): return super().form_valid(form) +class ArticleDelete(PermissionRequiredMixin, DeleteView): + model = Article + success_url = reverse_lazy("kfet.article") + success_message = "Article supprimé avec succès !" + permission_required = "kfet.delete_article" + + def get(self, request, *args, **kwargs): + return redirect("kfet.article.read", self.kwargs.get(self.pk_url_kwarg)) + + def delete(self, request, *args, **kwargs): + messages.success(request, self.success_message) + return super().delete(request, *args, **kwargs) + + # ----- # K-Psul # -----