Ejemplo n.º 1
0
    def wrapped_fn(request, instance, *args, **kwargs):
        if not export_enabled_for(instance, request.user):
            return EXPORTS_NOT_ENABLED_CONTEXT

        qs = fn(request, instance, *args, **kwargs)

        job = ExportJob.objects.create(instance=instance,
                                       description="job created by '%s' fn" %
                                       fn,
                                       user=request.user)
        simple_async_csv.delay(job.pk, qs)

        return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 2
0
    def wrapped_fn(request, instance, *args, **kwargs):
        if not export_enabled_for(instance, request.user):
            return EXPORTS_NOT_ENABLED_CONTEXT

        qs = fn(request, instance, *args, **kwargs)

        job = ExportJob.objects.create(
            instance=instance,
            description="job created by '%s' fn" % fn,
            user=request.user)
        simple_async_csv.delay(job.pk, qs)

        return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 3
0
    def wrapped_fn(request, instance, *args, **kwargs):
        filename, task, args, fields = fn(request, instance, *args, **kwargs)

        if not export_enabled_for(instance, request.user):
            return EXPORTS_NOT_ENABLED_CONTEXT

        job = ExportJob.objects.create(
            instance=instance,
            description="job created by '%s' fn" % fn,
            user=request.user)

        chain(task.s(*args) | custom_async_csv.s(job.pk, filename, fields))()

        return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 4
0
    def wrapped_fn(request, instance, *args, **kwargs):
        filename, task, args, fields = fn(request, instance, *args, **kwargs)

        if not export_enabled_for(instance, request.user):
            return EXPORTS_NOT_ENABLED_CONTEXT

        job = ExportJob.objects.create(instance=instance,
                                       description="job created by '%s' fn" %
                                       fn,
                                       user=request.user)

        chain(task.s(*args) | custom_async_csv.s(job.pk, filename, fields))()

        return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 5
0
def begin_export_users(request, instance, data_format):
    if not request.user.is_authenticated():
        raise Http404()

    if not export_enabled_for(instance, request.user):
        return EXPORTS_NOT_ENABLED_CONTEXT

    job = ExportJob.objects.create(
        instance=instance,
        user=request.user,
        description='user export with %s format' % data_format)

    async_users_export.delay(job.pk, data_format)

    return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 6
0
def begin_export_users(request, instance, data_format):
    if not request.user.is_authenticated():
        raise Http404()

    if not export_enabled_for(instance, request.user):
        return EXPORTS_NOT_ENABLED_CONTEXT

    job = ExportJob.objects.create(instance=instance,
                                   user=request.user,
                                   description='user export with %s format' %
                                   data_format)

    async_users_export.delay(job.pk, data_format)

    return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 7
0
def begin_export(request, instance, model):
    if not export_enabled_for(instance, request.user):
        return EXPORTS_NOT_ENABLED_CONTEXT

    query = request.GET.get('q', None)
    display_filters = request.GET.get('show', None)

    job = ExportJob(instance=instance, description='csv export of %s' % model)

    if request.user.is_authenticated():
        job.user = request.user
    job.save()

    async_csv_export.delay(job.pk, model, query, display_filters)

    return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 8
0
def begin_export(request, instance, model):
    if not export_enabled_for(instance, request.user):
        return EXPORTS_NOT_ENABLED_CONTEXT

    query = request.GET.get('q', None)
    display_filters = request.GET.get('show', None)

    job = ExportJob(instance=instance,
                    description='csv export of %s' % model)

    if request.user.is_authenticated():
        job.user = request.user
    job.save()

    async_csv_export.delay(job.pk, model, query, display_filters)

    return {'start_status': 'OK', 'job_id': job.pk}
Ejemplo n.º 9
0
 def assert_anonymous_can_export(self, b):
     self.assertEqual(b, export_enabled_for(self.instance, AnonymousUser()))
Ejemplo n.º 10
0
 def assert_user_can_export(self, b):
     self.assertEqual(b, export_enabled_for(self.instance, self.non_admin))
Ejemplo n.º 11
0
 def assert_anonymous_can_export(self, b):
     self.assertEqual(b, export_enabled_for(self.instance, AnonymousUser()))
Ejemplo n.º 12
0
 def assert_user_can_export(self, b):
     self.assertEqual(b, export_enabled_for(self.instance, self.non_admin))