Skip to content

Commit

Permalink
Merge pull request #5 from joshika39/fix/email-template-and-logo-fix
Browse files Browse the repository at this point in the history
Fix/email template and logo fix
  • Loading branch information
joshika39 authored Apr 20, 2024
2 parents e32985f + 5af6315 commit 20cea66
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 20 deletions.
3 changes: 0 additions & 3 deletions backend/email.html
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,6 @@
<!-- EMAIL_CONTENT -->
</div>

<div>
<!-- PS -->
</div>
<br><br>
<p>--</p>
<div>
Expand Down
14 changes: 11 additions & 3 deletions backend/sig-simple.html
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
<link rel="stylesheet" href="txt-styles.css" type="text/css">
<meta charset="UTF-8">
<div>
<p class="closing-word has-subtext">厚く御礼申し上げます。</p>
<p class="closing-word subtext">All the Best,</p>
Expand Down Expand Up @@ -27,14 +29,20 @@
</div>
</div>


<hr>

<p class="has-subtext"><a
href="{{ self_url }}/verify/email?email={{ email }}&ps_message={{ message }}&ps_signature={{ signature }}"
title="{{ verified_title }}">このメールはデジタル署名されました</a>
</p>
<p class="subtext"><a
<p class="subtext"><i>これを使ってメールを署名しました:
<b>{{ sig_message }}</b>
</i></p>

<p class="has-subtext"><a
href="{{ self_url }}/verify/email?email={{ email }}&ps_message={{ message }}&ps_signature={{ signature }}"
title="{{ verified_title }}">This email is digitally signed</a>
</p>
</p>
<p class="subtext"><i>This was used to sign the email:
<b>{{ sig_message }}</b>
</i></p>
21 changes: 8 additions & 13 deletions backend/signer.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ def clean_up_html(html_content):
print("Cleaning up HTML content...")
remove_strings = [
'<link rel="stylesheet" href="txt-styles.css">',
'<meta charset="utf-8">',
]
for remove_string in remove_strings:
html_content = html_content.replace(remove_string, "")
Expand Down Expand Up @@ -162,10 +163,6 @@ def obfuscate_email_in_str(data: str, email: str):
return data.replace(email, formatted_email)


def get_signature_ps_element(data: str, email: str):
return f'<p><i>This was used to sign the email: <u>{obfuscate_email_in_str(data, email)}</u></i></p>'


class EmailConfig:
def __init__(
self,
Expand Down Expand Up @@ -256,28 +253,27 @@ def inject_rsa_signature(self, funny_quote: str = ""):

if use_encryption:
mail_id = str(uuid4())
data = f"{self.__user.email} {datetime.datetime.now()} {funny_quote}"
end = f' {funny_quote}' if funny_quote else ''
data = f"{self.__user.email} {datetime.datetime.now()}{end}"
signature = self.__rsa.create_signed_message(data)
return {
'verified_title': signature,
'verified_href': mail_id,
'verified': '.verified',
'data': data
'sig_message': data,
}
else:
return {
'verified_title': '',
'verified_href': '',
'verified': '.not-verified',
'data': ''
}

def __generate_complex_signature(self, body: str) -> Signature:
verifications = self.inject_rsa_signature("I'm a developer.")
verifications = self.inject_rsa_signature()

obj = {
'EMAIL_CONTENT': body,
'PS': get_signature_ps_element(verifications['data'], self.__user.email)
}
all_fields = create_fields(self.__user.name, self.__user.email, self.__user.role)
all_fields.update(verifications)
Expand All @@ -289,14 +285,13 @@ def __generate_complex_signature(self, body: str) -> Signature:
return Signature(template, verifications['data'])

def __generate_simple_signature(self, body: str) -> Signature:
verifications = self.inject_rsa_signature("I'm a developer.")
verifications = self.inject_rsa_signature()
simple_template = os.path.join('backend', 'sig-simple.html')
with open(simple_template, 'r') as f:
simple_template_content = f.read()

email_structure = {
'EMAIL_CONTENT': body,
'PS': get_signature_ps_element(verifications['data'], self.__user.email),
'SIGNATURE': simple_template_content
}

Expand All @@ -306,7 +301,7 @@ def __generate_simple_signature(self, body: str) -> Signature:
"latin_name": self.__user.latin_name,
"latin_role": self.__user.latin_role,
'signature': verifications['verified_title'],
'message': verifications['data'],
'sig_message': verifications['sig_message'],
'self_url': self.__self_url
}
all_fields = create_fields(self.__user.name, self.__user.email, self.__user.role)
Expand All @@ -315,7 +310,7 @@ def __generate_simple_signature(self, body: str) -> Signature:
text_signature = fill_template_str(template, **all_fields)
text_signature = combine_template_with_styles(text_signature, [os.path.join('backend', 'txt-styles.css')])

return Signature(text_signature, verifications['data'])
return Signature(text_signature, verifications['sig_message'])

def send_email(self, email: EmailConfig) -> SignerResponse:
try:
Expand Down
6 changes: 5 additions & 1 deletion backend/txt-styles.css
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,11 @@ h1, h2, h3, h4, h5, h6 {

.logo {
display: block;
margin: 0 auto;
margin: 0;
}

.logo img {
width: 160px;
}

.visible-light {
Expand Down

0 comments on commit 20cea66

Please sign in to comment.