Example #1
0
    def test_get_next_task_url_back(self):
        request = RequestFactory().get('/test/', {'back': '/test_back_url/'})
        request.user = User(username='******')

        next_url = views.get_next_task_url(request, None)
        self.assertEqual(next_url, '/test_back_url/')

        request = RequestFactory().get('/test/', {'back': 'http://unsafe.com/test_back_url/'})
        request.user = User(username='******')

        next_url = views.get_next_task_url(request, None)
        self.assertEqual(next_url, '/')
Example #2
0
    def test_get_next_task_url_back(self):
        request = RequestFactory().get('/test/', {'back': '/test_back_url/'})
        request.user = User(username='******')
        request.resolver_match = resolve('/test/')

        next_url = views.get_next_task_url(request, None)
        self.assertEqual(next_url, '/test_back_url/')

        request = RequestFactory().get('/test/', {'back': 'http://unsafe.com/test_back_url/'})
        request.user = User(username='******')
        request.resolver_match = resolve('/test/')

        next_url = views.get_next_task_url(request, None)
        self.assertEqual(next_url, '/')
Example #3
0
    def test_get_next_task_url_flow_index(self):
        request = RequestFactory().get('/test/')
        request.user = User(username='******')
        request.resolver_match = resolve('/test/')

        next_url = views.get_next_task_url(request, BaseViewTestFlow.process_class(flow_class=BaseViewTestFlow))
        self.assertEqual(next_url, '/test/')
Example #4
0
    def test_get_next_task_url_flow_index(self):
        request = RequestFactory().get('/test/')
        request.user = User(username='******')
        request.resolver_match = resolve('/test/')

        next_url = views.get_next_task_url(request, BaseViewTestFlow.process_cls(flow_cls=BaseViewTestFlow))
        self.assertEqual(next_url, '/test/')
Example #5
0
def start_view(request):
    form_cls = modelform_factory(Shipment, fields=[
        'shipment_no', 'first_name', 'last_name',
        'email', 'phone', 'address', 'zipcode',
        'city', 'state', 'country'])

    formset_cls = inlineformset_factory(Shipment, ShipmentItem, fields=[
        'name', 'quantity'], can_delete=False)

    if not request.activation.has_perm(request.user):
        raise PermissionDenied
    request.activation.prepare(request.POST or None, user=request.user)

    form = form_cls(request.POST or None)
    formset = formset_cls(request.POST or None)

    is_valid = all([form.is_valid(), formset.is_valid()])
    if is_valid:
        shipment = form.save()
        request.process.shipment = shipment
        for item in formset.save(commit=False):
            item.shipment = shipment
            item.save()
        request.activation.done()
        return redirect(get_next_task_url(request, request.process))

    return render(request, 'shipment/shipment/start.html', {
        'activation': request.activation,
        'form': form,
        'formset': formset
    })
Example #6
0
    def test_get_next_task_url_process_list(self):
        process = BaseViewTestFlow.process_cls.objects.create(flow_cls=BaseViewTestFlow)
        request = RequestFactory().get('/test/')
        request.user = User(username='******')

        next_url = views.get_next_task_url(request, process)
        self.assertEqual(next_url, '/test/details/{}/'.format(process.pk))
Example #7
0
    def test_get_next_task_url_process_list(self):
        process = BaseViewTestFlow.process_class.objects.create(flow_class=BaseViewTestFlow)
        request = RequestFactory().get('/test/')
        request.user = User(username='******')
        request.resolver_match = resolve('/test/')

        next_url = views.get_next_task_url(request, process)
        self.assertEqual(next_url, '/test/detail/{}/'.format(process.pk))
Example #8
0
    def test_get_next_task_url_continue_unassigned_task(self):
        user = User.objects.create(username='******')

        act = BaseViewTestFlow.start.run()
        task = act.process.get_task(BaseViewTestFlow.test_task)

        request = RequestFactory().post('/done/', {'_continue': '1'})
        request.user = user

        next_url = views.get_next_task_url(request, act.process)
        self.assertEqual(next_url, '/test/{}/test_task/{}/assign/'.format(task.process_id, task.pk))
Example #9
0
    def test_get_next_task_url_continue_unassigned_task(self):
        user = User.objects.create(username='******')

        act = BaseViewTestFlow.start.run()
        task = act.process.get_task(BaseViewTestFlow.test_task)

        request = RequestFactory().post('/done/', {'_continue': '1'})
        request.user = user
        request.resolver_match = resolve('/test/')

        next_url = views.get_next_task_url(request, act.process)
        self.assertEqual(next_url, '/test/{}/test_task/{}/assign/'.format(task.process_id, task.pk))
Example #10
0
    def done(self, form_list, form_dict, **kwargs):
        row = form_dict['0'].save(commit=False)

        for field, value in form_dict['0'].cleaned_data.items():
            setattr(row, field, value)
            setattr(self.request.activation.process, field, value)

        row.save()
        self.request.activation.done()

        return redirect(
            get_next_task_url(self.request, self.activation.process))
Example #11
0
def start_upload_workflow(request, **kwargs):
    request.activation.prepare(request.POST or None, user=request.user)
    client_id = request.POST.get("client_id")
    doc_type = request.POST.get("doc_type")
    client = get_object_or_404(models.Client, pk=client_id)
    form = EmailForm(request.POST or None)
    request.activation.done()
    #redirect(get_next_task_url(request, request.activation.process))
    if form.is_valid():
        return redirect(get_next_task_url(request, request.activation.process))

    return render(request, 'munshai/start_workflow.html', {
        'form': form,
        'activation': request.activation
    })
Example #12
0
def start_view(request):
    form_class = modelform_factory(Project,
                                   fields=[
                                       'name',
                                   ],
                                   labels={'name': _('Project Name')})

    formset_class = inlineformset_factory(Project,
                                          OrderVM,
                                          fields=[
                                              'name', 'sockets',
                                              'cores_per_socket', 'memory_GB',
                                              'disks', 'nics'
                                          ])

    if not request.activation.has_perm(request.user):
        raise PermissionDenied

    request.activation.prepare(request.POST or None, user=request.user)

    form = form_class(request.POST or None)
    formset = formset_class(request.POST or None)

    is_valid = all([form.is_valid(), formset.is_valid()])
    if is_valid:
        project = form.save(commit=False)
        project.owner = request.user
        project.save()
        request.process.project = project
        order = Order(project=project)
        order.save()
        request.process.order = order
        for item in formset.save(commit=False):
            item.project = project
            item.order = order
            item.save()

        request.activation.done()
        return redirect(get_next_task_url(request, request.process))
    return render(request, 'orderit/complete_project_start.html', {
        'activation': request.activation,
        'form': form,
        'formset': formset,
    })
Example #13
0
def start_view(request):
    form_class = modelform_factory(Shipment,
                                   fields=[
                                       'shipment_no', 'first_name',
                                       'last_name', 'email', 'phone',
                                       'address', 'zipcode', 'city', 'state',
                                       'country'
                                   ])

    formset_class = inlineformset_factory(Shipment,
                                          ShipmentItem,
                                          fields=['name', 'quantity'],
                                          can_delete=False)

    if not request.activation.has_perm(request.user):
        raise PermissionDenied
    request.activation.prepare(request.POST or None, user=request.user)

    form = form_class(request.POST or None)
    formset = formset_class(request.POST or None)

    is_valid = all([form.is_valid(), formset.is_valid()])
    if is_valid:
        shipment = form.save()
        request.process.shipment = shipment
        for item in formset.save(commit=False):
            item.shipment = shipment
            item.save()
        request.activation.done()
        return redirect(get_next_task_url(request, request.process))

    return render(request, 'shipment/shipment/start.html', {
        'activation': request.activation,
        'form': form,
        'formset': formset
    })