From dd6da5e2333023895a4a76786910f4bdf7e395c8 Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Wed, 29 Dec 2010 11:59:44 -0800 Subject: Add a minified version of json2.js from https://github.com/douglascrockford/JSON-js/blob/master/json2.js by Douglas Crockford at 8d11dc6950eafc7d01f141ce91d4f585caa29f3b. Fixes #1351. --- lib/json2-min.js | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 lib/json2-min.js (limited to 'lib') diff --git a/lib/json2-min.js b/lib/json2-min.js new file mode 100644 index 00000000..988ab6f2 --- /dev/null +++ b/lib/json2-min.js @@ -0,0 +1,39 @@ +/* + http://www.JSON.org/json2.js + 2010-11-17 + + Public Domain. + + NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK. + + See http://www.JSON.org/js.html +*/ + +if(!this.JSON){this.JSON={};} +(function(){"use strict";function f(n){return n<10?'0'+n:n;} +if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+ +f(this.getUTCMonth()+1)+'-'+ +f(this.getUTCDate())+'T'+ +f(this.getUTCHours())+':'+ +f(this.getUTCMinutes())+':'+ +f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};} +var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';} +function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);} +if(typeof rep==='function'){value=rep.call(holder,key,value);} +switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';} +gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i Date: Mon, 10 Jan 2011 14:36:23 -0800 Subject: Use CSS not JS to determine the full size of the full size overlay. Fixes #1541. --- lib/gallery.show_full_size.js | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) (limited to 'lib') diff --git a/lib/gallery.show_full_size.js b/lib/gallery.show_full_size.js index f617836b..9eb6f3af 100644 --- a/lib/gallery.show_full_size.js +++ b/lib/gallery.show_full_size.js @@ -8,12 +8,12 @@ var size = $.gallery_get_viewport_size(); $("body").append('
'); + 'style="border: none; margin: 0; padding: 0; background-color: #000; ' + + 'position: fixed; top: 0px; left: 0px; ' + + 'width: 100%; height: 100%; ' + + 'opacity: 0.7; filter: alpha(opacity=70); ' + + '-moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; ' + + '-moz-background-inline-policy: -moz-initial; z-index: 1001;"> '); var image_size; if (image_width >= size.width() - 6 || image_height >= size.height() - 6) { @@ -26,14 +26,14 @@ } $("body").append('
' + - '
'); + 'style="overflow: hidden; display: block; ' + + 'position: absolute; z-index: 1002; outline-color: -moz-use-text-color; ' + + 'outline-style: none; outline-width: 0px; ' + + 'height: ' + image_size.height + 'px; ' + + 'width: ' + image_size.width + 'px; ' + + 'top: ' + image_size.top + 'px; left: ' + image_size.left + 'px;">' + + ''); $().click(function() { $("#g-fullsize-overlay*").remove(); -- cgit v1.2.3 From 7eabf6c1c27c2c0e98895f663bb2853d72976e01 Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Tue, 11 Jan 2011 21:21:59 -0800 Subject: Use Math.round() instead of Number() to convert floating point numbers to integer. Fixes overflow probelm that causes #1490. Thanks to nkinkade for the fix. --- lib/gallery.common.js | 8 ++++---- lib/gallery.show_full_size.js | 6 ++++-- 2 files changed, 8 insertions(+), 6 deletions(-) (limited to 'lib') diff --git a/lib/gallery.common.js b/lib/gallery.common.js index 2dbd7c7c..697a33cb 100644 --- a/lib/gallery.common.js +++ b/lib/gallery.common.js @@ -171,10 +171,10 @@ // handle the case where the calculation is almost zero (2.14e-14) return { - top: Number((height - imageHeight) / 2), - left: Number((width - imageWidth) / 2), - width: Number(imageWidth), - height: Number(imageHeight) + top: Math.round((height - imageHeight) / 2), + left: Math.round((width - imageWidth) / 2), + width: Math.round(imageWidth), + height: Math.round(imageHeight) }; }; diff --git a/lib/gallery.show_full_size.js b/lib/gallery.show_full_size.js index 9eb6f3af..531d2a3a 100644 --- a/lib/gallery.show_full_size.js +++ b/lib/gallery.show_full_size.js @@ -20,8 +20,10 @@ image_size = $.gallery_auto_fit_window(image_width, image_height); } else { image_size = { - top: Number((height - image_height) / 2), left: Number((width - image_width) / 2), - width: Number(image_width), height: Number(image_height) + top: Math.round((height - image_height) / 2), + left: Math.round((width - image_width) / 2), + width: Math.round(image_width), + height: Math.round(image_height) }; } -- cgit v1.2.3