From 2008d0755cacc61e385c8899447083e278a4e762 Mon Sep 17 00:00:00 2001 From: Lars Jung Date: Wed, 6 Jul 2016 16:15:13 +0200 Subject: [PATCH] Clean code. --- package.json | 6 +- src/_h5ai/public/js/lib/ext/preview/index.js | 5 ++ .../js/lib/ext/{ => preview}/preview-aud.js | 87 ++++++++++--------- .../js/lib/ext/{ => preview}/preview-img.js | 10 +-- .../js/lib/ext/{ => preview}/preview-txt.js | 8 +- .../js/lib/ext/{ => preview}/preview-vid.js | 8 +- .../js/lib/ext/{ => preview}/preview.js | 10 +-- src/_h5ai/public/js/lib/main/index.js | 4 - 8 files changed, 70 insertions(+), 68 deletions(-) create mode 100644 src/_h5ai/public/js/lib/ext/preview/index.js rename src/_h5ai/public/js/lib/ext/{ => preview}/preview-aud.js (51%) rename src/_h5ai/public/js/lib/ext/{ => preview}/preview-img.js (93%) rename src/_h5ai/public/js/lib/ext/{ => preview}/preview-txt.js (95%) rename src/_h5ai/public/js/lib/ext/{ => preview}/preview-vid.js (94%) rename src/_h5ai/public/js/lib/ext/{ => preview}/preview.js (96%) diff --git a/package.json b/package.json index 5148c610..2e724519 100644 --- a/package.json +++ b/package.json @@ -16,9 +16,9 @@ "devDependencies": { "babel-loader": "6.2.4", "babel-preset-es2015": "6.9.0", - "eslint": "3.0.0", - "ghu": "0.6.0", - "scar": "0.11.0" + "eslint": "3.0.1", + "ghu": "0.7.0", + "scar": "0.13.0" }, "engines": { "node": ">=6.0.0" diff --git a/src/_h5ai/public/js/lib/ext/preview/index.js b/src/_h5ai/public/js/lib/ext/preview/index.js new file mode 100644 index 00000000..26c9f4e0 --- /dev/null +++ b/src/_h5ai/public/js/lib/ext/preview/index.js @@ -0,0 +1,5 @@ +require('./preview'); +require('./preview-aud'); +require('./preview-img'); +require('./preview-txt'); +require('./preview-vid'); diff --git a/src/_h5ai/public/js/lib/ext/preview-aud.js b/src/_h5ai/public/js/lib/ext/preview/preview-aud.js similarity index 51% rename from src/_h5ai/public/js/lib/ext/preview-aud.js rename to src/_h5ai/public/js/lib/ext/preview/preview-aud.js index 5d76b9f1..812abf0c 100644 --- a/src/_h5ai/public/js/lib/ext/preview-aud.js +++ b/src/_h5ai/public/js/lib/ext/preview/preview-aud.js @@ -1,8 +1,8 @@ -const {each, includes, compact, dom} = require('../util'); -const {win} = require('../globals'); -const event = require('../core/event'); -const format = require('../core/format'); -const allsettings = require('../core/settings'); +const {each, includes, compact, dom} = require('../../util'); +const {win} = require('../../globals'); +const event = require('../../core/event'); +const format = require('../../core/format'); +const allsettings = require('../../core/settings'); const preview = require('./preview'); const settings = Object.assign({ @@ -18,62 +18,63 @@ const preloadAudio = (src, callback) => { .attr('src', src); }; +const onAdjustSize = () => { + const $audio = dom('#pv-aud-audio'); + if (!$audio.length) { + return; + } + + const elContent = dom('#pv-content')[0]; + const contentW = elContent.offsetWidth; + const contentH = elContent.offsetHeight; + const audioW = $audio[0].offsetWidth; + const audioH = $audio[0].offsetHeight; + + $audio.css({ + left: (contentW - audioW) * 0.5 + 'px', + top: (contentH - audioH) * 0.5 + 'px' + }); +}; + const onEnter = (items, idx) => { const currentItems = items; let currentIdx = idx; let currentItem = items[idx]; + let spinnerTimeout; - const onAdjustSize = () => { - const $content = dom('#pv-content'); - const $audio = dom('#pv-aud-audio'); + const updateMeta = () => { + preview.setLabels([ + currentItem.label, + format.formatDate(dom('#pv-aud-audio')[0].duration * 1000, 'm:ss') + ]); - if ($audio.length) { - const contentW = $content[0].offsetWidth; - const contentH = $content[0].offsetHeight; - const audioW = $audio[0].offsetWidth; - const audioH = $audio[0].offsetHeight; + preview.setIndex(currentIdx + 1, currentItems.length); + preview.setRawLink(currentItem.absHref); + }; - $audio.css({ - left: (contentW - audioW) * 0.5 + 'px', - top: (contentH - audioH) * 0.5 + 'px' - }); + const onReady = $preloadedContent => { + win.clearTimeout(spinnerTimeout); + preview.showSpinner(false); - preview.setLabels([ - currentItem.label, - format.formatDate($audio[0].duration * 1000, 'm:ss') - ]); - } + dom('#pv-content') + .hide() + .clr() + .app($preloadedContent.attr('id', 'pv-aud-audio')) + .show(); + + updateMeta(); + onAdjustSize(); }; const onIdxChange = rel => { currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length; currentItem = currentItems[currentIdx]; - const spinnerTimeout = win.setTimeout(() => preview.showSpinner(true), 200); + spinnerTimeout = win.setTimeout(() => preview.showSpinner(true), 200); if (dom('#pv-aud-audio').length) { dom('#pv-aud-audio')[0].pause(); } - - const updateMeta = () => { - onAdjustSize(); - preview.setIndex(currentIdx + 1, currentItems.length); - preview.setRawLink(currentItem.absHref); - }; - - const swap = nuContent => { - dom('#pv-content').clr().app(nuContent.attr('id', 'pv-aud-audio')).show(); - updateMeta(); - }; - - const onReady = $preloadedContent => { - win.clearTimeout(spinnerTimeout); - preview.showSpinner(false); - - dom('#pv-content').hide(); - swap($preloadedContent); - }; - preloadAudio(currentItem.absHref, onReady); }; diff --git a/src/_h5ai/public/js/lib/ext/preview-img.js b/src/_h5ai/public/js/lib/ext/preview/preview-img.js similarity index 93% rename from src/_h5ai/public/js/lib/ext/preview-img.js rename to src/_h5ai/public/js/lib/ext/preview/preview-img.js index fd3bf561..527f199d 100644 --- a/src/_h5ai/public/js/lib/ext/preview-img.js +++ b/src/_h5ai/public/js/lib/ext/preview/preview-img.js @@ -1,8 +1,8 @@ -const {each, includes, compact, dom} = require('../util'); -const {win} = require('../globals'); -const server = require('../server'); -const event = require('../core/event'); -const allsettings = require('../core/settings'); +const {each, includes, compact, dom} = require('../../util'); +const {win} = require('../../globals'); +const server = require('../../server'); +const event = require('../../core/event'); +const allsettings = require('../../core/settings'); const preview = require('./preview'); const settings = Object.assign({ diff --git a/src/_h5ai/public/js/lib/ext/preview-txt.js b/src/_h5ai/public/js/lib/ext/preview/preview-txt.js similarity index 95% rename from src/_h5ai/public/js/lib/ext/preview-txt.js rename to src/_h5ai/public/js/lib/ext/preview/preview-txt.js index 377de3f7..5c595e5f 100644 --- a/src/_h5ai/public/js/lib/ext/preview-txt.js +++ b/src/_h5ai/public/js/lib/ext/preview/preview-txt.js @@ -1,7 +1,7 @@ -const {each, keys, includes, compact, dom} = require('../util'); -const {win, marked, prism} = require('../globals'); -const event = require('../core/event'); -const allsettings = require('../core/settings'); +const {each, keys, includes, compact, dom} = require('../../util'); +const {win, marked, prism} = require('../../globals'); +const event = require('../../core/event'); +const allsettings = require('../../core/settings'); const preview = require('./preview'); diff --git a/src/_h5ai/public/js/lib/ext/preview-vid.js b/src/_h5ai/public/js/lib/ext/preview/preview-vid.js similarity index 94% rename from src/_h5ai/public/js/lib/ext/preview-vid.js rename to src/_h5ai/public/js/lib/ext/preview/preview-vid.js index b6c41d57..e3a0b8d1 100644 --- a/src/_h5ai/public/js/lib/ext/preview-vid.js +++ b/src/_h5ai/public/js/lib/ext/preview/preview-vid.js @@ -1,7 +1,7 @@ -const {each, includes, compact, dom} = require('../util'); -const {win} = require('../globals'); -const event = require('../core/event'); -const allsettings = require('../core/settings'); +const {each, includes, compact, dom} = require('../../util'); +const {win} = require('../../globals'); +const event = require('../../core/event'); +const allsettings = require('../../core/settings'); const preview = require('./preview'); const settings = Object.assign({ diff --git a/src/_h5ai/public/js/lib/ext/preview.js b/src/_h5ai/public/js/lib/ext/preview/preview.js similarity index 96% rename from src/_h5ai/public/js/lib/ext/preview.js rename to src/_h5ai/public/js/lib/ext/preview/preview.js index a43fd8b3..5dce6fa4 100644 --- a/src/_h5ai/public/js/lib/ext/preview.js +++ b/src/_h5ai/public/js/lib/ext/preview/preview.js @@ -1,8 +1,8 @@ -const {each, isFn, isNum, dom} = require('../util'); -const {win} = require('../globals'); -const resource = require('../core/resource'); -const allsettings = require('../core/settings'); -const store = require('../core/store'); +const {each, isFn, isNum, dom} = require('../../util'); +const {win} = require('../../globals'); +const resource = require('../../core/resource'); +const allsettings = require('../../core/settings'); +const store = require('../../core/store'); const settings = Object.assign({ diff --git a/src/_h5ai/public/js/lib/main/index.js b/src/_h5ai/public/js/lib/main/index.js index c174663d..e3864749 100644 --- a/src/_h5ai/public/js/lib/main/index.js +++ b/src/_h5ai/public/js/lib/main/index.js @@ -13,10 +13,6 @@ require('../ext/info'); require('../ext/l10n'); require('../ext/piwik-analytics'); require('../ext/preview'); -require('../ext/preview-aud'); -require('../ext/preview-img'); -require('../ext/preview-txt'); -require('../ext/preview-vid'); require('../ext/search'); require('../ext/select'); require('../ext/sort');