aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Copy unsent messages to OutboxLibravatarLibravatar Drew DeVault 2020-10-303-12/+87
| | | | | | | | | | | 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
* compose: don't fail on 0 attachmentsLibravatarLibravatar Drew DeVault 2020-10-301-1/+5
|
* Implement JavaScript UI for attachmentsLibravatarLibravatar Drew DeVault 2020-10-292-2/+95
| | | | | | | | | | | | | | | | 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?
* Replace parts tree with attachment listLibravatarLibravatar Drew DeVault 2020-10-231-5/+23
|
* message.html: add tab to view raw emailLibravatarLibravatar Drew DeVault 2020-10-231-1/+5
|
* message.html: add tabs to select html/plaintextLibravatarLibravatar Drew DeVault 2020-10-231-0/+23
|
* Send outgoing emails asyncronouslyLibravatarLibravatar Drew DeVault 2020-10-231-3/+8
|
* Implement broader search functionalityLibravatarLibravatar Drew DeVault 2020-10-232-26/+163
|
* plugins/base/imap: fetch flags on searchLibravatarLibravatar Drew DeVault 2020-10-221-1/+1
|
* Generalize sidebar categorization logicLibravatarLibravatar Drew DeVault 2020-10-221-87/+100
|
* Categorize and normalize folder listingLibravatarLibravatar Drew DeVault 2020-10-222-15/+75
|
* Handle case where server does not return bodyLibravatarLibravatar Drew DeVault 2020-10-221-1/+6
| | | | | | This was causing a nil pointer dereference before. Fixes ~migadu/alps#121.
* remove exec bit from plugins/base/imap.goLibravatarLibravatar Reto Brunner 2020-08-111-0/+0
|
* Set Message-Id headerLibravatarLibravatar Jesse Olson 2020-08-051-1/+2
|
* base HTML: fix nil on emails without a text partLibravatarLibravatar наб 2020-07-131-1/+1
| | | | | | | P.a. to 50e131244ad78fd1e4c216770ff69471a6fcb03b which solved https://todo.sr.ht/~emersion/alps/100 Closes: https://todo.sr.ht/~emersion/alps/102
* Fix nil render data on invalid passwordLibravatarLibravatar Simon Ser 2020-07-071-9/+10
| | | | | | 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
* Stay on the same page after moving a messageLibravatarLibravatar Zach DeCook 2020-06-291-1/+1
|
* Workaround template functions not loadedLibravatarLibravatar Simon Ser 2020-06-103-24/+21
| | | | | | | This is a hacky workaround to make things work until we find a better solution. Closes: https://todo.sr.ht/~emersion/alps/96
* base: don't use Client.MailboxLibravatarLibravatar Simon Ser 2020-05-282-8/+7
| | | | | | | The information returned by Client.Mailbox may be out-of-date. Instead, retrieve the mailbox status from the server each time. Closes: https://todo.sr.ht/~emersion/alps/80
* Add INBOX unread count on mailbox/message pagesLibravatarLibravatar Simon Ser 2020-05-211-2/+20
|
* plugins/caldav: add basic day viewLibravatarLibravatar Simon Ser 2020-05-211-10/+81
|
* caldav: add page titles to all routesLibravatarLibravatar Drew DeVault 2020-05-201-3/+7
|
* alps theme: add layout for calendar event updateLibravatarLibravatar Drew DeVault 2020-05-201-0/+2
|
* plugins/caldav: add time inputs in event create/update formLibravatarLibravatar Simon Ser 2020-05-203-15/+38
|
* go fmtLibravatarLibravatar Simon Ser 2020-05-201-4/+4
|
* login: set encrypted "remember me" tokenLibravatarLibravatar Drew DeVault 2020-05-201-1/+19
|
* alps theme: initial layout for calendarLibravatarLibravatar Drew DeVault 2020-05-201-0/+60
|
* alps theme: add contact edit/createLibravatarLibravatar Drew DeVault 2020-05-201-0/+2
|
* alps theme: add contact details pageLibravatarLibravatar Drew DeVault 2020-05-201-1/+3
|
* plugins/caldav: fix duplicate event after editLibravatarLibravatar Simon Ser 2020-05-201-1/+1
|
* Drop unnecessary "log" importLibravatarLibravatar Simon Ser 2020-05-201-1/+0
|
* plugins/caldav: edit event descriptionsLibravatarLibravatar Simon Ser 2020-05-202-0/+15
|
* plugins/caldav: add route to delete eventLibravatarLibravatar Simon Ser 2020-05-202-1/+25
|
* plugins/caldav: add link to edit eventLibravatarLibravatar Simon Ser 2020-05-201-0/+1
|
* Replace IMAPMessage.TextPartName with TextPartLibravatarLibravatar Simon Ser 2020-05-202-24/+17
|
* mailbox: show unseen message count in page titleLibravatarLibravatar Drew DeVault 2020-05-201-0/+4
|
* plugins/base: Add missing nil check for getMailboxByTypeLibravatarLibravatar fox.cpp 2020-05-181-0/+3
| | | | Fixes panic if there is no usable Sent folder.
* plugins/caldav: remove statements not usedLibravatarLibravatar Wagner Riffel 2020-05-181-10/+0
| | | | Signed-off-by: Wagner Riffel <[email protected]>
* mailbox: set title to "Inbox" rather than "INBOX"LibravatarLibravatar Drew DeVault 2020-05-131-1/+6
|
* plugins/caldav: add form to create new eventsLibravatarLibravatar Simon Ser 2020-05-134-0/+149
|
* plugins/caldav: fix event list URLsLibravatarLibravatar Simon Ser 2020-05-131-1/+1
|
* plugins/base: fix mailbox unread countLibravatarLibravatar Simon Ser 2020-05-132-12/+29
|
* plugins/carddav: add route to delete a contactLibravatarLibravatar Simon Ser 2020-05-132-0/+21
|
* plugins/caldav: introduce helper CalendarObject typeLibravatarLibravatar Simon Ser 2020-05-133-5/+21
|
* Use context-appropriate title for mbox/msg viewLibravatarLibravatar Drew DeVault 2020-05-131-9/+10
|
* Add <meta refresh> to mailbox viewLibravatarLibravatar Drew DeVault 2020-05-1310-10/+10
| | | | | | | | | | This causes the mailbox to automatically reload the page every 60 seconds, without JavaScript. This also updates the base template data to include the full URL, and replaces the earlier "Path" field with a pre-split array of path components, which is more immediately useful to most templates given the limitations of string munging with text/template primitives.
* plugins/caldav: switch to path-based URLsLibravatarLibravatar Simon Ser 2020-05-132-17/+26
| | | | | UIDs are not first-class WebDAV citizens and would require two roundtrips for most operations.
* Rename project to alpsLibravatarLibravatar Simon Ser 2020-05-1331-145/+145
|
* plugins/base: always show INBOX firstLibravatarLibravatar Simon Ser 2020-03-271-0/+6
|
* plugins/base: wrap MailboxInfo and MailboxStatusLibravatarLibravatar Simon Ser 2020-03-272-15/+35
| | | | | This allows us to extend these and expose helpers for templates and plugins.