This commit is contained in:
		@@ -447,14 +447,29 @@ def view_inventory(slug=None):
 | 
				
			|||||||
@login_required(groups=["k-space:janitors"])
 | 
					@login_required(groups=["k-space:janitors"])
 | 
				
			||||||
def view_inventory_audit(item_id):
 | 
					def view_inventory_audit(item_id):
 | 
				
			||||||
    user = read_user()
 | 
					    user = read_user()
 | 
				
			||||||
    db.inventory.update_one({
 | 
					    item = db.inventory.find_one(filter = {
 | 
				
			||||||
        "_id": ObjectId(item_id),
 | 
					        "_id": ObjectId(item_id)
 | 
				
			||||||
    }, {
 | 
					    }, projection = {
 | 
				
			||||||
 | 
					        "inventory.audit": 1
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    q = {
 | 
				
			||||||
        "$set": {
 | 
					        "$set": {
 | 
				
			||||||
            "inventory.audit.username": user["username"],
 | 
					            "inventory.audit.username": user["username"],
 | 
				
			||||||
            "inventory.audit.timestamp": datetime.utcnow(),
 | 
					            "inventory.audit.timestamp": datetime.utcnow(),
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
    })
 | 
					    }
 | 
				
			||||||
 | 
					    if item["inventory"].get("audit"):
 | 
				
			||||||
 | 
					        q["$push"] = {
 | 
				
			||||||
 | 
					            "inventory.audit.log": {
 | 
				
			||||||
 | 
					                "username": item["inventory"]["audit"]["username"],
 | 
				
			||||||
 | 
					                "timestamp": item["inventory"]["audit"]["timestamp"],
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    db.inventory.update_one({
 | 
				
			||||||
 | 
					        "_id": ObjectId(item_id)
 | 
				
			||||||
 | 
					    }, q)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if request.form and request.form.get("noRedirect", False):
 | 
					    if request.form and request.form.get("noRedirect", False):
 | 
				
			||||||
        return {}
 | 
					        return {}
 | 
				
			||||||
    else:
 | 
					    else:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -65,13 +65,29 @@
 | 
				
			|||||||
        <td>{{ item.inventory.get("user").username | display_name }}</td>
 | 
					        <td>{{ item.inventory.get("user").username | display_name }}</td>
 | 
				
			||||||
      </tr>
 | 
					      </tr>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      {% macro auditLine(timestamp, user) -%}
 | 
				
			||||||
 | 
					          {{ timestamp | timeago }}
 | 
				
			||||||
 | 
					          by
 | 
				
			||||||
 | 
					          {{ user | display_name }}
 | 
				
			||||||
 | 
					      {%- endmacro %}
 | 
				
			||||||
      <tr>
 | 
					      <tr>
 | 
				
			||||||
        <td>Last audited</td>
 | 
					        <td>Last audited</td>
 | 
				
			||||||
        <td>
 | 
					        <td>
 | 
				
			||||||
          {% if item.inventory.get("audit") %}
 | 
					          {% if item.inventory.get("audit") %}
 | 
				
			||||||
            {{ item.inventory.audit.timestamp | timeago }}
 | 
					            {% if item.inventory.get("audit", {}).get("log") %}
 | 
				
			||||||
            by
 | 
					              <details>
 | 
				
			||||||
            {{ item.inventory.audit.username | display_name }}
 | 
					                <summary>
 | 
				
			||||||
 | 
					                  {{ auditLine(item.inventory.audit.timestamp, item.inventory.audit.username) }}
 | 
				
			||||||
 | 
					                </summary>
 | 
				
			||||||
 | 
					                  <ul class="browser-default">
 | 
				
			||||||
 | 
					                    {% for audit in item.inventory.audit.log | reverse %}
 | 
				
			||||||
 | 
					                      <li>{{ auditLine(audit.timestamp, audit.username) }}</li>
 | 
				
			||||||
 | 
					                    {% endfor %}
 | 
				
			||||||
 | 
					                  </ul>
 | 
				
			||||||
 | 
					              </details>
 | 
				
			||||||
 | 
					            {% else %}
 | 
				
			||||||
 | 
					              {{ auditLine(item.inventory.audit.timestamp, item.inventory.audit.username) }}
 | 
				
			||||||
 | 
					            {% endif %}
 | 
				
			||||||
          {% else %}
 | 
					          {% else %}
 | 
				
			||||||
            Never
 | 
					            Never
 | 
				
			||||||
          {% endif %}
 | 
					          {% endif %}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user