def _allowed(self, agent, request, country_code): """ Tests if logged in user is allowed to manage NRC members for `country` (whether he is an NFP member for country) """ uid = _get_user_id(request) filterstr = ("(&(objectClass=groupOfUniqueNames)(uniqueMember=%s))" % agent._user_dn(uid)) nfp_roles = agent.filter_roles("eionet-nfp-*-%s" % country_code, prefix_dn="cn=eionet-nfp,cn=eionet", filterstr=filterstr, attrlist=("description", )) if not (bool(nfp_roles) or self.checkPermissionZopeManager()): _set_session_message( request, 'error', "You are not allowed to manage NRC members for %s" % code_to_name(country_code)) request.RESPONSE.redirect(self.absolute_url()) return False else: return True
def _allowed(self, agent, request, country_code): """ Tests if logged in user is allowed to manage NRC members for `country` (whether he is an NFP member for country) """ uid = _get_user_id(request) filterstr = ("(&(objectClass=groupOfUniqueNames)(uniqueMember=%s))" % agent._user_dn(uid)) nfp_roles = agent.filter_roles("eionet-nfp-*-%s" % country_code, prefix_dn="cn=eionet-nfp,cn=eionet", filterstr=filterstr, attrlist=("description",)) if not (bool(nfp_roles) or self.checkPermissionZopeManager()): _set_session_message( request, 'error', "You are not allowed to manage NRC members for %s" % code_to_name(country_code)) request.RESPONSE.redirect(self.absolute_url()) return False else: return True
def user_id(self): return _get_user_id(self._get_request())