def render_status_form(self): selected_exercise = self.get_argument("et", None) measures = None if selected_exercise: selected_exercise = int(selected_exercise) measures = et.get_measures_for_exercise_type(selected_exercise) return self.render_string( "templates/status-form.html", exercise_types=et.get_all_exercise_types(), selected_exercise=selected_exercise, measures=measures)
def _on_get_user(self, user, error=None): if error: self.render("templates/error-page.html", error=error) return exercise_type = et.get_exercise_type( int(self.get_argument("et"))) date = datetime.datetime.strptime( self.get_argument('date'), "%Y-%m-%d") comment = self.get_argument("comment","") share = self.get_argument("share", None) == "share" self.entry_id = ec.entries.create_entry( self.current_user.id, date, exercise_type.id, comment) measures = et.get_measures_for_exercise_type(exercise_type.id) txt = [] for measure in measures: value = self.get_argument("measure-%s-value" % measure.id, None) if value: ec.entries.create_data_point( self.entry_id, measure.id, value) txt.append('%s %s' % (value, measure.unit)) description = '{0[first_name]} just did some {1.name}'.format(user, exercise_type) description += ' (%s) for the Exercise Challenge!' % ', '.join(txt) if share: link = "http://www.exercisechallenge.org/users/%s/entries/%s" % ( self.current_user.fbid, self.entry_id) fb.publish(self.current_user.fbid, self.current_user, self.async_callback(self._on_share), message=comment, link=link, description=description, name="Exercise Challenge") else: self.redirect('/home')
def render(self): today = datetime.date.today() dates = [(today,"today"), (today-datetime.timedelta(days=1),"yesterday")] for days in [2,3]: dates.append((today-datetime.timedelta(days=days), "%s days ago" % days)) selected_exercise = self.handler.get_argument("et", None) measures = None if selected_exercise: selected_exercise = int(selected_exercise) measures = et.get_measures_for_exercise_type(selected_exercise) return self.render_string("templates/ui/status-form.html", dates=dates, selected_exercise=self.handler.get_argument("et",None), exercise_types=et.get_all_exercise_types(), measures=measures)