Example #1
0
 def __createManifest(self):
     manifest = ManifestType()
     meta = MetadataType()
     meta.setSchema("IMS Content")
     meta.setSchemaversion("1.1.4")
     manifest.setMetadata(meta)
     
     portal = Services.getPortalManager().get(portalId)
     portalManifest = portal.getJsonMap("manifest")
     
     orgs = OrganizationsType()
     org = OrganizationType()
     org.setIdentifier("default")
     org.setTitle(portal.getDescription())
     orgs.getOrganization().add(org)
     orgs.setDefault(org)
     manifest.setOrganizations(orgs)
     
     resources = ResourcesType()
     manifest.setResources(resources)
     for key in portalManifest.keySet():
         jsonRes = portalManifest.get(key)
         # item
         visible = jsonRes.get("hidden", "false") != "true"
         item = ItemType()
         item.setIdentifier("default-" + key)
         item.setIdentifierref(key)
         item.setIsvisible(visible)
         item.setTitle(jsonRes.get("title"))
         # webcontent
         webRes = ResourceType()
         webRes.setIdentifier(key)
         webRes.setType("webcontent")
         oid = jsonRes.get("id")
         _, filename = os.path.split(oid)
         baseName = os.path.splitext(filename)[0]
         webRes.setHref("%s/%s.htm" % (key[5:], baseName))
         obj = Services.getStorage().getObject(oid)
         for payload in obj.getPayloadList():
             pid = payload.getId()
             if pid != "SOF-META":
                 file = FileType()
                 file.setHref(pid)
                 webRes.getFile().add(file)
         
         org.getItem().add(item)
         resources.getResource().add(webRes)
     
     return manifest
Example #2
0
    def __createManifest(self):
        manifest = ManifestType()
        meta = MetadataType()
        meta.setSchema("IMS Content")
        meta.setSchemaversion("1.1.4")
        manifest.setMetadata(meta)

        jsonManifest = self.__manifest.getJsonSimpleMap("manifest")

        orgs = OrganizationsType()
        org = OrganizationType()
        org.setIdentifier("default")
        org.setTitle(self.__manifest.getString(None, "title"))
        orgs.getOrganization().add(org)
        orgs.setDefault(org)
        manifest.setOrganizations(orgs)

        resources = ResourcesType()
        manifest.setResources(resources)
        self.__createItems(org, resources, jsonManifest)

        return manifest