__title__ = 'fobi.contrib.plugins.form_handlers.db_store.views'
__author__ = 'Artur Barseghyan <artur.barseghyan@gmail.com>'
__copyright__ = 'Copyright (c) 2014 Artur Barseghyan'
__license__ = 'GPL 2.0/LGPL 2.1'
__all__ = (
'view_saved_form_data_entries',
)
from django.template import RequestContext
from django.shortcuts import render_to_response
from django.contrib.auth.decorators import login_required
#from fobi.decorators import permissions_required, SATISFY_ALL, SATISFY_ANY
from fobi.base import get_form_handler_plugin_widget
from fobi.contrib.plugins.form_handlers.db_store import UID
from fobi.contrib.plugins.form_handlers.db_store.models import (
SavedFormDataEntry
)
from fobi.contrib.plugins.form_handlers.db_store.helpers import DataExporter
#entries_permissions = [
# 'db_store.add_savedformdataentry',
# 'db_store.change_savedformdataentry',
# 'db_store.delete_savedformdataentry',
#]
#@permissions_required(satisfy=SATISFY_ANY, perms=entries_permissions)
@login_required
@login_required
def export_saved_form_data_entries(request, form_entry_id=None, theme=None):
"""
Export saved form data entries.
:param django.http.HttpRequest request:
:param int form_entry_id: Form ID.
:param fobi.base.BaseTheme theme: Subclass of ``fobi.base.BaseTheme``.
:return django.http.HttpResponse:
"""
entries = SavedFormDataEntry._default_manager \
.filter(user__pk=request.user.pk)
#entries = entries.select_related('form_entry')
if form_entry_id:
entries = entries.filter(form_entry__id=form_entry_id)
data_exporter = DataExporter(entries)
return data_exporter.graceful_export()