예제 #1
0
 public function competition_select($id, $subid)
 {
     $competition = Competition::whereId($id)->first();
     $competitiongroups = Competitiongroup::where('competition_id', '=', $competition->id)->orderBy('date', 'desc')->get();
     if (!$competitiongroups->isEmpty()) {
         $competitiongroup = Competitiongroup::whereId($subid)->firstOrFail();
         $results = Result::where('competitiongroup_id', '=', $competitiongroup->id)->where('dsq_status', 0)->orderBy('total_points', 'desc')->get();
         $results_dsq = Result::where('competitiongroup_id', '=', $competitiongroup->id)->where('dsq_status', 1)->get();
         $teams = Results_team::where('competitiongroup_id', '=', $competitiongroup->id)->orderBy('total_points', 'desc')->get();
     }
     return view('home', compact('competition', 'competitiongroups', 'competitiongroup', 'results', 'results_dsq', 'teams'));
 }
 public function team_points_order($id)
 {
     $teams = Results_team::where('competitiongroup_id', '=', $id)->get();
     foreach ($teams as $team) {
         $comps = [$team->competitor1_id, $team->competitor2_id, $team->competitor3_id];
         $competitors = Result::where('competitiongroup_id', '=', $id)->whereIn('competitor_id', $comps)->get();
         $swimming_points = 0;
         $riding_points = 0;
         $ce_points = 0;
         $fencing_points = 0;
         $total_points = 0;
         foreach ($competitors as $comp) {
             $swimming_points += $comp->swimming_points;
             $riding_points += $comp->riding_points;
             $ce_points += $comp->ce_points;
             $fencing_points += $comp->fencing_points;
             $total_points += $comp->total_points;
         }
         $team->swimming_points = $swimming_points;
         $team->riding_points = $riding_points;
         $team->ce_points = $ce_points;
         $team->fencing_points = $fencing_points;
         $team->total_points = $total_points;
         $team->save();
     }
     //Vívás sorrend
     $fencing_order = Results_team::where('competitiongroup_id', '=', $id)->orderBy('fencing_points', 'desc')->get();
     $i = 0;
     foreach ($fencing_order as $fence) {
         $i++;
         $fence->fencing_order = $i;
         $fence->save();
     }
     //Úszás sorrend
     $swimming_order = Results_team::where('competitiongroup_id', '=', $id)->orderBy('swimming_points', 'desc')->get();
     $i = 0;
     foreach ($swimming_order as $swim) {
         $i++;
         $swim->swimming_order = $i;
         $swim->save();
     }
     //Lovas sorrend
     $riding_order = Results_team::where('competitiongroup_id', '=', $id)->orderBy('riding_points', 'desc')->get();
     $i = 0;
     foreach ($riding_order as $ride) {
         $i++;
         $ride->riding_order = $i;
         $ride->save();
     }
     //Kombinált sorrend
     $ce_order = Results_team::where('competitiongroup_id', '=', $id)->orderBy('ce_points', 'desc')->get();
     $i = 0;
     foreach ($ce_order as $ce) {
         $i++;
         $ce->ce_order = $i;
         $ce->save();
     }
 }
 public function teams_entry($id)
 {
     $competitiongroup = Competitiongroup::whereId($id)->firstOrFail();
     //Versenyzők a listába
     $result_list = Result::where('competitiongroup_id', '=', $id)->get()->lists('competitor_id', 'competitor_id');
     $already_in1 = Results_team::select('competitor1_id')->where('competitiongroup_id', '=', $id)->get()->lists('competitor1_id', 'competitor1_id');
     $already_in2 = Results_team::select('competitor2_id')->where('competitiongroup_id', '=', $id)->get()->lists('competitor2_id', 'competitor2_id');
     $already_in3 = Results_team::select('competitor3_id')->where('competitiongroup_id', '=', $id)->get()->lists('competitor3_id', 'competitor3_id');
     foreach ($already_in1 as $remove) {
         $result_list->forget($remove);
     }
     foreach ($already_in2 as $remove) {
         $result_list->forget($remove);
     }
     foreach ($already_in3 as $remove) {
         $result_list->forget($remove);
     }
     $competitors = [];
     foreach ($result_list as $comp) {
         $temp_comp = Competitor::whereId($comp)->first();
         $competitors[$comp] = $temp_comp->full_name_birthday;
     }
     natsort($competitors);
     //Benevezett versenyzők
     $competitor_list = Result::select('results.*')->where('competitiongroup_id', '=', $id)->join('competitors', 'results.competitor_id', '=', 'competitors.id')->orderBy('full_name', 'asc')->get();
     $competitor_in = [];
     foreach ($competitor_list as $comp) {
         $competitor_in[$comp->id] = $comp->competitor->full_name;
     }
     natsort($competitor_in);
     $comp_count = count($competitor_in);
     //Benevezett csapatok
     $team_list = Results_team::where('competitiongroup_id', '=', $id)->orderBy('name')->get();
     $team_in = [];
     foreach ($team_list as $team) {
         $team_in[$team->id] = $team->name;
     }
     natsort($team_in);
     $team_count = count($team_in);
     return view('backend.competitiongroups.teams_entry', compact('competitiongroup', 'competitors', 'team_in', 'team_list', 'team_count', 'competitor_in', 'competitor_list', 'comp_count'));
 }