diff options
| author | 2022-04-29 02:00:25 -0700 | |
|---|---|---|
| committer | 2022-04-29 11:00:25 +0200 | |
| commit | f9b351438b9c48dd0ddd527846babd1ef57140b6 (patch) | |
| tree | b59fcfe3d59c50f9aefcee0e9909fcafb43ca372 /internal/email | |
| parent | [documentaton] Fix port number in Reverse proxy section (#506) (diff) | |
| download | gotosocial-f9b351438b9c48dd0ddd527846babd1ef57140b6.tar.xz | |
[feature] allow absolute path to templates (#507)
Only attempt to join the `WebTemplateBaseDir` with the current working
directory if the user has not configured an absolute path to the
template directory.
This changeset also makes a similar change to the testrig, allowing
tests to configure an alternative location for the templates directory.
Fixes #411
Signed-off-by: Terin Stock <terinjokes@gmail.com>
Diffstat (limited to 'internal/email')
| -rw-r--r-- | internal/email/util.go | 12 | 
1 files changed, 7 insertions, 5 deletions
diff --git a/internal/email/util.go b/internal/email/util.go index 52290dbe4..c543db755 100644 --- a/internal/email/util.go +++ b/internal/email/util.go @@ -28,14 +28,16 @@ import (  )  func loadTemplates(templateBaseDir string) (*template.Template, error) { -	cwd, err := os.Getwd() -	if err != nil { -		return nil, fmt.Errorf("error getting current working directory: %s", err) +	if !filepath.IsAbs(templateBaseDir) { +		cwd, err := os.Getwd() +		if err != nil { +			return nil, fmt.Errorf("error getting current working directory: %s", err) +		} +		templateBaseDir = filepath.Join(cwd, templateBaseDir)  	}  	// look for all templates that start with 'email_' -	tmPath := filepath.Join(cwd, fmt.Sprintf("%semail_*", templateBaseDir)) -	return template.ParseGlob(tmPath) +	return template.ParseGlob(filepath.Join(templateBaseDir, "email_*"))  }  // https://datatracker.ietf.org/doc/html/rfc2822  | 
