예제 #1
0
파일: Workout.php 프로젝트: micheh/yayog
 /**
  * @param Exercise $exercise
  * @return Workout
  */
 public function addExercise(Exercise $exercise)
 {
     $this->exercises[] = $exercise;
     $this->totalSeconds += $exercise->getSeconds();
     $this->totalReps += $exercise->getReps();
     if (!$this->type) {
         $this->type = str_replace(array(' Primary', ' Secondary', ' 6 reps', ' 8 reps', ' 10 reps'), '', $exercise->getType());
     }
     $exercise->setWorkout($this);
     return $this;
 }
예제 #2
0
 /**
  * Creates and returns the HTML for the previous exercises.
  *
  * @param Exercise $currentExercise The current exercise
  * @param int $amount How many previous exercises should be rendered
  * @return string HTML of the previous exercises
  */
 protected function renderPreviousExercises(Exercise $currentExercise, $amount = 5)
 {
     $previousExercises = $currentExercise->getPreviousExercises();
     if (empty($previousExercises)) {
         return '';
     }
     $html = '<li class="list-group-item list-previous-exercises"><ul class="list-unstyled">';
     $date = $currentExercise->getWorkout()->getDate();
     foreach ($previousExercises as $previousExercise) {
         $previousWorkout = $previousExercise->getWorkout();
         $html .= sprintf('<li>%s&ensp; <a class="workout-link" href="#workout-%d" title="Jump to this workout">' . '%s</a> <span class="text-muted">(%s): %d reps</span></li>', $this->renderRepsDelta($currentExercise->getReps(), $previousExercise->getReps()), $previousWorkout->getId(), $previousWorkout->getLabel(), $this->renderRelativeDate($previousWorkout->getDate(), $date), $previousExercise->getReps());
         if (--$amount == 0) {
             break;
         }
     }
     return $html . '</ul></li>';
 }