fnp
/
librarian.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix multiple choice detection in Wybor
[librarian.git]
/
librarian
/
pyhtml.py
diff --git
a/librarian/pyhtml.py
b/librarian/pyhtml.py
index
d781abf
..
c76a371
100644
(file)
--- a/
librarian/pyhtml.py
+++ b/
librarian/pyhtml.py
@@
-183,7
+183,7
@@
class EduModule(Xmill):
if 'url' in element.attrib:
return tag('a', href=element.attrib['url'])(self, element)
elif 'material' in element.attrib:
if 'url' in element.attrib:
return tag('a', href=element.attrib['url'])(self, element)
elif 'material' in element.attrib:
- formats = re.split(r"[, ]+", element.attrib
['format']
)
+ formats = re.split(r"[, ]+", element.attrib
.get('format', 'odt')
)
fmt_links = []
for f in formats:
fmt_links.append(u'<a href="%s">%s</a>' % (self.options['urlmapper'].url_for_material(element.attrib['material'], f), f.upper()))
fmt_links = []
for f in formats:
fmt_links.append(u'<a href="%s">%s</a>' % (self.options['urlmapper'].url_for_material(element.attrib['material'], f), f.upper()))
@@
-261,6
+261,13
@@
class Wybor(Exercise):
if len(solutions) != 1:
is_single_choice = False
break
if len(solutions) != 1:
is_single_choice = False
break
+ choices = element.xpath(".//*[@nazwa]")
+ uniq = set()
+ for n in choices: uniq.add(n.attrib['nazwa'])
+ if len(choices) != len(uniq):
+ is_single_choice = False
+ break
+
self.options = {'single': is_single_choice}
return pre, post
self.options = {'single': is_single_choice}
return pre, post