976 | | |
| 979 | |
| 980 | def deletePrinter(self, printer) : |
| 981 | """Completely deletes an user from the Quota Storage.""" |
| 982 | result = self.doSearch("(&(objectClass=pykotaLastJob)(pykotaPrinterName=%s))" % printer.Name, base=self.info["lastjobbase"]) |
| 983 | for (ident, fields) in result : |
| 984 | self.doDelete(ident) |
| 985 | result = self.doSearch("(&(objectClass=pykotaJob)(pykotaPrinterName=%s))" % printer.Name, base=self.info["jobbase"]) |
| 986 | for (ident, fields) in result : |
| 987 | self.doDelete(ident) |
| 988 | result = self.doSearch("(&(objectClass=pykotaGroupPQuota)(pykotaPrinterName=%s))" % printer.Name, base=self.info["groupquotabase"]) |
| 989 | for (ident, fields) in result : |
| 990 | self.doDelete(ident) |
| 991 | result = self.doSearch("(&(objectClass=pykotaUserPQuota)(pykotaPrinterName=%s))" % printer.Name, base=self.info["userquotabase"]) |
| 992 | for (ident, fields) in result : |
| 993 | self.doDelete(ident) |
| 994 | for parent in self.getParentPrinters(printer) : |
| 995 | parent.uniqueMember.remove(printer.ident) |
| 996 | fields = { |
| 997 | "uniqueMember" : parent.uniqueMember, |
| 998 | } |
| 999 | self.doModify(parent.ident, fields) |
| 1000 | self.doDelete(printer.ident) |