diff --git a/app/assets/javascripts/darkswarm/controllers/hub_node_controller.js.coffee b/app/assets/javascripts/darkswarm/controllers/hub_node_controller.js.coffee index 504a78cb32..7ffd7892dd 100644 --- a/app/assets/javascripts/darkswarm/controllers/hub_node_controller.js.coffee +++ b/app/assets/javascripts/darkswarm/controllers/hub_node_controller.js.coffee @@ -2,10 +2,9 @@ Darkswarm.controller "HubNodeCtrl", ($scope, Navigation, $location, $anchorScrol $scope.toggle = -> Navigation.navigate $scope.hub.path - $scope.active = -> + $scope.open = -> $location.path() == $scope.hub.path - if $scope.active() - console.log "scrolling baby" + if $scope.open() $anchorScroll() diff --git a/app/assets/javascripts/darkswarm/services/hubs.js.coffee b/app/assets/javascripts/darkswarm/services/hubs.js.coffee index d70a2941df..d5f201ad0e 100644 --- a/app/assets/javascripts/darkswarm/services/hubs.js.coffee +++ b/app/assets/javascripts/darkswarm/services/hubs.js.coffee @@ -1,4 +1,4 @@ -Darkswarm.factory 'Hubs', ($location, hubs) -> +Darkswarm.factory 'Hubs', ($location, hubs, $filter) -> new class Hubs constructor: -> - @hubs = hubs + @hubs = $filter('orderBy')(hubs, 'active', true) diff --git a/app/assets/stylesheets/darkswarm/branding.css.sass b/app/assets/stylesheets/darkswarm/branding.css.sass index 32cda3dfdd..ad2f94e710 100644 --- a/app/assets/stylesheets/darkswarm/branding.css.sass +++ b/app/assets/stylesheets/darkswarm/branding.css.sass @@ -1,3 +1,6 @@ $clr-strong: #8f1d45 $clr-soft: #f5e1e8 $clr-bright: #c23e6c + +$disabled-dark: #999 +$disabled-bright: #ccc diff --git a/app/assets/stylesheets/darkswarm/hub_node.css.sass b/app/assets/stylesheets/darkswarm/hub_node.css.sass index fc1f9228e3..7c810c9a0d 100644 --- a/app/assets/stylesheets/darkswarm/hub_node.css.sass +++ b/app/assets/stylesheets/darkswarm/hub_node.css.sass @@ -1,19 +1,22 @@ @import 'branding' +@import 'mixins' hub display: block + border: 1px solid transparent + + .active_table_row // Inherits from active_table + border: 1px solid transparent + &, & > a.row + display: block + strong color: $clr-strong - border: 1px solid transparent - &.closed - &:hover, &:active, &:focus - background: white - border: 1px solid $clr-strong + &.inactive, &.inactive strong + color: $disabled-dark &.open border: 1px solid $clr-strong - p - padding-top: 1em .active_table_row:first-child border-bottom: 1px solid $clr-strong .active_table_row:last-child @@ -27,11 +30,10 @@ hub margin: 0 -0.9375rem &, & * color: white + p + padding-top: 1em - .active_table_row // Inherits from active_table - border: 1px solid transparent - &, & > a.row - display: block - //border: 1px solid pink - //a.row .columns - //border-bottom: 1px solid pink + &.closed + &:hover, &:active, &:focus + background: white + border: 1px solid $clr-strong diff --git a/app/assets/stylesheets/darkswarm/mixins.sass b/app/assets/stylesheets/darkswarm/mixins.sass index 4b09f0e29e..c2ee907036 100644 --- a/app/assets/stylesheets/darkswarm/mixins.sass +++ b/app/assets/stylesheets/darkswarm/mixins.sass @@ -1,4 +1,5 @@ @import typography +@import branding @mixin big-input border: 1px solid #999 @@ -8,4 +9,4 @@ margin-bottom: 1.25em @mixin disabled - color: #ccc + color: $disabled-bright diff --git a/app/views/darkswarm/index.html.haml b/app/views/darkswarm/index.html.haml index 6208a61928..86f0341c52 100644 --- a/app/views/darkswarm/index.html.haml +++ b/app/views/darkswarm/index.html.haml @@ -8,7 +8,7 @@ #hubs{"ng-controller" => "HubsCtrl"} :javascript - angular.module('Darkswarm').value('hubs', #{render "shared/hubs"}) + angular.module('Darkswarm').value('hubs', #{render "json/hubs"}) .row .small-12.columns.text-center @@ -31,11 +31,11 @@ .small-12.columns .active_table %hub.row{"ng-repeat" => "hub in filteredHubs = (hubs | filterHubs:query)", - "ng-class" => "{'closed' : !active(), 'open' : active()}", + "ng-class" => "{'closed' : !open(), 'open' : open(), 'inactive' : !hub.active}", "ng-controller" => "HubNodeCtrl", id: "{{hub.path}}"} .small-12.columns - .row.active_table_row{"ng-click" => "toggle()", "ng-class" => "{'closed' : !active()}"} + .row.active_table_row{"ng-click" => "toggle()", "ng-class" => "{'closed' : !open()}"} .columns.small-4 %strong {{ hub.name }} .columns.small-3 @@ -45,9 +45,9 @@ .columns.small-3 Orders closing when? .columns.small-1.text-right - %i{"ng-class" => "{'fi-arrow-down' : !open, 'fi-arrow-up' : open}"} + %i{"ng-class" => "{'fi-arrow-down' : !open(), 'fi-arrow-up' : open()}"} - .row.active_table_row{"ng-show" => "active()"} + .row.active_table_row{"ng-show" => "open()"} .columns.small-4 %strong Shop for %p @@ -66,7 +66,7 @@ %li Shiny Olives %li Love in the Time of Cholera - .row.active_table_row{"ng-show" => "active()"} + .row.active_table_row{"ng-show" => "open()"} .columns.small-11 %a{"bo-href" => "hub.path"} Shop at diff --git a/app/views/shared/_hubs.rabl b/app/views/json/_hubs.rabl similarity index 77% rename from app/views/shared/_hubs.rabl rename to app/views/json/_hubs.rabl index 754fac0c82..ddbdbb6203 100644 --- a/app/views/shared/_hubs.rabl +++ b/app/views/json/_hubs.rabl @@ -20,13 +20,9 @@ node :path do |hub| shop_enterprise_path(hub) end -#node :active do |hub| - ##@active_distributors.include?(hub) -#end - -#child :shipping_methods do - #attributes :name, :require_ship_address -#end +node :active do |hub| + @active_distributors.include?(hub) +end # ALL PRODUCERS # diff --git a/app/views/modals/_learn_more.html.haml b/app/views/modals/_learn_more.html.haml new file mode 100644 index 0000000000..e69de29bb2