Explorar o código

Fix: set PRODID on collection upload

Peter Bieringer hai 1 ano
pai
achega
f1d007a51e
Modificáronse 1 ficheiros con 4 adicións e 1 borrados
  1. 4 1
      radicale/app/put.py

+ 4 - 1
radicale/app/put.py

@@ -29,7 +29,7 @@ from typing import Iterator, List, Mapping, MutableMapping, Optional, Tuple
 import vobject
 
 import radicale.item as radicale_item
-from radicale import httputils, pathutils, rights, storage, types, xmlutils
+from radicale import httputils, pathutils, rights, storage, types, xmlutils, utils
 from radicale.app.base import Access, ApplicationBase
 from radicale.hook import HookNotificationItem, HookNotificationItemTypes
 from radicale.log import logger
@@ -37,6 +37,8 @@ from radicale.log import logger
 MIMETYPE_TAGS: Mapping[str, str] = {value: key for key, value in
                                     xmlutils.MIMETYPES.items()}
 
+PRODID = u"-//Radicale//NONSGML Version " + utils.package_version("radicale") + "//EN"
+
 
 def prepare(vobject_items: List[vobject.base.Component], path: str,
             content_type: str, permission: bool, parent_permission: bool,
@@ -80,6 +82,7 @@ def prepare(vobject_items: List[vobject.base.Component], path: str,
                     vobject_collection = vobject.iCalendar()
                     for component in components:
                         vobject_collection.add(component)
+                    vobject_collection.add(vobject.base.ContentLine("PRODID", [], PRODID))
                     item = radicale_item.Item(collection_path=collection_path,
                                               vobject_item=vobject_collection)
                     item.prepare()