From 0244a39475a47ad7de385604aed1aacdcf48065a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Espino?= Date: Mon, 27 Feb 2017 16:48:49 +0100 Subject: [PATCH] Adding import finished emails, and fixed tasks from the importer --- taiga/importers/asana/tasks.py | 4 ++-- taiga/importers/github/tasks.py | 2 +- taiga/importers/jira/tasks.py | 4 ++-- taiga/importers/pivotal/tasks.py | 2 +- taiga/importers/services.py | 13 +++++++++---- .../emails/asana_import_success-body-html.jinja | 11 +++++++++++ .../emails/asana_import_success-body-text.jinja | 12 ++++++++++++ .../emails/asana_import_success-subject.jinja | 1 + .../emails/github_import_success-body-html.jinja | 11 +++++++++++ .../emails/github_import_success-body-text.jinja | 12 ++++++++++++ .../emails/github_import_success-subject.jinja | 1 + .../emails/importer_import_error-body-html.jinja | 12 ++++++++++++ .../emails/importer_import_error-body-text.jinja | 14 ++++++++++++++ .../emails/importer_import_error-subject.jinja | 1 + .../emails/jira_import_success-body-html.jinja | 11 +++++++++++ .../emails/jira_import_success-body-text.jinja | 12 ++++++++++++ .../emails/jira_import_success-subject.jinja | 1 + .../emails/trello_import_success-body-html.jinja | 11 +++++++++++ .../emails/trello_import_success-body-text.jinja | 12 ++++++++++++ .../emails/trello_import_success-subject.jinja | 1 + taiga/importers/trello/tasks.py | 4 ++-- 21 files changed, 140 insertions(+), 12 deletions(-) create mode 100644 taiga/importers/templates/emails/asana_import_success-body-html.jinja create mode 100644 taiga/importers/templates/emails/asana_import_success-body-text.jinja create mode 100644 taiga/importers/templates/emails/asana_import_success-subject.jinja create mode 100644 taiga/importers/templates/emails/github_import_success-body-html.jinja create mode 100644 taiga/importers/templates/emails/github_import_success-body-text.jinja create mode 100644 taiga/importers/templates/emails/github_import_success-subject.jinja create mode 100644 taiga/importers/templates/emails/importer_import_error-body-html.jinja create mode 100644 taiga/importers/templates/emails/importer_import_error-body-text.jinja create mode 100644 taiga/importers/templates/emails/importer_import_error-subject.jinja create mode 100644 taiga/importers/templates/emails/jira_import_success-body-html.jinja create mode 100644 taiga/importers/templates/emails/jira_import_success-body-text.jinja create mode 100644 taiga/importers/templates/emails/jira_import_success-subject.jinja create mode 100644 taiga/importers/templates/emails/trello_import_success-body-html.jinja create mode 100644 taiga/importers/templates/emails/trello_import_success-body-text.jinja create mode 100644 taiga/importers/templates/emails/trello_import_success-subject.jinja diff --git a/taiga/importers/asana/tasks.py b/taiga/importers/asana/tasks.py index 0f81f4de..b294c661 100644 --- a/taiga/importers/asana/tasks.py +++ b/taiga/importers/asana/tasks.py @@ -31,7 +31,7 @@ logger = logging.getLogger('taiga.importers.asana') @app.task(bind=True) def import_project(self, user_id, token, project_id, options): - user = User.object.get(id=user_id) + user = User.objects.get(id=user_id) importer = AsanaImporter(user, token) try: project = importer.import_project(project_id, options) @@ -44,7 +44,7 @@ def import_project(self, user_id, token, project_id, options): "project": project_id, "exception": e } - email = mail_builder.asana_import_error(admin, ctx) + email = mail_builder.importer_import_error(admin, ctx) email.send() logger.error('Error importing Asana project %s (by %s)', project_id, user, exc_info=sys.exc_info()) else: diff --git a/taiga/importers/github/tasks.py b/taiga/importers/github/tasks.py index 001ccfd3..6af268ee 100644 --- a/taiga/importers/github/tasks.py +++ b/taiga/importers/github/tasks.py @@ -44,7 +44,7 @@ def import_project(self, user_id, token, project_id, options): "project": project_id, "exception": e } - email = mail_builder.github_import_error(admin, ctx) + email = mail_builder.importer_import_error(admin, ctx) email.send() logger.error('Error importing GitHub project %s (by %s)', project_id, user, exc_info=sys.exc_info()) else: diff --git a/taiga/importers/jira/tasks.py b/taiga/importers/jira/tasks.py index 6e9e50db..3be81380 100644 --- a/taiga/importers/jira/tasks.py +++ b/taiga/importers/jira/tasks.py @@ -31,7 +31,7 @@ logger = logging.getLogger('taiga.importers.jira') @app.task(bind=True) def import_project(self, user_id, url, token, project_id, options, importer_type): - user = User.object.get(id=user_id) + user = User.objects.get(id=user_id) if importer_type == "agile": importer = JiraAgileImporter(user, url, token) @@ -49,7 +49,7 @@ def import_project(self, user_id, url, token, project_id, options, importer_type "project": project_id, "exception": e } - email = mail_builder.jira_import_error(admin, ctx) + email = mail_builder.importer_import_error(admin, ctx) email.send() logger.error('Error importing Jira project %s (by %s)', project_id, user, exc_info=sys.exc_info()) else: diff --git a/taiga/importers/pivotal/tasks.py b/taiga/importers/pivotal/tasks.py index fe6a3919..9435e54e 100644 --- a/taiga/importers/pivotal/tasks.py +++ b/taiga/importers/pivotal/tasks.py @@ -44,7 +44,7 @@ def import_project(self, user_id, token, project_id, options): "project": project_id, "exception": e } - email = mail_builder.pivotal_import_error(admin, ctx) + email = mail_builder.importer_import_error(admin, ctx) email.send() logger.error('Error importing PivotalTracker project %s (by %s)', project_id, user, exc_info=sys.exc_info()) else: diff --git a/taiga/importers/services.py b/taiga/importers/services.py index 4817c049..402120df 100644 --- a/taiga/importers/services.py +++ b/taiga/importers/services.py @@ -4,13 +4,18 @@ from taiga.users.models import User def resolve_users_bindings(users_bindings): new_users_bindings = {} for key,value in users_bindings.items(): + try: + user_key = int(key) + except ValueError: + user_key = key + if isinstance(value, str): try: - new_users_bindings[int(key)] = User.objects.get(email_iexact=value) + new_users_bindings[user_key] = User.objects.get(email_iexact=value) except User.MultipleObjectsReturned: - new_users_bindings[int(key)] = User.objects.get(email=value) + new_users_bindings[user_key] = User.objects.get(email=value) except User.DoesNotExists: - new_users_bindings[int(key)] = None + new_users_bindings[user_key] = None else: - new_users_bindings[int(key)] = User.objects.get(id=value) + new_users_bindings[user_key] = User.objects.get(id=value) return new_users_bindings diff --git a/taiga/importers/templates/emails/asana_import_success-body-html.jinja b/taiga/importers/templates/emails/asana_import_success-body-html.jinja new file mode 100644 index 00000000..d14d1cb2 --- /dev/null +++ b/taiga/importers/templates/emails/asana_import_success-body-html.jinja @@ -0,0 +1,11 @@ +{% extends "emails/base-body-html.jinja" %} + +{% block body %} + {% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +

Asana Project imported

+

Hello {{ user }},

+

Your Asana project has been correctly imported.

+ Go to {{ project }} +

The Taiga Team

+ {% endtrans %} +{% endblock %} diff --git a/taiga/importers/templates/emails/asana_import_success-body-text.jinja b/taiga/importers/templates/emails/asana_import_success-body-text.jinja new file mode 100644 index 00000000..a66c54f3 --- /dev/null +++ b/taiga/importers/templates/emails/asana_import_success-body-text.jinja @@ -0,0 +1,12 @@ +{% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +Hello {{ user }}, + +Your Asana project has been correctly imported. + +You can see the project {{ project }} here: + +{{ url }} + +--- +The Taiga Team +{% endtrans %} diff --git a/taiga/importers/templates/emails/asana_import_success-subject.jinja b/taiga/importers/templates/emails/asana_import_success-subject.jinja new file mode 100644 index 00000000..57f7766a --- /dev/null +++ b/taiga/importers/templates/emails/asana_import_success-subject.jinja @@ -0,0 +1 @@ +{% trans project=project.name|safe %}[{{ project }}] Your Asana project has been imported{% endtrans %} diff --git a/taiga/importers/templates/emails/github_import_success-body-html.jinja b/taiga/importers/templates/emails/github_import_success-body-html.jinja new file mode 100644 index 00000000..ad2b7e8e --- /dev/null +++ b/taiga/importers/templates/emails/github_import_success-body-html.jinja @@ -0,0 +1,11 @@ +{% extends "emails/base-body-html.jinja" %} + +{% block body %} + {% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +

Github Project imported

+

Hello {{ user }},

+

Your Github project has been correctly imported.

+ Go to {{ project }} +

The Taiga Team

+ {% endtrans %} +{% endblock %} diff --git a/taiga/importers/templates/emails/github_import_success-body-text.jinja b/taiga/importers/templates/emails/github_import_success-body-text.jinja new file mode 100644 index 00000000..0b176e58 --- /dev/null +++ b/taiga/importers/templates/emails/github_import_success-body-text.jinja @@ -0,0 +1,12 @@ +{% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +Hello {{ user }}, + +Your Github project has been correctly imported. + +You can see the project {{ project }} here: + +{{ url }} + +--- +The Taiga Team +{% endtrans %} diff --git a/taiga/importers/templates/emails/github_import_success-subject.jinja b/taiga/importers/templates/emails/github_import_success-subject.jinja new file mode 100644 index 00000000..cb730163 --- /dev/null +++ b/taiga/importers/templates/emails/github_import_success-subject.jinja @@ -0,0 +1 @@ +{% trans project=project.name|safe %}[{{ project }}] Your Github project has been imported{% endtrans %} diff --git a/taiga/importers/templates/emails/importer_import_error-body-html.jinja b/taiga/importers/templates/emails/importer_import_error-body-html.jinja new file mode 100644 index 00000000..52afe388 --- /dev/null +++ b/taiga/importers/templates/emails/importer_import_error-body-html.jinja @@ -0,0 +1,12 @@ +{% extends "emails/base-body-html.jinja" %} + +{% block body %} + {% trans user=user.get_full_name(), error_message=error_message, support_email=sr("support.email") %} +

{{ error_message }}

+

Hello {{ user }},

+

Your project has not been importer correctly.

+

The Taiga system administrators have been informed.
Please, try it again or contact with the support team at + {{ support_email }}

+

The Taiga Team

+ {% endtrans %} +{% endblock %} diff --git a/taiga/importers/templates/emails/importer_import_error-body-text.jinja b/taiga/importers/templates/emails/importer_import_error-body-text.jinja new file mode 100644 index 00000000..7a9d782e --- /dev/null +++ b/taiga/importers/templates/emails/importer_import_error-body-text.jinja @@ -0,0 +1,14 @@ +{% trans user=user.get_full_name(), error_message=error_message, support_email=sr("support.email") %} +Hello {{ user }}, + +{{ error_message }} + +Your project has not been importer correctly. + +The Taiga system administrators have been informed. + +Please, try it again or contact with the support team at {{ support_email }} + +--- +The Taiga Team +{% endtrans %} diff --git a/taiga/importers/templates/emails/importer_import_error-subject.jinja b/taiga/importers/templates/emails/importer_import_error-subject.jinja new file mode 100644 index 00000000..329983d4 --- /dev/null +++ b/taiga/importers/templates/emails/importer_import_error-subject.jinja @@ -0,0 +1 @@ +{% trans error_subject=error_subject|safe %}[Taiga] {{ error_subject }}{% endtrans %} diff --git a/taiga/importers/templates/emails/jira_import_success-body-html.jinja b/taiga/importers/templates/emails/jira_import_success-body-html.jinja new file mode 100644 index 00000000..51da9de9 --- /dev/null +++ b/taiga/importers/templates/emails/jira_import_success-body-html.jinja @@ -0,0 +1,11 @@ +{% extends "emails/base-body-html.jinja" %} + +{% block body %} + {% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +

Jira Project imported

+

Hello {{ user }},

+

Your Jira project has been correctly imported.

+ Go to {{ project }} +

The Taiga Team

+ {% endtrans %} +{% endblock %} diff --git a/taiga/importers/templates/emails/jira_import_success-body-text.jinja b/taiga/importers/templates/emails/jira_import_success-body-text.jinja new file mode 100644 index 00000000..b2b04ffe --- /dev/null +++ b/taiga/importers/templates/emails/jira_import_success-body-text.jinja @@ -0,0 +1,12 @@ +{% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +Hello {{ user }}, + +Your Jira project has been correctly imported. + +You can see the project {{ project }} here: + +{{ url }} + +--- +The Taiga Team +{% endtrans %} diff --git a/taiga/importers/templates/emails/jira_import_success-subject.jinja b/taiga/importers/templates/emails/jira_import_success-subject.jinja new file mode 100644 index 00000000..406abc00 --- /dev/null +++ b/taiga/importers/templates/emails/jira_import_success-subject.jinja @@ -0,0 +1 @@ +{% trans project=project.name|safe %}[{{ project }}] Your Jira project has been imported{% endtrans %} diff --git a/taiga/importers/templates/emails/trello_import_success-body-html.jinja b/taiga/importers/templates/emails/trello_import_success-body-html.jinja new file mode 100644 index 00000000..d154666b --- /dev/null +++ b/taiga/importers/templates/emails/trello_import_success-body-html.jinja @@ -0,0 +1,11 @@ +{% extends "emails/base-body-html.jinja" %} + +{% block body %} + {% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +

Trello Project imported

+

Hello {{ user }},

+

Your Trello project has been correctly imported.

+ Go to {{ project }} +

The Taiga Team

+ {% endtrans %} +{% endblock %} diff --git a/taiga/importers/templates/emails/trello_import_success-body-text.jinja b/taiga/importers/templates/emails/trello_import_success-body-text.jinja new file mode 100644 index 00000000..9faf38b6 --- /dev/null +++ b/taiga/importers/templates/emails/trello_import_success-body-text.jinja @@ -0,0 +1,12 @@ +{% trans user=user.get_full_name(), url=resolve_front_url("project", project.slug), project=project.name %} +Hello {{ user }}, + +Your Trello project has been correctly imported. + +You can see the project {{ project }} here: + +{{ url }} + +--- +The Taiga Team +{% endtrans %} diff --git a/taiga/importers/templates/emails/trello_import_success-subject.jinja b/taiga/importers/templates/emails/trello_import_success-subject.jinja new file mode 100644 index 00000000..2e86948c --- /dev/null +++ b/taiga/importers/templates/emails/trello_import_success-subject.jinja @@ -0,0 +1 @@ +{% trans project=project.name|safe %}[{{ project }}] Your Trello project has been imported{% endtrans %} diff --git a/taiga/importers/trello/tasks.py b/taiga/importers/trello/tasks.py index 0d710f46..f93f7441 100644 --- a/taiga/importers/trello/tasks.py +++ b/taiga/importers/trello/tasks.py @@ -31,7 +31,7 @@ logger = logging.getLogger('taiga.importers.trello') @app.task(bind=True) def import_project(self, user_id, token, project_id, options): - user = User.object.get(id=user_id) + user = User.objects.get(id=user_id) importer = TrelloImporter(user, token) try: project = importer.import_project(project_id, options) @@ -44,7 +44,7 @@ def import_project(self, user_id, token, project_id, options): "project": project_id, "exception": e } - email = mail_builder.trello_import_error(admin, ctx) + email = mail_builder.importer_import_error(admin, ctx) email.send() logger.error('Error importing Trello project %s (by %s)', project_id, user, exc_info=sys.exc_info()) else: