Example #1
0
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')
Example #2
0
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'))