mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
see #107
Removed remaining use of full_address to search for a mailbox.
This commit is contained in:
@@ -5,7 +5,7 @@ import sys
|
||||
import smtplib
|
||||
from email.mime.text import MIMEText
|
||||
import datetime
|
||||
from modoboa.lib import parameters
|
||||
from modoboa.lib import split_mailbox, parameters
|
||||
from modoboa.admin.models import Mailbox
|
||||
from modoboa.extensions.postfix_autoreply import main
|
||||
from modoboa.extensions.postfix_autoreply.models import ARmessage, ARhistoric
|
||||
@@ -49,13 +49,7 @@ if __name__ == "__main__":
|
||||
|
||||
sender = sys.argv[1]
|
||||
for fulladdress in sys.argv[2:]:
|
||||
parts = fulladdress.split('@')
|
||||
if len(parts) == 2:
|
||||
address = parts[0]
|
||||
domain = parts[1]
|
||||
else:
|
||||
domain = parts[-1]
|
||||
address = "@".join(parts[:-1])
|
||||
address, domain = split_mailbox(fulladdress)
|
||||
try:
|
||||
mbox = Mailbox.objects.get(address=address, domain__name=domain)
|
||||
except Mailbox.DoesNotExist:
|
||||
|
||||
@@ -10,7 +10,7 @@ from django.core.urlresolvers import reverse
|
||||
from django.contrib.auth.decorators import login_required
|
||||
from modoboa.admin.models import Mailbox
|
||||
from modoboa.lib import parameters, _render, _render_error, \
|
||||
getctx, is_not_localadmin, _render_to_string
|
||||
getctx, is_not_localadmin, _render_to_string, split_mailbox
|
||||
from modoboa.lib.email_listing import parse_search_parameters, Paginator
|
||||
from lib import *
|
||||
from forms import *
|
||||
@@ -327,12 +327,13 @@ def send_mail(request, withctx=False, origmsg=None, posturl=None):
|
||||
else:
|
||||
msg = MIMEText(body.encode(charset), _subtype=subtype)
|
||||
|
||||
mb = Mailbox.objects.get(full_address=request.POST["from_"])
|
||||
msg["Subject"] = request.POST["subject"]
|
||||
if mb is None:
|
||||
msg["From"] = request.POST["from_"]
|
||||
else:
|
||||
address, domain = split_mailbox(request.POST["from_"])
|
||||
try:
|
||||
mb = Mailbox.objects.get(address=address, domain__name=domain)
|
||||
msg["From"] = "%s <%s>" % (mb.name, request.POST["from_"])
|
||||
except Mailbox.DoesNotExist:
|
||||
msg["From"] = request.POST["from_"]
|
||||
msg["To"] = request.POST["to"]
|
||||
msg["Message-ID"] = make_msgid()
|
||||
msg["User-Agent"] = "Modoboa"
|
||||
|
||||
@@ -173,3 +173,13 @@ def crypt_password(password):
|
||||
if scheme == "md5":
|
||||
return hashlib.md5(password).hexdigest()
|
||||
return password
|
||||
|
||||
def split_mailbox(mailbox):
|
||||
parts = mailbox.split('@')
|
||||
if len(parts) == 2:
|
||||
address = parts[0]
|
||||
domain = parts[1]
|
||||
else:
|
||||
domain = parts[-1]
|
||||
address = "@".join(parts[:-1])
|
||||
return (address, domain)
|
||||
|
||||
Reference in New Issue
Block a user