def cargar_datos_comunes(investigacion_id): session.di = Storage() di = session.di di.investigacion = get_investigacion(investigacion_id) itemes = get_investigacion_itemes(di.investigacion) session.di.itemes_empaquetados = list() for item in itemes: item_empaquetado = Storage() item_empaquetado.item = item item_empaquetado.atributos = get_investigacion_item_atributos(item) item_empaquetado.opciones = get_investigacion_item_opciones(item) session.di.itemes_empaquetados.append(item_empaquetado) di.botones = list() di.rol_nombre = get_rol_byequipo_usuario(session.di.investigacion.equipo, auth.user).rol.role di.x1 = session.di.investigacion.nombre di.x2 = session.di.investigacion.estado.nombre di.x3 = session.di.investigacion.descripcion di.url1 = '' valor_disabled = 'disabled' # prevalidar if (session.di.investigacion.estado.nombre == nombres.estados.editable) & \ ( (session.di.rol_nombre == nombres.roles.administrador) | ( session.di.rol_nombre == nombres.roles.asistente) ): session.di.valor_prevalidar = '' else: session.di.valor_prevalidar = valor_disabled # validar if (session.di.investigacion.estado.nombre == nombres.estados.prevalidado) & \ ( (session.di.rol_nombre == nombres.roles.administrador) ): session.di.valor_validar = '' else: session.di.valor_validar = valor_disabled # asignar if (session.di.investigacion.estado.nombre == nombres.estados.validado) & \ ( (session.di.rol_nombre == nombres.roles.administrador) | ( session.di.rol_nombre == nombres.roles.asistente) ): session.di.valor_asignar = '' else: session.di.valor_asignar = valor_disabled # empadronar if (session.di.investigacion.estado.nombre == nombres.estados.distribuido) & \ ( (session.di.rol_nombre == nombres.roles.empadronador) ): # seleccionar la cantidad asignada response.flash = auth.user.id di.cantidad_asignada = get_distribucion_usuario(di.investigacion, auth.user).distribucion.cantidad # seleccionar la cantidad realizada di.cantidad_realizada = get_soluciones_generales_usuario_count(di.investigacion, auth.user) # calcular la cantidad restante if di.cantidad_asignada == di.cantidad_realizada: session.di.valor_empadronar = valor_disabled else: session.di.valor_empadronar = '' else: session.di.valor_empadronar = valor_disabled return di