Drew DeVault
fa102822bb
HTML image proxy: handle missing Content-Length
This is less than ideal, but we still won't end up over-reading because
we're using a LimitedReader here.
3 anni fa
Drew DeVault
2611bee170
Humanize message list dates
3 anni fa
Drew DeVault
6ecb243620
Fix duplicate drafts on repeated saves
3 anni fa
Drew DeVault
1321cea241
Redirect to edit draft after saving message
3 anni fa
Drew DeVault
12547e2654
compose.html: add font awesome license
3 anni fa
Drew DeVault
fe32c53a17
Improve UI while emails are being sent
3 anni fa
Drew DeVault
86579bb478
Remove async SMTP queue
3 anni fa
Drew DeVault
0d1cca191b
alps/compose.html: fix message ID
3 anni fa
Drew DeVault
5268eba101
Notify server when user discards attachment
3 anni fa
Drew DeVault
aad5f44f6c
Display server errors on attachment upload
3 anni fa
Drew DeVault
231626a31a
alps: implement forwarding attachments
3 anni fa
Drew DeVault
a5fe1e358e
Carry Message-ID forward through compose process
3 anni fa
Drew DeVault
5a8d1572b1
Set SameSite and Secure on cookies
3 anni fa
Drew DeVault
643047402d
Don't crash if Outbox is not present
Fixes #133
3 anni fa
Drew DeVault
e4daf0778d
Implement mailbox deletion
3 anni fa
Drew DeVault
62e7cf8933
Rig up button to remove attachments
3 anni fa
Drew DeVault
417d9bbd64
Implement folder creation UI
3 anni fa
Drew DeVault
2bef9425fb
Simplify & fix bugs with select all functionality
3 anni fa
Drew DeVault
6a6ea3e63b
message view: add print button & stylesheet
3 anni fa
Drew DeVault
cbeacf9d06
Copy unsent messages to Outbox
This patch:
1. Copies unsent messages to the outbox before attempting to deliver
them with SMTP
2. Deletes those messages once they're sent, or leaves them if an error
occured
3. Updates the message list to make it obvious when there are unsent
messages in the outbox
3 anni fa
Drew DeVault
d325628cb2
compose: don't fail on 0 attachments
3 anni fa
Drew DeVault
8bd829962f
attachments.js: discard unused drag events
3 anni fa
Drew DeVault
26e6e66b04
attachments.js: remove unused variables
3 anni fa
Drew DeVault
a393429f01
Implement JavaScript UI for attachments
This one is a bit of a doozy. A summary of the changes:
- Session has grown storage for attachments which have been uploaded but
not yet sent.
- The list of attachments on a message is refcounted so that we can
clean up the temporary files only after it's done with - i.e. after
copying to Sent and after all of the SMTP attempts are done.
- Abandoned attachments are cleared out on process shutdown.
Future work:
- Add a limit to the maximum number of pending attachments the user can
have in the session.
- Periodically clean out abandoned attachments?
3 anni fa
Drew DeVault
4904207269
Replace parts tree with attachment list
3 anni fa
Drew DeVault
09d19169da
alps theme: consoldate tab active/hover styles
Fixes some visual weirdness in an edge case
3 anni fa
Drew DeVault
3db443c1df
message.html: add tab to view raw email
3 anni fa
Drew DeVault
bd91b3eacf
Fix errors arising from short-circuit assumption
The and/or operators in text/template don't short-circuit, so this
seemingly benign change caused a breakage when not fully tested.
3 anni fa
Drew DeVault
64b16f4a50
message.html: add tabs to select html/plaintext
3 anni fa
Drew DeVault
f97f38d4a9
Send outgoing emails asyncronously
3 anni fa
Drew DeVault
b93b2bafa5
Rig up dowork event queue and graceful termination
3 anni fa
Drew DeVault
8764397b7d
alps theme: fix borders on each unread row
This addresses an oversight from when the fifth column (flags) was
introduced.
3 anni fa
Drew DeVault
2d73c882df
Link sender name to search for their email address
3 anni fa
Drew DeVault
b437cef2ab
Implement broader search functionality
3 anni fa
Drew DeVault
0769190180
message list: color \Flagged status yellow
3 anni fa
Drew DeVault
d4fd1c1fe2
Add message flags to mailbox page
3 anni fa
Drew DeVault
0191aa4698
plugins/base/imap: fetch flags on search
3 anni fa
Drew DeVault
6ba418c9b2
Generalize sidebar categorization logic
3 anni fa
Drew DeVault
9e2c420461
Categorize and normalize folder listing
3 anni fa
Drew DeVault
8de661b3bb
Hide caldav/carrdav in nav unless present
3 anni fa
Drew DeVault
793f261b62
Handle case where server does not return body
This was causing a nil pointer dereference before.
Fixes ~migadu/alps#121.
3 anni fa
Drew DeVault
aaa30ead41
Handle \Deleted emails in message list
This can happen if an email is deleted by an external client, and this
change fixes a template crash in such cases.
I elected to display (deleted email) rather than to hide deleted
messages so that, if the message is unread, it provides an explanation
for your inbox showing $n unread emails where $n > number of non-deleted
emails.
This partially addresses ~migadu/alps#121
3 anni fa
Simon Ser
c20df8da30
readme: add CI badge
3 anni fa
Simon Ser
911a92a74e
ci: use new repo URL
3 anni fa
Reto Brunner
f3931fd510
remove exec bit from plugins/base/imap.go
3 anni fa
Jesse Olson
456d183ebc
Set Message-Id header
3 anni fa
наб
ae9e70b5ad
sourcehut theme: fix nil on emails without a text part
P.a. to 50e131244a
which solved
https://todo.sr.ht/~emersion/alps/100
Closes: https://todo.sr.ht/~emersion/alps/102
3 anni fa
наб
d60aca0e5c
base HTML: fix nil on emails without a text part
P.a. to 50e131244a
which solved
https://todo.sr.ht/~emersion/alps/100
Closes: https://todo.sr.ht/~emersion/alps/102
3 anni fa
Simon Ser
92b3016196
Fix nil render data on invalid password
This would cause this error:
template: head.html:7:15: executing "head.html" at <index .Global.Path 0>: error calling index: index of untyped nil
3 anni fa
Eyal Sawady
50e131244a
alps theme: fix nil on emails without a text part
Closes: https://todo.sr.ht/~emersion/alps/100
3 anni fa