Skip to content

Commit

Permalink
filter acords results
Browse files Browse the repository at this point in the history
  • Loading branch information
robdayz committed Jul 11, 2018
1 parent c06013b commit 44ac62c
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 15 deletions.
12 changes: 6 additions & 6 deletions genweb/organs/browser/views/webservice.pt
Original file line number Diff line number Diff line change
Expand Up @@ -83,23 +83,23 @@
cellspacing="0">
<thead>
<tr>
<th style="font-size:13px; width: 5%; text-align:center;" i18n:translate="">Codi d'acord</th>
<th style="font-size:13px; width: 5%; padding-left: 10px; text-align:left; display: table-cell; vertical-align: middle;" i18n:translate="">Proposal</th>
<th style="font-size:13px; width: 5%; padding-left: 10px; text-align:left; display: table-cell; vertical-align: middle;" i18n:translate="">Estat</th>
<th style="font-size:13px; text-align:center;" i18n:translate="">Codi d'acord</th>
<th style="font-size:13px; width: 7%; padding-left: 10px; text-align:left; display: table-cell; vertical-align: middle;" i18n:translate="">Proposal</th>
<th style="font-size:13px; width: 6%; padding-left: 10px; text-align:left; display: table-cell; vertical-align: middle;" i18n:translate="">Estat</th>
<th style="font-size:13px; white-space: nowrap; text-align:center; display: table-cell; vertical-align: middle;" i18n:translate="">Titol</th>
</tr>
</thead>
<tbody>
<tr vertical-align="top"
tal:repeat="acord view/allAcords">
<td style="font-size:13px; width: 5%; text-align:right;">
<td style="font-size:13px; text-align:right;">
<a tal:condition="acord/id" href="" tal:content="acord/id" tal:attributes="href string:${context/absolute_url}/acord/${acord/id}"></a>
<span style="color:red;" tal:condition="not:acord/id"> [Acord sense numeració] </span>
</td>
<td style="font-size:13px; width: 5%; padding-left: 10px; text-align:right;">
<td style="font-size:13px; width: 7%; padding-left: 10px; text-align:right;">
<span tal:condition="acord/proposal" tal:content="acord/proposal"></span>
</td>
<td style="font-size:13px; width: 5%; padding-left: 10px; text-align:right;">
<td style="font-size:13px; width: 6%; padding-left: 10px; text-align:right;">
<span tal:condition="acord/state" tal:content="acord/state"></span>
</td>
<td style="font-size:13px; text-align:left;">
Expand Down
67 changes: 58 additions & 9 deletions genweb/organs/browser/webservice.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,13 +56,62 @@ def __call__(self):
return self.request.response.redirect(api.portal.get().absolute_url())

def allAcords(self):
items = api.content.find(portal_type='genweb.organs.acord')
results = []
for value in items:
results = api.content.find(portal_type='genweb.organs.acord')
results2 = []
results3 = []
if api.user.is_anonymous():
username = None
else:
username = api.user.get_current().id
for value in results:
element = value.getObject()
if element.aq_parent.portal_type == 'genweb.organs.organgovern':
if username:
roles = api.user.get_roles(obj=element.aq_parent, username=username)
else:
roles = []
organType = element.aq_parent.organType
if 'Manager' in roles or (organType == 'open_organ'):
print "1"
results2.append(value)
elif organType == 'restricted_to_members_organ':
if 'OG1-Secretari' in roles or 'OG2-Editor' in roles or 'OG3-Membre' in roles:
print "2"
results2.append(value)
elif organType == 'restricted_to_affected_organ':
if 'OG1-Secretari' in roles or 'OG2-Editor' in roles or 'OG3-Membre' in roles or 'OG4-Afectat' in roles:
print "3"
results2.append(value)
else:
# remove element
continue
elif element.aq_parent.aq_parent.portal_type == 'genweb.organs.organgovern':
if username:
roles = api.user.get_roles(obj=element.aq_parent.aq_parent, username=username)
else:
roles = []
organType = element.aq_parent.aq_parent.organType
if 'Manager' in roles or (organType == 'open_organ'):
print "4"
results2.append(value)
elif organType == 'restricted_to_members_organ':
if 'OG1-Secretari' in roles or 'OG2-Editor' in roles or 'OG3-Membre' in roles:
print "5"
results2.append(value)
elif organType == 'restricted_to_affected_organ':
if 'OG1-Secretari' in roles or 'OG2-Editor' in roles or 'OG3-Membre' in roles or 'OG4-Afectat' in roles:
print "6"
results2.append(value)
else:
# remove element
continue
else:
continue
for value in results2:
item = value.getObject()
results.append(dict(id=item.agreement,
path=item.absolute_url(),
state=item.estatsLlista,
title=item.Title(),
proposal=item.proposalPoint))
return results
results3.append(dict(id=item.agreement,
path=item.absolute_url(),
state=item.estatsLlista,
title=item.Title(),
proposal=item.proposalPoint))
return results3

0 comments on commit 44ac62c

Please sign in to comment.