Skip to content
Snippets Groups Projects
Commit b0cb6afe authored by Arno Wunderlich's avatar Arno Wunderlich
Browse files

use reference currency in notifications

parent 6b017c3f
Branches main
No related tags found
1 merge request!63Small fixes 2002
Pipeline #16026 passed
......@@ -84,20 +84,14 @@ def get_item_price(item: Item) -> int:
def check_auction_ends():
"""
Check if all previously not processed auctions have ended now
Get all closed items, check if they belong to the current user and inform about
the ending of the auction.
Then process all bids on these items and check if they won
Get all closed items, process all bids on these items and check if they won
Then check if current_user needs to be informed
"""
items = Item.objects.filter(Q(closes_at=datetime.utcnow()) & Q(closed_processed=False)) \
items = Item.objects.filter(Q(closes_at__lte=datetime.utcnow()) & Q(closed_processed=False)) \
.order_by('-closes_at')
for item in items:
item.update(closed_processed = True)
message = None
if item.seller == current_user:
message = "The auction of your item \'{}\' has ended. ".format(item.title)
item.update(seller_informed_about_result = True)
# Get (potential) bids for the item and process them
bids = Bid.objects(item=item).order_by('-amount')
......@@ -111,19 +105,24 @@ def check_auction_ends():
bid.update(winning_bid = False)
bid.update(auction_end_processed = True)
# Inform seller if this is current user
if item.seller == current_user:
message += "Congrats! It was sold for {}.".format(bids[0].amount)
# Inform current user if no one bid on the item
else:
if item.seller == current_user:
message += "No one bid on your item. Try again!"
# Inform current user about results of his auctions
items_closed = Item.objects.filter(Q(closed_processed=True) & Q(seller_informed_about_result=False) \
& Q(seller=current_user))
message = None
for item in items_closed:
# Get (potential) bids for the item and process them
message = "The auction of your item \'{}\' has ended. ".format(item.title)
bids = Bid.objects(item=item).order_by('-amount')
if len(bids) >= 1:
message += "Congrats! It was sold for {}.".format(bids[0].amount)
else:
message += "No one bid on your item. Try again!"
item.update(seller_informed_about_result = True)
#Display message if not None
if message is not None:
flash((message))
def check_bids_ended():
"""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment