Esempio n. 1
0
def add_product_type(request):
    form = Product_TypeForm()
    if request.method == 'POST':
        form = Product_TypeForm(request.POST)
        if form.is_valid():
            form.save()
            messages.add_message(request,
                                 messages.SUCCESS,
                                 'Product type added successfully.',
                                 extra_tags='alert-success')
            return HttpResponseRedirect(reverse('product_type'))
    add_breadcrumb(title="Add Product Type", top_level=False, request=request)
    return render(request, 'dojo/new_product_type.html', {
        'name': 'Add Product Type',
        'metric': False,
        'user': request.user,
        'form': form,
    })
Esempio n. 2
0
def edit_product_type(request, ptid):
    pt = get_object_or_404(Product_Type, pk=ptid)
    form = Product_TypeForm(instance=pt)
    if request.method == 'POST':
        form = Product_TypeForm(request.POST, instance=pt)
        if form.is_valid():
            pt = form.save()
            messages.add_message(request,
                                 messages.SUCCESS,
                                 'Product type updated successfully.',
                                 extra_tags='alert-success')
            return HttpResponseRedirect(reverse('product_type'))
    add_breadcrumb(title="Edit Product Type", top_level=False, request=request)
    return render(request, 'dojo/edit_product_type.html', {
        'name': 'Edit Product Type',
        'metric': False,
        'user': request.user,
        'form': form,
        'pt': pt})
Esempio n. 3
0
def add_product_type(request):
    form = Product_TypeForm()
    if request.method == 'POST':
        form = Product_TypeForm(request.POST)
        if form.is_valid():
            product_type = form.save()
            member = Product_Type_Member()
            member.user = request.user
            member.product_type = product_type
            member.role = Role.objects.get(is_owner=True)
            member.save()
            messages.add_message(request,
                                 messages.SUCCESS,
                                 'Product type added successfully.',
                                 extra_tags='alert-success')
            create_notification(event='product_type_added',
                                title=product_type.name,
                                product_type=product_type,
                                url=reverse('view_product_type',
                                            args=(product_type.id, )))
            return HttpResponseRedirect(reverse('product_type'))
    add_breadcrumb(title="Add Product Type", top_level=False, request=request)
    return render(request, 'dojo/new_product_type.html', {
        'name': 'Add Product Type',
        'form': form,
    })
Esempio n. 4
0
def edit_product_type(request, ptid):
    pt = get_object_or_404(Product_Type, pk=ptid)
    authed_users = pt.authorized_users.all()
    members = get_authorized_members(pt,
                                     Permissions.Product_Type_Manage_Members)
    pt_form = Product_TypeForm(instance=pt,
                               initial={'authorized_users': authed_users})
    if request.method == "POST" and request.POST.get('edit_product_type'):
        pt_form = Product_TypeForm(request.POST, instance=pt)
        if pt_form.is_valid():
            if not settings.FEATURE_NEW_AUTHORIZATION:
                pt.authorized_users.set(
                    pt_form.cleaned_data['authorized_users'])
            pt = pt_form.save()
            messages.add_message(
                request,
                messages.SUCCESS,
                'Product type updated successfully.',
                extra_tags="alert-success",
            )
            return HttpResponseRedirect(reverse("product_type"))
    add_breadcrumb(title="Edit Product Type", top_level=False, request=request)
    return render(
        request, 'dojo/edit_product_type.html', {
            'name': 'Edit Product Type',
            'pt_form': pt_form,
            'pt': pt,
            'members': members
        })
