mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-10-31 14:42:26 -05:00 
			
		
		
		
	smtp + email confirmation (#285)
* add smtp configuration * add email confirm + reset templates * add email sender to testrig * flesh out the email sender interface * go fmt * golint * update from field with more clarity * tidy up the email formatting * fix tests * add email sender to processor * tidy client api processing a bit * further tidying in fromClientAPI * pin new account to user * send msg to processor on new account creation * generate confirm email uri * remove emailer from account processor again * add processCreateAccountFromClientAPI * move emailer accountprocessor => userprocessor * add email sender to user processor * SendConfirmEmail function * add noop email sender * use noop email sender in tests * only assemble message if callback is not nil * use noop email sender if no smtp host is defined * minify email html before sending * fix wrong email address * email confirm test * fmt * serve web hndler * add email confirm handler * init test log properly on testrig * log emails that *would* have been sent * go fmt ./... * unexport confirm email handler * updatedAt * test confirm email function * don't allow tokens older than 7 days * change error message a bit * add basic smtp docs * add a few more snippets * typo * add email sender to outbox tests * don't use dutch wikipedia link * don't minify email html
This commit is contained in:
		
					parent
					
						
							
								de1f90ee46
							
						
					
				
			
			
				commit
				
					
						2aaec82732
					
				
			
		
					 56 changed files with 1543 additions and 398 deletions
				
			
		|  | @ -34,6 +34,7 @@ import ( | |||
| 	"github.com/superseriousbusiness/gotosocial/internal/api/client/fileserver" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/config" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/db" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/email" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/federation" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/gtsmodel" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/media" | ||||
|  | @ -54,6 +55,7 @@ type ServeFileTestSuite struct { | |||
| 	processor    processing.Processor | ||||
| 	mediaHandler media.Handler | ||||
| 	oauthServer  oauth.Server | ||||
| 	emailSender  email.Sender | ||||
| 
 | ||||
| 	// standard suite models | ||||
| 	testTokens       map[string]*gtsmodel.Token | ||||
|  | @ -78,7 +80,9 @@ func (suite *ServeFileTestSuite) SetupSuite() { | |||
| 	testrig.InitTestLog() | ||||
| 	suite.storage = testrig.NewTestStorage() | ||||
| 	suite.federator = testrig.NewTestFederator(suite.db, testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db), suite.storage) | ||||
| 	suite.processor = testrig.NewTestProcessor(suite.db, suite.storage, suite.federator) | ||||
| 	suite.emailSender = testrig.NewEmailSender("../../../../web/template/", nil) | ||||
| 
 | ||||
| 	suite.processor = testrig.NewTestProcessor(suite.db, suite.storage, suite.federator, suite.emailSender) | ||||
| 	suite.tc = testrig.NewTestTypeConverter(suite.db) | ||||
| 	suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) | ||||
| 	suite.oauthServer = testrig.NewTestOauthServer(suite.db) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue