Example #1
0
def add_group_condition(request, group_id):
    condition_form = GroupConditionForm()
    if request.method == 'POST':
        condition_form = GroupConditionForm(data=request.POST)
        if condition_form.is_valid():
            try:
                group = HouseholdMemberGroup.objects.get(id=group_id)
                condition = condition_form.save()
                condition.groups.add(group)
                condition.save()
                messages.success(request, "Criteria successfully added.")
                redirect_url = '/groups/%s/' % group_id
            except ObjectDoesNotExist:
                messages.error(request, "Group does not exist.")
                redirect_url = '/groups/'
            return HttpResponseRedirect(redirect_url)

    context = {
        'button_label': 'Create',
        'title': 'New Criteria',
        'id': 'add-condition-to-group-form',
        'action': '/groups/%s/conditions/new/' % group_id,
        'request': request,
        'condition_form': condition_form
    }
    return render(request, 'household_member_groups/conditions/new.html',
                  context)
    def test_validates_unqique_constraint_on_group_condition(self):
        form_data = {
            'value': 'HEAD',
            'attribute': GroupCondition.GROUP_TYPES['GENERAL'],
            'condition': GroupCondition.CONDITIONS['EQUALS'],
        }

        group_condition_form = GroupConditionForm(form_data)
        self.assertTrue(group_condition_form.is_valid())
        group_condition_form.save()

        duplicate_data = {
            'value': 'HEAD',
            'attribute': GroupCondition.GROUP_TYPES['GENERAL'],
            'condition': GroupCondition.CONDITIONS['EQUALS'],
            }

        duplicate_group_condition_form = GroupConditionForm(duplicate_data)
        self.assertFalse(duplicate_group_condition_form.is_valid())
Example #3
0
    def test_validates_unqique_constraint_on_group_condition(self):
        form_data = {
            'value': 'HEAD',
            'attribute': GroupCondition.GROUP_TYPES['GENERAL'],
            'condition': GroupCondition.CONDITIONS['EQUALS'],
        }

        group_condition_form = GroupConditionForm(form_data)
        self.assertTrue(group_condition_form.is_valid())
        group_condition_form.save()

        duplicate_data = {
            'value': 'HEAD',
            'attribute': GroupCondition.GROUP_TYPES['GENERAL'],
            'condition': GroupCondition.CONDITIONS['EQUALS'],
        }

        duplicate_group_condition_form = GroupConditionForm(duplicate_data)
        self.assertFalse(duplicate_group_condition_form.is_valid())
def add_group_condition(request, group_id):
    condition_form = GroupConditionForm()
    if request.method == 'POST':
        condition_form = GroupConditionForm(data=request.POST)
        if condition_form.is_valid():
            try:
                group = HouseholdMemberGroup.objects.get(id=group_id)
                condition = condition_form.save()
                condition.groups.add(group)
                condition.save()
                messages.success(request, "Criteria successfully added.")
                redirect_url = '/groups/%s/' % group_id
            except ObjectDoesNotExist:
                messages.error(request, "Group does not exist.")
                redirect_url = '/groups/'
            return HttpResponseRedirect(redirect_url)

    context = {'button_label': 'Create',
               'title': 'New Criteria',
               'id': 'add-condition-to-group-form',
               'action': '/groups/%s/conditions/new/' % group_id,
               'request': request,
               'condition_form': condition_form}
    return render(request, 'household_member_groups/conditions/new.html', context)