Esempio n. 5
0
def edit_product_type(request, ptid):
    pt = get_object_or_404(Product_Type, pk=ptid)
    pt_form = Product_TypeForm(instance=pt)
    delete_pt_form = Delete_Product_TypeForm(instance=pt)
    if request.method == "POST" and request.POST.get('edit_product_type'):
        pt_form = Product_TypeForm(request.POST, instance=pt)
        if pt_form.is_valid():
            pt = pt_form.save()
            messages.add_message(
                request,
                messages.SUCCESS,
                'Product type updated successfully.',
                extra_tags="alert-success",
            )
            return HttpResponseRedirect(reverse("product_type"))
    if request.method == "POST" and request.POST.get("delete_product_type"):
        form2 = Delete_Product_TypeForm(request.POST, instance=pt)
        if form2.is_valid():
            pt.delete()
            messages.add_message(
                request,
                messages.SUCCESS,
                "Product type Deleted successfully.",
                extra_tags="alert-success",
            )
            return HttpResponseRedirect(reverse("product_type"))
    add_breadcrumb(title="Edit Product Type", top_level=False, request=request)
    return render(
        request, 'dojo/edit_product_type.html', {
            'name': 'Edit Product Type',
            'metric': False,
            'user': request.user,
            'pt_form': pt_form,
            'pt': pt
        })
Esempio n. 6
0
def add_product_type(request):
    form = Product_TypeForm()
    if request.method == 'POST':
        form = Product_TypeForm(request.POST)
        if form.is_valid():
            form.save()
            messages.add_message(request,
                                 messages.SUCCESS,
                                 'Product type added successfully.',
                                 extra_tags='alert-success')
            return HttpResponseRedirect(reverse('product_type'))
    add_breadcrumb(title="Add Product Type", top_level=False, request=request)
    return render(request, 'dojo/new_product_type.html', {
        'name': 'Add Product Type',
        'metric': False,
        'user': request.user,
        'form': form,
    })
Esempio n. 7
0
def edit_product_type(request, ptid):
    pt = get_object_or_404(Product_Type, pk=ptid)
    authed_users = pt.authorized_users.all()
    pt_form = Product_TypeForm(instance=pt,
                               initial={'authorized_users': authed_users})
    delete_pt_form = Delete_Product_TypeForm(instance=pt)
    if request.method == "POST" and request.POST.get('edit_product_type'):
        pt_form = Product_TypeForm(request.POST, instance=pt)
        if pt_form.is_valid():
            pt = pt_form.save()
            pt.authorized_users.set(pt_form.cleaned_data['authorized_users'])
            messages.add_message(
                request,
                messages.SUCCESS,
                'Product type updated successfully.',
                extra_tags="alert-success",
            )
            return HttpResponseRedirect(reverse("product_type"))
    if request.method == "POST" and request.POST.get("delete_product_type"):
        form2 = Delete_Product_TypeForm(request.POST, instance=pt)
        if form2.is_valid():
            pt.delete()
            messages.add_message(
                request,
                messages.SUCCESS,
                "Product type Deleted successfully.",
                extra_tags="alert-success",
            )
            create_notification(
                event='other',
                title='Deletion of %s' % pt.name,
                description='The product type "%s" was deleted by %s' %
                (pt.name, request.user),
                url=request.build_absolute_uri(reverse('product_type')),
                icon="exclamation-triangle")
            return HttpResponseRedirect(reverse("product_type"))
    add_breadcrumb(title="Edit Product Type", top_level=False, request=request)
    return render(
        request, 'dojo/edit_product_type.html', {
            'name': 'Edit Product Type',
            'metric': False,
            'user': request.user,
            'pt_form': pt_form,
            'pt': pt
        })
Esempio n. 8
0
def edit_product_type(request, ptid):
    pt = get_object_or_404(Product_Type, pk=ptid)
    form = Product_TypeForm(instance=pt)
    if request.method == 'POST':
        form = Product_TypeForm(request.POST, instance=pt)
        if form.is_valid():
            pt = form.save()
            messages.add_message(request,
                                 messages.SUCCESS,
                                 'Product type updated successfully.',
                                 extra_tags='alert-success')
            return HttpResponseRedirect(reverse('product_type'))
    add_breadcrumb(title="Edit Product Type", top_level=False, request=request)
    return render(request, 'dojo/edit_product_type.html', {
        'name': 'Edit Product Type',
        'metric': False,
        'user': request.user,
        'form': form,
        'pt': pt})