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" />
|
||||
</a>
|
||||
</h1>
|
||||
<metal:block use-macro="view/concept_macros/filter_input" />
|
||||
<metal:block use-macro="view/concept_macros/filter_input" />
|
||||
</metal:title>
|
||||
<p tal:define="description description|item/renderedDescription"
|
||||
<p metal:define-macro="conceptdescription"
|
||||
tal:define="description description|item/renderedDescription"
|
||||
tal:condition="description">
|
||||
<i tal:content="structure description">Description</i></p>
|
||||
</metal:title>
|
||||
|
|
|
@ -7,19 +7,47 @@
|
|||
|
||||
<zope:adapter
|
||||
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
|
||||
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
|
||||
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
|
||||
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 -->
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ from zope.interface import Interface, Attribute
|
|||
from zope import interface, component, schema
|
||||
|
||||
from cybertools.knowledge.survey import interfaces
|
||||
from loops.interfaces import IConceptSchema
|
||||
from loops.interfaces import IConceptSchema, ILoopsAdapter
|
||||
from loops.util import _
|
||||
|
||||
|
||||
|
@ -38,6 +38,13 @@ class IQuestionnaire(IConceptSchema, interfaces.IQuestionnaire):
|
|||
default=4,
|
||||
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):
|
||||
""" A group of questions within a questionnaire.
|
||||
|
|
|
@ -5,14 +5,10 @@
|
|||
<metal:block define-macro="survey"
|
||||
tal:define="feedback item/results;
|
||||
errors item/errors">
|
||||
<metal:title use-macro="item/conceptMacros/concepttitle" />
|
||||
<div class="error"
|
||||
tal:condition="errors">
|
||||
<div tal:repeat="error errors">
|
||||
<span i18n:translate=""
|
||||
tal:content="error" />
|
||||
</div>
|
||||
</div>
|
||||
<metal:title use-macro="item/conceptMacros/concepttitle_only" />
|
||||
<tal:description condition="not:feedback">
|
||||
<metal:title use-macro="item/conceptMacros/conceptdescription" />
|
||||
</tal:description>
|
||||
<div tal:condition="feedback">
|
||||
<h3 i18n:translate="">Feedback</h3>
|
||||
<table class="listing">
|
||||
|
@ -33,10 +29,20 @@
|
|||
Back to Questionnaire</a>
|
||||
<br />
|
||||
</div>
|
||||
<div tal:define="footer item/adapted/feedbackFooter"
|
||||
tal:condition="footer"
|
||||
tal:content="structure python:item.renderText(footer, 'text/restructured')" />
|
||||
</div>
|
||||
<div id="questionnaire"
|
||||
tal:condition="not:feedback">
|
||||
<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">
|
||||
<table class="listing">
|
||||
<tal:qugroup repeat="qugroup item/adapted/questionGroups">
|
||||
|
|
Binary file not shown.
|
@ -175,6 +175,12 @@ msgstr "Glossareintrag anlegen."
|
|||
msgid "Answer Range"
|
||||
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."
|
||||
msgstr "Anzahl der Abstufungen, aus denen bei der Antwort gewählt werden kann."
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue