(scripts)
| 920 | }; |
| 921 | |
| 922 | var sortScripts = function(scripts) { |
| 923 | var first = function(elem, tag) { |
| 924 | if (elem.tagName == tag) { |
| 925 | return elem |
| 926 | } else { |
| 927 | return (elem.parentNode ? first(elem.parentNode, tag) : null); |
| 928 | } |
| 929 | } |
| 930 | var sortEm = function(results) { |
| 931 | var numComparisonAsc = function(a, b) { return a.position-b.position; }; |
| 932 | results.sort(numComparisonAsc); |
| 933 | return results; |
| 934 | } |
| 935 | |
| 936 | var parent = null; |
| 937 | var sort = []; |
| 938 | var index = 0; |
| 939 | |
| 940 | for (var i=0; i<scripts.length; i++) { |
| 941 | var e = scripts[i].script; |
| 942 | var tr = first(e, 'TR'); |
| 943 | if (tr) { |
| 944 | var p = first(tr, 'TBODY'); |
| 945 | if (!parent) { |
| 946 | parent = p; |
| 947 | } else if (parent != p) { |
| 948 | console.log("options: different parents?!?!"); |
| 949 | } |
| 950 | index++; |
| 951 | sort.push({ tr: tr, position: e.pos ? e.pos: (1000+index) }); |
| 952 | tr.inserted = false; |
| 953 | tr.parentNode.removeChild(tr); |
| 954 | } else { |
| 955 | console.log("options: unable to sort script at pos " + e.pos); |
| 956 | } |
| 957 | } |
| 958 | sort = sortEm(sort); |
| 959 | for (var i=0; i<index; i++) { |
| 960 | parent.appendChild(sort[i].tr); |
| 961 | } |
| 962 | }; |
| 963 | |
| 964 | var savedScript = {}; |
| 965 | var createScriptDetailsTabView = function(tab, i, tr, parent, closeTab) { |
no test coverage detected
searching dependent graphs…