Commit graph

174 commits

Author SHA1 Message Date
Simon Ser
6115ce7b1d
themes/sourcehut: add CardDAV templates, improve nav 2020-02-12 00:40:23 +01:00
Simon Ser
30a26051aa
contrib/hotreload: be quiet 2020-02-12 00:29:51 +01:00
Simon Ser
3a3887b358
plugins/carddav: cache addressbook home set path 2020-02-11 19:14:05 +01:00
Simon Ser
13f5414691
cmd/koushin: add -debug flag 2020-02-11 18:39:52 +01:00
Simon Ser
e59ad57e32
docs: add an example Go plugin 2020-02-11 18:23:48 +01:00
Simon Ser
e09a837569
docs: add a basic example Lua plugin 2020-02-11 17:56:15 +01:00
Simon Ser
0a56365672
docs/themes-and-plugins: extract from README 2020-02-11 17:42:10 +01:00
Simon Ser
02b59bc365
docs/cli: new page 2020-02-11 17:40:18 +01:00
Simon Ser
3c391fa81d
contrib: add hotreload script 2020-02-11 17:37:58 +01:00
Simon Ser
82304a78d6
plugins/caldav: add missing event.html template 2020-02-11 17:14:43 +01:00
Simon Ser
19548694e0
themes/sourcehut: sync with latest base plugin 2020-02-11 17:14:01 +01:00
Simon Ser
97eef13db4
Rename Session.connect to Session.connectIMAP 2020-02-10 17:21:34 +01:00
Simon Ser
9fe20a604c
plugins/caldav: add pagination to calendar view 2020-02-05 18:57:16 +01:00
Simon Ser
a1b43cc5a8
plugins/caldav: add basic event view 2020-02-05 18:39:53 +01:00
Simon Ser
5b78cdc104
plugins/caldav: new plugin
For now it can only list events for the current month.

References: https://todo.sr.ht/~sircmpwn/koushin/60
2020-02-05 18:14:26 +01:00
Simon Ser
1bd930f043
plugins/carddav: add basic contacts view 2020-02-05 14:58:56 +01:00
Simon Ser
3263a89185
plugins/carddav: accept "carddavs" and "carddav+insecure" URL schemes 2020-02-05 13:56:18 +01:00
Simon Ser
ad256906e0
plugins/carddav: sanity check URL on startup 2020-02-05 13:52:52 +01:00
Simon Ser
6a6ece03e4
plugins/carddav: new plugin
A new minimal CardDAV plugin is introduced. It injects a list of e-mail
addresses in the e-mail compose view.

References: https://todo.sr.ht/~sircmpwn/koushin/7
2020-02-05 12:21:54 +01:00
Simon Ser
6ea7cd9134
plugins/base: add icons for attachments/re/fwd/starred 2020-02-05 11:58:53 +01:00
Simon Ser
651872ef7d
plugins/base/imap: disable full-text search for now
It's too slow on servers where indexes aren't enabled.

References: https://todo.sr.ht/~sircmpwn/koushin/23
2020-02-05 11:37:01 +01:00
Simon Ser
f08ecb9cef
Update echo to 504f39abaf320
This fixes an OpenBSD issue.

Closes: https://todo.sr.ht/~sircmpwn/koushin/50
2020-02-03 19:35:14 +01:00
Simon Ser
6940a826b5
readme: add short description
Closes: https://todo.sr.ht/~sircmpwn/koushin/59
2020-01-30 11:20:56 +01:00
Simon Ser
4d68400036
plugins/base: add settings page
Add a settings page where the user can change the number of messages
displayed per page.
2020-01-28 20:04:33 +01:00
Simon Ser
bdf1a8b02b
koushin: add Store interface
References: https://todo.sr.ht/~sircmpwn/koushin/5
2020-01-28 20:04:18 +01:00
Simon Ser
c0b4998b38
koushin: rename Session.locker to imapLocker 2020-01-28 15:41:18 +01:00
Simon Ser
85c01b87a9
plugins/base: support attachments in drafts
References: https://todo.sr.ht/~sircmpwn/koushin/16
2020-01-28 12:30:07 +01:00
Simon Ser
50046b62ac
plugins/base: use BodyStructure.Walk instead of custom logic 2020-01-28 11:15:10 +01:00
Simon Ser
b325933a8b
Add .editorconfig 2020-01-24 20:59:35 +01:00
Simon Ser
3384c39a17
plugins/base: delete previous draft 2020-01-24 20:27:05 +01:00
Simon Ser
d31c56ec98
plugins/base: edit drafts
Note that attachments will be lost. This is a TODO.
2020-01-24 20:07:29 +01:00
Simon Ser
2e367efe58
plugins/base: add fallback if SPECIAL-USE is unsupported 2020-01-24 18:01:01 +01:00
Simon Ser
bfc617b702
plugins/base: save message as draft 2020-01-24 17:49:50 +01:00
Simon Ser
267999b6e5
Update docs with new RegisterPluginLoader function 2020-01-21 13:40:55 +01:00
Simon Ser
baae776247
readme: fix example usage 2020-01-21 13:38:47 +01:00
Simon Ser
3347e69480
Use %q to quote values in format strings 2020-01-20 22:06:47 +01:00
Simon Ser
9fdccc3a4b
Rename template.go to renderer.go 2020-01-20 22:05:42 +01:00
Simon Ser
b58c15d121
Extract Lua infrastructure into a plugin 2020-01-20 22:04:50 +01:00
Simon Ser
efa0816333
Add Server.Logger 2020-01-20 22:03:05 +01:00
Simon Ser
01983eb7b5
Introduce PluginLoaderFunc
This allows registered plugins to execute code when loaded. This will
also allow the Lua support code to be a plugin.

Closes: https://todo.sr.ht/~sircmpwn/koushin/54
2020-01-20 21:37:28 +01:00
Simon Ser
d19c17c6d5
go fmt 2020-01-20 20:27:49 +01:00
Simon Ser
589b303f9f
plugins/base: append outgoing messages to Sent mailbox
And mark original message as answered.

Closes: https://todo.sr.ht/~sircmpwn/koushin/15
2020-01-20 20:25:41 +01:00
Simon Ser
3340fcd63d
Check IMAP/SMTP servers on startup
Closes: https://todo.sr.ht/~sircmpwn/koushin/46
2020-01-20 18:46:50 +01:00
Simon Ser
3bf17752ab
plugins/base: remove external resources URLs, sanitize CSS 2020-01-20 18:28:49 +01:00
Simon Ser
b9a180b154
Disable DNS prefetching 2020-01-20 18:26:22 +01:00
Simon Ser
a66ef1059b
Make the text/* part content a []byte 2020-01-20 16:20:16 +01:00
Simon Ser
8d248bc32f
Extract HTML sanitizer to its own file 2020-01-20 16:20:16 +01:00
Simon Ser
d745f98bb7
Add polyfill for browsers not supporting srcdoc 2020-01-20 16:20:15 +01:00
Simon Ser
efaf6fd444
Open e-mail links in new tab 2020-01-20 16:20:15 +01:00
Simon Ser
721c3ce3eb
Resize e-mail iframe with content 2020-01-20 16:20:15 +01:00