From fb62232e85eb2dea45a927caf082aac4623d891a Mon Sep 17 00:00:00 2001 From: lone-cloud Date: Thu, 3 Sep 2015 15:11:35 -0700 Subject: [PATCH] Small push from work comp --- app/components/bridge-finder.js | 15 ++++++++-- app/styles/app.scss | 4 +++ app/templates/components/bridge-finder.hbs | 32 ++++++++++++++++------ 3 files changed, 40 insertions(+), 11 deletions(-) diff --git a/app/components/bridge-finder.js b/app/components/bridge-finder.js index 462e379..ed64abc 100644 --- a/app/components/bridge-finder.js +++ b/app/components/bridge-finder.js @@ -1,11 +1,15 @@ import Em from 'ember'; export default Em.Component.extend({ + classNames: ['container'], bridgeIp: null, bridgeUsername: null, bridgeFindStatus: null, + bridgeFindSuccess: Em.computed.equal('bridgeFindStatus', 'success'), + bridgeFindMultiple: Em.computed.equal('bridgeFindStatus', 'multiple'), + bridgeFindFail: Em.computed.equal('bridgeFindStatus', 'fail'), // 30 seconds bridgeUsernamePingMaxTime: 30000, @@ -29,12 +33,19 @@ export default Em.Component.extend({ var self = this; Em.$.get('https://www.meethue.com/api/nupnp', function (result, status) { - if (status === 'success') { + var bridgeFindStatus = 'fail'; + + if (status === 'success' && result.length === 1) { self.set('bridgeIp', result[0].internalipaddress); localStorage.setItem('huegasm.bridgeIp', result[0].internalipaddress); + bridgeFindStatus = 'success'; + } else if(result.length > 1) { + bridgeFindStatus = 'multiple'; + } else { + bridgeFindStatus = 'fail'; } - self.set('bridgeFindStatus', status); + self.set('bridgeFindStatus', bridgeFindStatus); }); } }, diff --git a/app/styles/app.scss b/app/styles/app.scss index 53d1f9b..b18c905 100644 --- a/app/styles/app.scss +++ b/app/styles/app.scss @@ -8,6 +8,10 @@ $playerHeight: 400px; $playListBackgroundColor: #1E1E1E; // BRIDGE FINDER +#finderContainer { + +} + #pressButtonBridgeImg { width: 200px; margin: 0 auto 0 auto; diff --git a/app/templates/components/bridge-finder.hbs b/app/templates/components/bridge-finder.hbs index 1825b5b..4103a02 100644 --- a/app/templates/components/bridge-finder.hbs +++ b/app/templates/components/bridge-finder.hbs @@ -1,14 +1,28 @@ -{{#unless bridgeUsername}} - {{#if bridgeIp}} +
+ {{#unless bridgeUsername}} + {{#if bridgeIp}} {{paper-progress-linear warn=true value=bridgeUserNamePingIntervalProgress}} {{#if isAuthenticating}} -

Press the button on your bridge to authenticate this application.

+

Your bridge IP is {{bridgeIp}}

+

Press the button on your bridge to authenticate this application.

{{else}} -

You failed to press the button. RETRY

+

You failed to press the button. RETRY

{{/if}} - {{else}} - {{paper-progress-circular}} -

Trying to find your bridge's IP.

- {{/if}} -{{/unless}} \ No newline at end of file + {{else}} + {{#unless bridgeFindStatus}} + {{paper-progress-circular}} +

Trying to find your bridge's IP.

+ {{/unless}} + + {{#if bridgeFindMultiple}} +

Found multiple bridge IPs.

+ {{else}} + {{#if bridgeFindFail}} + {{paper-progress-circular}} +

Trying to find your bridge's IP.

+ {{/if}} + {{/if}} + {{/if}} + {{/unless}} +
\ No newline at end of file