diff --git a/xmlrpc/README.txt b/xmlrpc/README.txt index 6e28a9b..ace0bfd 100755 --- a/xmlrpc/README.txt +++ b/xmlrpc/README.txt @@ -149,6 +149,8 @@ Updating the concept map >>> zope3Id = xrf.getObjectByName('zope3')['id'] >>> xrf.assignChild(zopeId, zope3Id, defaultPred['id']) 'OK' + >>> xrf.deassignChild(zopeId, zope3Id, defaultPred['id']) + 'OK' Fin de partie diff --git a/xmlrpc/common.py b/xmlrpc/common.py index ddb224f..08e2e0c 100644 --- a/xmlrpc/common.py +++ b/xmlrpc/common.py @@ -100,6 +100,13 @@ class LoopsMethods(MethodPublisher): obj.assignChild(child, pred) return 'OK' + def deassignChild(self, objId, predicateId, childId): + obj = getObjectForUid(objId) + pred = getObjectForUid(predicateId) + child = getObjectForUid(childId) + obj.deassignChild(child, [pred]) + return 'OK' + def objectAsDict(obj): mapping = {'id': getUidForObject(obj), 'name': getName(obj), 'title': obj.title, diff --git a/xmlrpc/configure.zcml b/xmlrpc/configure.zcml index a452806..3fc2e6f 100644 --- a/xmlrpc/configure.zcml +++ b/xmlrpc/configure.zcml @@ -26,7 +26,7 @@ getDefaultPredicate getTypePredicate getTypeConcept getConceptTypes getPredicates getChildren getParents - assignChild" + assignChild deassignChild" permission="loops.xmlrpc.ManageConcepts" />