11package directors
22
33import (
4- "fmt"
5-
64 "github.com/ochanoco/ninsho"
75 gin_ninsho "github.com/ochanoco/ninsho/extension/gin"
86 "github.com/ochanoco/torima/core"
@@ -26,24 +24,19 @@ func SkipAuthDirector(c *core.TorimaDirectorPackageContext) (core.TorimaPackageS
2624}
2725
2826func AuthDirector (c * core.TorimaDirectorPackageContext ) (core.TorimaPackageStatus , error ) {
29- if c .PackageStatus == core .NoAuthNeeded {
30- return core .NoAuthNeeded , nil
31- }
32-
3327 user , err := gin_ninsho.LoadUser [ninsho.LINE_USER ](c .GinContext )
34-
3528 // just to be sure
3629 c .Target .Header .Del ("X-Torima-UserID" )
3730
38- if err != nil {
39- err = utils . MakeError ( err , "failed to get user from session: " )
40- return core .ForceStop , err
41- }
31+ if err != nil || user == nil {
32+ if c . PackageStatus == core . NoAuthNeeded {
33+ return core .NoAuthNeeded , nil
34+ }
4235
43- if user != nil {
44- c .Target .Header .Set ("X-Torima-UserID" , user .Sub )
45- return core .Authed , nil
36+ err = utils .MakeError (err , "failed to authenticate: " )
37+ return core .ForceStop , err
4638 }
4739
48- return core .ForceStop , utils .MakeError (fmt .Errorf ("" ), utils .UnauthorizedErrorTag )
40+ c .Target .Header .Set ("X-Torima-UserID" , user .Sub )
41+ return core .Authed , nil
4942}
0 commit comments