get(\DateTimeImmutable::class)->setTimezone(new \DateTimeZone("UTC")); } protected function isAdmin(): bool { return (bool) Arsse::$user->propertiesGet(Arsse::$user->id, false)['admin']; } protected function fieldMapNames(array $data, array $map): array { $out = []; foreach ($map as $to => $from) { if (array_key_exists($from, $data)) { $out[$to] = $data[$from]; } } return $out; } protected function fieldMapTypes(array $data, array $map, string $dateFormat = "sql"): array { foreach ($map as $key => $type) { if (array_key_exists($key, $data)) { if ($type === "datetime" && $dateFormat !== "sql") { $data[$key] = Date::transform($data[$key], $dateFormat, "sql"); } else { settype($data[$key], $type); } } } return $data; } }