2022-09-28 07:01:17 +00:00
|
|
|
package event
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/sirupsen/logrus"
|
|
|
|
|
|
|
|
"github.com/photoprism/photoprism/pkg/txt"
|
|
|
|
)
|
|
|
|
|
|
|
|
// LoginData returns a login event message.
|
2022-10-09 15:16:49 +00:00
|
|
|
func LoginData(level logrus.Level, ip, realm, name, browser, message string) Data {
|
2022-09-28 07:01:17 +00:00
|
|
|
return Data{
|
2022-10-09 15:16:49 +00:00
|
|
|
"time": TimeStamp(),
|
|
|
|
"level": level.String(),
|
|
|
|
"ip": txt.Clip(ip, txt.ClipIP),
|
|
|
|
"realm": txt.Clip(realm, txt.ClipRealm),
|
|
|
|
"name": txt.Clip(name, txt.ClipUserName),
|
|
|
|
"browser": txt.Clip(browser, txt.ClipLog),
|
|
|
|
"message": txt.Clip(message, txt.ClipLog),
|
2022-09-28 07:01:17 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-10-10 14:34:07 +00:00
|
|
|
// LoginInfo publishes a successful login event.
|
|
|
|
func LoginInfo(ip, realm, name, browser string) {
|
|
|
|
Publish("login.info", LoginData(logrus.InfoLevel, ip, realm, name, browser, ""))
|
2022-09-28 07:01:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// LoginError publishes a login error event.
|
2022-10-09 15:16:49 +00:00
|
|
|
func LoginError(ip, realm, name, browser, error string) {
|
2022-10-10 14:34:07 +00:00
|
|
|
Publish("login.error", LoginData(logrus.ErrorLevel, ip, realm, name, browser, error))
|
2022-09-28 07:01:17 +00:00
|
|
|
}
|