Author: mbonetti
Date: Fri May 8 01:59:52 2009
New Revision: 517
Modified:
branches/electron/pages/admin/__init__.py
branches/electron/pages/admin/views.py
branches/electron/pages/media/pages/javascript/pages_form.js
branches/electron/pages/templates/admin/pages/page/includes/fieldset.html
Log:
language-specific content deletion
Modified: branches/electron/pages/admin/__init__.py
==============================================================================
--- branches/electron/pages/admin/__init__.py (original)
+++ branches/electron/pages/admin/__init__.py Fri May 8 01:59:52 2009
@@ -19,7 +19,7 @@
from pages.utils import get_placeholders
from pages.admin.forms import PageForm
from pages.admin.utils import get_connected_models
-from pages.admin.views import traduction, get_content, sub_menu,
change_status, modify_content
+from pages.admin.views import traduction, get_content, sub_menu,
change_status, modify_content, delete_content
class PageAdmin(admin.ModelAdmin):
@@ -90,6 +90,10 @@
page_id, action, content_id, language_id = url.split('/')
return modify_content(request, unquote(page_id),
unquote(content_id),
unquote(language_id))
+ elif 'delete-content' in url:
+ page_id, action, language_id = url.split('/')
+ return delete_content(request,unquote(page_id),
unquote(language_id))
+
elif url.endswith('/sub-menu'):
return sub_menu(request, unquote(url[:-9]))
elif url.endswith('/move-page'):
@@ -100,6 +104,7 @@
return change_status(request, unquote(url[:-24]),
Page.PUBLISHED)
elif url.endswith('/change-status-hidden'):
return change_status(request, unquote(url[:-21]), Page.HIDDEN)
+
ret = super(PageAdmin, self).__call__(request, url)
Modified: branches/electron/pages/admin/views.py
==============================================================================
--- branches/electron/pages/admin/views.py (original)
+++ branches/electron/pages/admin/views.py Fri May 8 01:59:52 2009
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
from django.shortcuts import get_object_or_404
-from django.http import HttpResponse, Http404
+from django.http import HttpResponse, Http404, HttpResponseRedirect
from django.contrib.admin.views.decorators import staff_member_required
from pages import settings
@@ -40,6 +40,17 @@
raise Http404
modify_content = staff_member_required(modify_content)
+
+def delete_content(request, page_id, language_id):
+ page = get_object_or_404(Page, pk=page_id)
+ for c in Content.objects.filter(page=page,language=language_id):
+ c.delete()
+
+ destination = request.REQUEST.get('next',
request.META.get('HTTP_REFERER', '/admin/pages/page/%s/' % page_id))
+ return HttpResponseRedirect(destination)
+delete_content = staff_member_required(delete_content)
+
+
def traduction(request, page_id, language_id):
page = Page.objects.get(pk=page_id)
context = {}
Modified: branches/electron/pages/media/pages/javascript/pages_form.js
==============================================================================
--- branches/electron/pages/media/pages/javascript/pages_form.js
(original)
+++ branches/electron/pages/media/pages/javascript/pages_form.js Fri May
8
01:59:52 2009
@@ -109,4 +109,8 @@
}
return false;
});
+
+ $('.js-confirm-delete').click(function() {
+ return confirm(gettext('Are you sure you want to delete this
content?'));
+ });
});
Modified:
branches/electron/pages/templates/admin/pages/page/includes/fieldset.html
==============================================================================
---
branches/electron/pages/templates/admin/pages/page/includes/fieldset.html
(original)
+++
branches/electron/pages/templates/admin/pages/page/includes/fieldset.html
Fri May 8 01:59:52 2009
@@ -33,6 +33,9 @@
</li>
{% endfor %}
</ul>
+ {% if page|has_content_in:language %}
+ <p style="clear:both"><a class="deletelink
js-confirm-delete" href="/admin/pages/page/{{ page.id }}/delete-content/{{
language }}/">{% trans "Delete this translation" %}</a></p>
+ {% endif %}
{% else %}
{{ field.label_tag }}{{ field.field }}
{% endifequal %}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"pinax-updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/pinax-updates?hl=en
-~----------~----~----~----~------~----~------~--~---