SubLogController.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Controllers\User;
  4. use App\Controllers\BaseController;
  5. use App\Models\Config;
  6. use App\Models\SubscribeLog;
  7. use App\Utils\Tools;
  8. use Exception;
  9. use Psr\Http\Message\ResponseInterface;
  10. use Slim\Http\Response;
  11. use Slim\Http\ServerRequest;
  12. final class SubLogController extends BaseController
  13. {
  14. /**
  15. * 订阅记录
  16. *
  17. * @throws Exception
  18. */
  19. public function index(ServerRequest $request, Response $response, array $args): ResponseInterface
  20. {
  21. if (! Config::obtain('subscribe_log')) {
  22. return $response->withRedirect('/user');
  23. }
  24. $logs = (new SubscribeLog())->orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
  25. foreach ($logs as $log) {
  26. $log->request_time = Tools::toDateTime($log->request_time);
  27. }
  28. return $response->write($this->view()
  29. ->assign('subscribe_log_retention_days', Config::obtain('subscribe_log_retention_days'))
  30. ->assign('logs', $logs)
  31. ->fetch('user/subscribe_log.tpl'));
  32. }
  33. }