X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FMethods%2FDeletePerson.py;h=91267ca49e780ecde8c16fb78230398dab5b1bc4;hb=5d8a25ab329d0c44d34645b0ddeacba2f02331eb;hp=93ae8588013db19f8ad3c83935845f50f614a81e;hpb=dd6f6871abdf5412d908dc31777ce88b09192efe;p=plcapi.git diff --git a/PLC/Methods/DeletePerson.py b/PLC/Methods/DeletePerson.py index 93ae858..91267ca 100644 --- a/PLC/Methods/DeletePerson.py +++ b/PLC/Methods/DeletePerson.py @@ -1,3 +1,5 @@ +# $Id$ +# $URL$ from PLC.Faults import * from PLC.Method import Method from PLC.Parameter import Parameter, Mixed @@ -25,15 +27,15 @@ class DeletePerson(Method): returns = Parameter(int, '1 if successful') - def call(self, auth, person_id_or_email): # Get account information persons = Persons(self.api, [person_id_or_email]) if not persons: raise PLCInvalidArgument, "No such account" - person = persons[0] - PLCCheckLocalPerson(person,"DeletePerson") + + if person['peer_id'] is not None: + raise PLCInvalidArgument, "Not a local account" # Authenticated function assert self.caller is not None @@ -43,9 +45,9 @@ class DeletePerson(Method): raise PLCPermissionDenied, "Not allowed to delete specified account" person.delete() - - # Logging variables - self.object_ids = [person['person_id']] - self.message = 'Person %d deleted' % person['person_id'] + + # Logging variables + self.event_objects = {'Person': [person['person_id']]} + self.message = 'Person %d deleted' % person['person_id'] return 1