Commit d2f1a64f by Piotr Mitros

Prompts is now a list; not fully flushed out

parent 0e4a447a
......@@ -4,6 +4,7 @@ This is an XBlock designed to allow people to provide feedback on our
course resources.
"""
import random
import pkg_resources
......@@ -50,18 +51,13 @@ class RateXBlock(XBlock):
help="Names of ratings for Likert-like scale"
)
string_prompt = String(
default="Please provide us feedback on this section.",
prompts = List(
default=[{'string':"Please provide us feedback on this section.",
'likert':"Please rate your overall experience with this section."}],
scope=Scope.settings,
help="Freeform user prompt"
)
likert_prompt = String(
default="Please rate your overall experience with this section.",
scope=Scope.settings,
help="Likert-like scale user prompt"
)
user_vote = Integer(
default=-1, scope=Scope.user_state,
help="How user voted. -1 if didn't vote"
......@@ -90,7 +86,8 @@ class RateXBlock(XBlock):
indexes = range(len(self.mouseover_icons))
active_vote = [" rate_rating_active " if i == self.user_vote else "" for i in indexes]
scale = u"".join(scale_item.format(level=level, icon=icon, i=i, active=active) for (level,icon,i,active) in zip(self.mouseover_levels, self.mouseover_icons, indexes, active_vote))
frag = Fragment(html.format(self=self, scale=scale))
prompt = random.sample(self.prompts, 1)[0]
frag = Fragment(html.format(self=self, scale=scale, string_prompt = prompt['string'], likert_prompt = prompt['likert']))
frag.add_css(self.resource_string("static/css/rate.css"))
frag.add_javascript(self.resource_string("static/js/src/rate.js"))
frag.initialize_js('RateXBlock')
......
<div class="rate_block">
<div class="rate_header">{self.string_prompt}</div>
<div class="rate_header">{string_prompt}</div>
<div class="rate_string_input">
<textarea class="rate_string_area" rows="4" cols="30">{self.user_feedback}</textarea>
<div class="rate_thank_you">Thank you!</div>
</div>
<div class="rate_likert_header">{self.likert_prompt}</div>
<div class="rate_likert_header">{likert_prompt}</div>
<div class="rate_likert_scale">{scale}</div>
</div>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment