Răsfoiți Sursa

Don't set config unless needed in directive

Updates mathjax directive to only set config if it is needed. The main
config is now set in base.coffee so isn't needed
Alasdair Smith 8 ani în urmă
părinte
comite
db518e16aa
1 a modificat fișierele cu 8 adăugiri și 15 ștergeri
  1. 8 15
      services/web/public/coffee/directives/mathjax.coffee

+ 8 - 15
services/web/public/coffee/directives/mathjax.coffee

@@ -4,23 +4,16 @@ define [
 	App.directive "mathjax", () ->
 		return {
 			link: (scope, element, attrs) ->
-				mathjaxConfig =
-					extensions: ["Safe.js"]
-					messageStyle: "none"
-					imageFont:null
-					"HTML-CSS": { availableFonts: ["TeX"] },
-					TeX:
-						equationNumbers: { autoNumber: "AMS" },
-						useLabelIDs: false
-					skipStartupTypeset: true
-					tex2jax:
-						processEscapes: true,
-						inlineMath: [ ["\\(","\\)"] ],
-						displayMath: [ ['$$','$$'], ["\\[","\\]"] ]
 				if attrs.delimiter != 'no-single-dollar'
-					mathjaxConfig.tex2jax.inlineMath.push(['$','$']);
+					inlineMathConfig = MathJax?.Hub?.config?.tex2jax.inlineMath
+					alreadyConfigured = _.find inlineMathConfig, (c) ->
+						c[0] == '$' and c[1] == '$'
 
-				MathJax?.Hub?.Config(mathjaxConfig);
+					if !alreadyConfigured?
+						MathJax?.Hub?.Config(
+							tex2jax:
+								inlineMath: inlineMathConfig.concat([['$', '$']])
+						)
 
 				setTimeout () ->
 					MathJax?.Hub?.Queue(["Typeset", MathJax?.Hub, element.get(0)])