Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Rename Plugin.Render to Plugin.Inject | 2019-12-10 | 3 | -3/+3 | ||
| | | | | | This function doesn't render anything, it just adds extra data to the template data. | |||||
* | Extract Lua plugin logic into separate file | 2019-12-10 | 2 | -151/+158 | ||
| | ||||||
* | Allow plugins to add new routes | 2019-12-10 | 3 | -0/+40 | ||
| | | | | References: https://todo.sr.ht/~sircmpwn/koushin/6 | |||||
* | Reconnect to IMAP server when logged out | 2019-12-09 | 3 | -20/+90 | ||
| | | | | | | | | | | | | | | | The session manager has been upgraded to deal with reconnections. Each session has its own expiration timer. Each time a request is received, the expiration timer is reset. A session can be closed (this is used when the user wants to logout). When the IMAP connection is closed by the server, it's set to nil in the session. The next time an IMAP command needs to be issued, the connection is re-established. Closes: https://todo.sr.ht/~sircmpwn/koushin/30 | |||||
* | Make SessionManager create the IMAP client | 2019-12-09 | 4 | -23/+46 | ||
| | | | | | This will allow SessionManager to re-connect when the IMAP server logs the user out. | |||||
* | Rename ConnPool to SessionManager | 2019-12-09 | 3 | -20/+20 | ||
| | ||||||
* | readme: sync with new Lua API | 2019-12-09 | 1 | -2/+5 | ||
| | ||||||
* | Add a Lua API to set template filters | 2019-12-09 | 3 | -10/+49 | ||
| | ||||||
* | Change Lua API to koushin.on_render | 2019-12-09 | 1 | -7/+27 | ||
| | ||||||
* | Make render data static | 2019-12-09 | 1 | -14/+39 | ||
| | | | | | | | | This makes sure fields filled by vanilla koushin keep the right type. A new Extra field allows plugins to attach their own data. This also makes it easier to write Go plugins, which would have trouble working with interface{}. | |||||
* | Add basic support for plugins | 2019-12-09 | 6 | -1/+115 | ||
| | ||||||
* | Drop define in templates | 2019-12-09 | 6 | -12/+8 | ||
| | | | | Just use the full filename instead, this is simpler and more explicit. | |||||
* | Use imap.BodyStructure.Filename and imap.Address.Address | 2019-12-09 | 4 | -6/+5 | ||
| | | | | | The former fixes encoding issues in filenames. The latter is just for brevity. | |||||
* | Extract HTTP handlers in separate file | 2019-12-04 | 2 | -263/+277 | ||
| | ||||||
* | Add .gitignore | 2019-12-04 | 1 | -0/+2 | ||
| | ||||||
* | Add basic theme support | 2019-12-04 | 5 | -25/+75 | ||
| | | | | References: https://todo.sr.ht/~sircmpwn/koushin/1 | |||||
* | Make message view's Back link set the mailbox page | 2019-12-03 | 3 | -6/+9 | ||
| | | | | | | | This allows to go back and forth between the mailbox view and the message view. References: https://todo.sr.ht/~sircmpwn/koushin/22 | |||||
* | Add separator between Prev and Next links | 2019-12-03 | 1 | -0/+1 | ||
| | ||||||
* | Add basic pagination to message list | 2019-12-03 | 7 | -20/+60 | ||
| | | | | References: https://todo.sr.ht/~sircmpwn/koushin/22 | |||||
* | Fix missing OutgoingMessage.InReplyTo assignment | 2019-12-03 | 1 | -9/+5 | ||
| | ||||||
* | Add basic support for multiple recipients | 2019-12-03 | 2 | -3/+10 | ||
| | ||||||
* | Add support for replying to a message | 2019-12-03 | 5 | -12/+103 | ||
| | ||||||
* | Fix mailbox view when empty | 2019-12-03 | 2 | -9/+15 | ||
| | | | | | | This fixes the second part of #14. References: https://todo.sr.ht/~sircmpwn/koushin/14 | |||||
* | Add empty CSS stylesheet | 2019-12-03 | 3 | -1/+3 | ||
| | | | | References: https://todo.sr.ht/~sircmpwn/koushin/19 | |||||
* | Set imap.CharsetReader | 2019-12-03 | 1 | -1/+5 | ||
| | | | | | This adds support for additional charsets when parsing e.g. subject lines. | |||||
* | Escape mailbox names in URLs | 2019-12-03 | 4 | -5/+17 | ||
| | | | | Closes: https://todo.sr.ht/~sircmpwn/koushin/14 | |||||
* | Add session lock | 2019-12-03 | 3 | -16/+45 | ||
| | | | | | | | HTTP requests can be processed in parallel, but we only have one IMAP connection per session. Closes: https://todo.sr.ht/~sircmpwn/koushin/12 | |||||
* | Import go-message charsets package | 2019-12-03 | 1 | -0/+1 | ||
| | | | | | | Enables support for non-UTF8 charsets. Closes: https://todo.sr.ht/~sircmpwn/koushin/18 | |||||
* | Pre-fill composer with sender address | 2019-12-03 | 3 | -22/+30 | ||
| | ||||||
* | Add basic SMTP support | 2019-12-03 | 5 | -7/+196 | ||
| | ||||||
* | Save username/password in session | 2019-12-03 | 2 | -13/+26 | ||
| | | | | | This is required for authenticating with the SMTP server when composing a new message. | |||||
* | Parse SMTP URL from CLI | 2019-12-03 | 3 | -11/+57 | ||
| | ||||||
* | Fix EOF on message view | 2019-12-03 | 1 | -2/+10 | ||
| | ||||||
* | Fix format string | 2019-12-03 | 1 | -1/+1 | ||
| | ||||||
* | Add context to errors | 2019-12-03 | 2 | -14/+14 | ||
| | ||||||
* | Add compose view | 2019-12-03 | 4 | -2/+38 | ||
| | ||||||
* | Correct license ownership | 2019-12-03 | 1 | -1/+1 | ||
| | ||||||
* | Show last 50 messages in mailbox view | 2019-12-03 | 1 | -1/+1 | ||
| | ||||||
* | Add logout route | 2019-12-03 | 2 | -0/+11 | ||
| | ||||||
* | Set HTTP error handler | 2019-12-03 | 1 | -0/+11 | ||
| | ||||||
* | Display & download any message part | 2019-12-03 | 5 | -55/+142 | ||
| | ||||||
* | Extract string conversion functions | 2019-12-03 | 3 | -32/+37 | ||
| | ||||||
* | Linkify message part tree | 2019-12-03 | 2 | -8/+52 | ||
| | ||||||
* | go fmt | 2019-12-03 | 3 | -14/+14 | ||
| | ||||||
* | Print body structure tree | 2019-12-03 | 1 | -1/+16 | ||
| | ||||||
* | Add missing public/message.html | 2019-12-02 | 1 | -0/+11 | ||
| | ||||||
* | Add basic message view | 2019-12-02 | 5 | -9/+211 | ||
| | ||||||
* | Linkify mailbox list | 2019-12-02 | 2 | -4/+1 | ||
| | ||||||
* | Add basic message list | 2019-12-02 | 3 | -3/+64 | ||
| | ||||||
* | Extract IMAP functions into separate file | 2019-12-02 | 2 | -37/+51 | ||
| |