def export_scorm(self, pkg, outputf): scormExport = ScormExport(self.config, self.styles_dir, outputf, 'scorm1.2') pkg.scowsinglepage = self.options['single-page'] pkg.scowwebsite = self.options['website'] pkg.scowsource = self.options['editable'] scormExport.export(pkg)
def export_scorm2004(self, pkg, outputf): scormExport = ScormExport(self.config, self.styles_dir, outputf, 'scorm2004') pkg.scowsinglepage = self.options['single-page'] pkg.scowwebsite = self.options['website'] pkg.scowsource = self.options['editable'] scormExport.export(pkg)
def _testSCORMExport(self): """ Creates a nice package, then does a scorm export and tests the output """ self.createPackage() stylesDir = self.app.config.webDir/'style'/'default' filename = 'scormExport.zip' scormExport = ScormExport(self.app.config, stylesDir, filename) scormExport.export(self.package) # Extract the files we're interested in zf = zipfile.ZipFile('scormExport.zip') names = zf.namelist() if 'index.html' in names: html = zf.read('index.html') else: self.fail('No "index.html" found in %s' % filename) if 'imsmanifest.xml' in names: xml = zf.read('imsmanifest.xml') else: self.fail('No "imsmanifest.xml" found in %s' % filename) # Run XMLLint over the html file checker = HTMLChecker(self.ignoreErrorMsgs) if not checker.check(html, False, False): self.fail('Scorm export generated bad XHTML')
def _testSCORMExport(self): """ Creates a nice package, then does a scorm export and tests the output """ self.createPackage() stylesDir = self.app.config.webDir / 'style' / 'default' filename = 'scormExport.zip' scormExport = ScormExport(self.app.config, stylesDir, filename) scormExport.export(self.package) # Extract the files we're interested in zf = zipfile.ZipFile('scormExport.zip') names = zf.namelist() if 'index.html' in names: html = zf.read('index.html') else: self.fail('No "index.html" found in %s' % filename) if 'imsmanifest.xml' in names: xml = zf.read('imsmanifest.xml') else: self.fail('No "imsmanifest.xml" found in %s' % filename) # Run XMLLint over the html file checker = HTMLChecker(self.ignoreErrorMsgs) if not checker.check(html, False, False): self.fail('Scorm export generated bad XHTML')
def exportScorm(self, client, filename, stylesDir, scormType): """ Exports this package to a scorm package file """ filename = Path(filename) log.debug(u"exportScorm, filename=%s" % filename) if not filename.ext.lower() == '.zip': filename += '.zip' if filename.exists(): filename.remove() scormExport = ScormExport(self.config, stylesDir, filename, scormType) scormExport.export(self.package) client.alert(_(u'Exported to %s') % filename)
def render_export(self, format): filename = self.package.name + '_' + str(random.randrange(1,999999)) fullpath = self.webserver.config.dataDir/filename stylesDir = self.webserver.config.stylesDir/self.package.style try: if format == 'zipFile': websiteExport = WebsiteExport(self.webserver.config, stylesDir, fullpath + '.zip') websiteExport.exportZip(self.package) if format == 'scorm1.2': scormExport = ScormExport(self.webserver.config, stylesDir, fullpath + '.zip', 'scorm1.2') scormExport.export(self.package) except: return False return File(fullpath + '.zip')
def exportScorm(self, client, filename, stylesDir, scormType): """ Exports this package to a scorm package file """ try: filename = Path(filename) log.debug(u"exportScorm, filename=%s" % filename) if not filename.lower().endswith('.zip'): filename += '.zip' if Path(filename).exists(): msg = _(u'"%s" already exists.\nPlease try again with a different filename') % filename client.alert(_(u'EXPORT FAILED!\n%s' % msg)) return scormExport = ScormExport(self.config, stylesDir, filename, scormType) scormExport.export(self.package) except Exception, e: client.alert(_('EXPORT FAILED!\n%s' % str(e))) raise
def exportScorm(self, client, filename, stylesDir, scormType): """ Exports this package to a scorm package file """ try: filename = Path(filename) log.debug(u"exportScorm, filename=%s" % filename) # Append an extension if required if not filename.lower().endswith('.zip'): filename += '.zip' if Path(filename).exists(): msg = _( u'"%s" already exists.\nPlease try again with a different filename' ) % filename client.alert(_(u'EXPORT FAILED!\n%s' % msg)) return # Do the export scormExport = ScormExport(self.config, stylesDir, filename, scormType) scormExport.export(self.package) except Exception, e: client.alert(_('EXPORT FAILED!\n%s' % str(e))) raise
def export_scorm12(self, pkg, outputf): scormExport = ScormExport(self.config, self.styles_dir, outputf, 'scorm1.2') pkg.scowsinglepage = self.options['single-page'] pkg.scowwebsite = self.options['website'] scormExport.export(pkg)