| 497 gsize thumb_size; |
497 gsize thumb_size; |
| 498 |
498 |
| 499 /* If we have already accepted the request, ask the destination file |
499 /* If we have already accepted the request, ask the destination file |
| 500 name directly */ |
500 name directly */ |
| 501 if (purple_xfer_get_status(xfer) != PURPLE_XFER_STATUS_ACCEPTED) { |
501 if (purple_xfer_get_status(xfer) != PURPLE_XFER_STATUS_ACCEPTED) { |
| 502 PurpleBuddy *buddy = purple_find_buddy(xfer->account, xfer->who); |
502 PurpleBuddy *buddy = purple_blist_find_buddy(xfer->account, xfer->who); |
| 503 |
503 |
| 504 if (purple_xfer_get_filename(xfer) != NULL) |
504 if (purple_xfer_get_filename(xfer) != NULL) |
| 505 { |
505 { |
| 506 size = purple_xfer_get_size(xfer); |
506 size = purple_xfer_get_size(xfer); |
| 507 size_buf = purple_str_size_to_units(size); |
507 size_buf = purple_str_size_to_units(size); |
| 557 |
557 |
| 558 static void |
558 static void |
| 559 purple_xfer_ask_accept(PurpleXfer *xfer) |
559 purple_xfer_ask_accept(PurpleXfer *xfer) |
| 560 { |
560 { |
| 561 char *buf, *buf2 = NULL; |
561 char *buf, *buf2 = NULL; |
| 562 PurpleBuddy *buddy = purple_find_buddy(xfer->account, xfer->who); |
562 PurpleBuddy *buddy = purple_blist_find_buddy(xfer->account, xfer->who); |
| 563 |
563 |
| 564 buf = g_strdup_printf(_("Accept file transfer request from %s?"), |
564 buf = g_strdup_printf(_("Accept file transfer request from %s?"), |
| 565 buddy ? purple_buddy_get_alias(buddy) : xfer->who); |
565 buddy ? purple_buddy_get_alias(buddy) : xfer->who); |
| 566 if (purple_xfer_get_remote_ip(xfer) && |
566 if (purple_xfer_get_remote_ip(xfer) && |
| 567 purple_xfer_get_remote_port(xfer)) |
567 purple_xfer_get_remote_port(xfer)) |
| 597 } |
597 } |
| 598 else if (purple_xfer_get_filename(xfer) || |
598 else if (purple_xfer_get_filename(xfer) || |
| 599 purple_xfer_get_status(xfer) == PURPLE_XFER_STATUS_ACCEPTED) |
599 purple_xfer_get_status(xfer) == PURPLE_XFER_STATUS_ACCEPTED) |
| 600 { |
600 { |
| 601 gchar* message = NULL; |
601 gchar* message = NULL; |
| 602 PurpleBuddy *buddy = purple_find_buddy(xfer->account, xfer->who); |
602 PurpleBuddy *buddy = purple_blist_find_buddy(xfer->account, xfer->who); |
| 603 |
603 |
| 604 message = g_strdup_printf(_("%s is offering to send file %s"), |
604 message = g_strdup_printf(_("%s is offering to send file %s"), |
| 605 buddy ? purple_buddy_get_alias(buddy) : xfer->who, purple_xfer_get_filename(xfer)); |
605 buddy ? purple_buddy_get_alias(buddy) : xfer->who, purple_xfer_get_filename(xfer)); |
| 606 purple_xfer_conversation_write_with_thumbnail(xfer, message); |
606 purple_xfer_conversation_write_with_thumbnail(xfer, message); |
| 607 g_free(message); |
607 g_free(message); |
| 642 xfer->status = PURPLE_XFER_STATUS_ACCEPTED; |
642 xfer->status = PURPLE_XFER_STATUS_ACCEPTED; |
| 643 xfer->ops.init(xfer); |
643 xfer->ops.init(xfer); |
| 644 return; |
644 return; |
| 645 } |
645 } |
| 646 |
646 |
| 647 buddy = purple_find_buddy(account, xfer->who); |
647 buddy = purple_blist_find_buddy(account, xfer->who); |
| 648 |
648 |
| 649 if (type == PURPLE_XFER_SEND) { |
649 if (type == PURPLE_XFER_SEND) { |
| 650 /* Sending a file */ |
650 /* Sending a file */ |
| 651 /* Check the filename. */ |
651 /* Check the filename. */ |
| 652 PurpleXferUiOps *ui_ops; |
652 PurpleXferUiOps *ui_ops; |
| 1596 purple_request_close_with_handle(xfer); |
1596 purple_request_close_with_handle(xfer); |
| 1597 purple_xfer_set_status(xfer, PURPLE_XFER_STATUS_CANCEL_REMOTE); |
1597 purple_xfer_set_status(xfer, PURPLE_XFER_STATUS_CANCEL_REMOTE); |
| 1598 xfer->end_time = time(NULL); |
1598 xfer->end_time = time(NULL); |
| 1599 |
1599 |
| 1600 account = purple_xfer_get_account(xfer); |
1600 account = purple_xfer_get_account(xfer); |
| 1601 buddy = purple_find_buddy(account, xfer->who); |
1601 buddy = purple_blist_find_buddy(account, xfer->who); |
| 1602 |
1602 |
| 1603 if (purple_xfer_get_filename(xfer) != NULL) |
1603 if (purple_xfer_get_filename(xfer) != NULL) |
| 1604 { |
1604 { |
| 1605 msg = g_strdup_printf(_("%s cancelled the transfer of %s"), |
1605 msg = g_strdup_printf(_("%s cancelled the transfer of %s"), |
| 1606 buddy ? purple_buddy_get_alias(buddy) : xfer->who, purple_xfer_get_filename(xfer)); |
1606 buddy ? purple_buddy_get_alias(buddy) : xfer->who, purple_xfer_get_filename(xfer)); |
| 1656 g_return_if_fail(msg != NULL); |
1656 g_return_if_fail(msg != NULL); |
| 1657 g_return_if_fail(type != PURPLE_XFER_UNKNOWN); |
1657 g_return_if_fail(type != PURPLE_XFER_UNKNOWN); |
| 1658 |
1658 |
| 1659 if (account) { |
1659 if (account) { |
| 1660 PurpleBuddy *buddy; |
1660 PurpleBuddy *buddy; |
| 1661 buddy = purple_find_buddy(account, who); |
1661 buddy = purple_blist_find_buddy(account, who); |
| 1662 if (buddy) |
1662 if (buddy) |
| 1663 who = purple_buddy_get_alias(buddy); |
1663 who = purple_buddy_get_alias(buddy); |
| 1664 } |
1664 } |
| 1665 |
1665 |
| 1666 if (type == PURPLE_XFER_SEND) |
1666 if (type == PURPLE_XFER_SEND) |