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

Toggling course index/drawer broken, JS errors within some course/module pages

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • 4.0
    • 4.0
    • Course
    • MOODLE_400_STABLE
    • MOODLE_400_STABLE
    • Hide

      (To be tested with both Firefox and Chrome)

      Test

      1. Log in as admin
      2. Create a course
      3. Press Settings in secondary navigation
      4. Toggle course index & block drawer open/close
      5. Confirm open/closing both works

      Regression test (MDL-74222)

      1. Using your browser DOM tools, inspect the Expand/collapse all link
      2. Confirm it contains aria-controls="..." attribute whose content is the ID of each fieldset expand/collapse link
      Show
      (To be tested with both Firefox and Chrome) Test Log in as admin Create a course Press Settings in secondary navigation Toggle course index & block drawer open/close Confirm open/closing both works Regression test ( MDL-74222 ) Using your browser DOM tools, inspect the Expand/collapse all link Confirm it contains aria-controls="..." attribute whose content is the ID of each fieldset expand/collapse link

      Seems to be in at least 3 cases:

      1. Navigate to course; Press Settings in secondary navigation; Toggle course index (either open/show it, depending on current state)
      2. Navigate to forum; Add discussion topic; Press Advanced; Toggle course index
      3. Navigate to forum Settings; Toggle course index
      4. ... there may be other cases elsewhere (common theme appears to be when the page has a form)

      Each time, trying to toggle course index fails. When trying to press Close course index the button just disappears (the course index is still visible)

      Following exception was observed in browser console each time:

      Uncaught Error: cannot call methods on tooltip prior to initialization; attempted to call method 'hide'
          jQuery 5
          openDrawer http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          toggleVisibility http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          <anonymous> http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          EventListener.handleEvent* http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          <anonymous> http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          execCb http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          setTimeout handler*req.nextTick< http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          requirejs http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          <anonymous> http://localhost:8000/course/edit.php?id=2:2897
          execCb http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          h http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          completeLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          onScriptLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          fetch http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          h http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          completeLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          onScriptLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          fetch http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          setTimeout handler*req.nextTick< http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          requirejs http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          <anonymous> http://localhost:8000/course/edit.php?id=2:2835
      jquery-3.6.0.min.js:2:2616
          jQuery 5
          openDrawer http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          toggleVisibility http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          <anonymous> http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          (Async: EventListener.handleEvent)
          <anonymous> http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          <anonymous> http://localhost:8000/lib/requirejs.php/1649363871/core/first.js:4226
          execCb http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          (Async: setTimeout handler)
          nextTick http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          requirejs http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          <anonymous> http://localhost:8000/course/edit.php?id=2:2897
          execCb http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          emit http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          h http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          completeLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          onScriptLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          (Async: EventListener.handleEvent)
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          fetch http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          h http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          completeLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          onScriptLoad http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          (Async: EventListener.handleEvent)
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          load http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          fetch http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          check http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          bind http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          each http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          enable http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          init http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          (Async: setTimeout handler)
          nextTick http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          o http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          requirejs http://localhost:8000/lib/javascript.php/1649363871/lib/requirejs/require.min.js:5
          <anonymous> http://localhost:8000/course/edit.php?id=2:2835
      

      Edit opening/closing the block drawer also produces same errors

            pholden Paul Holden
            pholden Paul Holden
            Ferran Recio Ferran Recio
            Shamim Rezaie Shamim Rezaie
            Gladys Basiana Gladys Basiana
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - 0 minutes
                0m
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 hour, 45 minutes
                1h 45m

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