Files
vapor-po/Sources/App/Middleware/ViewRoute+middleware.swift
Michael Housh 9478fae371 Reset Password (#1)
Implements reset password routes, views, and tests.

Reviewed-on: #1
2025-01-27 14:07:37 +00:00

30 lines
584 B
Swift

import DatabaseClientLive
import Dependencies
import Elementary
import SharedModels
import Vapor
private let viewProtectedMiddleware: [any Middleware] = [
UserPasswordAuthenticator(),
UserSessionAuthenticator(),
User.redirectMiddleware { req in
"/login?next=\(req.url.string)"
}
]
extension SiteRoute.View {
var middleware: [any Middleware]? {
switch self {
case .employee,
.resetPassword,
.purchaseOrder,
.user,
.vendor,
.vendorBranch:
return viewProtectedMiddleware
case .login: return nil
}
}
}