1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- // Copyright (C) 2019-2023 Nicola Murino
- //
- // This program is free software: you can redistribute it and/or modify
- // it under the terms of the GNU Affero General Public License as published
- // by the Free Software Foundation, version 3.
- //
- // This program is distributed in the hope that it will be useful,
- // but WITHOUT ANY WARRANTY; without even the implied warranty of
- // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- // GNU Affero General Public License for more details.
- //
- // You should have received a copy of the GNU Affero General Public License
- // along with this program. If not, see <https://www.gnu.org/licenses/>.
- package httpd
- import (
- "strings"
- )
- const (
- pageMFATitle = "Two-factor authentication"
- page400Title = "Bad request"
- page403Title = "Forbidden"
- page404Title = "Not found"
- page404Body = "The page you are looking for does not exist."
- page500Title = "Internal Server Error"
- page500Body = "The server is unable to fulfill your request."
- webDateTimeFormat = "2006-01-02 15:04:05" // YYYY-MM-DD HH:MM:SS
- redactedSecret = "[**redacted**]"
- csrfFormToken = "_form_token"
- csrfHeaderToken = "X-CSRF-TOKEN"
- templateCommonDir = "common"
- templateTwoFactor = "twofactor.html"
- templateTwoFactorRecovery = "twofactor-recovery.html"
- templateForgotPassword = "forgot-password.html"
- templateResetPassword = "reset-password.html"
- templateCommonCSS = "sftpgo.css"
- templateCommonBase = "base.html"
- )
- type loginPage struct {
- CurrentURL string
- Version string
- Error string
- CSRFToken string
- StaticURL string
- AltLoginURL string
- AltLoginName string
- ForgotPwdURL string
- OpenIDLoginURL string
- Branding UIBranding
- FormDisabled bool
- }
- type twoFactorPage struct {
- CurrentURL string
- Version string
- Error string
- CSRFToken string
- StaticURL string
- RecoveryURL string
- Branding UIBranding
- }
- type forgotPwdPage struct {
- CurrentURL string
- Error string
- CSRFToken string
- StaticURL string
- LoginURL string
- Title string
- Branding UIBranding
- }
- type resetPwdPage struct {
- CurrentURL string
- Error string
- CSRFToken string
- StaticURL string
- LoginURL string
- Title string
- Branding UIBranding
- }
- func getSliceFromDelimitedValues(values, delimiter string) []string {
- result := []string{}
- for _, v := range strings.Split(values, delimiter) {
- cleaned := strings.TrimSpace(v)
- if cleaned != "" {
- result = append(result, cleaned)
- }
- }
- return result
- }
|