X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/432b6175940bcddf371c80c46e429f37ada6559f..c0761a86fb4687fda8221e56bf911f051fda3499:/librarian/pyhtml.py?ds=sidebyside
diff --git a/librarian/pyhtml.py b/librarian/pyhtml.py
index 6df3647..4ef04bc 100644
--- a/librarian/pyhtml.py
+++ b/librarian/pyhtml.py
@@ -185,8 +185,12 @@ class Excercise(EduModule):
add_class += ' handles handles-%s' % handles
self.options = {'handles': handles}
+ minimum = element.attrib.get('min', None)
+ if minimum: minimum_s = ' data-minimum="%d"' % int(minimum)
+ else: minimum_s = ''
+
return '
' %\
- (add_class, self.question_counter, solution_s), \
+ (add_class, self.question_counter, solution_s + minimum_s), \
"
"
@@ -292,18 +296,25 @@ class Zastap(Luki):
class Przyporzadkuj(Excercise):
+ def handle_pytanie(self, element):
+ pre, post = super(Przyporzadkuj, self).handle_pytanie(element)
+ minimum = element.attrib.get("min", None)
+ if minimum:
+ self.options = {"min": int(minimum)}
+ return pre, post
+
def handle_lista(self, lista):
if 'nazwa' in lista.attrib:
attrs = {
'data-name': lista.attrib['nazwa'],
'class': 'predicate'
- }
+ }
self.options = {'predicate': True}
elif 'cel' in lista.attrib:
attrs = {
'data-target': lista.attrib['cel'],
'class': 'subject'
- }
+ }
self.options = {'subject': True, 'handles': 'uchwyty' in lista.attrib}
else:
attrs = {}
@@ -319,7 +330,10 @@ class Przyporzadkuj(Excercise):
return '' % (element.attrib['rozw'], self.piece_counter), ''
elif self.options['predicate']:
- placeholders = u''
+ if self.options['min']:
+ placeholders = u'' * self.options['min']
+ else:
+ placeholders = u''
return '' % element.attrib, ''
else: