Special case 'Service du Greffier'
This commit is contained in:
parent
627ed9c9de
commit
c26686f310
|
@ -125,20 +125,24 @@ class PcfAnnuaire(BaseContent):
|
|||
services = sorted(services.keys())
|
||||
return services
|
||||
|
||||
def getServiceManagers(self, service):
|
||||
def getServiceManager(self, service):
|
||||
sec_gen = self.getSecretaireGeneral()
|
||||
entries = [x for x in self.getEntries() if x.service == service and x.manager == sec_gen.dn]
|
||||
return sorted(entries, key=get_sn)
|
||||
if service == 'Service du Greffier':
|
||||
return sec_gen
|
||||
try:
|
||||
return [x for x in self.getEntries() if x.service == service and x.manager == sec_gen.dn][0]
|
||||
except KeyError:
|
||||
return None
|
||||
|
||||
def getServiceNonManagers(self, service):
|
||||
service_managers = [x.dn for x in self.getServiceManagers(service)]
|
||||
service_manager = self.getServiceManager(service)
|
||||
entries = [x for x in self.getEntries() if \
|
||||
x.service == service and x.manager in service_managers and not x.division]
|
||||
x.service == service and x.manager == service_manager.dn and not x.division]
|
||||
return sorted(entries, key=get_sn)
|
||||
|
||||
def getCellules(self, service):
|
||||
service_managers = [x.dn for x in self.getServiceManagers(service)]
|
||||
entries = [x for x in self.getEntries() if x.manager in service_managers]
|
||||
service_manager = self.getServiceManager(service)
|
||||
entries = [x for x in self.getEntries() if x.manager == service_manager.dn]
|
||||
cells = {}
|
||||
for entry in entries:
|
||||
if entry.division:
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
<div tal:condition="python: not(not(service))">
|
||||
<h2 tal:content="python: service">service name</h2>
|
||||
<ul>
|
||||
<li tal:repeat="entry python: context.getServiceManagers(service)">
|
||||
<li tal:repeat="entry python: [context.getServiceManager(service)]">
|
||||
<span tal:replace="entry/givenName">givenName</span>
|
||||
<span tal:replace="entry/sn">sn</span>
|
||||
</li>
|
||||
|
|
Reference in New Issue