| 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 } |