From 746d3b5fa7235eda31c3156fd468cf5196e97395 Mon Sep 17 00:00:00 2001 From: Jailson Dias Date: Thu, 9 Mar 2017 21:48:20 -0300 Subject: [PATCH] Resolvendo bug do tipo Apesar de o efeito de arrastar está funcionando no front, não está armazenando a nova posição do tópico no bd --- topics/forms.py | 6 +++--- topics/templates/resources/list.html | 28 ++++++++++++++-------------- topics/views.py | 13 +++++++------ 3 files changed, 24 insertions(+), 23 deletions(-) diff --git a/topics/forms.py b/topics/forms.py index 8ee1cb2..8a783aa 100644 --- a/topics/forms.py +++ b/topics/forms.py @@ -17,12 +17,12 @@ class TopicForm(forms.ModelForm): def clean_name(self): name = self.cleaned_data.get('name', '') repo = self.cleaned_data.get('repository', False) - + if self.instance.id: same_name = self.subject.topic_subject.filter(name__unaccent__iexact = name).exclude(id = self.instance.id).count() else: same_name = self.subject.topic_subject.filter(name__unaccent__iexact = name).count() - + if same_name > 0: if repo: self._errors['name'] = [_('This subject already has a repository')] @@ -38,4 +38,4 @@ class TopicForm(forms.ModelForm): fields = ['repository', 'name', 'description', 'visible' ] widgets = { 'description': forms.Textarea, - } \ No newline at end of file + } diff --git a/topics/templates/resources/list.html b/topics/templates/resources/list.html index 01cdbaf..4c8a3c5 100644 --- a/topics/templates/resources/list.html +++ b/topics/templates/resources/list.html @@ -3,15 +3,15 @@ {% subject_permissions request.user topic.subject as has_subject_permissions %} -
+
{% for resource in topic.resource_topic.all %} {% resource_permissions request.user resource as has_resource_permissions %} - + {% if has_resource_permissions %}
- - - + + +

@@ -50,7 +50,7 @@ $('.modal').remove(); $.get(url, function (modal) { - $("#resource_{{ topic.slug }}").parent().after(modal); + $("#resource_{{ topic.slug }}_topic").parent().after(modal); $('.modal').modal('show'); }); @@ -62,7 +62,7 @@ btn = $(this).find('button.btn_menu').is(e.target), del = $(this).find('a.delete').is(e.target), upd = $(this).find('a.edit').is(e.target); - + if (!arrow && !menu && !del && !upd && !btn) { var link = $(this).find('.resource_link').data('href'), target = $(this).find('.resource_link').attr('target'); @@ -75,19 +75,19 @@ } }); - $("#resource_{{ topic.slug }}").sortable({ + $("#resource_{{ topic.slug }}_topic").sortable({ delay: 100, distance: 5, handle: 'i.fa-arrows', update: function( event, ui ) { var cont = 1; var data = []; - - $("#resource_{{ topic.slug }}").find('.order_inp').each(function () { + + $("#resource_{{ topic.slug }}_topic").find('.order_inp_resource').each(function () { $(this).val(cont++); data.push({ - 'resource_id': $(this).parent().find('.id_inp').val(), + 'resource_id': $(this).parent().find('.id_inp_resource').val(), 'resource_order': $(this).val() }); }); @@ -100,15 +100,15 @@ function sendUpdateResource(data) { $.ajax({ - url: $("#resource_{{ topic.slug }}").find('.url_order').val(), + url: $('.url_order_resource').val(), dataType: 'json', data: {'data': data}, success: function(response) { console.log(response); }, error: function(response) { - console.log(response); + console.log(response); } }); } - \ No newline at end of file + diff --git a/topics/views.py b/topics/views.py index 01a6923..f05620f 100644 --- a/topics/views.py +++ b/topics/views.py @@ -47,7 +47,7 @@ class CreateView(LoginRequiredMixin, LogMixin, generic.edit.CreateView): slug = self.kwargs.get('slug', '') initial['subject'] = get_object_or_404(Subject, slug = slug) - + return initial def form_valid(self, form): @@ -57,6 +57,7 @@ class CreateView(LoginRequiredMixin, LogMixin, generic.edit.CreateView): subject = get_object_or_404(Subject, slug = slug) self.object.subject = subject + print (subject.topic_subject.count()) self.object.order = subject.topic_subject.count() + 1 self.object.save() @@ -125,7 +126,7 @@ class UpdateView(LoginRequiredMixin, LogMixin, generic.UpdateView): slug = self.kwargs.get('sub_slug', '') initial['subject'] = get_object_or_404(Subject, slug = slug) - + return initial def get_context_data(self, **kwargs): @@ -263,7 +264,7 @@ def update_resource_order(request): if not data is None: data = json.loads(data) - + for t_data in data: resource = get_object_or_404(Resource, id = t_data['resource_id']) resource.order = t_data['resource_order'] @@ -276,7 +277,7 @@ def update_resource_order(request): def getResourceCount(request): resources = Resource.objects.distinct() - + data = {} for resource in resources: key = resource.__dict__['_my_subclass'] @@ -284,8 +285,8 @@ def getResourceCount(request): data[key] = data[key] + 1 else: data[key] = 1 - - real_data = [] + + real_data = [] for item in data.items(): real_data.append(item) return JsonResponse(real_data, safe=False) -- libgit2 0.21.2