diff --git a/inventory-app/inventory.py b/inventory-app/inventory.py index 37d0d16..861cc39 100644 --- a/inventory-app/inventory.py +++ b/inventory-app/inventory.py @@ -422,15 +422,26 @@ def view_inventory_audit(item_id): @login_required def view_inventory_claim(item_id): user = read_user() - db.inventory.update_one({ + item = db.inventory.find_one({ "_id": ObjectId(item_id), "inventory.owner.username": None + }) + if not item: + return abort(404) + + db.inventory.update_one({ + "_id": ObjectId(item["_id"]) }, { "$set": { "inventory.owner.username": user["username"], "inventory.owner.display_name": user["name"], }, }) + item_name = format_name(item) + msg = "%s has claimed %s" % (user["name"], item_name) + if item.get("shortener") and item["shortener"].get("slug"): + msg += ("\nk6.ee/%s" % item["shortener"]["slug"]) + spam(msg, channel) return redirect("/m/inventory/%s/view" % item_id)