public function addVisit(Request $request) { $validator = Validator::make($request->all(), ['team_id' => 'required|integer|exists:teams,id', 'training_id' => 'required|integer|exists:trainings,id', 'visit' => 'in:' . Stat::GAME_VISITED . ',' . Stat::GAME_NOT_VISITED]); if (!$validator->fails() && Auth::user() != null && Auth::user()->player != null && Auth::user()->player->team != null && Auth::user()->player->team->id == $request->get('team_id')) { $data['team_id'] = $request->get('team_id'); $data['training_id'] = $request->get('training_id'); $data['player_id'] = Auth::user()->player->id; TrainingVisitRepository::createOrUpdateVisit($data, $request->get('visit')); $data['visit'] = $request->get('visit'); event(new TrainingVisitAdded($data)); event(new TrainingVisitChange($data)); return json_encode(['msg' => trans('frontend.main.visit_added'), 'status' => 'success']); } return json_encode(['msg' => trans('frontend.main.visit_add_err'), 'status' => 'error']); }