Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Create content API (api/v1/create/content or update) along with content metadata should store following values against the content

    Code Block
    'scormValues': {
    'entry': <First SCO to be launched>,
    'version': <scorm2004/SCORM_1.2- to decide which API to be used> 
    'grademethod': <Grading method to give score to the user in case of multiple attempts>
    }
  2. Tables to be populated after reading imsmanifest.xml file. (populate scom data tables given in here)

Code Block
onScormPackageUpload(zipPath) {
    if (!file_exists(zipPath . '/imsmanifest.xml')) {
        throw_error('uploaded zip is not a scorm file')
    } else {
        readIMSManifestFile(zipPath . '/imsmanifest.xml')
    }
}

function readIMSManifestFile($manifestfile) {
    1. Load and read the imsmanifest.xml file
    2. Things needed to be stored against the content
       a. scorm version -> Read the manifest->metadata->shemaversion
       b. The first sco to be set as 'entry' against the content 
    3. Poulate the #__scorm_scoes table and #__scorm_scoes_data after reading all the items and resources
}

Table #__scorm_scoes

id

bigint(10)

AUTO_INCREMENT

content_id

bigint(10)

title

varchar(255)

scormtype

varchar(5)

manifest

varchar(255)

organization

varchar(255)

parent

varchar(255)

identifier

varchar(255)

launch

longtext

Table #__scorm_scoes_data

id

bigint(10)

AUTO_INCREMENT

sco_id

bigint(10)

name

varchar(255)

value

longtext

SCORM consumption through player

...