Switch to unified view

a/OSSEval/OpenSourceProject/views.py b/OSSEval/OpenSourceProject/views.py
...
...
84
def OSProjectForge_add(request):
84
def OSProjectForge_add(request):
85
    #TODO: check there's just one per forge
85
    #TODO: check there's just one per forge
86
    analysis_id = int(request.POST.get("analysis_id", ""))
86
    analysis_id = int(request.POST.get("analysis_id", ""))
87
    id_forge = int(request.POST.get("id_forge", ""))
87
    id_forge = int(request.POST.get("id_forge", ""))
88
    datasource_id = request.POST.get("datasource_id", "")
88
    datasource_id = request.POST.get("datasource_id", "")
89
    #  I strip the project name as it is used in jquery tabs; some project names contain \n which breaks jquery tabs rendering
89
    project_name = request.POST.get("project_name", "")
90
    project_name = request.POST.get("project_name", "").strip()
90
    identifier_in_forge = request.POST.get("identifier_in_forge", "")
91
    identifier_in_forge = request.POST.get("identifier_in_forge", "")
91
    id_selected_instance = int(request.POST.get("id_selected_instance", ""))
92
    id_selected_instance = int(request.POST.get("id_selected_instance", ""))
92
    #id_selected_instance is -1 if I have to create a new instance; otherwise it tells to which instance I should add it
93
    #id_selected_instance is -1 if I have to create a new instance; otherwise it tells to which instance I should add it
93
    if id_selected_instance > 0:
94
    if id_selected_instance > 0:
94
        instance = Instance.objects.get(pk=id_selected_instance)
95
        instance = Instance.objects.get(pk=id_selected_instance)
95
        osp=OSProject.objects.get(instance = instance)
96
        osp=OSProject.objects.get(instance = instance)
96
        for ospf in osp.osprojectforge_set.all():
97
        for ospf in osp.osprojectforge_set.all():
97
            if ospf.forge.id == id_forge:
98
            if ospf.forge.id == id_forge:
98
                messages.add_message(request, messages.INFO, 'Hello world.')
99
                print ('Hello world.')
100
                return HttpResponseRedirect(reverse('analysis_detail', args=(analysis_id,)))
99
                return HttpResponseRedirect(reverse('analysis_detail', args=(analysis_id,)))
101
    else:
100
    else:
102
        analysis = get_object_or_404(Analysis, pk=analysis_id)
101
        analysis = get_object_or_404(Analysis, pk=analysis_id)
103
        instance=Instance.objects.create(name=project_name, name_for_search="", analysis=analysis)
102
        instance=Instance.objects.create(name=project_name, name_for_search="", analysis=analysis)
104
        osp=OSProject.objects.create(name=project_name, instance=instance)
103
        osp=OSProject.objects.create(name=project_name, instance=instance)
105
    forge=Forge.objects.get(pk=id_forge)
104
    forge=Forge.objects.get(pk=id_forge)
106
    pf=OSProjectForge(name=project_name, os_project=osp, forge=forge, identifier_in_forge=identifier_in_forge, datasource_id=datasource_id)
105
    pf=OSProjectForge(name=project_name, os_project=osp, forge=forge, identifier_in_forge=identifier_in_forge, datasource_id=datasource_id)
107
    pf.save()
106
    pf.save()
108
    return HttpResponseRedirect(reverse('analysis_detail', args=(analysis_id,)))
107
    return HttpResponseRedirect(reverse('analysis_detail', args=(analysis_id,)))
109
110
108
111
def OSProjectForgeFromResultList_detail(request):
109
def OSProjectForgeFromResultList_detail(request):
112
    identifier_in_forge = request.POST.get("identifier_in_forge", "")
110
    identifier_in_forge = request.POST.get("identifier_in_forge", "")
113
    id_forge = int(request.POST.get("id_forge", ""))
111
    id_forge = int(request.POST.get("id_forge", ""))
114
    pf = OSProjectForge(identifier_in_forge=identifier_in_forge, forge_id=id_forge)
112
    pf = OSProjectForge(identifier_in_forge=identifier_in_forge, forge_id=id_forge)
...
...
120
    pf = get_object_or_404(OSProjectForge, pk=osprojectforge_id)
118
    pf = get_object_or_404(OSProjectForge, pk=osprojectforge_id)
121
    osprojectforge_info = pf.getProjectInfo()
119
    osprojectforge_info = pf.getProjectInfo()
122
    osprojectforge_info_nice_print = pformat(osprojectforge_info) 
120
    osprojectforge_info_nice_print = pformat(osprojectforge_info) 
123
    return render(request, 'OSProject/osprojectforge_detail.html', {'osprojectforge_info': osprojectforge_info, 'osprojectforge_info_nice_print': osprojectforge_info_nice_print})
121
    return render(request, 'OSProject/osprojectforge_detail.html', {'osprojectforge_info': osprojectforge_info, 'osprojectforge_info_nice_print': osprojectforge_info_nice_print})
124
122
125
# def actual_entity_detail(request, osproject_id):
126
#     '''
127
#     Part of the required interface
128
#     '''
129
#     osp = get_object_or_404(OSProject, pk=osproject_id)
130
#     osproject_info = osp.getProjectInfo()
131
#     return osproject_info
132
133
def OSProject_detail(request, osproject_id):
123
def OSProject_detail(request, osproject_id):
134
    osp = get_object_or_404(OSProject, pk=osproject_id)
124
    osp = get_object_or_404(OSProject, pk=osproject_id)
135
    osproject_info = osp.getInstanceInfo()
125
    osproject_info = osp.getInstanceInfo()
136
    osproject_info_nice_print = pformat(osproject_info) 
126
    osproject_info_nice_print = pformat(osproject_info) 
137
    return render(request, 'OSProject/osproject_detail.html', {'osprojectforge_info': osproject_info, 'osprojectforge_info_nice_print': osproject_info_nice_print})
127
    return render(request, 'OSProject/osproject_detail.html', {'osprojectforge_info': osproject_info, 'osprojectforge_info_nice_print': osproject_info_nice_print})