mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-21 13:50:20 +08:00
- Workflows have a simple database representation (StoredWorkflow)
- Workflow step parameters can be manipulated
- Workflows can be saved and loaded
- Many improvements to workflow editing interface
2) General interface cleanup
- Styles for the overall layout have been moved from the index page to
CSS files, colors for layout backgrounds and borders and such can now
be configured in the colors.ini file
- Styles and javascript code for dialogs and popupmenus (code is currently
in the workflow editor but will be moved out after more testing)
97 lines
3.0 KiB
JavaScript
97 lines
3.0 KiB
JavaScript
(function ($) {
|
|
var m = {
|
|
'\b': '\\b',
|
|
'\t': '\\t',
|
|
'\n': '\\n',
|
|
'\f': '\\f',
|
|
'\r': '\\r',
|
|
'"' : '\\"',
|
|
'\\': '\\\\'
|
|
},
|
|
s = {
|
|
'array': function (x) {
|
|
var a = ['['], b, f, i, l = x.length, v;
|
|
for (i = 0; i < l; i += 1) {
|
|
v = x[i];
|
|
f = s[typeof v];
|
|
if (f) {
|
|
v = f(v);
|
|
if (typeof v == 'string') {
|
|
if (b) {
|
|
a[a.length] = ',';
|
|
}
|
|
a[a.length] = v;
|
|
b = true;
|
|
}
|
|
}
|
|
}
|
|
a[a.length] = ']';
|
|
return a.join('');
|
|
},
|
|
'boolean': function (x) {
|
|
return String(x);
|
|
},
|
|
'null': function (x) {
|
|
return "null";
|
|
},
|
|
'number': function (x) {
|
|
return isFinite(x) ? String(x) : 'null';
|
|
},
|
|
'object': function (x) {
|
|
if (x) {
|
|
if (x instanceof Array) {
|
|
return s.array(x);
|
|
}
|
|
var a = ['{'], b, f, i, v;
|
|
for (i in x) {
|
|
v = x[i];
|
|
f = s[typeof v];
|
|
if (f) {
|
|
v = f(v);
|
|
if (typeof v == 'string') {
|
|
if (b) {
|
|
a[a.length] = ',';
|
|
}
|
|
a.push(s.string(i), ':', v);
|
|
b = true;
|
|
}
|
|
}
|
|
}
|
|
a[a.length] = '}';
|
|
return a.join('');
|
|
}
|
|
return 'null';
|
|
},
|
|
'string': function (x) {
|
|
if (/["\\\x00-\x1f]/.test(x)) {
|
|
x = x.replace(/([\x00-\x1f\\"])/g, function(a, b) {
|
|
var c = m[b];
|
|
if (c) {
|
|
return c;
|
|
}
|
|
c = b.charCodeAt();
|
|
return '\\u00' +
|
|
Math.floor(c / 16).toString(16) +
|
|
(c % 16).toString(16);
|
|
});
|
|
}
|
|
return '"' + x + '"';
|
|
}
|
|
};
|
|
|
|
$.toJSON = function(v) {
|
|
var f = isNaN(v) ? s[typeof v] : s['number'];
|
|
if (f) return f(v);
|
|
};
|
|
|
|
$.parseJSON = function(v, safe) {
|
|
if (safe === undefined) safe = $.parseJSON.safe;
|
|
if (safe && !/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(v))
|
|
return undefined;
|
|
return eval('('+v+')');
|
|
};
|
|
|
|
$.parseJSON.safe = false;
|
|
|
|
})(jQuery);
|