adapt to changed/extended base definition in cybertools with question groups and feedback items
This commit is contained in:
parent
e4222d7567
commit
58bb16aaa9
5 changed files with 42 additions and 18 deletions
|
@ -2,17 +2,23 @@
|
|||
type(u'questionnaire', u'Fragebogen', viewName=u'',
|
||||
typeInterface=u'loops.knowledge.survey.interfaces.IQuestionnaire',
|
||||
options=u'action.portlet:create_subtype,edit_concept')
|
||||
type(u'questiongroup', u'Fragengruppe', viewName=u'',
|
||||
typeInterface=u'loops.knowledge.survey.interfaces.IQuestionGroup',
|
||||
options=u'action.portlet:create_subtype,edit_concept')
|
||||
type(u'question', u'Frage', viewName=u'',
|
||||
typeInterface=u'loops.knowledge.survey.interfaces.IQuestion',
|
||||
options=u'action.portlet:create_subtype,edit_concept')
|
||||
type(u'resultelement', u'Feedback-Element', viewName=u'',
|
||||
typeInterface=u'loops.knowledge.survey.interfaces.IResultElement',
|
||||
type(u'feedbackitem', u'Feedback-Element', viewName=u'',
|
||||
typeInterface=u'loops.knowledge.survey.interfaces.IFeedbackItem',
|
||||
options=u'action.portlet:edit_concept')
|
||||
|
||||
# subtypes
|
||||
child(u'questionnaire', u'question', u'issubtype')
|
||||
child(u'questionnaire', u'questionnaire', u'issubtype')
|
||||
child(u'question', u'resultelement', u'issubtype')
|
||||
#child(u'questionnaire', u'questionnaire', u'issubtype')
|
||||
#child(u'questionnaire', u'question', u'issubtype')
|
||||
child(u'questionnaire', u'questiongroup', u'issubtype')
|
||||
child(u'questiongroup', u'question', u'issubtype')
|
||||
child(u'questiongroup', u'feedbackitem', u'issubtype')
|
||||
#child(u'question', u'feedbackitem', u'issubtype')
|
||||
|
||||
# records
|
||||
records(u'survey_responses', u'loops.knowledge.survey.response.Response')
|
||||
|
|
|
@ -23,14 +23,16 @@ Surveys used in knowledge management.
|
|||
from zope.component import adapts
|
||||
from zope.interface import implementer, implements
|
||||
|
||||
from cybertools.knowledge.survey.questionnaire import Questionnaire, Question,\
|
||||
ResultElement
|
||||
from cybertools.knowledge.survey.questionnaire import Questionnaire, \
|
||||
QuestionGroup, Question, FeedbackItem
|
||||
from loops.common import AdapterBase
|
||||
from loops.knowledge.survey.interfaces import IQuestionnaire, IQuestion, IResultElement
|
||||
from loops.knowledge.survey.interfaces import IQuestionnaire, \
|
||||
IQuestionGroup, IQuestion, IFeedbackItem
|
||||
from loops.type import TypeInterfaceSourceList
|
||||
|
||||
|
||||
TypeInterfaceSourceList.typeInterfaces += (IQuestionnaire, IQuestion, IResultElement)
|
||||
TypeInterfaceSourceList.typeInterfaces += (IQuestionnaire,
|
||||
IQuestionGroup, IQuestion, IFeedbackItem)
|
||||
|
||||
|
||||
class Questionnaire(AdapterBase, Questionnaire):
|
||||
|
@ -40,6 +42,13 @@ class Questionnaire(AdapterBase, Questionnaire):
|
|||
_contextAttributes = list(IQuestionnaire)
|
||||
|
||||
|
||||
class QuestionGroup(AdapterBase, QuestionGroup):
|
||||
|
||||
implements(IQuestionGroup)
|
||||
|
||||
_contextAttributes = list(IQuestionGroup)
|
||||
|
||||
|
||||
class Question(AdapterBase, Question):
|
||||
|
||||
implements(IQuestion)
|
||||
|
@ -47,9 +56,9 @@ class Question(AdapterBase, Question):
|
|||
_contextAttributes = list(IQuestion)
|
||||
|
||||
|
||||
class ResultElement(AdapterBase, ResultElement):
|
||||
class FeedbackItem(AdapterBase, FeedbackItem):
|
||||
|
||||
implements(IResultElement)
|
||||
implements(IFeedbackItem)
|
||||
|
||||
_contextAttributes = list(IResultElement)
|
||||
_contextAttributes = list(IFeedbackItem)
|
||||
|
||||
|
|
|
@ -7,12 +7,16 @@
|
|||
factory="loops.knowledge.survey.base.Questionnaire"
|
||||
provides="loops.knowledge.survey.interfaces.IQuestionnaire" />
|
||||
|
||||
<zope:adapter
|
||||
factory="loops.knowledge.survey.base.QuestionGroup"
|
||||
provides="loops.knowledge.survey.interfaces.IQuestionGroup" />
|
||||
|
||||
<zope:adapter
|
||||
factory="loops.knowledge.survey.base.Question"
|
||||
provides="loops.knowledge.survey.interfaces.IQuestion" />
|
||||
|
||||
<zope:adapter
|
||||
factory="loops.knowledge.survey.base.ResultElement"
|
||||
provides="loops.knowledge.survey.interfaces.IResultElement" />
|
||||
factory="loops.knowledge.survey.base.FeedbackItem"
|
||||
provides="loops.knowledge.survey.interfaces.IFeedbackItem" />
|
||||
|
||||
</configure>
|
||||
|
|
|
@ -36,6 +36,11 @@ class IQuestionnaire(IConceptSchema, interfaces.IQuestionnaire):
|
|||
'explicitly provide the values attribute.')
|
||||
|
||||
|
||||
class IQuestionGroup(IConceptSchema, interfaces.IQuestionGroup):
|
||||
""" A group of questions within a questionnaire.
|
||||
"""
|
||||
|
||||
|
||||
class IQuestion(IConceptSchema, interfaces.IQuestion):
|
||||
""" A single question within a questionnaire.
|
||||
"""
|
||||
|
@ -44,7 +49,7 @@ class IQuestion(IConceptSchema, interfaces.IQuestion):
|
|||
answerOptions = Attribute('A sequence of answer options to select from.')
|
||||
|
||||
|
||||
class IResultElement(IConceptSchema, interfaces.IResultElement):
|
||||
class IFeedbackItem(IConceptSchema, interfaces.IFeedbackItem):
|
||||
""" Some text (e.g. a recommendation) or some other kind of information
|
||||
that may be deduced from the res)ponses to a questionnaire.
|
||||
"""
|
||||
|
|
|
@ -7,9 +7,9 @@ from zope import component
|
|||
from zope.interface.verify import verifyClass
|
||||
from zope.testing.doctestunit import DocFileSuite
|
||||
|
||||
from loops.knowledge.survey.base import Questionnaire, Question, ResultElement
|
||||
from loops.knowledge.survey.base import Questionnaire, Question, FeedbackItem
|
||||
from loops.knowledge.survey.interfaces import IQuestionnaire, IQuestion, \
|
||||
IResultElement
|
||||
IFeedbackItem
|
||||
from loops.organize.party import Person
|
||||
from loops.setup import importData as baseImportData
|
||||
|
||||
|
@ -23,7 +23,7 @@ def importData(loopsRoot):
|
|||
def importSurvey(loopsRoot):
|
||||
component.provideAdapter(Questionnaire, provides=IQuestionnaire)
|
||||
component.provideAdapter(Question, provides=IQuestion)
|
||||
component.provideAdapter(ResultElement, provides=IResultElement)
|
||||
component.provideAdapter(FeedbackItem, provides=IFeedbackItem)
|
||||
baseImportData(loopsRoot, importPath, 'survey_de.dmp')
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue