Bugzilla – Attachment 23782 Details for
Bug 10858
Browse selected biblios - OPAC
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 10858: Update the jquery.json plugin to the lastest version
Bug-10858-Update-the-jqueryjson-plugin-to-the-last.patch (text/plain), 13.67 KB, created by
Jonathan Druart
on 2013-12-23 12:03:32 UTC
(
hide
)
Description:
Bug 10858: Update the jquery.json plugin to the lastest version
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2013-12-23 12:03:32 UTC
Size:
13.67 KB
patch
obsolete
>From 5178a24b95b4cdafe3f4f6ebd26138d5d32ba49c Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@biblibre.com> >Date: Mon, 23 Dec 2013 12:50:11 +0100 >Subject: [PATCH] Bug 10858: Update the jquery.json plugin to the lastest > version > >--- > .../prog/en/lib/jquery/plugins/jquery.json.js | 312 ++++++++++---------- > 1 file changed, 156 insertions(+), 156 deletions(-) > >diff --git a/koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.json.js b/koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.json.js >index d01e310..ece0d41 100644 >--- a/koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.json.js >+++ b/koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.json.js >@@ -1,5 +1,5 @@ > /** >- * jQuery JSON plugin 2.4-alpha >+ * jQuery JSON plugin 2.4.0 > * > * @author Brantley Harris, 2009-2011 > * @author Timo Tijhof, 2011-2012 >@@ -12,188 +12,188 @@ > * @license MIT License <http://www.opensource.org/licenses/mit-license.php> > */ > (function ($) { >- 'use strict'; >+ 'use strict'; > >- var escape = /["\\\x00-\x1f\x7f-\x9f]/g, >- meta = { >- '\b': '\\b', >- '\t': '\\t', >- '\n': '\\n', >- '\f': '\\f', >- '\r': '\\r', >- '"' : '\\"', >- '\\': '\\\\' >- }, >- hasOwn = Object.prototype.hasOwnProperty; >+ var escape = /["\\\x00-\x1f\x7f-\x9f]/g, >+ meta = { >+ '\b': '\\b', >+ '\t': '\\t', >+ '\n': '\\n', >+ '\f': '\\f', >+ '\r': '\\r', >+ '"' : '\\"', >+ '\\': '\\\\' >+ }, >+ hasOwn = Object.prototype.hasOwnProperty; > >- /** >+ /** > * jQuery.toJSON >- * Converts the given argument into a JSON representation. >- * >- * @param o {Mixed} The json-serializable *thing* to be converted >- * >- * If an object has a toJSON prototype, that will be used to get the representation. >- * Non-integer/string keys are skipped in the object, as are keys that point to a >- * function. >- * >- */ >+ * Converts the given argument into a JSON representation. >+ * >+ * @param o {Mixed} The json-serializable *thing* to be converted >+ * >+ * If an object has a toJSON prototype, that will be used to get the representation. >+ * Non-integer/string keys are skipped in the object, as are keys that point to a >+ * function. >+ * >+ */ > $.toJSON = typeof JSON === 'object' && JSON.stringify ? JSON.stringify : function (o) { >- if (o === null) { >- return 'null'; >- } >+ if (o === null) { >+ return 'null'; >+ } > >- var pairs, k, name, val, >- type = $.type(o); >+ var pairs, k, name, val, >+ type = $.type(o); > >- if (type === 'undefined') { >- return undefined; >- } >+ if (type === 'undefined') { >+ return undefined; >+ } > >- // Also covers instantiated Number and Boolean objects, >- // which are typeof 'object' but thanks to $.type, we >- // catch them here. I don't know whether it is right >- // or wrong that instantiated primitives are not >- // exported to JSON as an {"object":..}. >- // We choose this path because that's what the browsers did. >- if (type === 'number' || type === 'boolean') { >- return String(o); >- } >- if (type === 'string') { >- return $.quoteString(o); >- } >- if (typeof o.toJSON === 'function') { >- return $.toJSON(o.toJSON()); >- } >- if (type === 'date') { >- var month = o.getUTCMonth() + 1, >- day = o.getUTCDate(), >- year = o.getUTCFullYear(), >- hours = o.getUTCHours(), >- minutes = o.getUTCMinutes(), >- seconds = o.getUTCSeconds(), >- milli = o.getUTCMilliseconds(); >+ // Also covers instantiated Number and Boolean objects, >+ // which are typeof 'object' but thanks to $.type, we >+ // catch them here. I don't know whether it is right >+ // or wrong that instantiated primitives are not >+ // exported to JSON as an {"object":..}. >+ // We choose this path because that's what the browsers did. >+ if (type === 'number' || type === 'boolean') { >+ return String(o); >+ } >+ if (type === 'string') { >+ return $.quoteString(o); >+ } >+ if (typeof o.toJSON === 'function') { >+ return $.toJSON(o.toJSON()); >+ } >+ if (type === 'date') { >+ var month = o.getUTCMonth() + 1, >+ day = o.getUTCDate(), >+ year = o.getUTCFullYear(), >+ hours = o.getUTCHours(), >+ minutes = o.getUTCMinutes(), >+ seconds = o.getUTCSeconds(), >+ milli = o.getUTCMilliseconds(); > >- if (month < 10) { >- month = '0' + month; >- } >- if (day < 10) { >- day = '0' + day; >- } >- if (hours < 10) { >- hours = '0' + hours; >- } >- if (minutes < 10) { >- minutes = '0' + minutes; >- } >- if (seconds < 10) { >- seconds = '0' + seconds; >- } >- if (milli < 100) { >- milli = '0' + milli; >- } >- if (milli < 10) { >- milli = '0' + milli; >- } >- return '"' + year + '-' + month + '-' + day + 'T' + >- hours + ':' + minutes + ':' + seconds + >- '.' + milli + 'Z"'; >+ if (month < 10) { >+ month = '0' + month; >+ } >+ if (day < 10) { >+ day = '0' + day; >+ } >+ if (hours < 10) { >+ hours = '0' + hours; >+ } >+ if (minutes < 10) { >+ minutes = '0' + minutes; >+ } >+ if (seconds < 10) { >+ seconds = '0' + seconds; > } >+ if (milli < 100) { >+ milli = '0' + milli; >+ } >+ if (milli < 10) { >+ milli = '0' + milli; >+ } >+ return '"' + year + '-' + month + '-' + day + 'T' + >+ hours + ':' + minutes + ':' + seconds + >+ '.' + milli + 'Z"'; >+ } > >- pairs = []; >+ pairs = []; > >- if ($.isArray(o)) { >- for (k = 0; k < o.length; k++) { >- pairs.push($.toJSON(o[k]) || 'null'); >- } >- return '[' + pairs.join(',') + ']'; >+ if ($.isArray(o)) { >+ for (k = 0; k < o.length; k++) { >+ pairs.push($.toJSON(o[k]) || 'null'); > } >+ return '[' + pairs.join(',') + ']'; >+ } > >- // Any other object (plain object, RegExp, ..) >- // Need to do typeof instead of $.type, because we also >- // want to catch non-plain objects. >- if (typeof o === 'object') { >- for (k in o) { >- // Only include own properties, >- // Filter out inherited prototypes >- if (hasOwn.call(o, k)) { >- // Keys must be numerical or string. Skip others >- type = typeof k; >- if (type === 'number') { >- name = '"' + k + '"'; >- } else if (type === 'string') { >- name = $.quoteString(k); >- } else { >- continue; >- } >- type = typeof o[k]; >+ // Any other object (plain object, RegExp, ..) >+ // Need to do typeof instead of $.type, because we also >+ // want to catch non-plain objects. >+ if (typeof o === 'object') { >+ for (k in o) { >+ // Only include own properties, >+ // Filter out inherited prototypes >+ if (hasOwn.call(o, k)) { >+ // Keys must be numerical or string. Skip others >+ type = typeof k; >+ if (type === 'number') { >+ name = '"' + k + '"'; >+ } else if (type === 'string') { >+ name = $.quoteString(k); >+ } else { >+ continue; >+ } >+ type = typeof o[k]; > >- // Invalid values like these return undefined >- // from toJSON, however those object members >- // shouldn't be included in the JSON string at all. >- if (type !== 'function' && type !== 'undefined') { >- val = $.toJSON(o[k]); >- pairs.push(name + ':' + val); >- } >- } >- } >- return '{' + pairs.join(',') + '}'; >+ // Invalid values like these return undefined >+ // from toJSON, however those object members >+ // shouldn't be included in the JSON string at all. >+ if (type !== 'function' && type !== 'undefined') { >+ val = $.toJSON(o[k]); >+ pairs.push(name + ':' + val); >+ } >+ } > } >- }; >+ return '{' + pairs.join(',') + '}'; >+ } >+ }; > > /** > * jQuery.evalJSON >- * Evaluates a given json string. >- * >- * @param str {String} >- */ >+ * Evaluates a given json string. >+ * >+ * @param str {String} >+ */ > $.evalJSON = typeof JSON === 'object' && JSON.parse ? JSON.parse : function (str) { >- /*jshint evil: true */ >- return eval('(' + str + ')'); >- }; >+ /*jshint evil: true */ >+ return eval('(' + str + ')'); >+ }; > > /** > * jQuery.secureEvalJSON >- * Evals JSON in a way that is *more* secure. >- * >- * @param str {String} >- */ >+ * Evals JSON in a way that is *more* secure. >+ * >+ * @param str {String} >+ */ > $.secureEvalJSON = typeof JSON === 'object' && JSON.parse ? JSON.parse : function (str) { >- var filtered = >- str >- .replace(/\\["\\\/bfnrtu]/g, '@') >- .replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']') >- .replace(/(?:^|:|,)(?:\s*\[)+/g, ''); >+ var filtered = >+ str >+ .replace(/\\["\\\/bfnrtu]/g, '@') >+ .replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']') >+ .replace(/(?:^|:|,)(?:\s*\[)+/g, ''); > >- if (/^[\],:{}\s]*$/.test(filtered)) { >- /*jshint evil: true */ >- return eval('(' + str + ')'); >- } >- throw new SyntaxError('Error parsing JSON, source is not valid.'); >- }; >+ if (/^[\],:{}\s]*$/.test(filtered)) { >+ /*jshint evil: true */ >+ return eval('(' + str + ')'); >+ } >+ throw new SyntaxError('Error parsing JSON, source is not valid.'); >+ }; > > /** > * jQuery.quoteString >- * Returns a string-repr of a string, escaping quotes intelligently. >- * Mostly a support function for toJSON. >- * Examples: >- * >>> jQuery.quoteString('apple') >- * "apple" >- * >- * >>> jQuery.quoteString('"Where are we going?", she asked.') >- * "\"Where are we going?\", she asked." >- */ >+ * Returns a string-repr of a string, escaping quotes intelligently. >+ * Mostly a support function for toJSON. >+ * Examples: >+ * >>> jQuery.quoteString('apple') >+ * "apple" >+ * >+ * >>> jQuery.quoteString('"Where are we going?", she asked.') >+ * "\"Where are we going?\", she asked." >+ */ > $.quoteString = function (str) { >- if (str.match(escape)) { >- return '"' + str.replace(escape, function (a) { >- var c = meta[a]; >- if (typeof c === 'string') { >- return c; >- } >- c = a.charCodeAt(); >- return '\\u00' + Math.floor(c / 16).toString(16) + (c % 16).toString(16); >- }) + '"'; >- } >- return '"' + str + '"'; >- }; >+ if (str.match(escape)) { >+ return '"' + str.replace(escape, function (a) { >+ var c = meta[a]; >+ if (typeof c === 'string') { >+ return c; >+ } >+ c = a.charCodeAt(); >+ return '\\u00' + Math.floor(c / 16).toString(16) + (c % 16).toString(16); >+ }) + '"'; >+ } >+ return '"' + str + '"'; >+ }; > > }(jQuery)); >-- >1.7.10.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 10858
:
20947
|
21476
|
21483
|
21646
|
21647
|
21966
|
21967
|
23541
|
23542
|
23543
|
23633
|
23781
|
23782
|
25427
|
25428
|
25429
|
25430
|
25431
|
25432
|
25433
|
25434
|
25435
|
25436
|
25450
|
25451
|
25452
|
25453
|
25454
|
25455
|
25456
|
25457
|
25512
|
25513
|
25514
|
25643
|
25644
|
25645
|
25646
|
25647
|
25648
|
25649
|
25650
|
25651
|
25652
|
25653
|
36757
|
38033
|
38405
|
39502
|
39938
|
41838
|
41839
|
41840
|
41841
|
41842
|
44903
|
56479
|
56480
|
56481
|
56482
|
67073
|
67074
|
67075
|
67076
|
67086
|
67089
|
67090
|
67092
|
67093
|
67974
|
67975
|
67976
|
67977
|
67978
|
71218
|
71219
|
71220
|
71221
|
71222
|
71223
|
91584
|
91585
|
91586
|
91587
|
91588
|
91589
|
94833