summaryrefslogtreecommitdiff
path: root/service/pixelated/config
diff options
context:
space:
mode:
authorBruno Wagner <bwgpro@gmail.com>2015-06-05 19:36:08 -0300
committerBruno Wagner <bwgpro@gmail.com>2015-06-05 19:36:08 -0300
commit103cb481bc46e9dc8c5ca047b460265b5d68ee32 (patch)
treeacb7cf1395b879fcd9730766498415fce58d137f /service/pixelated/config
parenta2886f31583722c5f08a965325156f8eb1e18509 (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.py4
-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.py42
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