fix class/adapter definition of Competence; fix access to thread.local when no request is stored

This commit is contained in:
Helmut Merz 2013-07-07 10:48:01 +02:00
parent e183dd77c6
commit 4814947c5f
4 changed files with 15 additions and 4 deletions

View file

@ -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

View file

@ -4,7 +4,14 @@
i18n_domain="loops">
<zope:adapter
factory="loops.knowledge.qualification.base.Competence" />
factory="loops.knowledge.qualification.base.Competence"
trusted="True" />
<zope:class class="loops.knowledge.qualification.base.Competence">
<require permission="zope.View"
interface="loops.knowledge.qualification.interfaces.ICompetence" />
<require permission="zope.ManageContent"
set_schema="loops.knowledge.qualification.interfaces.ICompetence" />
</zope:class>
<!-- views -->

View file

@ -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

View file

@ -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