abolish default owner
Default owner has lead to mistakingly taking ownership of items while inventorying, abrading the field's value. Closes #29
This commit is contained in:
@@ -99,16 +99,6 @@ def setup_user_select(select_field, name_fields):
|
||||
for name_field in name_fields:
|
||||
name_field.data = value
|
||||
|
||||
def setup_default_owner(select_field):
|
||||
user = read_user()
|
||||
c = select_field.choices
|
||||
d = [i for i in c if i[0] == (user and user.get("username") or "k-space")]
|
||||
if len(d) < 1:
|
||||
return
|
||||
dv = d[0] or None
|
||||
select_field.default = dv[0]
|
||||
select_field.process([])
|
||||
|
||||
def member_select_coerce(x):
|
||||
x = str(x)
|
||||
if x and x != "None":
|
||||
@@ -148,9 +138,6 @@ class InventoryItemForm(CustomForm):
|
||||
hardware = FormField(HardwareForm)
|
||||
shortener = FormField(ShortenerForm)
|
||||
location = StringField('Location')
|
||||
def setup_defaults_add(self):
|
||||
setup_default_owner(self.inventory.form.owner.form.username)
|
||||
|
||||
|
||||
def check_edit_permission(item_id):
|
||||
if not item_id:
|
||||
@@ -181,11 +168,12 @@ def check_edit_permission(item_id):
|
||||
@login_required
|
||||
def view_inventory_edit(item_id=None, slug=None, clone_item_id=None):
|
||||
user = read_user()
|
||||
has_edit_all = user and "k-space:inventory:edit" in user.get("groups", [])
|
||||
|
||||
item = None
|
||||
if item_id:
|
||||
if not check_edit_permission(item_id):
|
||||
return abort(403)
|
||||
|
||||
item = db.inventory.find_one({ "_id": ObjectId(item_id) })
|
||||
form = InventoryItemForm(**item)
|
||||
elif clone_item_id:
|
||||
@@ -198,13 +186,17 @@ def view_inventory_edit(item_id=None, slug=None, clone_item_id=None):
|
||||
form = InventoryItemForm(**item)
|
||||
else:
|
||||
form = InventoryItemForm()
|
||||
form.setup_defaults_add()
|
||||
|
||||
# prefill
|
||||
if slug:
|
||||
form.shortener.slug.data = slug
|
||||
|
||||
all_tags = db.inventory.distinct("tags")
|
||||
item_tags = []
|
||||
if item and item.get("tags"):
|
||||
item_tags = item["tags"]
|
||||
has_edit_all = user and "k-space:inventory:edit" in user.get("groups", [])
|
||||
|
||||
return render_template("inventory_edit.html", **locals())
|
||||
|
||||
@page_inventory.route("/m/inventory/<item_id>/edit", methods=['POST'])
|
||||
|
Reference in New Issue
Block a user