Make Message's display_recipient field be an object with consistent names for both personals and huddles.

(imported from commit 8b00f16b036ed3fb3f7d56e7393271ec1d458ea5)
This commit is contained in:
Zev Benjamin
2012-10-12 10:47:01 -04:00
parent 2f1d68e09a
commit c4d35280ea
4 changed files with 14 additions and 11 deletions

View File

@@ -261,7 +261,7 @@ def forward_to_zephyr(message):
zeph.send()
elif message['type'] == "personal":
zeph = zephyr.ZNotice(sender=message["sender_email"].replace("mit.edu", "ATHENA.MIT.EDU"),
auth=True, recipient=message["display_recipient"].replace("mit.edu", "ATHENA.MIT.EDU"),
auth=True, recipient=message["display_recipient"]["email"].replace("mit.edu", "ATHENA.MIT.EDU"),
cls="message", instance="personal")
body = "%s\0%s" % (zsig, wrapped_content)
zeph.setmessage(body)

View File

@@ -30,10 +30,13 @@ def get_display_recipient(recipient):
user_profile_list = [UserProfile.objects.get(user=s.userprofile) for s in
Subscription.objects.filter(recipient=recipient)]
return [{'email': user_profile.user.email,
'name': user_profile.short_name} for user_profile in user_profile_list]
'full_name': user_profile.full_name,
'short_name': user_profile.short_name} for user_profile in user_profile_list]
else:
user = User.objects.get(id=recipient.type_id)
return user.email
user_profile = UserProfile.objects.get(user=recipient.type_id)
return {'email': user_profile.user.email,
'full_name': user_profile.full_name,
'short_name': user_profile.short_name}
def get_log_recipient(recipient):
"""

View File

@@ -44,16 +44,16 @@ function narrow_personals() {
// Narrow to personals with a specific user
var original = message_dict[selected_message_id];
var other_party;
if (original.display_recipient === email) {
if (original.display_recipient.email === email) {
other_party = original.sender_email;
} else {
other_party = original.display_recipient;
other_party = original.display_recipient.email;
}
do_narrow("Huddles with " + other_party, function (other) {
return (other.type === 'personal') &&
(((other.display_recipient === original.display_recipient) && (other.sender_email === original.sender_email)) ||
((other.display_recipient === original.sender_email) && (other.sender_email === original.display_recipient)));
(((other.display_recipient.email === original.display_recipient.email) && (other.sender_email === original.sender_email)) ||
((other.display_recipient.email === original.sender_email) && (other.sender_email === original.display_recipient.email)));
});
}

View File

@@ -106,9 +106,9 @@ function get_huddle_recipient(message) {
function get_huddle_recipient_names(message) {
var recipient, i;
recipient = message.display_recipient[0].name;
recipient = message.display_recipient[0].short_name;
for (i = 1; i < message.display_recipient.length; i++) {
recipient += ', ' + message.display_recipient[i].name;
recipient += ', ' + message.display_recipient[i].short_name;
}
return recipient;
}
@@ -383,7 +383,7 @@ function add_message_metadata(dummy, message) {
message.is_personal = true;
if (message.sender_email === email) { // that is, we sent the original message
message.reply_to = message.display_recipient;
message.reply_to = message.display_recipient.email;
} else {
message.reply_to = message.sender_email;
}