mirror of
https://github.com/simple-login/app.git
synced 2024-09-28 04:41:28 +02:00
Add reverse_alias to GET /api/aliases/:alias_id/activities
This commit is contained in:
parent
1c5d6e3299
commit
4d8040c80d
@ -951,13 +951,15 @@ If success, 200 with the list of activities, for example:
|
||||
"action": "reply",
|
||||
"from": "yes_meo_chat@sl.local",
|
||||
"timestamp": 1580903760,
|
||||
"to": "marketing@example.com"
|
||||
"to": "marketing@example.com",
|
||||
"reverse_alias": "\"marketing at example.com\" <reply@a.b>",
|
||||
},
|
||||
{
|
||||
"action": "reply",
|
||||
"from": "yes_meo_chat@sl.local",
|
||||
"timestamp": 1580903760,
|
||||
"to": "marketing@example.com"
|
||||
"to": "marketing@example.com",
|
||||
"reverse_alias": "\"marketing at example.com\" <reply@a.b>",
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -142,6 +142,7 @@ def get_alias_activities(alias_id):
|
||||
- to
|
||||
- timestamp
|
||||
- action: forward|reply|block
|
||||
- reverse_alias
|
||||
|
||||
"""
|
||||
user = g.user
|
||||
@ -159,7 +160,10 @@ def get_alias_activities(alias_id):
|
||||
|
||||
activities = []
|
||||
for alias_log in alias_logs:
|
||||
activity = {"timestamp": alias_log.when.timestamp}
|
||||
activity = {
|
||||
"timestamp": alias_log.when.timestamp,
|
||||
"reverse_alias": alias_log.reverse_alias,
|
||||
}
|
||||
if alias_log.is_reply:
|
||||
activity["from"] = alias_log.alias
|
||||
activity["to"] = alias_log.website_from or alias_log.website_email
|
||||
|
@ -11,6 +11,7 @@ from app.models import Alias, EmailLog, Contact
|
||||
class AliasLog:
|
||||
website_email: str
|
||||
website_from: str
|
||||
reverse_alias: str
|
||||
alias: str
|
||||
when: arrow.Arrow
|
||||
is_reply: bool
|
||||
@ -78,6 +79,7 @@ def get_alias_log(alias: Alias, page_id=0):
|
||||
al = AliasLog(
|
||||
website_email=contact.website_email,
|
||||
website_from=contact.website_from,
|
||||
reverse_alias=contact.website_send_to(),
|
||||
alias=alias.email,
|
||||
when=email_log.created_at,
|
||||
is_reply=email_log.is_reply,
|
||||
|
@ -1,11 +1,10 @@
|
||||
import json
|
||||
from flask import url_for
|
||||
|
||||
from flask import url_for
|
||||
|
||||
from app.config import EMAIL_DOMAIN, MAX_NB_EMAIL_FREE_PLAN, PAGE_LIMIT
|
||||
from app.config import PAGE_LIMIT
|
||||
from app.extensions import db
|
||||
from app.models import User, ApiKey, Alias, Contact, EmailLog
|
||||
from app.utils import random_word
|
||||
|
||||
|
||||
def test_get_aliases_error_without_pagination(flask_client):
|
||||
@ -182,10 +181,11 @@ def test_alias_activities(flask_client):
|
||||
assert r.status_code == 200
|
||||
assert len(r.json["activities"]) == PAGE_LIMIT
|
||||
for ac in r.json["activities"]:
|
||||
assert ac["action"]
|
||||
assert ac["from"]
|
||||
assert ac["to"]
|
||||
assert ac["timestamp"]
|
||||
assert ac["action"]
|
||||
assert ac["action"]
|
||||
assert ac["reverse_alias"]
|
||||
|
||||
# second page, should return 1 or 2 results only
|
||||
r = flask_client.get(
|
||||
|
Loading…
Reference in New Issue
Block a user