From 71ef656eb8c50293293639c7a6525b653829b4a8 Mon Sep 17 00:00:00 2001 From: lone-cloud Date: Sun, 15 Nov 2015 18:44:58 -0800 Subject: [PATCH] updating packages, some styling, background music play --- .watchmanconfig | 2 +- app/app.js | 4 +-- app/index.html | 4 +-- app/pods/components/hue-controls/component.js | 19 +++++++++-- app/pods/components/huegasm-app/component.js | 16 ++++++---- app/pods/components/huegasm-app/template.hbs | 10 ++---- app/pods/components/music-tab/component.js | 3 +- app/router.js | 3 +- app/styles/app.scss | 18 ++++------- app/transitions.js | 5 --- bower.json | 20 ++++++------ config/environment.js | 1 + ember-cli-build.js | 2 ++ package.json | 30 +++++++++--------- public/assets/images/intro.jpg | Bin 67287 -> 0 bytes tests/helpers/destroy-app.js | 5 +++ tests/helpers/module-for-acceptance.js | 23 ++++++++++++++ tests/helpers/resolver.js | 2 +- tests/helpers/start-app.js | 6 ++-- tests/index.html | 5 +-- 20 files changed, 107 insertions(+), 71 deletions(-) delete mode 100644 app/transitions.js delete mode 100644 public/assets/images/intro.jpg create mode 100644 tests/helpers/destroy-app.js create mode 100644 tests/helpers/module-for-acceptance.js diff --git a/.watchmanconfig b/.watchmanconfig index 5e9462c..e7834e3 100644 --- a/.watchmanconfig +++ b/.watchmanconfig @@ -1,3 +1,3 @@ { - "ignore_dirs": ["tmp"] + "ignore_dirs": ["tmp", "dist"] } diff --git a/app/app.js b/app/app.js index 8d66b95..8b234d6 100644 --- a/app/app.js +++ b/app/app.js @@ -3,14 +3,14 @@ import Resolver from 'ember/resolver'; import loadInitializers from 'ember/load-initializers'; import config from './config/environment'; -var App; +let App; Ember.MODEL_FACTORY_INJECTIONS = true; App = Ember.Application.extend({ modulePrefix: config.modulePrefix, podModulePrefix: config.podModulePrefix, - Resolver: Resolver + Resolver }); loadInitializers(App, config.modulePrefix); diff --git a/app/index.html b/app/index.html index 25bc95e..6757df4 100644 --- a/app/index.html +++ b/app/index.html @@ -4,7 +4,7 @@ Huegasm - + @@ -36,7 +36,7 @@ - + {{content-for 'head-footer'}} diff --git a/app/pods/components/hue-controls/component.js b/app/pods/components/hue-controls/component.js index 8e82714..26824cf 100644 --- a/app/pods/components/hue-controls/component.js +++ b/app/pods/components/hue-controls/component.js @@ -103,7 +103,7 @@ export default Em.Component.extend({ position: 'left' }, { - element: '#dimmerWrapper', + element: '#dimmer', intro: 'And that\'s it...Feel free to reach out to me through the link at the bottom of the page.
' + 'Hope you enjoy the application. ;)

' + 'TIP: click on the icon to switch to a darker theme.', @@ -138,7 +138,7 @@ export default Em.Component.extend({ if(beatDetectionAreaArrowIcon.hasClass('keyboard-arrow-down')){ beatDetectionAreaArrowIcon.removeClass('keyboard-arrow-down').addClass('keyboard-arrow-up'); } - } else if(element.id === 'dimmerWrapper'){ + } else if(element.id === 'dimmer'){ Em.$(document).click(); } }); @@ -155,6 +155,19 @@ export default Em.Component.extend({ } else { playerBottom.hide(); } + }, onExit = ()=>{ + var dimmer = Em.$('#dimmer'); + + onFinish(); + dimmer.popover({ + trigger: 'manual', + placement: 'top', + content: 'Click on this icon to toggle the dark theme.' + }).popover('show'); + + setTimeout(()=>{ + dimmer.popover('hide'); + }, 5000); }; // skip hidden/missing elements @@ -163,7 +176,7 @@ export default Em.Component.extend({ if(elem.html() === ''){ Em.$('.introjs-nextbutton').click(); } - }).onexit(onFinish).oncomplete(onFinish).start(); + }).onexit(onExit).oncomplete(onFinish).start(); } }, diff --git a/app/pods/components/huegasm-app/component.js b/app/pods/components/huegasm-app/component.js index 92e65b8..758b67f 100644 --- a/app/pods/components/huegasm-app/component.js +++ b/app/pods/components/huegasm-app/component.js @@ -21,12 +21,12 @@ export default Em.Component.extend({ ready: false, - dimmerOnClass: function(){ + dimmerOnClass: function () { var dimmerOn = this.get('dimmerOn'), storage = this.get('storage'), dimmerOnClass = null; - if(dimmerOn){ + if (dimmerOn) { Em.$('body').addClass('dimmerOn'); Em.$('html').addClass('dimmerOn'); dimmerOnClass = 'active'; @@ -43,18 +43,22 @@ export default Em.Component.extend({ init(){ this._super(); - var storage = new window.Locally.Store({ compress: true }); + var storage = new window.Locally.Store({compress: true}); this.set('storage', storage); - if(!Em.isNone(storage.get('huegasm.dimmerOn'))) { + if (!Em.isNone(storage.get('huegasm.dimmerOn'))) { this.set('dimmerOn', storage.get('huegasm.dimmerOn')); } - if(!Em.isEmpty(storage.get('huegasm.bridgeIp')) && !Em.isEmpty(storage.get('huegasm.bridgeUsername'))) { + if (!Em.isEmpty(storage.get('huegasm.bridgeIp')) && !Em.isEmpty(storage.get('huegasm.bridgeUsername'))) { this.setProperties({ bridgeIp: storage.get('huegasm.bridgeIp'), bridgeUsername: storage.get('huegasm.bridgeUsername') }); } - } + }, + + year: function () { + return new Date().getFullYear(); + }.property() }); diff --git a/app/pods/components/huegasm-app/template.hbs b/app/pods/components/huegasm-app/template.hbs index 713e1b1..160f674 100644 --- a/app/pods/components/huegasm-app/template.hbs +++ b/app/pods/components/huegasm-app/template.hbs @@ -6,11 +6,7 @@ {{else}}
Huegasm
-

Huegasm is a free web application for controlling your Philips Hue lights...oh and it's kind of awesome at syncing music with your lights.

- - - - +

Huegasm is a free web application for controlling your Philips Hue lights...oh and it's pretty awesome at synchronizing your music with your lights.

{{#paper-button raised=true primary=true action="isReady" class="goButton"}}Go!{{/paper-button}}
@@ -18,6 +14,6 @@ {{/if}} \ No newline at end of file diff --git a/app/pods/components/music-tab/component.js b/app/pods/components/music-tab/component.js index 91df417..6bef279 100644 --- a/app/pods/components/music-tab/component.js +++ b/app/pods/components/music-tab/component.js @@ -191,7 +191,7 @@ export default Em.Component.extend(helperMixin, visualizerMixin, { if(!Em.isNone(track) && !Em.isNone(track.offset())) { playListArea.animate({ - scrollTop: track.offset().top - playListArea.offset().top + playListArea.scrollTop() + scrollTop: track.offset().top - playListArea.offset().top + playListArea.scrollTop() - 30 }); } }, 1000); @@ -762,6 +762,7 @@ export default Em.Component.extend(helperMixin, visualizerMixin, { if(this.get('firstVisit')){ this.send('handleNewSoundCloudURL', 'https://soundcloud.com/mrsuicidesheep/tracks'); this.get('storage').set('huegasm.firstVisit', false); + this.sendAction(); } diff --git a/app/router.js b/app/router.js index ee31390..3bba78e 100644 --- a/app/router.js +++ b/app/router.js @@ -1,12 +1,11 @@ import Ember from 'ember'; import config from './config/environment'; -var Router = Ember.Router.extend({ +const Router = Ember.Router.extend({ location: config.locationType }); Router.map(function() { - this.route('404', {path:'/*path'}); }); export default Router; diff --git a/app/styles/app.scss b/app/styles/app.scss index 6ab3b52..393042d 100644 --- a/app/styles/app.scss +++ b/app/styles/app.scss @@ -24,13 +24,6 @@ body { position: static; } -#introPic { - display: block; - margin: 0 auto; - width: 100%; - max-width: 600px; -} - .introParagraph { margin-bottom: 30px; } @@ -289,13 +282,13 @@ md-list-item .md-no-style { } .colorpicker { - padding: 10px; + padding: 5px; background: rgba(0, 0, 0, 0.7); box-shadow: 5px 10px 15px 5px rgba(0, 0, 0, 0.3); color: #FFFFFF; position: absolute; - width: 275px; - height: 275px; + width: 266px; + height: 266px; right: 6px; top: -9px; z-index: 3; @@ -954,6 +947,9 @@ body.dimmerOn { #extraOptionsMenu:hover { background: rgba(0, 0, 0, 0.9); } + .popover-content { + color: black !important; + } } .power-settings-new.dimmerOn, @@ -971,7 +967,7 @@ body.dimmerOn { opacity: 0.9 !important; } -#dimmerWrapper { +#dimmer { position: absolute; left: -50px; bottom: -10px; diff --git a/app/transitions.js b/app/transitions.js deleted file mode 100644 index e70383f..0000000 --- a/app/transitions.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function(){ - this.transition( - this.use('crossFade') - ); -} diff --git a/bower.json b/bower.json index 6ebc520..f65dfd1 100644 --- a/bower.json +++ b/bower.json @@ -3,26 +3,26 @@ "dependencies": { "bootstrap-sass": "~3.3.5", "ember": "~2.1.0", - "ember-cli-shims": "ember-cli/ember-cli-shims#0.0.3", - "ember-cli-test-loader": "ember-cli-test-loader#0.1.3", + "ember-cli-shims": "0.0.6", + "ember-cli-test-loader": "0.2.1", "ember-data": "~2.1.0", - "ember-load-initializers": "ember-cli/ember-load-initializers#0.1.5", - "ember-qunit": "0.4.9", - "ember-qunit-notifications": "0.0.7", - "ember-resolver": "~0.1.18", + "ember-load-initializers": "0.1.7", + "ember-qunit": "0.4.16", + "ember-qunit-notifications": "0.1.0", + "ember-resolver": "~0.1.20", "hammerjs": "~2.0.4", "intro.js": "~1.1.1", "JavaScript-ID3-Reader": "https://github.com/aadsm/JavaScript-ID3-Reader.git", "jquery": "~2.1.4", "jquery-mousewheel": "~3.1.13", - "loader.js": "ember-cli/loader.js#3.2.0", + "loader.js": "ember-cli/loader.js#3.2.1", "locallyjs": "~0.3.2", "matchMedia": "~0.2.0", "nouislider": "^8.0.1", - "qunit": "~1.18.0" + "qunit": "~1.20.0", + "HackTimer": "https://github.com/turuslan/HackTimer.git#~1.0.0" }, "resolutions": { - "ember": "~2.1.0", - "jquery": "~2.1.4" + "ember": "~2.1.0" } } diff --git a/config/environment.js b/config/environment.js index 450800f..57ee2b0 100644 --- a/config/environment.js +++ b/config/environment.js @@ -20,6 +20,7 @@ module.exports = function(environment) { }, contentSecurityPolicy: { + 'child-src': "blob:", 'default-src': "'none'", 'script-src': "'self' 'unsafe-inline' connect.soundcloud.com www.google-analytics.com", 'font-src': "'self' fonts.gstatic.com", diff --git a/ember-cli-build.js b/ember-cli-build.js index 303947e..8cb6cde 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -7,9 +7,11 @@ module.exports = function(defaults) { app.import('vendor/dancer.js'); app.import('bower_components/bootstrap-sass/assets/javascripts/bootstrap/tooltip.js'); app.import('bower_components/bootstrap-sass/assets/javascripts/bootstrap/dropdown.js'); + app.import('bower_components/bootstrap-sass/assets/javascripts/bootstrap/popover.js'); app.import('bower_components/JavaScript-ID3-Reader/dist/id3-minimized.js'); app.import('bower_components/jquery-mousewheel/jquery.mousewheel.js'); app.import('bower_components/locallyjs/dist/locally.min.js'); + app.import('bower_components/HackTimer/HackTimer.js'); app.import('bower_components/intro.js/intro.js'); app.import('bower_components/intro.js/introjs.css'); diff --git a/package.json b/package.json index a867d7c..ff261dc 100644 --- a/package.json +++ b/package.json @@ -19,26 +19,26 @@ "author": "", "license": "MIT", "devDependencies": { - "broccoli-asset-rev": "^2.0.2", - "ember-cli": "1.13.8", - "ember-cli-app-version": "1.0.0", - "ember-cli-babel": "^5.0.0", + "broccoli-asset-rev": "^2.2.0", + "ember-cli": "^1.13.12", + "ember-cli-app-version": "^1.0.0", + "ember-cli-babel": "^5.1.5", "ember-cli-content-security-policy": "0.4.0", - "ember-cli-dependency-checker": "^1.0.0", - "ember-cli-htmlbars": "1.0.1", - "ember-cli-htmlbars-inline-precompile": "^0.3.0", - "ember-cli-ic-ajax": "0.2.1", - "ember-cli-inject-live-reload": "^1.3.0", + "ember-cli-dependency-checker": "^1.1.0", + "ember-cli-htmlbars": "^1.0.1", + "ember-cli-htmlbars-inline-precompile": "^0.3.1", + "ember-cli-ic-ajax": "0.2.4", + "ember-cli-inject-live-reload": "^1.3.1", "ember-cli-nouislider": "0.7.0", - "ember-cli-qunit": "1.0.3", + "ember-cli-qunit": "^1.0.4", "ember-cli-release": "0.2.8", - "ember-cli-sass": "5.0.1", - "ember-cli-sri": "^1.0.1", - "ember-cli-uglify": "^1.0.1", + "ember-cli-sass": "5.1.0", + "ember-cli-sri": "^1.1.0", + "ember-cli-uglify": "^1.2.0", "ember-cli-windows-addon": "^1.2.2", "ember-data": "2.1.0", - "ember-disable-proxy-controllers": "^1.0.0", - "ember-export-application-global": "^1.0.3", + "ember-disable-proxy-controllers": "^1.0.1", + "ember-export-application-global": "^1.0.4", "ember-modal-dialog": "0.8.2", "ember-notify": "^4.0.1", "ember-paper": "https://github.com/miguelcobain/ember-paper.git", diff --git a/public/assets/images/intro.jpg b/public/assets/images/intro.jpg deleted file mode 100644 index 1cce1d7544fc2376273f1deac6a274c25821297b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67287 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 Z7Kq)(e}%UEvz`0v6XZW5!IXc^{4ex?6%GIZ diff --git a/tests/helpers/destroy-app.js b/tests/helpers/destroy-app.js new file mode 100644 index 0000000..c3d4d1a --- /dev/null +++ b/tests/helpers/destroy-app.js @@ -0,0 +1,5 @@ +import Ember from 'ember'; + +export default function destroyApp(application) { + Ember.run(application, 'destroy'); +} diff --git a/tests/helpers/module-for-acceptance.js b/tests/helpers/module-for-acceptance.js new file mode 100644 index 0000000..ed23003 --- /dev/null +++ b/tests/helpers/module-for-acceptance.js @@ -0,0 +1,23 @@ +import { module } from 'qunit'; +import startApp from '../helpers/start-app'; +import destroyApp from '../helpers/destroy-app'; + +export default function(name, options = {}) { + module(name, { + beforeEach() { + this.application = startApp(); + + if (options.beforeEach) { + options.beforeEach.apply(this, arguments); + } + }, + + afterEach() { + destroyApp(this.application); + + if (options.afterEach) { + options.afterEach.apply(this, arguments); + } + } + }); +} diff --git a/tests/helpers/resolver.js b/tests/helpers/resolver.js index 28f4ece..ebfb4e4 100644 --- a/tests/helpers/resolver.js +++ b/tests/helpers/resolver.js @@ -1,7 +1,7 @@ import Resolver from 'ember/resolver'; import config from '../../config/environment'; -var resolver = Resolver.create(); +const resolver = Resolver.create(); resolver.namespace = { modulePrefix: config.modulePrefix, diff --git a/tests/helpers/start-app.js b/tests/helpers/start-app.js index 0f7aab1..e098f1d 100644 --- a/tests/helpers/start-app.js +++ b/tests/helpers/start-app.js @@ -3,12 +3,12 @@ import Application from '../../app'; import config from '../../config/environment'; export default function startApp(attrs) { - var application; + let application; - var attributes = Ember.merge({}, config.APP); + let attributes = Ember.merge({}, config.APP); attributes = Ember.merge(attributes, attrs); // use defaults, but you can override; - Ember.run(function() { + Ember.run(() => { application = Application.create(attributes); application.setupForTesting(); application.injectTestHelpers(); diff --git a/tests/index.html b/tests/index.html index 32ad896..7a4e8a7 100644 --- a/tests/index.html +++ b/tests/index.html @@ -18,13 +18,14 @@ {{content-for 'test-head-footer'}} - {{content-for 'body'}} {{content-for 'test-body'}} + - + + {{content-for 'body-footer'}}