Skip to content

Commit 21b2e20

Browse files
Temporary fix for gifts
1 parent 4a8242b commit 21b2e20

2 files changed

Lines changed: 18 additions & 2 deletions

File tree

pyrogram/methods/payments/set_gift_resale_price.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ async def set_gift_resale_price(
7474
await self.invoke(
7575
raw.functions.payments.UpdateStarGiftPrice(
7676
stargift=stargift,
77-
resell_stars=resale_star_count
77+
resell_amount=raw.types.StarsAmount(amount=resale_star_count, nanos=0)
7878
)
7979
)
8080

pyrogram/types/messages_and_media/gift.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,9 @@ class Gift(Object):
104104
last_resale_price (``int``, *optional*):
105105
Number of Telegram Stars that were paid by the sender for the gift; 0 if the gift was upgraded or transferred.
106106
107+
last_ton_resale_price (``int``, *optional*):
108+
Number of TON that were paid by the sender for the gift.
109+
107110
number (``int``, *optional*):
108111
Unique number of the upgraded gift among gifts upgraded from the same gift.
109112
@@ -193,6 +196,7 @@ def __init__(
193196
transfer_price: Optional[int] = None,
194197
resale_price: Optional[int] = None,
195198
last_resale_price: Optional[int] = None,
199+
last_ton_resale_price: Optional[int] = None,
196200
upgrade_message_id: Optional[int] = None,
197201
name: Optional[str] = None,
198202
title: Optional[str] = None,
@@ -239,6 +243,7 @@ def __init__(
239243
self.transfer_price = transfer_price
240244
self.resale_price = resale_price
241245
self.last_resale_price = last_resale_price
246+
self.last_ton_resale_price = last_ton_resale_price
242247
self.upgrade_message_id = upgrade_message_id
243248
self.name = name
244249
self.title = title
@@ -316,6 +321,16 @@ async def _parse_unique(
316321

317322
owner_id = utils.get_raw_peer_id(star_gift.owner_id)
318323

324+
last_resale_price = None
325+
last_ton_resale_price = None
326+
327+
if star_gift.resell_amount:
328+
for currency in star_gift.resell_amount:
329+
if isinstance(currency, raw.types.StarsAmount):
330+
last_resale_price = currency.amount
331+
elif isinstance(currency, raw.types.StarsTonAmount):
332+
last_ton_resale_price = currency.amount
333+
319334
return Gift(
320335
id=star_gift.id,
321336
name=star_gift.slug,
@@ -330,7 +345,8 @@ async def _parse_unique(
330345
owner_name=star_gift.owner_name,
331346
owner_address=star_gift.owner_address,
332347
gift_address=star_gift.gift_address,
333-
last_resale_price=star_gift.resell_stars,
348+
last_resale_price=last_resale_price,
349+
last_ton_resale_price=last_ton_resale_price,
334350
is_upgraded=True,
335351
raw=star_gift,
336352
client=client

0 commit comments

Comments
 (0)