diff options
author | Bruno Wagner <bwgpro@gmail.com> | 2015-06-05 19:36:08 -0300 |
---|---|---|
committer | Bruno Wagner <bwgpro@gmail.com> | 2015-06-05 19:36:08 -0300 |
commit | 103cb481bc46e9dc8c5ca047b460265b5d68ee32 (patch) | |
tree | acb7cf1395b879fcd9730766498415fce58d137f /service/pixelated/config | |
parent | a2886f31583722c5f08a965325156f8eb1e18509 (diff) |
Added creation of input mail from python message
That way we don't need extra logic for the welcome
mail, we just have to read the file and send the contents
to the input mail parser and that's it.
Also moved the logic of adding a welcome mail to the mailboxes
because it has knowledge of mailbox methods anyways.
Diffstat (limited to 'service/pixelated/config')
-rw-r--r-- | service/pixelated/config/app_factory.py | 4 | ||||
-rw-r--r-- | service/pixelated/config/leap.py (renamed from service/pixelated/config/initialize_leap.py) | 1 | ||||
-rw-r--r-- | service/pixelated/config/welcome_mail.py | 42 |
3 files changed, 3 insertions, 44 deletions
diff --git a/service/pixelated/config/app_factory.py b/service/pixelated/config/app_factory.py index 477317e1..717c2bb9 100644 --- a/service/pixelated/config/app_factory.py +++ b/service/pixelated/config/app_factory.py @@ -23,7 +23,6 @@ from pixelated.adapter.soledad.soledad_querier import SoledadQuerier from pixelated.adapter.search import SearchEngine from pixelated.adapter.services.draft_service import DraftService from pixelated.adapter.listeners.mailbox_indexer_listener import MailboxIndexerListener -from .welcome_mail import check_welcome_mail def init_app(leap_home, leap_session): @@ -37,7 +36,8 @@ def init_app(leap_home, leap_session): lambda: leap_session.smtp.ensure_running()) pixelated_mailboxes = Mailboxes(leap_session.account, soledad_querier, search_engine) - check_welcome_mail(pixelated_mailboxes.inbox()) + + pixelated_mailboxes.add_welcome_mail_for_fresh_user() draft_service = DraftService(pixelated_mailboxes) mail_service = MailService(pixelated_mailboxes, pixelated_mail_sender, soledad_querier, search_engine) diff --git a/service/pixelated/config/initialize_leap.py b/service/pixelated/config/leap.py index 1f8c5655..0ff6ea18 100644 --- a/service/pixelated/config/initialize_leap.py +++ b/service/pixelated/config/leap.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from pixelated.config import credentials from leap.common.events import server as events_server import pixelated.bitmask_libraries.certs as certs diff --git a/service/pixelated/config/welcome_mail.py b/service/pixelated/config/welcome_mail.py deleted file mode 100644 index 5dcbf9bc..00000000 --- a/service/pixelated/config/welcome_mail.py +++ /dev/null @@ -1,42 +0,0 @@ -# -# Copyright (c) 2014 ThoughtWorks, Inc. -# -# Pixelated is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# Pixelated is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with Pixelated. If not, see <http://www.gnu.org/licenses/>. -import os -from pixelated.adapter.model.mail import InputMail -from pixelated.support.date import iso_now -from email import message_from_file -from email.MIMEMultipart import MIMEMultipart - - -def check_welcome_mail(mailbox): - if mailbox.fresh: - welcome_mail = build_welcome_mail() - mailbox.add(welcome_mail) - - -def build_welcome_mail(): - current_path = os.path.dirname(os.path.abspath(__file__)) - with open(os.path.join(current_path, '..', 'assets', 'welcome.mail')) as mail_template_file: - mail_template = message_from_file(mail_template_file) - welcome_mail = InputMail() - welcome_mail.headers['To'] = InputMail.FROM_EMAIL_ADDRESS - welcome_mail.headers['Subject'] = mail_template['Subject'] - welcome_mail.headers['Date'] = iso_now() - welcome_mail._mime = MIMEMultipart() - for payload in mail_template.get_payload(): - welcome_mail._mime.attach(payload) - if payload.get_content_type() == 'text/plain': - welcome_mail.body = payload.as_string() - return welcome_mail |