From 4814947c5f4c79cb6890a747713b030db2f196ea Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Sun, 7 Jul 2013 10:48:01 +0200 Subject: [PATCH] fix class/adapter definition of Competence; fix access to thread.local when no request is stored --- knowledge/qualification/base.py | 1 + knowledge/qualification/configure.zcml | 9 ++++++++- knowledge/qualification/interfaces.py | 4 ++-- util.py | 5 ++++- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/knowledge/qualification/base.py b/knowledge/qualification/base.py index 32c9910..8a667e2 100644 --- a/knowledge/qualification/base.py +++ b/knowledge/qualification/base.py @@ -26,6 +26,7 @@ from zope.component import adapts from zope.interface import implementer, implements from loops.common import AdapterBase +from loops.interfaces import IConcept from loops.knowledge.qualification.interfaces import ICompetence from loops.type import TypeInterfaceSourceList diff --git a/knowledge/qualification/configure.zcml b/knowledge/qualification/configure.zcml index d8cbc74..dea246f 100644 --- a/knowledge/qualification/configure.zcml +++ b/knowledge/qualification/configure.zcml @@ -4,7 +4,14 @@ i18n_domain="loops"> + factory="loops.knowledge.qualification.base.Competence" + trusted="True" /> + + + + diff --git a/knowledge/qualification/interfaces.py b/knowledge/qualification/interfaces.py index 85a002a..87b3e2d 100644 --- a/knowledge/qualification/interfaces.py +++ b/knowledge/qualification/interfaces.py @@ -23,11 +23,11 @@ Interfaces for knowledge management and elearning with loops. from zope.interface import Interface, Attribute from zope import interface, component, schema -from loops.interfaces import IConceptSchema +from loops.interfaces import IConceptSchema, ILoopsAdapter from loops.util import _ -class ICompetence(IConceptSchema): +class ICompetence(ILoopsAdapter): """ The competence of a person. Maybe assigned to the person via a 'knows' relation or diff --git a/util.py b/util.py index 74f152b..55096f3 100644 --- a/util.py +++ b/util.py @@ -141,4 +141,7 @@ def saveRequest(request): local_data.request = request def getRequest(): - return local_data.request + try: + return local_data.request + except AttributeError: + return None