diff --git a/public/cache.manifest b/public/cache.manifest index 3f628379..25a2e009 100644 --- a/public/cache.manifest +++ b/public/cache.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -#Date Sun Oct 13 2013 23:45:27 +#Date Mon Oct 14 2013 00:32:24 CACHE: index.html diff --git a/public/res-min/main.js b/public/res-min/main.js index f6457756..16b90557 100644 --- a/public/res-min/main.js +++ b/public/res-min/main.js @@ -14941,7 +14941,7 @@ define("config", function() {}), define("storage", [ "underscore", "utils" ], fu var i = (n.dataTransfer || n.target).files; e(".modal-import-harddrive-markdown, .modal-import-harddrive-html").modal("hide"), t.each(i, function(t) { - if (!e(n.target).is("#wmd-input *") || !t.name.match(/.(jpe?g|png|gif)$/)) { + if (!e(n.target).is("#wmd-input *") || !t.name.match(/.(jpe?g|png|gif)$/i)) { var i = new FileReader(); i.onload = function(e) { return function(t) { @@ -26924,30 +26924,30 @@ if (hljs.LANGUAGES.glsl = function(e) { } function l(t, i) { t.onRun(function() { - function r() { + function o() { n.redirectConfirm("You are being redirected to Google authorization page.", function() { - t.chain(s); + t.chain(r); }, function() { t.error(new Error("Operation canceled.")); }); } - function s() { - l === !1 && (t.timeout = ASYNC_TASK_LONG_TIMEOUT), gapi.auth.authorize({ + function r() { + s === !1 && (t.timeout = ASYNC_TASK_LONG_TIMEOUT); + var n = e.chain(g).pick(e.keys(h).concat([ i ])).flatten().value(); + gapi.auth.authorize({ client_id: GOOGLE_CLIENT_ID, - scope: a, - immediate: l + scope: n, + immediate: s }, function(e) { gapi.client.load("drive", "v2", function() { - return !e || e.error ? d === !0 && l === !0 ? (l = !1, t.chain(r), void 0) : (t.error(new Error("Access to Google account is not authorized.")), + return !e || e.error ? d === !0 && s === !0 ? (s = !1, t.chain(o), void 0) : (t.error(new Error("Access to Google account is not authorized.")), void 0) : (h[i] = !0, t.chain(), void 0); }); }); } if (e.has(h, i)) return t.chain(), void 0; - var a = void 0; - "gdrive" == i && o.gdriveFullAccess === !0 ? a = [ "https://www.googleapis.com/auth/drive.install", "https://www.googleapis.com/auth/drive" ] : "gdrive" == i && o.gdriveFullAccess === !1 ? a = [ "https://www.googleapis.com/auth/drive.install", "https://www.googleapis.com/auth/drive.file" ] : "blogger" == i ? a = [ "https://www.googleapis.com/auth/blogger" ] : "picasa" == i && (a = [ "https://picasaweb.google.com/data/" ]); - var l = !0; - t.chain(s); + var s = !0; + t.chain(r); }); } function c(e, t) { @@ -26963,7 +26963,7 @@ if (hljs.LANGUAGES.glsl = function(e) { } function u(e) { e.onRun(function() { - return g === !0 ? (e.chain(), void 0) : (t.ajax({ + return m === !0 ? (e.chain(), void 0) : (t.ajax({ url: "//www.google.com/jsapi", data: { key: GOOGLE_API_KEY @@ -26975,7 +26975,7 @@ if (hljs.LANGUAGES.glsl = function(e) { callback: function() { e.chain(); } - }), g = !0; + }), m = !0; }).fail(function(t) { var n = { code: t.status, @@ -26988,7 +26988,13 @@ if (hljs.LANGUAGES.glsl = function(e) { var d = !1, h = {}, p = {}, f = !1; r.addListener("onOfflineChanged", function(e) { f = e; - }), p.forceGdriveAuthenticate = function() { + }); + var g = { + gdrive: [ "https://www.googleapis.com/auth/drive.install", o.gdriveFullAccess === !0 ? "https://www.googleapis.com/auth/drive" : "https://www.googleapis.com/auth/drive.file" ], + blogger: [ "https://www.googleapis.com/auth/blogger" ], + picasa: [ "https://picasaweb.google.com/data/" ] + }; + p.forceGdriveAuthenticate = function() { h = e.omit(h, "gdrive"); var t = new s(); a(t), l(t, "gdrive"), t.enqueue(); @@ -27206,7 +27212,7 @@ if (hljs.LANGUAGES.glsl = function(e) { n(e); }), r.enqueue(); }; - var g = !1; + var m = !1; return p.picker = function(e, n) { function o() { void 0 !== l && (l.setVisible(!1), t(".modal-backdrop, .picker").remove()); @@ -28341,7 +28347,7 @@ if (hljs.LANGUAGES.glsl = function(e) { return o.addListener("onReady", function() { function n(n) { var o = (n.dataTransfer || n.target).files, r = t.first(o); - if (r.name.match(/.(jpe?g|png|gif)$/)) { + if (r.name.match(/.(jpe?g|png|gif)$/i)) { n.stopPropagation(), n.preventDefault(); var a = new FileReader(); a.onload = function() { diff --git a/public/res/extensions/dialogOpenHarddrive.js b/public/res/extensions/dialogOpenHarddrive.js index 1b01f4fd..f88dd735 100644 --- a/public/res/extensions/dialogOpenHarddrive.js +++ b/public/res/extensions/dialogOpenHarddrive.js @@ -30,7 +30,7 @@ define([ var files = (evt.dataTransfer || evt.target).files; $(".modal-import-harddrive-markdown, .modal-import-harddrive-html").modal("hide"); _.each(files, function(file) { - if($(evt.target).is("#wmd-input *") && file.name.match(/.(jpe?g|png|gif)$/)) { + if($(evt.target).is("#wmd-input *") && file.name.match(/.(jpe?g|png|gif)$/i)) { return; } var reader = new FileReader(); diff --git a/public/res/helpers/googleHelper.js b/public/res/helpers/googleHelper.js index 04319789..d88e0a84 100644 --- a/public/res/helpers/googleHelper.js +++ b/public/res/helpers/googleHelper.js @@ -53,35 +53,24 @@ define([ } // Try to authenticate with Oauth + var scopeMap = { + gdrive: [ + 'https://www.googleapis.com/auth/drive.install', + settings.gdriveFullAccess === true ? 'https://www.googleapis.com/auth/drive' : 'https://www.googleapis.com/auth/drive.file' + ], + blogger: [ + 'https://www.googleapis.com/auth/blogger' + ], + picasa: [ + 'https://picasaweb.google.com/data/' + ] + }; function authenticate(task, permission) { task.onRun(function() { if(_.has(permissionList, permission)) { task.chain(); return; } - var scopes = undefined; - if(permission == 'gdrive' && settings.gdriveFullAccess === true) { - scopes = [ - "https://www.googleapis.com/auth/drive.install", - "https://www.googleapis.com/auth/drive", - ]; - } - else if(permission == 'gdrive' && settings.gdriveFullAccess === false) { - scopes = [ - "https://www.googleapis.com/auth/drive.install", - "https://www.googleapis.com/auth/drive.file", - ]; - } - else if(permission == 'blogger') { - scopes = [ - "https://www.googleapis.com/auth/blogger", - ]; - } - else if(permission == 'picasa') { - scopes = [ - "https://picasaweb.google.com/data/", - ]; - } var immediate = true; function oauthRedirect() { core.redirectConfirm('You are being redirected to Google authorization page.', function() { @@ -94,9 +83,10 @@ define([ if(immediate === false) { task.timeout = ASYNC_TASK_LONG_TIMEOUT; } + var scopeList = _.chain(scopeMap).pick(_.keys(permissionList).concat([permission])).flatten().value(); gapi.auth.authorize({ 'client_id': GOOGLE_CLIENT_ID, - 'scope': scopes, + 'scope': scopeList, 'immediate': immediate }, function(authResult) { gapi.client.load('drive', 'v2', function() { diff --git a/public/res/mediaImporter.js b/public/res/mediaImporter.js index ef14e788..de66719c 100644 --- a/public/res/mediaImporter.js +++ b/public/res/mediaImporter.js @@ -38,7 +38,7 @@ define([ function handleImgImport(evt) { var files = (evt.dataTransfer || evt.target).files; var file = _.first(files); - if(file.name.match(/.(jpe?g|png|gif)$/)) { + if(file.name.match(/.(jpe?g|png|gif)$/i)) { evt.stopPropagation(); evt.preventDefault(); var reader = new FileReader();