diff --git a/mayan/apps/documents/links.py b/mayan/apps/documents/links.py index a46aa8caf7..e48512402b 100644 --- a/mayan/apps/documents/links.py +++ b/mayan/apps/documents/links.py @@ -147,8 +147,8 @@ link_clear_image_cache = Link( description=_( 'Clear the graphics representations used to speed up the documents\' ' 'display and interactive transformations results.' - ), - permissions=(permission_document_tools,), text=_('Clear document cache'), + ), permissions=(permission_document_tools,), + text=_('Clear document image cache'), view='documents:document_clear_image_cache' ) link_trash_can_empty = Link( diff --git a/mayan/apps/documents/urls.py b/mayan/apps/documents/urls.py index 9882003f5c..fdadf42de1 100644 --- a/mayan/apps/documents/urls.py +++ b/mayan/apps/documents/urls.py @@ -14,16 +14,16 @@ from .api_views import ( ) from .settings import setting_print_size, setting_display_size from .views import ( - DeletedDocumentDeleteView, DeletedDocumentDeleteManyView, - DeletedDocumentListView, DocumentEditView, DocumentListView, - DocumentPageView, DocumentPageListView, DocumentPageViewResetView, - DocumentPreviewView, DocumentRestoreView, DocumentRestoreManyView, - DocumentTrashView, DocumentTrashManyView, DocumentTypeCreateView, - DocumentTypeDeleteView, DocumentTypeDocumentListView, - DocumentTypeFilenameDeleteView, DocumentTypeFilenameEditView, - DocumentTypeFilenameListView, DocumentTypeListView, DocumentTypeEditView, - DocumentVersionListView, DocumentView, EmptyTrashCanView, - RecentDocumentListView + ClearImageCacheView, DeletedDocumentDeleteView, + DeletedDocumentDeleteManyView, DeletedDocumentListView, DocumentEditView, + DocumentListView, DocumentPageView, DocumentPageListView, + DocumentPageViewResetView, DocumentPreviewView, DocumentRestoreView, + DocumentRestoreManyView, DocumentTrashView, DocumentTrashManyView, + DocumentTypeCreateView, DocumentTypeDeleteView, + DocumentTypeDocumentListView, DocumentTypeFilenameDeleteView, + DocumentTypeFilenameEditView, DocumentTypeFilenameListView, + DocumentTypeListView, DocumentTypeEditView, DocumentVersionListView, + DocumentView, EmptyTrashCanView, RecentDocumentListView ) urlpatterns = patterns( @@ -145,7 +145,7 @@ urlpatterns = patterns( name='document_multiple_clear_transformations' ), url( - r'^cache/clear/$', 'document_clear_image_cache', + r'^cache/clear/$', ClearImageCacheView.as_view(), name='document_clear_image_cache' ), url( diff --git a/mayan/apps/documents/views.py b/mayan/apps/documents/views.py index 38cd3ff1e2..d415b78fe9 100644 --- a/mayan/apps/documents/views.py +++ b/mayan/apps/documents/views.py @@ -62,6 +62,19 @@ from .utils import parse_range logger = logging.getLogger(__name__) +class ClearImageCacheView(ConfirmView): + extra_context = { + 'title': _('Clear the document image cache?') + } + view_permission = permission_document_tools + + def view_action(self): + task_clear_image_cache.apply_async() + messages.success( + self.request, _('Document cache clearing queued successfully.') + ) + + class DocumentListView(SingleObjectListView): extra_context = { 'hide_links': True, @@ -1179,23 +1192,6 @@ def document_type_filename_create(request, document_type_id): }, context_instance=RequestContext(request)) -def document_clear_image_cache(request): - Permission.check_permissions(request.user, (permission_document_tools,)) - - previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))) - - if request.method == 'POST': - task_clear_image_cache.apply_async() - messages.success(request, _('Document cache clearing queued successfully.')) - - return HttpResponseRedirect(previous) - - return render_to_response('appearance/generic_confirm.html', { - 'previous': previous, - 'title': _('Clear the document cache?'), - }, context_instance=RequestContext(request)) - - def document_version_revert(request, document_version_pk): document_version = get_object_or_404(DocumentVersion, pk=document_version_pk)