def getProjectList(request, college_id, special_id, path):
    if path == FIRST_ROUND_PATH:
        alloc_project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_APPLICATION_EXPERT_SUBJECT)
    else:
        alloc_project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_FINAL_EXPERT_SUBJECT)

    if college_id != "-1":
        alloc_project_list = alloc_project_list.filter(teacher__college = college_id)
    if special_id != "-1":
        alloc_project_list = alloc_project_list.filter(project_special = special_id)
    if path == FIRST_ROUND_PATH:
        unalloc_project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_APPLICATION_SCHOOL_OVER)
    else:
        unalloc_project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_FINAL_SCHOOL_OVER)
    if college_id != "-1":
        unalloc_project_list = unalloc_project_list.filter(teacher__college = college_id)
    if special_id != "-1":
        unalloc_project_list = unalloc_project_list.filter(project_special = special_id)


    for project in alloc_project_list:
        project.review_status = getProjectReviewStatus(project)


    context = getContext(unalloc_project_list, 1, "item", 0)
    context2 = getContext(alloc_project_list, 1, "item2", 0)
    html_alloc = render_to_string("school/widgets/alloc_project_table.html", context2)
    html_unalloc = render_to_string("school/widgets/unalloc_project_table.html", context)
    return simplejson.dumps({"html_alloc": html_alloc, "html_unalloc": html_unalloc, })
Esempio n. 2
0
def allocView(request):
    expert_list = ExpertProfile.objects.all()
    unalloc_project_list = get_project_list(request).filter(
        project_status__status=PROJECT_STATUS_APPLICATION_SCHOOL_OVER)
    alloc_project_list = get_project_list(request).filter(
        project_status__status=PROJECT_STATUS_APPLICATION_EXPERT_SUBJECT)
    form = FilterForm(request=request)
    expert_form = FilterForm()

    context = {
        "form": form,
        "expert_form": expert_form,
        "page_info": "alloc",
    }
    context.update(getContext(unalloc_project_list, 1, "item", 0))
    context.update(getContext(alloc_project_list, 1, "item2", 0))
    context.update(getContext(expert_list, 1, "item3", 0))

    for expert in context['item3_list']:
        expert.alloc_num = Re_Project_Expert.objects.filter(
            Q(expert=expert) & Q(is_first_round=True)
            & Q(project__project_status__status=
                PROJECT_STATUS_APPLICATION_EXPERT_SUBJECT)).count()

    for project in context['item2_list']:
        project.review_status = getProjectReviewStatus(project)

    return render(request, "school/alloc.html", context)
Esempio n. 3
0
def getAllocProjectPagination(request, page, college_id, special_id, path):
    message = ""
    page = int(page)
    if path == FIRST_ROUND_PATH:
        project_list = get_project_list(request).filter(
            project_status__status=PROJECT_STATUS_APPLICATION_EXPERT_SUBJECT)
    else:
        project_list = get_project_list(request).filter(
            project_status__status=PROJECT_STATUS_FINAL_EXPERT_SUBJECT)

    if college_id != "-1":
        project_list = project_list.filter(teacher__college=college_id)
    if special_id != "-1":
        project_list = project_list.filter(project_special=special_id)

    context = getContext(project_list, page, "item2", 0)

    for project in context["item2_list"]:
        project.review_status = getProjectReviewStatus(project)

    html = render_to_string("school/widgets/alloc_project_table.html", context)
    return simplejson.dumps({
        "message": message,
        "html": html,
    })
def getUnallocProjectPagination(request, page, college_id, special_id, path):
    message = ""
    page = int(page)
    if path == FIRST_ROUND_PATH:
        project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_APPLICATION_SCHOOL_OVER)
    else:
        project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_FINAL_SCHOOL_OVER)

    if college_id != "-1":
        project_list = project_list.filter(teacher__college = college_id)
    if special_id != "-1":
        project_list = project_list.filter(project_special = special_id)
    
    context = getContext(project_list, page, "item", 0)
    html = render_to_string("school/widgets/unalloc_project_table.html", context)
    return simplejson.dumps({"message": message, "html": html, })
Esempio n. 5
0
def getAllocProjectPagination(request, page, college_id, special_id, path):
    message = ""
    page = int(page)
    if path == FIRST_ROUND_PATH:
        project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_APPLICATION_EXPERT_SUBJECT)
    else:
        project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_FINAL_EXPERT_SUBJECT)

    if college_id != "-1":
        project_list = project_list.filter(teacher__college = college_id)
    if special_id != "-1":
        project_list = project_list.filter(project_special = special_id)
 
    context = getContext(project_list, page, "item2", 0)
    
    for project in context["item2_list"]:
        project.review_status = getProjectReviewStatus(project)

    html = render_to_string("school/widgets/alloc_project_table.html", context)
    return simplejson.dumps({"message": message, "html": html, })
Esempio n. 6
0
def finalAllocView(request):
    expert_list = ExpertProfile.objects.all()
    unalloc_project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_FINAL_SCHOOL_OVER)
    alloc_project_list = get_project_list(request).filter(project_status__status = PROJECT_STATUS_FINAL_EXPERT_SUBJECT)
    form = FilterForm(request = request)
    expert_form = FilterForm()
    context = {"form": form,
               "expert_form": expert_form,
               "page_info": "finalalloc",}
 
    context.update(getContext(unalloc_project_list, 1, "item", 0))
    context.update(getContext(alloc_project_list, 1, "item2", 0))
    context.update(getContext(expert_list, 1, "item3", 0))
    for expert in context['item3_list']:
        expert.alloc_num = Re_Project_Expert.objects.filter(Q(expert = expert) & Q(is_first_round = True) & Q(project__project_status__status = PROJECT_STATUS_APPLICATION_EXPERT_SUBJECT)).count()

    for project in context['item2_list']:
        project.review_status = getProjectReviewStatus(project)

    return render(request, "school/alloc.html", context)
def finalInfoView(request):
    project_list = get_project_list(request).filter(project_status__status__gte = PROJECT_STATUS_APPROVAL);
    comment=""
    for item in project_list:
        if item.comment!="":
            comment=item.comment
    context = {
        'role':"teacher",
        'comment':comment,
        'project_list':project_list,
    }
    return render(request,"teacher/finalinfo.html",context)
def homeView(request):
    if not firstLoginChecker(request):
        return HttpResponseRedirect(reverse("teacher.views.settingView"))

    project_list = get_project_list(request).filter(project_status__status__lt = PROJECT_STATUS_APPROVAL);
    year = datetime.datetime.now().year   
    projectCreationForbidCheck = (get_project_list(request).filter(Q(application_year = year) | Q(approval_year = year)).count() > 0)
    creationForm = ProjectCreationForm()
    comment=""
    for item in project_list:
        if item.comment!="":
            comment=item.comment
        if item.project_special.application_status:
            item.specialform=ProjectChangeForm(special=item.project_special)
    context = {
        'comment':comment,
        'project_list':project_list,
        'form': creationForm,
        'projectCreationForbidCheck': projectCreationForbidCheck,
    }
    return render(request,"teacher/project_info.html",context)