Example #1
0
def profile():
	if request.method == "GET": 
		if "username" in session:#checks if the person is logged in; redirects to the "loginfailed page" if they're not
			rs = []
			p = 1
			ratees2 = []
			ratings2 = []
			while p > 0:
				try:
					rs2 = []
					ratees2.append(storage.getPeopleToRate(session['username'],p))
					for ratee in storage.getPeopleToRate(session['username'],p):
						rateeratings = storage.currentRatings(session['username'], ratee, p)
						if rateeratings != "No defined ratings yet":
							rs2.append(rateeratings)
						else:
							rs2.append([8,8,8,8])
					ratings2.append(storage.getratings(session['username'], p))
					rs.append(rs2)
					p+= 1 
				except IOError, ex:
					p = -1	
			ratings = [None,None,None,None]
			if len(ratings2) > 0:
				for q in range(len(storage.getQuestions())):
					tot = 0
					empties = 0
					for ratin in ratings2:
						if ratin != None and len(ratin) > 0:
							tot += ratin[q]
						else:
							empties += 1
					try:
						ratings[q] = tot / (len(ratings2) - empties)
					except ZeroDivisionError, ex:
						pass
			return render_template("profile.html", username = session["username"], ratees= ratees2, ratings = ratings, rates = rs)
Example #2
0
			return redirect(url_for("loginfailed"))
	else:
		try:
			assert "username" in session#checks once again if the person is logged in, before allowing them to post stuff
		except AssertionError, ex:
			return redirect(url_for("home"))
		button = request.form["button"]#gets the name of the button that was pressed
		if button == "Submit":
			rs = []
			p = 1
			ratees2 = []
			ratings2 = []
			while p > 0:
				try:
					rs2 = []
					ratees2.append(storage.getPeopleToRate(session['username'],p))
					ratings2.append(storage.getratings(session["username"], p))
					for ratee in storage.getPeopleToRate(session['username'], p):
						ratingstmp = []
						for Q in range(1, len(storage.getQuestions())):
							s = '%s%s%d', str(storage.getPeopleToRate(session['username'],p)), str(ratee), Q
							print s
							ratingstmp.append(str(request.form[s]))
						storage.rate(session["username"], ratee,p,  ratingstmp)
					for ratee in storage.getPeopleToRate(session['username'],p):
						rateeratings = storage.currentRatings(session['username'], ratee, p)
						if rateeratings != "No defined ratings yet":
							rs2.append(rateeratings)
						else:
							rs2.append([8,8,8,8])
					rs.append(rs2)