Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-57645

New Web Service mod_lesson_view_lesson

XMLWordPrintable

    • MOODLE_32_STABLE
    • MOODLE_33_STABLE
    • MDL-57645-master
    • Hide
      1. Create a course with two students, the course must have at least one section.
      2. Enable completion at site level and course level.
      3. Create a mod_lesson activity with at least one content page and without any access restriction
      4. Use as completion criteria "Student must view this activity to complete it"
      5. Log in as one of the students and visit the lesson activity
      6. Log in as teacher and check that the activity is marked as completed by the student and that the student action generated a new entry in the logs (course -> reports -> logs)
      7. As admin, enable "Mobile services": Plugins ► Web Services ► Mobile
      8. As admin, enable REST protocol: Plugins ► Web Services ► Enable protocols
      9. Create a Token for the other student user (the one you didn't used before)
        • Click on Site administration ► Plugins ► Web services ► Manage tokens
      10. Next, you can do a CURL REST call simulating a WS client with the student user .
        • You need to replace the wstoken, lessonid (the lesson instance value) and the URL of your moodle instance

          curl 'http://localhost/m/stable_master/webservice/rest/server.php?moodlewsrestformat=json' --data 'lessonid=2&wsfunction=mod_lesson_view_lesson&wstoken=ffbe3a3002f235bf9d01fd9369e10b66' --compressed

      1. Confirm that
        • You can see new entries in the course log (lesson course module viewed) for that course and the user. The origin for the new log entries is "ws"
        • If you access via the web interface you will see the activity marked as completed, if you access the activity via the web interface with the student you will see log entries with origin "web" (lesson course module viewed)
          NOTE: If you don't see the activity marked as completed you should logout and login again, Moodle session cache sometimes does not upgrade the completion status for activities.
      Show
      Create a course with two students, the course must have at least one section. Enable completion at site level and course level. Create a mod_lesson activity with at least one content page and without any access restriction Use as completion criteria "Student must view this activity to complete it" Log in as one of the students and visit the lesson activity Log in as teacher and check that the activity is marked as completed by the student and that the student action generated a new entry in the logs (course -> reports -> logs) As admin, enable "Mobile services": Plugins ► Web Services ► Mobile As admin, enable REST protocol: Plugins ► Web Services ► Enable protocols Create a Token for the other student user (the one you didn't used before) Click on Site administration ► Plugins ► Web services ► Manage tokens Next, you can do a CURL REST call simulating a WS client with the student user . You need to replace the wstoken, lessonid (the lesson instance value) and the URL of your moodle instance curl 'http://localhost/m/stable_master/webservice/rest/server.php?moodlewsrestformat=json' --data 'lessonid=2&wsfunction=mod_lesson_view_lesson&wstoken=ffbe3a3002f235bf9d01fd9369e10b66' --compressed Confirm that You can see new entries in the course log (lesson course module viewed) for that course and the user. The origin for the new log entries is "ws" If you access via the web interface you will see the activity marked as completed, if you access the activity via the web interface with the student you will see log entries with origin "web" (lesson course module viewed) NOTE: If you don't see the activity marked as completed you should logout and login again, Moodle session cache sometimes does not upgrade the completion status for activities.

      Set the module viewed and trigger module viewed event.

      This issue should fix also how completion works currently, the module is marked as view completed regardless the access restrictions.

            jleyva Juan Leyva
            jleyva Juan Leyva
            Dani Palou Dani Palou
            Dan Poltawski Dan Poltawski
            Mathieu Petit-Clair Mathieu Petit-Clair
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.