def analisis_desarrollo_view(request, id_ssp, id_analisis): if members_only(id_ssp, request): proyecto = userSoftSystemProject.objects.get(id=id_ssp) destinatarios = proyecto.returnAllusers(request.user.get_username()) analisis = Analisis.objects.get(id=id_analisis) documentosAnalisis = analisis.returnDocuments() etiquetasAnalisis = analisis.returnTags() estado = StateOne.objects.get(ssp_stateOne=proyecto) etiquetas = estado.returnTags() formDocumento = documentoForm() resumenForm = resumenAnalisisForm(initial={ 'description_analisis' : analisis.description_analisis, }) ctx={'proyecto' : proyecto, 'analisis' : analisis, 'documentosAnalisis' : documentosAnalisis, 'formDocumento' : formDocumento, 'etiquetasAnalisis' : etiquetasAnalisis, 'etiquetas' : etiquetas, 'resumenForm' : resumenForm, 'destinatarios' : destinatarios} return render(request, 'estado_uno/estado_uno_desarrollo_analisis.html', ctx) else: return render(request, 'comunicacion/error.html')
def analisis_newDocumento_view(request, id_ssp,id_analisis): proyecto = userSoftSystemProject.objects.get(id=id_ssp) if request.method == "POST": form = documentoForm(request.POST) if form.is_valid(): storage = Storage(CredentialsModel, 'id_user', request.user, 'credential') credential = storage.get() if credential is None or credential.invalid: FLOW.params['state'] = xsrfutil.generate_token(settings.SECRET_KEY,request.user) authorize_url = FLOW.step1_get_authorize_url() return HttpResponseRedirect(authorize_url) else: name_documento = form.cleaned_data['name_documento'] type_documento = form.cleaned_data['type_documento'] try: storage = Storage(CredentialsModel, 'id_user', request.user, 'credential') credential = storage.get() http = httplib2.Http() http = credential.authorize(http) drive_service = build('drive', 'v2', http=http, developerKey="hbP6_4UJIKe-m74yLd8tQDfT") except: return redirect('vista_logout') if request.user == proyecto.manager: body = { 'title': '%s'%(name_documento), 'description': 'Documento nuevo de %s'%(proyecto.name_ssp), 'mimeType': '%s'%(type_documento), 'parents' : [{'id' : proyecto.id_folder_ssp}], } try: file = drive_service.files().insert(body=body).execute() except: body = { 'title': '%s'%(name_documento), 'description': 'Documento nuevo de %s'%(proyecto.name_ssp), 'mimeType': '%s'%(type_documento), } try: file = drive_service.files().insert(body=body).execute() except: return render(request, 'comunicacion/error.html') else: userP = userProfile.objects.get(user=request.user) ID_final = '' for ID in userP.id_folder_user: if ID in proyecto.ids_folder_ssp: ID_final = ID body = { 'title': '%s'%(name_documento), 'description': 'Documento nuevo de %s'%(proyecto.name_ssp), 'mimeType': '%s'%(type_documento), 'parents' : [{'id' : ID_final}], } try: file = drive_service.files().insert(body=body).execute() except: body = { 'title': '%s'%(name_documento), 'description': 'Documento nuevo de %s'%(proyecto.name_ssp), 'mimeType': '%s'%(type_documento), } try: file = drive_service.files().insert(body=body).execute() except: return render(request, 'comunicacion/error.html') url_documento = file.get('alternateLink') newDocumento = DocumentoAnalisis.objects.create(name_documento=name_documento, url_documento=url_documento, shared_documento=request.user.get_username()) newDocumento.save() analisis = Analisis.objects.get(id=id_analisis) analisis.links_analisis.append(newDocumento.id) analisis.save() return HttpResponseRedirect(request.META.get('HTTP_REFERER')) return HttpResponseRedirect(request.META.get('HTTP_REFERER'))