fnp
/
edumed.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rename test form
[edumed.git]
/
catalogue
/
models.py
diff --git
a/catalogue/models.py
b/catalogue/models.py
index
f518743
..
6d1b97a
100644
(file)
--- a/
catalogue/models.py
+++ b/
catalogue/models.py
@@
-121,7
+121,7
@@
class Lesson(models.Model):
return 'catalogue_lesson', [self.slug]
@classmethod
return 'catalogue_lesson', [self.slug]
@classmethod
- def publish(cls, infile, ignore_incomplete=False):
+ def publish(cls, infile, ignore_incomplete=False
, repackage_level=False
):
from librarian.parser import WLDocument
from django.core.files.base import ContentFile
wldoc = WLDocument(infile)
from librarian.parser import WLDocument
from django.core.files.base import ContentFile
wldoc = WLDocument(infile)
@@
-150,6
+150,8
@@
class Lesson(models.Model):
if lesson.type != 'project':
lesson.build_pdf(student=True)
lesson.build_package(student=True)
if lesson.type != 'project':
lesson.build_pdf(student=True)
lesson.build_package(student=True)
+ if repackage_level:
+ lesson.level.build_packages()
return lesson
def republish(self, repackage_level=True, attachments=None):
return lesson
def republish(self, repackage_level=True, attachments=None):
@@
-159,13
+161,11
@@
class Lesson(models.Model):
if attachments is None:
attachments = {}
for attachment in self.attachment_set.all():
if attachments is None:
attachments = {}
for attachment in self.attachment_set.all():
- full_name = os.path.join(settings.MEDIA_ROOT,
'%s.%s' % (attachment.file.name, attachment.ext)
)
+ full_name = os.path.join(settings.MEDIA_ROOT,
attachment.file.name
)
f = IOFile.from_filename(full_name)
f = IOFile.from_filename(full_name)
- attachments[
attachment.slug
] = f
+ attachments[
'%s.%s' % (attachment.slug, attachment.ext)
] = f
infile = IOFile.from_filename(self.xml_file.path, attachments=attachments)
infile = IOFile.from_filename(self.xml_file.path, attachments=attachments)
- Lesson.publish(infile)
- if repackage_level:
- self.level.build_packages()
+ Lesson.publish(infile, repackage_level=repackage_level)
def populate_dc(self):
from librarian.parser import WLDocument
def populate_dc(self):
from librarian.parser import WLDocument
@@
-289,7
+289,7
@@
class Lesson(models.Model):
return None
def requires_internet(self):
return None
def requires_internet(self):
- return
'internet' in self.dc.get('requires', []
)
+ return
any(requirement in self.dc.get('requires', []) for requirement in ('internet', 'Internet')
)
class Attachment(models.Model):
class Attachment(models.Model):