瀏覽代碼

Add custom Radicale DAV property getcontentcount

This adds a custom Radicale DAV property called 'getcontentcount' which returns the number of entries contained within that collection.
MatthewHana 1 年之前
父節點
當前提交
5ec9aaec07
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      radicale/app/propfind.py

+ 6 - 0
radicale/app/propfind.py

@@ -272,6 +272,12 @@ def xml_propfind_response(
                     element.text = displayname
                 else:
                     is404 = True
+            elif tag == xmlutils.make_clark("RADICALE:getcontentcount"):
+                # Only for internal use by the web interface
+                if is_collection or is_leaf:
+                    element.text = str(sum(1 for entry in item.get_all()))
+                else:
+                    is404 = True
             elif tag == xmlutils.make_clark("D:displayname"):
                 displayname = collection.get_meta("D:displayname")
                 if not displayname and is_leaf: