home *** CD-ROM | disk | FTP | other *** search
/ ftp.novell.com / 2014.06.ftp.novell.com.tar / ftp.novell.com / forge / camtasia.msi / Cabs.w1.cab / SCORMQuizFunction.js22 < prev    next >
Text File  |  2009-08-17  |  2KB  |  58 lines

  1. /******************** SCORM Related Calls ***********************************/
  2.  
  3. var scoPassingScore = 80;
  4. var lmsPassingScore;
  5. var completionStatus = "not_attempted";
  6. var apiResult;
  7.  
  8. function userSubmitToLMS( nScore )
  9. {          
  10.    completionStatus = "completed";
  11.    var scoreNeeded = scoPassingScore;
  12.    
  13.    if( apiVersion >= 1 )
  14.    {  
  15.       lmsPassingScore = apiCall( 'getValue', 'cmi.scaled_passing_score' );
  16.       apiCall( 'setValue', 'cmi.score.min', 0   );
  17.       apiCall( 'setValue', 'cmi.score.max', 100 );
  18.       apiCall( 'setValue', 'cmi.score.raw', nScore );    
  19.       apiCall( 'setValue', 'cmi.score.scaled', nScore / 100 );
  20.          
  21.       //lms defined mastery level will take precedence over sco defined mastery level
  22.       if ( lmsPassingScore != null && lmsPassingScore != "" && lmsPassingScore >= 0 && lmsPassingScore <= 1 )
  23.       {
  24.          scoreNeeded = lmsPassingScore * 100;
  25.       }
  26.       
  27.       if ( nScore >= scoreNeeded )
  28.       {
  29.          apiCall( 'setValue', 'cmi.success_status', 'passed' );    
  30.       }
  31.       else
  32.       {
  33.          apiCall( 'setValue', 'cmi.success_status', 'failed' );    
  34.       }   
  35.    }
  36.    else
  37.    {  
  38.          lmsPassingScore = apiCall( 'getValue', 'cmi.student_data.mastery_score' );
  39.         
  40.         if ( lmsPassingScore != null && lmsPassingScore != "" && lmsPassingScore >= 0 && lmsPassingScore <= 100 )
  41.         {
  42.             scoreNeeded = lmsPassingScore;
  43.         }
  44.         apiCall( 'setValue', 'cmi.core.score.min', '0'    );
  45.         apiCall( 'setValue', 'cmi.core.score.max', '100'  );
  46.         apiCall( 'setValue', 'cmi.core.score.raw', nScore );
  47.         
  48.         if ( nScore >= scoreNeeded )
  49.         {
  50.             completionStatus = "passed";    
  51.         }
  52.         else
  53.         {
  54.            completionStatus = "failed";
  55.         }
  56.    }
  57.    dispose();
  58. }