Changeset 1258 for pykota/trunk/pykota/storages/ldapstorage.py
- Timestamp:
- 01/08/04 17:24:49 (20 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
pykota/trunk/pykota/storages/ldapstorage.py
r1257 r1258 22 22 # 23 23 # $Log$ 24 # Revision 1.45 2004/01/08 16:24:49 jalet 25 # edpykota now supports adding printers to printer groups. 26 # 24 27 # Revision 1.44 2004/01/08 14:10:33 jalet 25 28 # Copyright year changed. … … 361 364 """Extracts printer information given its name.""" 362 365 printer = StoragePrinter(self, printername) 363 result = self.doSearch("(&(objectClass=pykotaPrinter)(|(pykotaPrinterName=%s)(%s=%s)))" % (printername, self.info["printerrdn"], printername), ["pykotaPricePerPage", "pykotaPricePerJob" ], base=self.info["printerbase"])366 result = self.doSearch("(&(objectClass=pykotaPrinter)(|(pykotaPrinterName=%s)(%s=%s)))" % (printername, self.info["printerrdn"], printername), ["pykotaPricePerPage", "pykotaPricePerJob", "uniqueMember"], base=self.info["printerbase"]) 364 367 if result : 365 368 fields = result[0][1] … … 368 371 printer.PricePerPage = float(fields.get("pykotaPricePerPage")[0] or 0.0) 369 372 printer.LastJob = self.getPrinterLastJob(printer) 373 printer.uniqueMember = fields.get("uniqueMember", []) 370 374 printer.Exists = 1 371 375 return printer … … 521 525 printers = [] 522 526 # see comment at the same place in pgstorage.py 523 result = self.doSearch("(&(objectClass=pykotaPrinter)(|%s))" % "".join(["(pykotaPrinterName=%s)" % pname for pname in printerpattern.split(",")]), ["pykotaPrinterName", "pykotaPricePerPage", "pykotaPricePerJob" ], base=self.info["printerbase"])527 result = self.doSearch("(&(objectClass=pykotaPrinter)(|%s))" % "".join(["(pykotaPrinterName=%s)" % pname for pname in printerpattern.split(",")]), ["pykotaPrinterName", "pykotaPricePerPage", "pykotaPricePerJob", "uniqueMember"], base=self.info["printerbase"]) 524 528 if result : 525 529 for (printerid, fields) in result : … … 529 533 printer.PricePerJob = float(fields.get("pykotaPricePerJob")[0] or 0.0) 530 534 printer.PricePerPage = float(fields.get("pykotaPricePerPage")[0] or 0.0) 535 printer.uniqueMember = fields.get("uniqueMember", []) 531 536 printer.LastJob = self.getPrinterLastJob(printer) 532 537 printer.Exists = 1 … … 814 819 self.doModify(grouppquota.ident, fields) 815 820 821 def writePrinterToGroup(self, pgroup, printer) : 822 """Puts a printer into a printer group.""" 823 if (printer.ident not in pgroup.uniqueMember) and (printer.ident != pgroup.ident) : 824 fields = { 825 "uniqueMember" : pgroup.uniqueMember + [printer.ident] 826 } 827 self.doModify(pgroup.ident, fields) 828 816 829 def deleteUser(self, user) : 817 830 """Completely deletes an user from the Quota Storage."""