Esempio n. 1
0
def form(request, object_id=None):

    object = get_object_or_404(Service, pk=object_id, organization=request.user.get_profile().org_active) if object_id else Service()
    selected_area = get_object_or_None(Area, area_code=request.POST.get('area')) or object.area

    if selected_area.area_code in GENERIC_AREA:
        form_area = GenericAreaForm(instance=object)
        form_area.fields['age_group'].queryset = selected_area.age_group.all()

    if selected_area.area_code in ('school', 'psychoedu'):
        form_area = SchoolAreaForm(instance=object)
        form_area.fields['education_level'].queryset = selected_area.education_level.all()

    if selected_area.area_code == 'organizational':
        form_area = OrganizationalAreaForm(instance=object)
        form_area.fields['hierarchical_level'].queryset = selected_area.hierarchical_level.all()

    # filter covenants for group or invidual
    if object.is_group:
        covenant_list = Covenant.objects.filter( charge=1, active=True, organization=request.user.get_profile().org_active )
    else:
        covenant_list = Covenant.objects.filter( active=True, organization=request.user.get_profile().org_active )

    form_area.fields['service_type'].queryset = selected_area.service_type.all()
    form_area.fields['modalities'].queryset = selected_area.modalities.all()

    # select a next color when new register
    if not object.pk:
        object.color = color_rand()
        #if not request.user.get_profile().org_active.service_set.all():
            #object.css_color_class = 1
        #else:
            #if not object.css_color_class:
                #object.css_color_class = (int(Service.objects.filter(organization=request.user.get_profile().org_active).latest('date').css_color_class) + 1) \
                                    #if int(Service.objects.filter(organization=request.user.get_profile().org_active).latest('date').css_color_class) <=24 \
                                    #else 1

    return render_to_response('service/service_form.html', {
        'object': object,
        'CareProfessionals': CareProfessional.objects.active(request.user.get_profile().org_active),
        'Students': CareProfessional.objects.students_active(request.user.get_profile().org_active),
        'AgeGroups': AgeGroup.objects.all(),
        'Areas': Area.objects.all(),
        'ServiceTypes': ServiceType.objects.all(),
        'Modalitys': Modality.objects.all(),
        'Professions': Profession.objects.all(),
        'area': selected_area,
        'form_area': form_area,
        'clss':request.GET.get('clss'),
        'client_list': _service_clients(request, object),
        'queue_list': _queue_list(request,object),
        'can_list_groups': False if not len(_group_list(request, object)) else True,
        'can_write_group': False if not _can_write_group(request, object) else True,
        'covenant_list': covenant_list,
        }, context_instance=RequestContext(request) )
Esempio n. 2
0
def form(request, object_id=None):
    object = get_object_or_404(Service,
                               pk=object_id,
                               organization=request.user.get_profile().
                               org_active) if object_id else Service()
    selected_area = get_object_or_None(
        Area, area_code=request.POST.get('area')) or object.area

    if selected_area.area_code in GENERIC_AREA:
        form_area = GenericAreaForm(instance=object)
        form_area.fields['age_group'].queryset = selected_area.age_group.all()

    if selected_area.area_code in ('school', 'psychoedu'):
        form_area = SchoolAreaForm(instance=object)
        form_area.fields[
            'education_level'].queryset = selected_area.education_level.all()

    if selected_area.area_code == 'organizational':
        form_area = OrganizationalAreaForm(instance=object)
        form_area.fields[
            'hierarchical_level'].queryset = selected_area.hierarchical_level.all(
            )

    form_area.fields['service_type'].queryset = selected_area.service_type.all(
    )
    form_area.fields['modalities'].queryset = selected_area.modalities.all()

    # select a next color when new register
    if not object.pk:
        object.color = color_rand()
        #if not request.user.get_profile().org_active.service_set.all():
        #object.css_color_class = 1
        #else:
        #if not object.css_color_class:
        #object.css_color_class = (int(Service.objects.filter(organization=request.user.get_profile().org_active).latest('date').css_color_class) + 1) \
        #if int(Service.objects.filter(organization=request.user.get_profile().org_active).latest('date').css_color_class) <=24 \
        #else 1

    return render_to_response('service/service_form.html', {
        'object':
        object,
        'CareProfessionals':
        CareProfessional.objects.active(request.user.get_profile().org_active),
        'Students':
        CareProfessional.objects.students_active(
            request.user.get_profile().org_active),
        'AgeGroups':
        AgeGroup.objects.all(),
        'Areas':
        Area.objects.all(),
        'ServiceTypes':
        ServiceType.objects.all(),
        'Modalitys':
        Modality.objects.all(),
        'Professions':
        Profession.objects.all(),
        'area':
        selected_area,
        'form_area':
        form_area,
        'clss':
        request.GET.get('clss'),
        'client_list':
        _service_clients(request, object),
        'queue_list':
        _queue_list(request, object),
        'can_list_groups':
        False if not len(_group_list(request, object)) else True,
        'can_write_group':
        False if not _can_write_group(request, object) else True,
    },
                              context_instance=RequestContext(request))