Merge pull request #28675 from 0xD0M1M0/fix-email-sent-folder

fix: (IMAP) E-Mail Sent Folder Customization
This commit is contained in:
Akhil Narang 2024-12-05 15:36:49 +05:30 committed by GitHub
commit 83abab394e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 26 additions and 4 deletions

View file

@ -51,6 +51,7 @@
"imap_folder",
"section_break_12",
"append_emails_to_sent_folder",
"sent_folder_name",
"append_to",
"create_contact",
"enable_automatic_linking",
@ -691,12 +692,19 @@
"fieldname": "backend_app_flow",
"fieldtype": "Check",
"label": "Authenticate as Service Principal"
},
{
"depends_on": "eval:!doc.domain && doc.enable_outgoing && doc.enable_incoming && doc.use_imap",
"fetch_from": "domain.sent_folder_name",
"fieldname": "sent_folder_name",
"fieldtype": "Data",
"label": "Sent Folder Name"
}
],
"icon": "fa fa-inbox",
"index_web_pages_for_search": 1,
"links": [],
"modified": "2024-11-11 10:12:06.667888",
"modified": "2024-12-04 23:30:37.622353",
"modified_by": "Administrator",
"module": "Email",
"name": "Email Account",

View file

@ -101,6 +101,7 @@ class EmailAccount(Document):
password: DF.Password | None
send_notification_to: DF.SmallText | None
send_unsubscribe_message: DF.Check
sent_folder_name: DF.Data | None
service: DF.Literal[
"", "Frappe Mail", "GMail", "Sendgrid", "SparkPost", "Yahoo Mail", "Outlook.com", "Yandex.Mail"
]
@ -774,7 +775,10 @@ class EmailAccount(Document):
try:
email_server = self.get_incoming_server(in_receive=True)
message = safe_encode(message)
email_server.imap.append("Sent", "\\Seen", imaplib.Time2Internaldate(time.time()), message)
sent_folder_name = self.sent_folder_name or "Sent"
email_server.imap.append(
sent_folder_name, "\\Seen", imaplib.Time2Internaldate(time.time()), message
)
except Exception:
self.log_error("Unable to add to Sent folder")

View file

@ -24,7 +24,8 @@
"validate_ssl_certificate_for_outgoing",
"column_break_18",
"smtp_port",
"append_emails_to_sent_folder"
"append_emails_to_sent_folder",
"sent_folder_name"
],
"fields": [
{
@ -141,6 +142,14 @@
"fieldname": "validate_ssl_certificate_for_outgoing",
"fieldtype": "Check",
"label": "Validate SSL Certificate"
},
{
"default": "Sent",
"depends_on": "eval: doc.append_emails_to_sent_folder",
"description": "Some mailboxes require a different Sent Folder Name e.g. \"INBOX.Sent\"",
"fieldname": "sent_folder_name",
"fieldtype": "Data",
"label": "Sent Folder Name"
}
],
"icon": "icon-inbox",
@ -150,7 +159,7 @@
"link_fieldname": "domain"
}
],
"modified": "2024-03-23 16:03:23.836849",
"modified": "2024-12-04 23:26:20.993971",
"modified_by": "Administrator",
"module": "Email",
"name": "Email Domain",

View file

@ -66,6 +66,7 @@ class EmailDomain(Document):
domain_name: DF.Data
email_server: DF.Data
incoming_port: DF.Data | None
sent_folder_name: DF.Data | None
smtp_port: DF.Data | None
smtp_server: DF.Data
use_imap: DF.Check