Example #1
0
 def post(self):
     rating = int(cgi.escape(self.request.get("rating_select")))
     review = str(cgi.escape(self.request.get("reviewtext")))
     courseId = int(cgi.escape(self.request.get("courseId")))
     fb = Facebook(FB_API_KEY, FB_APP_SECRET)
     if fb.check_session(self.request):
         courseQuery = db.Query(Course)
         courseQuery.filter('courseId =', courseId)
         cr = CourseReview(courseID=courseId,
                           reviewText=review,
                           overallRating=rating,
                           fbUID=long(fb.uid))
         cr.put()
     self.redirect('/coursepage/?id=' + str(courseId))
Example #2
0
 def get(self):
     courseId = int(cgi.escape(self.request.get('id')))
     
     query = db.Query(Course)
     query.filter('courseId =', courseId)
     results = query.fetch(1)
     
     if len(results) < 1:
         template_values = {'courseId' : courseId}
         path = os.path.join(os.path.dirname(__file__), 'templates/coursenotfound.html')
         self.response.out.write(template.render(path, template_values))
     else:
         # There should just be one course
         course = results[0]
         reviewquery = CourseReview.all().filter('courseID =', int(courseId))
         #reviewquery.order('-ratingTimestamp')
         reviews = reviewquery.fetch(25)
         
         courseRating = 0
         for review in reviews:
             courseRating += float(review.overallRating) / len(reviews)
             review.reviewText = review.reviewText.replace('\n', '<br />')
              
         templatevals = {'courseRating': courseRating,
                         'courseName': course.courseName,
                         'lat': course.latitude,
                         'lon': course.longitude,
                         'numholes': course.numberHoles,
                         'id': course.courseId,
                         'description': course.description,
                         'city': course.city,
                         'state': course.state,
                         'zip' : course.zip,
                         'teeType': course.teeType,
                         'basketType': course.basketType,
                         'holesLT300': course.holesLT300,
                         'holesBW300400': course.holesBW300400,
                         'holesGT400': course.holesGT400,
                         'reviews' : reviews ,
                         'gmaps_api_key': GMAPS_API_KEY,
                         'facebook': self.get_facebook() }
         path = os.path.join(os.path.dirname(__file__), 'templates/coursepage.html')
         self.response.out.write(template.render(path, templatevals))