def POST(self): sid = web.cookies('sid')['sid'] i = web.input('cod') codigo = i.cod personal = server.get_personal(sid) matdict = server.get_materias(personal['carrera'], '') carrera = personal['carrera'] info = server.get_info_materia(carrera, codigo) info['dep'].sort() inmediatas = info['dep'] inmediatas.sort() materias = matdict.items() materias.sort() correlativas = server.get_correlativas(carrera, codigo) correlativas = correlativas.keys() correlativas.sort() url = 'http://www.fi.uba.ar/guiaestudiante/pdf/%s.pdf' % \ codigo.replace(".", "") return render_in_context.datosmateria(info = info, correlativas = correlativas, personal = personal, materias = materias, codigo = codigo, inmediatas = inmediatas, url = url, matdict = matdict)
def GET(self): # re ineficiente, hacemos un millon de lookups con el server sid = web.cookies('sid')['sid'] personal = server.get_personal(sid) carrera = personal['carrera'] carrera_desc = server.get_carreras()[personal['carrera']] mat_dict = server.get_materias(personal['carrera'], '') mat_list = mat_dict.keys() mat_list.sort() materias = [] for cod in mat_list: info = server.get_info_materia(carrera, cod) materias.append(info) return render_in_context.listamaterias(carrera_desc = carrera_desc, materias = materias, personal = personal, mat_dict = mat_dict)
def GET(self): sid = web.cookies('sid')['sid'] personal = server.get_personal(sid) inicio = personal['inicio'] carrera_desc = server.get_carreras()[personal['carrera']] areas = server.get_areas(personal['carrera']) area_desc = areas[personal['area']] del areas cursando = server.get_cursando(sid).items() cursando.sort() para_cursar = server.get_para_cursar(sid).items() para_cursar.sort() apro_dict = server.get_aprobadas(sid) promedio = 0.0 aprobadas = [] for key in apro_dict: aprobadas.append([key] + apro_dict[key]) promedio += apro_dict[key][0] if len(aprobadas): promedio = promedio / len(aprobadas) promedio = "%.2f" % promedio aprobadas.sort() creditos = 0 for key in apro_dict: info = server.get_info_materia(personal['carrera'], key) creditos += info['creditos'] cantaprobadas = len(aprobadas) return render_in_context.index(personal = personal, area_desc = area_desc, carrera_desc = carrera_desc, inicio = inicio, promedio = promedio, creditos = creditos, cantaprobadas = cantaprobadas, cursando = cursando, para_cursar = para_cursar, aprobadas = aprobadas)