Commit Graph

14 Commits

Author SHA1 Message Date
Tim Hunt 20482f9d41 MDL-62792 filter_mathjaxloader: don't use statics for once-only items 2018-06-25 15:05:33 +01:00
David Mudrák 47cf9455d9 MDL-60209 mathjax: Fix mapping of the Moodle language to the MathJax
While working on the issue, I noticed that the current implementation of
the method filter_mathjaxloader::map_language_code() is suboptimal and
does not work well for many Moodle language packs such as pt_br or de_du
and other variants. It did not give particularly wrong results. It just
fell back to the default English too early without trying more hard.

This patch improves the mapping logic and adds a unit test for the
method.
2017-10-09 12:31:21 +02:00
Damyon Wiese 3db9004f7d MDL-58461 mathjax: Ship accessibility extensions
There are not mirrored on the new CDN so we need to ship them with moodle.
2017-04-11 09:18:23 +08:00
Henning Bostelmann f617ac5c75 MDL-55627 filter_mathjaxloader: use correct string concatenation op 2016-09-05 11:40:04 +02:00
Dan Poltawski 8ce58c99f0 MDL-53572 mathjax: always load mathjax using https
It's considered an anti-pattern now to use protocol relative urls and
reduces a setting.

(Also fixed an incorrectly placed 3.1.0 upgrade marker)
2016-08-02 15:55:23 +01:00
Daniel Thies fa3f814792 MDL-5507 filter_mathjaxloader: Add commeents for regexes 2016-07-11 13:20:41 -05:00
Daniel Thies 638b473808 MDL-55007 filter_mathjaxloader: Wrap nolink around each expresssion 2016-07-07 18:58:15 -05:00
Vadim Dvorovenko 6aec17bd00 MDL-48955 filter_mathjax: Regexp fix for texfiltercompatibility mode
Fixing incorrect regexp for replacing text like
"$$a$$ and $$b$$" to "\(a\) and \(b\)". This is needed for
texfiltercompatibility to work as expected.
2015-01-29 23:17:22 +07:00
Tony Butler 1e31f11852 MDL-28484 core_lib: Add function for https detection
Signed-off-by: Tony Butler <tonyjbutler@gmail.com>
2014-10-03 13:02:29 +01:00
Damyon Wiese aaf6f1e8f2 MDL-43856 MathJax: Dynamically load mathjax into the page (as required).
This is to solve a tricky edge case, when a page has no equations, and then an AJAX
action loads filtered content which contains an equation. (The glossary filter can do this).

To fix this I split the loading into configuration and typesetting. The config always happens,
but does not load the external mathjax libraries. The typesetting happens when an equation is
found - and is what triggers the load of MathJax. This can happen in response to an AJAX event.
2014-04-04 14:18:50 +08:00
Damyon Wiese 894e20395d MDL-43856 MathJax: Add a setting for additional delimiters to support e.g. ASCIIMATH 2014-04-04 13:30:08 +08:00
Damyon Wiese 441f94b263 MDL-43856 MathJax: Coding style cleanups. 2014-04-03 14:36:42 +08:00
Damyon Wiese cc90cedc85 MDL-43856 MathJax: Improvements to the MathJax filter
* Remove all traces of mathjax from the atto equation editor - it is filter agnostic
* Add a M.core.event module for core events that can be published/subscribed to by plugins (loose coupling)
* Add a FILTER_CONTENT_UPDATED event so plugins can tell the filter system when nodes are added to the page
* Implement a listener for this event in the MathJax filter
* Fire this event from the equation editor and from the glossary filter
* Add a nolink tag to the mathjax filter, so equations will not be processed by the other filters
* Add a smarter throttle function to the equation editor preview updates (Y.throttle is dumb)
2014-04-03 14:36:36 +08:00
Damyon Wiese 7f6753151e MDL-43856 MathJax: Add a mathjax loader filter. 2014-04-03 14:36:16 +08:00