Example #1
0
 public static function getOfficialName(Race $race)
 {
     $name = '';
     switch ($race->getAgeClass()) {
         case 'Kind':
             if ($race->getGender() == Competitor::GENDER_FEMALE) {
                 $name = 'Mädchen';
             } elseif ($race->getGender() == Competitor::GENDER_MALE) {
                 $name = 'Jungen';
             } else {
                 $name = 'JuM';
             }
             $name .= ' (';
             if ($race->getAgeMin() == $race->getAgeMax()) {
                 $name .= $race->getAgeMin();
             } else {
                 $name .= $race->getAgeMin() . ' bis ' . $race->getAgeMax();
             }
             $name .= ' Jahre)';
             break;
         case 'Junior':
             if ($race->getGender() == Competitor::GENDER_FEMALE) {
                 $name = 'Juniorinnen';
             } else {
                 $name = 'Junioren';
             }
             if ($race->getAgeMin() == 15 && ($race->getAgeMax() == 16 || $race->getAgeMax() == $race->getAgeMin())) {
                 $name .= ' B';
             } elseif ($race->getAgeMin() == 17 && ($race->getAgeMax() == 18 || $race->getAgeMax() == $race->getAgeMin())) {
                 $name .= ' A';
             }
             break;
         case 'Senior':
             if ($race->getGender() == Competitor::GENDER_FEMALE) {
                 $name = 'Frauen';
             } elseif ($race->getGender() == Competitor::GENDER_MALE) {
                 $name = 'Männer';
             } else {
                 $name = 'Senioren';
             }
             if ($race->getAgeMax() < 23) {
                 $name .= ' B';
             } elseif ($race->getAgeMin() > 22 && $race->getAgeMax() < 27) {
                 $name .= ' A';
             } else {
                 $name .= ' (' . $race->getAgeMin() . ' bis ' . $race->getAgeMax() . ' Jahre)';
             }
             break;
         case 'Master':
             if ($race->getGender() == Competitor::GENDER_FEMALE) {
                 $name = 'Frauen (Masters)';
             } elseif ($race->getGender() == Competitor::GENDER_MALE) {
                 $name = 'Männer (Masters)';
             } else {
                 $name = 'Masters';
             }
             $name .= ' (' . $race->getAgeMin() . ' bis ' . $race->getAgeMax() . ' Jahre)';
             break;
         case 'Offen':
             $name = 'Offen';
             $name .= ' (' . $race->getAgeMin() . ' bis ' . $race->getAgeMax() . ' Jahre)';
             break;
     }
     if ($race->getTeamsize() > 1) {
         $name .= ' [' . $race->getTeamsize() . ' Pers.]';
     }
     return $name;
 }