do not show description on feedback page, show feedback footer instead; use trusted=True in configure to make fields editable in management interface
This commit is contained in:
parent
edc1c8fd87
commit
cd2eeaeed2
6 changed files with 63 additions and 15 deletions
|
@ -62,9 +62,10 @@
|
||||||
string:$resourceBase/cybertools.icons/table.png" />
|
string:$resourceBase/cybertools.icons/table.png" />
|
||||||
</a>
|
</a>
|
||||||
</h1>
|
</h1>
|
||||||
<metal:block use-macro="view/concept_macros/filter_input" />
|
<metal:block use-macro="view/concept_macros/filter_input" />
|
||||||
</metal:title>
|
</metal:title>
|
||||||
<p tal:define="description description|item/renderedDescription"
|
<p metal:define-macro="conceptdescription"
|
||||||
|
tal:define="description description|item/renderedDescription"
|
||||||
tal:condition="description">
|
tal:condition="description">
|
||||||
<i tal:content="structure description">Description</i></p>
|
<i tal:content="structure description">Description</i></p>
|
||||||
</metal:title>
|
</metal:title>
|
||||||
|
|
|
@ -7,19 +7,47 @@
|
||||||
|
|
||||||
<zope:adapter
|
<zope:adapter
|
||||||
factory="loops.knowledge.survey.base.Questionnaire"
|
factory="loops.knowledge.survey.base.Questionnaire"
|
||||||
provides="loops.knowledge.survey.interfaces.IQuestionnaire" />
|
provides="loops.knowledge.survey.interfaces.IQuestionnaire"
|
||||||
|
trusted="True" />
|
||||||
|
<zope:class class="loops.knowledge.survey.base.Questionnaire">
|
||||||
|
<require permission="zope.View"
|
||||||
|
interface="loops.knowledge.survey.interfaces.IQuestionnaire" />
|
||||||
|
<require permission="zope.ManageContent"
|
||||||
|
set_schema="loops.knowledge.survey.interfaces.IQuestionnaire" />
|
||||||
|
</zope:class>
|
||||||
|
|
||||||
<zope:adapter
|
<zope:adapter
|
||||||
factory="loops.knowledge.survey.base.QuestionGroup"
|
factory="loops.knowledge.survey.base.QuestionGroup"
|
||||||
provides="loops.knowledge.survey.interfaces.IQuestionGroup" />
|
provides="loops.knowledge.survey.interfaces.IQuestionGroup"
|
||||||
|
trusted="True" />
|
||||||
|
<zope:class class="loops.knowledge.survey.base.QuestionGroup">
|
||||||
|
<require permission="zope.View"
|
||||||
|
interface="loops.knowledge.survey.interfaces.IQuestionGroup" />
|
||||||
|
<require permission="zope.ManageContent"
|
||||||
|
set_schema="loops.knowledge.survey.interfaces.IQuestionGroup" />
|
||||||
|
</zope:class>
|
||||||
|
|
||||||
<zope:adapter
|
<zope:adapter
|
||||||
factory="loops.knowledge.survey.base.Question"
|
factory="loops.knowledge.survey.base.Question"
|
||||||
provides="loops.knowledge.survey.interfaces.IQuestion" />
|
provides="loops.knowledge.survey.interfaces.IQuestion"
|
||||||
|
trusted="True" />
|
||||||
|
<zope:class class="loops.knowledge.survey.base.Question">
|
||||||
|
<require permission="zope.View"
|
||||||
|
interface="loops.knowledge.survey.interfaces.IQuestion" />
|
||||||
|
<require permission="zope.ManageContent"
|
||||||
|
set_schema="loops.knowledge.survey.interfaces.IQuestion" />
|
||||||
|
</zope:class>
|
||||||
|
|
||||||
<zope:adapter
|
<zope:adapter
|
||||||
factory="loops.knowledge.survey.base.FeedbackItem"
|
factory="loops.knowledge.survey.base.FeedbackItem"
|
||||||
provides="loops.knowledge.survey.interfaces.IFeedbackItem" />
|
provides="loops.knowledge.survey.interfaces.IFeedbackItem"
|
||||||
|
trusted="True" />
|
||||||
|
<zope:class class="loops.knowledge.survey.base.FeedbackItem">
|
||||||
|
<require permission="zope.View"
|
||||||
|
interface="loops.knowledge.survey.interfaces.IFeedbackItem" />
|
||||||
|
<require permission="zope.ManageContent"
|
||||||
|
set_schema="loops.knowledge.survey.interfaces.IFeedbackItem" />
|
||||||
|
</zope:class>
|
||||||
|
|
||||||
<!-- track -->
|
<!-- track -->
|
||||||
|
|
||||||
|
|
|
@ -24,7 +24,7 @@ from zope.interface import Interface, Attribute
|
||||||
from zope import interface, component, schema
|
from zope import interface, component, schema
|
||||||
|
|
||||||
from cybertools.knowledge.survey import interfaces
|
from cybertools.knowledge.survey import interfaces
|
||||||
from loops.interfaces import IConceptSchema
|
from loops.interfaces import IConceptSchema, ILoopsAdapter
|
||||||
from loops.util import _
|
from loops.util import _
|
||||||
|
|
||||||
|
|
||||||
|
@ -38,6 +38,13 @@ class IQuestionnaire(IConceptSchema, interfaces.IQuestionnaire):
|
||||||
default=4,
|
default=4,
|
||||||
required=True)
|
required=True)
|
||||||
|
|
||||||
|
feedbackFooter = schema.Text(
|
||||||
|
title=_(u'Feedback Footer'),
|
||||||
|
description=_(u'Text that will appear at the end of the feedback page.'),
|
||||||
|
default=u'',
|
||||||
|
missing_value=u'',
|
||||||
|
required=False)
|
||||||
|
|
||||||
|
|
||||||
class IQuestionGroup(IConceptSchema, interfaces.IQuestionGroup):
|
class IQuestionGroup(IConceptSchema, interfaces.IQuestionGroup):
|
||||||
""" A group of questions within a questionnaire.
|
""" A group of questions within a questionnaire.
|
||||||
|
|
|
@ -5,14 +5,10 @@
|
||||||
<metal:block define-macro="survey"
|
<metal:block define-macro="survey"
|
||||||
tal:define="feedback item/results;
|
tal:define="feedback item/results;
|
||||||
errors item/errors">
|
errors item/errors">
|
||||||
<metal:title use-macro="item/conceptMacros/concepttitle" />
|
<metal:title use-macro="item/conceptMacros/concepttitle_only" />
|
||||||
<div class="error"
|
<tal:description condition="not:feedback">
|
||||||
tal:condition="errors">
|
<metal:title use-macro="item/conceptMacros/conceptdescription" />
|
||||||
<div tal:repeat="error errors">
|
</tal:description>
|
||||||
<span i18n:translate=""
|
|
||||||
tal:content="error" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div tal:condition="feedback">
|
<div tal:condition="feedback">
|
||||||
<h3 i18n:translate="">Feedback</h3>
|
<h3 i18n:translate="">Feedback</h3>
|
||||||
<table class="listing">
|
<table class="listing">
|
||||||
|
@ -33,10 +29,20 @@
|
||||||
Back to Questionnaire</a>
|
Back to Questionnaire</a>
|
||||||
<br />
|
<br />
|
||||||
</div>
|
</div>
|
||||||
|
<div tal:define="footer item/adapted/feedbackFooter"
|
||||||
|
tal:condition="footer"
|
||||||
|
tal:content="structure python:item.renderText(footer, 'text/restructured')" />
|
||||||
</div>
|
</div>
|
||||||
<div id="questionnaire"
|
<div id="questionnaire"
|
||||||
tal:condition="not:feedback">
|
tal:condition="not:feedback">
|
||||||
<h3 i18n:translate="">Questionnaire</h3>
|
<h3 i18n:translate="">Questionnaire</h3>
|
||||||
|
<div class="error"
|
||||||
|
tal:condition="errors">
|
||||||
|
<div tal:repeat="error errors">
|
||||||
|
<span i18n:translate=""
|
||||||
|
tal:content="error" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<form method="post">
|
<form method="post">
|
||||||
<table class="listing">
|
<table class="listing">
|
||||||
<tal:qugroup repeat="qugroup item/adapted/questionGroups">
|
<tal:qugroup repeat="qugroup item/adapted/questionGroups">
|
||||||
|
|
Binary file not shown.
|
@ -175,6 +175,12 @@ msgstr "Glossareintrag anlegen."
|
||||||
msgid "Answer Range"
|
msgid "Answer Range"
|
||||||
msgstr "Abstufung Bewertungen"
|
msgstr "Abstufung Bewertungen"
|
||||||
|
|
||||||
|
msgid "Feedback Footer"
|
||||||
|
msgstr "Auswertungs-Hinweis"
|
||||||
|
|
||||||
|
msgid "Text that will appear at the end of the feedback page."
|
||||||
|
msgstr "Text, der am Ende der Auswertungsseite erscheinen soll."
|
||||||
|
|
||||||
msgid "Number of items (answer options) to select from."
|
msgid "Number of items (answer options) to select from."
|
||||||
msgstr "Anzahl der Abstufungen, aus denen bei der Antwort gewählt werden kann."
|
msgstr "Anzahl der Abstufungen, aus denen bei der Antwort gewählt werden kann."
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue