libpurple/purplenotification.c

changeset 42914
27c407608b6b
parent 42909
440ed16de928
child 42922
46b64a8cbec4
equal deleted inserted replaced
42913:3da85f0c0ee6 42914:27c407608b6b
503 503
504 PurpleNotification * 504 PurpleNotification *
505 purple_notification_new_from_add_contact_request(PurpleAddContactRequest *request) 505 purple_notification_new_from_add_contact_request(PurpleAddContactRequest *request)
506 { 506 {
507 PurpleAccount *account = NULL; 507 PurpleAccount *account = NULL;
508 PurpleContact *remote = NULL;
509 PurpleContactInfo *info = NULL;
508 PurpleNotification *notification = NULL; 510 PurpleNotification *notification = NULL;
509 char *title = NULL; 511 char *title = NULL;
510 const char *alias = NULL;
511 const char *username = NULL;
512 512
513 g_return_val_if_fail(PURPLE_IS_ADD_CONTACT_REQUEST(request), NULL); 513 g_return_val_if_fail(PURPLE_IS_ADD_CONTACT_REQUEST(request), NULL);
514 514
515 account = purple_add_contact_request_get_account(request); 515 remote = purple_add_contact_request_get_contact(request);
516 account = purple_contact_get_account(remote);
517 info = purple_account_get_contact_info(account);
518
516 notification = purple_notification_new(PURPLE_NOTIFICATION_TYPE_ADD_CONTACT, 519 notification = purple_notification_new(PURPLE_NOTIFICATION_TYPE_ADD_CONTACT,
517 account, request, g_object_unref); 520 account, request, g_object_unref);
518 521
519 username = purple_add_contact_request_get_username(request); 522 title = g_strdup_printf(_("%s added %s to their contact_list"),
520 alias = purple_add_contact_request_get_alias(request); 523 purple_contact_info_get_name_for_display(PURPLE_CONTACT_INFO(remote)),
521 524 purple_contact_info_get_name_for_display(info));
522 if(alias != NULL && *alias != '\0') {
523 title = g_strdup_printf(_("%s (%s) added %s to their contact list"),
524 alias, username,
525 purple_account_get_username(account));
526 } else {
527 title = g_strdup_printf(_("%s added %s to their contact list"),
528 username,
529 purple_account_get_username(account));
530 }
531
532 purple_notification_set_title(notification, title); 525 purple_notification_set_title(notification, title);
533 g_free(title); 526 g_free(title);
534 527
535 return notification; 528 return notification;
536 } 529 }

mercurial