user_repository = $user_repository; $this->tx_service = $tx_service; } /** * @param int $user_id * @param string $ip * @param string $user_action * @param null|string $realm * @return bool */ public function addUserAction($user_id, $ip, $user_action, $realm = null) { return $this->tx_service->transaction(function() use($user_id, $ip, $user_action, $realm){ try { $action = new UserAction(); $action->from_ip = $ip; $action->user_action = $user_action; $action->realm = $realm; $user = $this->user_repository->get($user_id); if ($user) { $user->actions()->save($action); return true; } return false; } catch (Exception $ex) { Log::error($ex); return false; } }); } }