Moodle

AJAX implementation for course view relies on HTML output

Details

  • Type: Bug Bug
  • Status: Open Open
  • Priority: Major Major
  • Resolution: Unresolved
  • Affects Version/s: 1.7.4, 1.8.4, 1.9, 2.0
  • Fix Version/s: None
  • Component/s: AJAX, Course
  • Labels:
    None
  • Affected Branches:
    MOODLE_17_STABLE, MOODLE_18_STABLE, MOODLE_19_STABLE, MOODLE_20_STABLE

Description

See lib/ajax/section_classes.js

When AJAX is switched on (site and course level), the course view implementation is brittle and buggy. The script waits for the whole page to be loaded, then "repaints" elements like icons and drag handles. This is causing a number of user interface bugs (see linked issues), and males the javascript a pain to maintain.

The proposed solution is to implement code that lets the course export its state (sections, resources, blocks) as JSON data, which YUI can then use to build the interface, independent of HTML output. This forces a branching in how the interfaces are designed, and may involve some duplication of code, but should resolve most of the interface bugs, and may improve the speed and usability (especially drag and drop).

Issue Links

Activity

Hide
Nicklas Lindgren added a comment -

I don't agree that this will resolve the specific problems described in MDL-11539 / MDL-12198. The primary problem there is the discrepancy between the visual feedback provided in the browser and the actual changes performed in the server.

Show
Nicklas Lindgren added a comment - I don't agree that this will resolve the specific problems described in MDL-11539 / MDL-12198. The primary problem there is the discrepancy between the visual feedback provided in the browser and the actual changes performed in the server.
Hide
Nicklas Lindgren added a comment -

MDL-11746 is unrelated to AJAX.
MDL-12625 (aka MDL-10880) has a solution.

There are other aspects of the AJAX implementation i think is in more need of improvement (MDL-11675).

Show
Nicklas Lindgren added a comment - MDL-11746 is unrelated to AJAX. MDL-12625 (aka MDL-10880) has a solution. There are other aspects of the AJAX implementation i think is in more need of improvement (MDL-11675).
Hide
Wen Hao Chuang added a comment -

any update on this one? Just curious..

Show
Wen Hao Chuang added a comment - any update on this one? Just curious..

People

Vote (3)
Watch (5)

Dates

  • Created:
    Updated: