mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Merge remote-tracking branch 'origin/master' into HEAD
This commit is contained in:
5
Gemfile
5
Gemfile
@@ -9,7 +9,7 @@ gem 'i18n', '~> 0.6.11'
|
||||
gem 'nokogiri', '>= 1.6.7.1'
|
||||
|
||||
gem 'pg'
|
||||
gem 'spree', github: 'openfoodfoundation/spree', branch: '1-3-stable'
|
||||
gem 'spree', github: 'openfoodfoundation/spree', branch: 'spree-upgrade-step1c'
|
||||
gem 'spree_i18n', github: 'spree/spree_i18n', branch: '1-3-stable'
|
||||
gem 'spree_auth_devise', github: 'spree/spree_auth_devise', branch: '1-3-stable'
|
||||
|
||||
@@ -50,7 +50,7 @@ gem 'gmaps4rails'
|
||||
gem 'spinjs-rails'
|
||||
gem 'rack-ssl', :require => 'rack/ssl'
|
||||
gem 'custom_error_message', :github => 'jeremydurham/custom-err-msg'
|
||||
gem 'angularjs-file-upload-rails', '~> 1.1.0'
|
||||
gem 'angularjs-file-upload-rails', '~> 1.1.6'
|
||||
gem 'roadie-rails', '~> 1.0.3'
|
||||
gem 'figaro'
|
||||
gem 'blockenspiel'
|
||||
@@ -87,6 +87,7 @@ gem "foundation-rails"
|
||||
gem 'foundation_rails_helper', github: 'willrjmarshall/foundation_rails_helper', branch: "rails3"
|
||||
|
||||
gem 'jquery-rails'
|
||||
gem 'jquery-migrate-rails'
|
||||
gem 'css_splitter'
|
||||
|
||||
|
||||
|
||||
104
Gemfile.lock
104
Gemfile.lock
@@ -23,45 +23,48 @@ GIT
|
||||
|
||||
GIT
|
||||
remote: git://github.com/openfoodfoundation/spree.git
|
||||
revision: 6e3edfe40a5de8eba0095b2c5f3db9ea54c3afda
|
||||
branch: 1-3-stable
|
||||
revision: a4c439570b77afa50f9e36299811f293232bd281
|
||||
branch: spree-upgrade-step1c
|
||||
specs:
|
||||
spree (1.3.6.beta)
|
||||
spree_api (= 1.3.6.beta)
|
||||
spree_cmd (= 1.3.6.beta)
|
||||
spree_core (= 1.3.6.beta)
|
||||
spree_promo (= 1.3.6.beta)
|
||||
spree_sample (= 1.3.6.beta)
|
||||
spree_api (1.3.6.beta)
|
||||
spree_core (= 1.3.6.beta)
|
||||
spree (1.3.99)
|
||||
spree_api (= 1.3.99)
|
||||
spree_cmd (= 1.3.99)
|
||||
spree_core (= 1.3.99)
|
||||
spree_dash (= 1.3.99)
|
||||
spree_promo (= 1.3.99)
|
||||
spree_sample (= 1.3.99)
|
||||
spree_api (1.3.99)
|
||||
spree_core (= 1.3.99)
|
||||
versioncake (= 0.4.0)
|
||||
spree_cmd (1.3.6.beta)
|
||||
spree_cmd (1.3.99)
|
||||
thor (>= 0.14.6)
|
||||
spree_core (1.3.6.beta)
|
||||
activemerchant (~> 1.34)
|
||||
spree_core (1.3.99)
|
||||
activemerchant (~> 1.50.0)
|
||||
acts_as_list (= 0.1.4)
|
||||
awesome_nested_set (= 2.1.5)
|
||||
aws-sdk (~> 1.11.1)
|
||||
cancan (= 1.6.8)
|
||||
deface (>= 0.9.0)
|
||||
ffaker (~> 1.15.0)
|
||||
highline (= 1.6.18)
|
||||
jquery-rails (~> 2.2.0)
|
||||
highline (= 1.6.11)
|
||||
jquery-rails (~> 2.0)
|
||||
json (>= 1.5.5)
|
||||
kaminari (= 0.14.1)
|
||||
money (= 5.1.1)
|
||||
kaminari (= 0.13.0)
|
||||
money (= 5.0.0)
|
||||
paperclip (~> 3.0)
|
||||
rabl (= 0.7.2)
|
||||
rails (~> 3.2.16)
|
||||
rails (~> 3.2.13)
|
||||
ransack (= 0.7.2)
|
||||
select2-rails (= 3.5.9.3)
|
||||
state_machine (= 1.1.2)
|
||||
select2-rails (~> 3.2)
|
||||
state_machine (= 1.2.0)
|
||||
stringex (~> 1.3.2)
|
||||
truncate_html (~> 0.5.5)
|
||||
spree_promo (1.3.6.beta)
|
||||
spree_core (= 1.3.6.beta)
|
||||
spree_sample (1.3.6.beta)
|
||||
spree_core (= 1.3.6.beta)
|
||||
spree_dash (1.3.99)
|
||||
httparty (~> 0.8.1)
|
||||
spree_core (= 1.3.99)
|
||||
spree_promo (1.3.99)
|
||||
spree_core (= 1.3.99)
|
||||
spree_sample (1.3.99)
|
||||
spree_core (= 1.3.99)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/spree/deface.git
|
||||
@@ -123,8 +126,8 @@ GEM
|
||||
sprockets (~> 2.2.1)
|
||||
active_model_serializers (0.8.3)
|
||||
activemodel (>= 3.0)
|
||||
activemerchant (1.57.0)
|
||||
activesupport (>= 3.2.14, < 5.1)
|
||||
activemerchant (1.50.0)
|
||||
activesupport (>= 3.2.14, < 5.0.0)
|
||||
builder (>= 2.1.2, < 4.0.0)
|
||||
i18n (>= 0.6.9)
|
||||
nokogiri (~> 1.4)
|
||||
@@ -151,7 +154,7 @@ GEM
|
||||
railties (>= 3.1)
|
||||
sprockets (~> 2)
|
||||
tilt
|
||||
angularjs-file-upload-rails (1.1.0)
|
||||
angularjs-file-upload-rails (1.1.6)
|
||||
angularjs-rails (1.5.5)
|
||||
ansi (1.4.2)
|
||||
arel (3.0.3)
|
||||
@@ -167,9 +170,7 @@ GEM
|
||||
bcrypt-ruby (3.1.5)
|
||||
bcrypt (>= 3.1.3)
|
||||
blockenspiel (0.4.5)
|
||||
bugsnag (1.5.2)
|
||||
httparty (>= 0.6, < 1.0)
|
||||
multi_json (~> 1.0)
|
||||
bugsnag (4.1.0)
|
||||
builder (3.0.4)
|
||||
byebug (2.7.0)
|
||||
columnize (~> 0.3)
|
||||
@@ -189,7 +190,7 @@ GEM
|
||||
climate_control (0.0.3)
|
||||
activesupport (>= 3.0)
|
||||
cliver (0.3.2)
|
||||
cocaine (0.5.7)
|
||||
cocaine (0.5.8)
|
||||
climate_control (>= 0.0.3, < 1.0)
|
||||
coderay (1.0.9)
|
||||
coffee-rails (3.2.2)
|
||||
@@ -404,12 +405,12 @@ GEM
|
||||
zeus
|
||||
haml (4.0.4)
|
||||
tilt
|
||||
highline (1.6.18)
|
||||
highline (1.6.11)
|
||||
hike (1.2.3)
|
||||
http_parser.rb (0.5.3)
|
||||
httparty (0.13.1)
|
||||
json (~> 1.8)
|
||||
multi_xml (>= 0.5.2)
|
||||
httparty (0.8.3)
|
||||
multi_json (~> 1.0)
|
||||
multi_xml
|
||||
i18n (0.6.11)
|
||||
immigrant (0.1.6)
|
||||
activerecord (>= 3.0)
|
||||
@@ -417,16 +418,18 @@ GEM
|
||||
inflecto (0.0.2)
|
||||
ipaddress (0.8.0)
|
||||
journey (1.0.4)
|
||||
jquery-rails (2.2.2)
|
||||
jquery-migrate-rails (1.2.1)
|
||||
jquery-rails (2.3.0)
|
||||
railties (>= 3.0, < 5.0)
|
||||
thor (>= 0.14, < 2.0)
|
||||
json (1.8.3)
|
||||
json_spec (1.1.1)
|
||||
multi_json (~> 1.0)
|
||||
rspec (~> 2.0)
|
||||
kaminari (0.14.1)
|
||||
kaminari (0.13.0)
|
||||
actionpack (>= 3.0.0)
|
||||
activesupport (>= 3.0.0)
|
||||
railties (>= 3.0.0)
|
||||
kgio (2.9.3)
|
||||
knapsack (1.5.1)
|
||||
rake
|
||||
@@ -449,8 +452,9 @@ GEM
|
||||
mini_portile2 (2.0.0)
|
||||
momentjs-rails (2.5.1)
|
||||
railties (>= 3.1)
|
||||
money (5.1.1)
|
||||
i18n (~> 0.6.0)
|
||||
money (5.0.0)
|
||||
i18n (~> 0.4)
|
||||
json
|
||||
multi_json (1.12.1)
|
||||
multi_xml (0.5.5)
|
||||
newrelic_rpm (3.12.0.288)
|
||||
@@ -494,7 +498,7 @@ GEM
|
||||
activesupport (>= 2.3.14)
|
||||
multi_json (~> 1.0)
|
||||
rack (1.4.7)
|
||||
rack-cache (1.2)
|
||||
rack-cache (1.6.1)
|
||||
rack (>= 0.4)
|
||||
rack-livereload (0.3.15)
|
||||
rack
|
||||
@@ -521,7 +525,7 @@ GEM
|
||||
rdoc (~> 3.4)
|
||||
thor (>= 0.14.6, < 2.0)
|
||||
raindrops (0.13.0)
|
||||
rake (10.4.2)
|
||||
rake (11.1.2)
|
||||
ransack (0.7.2)
|
||||
actionpack (~> 3.0)
|
||||
activerecord (~> 3.0)
|
||||
@@ -571,7 +575,7 @@ GEM
|
||||
railties (~> 3.2.0)
|
||||
sass (>= 3.1.10)
|
||||
tilt (~> 1.3)
|
||||
select2-rails (3.5.9.3)
|
||||
select2-rails (3.5.10)
|
||||
thor (~> 0.14)
|
||||
shoulda-matchers (1.1.0)
|
||||
activesupport (>= 3.0.0)
|
||||
@@ -583,14 +587,14 @@ GEM
|
||||
multi_json (~> 1.0)
|
||||
rack (~> 1.0)
|
||||
tilt (~> 1.1, != 1.3.0)
|
||||
state_machine (1.1.2)
|
||||
state_machine (1.2.0)
|
||||
stringex (1.3.3)
|
||||
therubyracer (0.12.0)
|
||||
libv8 (~> 3.16.14.0)
|
||||
ref
|
||||
thor (0.19.1)
|
||||
tilt (1.4.1)
|
||||
timecop (0.6.2.2)
|
||||
timecop (0.8.1)
|
||||
timers (1.1.0)
|
||||
treetop (1.4.15)
|
||||
polyglot
|
||||
@@ -601,7 +605,7 @@ GEM
|
||||
sprockets (>= 2.0.0)
|
||||
turn (0.8.3)
|
||||
ansi
|
||||
tzinfo (0.3.44)
|
||||
tzinfo (0.3.49)
|
||||
uglifier (2.7.1)
|
||||
execjs (>= 0.3.0)
|
||||
json (>= 1.8.0)
|
||||
@@ -645,7 +649,7 @@ DEPENDENCIES
|
||||
acts-as-taggable-on (~> 3.4)
|
||||
andand
|
||||
angular-rails-templates (~> 0.2.0)
|
||||
angularjs-file-upload-rails (~> 1.1.0)
|
||||
angularjs-file-upload-rails (~> 1.1.6)
|
||||
angularjs-rails (= 1.5.5)
|
||||
atomic
|
||||
awesome_print
|
||||
@@ -682,6 +686,7 @@ DEPENDENCIES
|
||||
haml
|
||||
i18n (~> 0.6.11)
|
||||
immigrant
|
||||
jquery-migrate-rails
|
||||
jquery-rails
|
||||
json_spec
|
||||
knapsack
|
||||
@@ -728,5 +733,8 @@ DEPENDENCIES
|
||||
wicked_pdf
|
||||
wkhtmltopdf-binary
|
||||
|
||||
RUBY VERSION
|
||||
ruby 2.1.5p273
|
||||
|
||||
BUNDLED WITH
|
||||
1.12.5
|
||||
1.13.6
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
//
|
||||
|
||||
//= require jquery
|
||||
//= require jquery-migrate-min
|
||||
//= require jquery_ujs
|
||||
//= require jquery-ui
|
||||
//= require shared/jquery-ui-timepicker-addon
|
||||
@@ -36,6 +37,7 @@
|
||||
//= require ./order_cycles/order_cycles
|
||||
//= require ./payment_methods/payment_methods
|
||||
//= require ./products/products
|
||||
//= require ./resources/resources
|
||||
//= require ./shipping_methods/shipping_methods
|
||||
//= require ./side_menu/side_menu
|
||||
//= require ./tag_rules/tag_rules
|
||||
|
||||
@@ -22,7 +22,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
|
||||
|
||||
|
||||
$scope.producers = producers
|
||||
$scope.taxons = Taxons.taxons
|
||||
$scope.taxons = Taxons.all
|
||||
$scope.tax_categories = tax_categories
|
||||
$scope.filterProducers = [{id: "0", name: ""}].concat $scope.producers
|
||||
$scope.filterTaxons = [{id: "0", name: ""}].concat $scope.taxons
|
||||
|
||||
@@ -3,8 +3,8 @@ angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filt
|
||||
$scope.availableCountries = availableCountries
|
||||
$scope.RequestMonitor = RequestMonitor
|
||||
$scope.submitAll = pendingChanges.submitAll
|
||||
$scope.add = Customers.add
|
||||
$scope.customerLimit = 20
|
||||
$scope.customers = Customers.all
|
||||
$scope.columns = Columns.columns
|
||||
|
||||
$scope.confirmRefresh = (event) ->
|
||||
@@ -16,7 +16,6 @@ angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filt
|
||||
Customers.index({enterprise_id: $scope.shop_id}).then (data) ->
|
||||
pendingChanges.removeAll()
|
||||
$scope.customers_form.$setPristine()
|
||||
$scope.customers = data
|
||||
|
||||
$scope.shop_id = shops[0].id if shops.length == 1
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ angular.module("admin.enterprises")
|
||||
|
||||
# Provide a callback for generating warning messages displayed before leaving the page. This is passed in
|
||||
# from a directive "nav-check" in the page - if we pass it here it will be called in the test suite,
|
||||
# and on all new uses of this contoller, and we might not want that .
|
||||
# and on all new uses of this contoller, and we might not want that.
|
||||
enterpriseNavCallback = ->
|
||||
if $scope.Enterprise.$dirty
|
||||
"Your changes to the enterprise are not saved yet."
|
||||
|
||||
@@ -6,7 +6,6 @@ angular.module("admin.enterprises")
|
||||
|
||||
$scope.menu.setItems [
|
||||
{ name: 'primary_details', label: t('primary_details'), icon_class: "icon-home" }
|
||||
{ name: 'users', label: t('users'), icon_class: "icon-user" }
|
||||
{ name: 'address', label: t('address'), icon_class: "icon-map-marker" }
|
||||
{ name: 'contact', label: t('contact'), icon_class: "icon-phone" }
|
||||
{ name: 'social', label: t('social'), icon_class: "icon-twitter" }
|
||||
@@ -20,11 +19,11 @@ angular.module("admin.enterprises")
|
||||
{ name: 'inventory_settings', label: t('inventory_settings'), icon_class: "icon-list-ol", show: "enterpriseIsShop()" }
|
||||
{ name: 'tag_rules', label: t('tag_rules'), icon_class: "icon-random", show: "enterpriseIsShop()" }
|
||||
{ name: 'shop_preferences', label: t('shop_preferences'), icon_class: "icon-shopping-cart", show: "enterpriseIsShop()" }
|
||||
{ name: 'users', label: t('users'), icon_class: "icon-user" }
|
||||
]
|
||||
|
||||
$scope.select(0)
|
||||
|
||||
|
||||
$scope.showItem = (item) ->
|
||||
if item.show?
|
||||
$parse(item.show)($scope)
|
||||
|
||||
@@ -3,19 +3,42 @@ angular.module("admin.indexUtils").directive "ofnSelect2", ($sanitize, $timeout,
|
||||
restrict: 'C'
|
||||
scope:
|
||||
data: "="
|
||||
minSearch: "@?"
|
||||
text: "@?"
|
||||
minSearch: "@"
|
||||
text: "@"
|
||||
blank: "=?"
|
||||
filter: "=?"
|
||||
onSelecting: "=?"
|
||||
multiple: '@'
|
||||
link: (scope, element, attrs, ngModel) ->
|
||||
$timeout ->
|
||||
scope.text ||= 'name'
|
||||
scope.filter ||= -> true
|
||||
scope.text ?= 'name'
|
||||
scope.multiple ?= false
|
||||
scope.filter ?= -> true
|
||||
|
||||
if scope.data.$promise
|
||||
scope.data.$promise.then -> init()
|
||||
else
|
||||
init()
|
||||
|
||||
element.on "select2-opening", scope.onSelecting || angular.noop
|
||||
|
||||
attrs.$observe 'disabled', (value) ->
|
||||
element.select2('enable', !value)
|
||||
|
||||
ngModel.$formatters.push (value) ->
|
||||
element.select2('val', value)
|
||||
value
|
||||
|
||||
ngModel.$parsers.push (value) ->
|
||||
return value.split(",") if scope.multiple
|
||||
value
|
||||
|
||||
init = ->
|
||||
scope.data.unshift(scope.blank) if scope.blank? && typeof scope.blank is "object"
|
||||
|
||||
item.name = $sanitize(item.name) for item in scope.data
|
||||
element.select2
|
||||
multiple: scope.multiple
|
||||
minimumResultsForSearch: scope.minSearch || 0
|
||||
data: ->
|
||||
filtered = $filter('filter')(scope.data,scope.filter)
|
||||
@@ -24,12 +47,3 @@ angular.module("admin.indexUtils").directive "ofnSelect2", ($sanitize, $timeout,
|
||||
item[scope.text]
|
||||
formatResult: (item) ->
|
||||
item[scope.text]
|
||||
|
||||
element.on "select2-opening", scope.onSelecting || angular.noop
|
||||
|
||||
attrs.$observe 'disabled', (value) ->
|
||||
element.select2('enable', !value)
|
||||
|
||||
ngModel.$formatters.push (value) ->
|
||||
element.select2('val', value)
|
||||
value
|
||||
|
||||
@@ -1 +1 @@
|
||||
angular.module("admin.indexUtils", ['ngResource', 'ngSanitize', 'templates', 'admin.utils']).config ($httpProvider) ->
|
||||
angular.module("admin.indexUtils", ['admin.resources', 'ngSanitize', 'templates', 'admin.utils']).config ($httpProvider) ->
|
||||
@@ -3,7 +3,8 @@ angular.module("admin.indexUtils").factory 'Dereferencer', ->
|
||||
dereference: (array, data)->
|
||||
if array
|
||||
for object, i in array
|
||||
array[i] = data[object.id]
|
||||
match = data[object.id]
|
||||
array[i] = match if match?
|
||||
|
||||
dereferenceAttr: (array, attr, data)->
|
||||
if array
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout, $http, $q, StatusMessage, Columns, Dereferencer, Orders, LineItems, Enterprises, OrderCycles, blankOption, VariantUnitManager, RequestMonitor) ->
|
||||
angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout, $http, $q, StatusMessage, Columns, Dereferencer, Orders, LineItems, Enterprises, OrderCycles, VariantUnitManager, RequestMonitor) ->
|
||||
$scope.initialized = false
|
||||
$scope.RequestMonitor = RequestMonitor
|
||||
$scope.filteredLineItems = []
|
||||
@@ -15,31 +15,31 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
|
||||
LineItems.allSaved() || confirm(t("unsaved_changes_warning"))
|
||||
|
||||
$scope.resetSelectFilters = ->
|
||||
$scope.distributorFilter = blankOption().id
|
||||
$scope.supplierFilter = blankOption().id
|
||||
$scope.orderCycleFilter = blankOption().id
|
||||
$scope.distributorFilter = 0
|
||||
$scope.supplierFilter = 0
|
||||
$scope.orderCycleFilter = 0
|
||||
$scope.quickSearch = ""
|
||||
|
||||
$scope.refreshData = ->
|
||||
unless !$scope.orderCycleFilter? || $scope.orderCycleFilter == "0"
|
||||
$scope.startDate = OrderCycles.orderCyclesByID[$scope.orderCycleFilter].first_order
|
||||
$scope.endDate = OrderCycles.orderCyclesByID[$scope.orderCycleFilter].last_order
|
||||
unless !$scope.orderCycleFilter? || $scope.orderCycleFilter == 0
|
||||
$scope.startDate = OrderCycles.byID[$scope.orderCycleFilter].first_order
|
||||
$scope.endDate = OrderCycles.byID[$scope.orderCycleFilter].last_order
|
||||
|
||||
RequestMonitor.load $scope.orders = Orders.index("q[state_not_eq]": "canceled", "q[completed_at_not_null]": "true", "q[completed_at_gt]": "#{parseDate($scope.startDate)}", "q[completed_at_lt]": "#{parseDate($scope.endDate)}")
|
||||
RequestMonitor.load $scope.lineItems = LineItems.index("q[order][state_not_eq]": "canceled", "q[order][completed_at_not_null]": "true", "q[order][completed_at_gt]": "#{parseDate($scope.startDate)}", "q[order][completed_at_lt]": "#{parseDate($scope.endDate)}")
|
||||
|
||||
unless $scope.initialized
|
||||
RequestMonitor.load $scope.distributors = Enterprises.index(includeBlank: true, action: "for_line_items", ams_prefix: "basic", "q[sells_in][]": ["own", "any"])
|
||||
RequestMonitor.load $scope.orderCycles = OrderCycles.index(includeBlank: true, ams_prefix: "basic", as: "distributor", "q[orders_close_at_gt]": "#{daysFromToday(-90)}")
|
||||
RequestMonitor.load $scope.suppliers = Enterprises.index(includeBlank: true, action: "for_line_items", ams_prefix: "basic", "q[is_primary_producer_eq]": "true")
|
||||
RequestMonitor.load $scope.distributors = Enterprises.index(action: "for_line_items", ams_prefix: "basic", "q[sells_in][]": ["own", "any"])
|
||||
RequestMonitor.load $scope.orderCycles = OrderCycles.index(ams_prefix: "basic", as: "distributor", "q[orders_close_at_gt]": "#{daysFromToday(-90)}")
|
||||
RequestMonitor.load $scope.suppliers = Enterprises.index(action: "for_line_items", ams_prefix: "basic", "q[is_primary_producer_eq]": "true")
|
||||
|
||||
RequestMonitor.load $q.all([$scope.orders.$promise, $scope.distributors.$promise, $scope.orderCycles.$promise]).then ->
|
||||
Dereferencer.dereferenceAttr $scope.orders, "distributor", Enterprises.enterprisesByID
|
||||
Dereferencer.dereferenceAttr $scope.orders, "order_cycle", OrderCycles.orderCyclesByID
|
||||
Dereferencer.dereferenceAttr $scope.orders, "distributor", Enterprises.byID
|
||||
Dereferencer.dereferenceAttr $scope.orders, "order_cycle", OrderCycles.byID
|
||||
|
||||
RequestMonitor.load $q.all([$scope.orders.$promise, $scope.suppliers.$promise, $scope.lineItems.$promise]).then ->
|
||||
Dereferencer.dereferenceAttr $scope.lineItems, "supplier", Enterprises.enterprisesByID
|
||||
Dereferencer.dereferenceAttr $scope.lineItems, "order", Orders.ordersByID
|
||||
Dereferencer.dereferenceAttr $scope.lineItems, "supplier", Enterprises.byID
|
||||
Dereferencer.dereferenceAttr $scope.lineItems, "order", Orders.byID
|
||||
$scope.bulk_order_form.$setPristine()
|
||||
StatusMessage.clear()
|
||||
unless $scope.initialized
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
angular.module("admin.lineItems").filter "selectFilter", (blankOption, RequestMonitor) ->
|
||||
angular.module("admin.lineItems").filter "selectFilter", (RequestMonitor) ->
|
||||
return (lineItems,selectedSupplier,selectedDistributor,selectedOrderCycle) ->
|
||||
filtered = []
|
||||
unless RequestMonitor.loading
|
||||
filtered.push lineItem for lineItem in lineItems when (angular.equals(selectedSupplier,"0") || lineItem.supplier.id == selectedSupplier) &&
|
||||
(angular.equals(selectedDistributor,"0") || lineItem.order.distributor.id == selectedDistributor) &&
|
||||
(angular.equals(selectedOrderCycle,"0") || lineItem.order.order_cycle.id == selectedOrderCycle)
|
||||
filtered.push lineItem for lineItem in lineItems when (angular.equals(selectedSupplier,0) || lineItem.supplier.id == selectedSupplier) &&
|
||||
(angular.equals(selectedDistributor,0) || lineItem.order.distributor.id == selectedDistributor) &&
|
||||
(angular.equals(selectedOrderCycle,0) || lineItem.order.order_cycle.id == selectedOrderCycle)
|
||||
filtered
|
||||
|
||||
@@ -68,6 +68,7 @@ angular.module('admin.orderCycles')
|
||||
$scope.removeCoordinatorFee = ($event, index) ->
|
||||
$event.preventDefault()
|
||||
OrderCycle.removeCoordinatorFee(index)
|
||||
$scope.order_cycle_form.$dirty = true
|
||||
|
||||
$scope.addExchangeFee = ($event, exchange) ->
|
||||
$event.preventDefault()
|
||||
@@ -76,6 +77,7 @@ angular.module('admin.orderCycles')
|
||||
$scope.removeExchangeFee = ($event, exchange, index) ->
|
||||
$event.preventDefault()
|
||||
OrderCycle.removeExchangeFee(exchange, index)
|
||||
$scope.order_cycle_form.$dirty = true
|
||||
|
||||
$scope.removeDistributionOfVariant = (variant_id) ->
|
||||
OrderCycle.removeDistributionOfVariant(variant_id)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module('admin.orderCycles', ['ngResource', 'admin.utils', 'admin.indexUtils', 'ngTagsInput'])
|
||||
angular.module('admin.orderCycles', ['admin.utils', 'admin.indexUtils', 'ngTagsInput'])
|
||||
|
||||
.config ($httpProvider) ->
|
||||
$httpProvider.defaults.headers.common['X-CSRF-Token'] = $('meta[name=csrf-token]').attr('content')
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
angular.module("admin.paymentMethods").controller "paymentMethodsCtrl", ($scope, PaymentMethods) ->
|
||||
$scope.findPaymentMethodByID = (id) ->
|
||||
$scope.PaymentMethod = PaymentMethods.findByID(id)
|
||||
$scope.PaymentMethod = PaymentMethods.byID[id]
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
angular.module("admin.paymentMethods")
|
||||
.factory "PaymentMethods", (paymentMethods) ->
|
||||
new class PaymentMethods
|
||||
paymentMethods: paymentMethods
|
||||
|
||||
findByID: (id) ->
|
||||
for paymentMethod in @paymentMethods
|
||||
return paymentMethod if paymentMethod.id is id
|
||||
@@ -0,0 +1 @@
|
||||
angular.module("admin.resources", ['ngResource'])
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("admin.customers").factory 'CustomerResource', ($resource) ->
|
||||
angular.module("admin.resources").factory 'CustomerResource', ($resource) ->
|
||||
$resource('/admin/customers/:id.json', {}, {
|
||||
'index':
|
||||
method: 'GET'
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("admin.enterprises").factory 'EnterpriseResource', ($resource) ->
|
||||
angular.module("admin.resources").factory 'EnterpriseResource', ($resource) ->
|
||||
ignoredAttrs = ->
|
||||
["$$hashKey", "producer", "package", "producerError", "packageError", "status"]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("admin.lineItems").factory 'LineItemResource', ($resource) ->
|
||||
angular.module("admin.resources").factory 'LineItemResource', ($resource) ->
|
||||
$resource('/admin/:orders/:order_number/line_items/:id.json', {}, {
|
||||
'index':
|
||||
method: 'GET'
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("admin.orderCycles").factory 'OrderCycleResource', ($resource) ->
|
||||
angular.module("admin.resources").factory 'OrderCycleResource', ($resource) ->
|
||||
$resource('/admin/order_cycles/:id/:action.json', {}, {
|
||||
'index':
|
||||
method: 'GET'
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("admin.orders").factory 'OrderResource', ($resource) ->
|
||||
angular.module("admin.resources").factory 'OrderResource', ($resource) ->
|
||||
$resource('/admin/orders/:id/:action.json', {}, {
|
||||
'index':
|
||||
method: 'GET'
|
||||
@@ -1,19 +1,24 @@
|
||||
angular.module("admin.customers").factory "Customers", ($q, InfoDialog, RequestMonitor, CustomerResource, CurrentShop) ->
|
||||
angular.module("admin.resources").factory "Customers", ($q, InfoDialog, RequestMonitor, CustomerResource, CurrentShop) ->
|
||||
new class Customers
|
||||
customers: []
|
||||
all: []
|
||||
byID: {}
|
||||
pristineByID: {}
|
||||
|
||||
add: (email) ->
|
||||
params =
|
||||
enterprise_id: CurrentShop.shop.id
|
||||
email: email
|
||||
CustomerResource.create params, (customer) =>
|
||||
@customers.unshift customer if customer.id
|
||||
if customer.id
|
||||
@all.unshift customer
|
||||
@byID[customer.id] = customer
|
||||
@pristineByID[customer.id] = angular.copy(customer)
|
||||
|
||||
remove: (customer) ->
|
||||
params = id: customer.id
|
||||
CustomerResource.destroy params, =>
|
||||
i = @customers.indexOf customer
|
||||
@customers.splice i, 1 unless i < 0
|
||||
i = @all.indexOf customer
|
||||
@all.splice i, 1 unless i < 0
|
||||
, (response) =>
|
||||
errors = response.data.errors
|
||||
if errors?
|
||||
@@ -22,10 +27,17 @@ angular.module("admin.customers").factory "Customers", ($q, InfoDialog, RequestM
|
||||
InfoDialog.open 'error', "Could not delete customer: #{customer.email}"
|
||||
|
||||
index: (params) ->
|
||||
request = CustomerResource.index(params, (data) => @customers = data)
|
||||
@clear()
|
||||
request = CustomerResource.index(params, (data) => @load(data))
|
||||
RequestMonitor.load(request.$promise)
|
||||
request.$promise
|
||||
|
||||
load: (customers) ->
|
||||
for customer in customers
|
||||
@all.push customer
|
||||
@byID[customer.id] = customer
|
||||
@pristineByID[customer.id] = angular.copy(customer)
|
||||
|
||||
update: (address, customer, addressType) ->
|
||||
params =
|
||||
id: customer.id
|
||||
@@ -33,3 +45,5 @@ angular.module("admin.customers").factory "Customers", ($q, InfoDialog, RequestM
|
||||
"#{addressType}_attributes": address
|
||||
CustomerResource.update params
|
||||
|
||||
clear: ->
|
||||
@all.length = 0
|
||||
@@ -1,21 +1,18 @@
|
||||
angular.module("admin.enterprises").factory 'Enterprises', ($q, EnterpriseResource, blankOption) ->
|
||||
angular.module("admin.resources").factory 'Enterprises', ($q, EnterpriseResource) ->
|
||||
new class Enterprises
|
||||
enterprisesByID: {}
|
||||
byID: {}
|
||||
pristineByID: {}
|
||||
|
||||
index: (params={}, callback=null) ->
|
||||
includeBlank = !!params['includeBlank']
|
||||
delete params['includeBlank']
|
||||
EnterpriseResource.index(params, (data) =>
|
||||
for enterprise in data
|
||||
@enterprisesByID[enterprise.id] = enterprise
|
||||
@pristineByID[enterprise.id] = angular.copy(enterprise)
|
||||
|
||||
EnterpriseResource.index params, (data) =>
|
||||
@load(data)
|
||||
(callback || angular.noop)(data)
|
||||
|
||||
data.unshift(blankOption()) if includeBlank
|
||||
data
|
||||
)
|
||||
|
||||
load: (enterprises) ->
|
||||
for enterprise in enterprises
|
||||
@byID[enterprise.id] = enterprise
|
||||
@pristineByID[enterprise.id] = angular.copy(enterprise)
|
||||
|
||||
save: (enterprise) ->
|
||||
deferred = $q.defer()
|
||||
@@ -1,23 +1,25 @@
|
||||
angular.module("admin.lineItems").factory 'LineItems', ($q, LineItemResource) ->
|
||||
angular.module("admin.resources").factory 'LineItems', ($q, LineItemResource) ->
|
||||
new class LineItems
|
||||
lineItemsByID: {}
|
||||
byID: {}
|
||||
pristineByID: {}
|
||||
|
||||
index: (params={}, callback=null) ->
|
||||
LineItemResource.index params, (data) =>
|
||||
@resetData()
|
||||
for lineItem in data
|
||||
@lineItemsByID[lineItem.id] = lineItem
|
||||
@pristineByID[lineItem.id] = angular.copy(lineItem)
|
||||
|
||||
@load(data)
|
||||
(callback || angular.noop)(data)
|
||||
|
||||
resetData: ->
|
||||
@lineItemsByID = {}
|
||||
@byID = {}
|
||||
@pristineByID = {}
|
||||
|
||||
load: (lineItems) ->
|
||||
@resetData()
|
||||
for lineItem in lineItems
|
||||
@byID[lineItem.id] = lineItem
|
||||
@pristineByID[lineItem.id] = angular.copy(lineItem)
|
||||
|
||||
saveAll: ->
|
||||
for id, lineItem of @lineItemsByID
|
||||
for id, lineItem of @byID
|
||||
lineItem.errors = {} # removes errors when line_item has been returned to original state
|
||||
@save(lineItem) if !@isSaved(lineItem)
|
||||
|
||||
@@ -34,7 +36,7 @@ angular.module("admin.lineItems").factory 'LineItems', ($q, LineItemResource) ->
|
||||
deferred.promise
|
||||
|
||||
allSaved: ->
|
||||
for id, lineItem of @lineItemsByID
|
||||
for id, lineItem of @byID
|
||||
return false unless @isSaved(lineItem)
|
||||
true
|
||||
|
||||
@@ -54,7 +56,7 @@ angular.module("admin.lineItems").factory 'LineItems', ($q, LineItemResource) ->
|
||||
deferred = $q.defer()
|
||||
lineItem.$delete({id: lineItem.id, orders: "orders", order_number: lineItem.order.number})
|
||||
.then( (data) =>
|
||||
delete @lineItemsByID[lineItem.id]
|
||||
delete @byID[lineItem.id]
|
||||
delete @pristineByID[lineItem.id]
|
||||
(callback || angular.noop)(data)
|
||||
deferred.resolve(data)
|
||||
@@ -1,21 +1,24 @@
|
||||
angular.module("admin.orderCycles").factory 'OrderCycles', ($q, OrderCycleResource, blankOption) ->
|
||||
angular.module("admin.resources").factory 'OrderCycles', ($q, $injector, OrderCycleResource) ->
|
||||
new class OrderCycles
|
||||
orderCyclesByID: {}
|
||||
all: []
|
||||
byID: {}
|
||||
pristineByID: {}
|
||||
|
||||
constructor: ->
|
||||
if $injector.has('orderCycles')
|
||||
@load($injector.get('orderCycles'))
|
||||
|
||||
index: (params={}, callback=null) ->
|
||||
includeBlank = !!params['includeBlank']
|
||||
delete params['includeBlank']
|
||||
OrderCycleResource.index(params, (data) =>
|
||||
for orderCycle in data
|
||||
@orderCyclesByID[orderCycle.id] = orderCycle
|
||||
@pristineByID[orderCycle.id] = angular.copy(orderCycle)
|
||||
|
||||
OrderCycleResource.index params, (data) =>
|
||||
@load(data)
|
||||
(callback || angular.noop)(data)
|
||||
|
||||
data.unshift(blankOption()) if includeBlank
|
||||
data
|
||||
)
|
||||
|
||||
load: (orderCycles) ->
|
||||
for orderCycle in orderCycles
|
||||
@all.push orderCycle
|
||||
@byID[orderCycle.id] = orderCycle
|
||||
@pristineByID[orderCycle.id] = angular.copy(orderCycle)
|
||||
|
||||
save: (order_cycle) ->
|
||||
deferred = $q.defer()
|
||||
@@ -1,16 +1,18 @@
|
||||
angular.module("admin.orders").factory 'Orders', ($q, OrderResource) ->
|
||||
angular.module("admin.resources").factory 'Orders', ($q, OrderResource) ->
|
||||
new class Orders
|
||||
ordersByID: {}
|
||||
byID: {}
|
||||
pristineByID: {}
|
||||
|
||||
index: (params={}, callback=null) ->
|
||||
OrderResource.index params, (data) =>
|
||||
for order in data
|
||||
@ordersByID[order.id] = order
|
||||
@pristineByID[order.id] = angular.copy(order)
|
||||
|
||||
@load(data)
|
||||
(callback || angular.noop)(data)
|
||||
|
||||
load: (orders) ->
|
||||
for order in orders
|
||||
@byID[order.id] = order
|
||||
@pristineByID[order.id] = angular.copy(order)
|
||||
|
||||
save: (order) ->
|
||||
deferred = $q.defer()
|
||||
order.$update({id: order.number})
|
||||
@@ -0,0 +1,16 @@
|
||||
angular.module("admin.resources")
|
||||
.factory "PaymentMethods", ($injector) ->
|
||||
new class PaymentMethods
|
||||
paymentMethods: []
|
||||
byID: {}
|
||||
pristineByID: {}
|
||||
|
||||
constructor: ->
|
||||
if $injector.has('paymentMethods')
|
||||
@load($injector.get('paymentMethods'))
|
||||
|
||||
load: (paymentMethods) ->
|
||||
for paymentMethod in paymentMethods
|
||||
@paymentMethods.push paymentMethod
|
||||
@byID[paymentMethod.id] = paymentMethod
|
||||
@pristineByID[paymentMethod.id] = angular.copy(paymentMethod)
|
||||
@@ -0,0 +1,16 @@
|
||||
angular.module("admin.resources")
|
||||
.factory "ShippingMethods", ($injector) ->
|
||||
new class ShippingMethods
|
||||
shippingMethods: []
|
||||
byID: {}
|
||||
pristineByID: {}
|
||||
|
||||
constructor: ->
|
||||
if $injector.has('shippingMethods')
|
||||
@load($injector.get('shippingMethods'))
|
||||
|
||||
load: (shippingMethods) ->
|
||||
for shippingMethod in shippingMethods
|
||||
@shippingMethods.push shippingMethod
|
||||
@byID[shippingMethod.id] = shippingMethod
|
||||
@pristineByID[shippingMethod.id] = angular.copy(shippingMethod)
|
||||
@@ -1,3 +1,3 @@
|
||||
angular.module("admin.shippingMethods").controller "shippingMethodsCtrl", ($scope, ShippingMethods) ->
|
||||
$scope.findShippingMethodByID = (id) ->
|
||||
$scope.ShippingMethod = ShippingMethods.findByID(id)
|
||||
$scope.ShippingMethod = ShippingMethods.byID[id]
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
angular.module("admin.shippingMethods")
|
||||
.factory "ShippingMethods", (shippingMethods) ->
|
||||
new class ShippingMethods
|
||||
shippingMethods: shippingMethods
|
||||
|
||||
findByID: (id) ->
|
||||
for shippingMethod in @shippingMethods
|
||||
return shippingMethod if shippingMethod.id is id
|
||||
@@ -1,19 +1,20 @@
|
||||
angular.module("admin.taxons").factory "Taxons", (taxons, $filter) ->
|
||||
new class Taxons
|
||||
taxons: taxons
|
||||
taxonsByID: {}
|
||||
all: []
|
||||
byID: {}
|
||||
|
||||
constructor: ->
|
||||
for taxon in @taxons
|
||||
@taxonsByID[taxon.id] = taxon
|
||||
for taxon in taxons
|
||||
@all.push taxon
|
||||
@byID[taxon.id] = taxon
|
||||
|
||||
# For finding a single Taxon
|
||||
findByID: (id) ->
|
||||
@taxonsByID[id]
|
||||
@byID[id]
|
||||
|
||||
# For finding multiple Taxons represented by comma delimited string
|
||||
findByIDs: (ids) ->
|
||||
@taxonsByID[taxon_id] for taxon_id in ids.split(",") when @taxonsByID[taxon_id]
|
||||
@byID[taxon_id] for taxon_id in ids.split(",") when @byID[taxon_id]
|
||||
|
||||
findByTerm: (term) ->
|
||||
$filter('filter')(@taxons, term)
|
||||
$filter('filter')(@all, term)
|
||||
|
||||
@@ -30,8 +30,16 @@ show_flash_error = function(message) {
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
$('a.close').click(function(event){
|
||||
event.preventDefault();
|
||||
$(this).parent().slideUp(250);
|
||||
});
|
||||
$('a.close').click(function(event){
|
||||
event.preventDefault();
|
||||
$(this).parent().slideUp(250);
|
||||
});
|
||||
|
||||
// Spree locates hidden with prev(), which with our current version of jQuery
|
||||
// does not locate the hidden field, resulting in the delete failing. This
|
||||
// handler updates the hidden field, fixing the problem.
|
||||
$('body').on('click', 'a.remove_fields', function() {
|
||||
$(this).next("input[type=hidden]").val("1");
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
angular.module("admin.utils").value "blankOption", ->
|
||||
{ id: "0", name: "All" }
|
||||
@@ -1,4 +1,4 @@
|
||||
Darkswarm.controller "ShoppingTabsCtrl", ($scope, $controller, Navigation) ->
|
||||
Darkswarm.controller "ShoppingTabsCtrl", ($scope, $controller, Navigation, $location) ->
|
||||
angular.extend this, $controller('TabsCtrl', {$scope: $scope})
|
||||
|
||||
$scope.tabs =
|
||||
@@ -6,3 +6,7 @@ Darkswarm.controller "ShoppingTabsCtrl", ($scope, $controller, Navigation) ->
|
||||
producers: { active: Navigation.isActive('/producers') }
|
||||
contact: { active: Navigation.isActive('/contact') }
|
||||
groups: { active: Navigation.isActive('/groups') }
|
||||
|
||||
$scope.$on '$locationChangeStart', (event, url) ->
|
||||
tab = $location.path().replace(/^\//, '')
|
||||
$scope.tabs[tab]?.active = true
|
||||
|
||||
@@ -15,7 +15,7 @@ Darkswarm.directive 'mapOsmTiles', ($timeout) ->
|
||||
if x < 0
|
||||
x = tilesPerGlobe + x
|
||||
# Wrap y (latitude) in a like manner if you want to enable vertical infinite scroll
|
||||
'http://tile.openstreetmap.org/' + zoom + '/' + x + '/' + coord.y + '.png'
|
||||
'https://a.tile.openstreetmap.org/' + zoom + '/' + x + '/' + coord.y + '.png'
|
||||
tileSize: new google.maps.Size(256, 256)
|
||||
name: 'OpenStreetMap'
|
||||
maxZoom: 18
|
||||
|
||||
@@ -4,5 +4,5 @@ Darkswarm.filter 'products', (Matcher) ->
|
||||
text ?= ""
|
||||
return products if text == ""
|
||||
products.filter (product) =>
|
||||
propertiesToMatch = [product.name, product.supplier.name, product.primary_taxon.name]
|
||||
propertiesToMatch = [product.name, product.variant_names, product.supplier.name, product.primary_taxon.name]
|
||||
Matcher.match propertiesToMatch, text
|
||||
|
||||
@@ -1,13 +1,17 @@
|
||||
Darkswarm.filter 'properties', ->
|
||||
# Filter anything that responds to object.supplied_properties
|
||||
(objects, ids) ->
|
||||
(objects, ids, source) ->
|
||||
objects ||= []
|
||||
ids ?= []
|
||||
|
||||
source ||= 'properties'
|
||||
return [] unless source in ['properties', 'supplied_properties', 'distributed_properties']
|
||||
|
||||
if ids.length == 0
|
||||
# No properties selected, pass all objects through.
|
||||
objects
|
||||
else
|
||||
objects.filter (obj) ->
|
||||
properties = obj.supplied_properties || obj.properties
|
||||
properties = obj[source]
|
||||
properties.some (property) ->
|
||||
property.id in ids
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
Darkswarm.filter 'propertiesOf', ->
|
||||
(objects) ->
|
||||
(objects, source) ->
|
||||
source ||= 'properties'
|
||||
return {} unless source in ['properties', 'supplied_properties', 'distributed_properties']
|
||||
|
||||
properties = {}
|
||||
for object in objects
|
||||
if object.supplied_properties?
|
||||
for property in object.supplied_properties
|
||||
properties[property.id] = property
|
||||
else
|
||||
for property in object.properties
|
||||
if object[source]?
|
||||
for property in object[source]
|
||||
properties[property.id] = property
|
||||
|
||||
properties
|
||||
|
||||
@@ -25,7 +25,6 @@ Darkswarm.factory 'Products', ($resource, Enterprises, Dereferencer, Taxons, Pro
|
||||
prices = (v.price for v in product.variants)
|
||||
product.price = Math.min.apply(null, prices)
|
||||
product.hasVariants = product.variants?.length > 0
|
||||
|
||||
product.primaryImage = product.images[0]?.small_url if product.images
|
||||
product.primaryImageOrMissing = product.primaryImage || "/assets/noimage/small.png"
|
||||
product.largeImage = product.images[0]?.large_url if product.images
|
||||
@@ -45,5 +44,7 @@ Darkswarm.factory 'Products', ($resource, Enterprises, Dereferencer, Taxons, Pro
|
||||
if product.variants
|
||||
product.variants = for variant in product.variants
|
||||
variant = Variants.register variant
|
||||
if product.name != variant.name_to_display
|
||||
product.variant_names += variant.name_to_display
|
||||
variant.product = product
|
||||
variant
|
||||
|
||||
@@ -14,9 +14,6 @@
|
||||
.exchange-product{'ng-repeat' => 'product in supplied_products | filter:productSuppliedToOrderCycle | visibleProducts:exchange:order_cycle.visible_variants_for_outgoing_exchanges | orderBy:"name"' }
|
||||
.exchange-product-details
|
||||
%label
|
||||
-# MASTER_VARIANTS: No longer required
|
||||
-# = check_box_tag 'order_cycle_outgoing_exchange_{{ $parent.$index }}_variants_{{ product.master_id }}', 1, 1, 'ng-hide' => 'product.variants.length > 0', 'ng-model' => 'exchange.variants[product.master_id]', 'id' => 'order_cycle_outgoing_exchange_{{ $parent.$index }}_variants_{{ product.master_id }}',
|
||||
-# 'ng-disabled' => 'product.variants.length > 0 || !order_cycle.editable_variants_for_outgoing_exchanges.hasOwnProperty(exchange.enterprise_id) || order_cycle.editable_variants_for_outgoing_exchanges[exchange.enterprise_id].indexOf(product.master_id) < 0'
|
||||
%img{'ng-src' => '{{ product.image_url }}'}
|
||||
.name {{ product.name }}
|
||||
.supplier {{ product.supplier_name }}
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
.alert
|
||||
border: 3px solid #919191
|
||||
border-radius: 6px
|
||||
margin-bottom: 20px
|
||||
color: #919191
|
||||
padding: 5px 10px
|
||||
h6
|
||||
color: #919191
|
||||
.message
|
||||
font-weight: bold
|
||||
&:hover
|
||||
border-color: #DA5354
|
||||
color: #DA5354
|
||||
h6
|
||||
color: #DA5354
|
||||
24
app/assets/stylesheets/admin/alert.css.scss
Normal file
24
app/assets/stylesheets/admin/alert.css.scss
Normal file
@@ -0,0 +1,24 @@
|
||||
.alert {
|
||||
border: 3px solid #919191;
|
||||
border-radius: 6px;
|
||||
margin-bottom: 20px;
|
||||
color: #919191;
|
||||
padding: 5px 10px;
|
||||
|
||||
h6 {
|
||||
color: #919191;
|
||||
}
|
||||
|
||||
.message {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
border-color: #DA5354;
|
||||
color: #DA5354;
|
||||
|
||||
h6 {
|
||||
color: #DA5354;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,14 @@
|
||||
@-webkit-keyframes slideInUp
|
||||
0%
|
||||
-webkit-transform: translateY(20px)
|
||||
transform: translateY(20px)
|
||||
100%
|
||||
-webkit-transform: translateY(0)
|
||||
transform: translateY(0)
|
||||
@-webkit-keyframes slideInUp {
|
||||
0% {
|
||||
-webkit-transform: translateY(20px);
|
||||
transform: translateY(20px);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
// @-webkit-keyframes slideOutDown
|
||||
// 0%
|
||||
@@ -14,13 +18,14 @@
|
||||
// -webkit-transform: translateY(20px)
|
||||
// transform: translateY(20px)
|
||||
|
||||
.animate-show
|
||||
-webkit-animation-name: slideInUp
|
||||
animation-name: slideInUp
|
||||
-webkit-animation-duration: 0.3s
|
||||
animation-duration: 0.3s
|
||||
-webkit-animation-fill-mode: both
|
||||
animation-fill-mode: both
|
||||
.animate-show {
|
||||
-webkit-animation-name: slideInUp;
|
||||
animation-name: slideInUp;
|
||||
-webkit-animation-duration: 0.3s;
|
||||
animation-duration: 0.3s;
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
|
||||
// line-height: 20px
|
||||
// opacity: 1
|
||||
|
||||
@@ -33,3 +38,4 @@
|
||||
// animation-fill-mode: both
|
||||
// // line-height: 20px
|
||||
// // opacity: 1
|
||||
}
|
||||
@@ -1,72 +0,0 @@
|
||||
@import ../darkswarm/branding
|
||||
@import ../darkswarm/mixins
|
||||
|
||||
#change_type
|
||||
section
|
||||
margin: 2em 0 0 0
|
||||
&, & *
|
||||
color: #5498da
|
||||
|
||||
.description
|
||||
background-color: #eff5fc
|
||||
margin-top: -2em
|
||||
padding: 4em 2em 2em 1em
|
||||
@media all and (max-width: 786px)
|
||||
margin-bottom: 2em
|
||||
|
||||
.admin-cta
|
||||
border: 1px solid #5498da
|
||||
@include border-radius(3px)
|
||||
text-align: center
|
||||
padding: 1em
|
||||
|
||||
.error
|
||||
display: block
|
||||
color: #f57e80
|
||||
border: 1px solid #f57e80
|
||||
background-color: #fde6e7
|
||||
@include border-radius(3px)
|
||||
margin-bottom: 1em
|
||||
padding: 0.5em
|
||||
|
||||
a.selector
|
||||
position: relative
|
||||
border: 2px solid black
|
||||
text-align: center
|
||||
width: 100%
|
||||
cursor: pointer
|
||||
&, & *
|
||||
color: white
|
||||
&:after, &:before
|
||||
top: 100%
|
||||
left: 50%
|
||||
border: solid transparent
|
||||
content: " "
|
||||
height: 0
|
||||
width: 0
|
||||
position: absolute
|
||||
pointer-events: none
|
||||
&:after
|
||||
border-color: rgba(136, 183, 213, 0)
|
||||
border-top-color: #5498da
|
||||
border-width: 12px
|
||||
margin-left: -12px
|
||||
&:hover
|
||||
&:after
|
||||
border-top-color: #9fc820
|
||||
&:before
|
||||
border-color: rgba(84, 152, 218, 0)
|
||||
border-top-color: black
|
||||
border-width: 15px
|
||||
margin-left: -15px
|
||||
.bottom
|
||||
background: repeating-linear-gradient(60deg, rgba(84, 152, 218, 0), rgba(84, 152, 218, 0) 5px, rgba(255, 255, 255, 0.25) 5px, rgba(255, 255, 255, 0.25) 10px)
|
||||
margin-top: 1em
|
||||
margin-left: -15px
|
||||
margin-right: -15px
|
||||
padding: 5px
|
||||
text-transform: uppercase
|
||||
&.selected
|
||||
background-color: black
|
||||
&:after, &:hover &:after
|
||||
border-top-color: black
|
||||
103
app/assets/stylesheets/admin/change_type_form.css.scss
Normal file
103
app/assets/stylesheets/admin/change_type_form.css.scss
Normal file
@@ -0,0 +1,103 @@
|
||||
@import "../darkswarm/branding";
|
||||
@import "../darkswarm/mixins";
|
||||
|
||||
#change_type {
|
||||
section {
|
||||
margin: 2em 0 0 0;
|
||||
|
||||
&, & * {
|
||||
color: #5498da;
|
||||
}
|
||||
}
|
||||
|
||||
.description {
|
||||
background-color: #eff5fc;
|
||||
margin-top: -2em;
|
||||
padding: 4em 2em 2em 1em;
|
||||
|
||||
@media all and (max-width: 786px) {
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
}
|
||||
|
||||
.admin-cta {
|
||||
border: 1px solid #5498da;
|
||||
|
||||
@include border-radius(3px);
|
||||
|
||||
text-align: center;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
.error {
|
||||
display: block;
|
||||
color: #f57e80;
|
||||
border: 1px solid #f57e80;
|
||||
background-color: #fde6e7;
|
||||
|
||||
@include border-radius(3px);
|
||||
|
||||
margin-bottom: 1em;
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
a.selector {
|
||||
position: relative;
|
||||
border: 2px solid black;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
cursor: pointer;
|
||||
|
||||
&, & * {
|
||||
color: white;
|
||||
}
|
||||
|
||||
&:after, &:before {
|
||||
top: 100%;
|
||||
left: 50%;
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
&:after {
|
||||
border-color: rgba(136, 183, 213, 0);
|
||||
border-top-color: #5498da;
|
||||
border-width: 12px;
|
||||
margin-left: -12px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
&:after {
|
||||
border-top-color: #9fc820;
|
||||
}
|
||||
}
|
||||
|
||||
&:before {
|
||||
border-color: rgba(84, 152, 218, 0);
|
||||
border-top-color: black;
|
||||
border-width: 15px;
|
||||
margin-left: -15px;
|
||||
}
|
||||
|
||||
.bottom {
|
||||
background: repeating-linear-gradient(60deg, rgba(84, 152, 218, 0), rgba(84, 152, 218, 0) 5px, rgba(255, 255, 255, 0.25) 5px, rgba(255, 255, 255, 0.25) 10px);
|
||||
margin-top: 1em;
|
||||
margin-left: -15px;
|
||||
margin-right: -15px;
|
||||
padding: 5px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
background-color: black;
|
||||
|
||||
&:after, &:hover &:after {
|
||||
border-top-color: black;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
#save-bar
|
||||
position: fixed
|
||||
width: 100%
|
||||
z-index: 100
|
||||
bottom: 0px
|
||||
left: 0
|
||||
padding: 8px 8px
|
||||
font-weight: bold
|
||||
background-color: #eff5fc
|
||||
color: #5498da
|
||||
h5
|
||||
color: #5498da
|
||||
input
|
||||
margin-right: 5px
|
||||
19
app/assets/stylesheets/admin/components/save_bar.scss
Normal file
19
app/assets/stylesheets/admin/components/save_bar.scss
Normal file
@@ -0,0 +1,19 @@
|
||||
#save-bar {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
z-index: 100;
|
||||
bottom: 0px;
|
||||
left: 0;
|
||||
padding: 8px 8px;
|
||||
font-weight: bold;
|
||||
background-color: #eff5fc;
|
||||
color: #5498da;
|
||||
|
||||
h5 {
|
||||
color: #5498da;
|
||||
}
|
||||
|
||||
input {
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
#trial_progress_bar
|
||||
position: fixed
|
||||
left: 0px
|
||||
bottom: 0px
|
||||
width: 100vw
|
||||
padding: 8px 10px
|
||||
font-weight: bold
|
||||
background-color: #5498da
|
||||
color: white
|
||||
@@ -0,0 +1,10 @@
|
||||
#trial_progress_bar {
|
||||
position: fixed;
|
||||
left: 0px;
|
||||
bottom: 0px;
|
||||
width: 100vw;
|
||||
padding: 8px 10px;
|
||||
font-weight: bold;
|
||||
background-color: #5498da;
|
||||
color: white;
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
@import ../darkswarm/mixins
|
||||
|
||||
.alert-box
|
||||
position: relative
|
||||
display: block
|
||||
background-color: #eff5dc
|
||||
border: 1px solid #9fc820
|
||||
color: #666
|
||||
margin-top: 1em
|
||||
margin-bottom: 1em
|
||||
@include border-radius(3px)
|
||||
transition: opacity 300ms ease-out
|
||||
padding: 0.77778em 1.33333em 0.77778em 0.77778em
|
||||
a.close
|
||||
position: absolute
|
||||
right: 5px
|
||||
top: 0px
|
||||
font-size: 1.5em
|
||||
|
||||
|
||||
.dashboard_item.single-ent
|
||||
.header
|
||||
padding: 0.77778em 1.33333em 0.77778em 0.77778em
|
||||
height: auto !important
|
||||
.list
|
||||
.button.bottom
|
||||
width: 100%
|
||||
|
||||
.button.big
|
||||
width: 100%
|
||||
font-size: 1rem
|
||||
@include border-radius(25px)
|
||||
padding: 15px
|
||||
45
app/assets/stylesheets/admin/dashboard-single-ent.css.scss
Normal file
45
app/assets/stylesheets/admin/dashboard-single-ent.css.scss
Normal file
@@ -0,0 +1,45 @@
|
||||
@import "../darkswarm/mixins";
|
||||
|
||||
.alert-box {
|
||||
position: relative;
|
||||
display: block;
|
||||
background-color: #eff5dc;
|
||||
border: 1px solid #9fc820;
|
||||
color: #666;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em;
|
||||
|
||||
@include border-radius(3px);
|
||||
|
||||
transition: opacity 300ms ease-out;
|
||||
padding: 0.77778em 1.33333em 0.77778em 0.77778em;
|
||||
|
||||
a.close {
|
||||
position: absolute;
|
||||
right: 5px;
|
||||
top: 0px;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
}
|
||||
|
||||
.dashboard_item.single-ent {
|
||||
.header {
|
||||
padding: 0.77778em 1.33333em 0.77778em 0.77778em;
|
||||
height: auto !important;
|
||||
}
|
||||
|
||||
.list {
|
||||
.button.bottom {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.button.big {
|
||||
width: 100%;
|
||||
font-size: 1rem;
|
||||
|
||||
@include border-radius(25px);
|
||||
|
||||
padding: 15px;
|
||||
}
|
||||
@@ -1,159 +0,0 @@
|
||||
div.dashboard_item
|
||||
margin-bottom: 30px
|
||||
|
||||
.centered
|
||||
text-align: center
|
||||
|
||||
.text-icon
|
||||
margin-top: 8px
|
||||
display: block
|
||||
font-size: 16px
|
||||
font-weight: bold
|
||||
color: #fff
|
||||
padding: 0px 6px
|
||||
border-radius: 10px
|
||||
&.green
|
||||
background-color: #9fc820
|
||||
&.red
|
||||
background-color: #DA5354
|
||||
&.orange
|
||||
background-color: #DA7F52
|
||||
|
||||
div.header
|
||||
height: 50px
|
||||
border-radius: 6px 6px 0px 0px
|
||||
border: 1px solid #5498da
|
||||
position: relative
|
||||
|
||||
a[ofn-with-tip]
|
||||
position: absolute
|
||||
right: 5px
|
||||
bottom: 5px
|
||||
|
||||
&.red
|
||||
border-color: #DA5354
|
||||
border-width: 3px
|
||||
h3
|
||||
color: #DA5354
|
||||
|
||||
&.orange
|
||||
border-color: #DA7F52
|
||||
border-width: 3px
|
||||
h3
|
||||
color: #DA7F52
|
||||
|
||||
h3.alpha
|
||||
height: 100%
|
||||
padding: 10px 5px 0px 3%
|
||||
|
||||
a
|
||||
border-radius: 0px 4px 0px 0px
|
||||
margin-left: 8px
|
||||
height: 100%
|
||||
padding: 15px 2px 0px 2px
|
||||
|
||||
.tabs
|
||||
height: 30px
|
||||
border: solid #5498da
|
||||
border-width: 0px 0px 1px 0px
|
||||
margin-top: 3px
|
||||
div.dashboard_tab
|
||||
cursor: pointer
|
||||
height: 30px
|
||||
color: #fff
|
||||
background-color: #5498da
|
||||
padding: 5px 5px 0px 5px
|
||||
text-align: center
|
||||
font-weight: bold
|
||||
border: solid #5498da
|
||||
border-width: 1px 1px 0px 1px
|
||||
&:hover
|
||||
background-color: #9fc820
|
||||
&.selected
|
||||
color: #5498da
|
||||
background-color: #fff
|
||||
|
||||
.list
|
||||
max-height: 250px
|
||||
overflow-y: auto
|
||||
overflow-x: hidden
|
||||
|
||||
.list-title
|
||||
border: solid #5498da
|
||||
border-width: 0px 1px 0px 1px
|
||||
span
|
||||
font-size: 105%
|
||||
padding: 10px 0px
|
||||
font-weight: bold
|
||||
span.alpha
|
||||
padding: 10px 2px 10px 5%
|
||||
|
||||
.list-item
|
||||
border: solid #5498da
|
||||
border-width: 0px 1px 0px 1px
|
||||
height: 38px
|
||||
span.alpha
|
||||
font-weight: bold
|
||||
margin-left: -3px
|
||||
padding: 10px 2px 0px 5%
|
||||
span.omega
|
||||
padding-right: 13px
|
||||
margin-right: -3px
|
||||
text-align: right
|
||||
.icon-arrow-right
|
||||
padding-top: 6px
|
||||
font-size: 20px
|
||||
.icon-warning-sign
|
||||
color: #DA7F52
|
||||
font-size: 30px
|
||||
.icon-remove-sign
|
||||
color: #DA5354
|
||||
font-size: 30px
|
||||
.icon-ok-sign
|
||||
color: #9fc820
|
||||
font-size: 30px
|
||||
&.orange
|
||||
color: #DA7F52
|
||||
border: solid #DA7F52
|
||||
&.red
|
||||
color: #DA5354
|
||||
border: solid #DA5354
|
||||
&.orange, &.red
|
||||
border-width: 0px 3px 0px 3px
|
||||
&.even
|
||||
background-color: #fff
|
||||
&.odd
|
||||
background-color: #eff5fc
|
||||
&.even, &.odd
|
||||
&:hover
|
||||
color: #ffffff
|
||||
background-color: #9fc820
|
||||
.icon-arrow-right
|
||||
color: #fff
|
||||
.icon-remove-sign
|
||||
color: #fff
|
||||
.icon-warning-sign
|
||||
color: #fff
|
||||
.icon-ok-sign
|
||||
color: #fff
|
||||
.text-icon
|
||||
&.green
|
||||
color: #9fc820
|
||||
background-color: #fff
|
||||
|
||||
a.button
|
||||
color: #fff
|
||||
font-size: 110%
|
||||
font-weight: bold
|
||||
text-align: center
|
||||
&.orange
|
||||
background-color: #DA7F52
|
||||
&.blue
|
||||
background-color: #5498da
|
||||
&.red
|
||||
background-color: #DA5354
|
||||
&:hover
|
||||
background-color: #9fc820
|
||||
&.bottom
|
||||
border-radius: 0px 0px 6px 6px
|
||||
padding: 15px 15px
|
||||
239
app/assets/stylesheets/admin/dashboard_item.css.scss
Normal file
239
app/assets/stylesheets/admin/dashboard_item.css.scss
Normal file
@@ -0,0 +1,239 @@
|
||||
div.dashboard_item {
|
||||
margin-bottom: 30px;
|
||||
|
||||
.centered {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.text-icon {
|
||||
margin-top: 8px;
|
||||
display: block;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #fff;
|
||||
padding: 0px 6px;
|
||||
border-radius: 10px;
|
||||
|
||||
&.green {
|
||||
background-color: #9fc820;
|
||||
}
|
||||
|
||||
&.red {
|
||||
background-color: #DA5354;
|
||||
}
|
||||
|
||||
&.orange {
|
||||
background-color: #DA7F52;
|
||||
}
|
||||
}
|
||||
|
||||
div.header {
|
||||
height: 50px;
|
||||
border-radius: 6px 6px 0px 0px;
|
||||
border: 1px solid #5498da;
|
||||
position: relative;
|
||||
|
||||
a[ofn-with-tip] {
|
||||
position: absolute;
|
||||
right: 5px;
|
||||
bottom: 5px;
|
||||
}
|
||||
|
||||
&.red {
|
||||
border-color: #DA5354;
|
||||
border-width: 3px;
|
||||
|
||||
h3 {
|
||||
color: #DA5354;
|
||||
}
|
||||
}
|
||||
|
||||
&.orange {
|
||||
border-color: #DA7F52;
|
||||
border-width: 3px;
|
||||
|
||||
h3 {
|
||||
color: #DA7F52;
|
||||
}
|
||||
}
|
||||
|
||||
h3.alpha {
|
||||
height: 100%;
|
||||
padding: 10px 5px 0px 3%;
|
||||
}
|
||||
|
||||
a {
|
||||
border-radius: 0px 4px 0px 0px;
|
||||
margin-left: 8px;
|
||||
height: 100%;
|
||||
padding: 15px 2px 0px 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.tabs {
|
||||
height: 30px;
|
||||
border: solid #5498da;
|
||||
border-width: 0px 0px 1px 0px;
|
||||
margin-top: 3px;
|
||||
|
||||
div.dashboard_tab {
|
||||
cursor: pointer;
|
||||
height: 30px;
|
||||
color: #fff;
|
||||
background-color: #5498da;
|
||||
padding: 5px 5px 0px 5px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
border: solid #5498da;
|
||||
border-width: 1px 1px 0px 1px;
|
||||
|
||||
&:hover {
|
||||
background-color: #9fc820;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
color: #5498da;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.list {
|
||||
max-height: 250px;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
.list-title {
|
||||
border: solid #5498da;
|
||||
border-width: 0px 1px 0px 1px;
|
||||
|
||||
span {
|
||||
font-size: 105%;
|
||||
padding: 10px 0px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
span.alpha {
|
||||
padding: 10px 2px 10px 5%;
|
||||
}
|
||||
}
|
||||
|
||||
.list-item {
|
||||
border: solid #5498da;
|
||||
border-width: 0px 1px 0px 1px;
|
||||
height: 38px;
|
||||
|
||||
span.alpha {
|
||||
font-weight: bold;
|
||||
margin-left: -3px;
|
||||
padding: 10px 2px 0px 5%;
|
||||
}
|
||||
|
||||
span.omega {
|
||||
padding-right: 13px;
|
||||
margin-right: -3px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.icon-arrow-right {
|
||||
padding-top: 6px;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
.icon-warning-sign {
|
||||
color: #DA7F52;
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
.icon-remove-sign {
|
||||
color: #DA5354;
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
.icon-ok-sign {
|
||||
color: #9fc820;
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
&.orange {
|
||||
color: #DA7F52;
|
||||
border: solid #DA7F52;
|
||||
}
|
||||
|
||||
&.red {
|
||||
color: #DA5354;
|
||||
border: solid #DA5354;
|
||||
}
|
||||
|
||||
&.orange, &.red {
|
||||
border-width: 0px 3px 0px 3px;
|
||||
}
|
||||
|
||||
&.even {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
&.odd {
|
||||
background-color: #eff5fc;
|
||||
}
|
||||
|
||||
&.even, &.odd {
|
||||
&:hover {
|
||||
color: #ffffff;
|
||||
background-color: #9fc820;
|
||||
|
||||
.icon-arrow-right {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.icon-remove-sign {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.icon-warning-sign {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.icon-ok-sign {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.text-icon {
|
||||
&.green {
|
||||
color: #9fc820;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
a.button {
|
||||
color: #fff;
|
||||
font-size: 110%;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
|
||||
&.orange {
|
||||
background-color: #DA7F52;
|
||||
}
|
||||
|
||||
&.blue {
|
||||
background-color: #5498da;
|
||||
}
|
||||
|
||||
&.red {
|
||||
background-color: #DA5354;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #9fc820;
|
||||
}
|
||||
|
||||
&.bottom {
|
||||
border-radius: 0px 0px 6px 6px;
|
||||
padding: 15px 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -203,6 +203,10 @@ text-angular {
|
||||
.ta-scroll-window > .ta-bind {
|
||||
max-height: 400px;
|
||||
min-height: 100px;
|
||||
outline: none;
|
||||
p {
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
}
|
||||
.ta-scroll-window.form-control {
|
||||
min-height: 100px;
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
// TODO: Provide -moz- and -o- directives
|
||||
@-webkit-keyframes alert-flash
|
||||
0%
|
||||
background-color: #f9f1ae
|
||||
|
||||
100%
|
||||
background-color: #fff
|
||||
|
||||
|
||||
table#enterprise-relationships, table#enterprise-roles
|
||||
ul
|
||||
list-style-type: none
|
||||
|
||||
th.actions, td.actions
|
||||
width: 16%
|
||||
.errors
|
||||
color: #f00
|
||||
|
||||
tr.ng-enter
|
||||
-webkit-animation-name: alert-flash
|
||||
-webkit-animation-duration: 1200ms
|
||||
-webkit-animation-iteration-count: 1
|
||||
-webkit-animation-timing-function: ease-in-out
|
||||
31
app/assets/stylesheets/admin/relationships.css.scss
Normal file
31
app/assets/stylesheets/admin/relationships.css.scss
Normal file
@@ -0,0 +1,31 @@
|
||||
// TODO: Provide -moz- and -o- directives
|
||||
@-webkit-keyframes alert-flash {
|
||||
0% {
|
||||
background-color: #f9f1ae;
|
||||
}
|
||||
|
||||
100% {
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
table#enterprise-relationships, table#enterprise-roles {
|
||||
ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
th.actions, td.actions {
|
||||
width: 16%;
|
||||
|
||||
.errors {
|
||||
color: #f00;
|
||||
}
|
||||
}
|
||||
|
||||
tr.ng-enter {
|
||||
-webkit-animation-name: alert-flash;
|
||||
-webkit-animation-duration: 1200ms;
|
||||
-webkit-animation-iteration-count: 1;
|
||||
-webkit-animation-timing-function: ease-in-out;
|
||||
}
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
.side_menu
|
||||
border-right: 2px solid #f6f6f6
|
||||
border-top: 2px solid #f6f6f6
|
||||
.menu_item
|
||||
display: block
|
||||
padding: 8px 15px
|
||||
font-size: 120%
|
||||
cursor: pointer
|
||||
text-transform: uppercase
|
||||
&:nth-child(odd)
|
||||
background-color: #ebf3fb
|
||||
&:nth-child(even)
|
||||
background-color: #ffffff
|
||||
&:hover
|
||||
background-color: #eaf0f5
|
||||
&.selected
|
||||
background-color: #5498da
|
||||
color: #ffffff
|
||||
29
app/assets/stylesheets/admin/side_menu.css.scss
Normal file
29
app/assets/stylesheets/admin/side_menu.css.scss
Normal file
@@ -0,0 +1,29 @@
|
||||
.side_menu {
|
||||
border-right: 2px solid #f6f6f6;
|
||||
border-top: 2px solid #f6f6f6;
|
||||
|
||||
.menu_item {
|
||||
display: block;
|
||||
padding: 8px 15px;
|
||||
font-size: 120%;
|
||||
cursor: pointer;
|
||||
text-transform: uppercase;
|
||||
|
||||
&:nth-child(odd) {
|
||||
background-color: #ebf3fb;
|
||||
}
|
||||
|
||||
&:nth-child(even) {
|
||||
background-color: #ffffff;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #eaf0f5;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
background-color: #5498da;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,77 +0,0 @@
|
||||
div.sidebar_item
|
||||
margin-bottom: 30px
|
||||
|
||||
.centered
|
||||
text-align: center
|
||||
|
||||
div.header
|
||||
font-size: 105%
|
||||
color: #fff
|
||||
padding: 10px 0px
|
||||
position: relative
|
||||
&.blue
|
||||
background-color: #5498da
|
||||
&.red
|
||||
background-color: #DA5354
|
||||
|
||||
.list
|
||||
max-height: 400px
|
||||
overflow-y: auto
|
||||
overflow-x: hidden
|
||||
&.red
|
||||
color: #DA5354
|
||||
.list-item
|
||||
border: solid #DA5354
|
||||
border-width: 0px 3px 0px 3px
|
||||
a.alpha, span.alpha
|
||||
margin-left: -3px
|
||||
&.odd
|
||||
background-color: #fcf6ef
|
||||
&:hover
|
||||
background-color: #9fc820
|
||||
a
|
||||
color: #DA5354
|
||||
|
||||
.list-item
|
||||
.icon-arrow-right
|
||||
padding-top: 6px
|
||||
font-size: 20px
|
||||
border: solid #5498da
|
||||
border-width: 0px 1px 0px 1px
|
||||
a.alpha, span.alpha
|
||||
font-weight: bold
|
||||
margin-left: -1px
|
||||
padding: 10px 2px 10px 5%
|
||||
overflow: hidden
|
||||
text-overflow: ellipsis
|
||||
span.omega
|
||||
padding: 8px 18px 8px 0px
|
||||
margin-right: -3px
|
||||
text-align: right
|
||||
.icon-remove-sign
|
||||
color: #DA5354
|
||||
font-size: 18px
|
||||
&.even
|
||||
background-color: #fff
|
||||
&.odd
|
||||
background-color: #eff5fc
|
||||
&.even, &.odd
|
||||
&:hover
|
||||
color: #ffffff
|
||||
background-color: #9fc820
|
||||
a
|
||||
color: #ffffff
|
||||
|
||||
a.button
|
||||
color: #fff
|
||||
padding: 15px 15px
|
||||
font-weight: bold
|
||||
text-align: center
|
||||
border-radius: 0px
|
||||
&.blue
|
||||
background-color: #5498da
|
||||
&.red
|
||||
background-color: #DA5354
|
||||
&:hover
|
||||
background-color: #9fc820
|
||||
|
||||
121
app/assets/stylesheets/admin/sidebar-item.css.scss
Normal file
121
app/assets/stylesheets/admin/sidebar-item.css.scss
Normal file
@@ -0,0 +1,121 @@
|
||||
div.sidebar_item {
|
||||
margin-bottom: 30px;
|
||||
|
||||
.centered {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.header {
|
||||
font-size: 105%;
|
||||
color: #fff;
|
||||
padding: 10px 0px;
|
||||
position: relative;
|
||||
|
||||
&.blue {
|
||||
background-color: #5498da;
|
||||
}
|
||||
|
||||
&.red {
|
||||
background-color: #DA5354;
|
||||
}
|
||||
}
|
||||
|
||||
.list {
|
||||
max-height: 400px;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
|
||||
&.red {
|
||||
color: #DA5354;
|
||||
|
||||
.list-item {
|
||||
border: solid #DA5354;
|
||||
border-width: 0px 3px 0px 3px;
|
||||
|
||||
a.alpha, span.alpha {
|
||||
margin-left: -3px;
|
||||
}
|
||||
|
||||
&.odd {
|
||||
background-color: #fcf6ef;
|
||||
|
||||
&:hover {
|
||||
background-color: #9fc820;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
color: #DA5354;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.list-item {
|
||||
.icon-arrow-right {
|
||||
padding-top: 6px;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
border: solid #5498da;
|
||||
border-width: 0px 1px 0px 1px;
|
||||
|
||||
a.alpha, span.alpha {
|
||||
font-weight: bold;
|
||||
margin-left: -1px;
|
||||
padding: 10px 2px 10px 5%;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
span.omega {
|
||||
padding: 8px 18px 8px 0px;
|
||||
margin-right: -3px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.icon-remove-sign {
|
||||
color: #DA5354;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
&.even {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
&.odd {
|
||||
background-color: #eff5fc;
|
||||
}
|
||||
|
||||
&.even, &.odd {
|
||||
&:hover {
|
||||
color: #ffffff;
|
||||
background-color: #9fc820;
|
||||
|
||||
a {
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
a.button {
|
||||
color: #fff;
|
||||
padding: 15px 15px;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
border-radius: 0px;
|
||||
|
||||
&.blue {
|
||||
background-color: #5498da;
|
||||
}
|
||||
|
||||
&.red {
|
||||
background-color: #DA5354;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #9fc820;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
.variant-override-unit
|
||||
float: right
|
||||
font-style: italic
|
||||
|
||||
button.hide:hover
|
||||
background-color: #DA5354
|
||||
8
app/assets/stylesheets/admin/variant_overrides.css.scss
Normal file
8
app/assets/stylesheets/admin/variant_overrides.css.scss
Normal file
@@ -0,0 +1,8 @@
|
||||
.variant-override-unit {
|
||||
float: right;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
button.hide:hover {
|
||||
background-color: #DA5354;
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
@import ../darkswarm/mixins
|
||||
|
||||
#welcome_page
|
||||
header
|
||||
text-align: center
|
||||
padding: 4em 2em
|
||||
@include fullbg
|
||||
background-image: url('/assets/home/tagline-bg.jpg')
|
||||
background-repeat: no-repeat
|
||||
background-position: center center
|
||||
margin-bottom: 2em
|
||||
p
|
||||
text-transform: uppercase
|
||||
font-weight: 300
|
||||
&, & *
|
||||
color: white
|
||||
24
app/assets/stylesheets/admin/welcome.css.scss
Normal file
24
app/assets/stylesheets/admin/welcome.css.scss
Normal file
@@ -0,0 +1,24 @@
|
||||
@import "../darkswarm/mixins";
|
||||
|
||||
#welcome_page {
|
||||
header {
|
||||
text-align: center;
|
||||
padding: 4em 2em;
|
||||
|
||||
@include fullbg;
|
||||
|
||||
background-image: url("/assets/home/tagline-bg.jpg");
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
margin-bottom: 2em;
|
||||
|
||||
p {
|
||||
text-transform: uppercase;
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
&, & * {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,125 +0,0 @@
|
||||
@import mixins
|
||||
@import branding
|
||||
@import big-input
|
||||
@import animations
|
||||
|
||||
@mixin filter-selector($base-clr, $border-clr, $hover-clr)
|
||||
&.inline-block, ul.inline-block
|
||||
display: inline-block
|
||||
|
||||
li
|
||||
display: inline-block
|
||||
@include border-radius(0)
|
||||
padding: 0
|
||||
margin: 0 0 0.25rem 0.25rem
|
||||
&:hover, &:focus
|
||||
background: transparent
|
||||
&.active
|
||||
box-shadow: none
|
||||
|
||||
a, a.button
|
||||
display: block
|
||||
padding-top: 0.5rem
|
||||
@include border-radius(0.5em)
|
||||
border: 1px solid $border-clr
|
||||
padding: 0.5em 0.625em
|
||||
font-size: 0.875em
|
||||
color: $base-clr
|
||||
font-size: 0.75em
|
||||
background: white
|
||||
margin: 0
|
||||
i
|
||||
padding-left: 0.25rem
|
||||
|
||||
render-svg
|
||||
&, & svg
|
||||
width: 1rem
|
||||
height: 1rem
|
||||
float: left
|
||||
padding-right: 0.25rem
|
||||
path
|
||||
@include csstrans
|
||||
fill: $base-clr
|
||||
|
||||
&:hover, &:focus
|
||||
border-color: $hover-clr
|
||||
color: $hover-clr
|
||||
render-svg
|
||||
svg
|
||||
path
|
||||
fill: $hover-clr
|
||||
|
||||
&.disabled
|
||||
opacity: 0.6
|
||||
|
||||
&:hover, &:focus
|
||||
border-color: $border-clr
|
||||
color: $base-clr
|
||||
render-svg
|
||||
svg
|
||||
path
|
||||
fill: $base-clr
|
||||
|
||||
|
||||
&.active, &.active:hover, &.active:focus
|
||||
border: 1px solid $base-clr
|
||||
background: $base-clr
|
||||
color: white
|
||||
render-svg
|
||||
svg
|
||||
path
|
||||
fill: white
|
||||
|
||||
|
||||
// Alert when search, taxon, filter is triggered
|
||||
|
||||
.alert-box.search-alert
|
||||
background-color: $clr-yellow-light
|
||||
border-color: $clr-yellow-light
|
||||
color: #777
|
||||
font-size: 0.75rem
|
||||
padding: 0.5rem 0.75rem
|
||||
|
||||
span.applied-properties
|
||||
color: #333
|
||||
|
||||
span.applied-taxons
|
||||
color: $clr-blue
|
||||
|
||||
span.applied-search
|
||||
color: $clr-brick
|
||||
|
||||
span.filter-label
|
||||
opacity: 0.75
|
||||
|
||||
// singleLineSelectors directive provides a drop-down that can overlap
|
||||
// content. Ensure that the dropdown appears above the content.
|
||||
.filter-row
|
||||
position: relative
|
||||
z-index: 100
|
||||
|
||||
.filter-shopfront
|
||||
&.taxon-selectors, &.property-selectors
|
||||
background: transparent
|
||||
|
||||
single-line-selectors
|
||||
overflow-x: hidden
|
||||
white-space: nowrap
|
||||
|
||||
.f-dropdown
|
||||
overflow-x: auto
|
||||
white-space: normal
|
||||
|
||||
ul
|
||||
margin: 0
|
||||
display: inline-block
|
||||
ul, ul li
|
||||
list-style: none
|
||||
|
||||
// Shopfront taxons
|
||||
&.taxon-selectors
|
||||
@include filter-selector($clr-blue, $clr-blue-light, $clr-blue-bright)
|
||||
|
||||
// Shopfront properties
|
||||
&.property-selectors
|
||||
@include filter-selector(#666, #ccc, #777)
|
||||
173
app/assets/stylesheets/darkswarm/_shop-filters.css.scss
Normal file
173
app/assets/stylesheets/darkswarm/_shop-filters.css.scss
Normal file
@@ -0,0 +1,173 @@
|
||||
@import "mixins";
|
||||
@import "branding";
|
||||
@import "big-input";
|
||||
@import "animations";
|
||||
|
||||
@mixin filter-selector($base-clr, $border-clr, $hover-clr) {
|
||||
&.inline-block, ul.inline-block {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
li {
|
||||
display: inline-block;
|
||||
|
||||
@include border-radius(0);
|
||||
|
||||
padding: 0;
|
||||
margin: 0 0 0.25rem 0.25rem;
|
||||
|
||||
&:hover, &:focus {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
&.active {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
a, a.button {
|
||||
display: block;
|
||||
padding-top: 0.5rem;
|
||||
|
||||
@include border-radius(0.5em);
|
||||
|
||||
border: 1px solid $border-clr;
|
||||
padding: 0.5em 0.625em;
|
||||
font-size: 0.875em;
|
||||
color: $base-clr;
|
||||
font-size: 0.75em;
|
||||
background: white;
|
||||
margin: 0;
|
||||
|
||||
i {
|
||||
padding-left: 0.25rem;
|
||||
}
|
||||
|
||||
render-svg {
|
||||
&, & svg {
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
float: left;
|
||||
padding-right: 0.25rem;
|
||||
|
||||
path {
|
||||
@include csstrans;
|
||||
|
||||
fill: $base-clr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:hover, &:focus {
|
||||
border-color: $hover-clr;
|
||||
color: $hover-clr;
|
||||
|
||||
render-svg {
|
||||
svg {
|
||||
path {
|
||||
fill: $hover-clr;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.disabled {
|
||||
opacity: 0.6;
|
||||
|
||||
&:hover, &:focus {
|
||||
border-color: $border-clr;
|
||||
color: $base-clr;
|
||||
|
||||
render-svg {
|
||||
svg {
|
||||
path {
|
||||
fill: $base-clr;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.active, &.active:hover, &.active:focus {
|
||||
border: 1px solid $base-clr;
|
||||
background: $base-clr;
|
||||
color: white;
|
||||
|
||||
render-svg {
|
||||
svg {
|
||||
path {
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Alert when search, taxon, filter is triggered
|
||||
|
||||
.alert-box.search-alert {
|
||||
background-color: $clr-yellow-light;
|
||||
border-color: $clr-yellow-light;
|
||||
color: #777;
|
||||
font-size: 0.75rem;
|
||||
padding: 0.5rem 0.75rem;
|
||||
|
||||
span.applied-properties {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
span.applied-taxons {
|
||||
color: $clr-blue;
|
||||
}
|
||||
|
||||
span.applied-search {
|
||||
color: $clr-brick;
|
||||
}
|
||||
|
||||
span.filter-label {
|
||||
opacity: 0.75;
|
||||
}
|
||||
}
|
||||
|
||||
// singleLineSelectors directive provides a drop-down that can overlap
|
||||
// content. Ensure that the dropdown appears above the content.
|
||||
.filter-row {
|
||||
position: relative;
|
||||
z-index: 90;
|
||||
}
|
||||
|
||||
.filter-shopfront {
|
||||
&.taxon-selectors, &.property-selectors {
|
||||
background: transparent;
|
||||
|
||||
single-line-selectors {
|
||||
overflow-x: hidden;
|
||||
white-space: nowrap;
|
||||
|
||||
.f-dropdown {
|
||||
overflow-x: auto;
|
||||
white-space: normal;
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
ul, ul li {
|
||||
list-style: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Shopfront taxons
|
||||
&.taxon-selectors {
|
||||
@include filter-selector($clr-blue, $clr-blue-light, $clr-blue-bright);
|
||||
}
|
||||
|
||||
// Shopfront properties
|
||||
&.property-selectors {
|
||||
@include filter-selector(#666, #ccc, #777);
|
||||
}
|
||||
}
|
||||
@@ -1,85 +0,0 @@
|
||||
@import mixins
|
||||
@import variables
|
||||
@import branding
|
||||
@import big-input
|
||||
|
||||
|
||||
.darkswarm
|
||||
// #search
|
||||
@include placeholder(rgba(0,0,0,0.4), #777)
|
||||
|
||||
input#search
|
||||
@include medium-input(rgba(0,0,0,0.3), #777, $clr-brick)
|
||||
|
||||
// ordering
|
||||
product
|
||||
|
||||
input
|
||||
@include border-radius(0)
|
||||
@include csstrans
|
||||
margin: 0
|
||||
width: 10rem
|
||||
display: inline
|
||||
@include box-shadow(none)
|
||||
border-color: #b3b3b3
|
||||
text-align: right
|
||||
|
||||
@media all and (max-width: 1024px)
|
||||
width: 8rem
|
||||
|
||||
@media all and (max-width: 768px)
|
||||
width: 7rem
|
||||
|
||||
@media all and (max-width: 640px)
|
||||
float: left !important
|
||||
font-size: 0.75rem
|
||||
padding-left: 0.25rem
|
||||
padding-right: 0.25rem
|
||||
|
||||
@media all and (max-width: 480px)
|
||||
width: 5.8rem
|
||||
|
||||
&:hover
|
||||
@include box-shadow(none)
|
||||
border-color: #888
|
||||
background-color: #fafafa
|
||||
|
||||
&:active, &:focus, &.active
|
||||
@include box-shadow(none)
|
||||
background-color: #f9f4b9
|
||||
border-color: #666
|
||||
|
||||
|
||||
// BULK
|
||||
|
||||
input.bulk
|
||||
width: 5rem
|
||||
|
||||
@media all and (max-width: 1024px)
|
||||
width: 4rem
|
||||
|
||||
@media all and (max-width: 768px)
|
||||
width: 3.5rem
|
||||
|
||||
@media all and (max-width: 480px)
|
||||
width: 2.8rem
|
||||
|
||||
input.bulk.first
|
||||
border-right: 0
|
||||
|
||||
input.bulk.second
|
||||
border-left: 0
|
||||
|
||||
.bulk-input-container
|
||||
float: right
|
||||
|
||||
@media all and (max-width: 640px)
|
||||
float: left !important
|
||||
|
||||
.bulk-input
|
||||
float: left
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
102
app/assets/stylesheets/darkswarm/_shop-inputs.css.scss
Normal file
102
app/assets/stylesheets/darkswarm/_shop-inputs.css.scss
Normal file
@@ -0,0 +1,102 @@
|
||||
@import "mixins";
|
||||
@import "variables";
|
||||
@import "branding";
|
||||
@import "big-input";
|
||||
|
||||
.darkswarm {
|
||||
// #search
|
||||
@include placeholder(rgba(0, 0, 0, 0.4), #777);
|
||||
|
||||
input#search {
|
||||
@include medium-input(rgba(0, 0, 0, 0.3), #777, $clr-brick);
|
||||
}
|
||||
|
||||
// ordering
|
||||
product {
|
||||
input {
|
||||
@include border-radius(0);
|
||||
|
||||
@include csstrans;
|
||||
|
||||
margin: 0;
|
||||
width: 10rem;
|
||||
display: inline;
|
||||
|
||||
@include box-shadow(none);
|
||||
|
||||
border-color: #b3b3b3;
|
||||
text-align: right;
|
||||
|
||||
@media all and (max-width: 1024px) {
|
||||
width: 8rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
width: 7rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
float: left !important;
|
||||
font-size: 0.75rem;
|
||||
padding-left: 0.25rem;
|
||||
padding-right: 0.25rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 480px) {
|
||||
width: 5.8rem;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
@include box-shadow(none);
|
||||
|
||||
border-color: #888;
|
||||
background-color: #fafafa;
|
||||
}
|
||||
|
||||
&:active, &:focus, &.active {
|
||||
@include box-shadow(none);
|
||||
|
||||
background-color: #f9f4b9;
|
||||
border-color: #666;
|
||||
}
|
||||
}
|
||||
|
||||
// BULK
|
||||
|
||||
input.bulk {
|
||||
width: 5rem;
|
||||
|
||||
@media all and (max-width: 1024px) {
|
||||
width: 4rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
width: 3.5rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 480px) {
|
||||
width: 2.8rem;
|
||||
}
|
||||
}
|
||||
|
||||
input.bulk.first {
|
||||
border-right: 0;
|
||||
}
|
||||
|
||||
input.bulk.second {
|
||||
border-left: 0;
|
||||
}
|
||||
|
||||
.bulk-input-container {
|
||||
float: right;
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
float: left !important;
|
||||
}
|
||||
|
||||
.bulk-input {
|
||||
float: left;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
|
||||
.product-header
|
||||
h1, h2, h3, h4, h5, h6
|
||||
margin: 0
|
||||
hr
|
||||
margin: 0.5em 0
|
||||
9
app/assets/stylesheets/darkswarm/_shop-modals.css.scss
Normal file
9
app/assets/stylesheets/darkswarm/_shop-modals.css.scss
Normal file
@@ -0,0 +1,9 @@
|
||||
.product-header {
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
hr {
|
||||
margin: 0.5em 0;
|
||||
}
|
||||
}
|
||||
@@ -1,112 +0,0 @@
|
||||
@import mixins
|
||||
@import branding
|
||||
|
||||
// .darkswarm
|
||||
// product
|
||||
|
||||
ordercycle
|
||||
.joyride-tip-guide
|
||||
background-color: $clr-brick
|
||||
.joyride-nub.right
|
||||
border-color: $clr-brick !important
|
||||
border-top-color: transparent !important
|
||||
border-right-color: transparent !important
|
||||
border-bottom-color: transparent !important
|
||||
p
|
||||
margin: 0
|
||||
font-weight: 700
|
||||
|
||||
// Pop over
|
||||
// Foundation overrides
|
||||
.joyride-tip-guide.price_breakdown
|
||||
// JS needs to be tweaked to adjust for left alignment - this is dynamic can't rewrite in CSS
|
||||
background-color: #999
|
||||
color: #1f1f1f
|
||||
margin-left: -8px
|
||||
@include box-shadow(0 1px 2px 0 rgba(0,0,0,0.7))
|
||||
|
||||
.joyride-content-wrapper
|
||||
padding: 1.125rem 1.25rem 1.5rem
|
||||
padding: 1rem
|
||||
margin: 1%
|
||||
width: 98%
|
||||
background-color: white
|
||||
|
||||
h1, h2, h3, h4, h5, h6
|
||||
color: #1f1f1f
|
||||
|
||||
.joyride-nub.right
|
||||
top: 38px
|
||||
border-color: #999 !important
|
||||
border-top-color: transparent !important
|
||||
border-right-color: transparent !important
|
||||
border-bottom-color: transparent !important
|
||||
|
||||
.progress
|
||||
background-color: #13bf85
|
||||
padding: 0
|
||||
border: none
|
||||
color: white
|
||||
font-size: 0.75rem
|
||||
font-style: oblique
|
||||
line-height: 1
|
||||
height: auto
|
||||
.right
|
||||
padding: 0.5rem 0.25rem 0 0
|
||||
.meter
|
||||
background-color: #0b8c61
|
||||
padding: 0.5rem 0.25rem
|
||||
border-right: 1px solid #539f92
|
||||
|
||||
.expanded
|
||||
ul, li
|
||||
list-style: none
|
||||
margin: 0
|
||||
font-size: 0.875rem
|
||||
li
|
||||
background-color: #13bf85
|
||||
padding: 0 0.25rem
|
||||
margin-bottom: 2px
|
||||
color: white
|
||||
li.cost
|
||||
background-color: #0b8c61
|
||||
li:last-child
|
||||
margin-bottom: 0.75rem
|
||||
|
||||
|
||||
button.graph-button
|
||||
// z-index: 9999999
|
||||
border: 1px solid transparent
|
||||
padding: 0
|
||||
margin: 0
|
||||
display: inline
|
||||
background-color: rgba(255,255,255,0.5)
|
||||
padding: 4px
|
||||
@include box-shadow(none)
|
||||
@include border-radius(999rem)
|
||||
&:before
|
||||
@include icon-font
|
||||
content: '\e639'
|
||||
color: #999
|
||||
&:focus
|
||||
border: 1px solid #e0e0e0
|
||||
background-color: rgba(255,255,255,1)
|
||||
&:before
|
||||
color: #666
|
||||
&:hover, &:active
|
||||
background-color: rgba(255,255,255,1)
|
||||
border: 1px solid transparent
|
||||
&:before
|
||||
color: $clr-brick-bright
|
||||
@media all and (max-width: 768px)
|
||||
// Hide for small
|
||||
display: none
|
||||
|
||||
button.graph-button.open
|
||||
border: 1px solid transparent
|
||||
background-color: $clr-brick-bright
|
||||
&:before
|
||||
content: '\e608'
|
||||
color: white
|
||||
|
||||
|
||||
152
app/assets/stylesheets/darkswarm/_shop-popovers.css.scss
Normal file
152
app/assets/stylesheets/darkswarm/_shop-popovers.css.scss
Normal file
@@ -0,0 +1,152 @@
|
||||
@import "mixins";
|
||||
@import "branding";
|
||||
|
||||
// .darkswarm
|
||||
// product
|
||||
|
||||
ordercycle {
|
||||
.joyride-tip-guide {
|
||||
background-color: $clr-brick;
|
||||
|
||||
.joyride-nub.right {
|
||||
border-color: $clr-brick !important;
|
||||
border-top-color: transparent !important;
|
||||
border-right-color: transparent !important;
|
||||
border-bottom-color: transparent !important;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Pop over
|
||||
// Foundation overrides
|
||||
.joyride-tip-guide.price_breakdown {
|
||||
// JS needs to be tweaked to adjust for left alignment - this is dynamic can't rewrite in CSS
|
||||
background-color: #999;
|
||||
color: #1f1f1f;
|
||||
margin-left: -8px;
|
||||
|
||||
@include box-shadow(0 1px 2px 0 rgba(0, 0, 0, 0.7));
|
||||
|
||||
.joyride-content-wrapper {
|
||||
padding: 1.125rem 1.25rem 1.5rem;
|
||||
padding: 1rem;
|
||||
margin: 1%;
|
||||
width: 98%;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
color: #1f1f1f;
|
||||
}
|
||||
|
||||
.joyride-nub.right {
|
||||
top: 38px;
|
||||
border-color: #999 !important;
|
||||
border-top-color: transparent !important;
|
||||
border-right-color: transparent !important;
|
||||
border-bottom-color: transparent !important;
|
||||
}
|
||||
|
||||
.progress {
|
||||
background-color: #13bf85;
|
||||
padding: 0;
|
||||
border: none;
|
||||
color: white;
|
||||
font-size: 0.75rem;
|
||||
font-style: oblique;
|
||||
line-height: 1;
|
||||
height: auto;
|
||||
|
||||
.right {
|
||||
padding: 0.5rem 0.25rem 0 0;
|
||||
}
|
||||
|
||||
.meter {
|
||||
background-color: #0b8c61;
|
||||
padding: 0.5rem 0.25rem;
|
||||
border-right: 1px solid #539f92;
|
||||
}
|
||||
}
|
||||
|
||||
.expanded {
|
||||
ul, li {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
li {
|
||||
background-color: #13bf85;
|
||||
padding: 0 0.25rem;
|
||||
margin-bottom: 2px;
|
||||
color: white;
|
||||
}
|
||||
|
||||
li.cost {
|
||||
background-color: #0b8c61;
|
||||
}
|
||||
|
||||
li:last-child {
|
||||
margin-bottom: 0.75rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
button.graph-button {
|
||||
// z-index: 9999999
|
||||
border: 1px solid transparent;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
display: inline;
|
||||
background-color: rgba(255, 255, 255, 0.5);
|
||||
padding: 4px;
|
||||
|
||||
@include box-shadow(none);
|
||||
|
||||
@include border-radius(999rem);
|
||||
|
||||
&:before {
|
||||
@include icon-font;
|
||||
|
||||
content: "";
|
||||
color: #999;
|
||||
}
|
||||
|
||||
&:focus {
|
||||
border: 1px solid #e0e0e0;
|
||||
background-color: rgba(255, 255, 255, 1);
|
||||
|
||||
&:before {
|
||||
color: #666;
|
||||
}
|
||||
}
|
||||
|
||||
&:hover, &:active {
|
||||
background-color: rgba(255, 255, 255, 1);
|
||||
border: 1px solid transparent;
|
||||
|
||||
&:before {
|
||||
color: $clr-brick-bright;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
// Hide for small
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
button.graph-button.open {
|
||||
border: 1px solid transparent;
|
||||
background-color: $clr-brick-bright;
|
||||
|
||||
&:before {
|
||||
content: "";
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
@@ -1,123 +0,0 @@
|
||||
@import branding.css.sass
|
||||
@import animations.sass
|
||||
|
||||
.darkswarm
|
||||
products
|
||||
product
|
||||
// GENERAL LAYOUT
|
||||
.row
|
||||
.columns
|
||||
padding-top: 0em
|
||||
padding-bottom: 0em
|
||||
display: table
|
||||
line-height: 1.1
|
||||
// outline: 1px solid red
|
||||
|
||||
@media all and (max-width: 768px)
|
||||
font-size: 0.875rem
|
||||
|
||||
@media all and (max-width: 640px)
|
||||
font-size: 0.75rem
|
||||
|
||||
.table-cell
|
||||
display: table-cell
|
||||
vertical-align: middle
|
||||
height: 37px
|
||||
|
||||
// ROW VARIANTS
|
||||
.row.variants
|
||||
margin-left: 0
|
||||
margin-right: 0
|
||||
background-color: #ECECEC
|
||||
&:hover, &:focus, &:active
|
||||
background-color: $clr-brick-light
|
||||
&:nth-of-type(even)
|
||||
background-color: #f9f9f9
|
||||
&:hover, &:focus, &:active
|
||||
background-color: $clr-brick-ultra-light
|
||||
|
||||
&.out-of-stock
|
||||
opacity: 0.2
|
||||
|
||||
// Variant name
|
||||
.variant-name
|
||||
padding-left: 7.9375rem
|
||||
@media all and (max-width: 768px)
|
||||
padding-left: 4.9375rem
|
||||
|
||||
.variant-name
|
||||
@media all and (max-width: 640px)
|
||||
background: #333
|
||||
color: white
|
||||
padding-left: 0.9375rem
|
||||
font-weight: bold
|
||||
.table-cell
|
||||
height: 27px
|
||||
|
||||
// Variant unit
|
||||
.variant-unit
|
||||
padding-left: 0rem
|
||||
padding-right: 0rem
|
||||
color: #888
|
||||
font-size: 0.875rem
|
||||
overflow: hidden
|
||||
|
||||
@media all and (max-width: 768px)
|
||||
font-size: 0.75rem
|
||||
|
||||
// Variant price
|
||||
.variant-price
|
||||
padding-left: 0.25rem
|
||||
padding-right: 0.25rem
|
||||
@media all and (max-width: 640px)
|
||||
text-align: right
|
||||
|
||||
// Total price
|
||||
.total-price
|
||||
padding-left: 0rem
|
||||
color: $disabled-med
|
||||
.filled
|
||||
color: $med-drk-grey
|
||||
@media all and (max-width: 640px)
|
||||
background: #777
|
||||
color: $disabled-med
|
||||
.filled
|
||||
color: white
|
||||
.table-cell
|
||||
height: 27px
|
||||
|
||||
// ROW SUMMARY
|
||||
.row.summary
|
||||
margin-left: 0
|
||||
margin-right: 0
|
||||
background: #fff
|
||||
|
||||
.columns
|
||||
padding-top: 1em
|
||||
padding-bottom: 1em
|
||||
line-height: 1
|
||||
|
||||
@media all and (max-width: 768px)
|
||||
padding-top: 0.65rem
|
||||
padding-bottom: 0.65rem
|
||||
|
||||
.summary-header
|
||||
padding-left: 7.9375rem
|
||||
@media all and (max-width: 768px)
|
||||
padding-left: 4.9375rem
|
||||
@media all and (max-width: 640px)
|
||||
padding-left: 0.9375rem
|
||||
small
|
||||
font-size: 80%
|
||||
h3
|
||||
font-size: 1.5rem
|
||||
margin: 0
|
||||
h3 a
|
||||
color: #222
|
||||
i
|
||||
@include csstrans
|
||||
font-size: 0.6em
|
||||
&:hover, &:focus, &:active
|
||||
color: $clr-brick
|
||||
i
|
||||
font-size: 0.8em
|
||||
182
app/assets/stylesheets/darkswarm/_shop-product-rows.css.scss
Normal file
182
app/assets/stylesheets/darkswarm/_shop-product-rows.css.scss
Normal file
@@ -0,0 +1,182 @@
|
||||
@import "branding";
|
||||
@import "animations";
|
||||
|
||||
.darkswarm {
|
||||
products {
|
||||
product {
|
||||
// GENERAL LAYOUT
|
||||
.row {
|
||||
.columns {
|
||||
padding-top: 0em;
|
||||
padding-bottom: 0em;
|
||||
display: table;
|
||||
line-height: 1.1;
|
||||
|
||||
// outline: 1px solid red
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
.table-cell {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
height: 37px;
|
||||
}
|
||||
}
|
||||
|
||||
// ROW VARIANTS
|
||||
.row.variants {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
background-color: #ECECEC;
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
background-color: $clr-brick-light;
|
||||
}
|
||||
|
||||
&:nth-of-type(even) {
|
||||
background-color: #f9f9f9;
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
background-color: $clr-brick-ultra-light;
|
||||
}
|
||||
}
|
||||
|
||||
&.out-of-stock {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
// Variant name
|
||||
.variant-name {
|
||||
padding-left: 7.9375rem;
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
padding-left: 4.9375rem;
|
||||
}
|
||||
}
|
||||
|
||||
.variant-name {
|
||||
@media all and (max-width: 640px) {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding-left: 0.9375rem;
|
||||
font-weight: bold;
|
||||
|
||||
.table-cell {
|
||||
height: 27px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Variant unit
|
||||
.variant-unit {
|
||||
padding-left: 0rem;
|
||||
padding-right: 0rem;
|
||||
color: #888;
|
||||
font-size: 0.875rem;
|
||||
overflow: hidden;
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
// Variant price
|
||||
.variant-price {
|
||||
padding-left: 0.25rem;
|
||||
padding-right: 0.25rem;
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
// Total price
|
||||
.total-price {
|
||||
padding-left: 0rem;
|
||||
color: $disabled-med;
|
||||
|
||||
.filled {
|
||||
color: $med-drk-grey;
|
||||
}
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
background: #777;
|
||||
color: $disabled-med;
|
||||
|
||||
.filled {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.table-cell {
|
||||
height: 27px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ROW SUMMARY
|
||||
.row.summary {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
background: #fff;
|
||||
|
||||
.columns {
|
||||
padding-top: 1em;
|
||||
padding-bottom: 1em;
|
||||
line-height: 1;
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
padding-top: 0.65rem;
|
||||
padding-bottom: 0.65rem;
|
||||
}
|
||||
}
|
||||
|
||||
.summary-header {
|
||||
padding-left: 7.9375rem;
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
padding-left: 4.9375rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
padding-left: 0.9375rem;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.5rem;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
h3 a {
|
||||
color: #222;
|
||||
|
||||
i {
|
||||
@include csstrans;
|
||||
|
||||
font-size: 0.6em;
|
||||
}
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
color: $clr-brick;
|
||||
|
||||
i {
|
||||
font-size: 0.8em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,59 +0,0 @@
|
||||
@import branding
|
||||
@import animations.sass
|
||||
|
||||
.darkswarm
|
||||
products
|
||||
product
|
||||
.product-thumb
|
||||
@include csstrans
|
||||
position: absolute
|
||||
top: 2px
|
||||
left: 0px
|
||||
width: 7rem
|
||||
height: 7rem
|
||||
float: left
|
||||
display: block
|
||||
z-index: 1
|
||||
background-color: white
|
||||
overflow: hidden
|
||||
i
|
||||
@include csstrans
|
||||
transition-delay: 150ms
|
||||
position: absolute
|
||||
left: 45%
|
||||
top: 45%
|
||||
z-index: 99999
|
||||
color: white
|
||||
font-size: 1rem
|
||||
opacity: 0
|
||||
img
|
||||
@include csstrans
|
||||
opacity: 1
|
||||
@include transform-scale(scale(1))
|
||||
|
||||
&:hover, &:focus, &:active
|
||||
background-color: $clr-brick
|
||||
i
|
||||
left: 32%
|
||||
top: 30%
|
||||
font-size: 3rem
|
||||
opacity: 1
|
||||
img
|
||||
opacity: 0.5
|
||||
@include transform-scale(scale(1.1))
|
||||
|
||||
@media all and (max-width: 768px)
|
||||
top: 2px
|
||||
width: 4rem
|
||||
height: 4rem
|
||||
&:hover, &:focus, &:active
|
||||
i
|
||||
left: 30%
|
||||
top: 30%
|
||||
font-size: 2rem
|
||||
@media all and (max-width: 640px)
|
||||
display: none
|
||||
width: 0rem
|
||||
height: 0rem
|
||||
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
@import "branding";
|
||||
@import "animations";
|
||||
|
||||
.darkswarm {
|
||||
products {
|
||||
product {
|
||||
.product-thumb {
|
||||
@include csstrans;
|
||||
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
left: 0px;
|
||||
width: 7rem;
|
||||
height: 7rem;
|
||||
float: left;
|
||||
display: block;
|
||||
z-index: 1;
|
||||
background-color: white;
|
||||
overflow: hidden;
|
||||
|
||||
i {
|
||||
@include csstrans;
|
||||
|
||||
transition-delay: 150ms;
|
||||
position: absolute;
|
||||
left: 45%;
|
||||
top: 45%;
|
||||
z-index: 99999;
|
||||
color: white;
|
||||
font-size: 1rem;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
img {
|
||||
@include csstrans;
|
||||
|
||||
opacity: 1;
|
||||
|
||||
@include transform-scale(scale(1));
|
||||
}
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
background-color: $clr-brick;
|
||||
|
||||
i {
|
||||
left: 32%;
|
||||
top: 30%;
|
||||
font-size: 3rem;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
img {
|
||||
opacity: 0.5;
|
||||
|
||||
@include transform-scale(scale(1.1));
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
top: 2px;
|
||||
width: 4rem;
|
||||
height: 4rem;
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
i {
|
||||
left: 30%;
|
||||
top: 30%;
|
||||
font-size: 2rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
display: none;
|
||||
width: 0rem;
|
||||
height: 0rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,31 +0,0 @@
|
||||
.darkswarm
|
||||
products
|
||||
product
|
||||
.taxon-flag
|
||||
background: transparent url("/assets/flag.svg") top center no-repeat
|
||||
background-size: 34px 39px
|
||||
min-height: 40px
|
||||
width: 34px
|
||||
margin-top: -1.1rem
|
||||
padding-top: 0.25rem
|
||||
z-index: 999999
|
||||
@media all and (max-width: 480px)
|
||||
background-size: 28px 32px
|
||||
min-height: 32px
|
||||
width: 28px
|
||||
|
||||
render-svg
|
||||
svg
|
||||
width: 24px
|
||||
height: 24px
|
||||
path
|
||||
fill: #999
|
||||
|
||||
@media all and (max-width: 768px)
|
||||
margin-top: -0.85rem
|
||||
|
||||
@media all and (max-width: 480px)
|
||||
render-svg
|
||||
svg
|
||||
width: 18px
|
||||
height: 18px
|
||||
45
app/assets/stylesheets/darkswarm/_shop-taxon-flag.css.scss
Normal file
45
app/assets/stylesheets/darkswarm/_shop-taxon-flag.css.scss
Normal file
@@ -0,0 +1,45 @@
|
||||
.darkswarm {
|
||||
products {
|
||||
product {
|
||||
.taxon-flag {
|
||||
background: transparent url("/assets/flag.svg") top center no-repeat;
|
||||
background-size: 34px 39px;
|
||||
min-height: 40px;
|
||||
width: 34px;
|
||||
margin-top: -1.1rem;
|
||||
padding-top: 0.25rem;
|
||||
z-index: 999999;
|
||||
|
||||
@media all and (max-width: 480px) {
|
||||
background-size: 28px 32px;
|
||||
min-height: 32px;
|
||||
width: 28px;
|
||||
}
|
||||
|
||||
render-svg {
|
||||
svg {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
|
||||
path {
|
||||
fill: #999;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
margin-top: -0.85rem;
|
||||
}
|
||||
|
||||
@media all and (max-width: 480px) {
|
||||
render-svg {
|
||||
svg {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,70 +0,0 @@
|
||||
@import branding
|
||||
@import mixins
|
||||
|
||||
.orders
|
||||
@include sidepaddingSm
|
||||
@include panepadding
|
||||
padding-top: 10px
|
||||
|
||||
h3
|
||||
padding-top: 2em
|
||||
|
||||
a
|
||||
color: $clr-brick
|
||||
&:hover, &:active, &:focus
|
||||
color: $clr-brick-med-bright
|
||||
|
||||
img
|
||||
display: block
|
||||
width: 80px
|
||||
height: auto
|
||||
|
||||
i.ofn-i_059-producer, i.ofn-i_060-producer-reversed
|
||||
font-size: 3rem
|
||||
display: inline-block
|
||||
margin-right: 0.25rem
|
||||
float: left
|
||||
color: $clr-turquoise
|
||||
|
||||
.credit
|
||||
color: green
|
||||
|
||||
.debit
|
||||
color: $clr-brick
|
||||
|
||||
.invalid
|
||||
color: $ofn-grey
|
||||
.credit
|
||||
color: $ofn-grey
|
||||
.debit
|
||||
color: $ofn-grey
|
||||
|
||||
.distributor-balance.paid
|
||||
visibility: hidden
|
||||
|
||||
.transaction-group
|
||||
|
||||
|
||||
table
|
||||
border-radius: 0.5em 0.5em 0 0
|
||||
tr:nth-of-type(even)
|
||||
background: transparent // clear previous
|
||||
tbody.odd
|
||||
tr
|
||||
background-color: #f9f9f9
|
||||
border: none
|
||||
// Column widths for order table
|
||||
.order1
|
||||
width: 20%
|
||||
.order2
|
||||
width: 20%
|
||||
.order3
|
||||
width: 20%
|
||||
.order4
|
||||
width: 10%
|
||||
.order5
|
||||
width: 10%
|
||||
.order6
|
||||
width: 10%
|
||||
.order7
|
||||
width: 10%
|
||||
106
app/assets/stylesheets/darkswarm/account.css.scss
Normal file
106
app/assets/stylesheets/darkswarm/account.css.scss
Normal file
@@ -0,0 +1,106 @@
|
||||
@import "branding";
|
||||
@import "mixins";
|
||||
|
||||
.orders {
|
||||
@include sidepaddingSm;
|
||||
|
||||
@include panepadding;
|
||||
|
||||
padding-top: 10px;
|
||||
|
||||
h3 {
|
||||
padding-top: 2em;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $clr-brick;
|
||||
|
||||
&:hover, &:active, &:focus {
|
||||
color: $clr-brick-med-bright;
|
||||
}
|
||||
}
|
||||
|
||||
img {
|
||||
display: block;
|
||||
width: 80px;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
i.ofn-i_059-producer, i.ofn-i_060-producer-reversed {
|
||||
font-size: 3rem;
|
||||
display: inline-block;
|
||||
margin-right: 0.25rem;
|
||||
float: left;
|
||||
color: $clr-turquoise;
|
||||
}
|
||||
|
||||
.credit {
|
||||
color: green;
|
||||
}
|
||||
|
||||
.debit {
|
||||
color: $clr-brick;
|
||||
}
|
||||
|
||||
.invalid {
|
||||
color: $ofn-grey;
|
||||
|
||||
.credit {
|
||||
color: $ofn-grey;
|
||||
}
|
||||
|
||||
.debit {
|
||||
color: $ofn-grey;
|
||||
}
|
||||
}
|
||||
|
||||
.distributor-balance.paid {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.transaction-group {}
|
||||
|
||||
table {
|
||||
border-radius: 0.5em 0.5em 0 0;
|
||||
|
||||
tr:nth-of-type(even) {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
tbody.odd {
|
||||
tr {
|
||||
background-color: #f9f9f9;
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Column widths for order table
|
||||
.order1 {
|
||||
width: 20%;
|
||||
}
|
||||
|
||||
.order2 {
|
||||
width: 20%;
|
||||
}
|
||||
|
||||
.order3 {
|
||||
width: 20%;
|
||||
}
|
||||
|
||||
.order4 {
|
||||
width: 10%;
|
||||
}
|
||||
|
||||
.order5 {
|
||||
width: 10%;
|
||||
}
|
||||
|
||||
.order6 {
|
||||
width: 10%;
|
||||
}
|
||||
|
||||
.order7 {
|
||||
width: 10%;
|
||||
}
|
||||
}
|
||||
@@ -1,114 +0,0 @@
|
||||
@import branding
|
||||
@import mixins
|
||||
@import "compass/css3/user-interface"
|
||||
|
||||
|
||||
.no-results
|
||||
font-size: 1.875rem
|
||||
|
||||
.active_table
|
||||
margin: 2em 0em
|
||||
@include user-select(none)
|
||||
.active_table_row
|
||||
display: block
|
||||
cursor: pointer
|
||||
&:first-child
|
||||
padding: 1rem 0
|
||||
|
||||
.active_table .active_table_node
|
||||
margin-top: 0.25rem
|
||||
display: block
|
||||
border: 0
|
||||
|
||||
@media all and (max-width: 640px)
|
||||
margin-bottom: 1rem
|
||||
|
||||
//Generic text link style
|
||||
a:hover, a:active, a:focus
|
||||
color: $dark-grey
|
||||
span
|
||||
text-decoration: underline
|
||||
|
||||
span.margin-top
|
||||
margin-top: 0.5rem
|
||||
display: inline-block
|
||||
|
||||
// Generic text resize
|
||||
@media all and (max-width: 640px)
|
||||
&, & *
|
||||
font-size: 0.875rem
|
||||
fat > div label
|
||||
&, & *
|
||||
font-size: 0.75rem
|
||||
|
||||
// Inherits from active_table
|
||||
.active_table_row
|
||||
border: 1px solid transparent
|
||||
@include border-radius(0.5em)
|
||||
|
||||
// Foundation overrides
|
||||
margin-left: 0
|
||||
margin-right: 0
|
||||
|
||||
&, & > a.row
|
||||
display: block
|
||||
|
||||
.active_table_row.link
|
||||
border: 0
|
||||
|
||||
&.open
|
||||
// .active_table_row:nth-child(2)
|
||||
|
||||
.active_table_row
|
||||
border-left: 1px solid $disabled-bright
|
||||
border-right: 1px solid $disabled-bright
|
||||
border-top: 0
|
||||
border-bottom: 0
|
||||
@include border-radius(0)
|
||||
|
||||
.active_table_row:first-child
|
||||
border-top: 1px solid $disabled-bright
|
||||
color: $dark-grey
|
||||
@include border-radius-mixed(0.5em, 0.5em, 0, 0)
|
||||
&:hover, &:active, &:focus
|
||||
// color: $dark-grey
|
||||
|
||||
.active_table_row:last-child
|
||||
border-bottom: 1px solid $disabled-bright
|
||||
@include border-radius-mixed(0, 0, 0.5em, 0.5em)
|
||||
|
||||
|
||||
//Open row sections
|
||||
.fat > div
|
||||
border-top: 1px solid #aaa
|
||||
@media all and (max-width: 640px)
|
||||
margin-top: 1em
|
||||
|
||||
ul, ol
|
||||
font-size: 0.875rem
|
||||
|
||||
[class*="block-grid-"] > li
|
||||
padding-bottom: 0.25rem !important
|
||||
|
||||
label
|
||||
text-transform: uppercase
|
||||
font-size: 0.75rem
|
||||
margin-top: 0.25rem
|
||||
margin-bottom: 0.25rem
|
||||
color: #777
|
||||
|
||||
p.trans-sentence
|
||||
text-transform: capitalize
|
||||
|
||||
&.closed
|
||||
&:hover, &:active, &:focus
|
||||
.active_table_row.closed
|
||||
border: 1px solid $disabled-bright
|
||||
|
||||
&.current
|
||||
&.closed
|
||||
&, & *
|
||||
color: $dark-grey
|
||||
&.open
|
||||
.active_table_row:first-child
|
||||
color: $dark-grey
|
||||
160
app/assets/stylesheets/darkswarm/active_table.css.scss
Normal file
160
app/assets/stylesheets/darkswarm/active_table.css.scss
Normal file
@@ -0,0 +1,160 @@
|
||||
@import "branding";
|
||||
@import "mixins";
|
||||
@import "compass/css3/user-interface";
|
||||
|
||||
.no-results {
|
||||
font-size: 1.875rem;
|
||||
}
|
||||
|
||||
.active_table {
|
||||
margin: 2em 0em;
|
||||
|
||||
@include user-select(none);
|
||||
|
||||
.active_table_row {
|
||||
display: block;
|
||||
cursor: pointer;
|
||||
|
||||
&:first-child {
|
||||
padding: 1rem 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.active_table .active_table_node {
|
||||
margin-top: 0.25rem;
|
||||
display: block;
|
||||
border: 0;
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
//Generic text link style
|
||||
a:hover, a:active, a:focus {
|
||||
color: $dark-grey;
|
||||
|
||||
span {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
span.margin-top {
|
||||
margin-top: 0.5rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
// Generic text resize
|
||||
@media all and (max-width: 640px) {
|
||||
&, & * {
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
fat > div label {
|
||||
&, & * {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Inherits from active_table
|
||||
.active_table_row {
|
||||
border: 1px solid transparent;
|
||||
|
||||
@include border-radius(0.5em);
|
||||
|
||||
// Foundation overrides
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
|
||||
&, & > a.row {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.active_table_row.link {
|
||||
border: 0;
|
||||
}
|
||||
|
||||
&.open {
|
||||
// .active_table_row:nth-child(2)
|
||||
|
||||
.active_table_row {
|
||||
border-left: 1px solid $disabled-bright;
|
||||
border-right: 1px solid $disabled-bright;
|
||||
border-top: 0;
|
||||
border-bottom: 0;
|
||||
|
||||
@include border-radius(0);
|
||||
}
|
||||
|
||||
.active_table_row:first-child {
|
||||
border-top: 1px solid $disabled-bright;
|
||||
color: $dark-grey;
|
||||
|
||||
@include border-radius-mixed(0.5em, 0.5em, 0, 0);
|
||||
|
||||
&:hover, &:active, &:focus {
|
||||
// color: $dark-grey
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.active_table_row:last-child {
|
||||
border-bottom: 1px solid $disabled-bright;
|
||||
|
||||
@include border-radius-mixed(0, 0, 0.5em, 0.5em);
|
||||
}
|
||||
|
||||
//Open row sections
|
||||
.fat > div {
|
||||
border-top: 1px solid #aaa;
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
[class*="block-grid-"] > li {
|
||||
padding-bottom: 0.25rem !important;
|
||||
}
|
||||
|
||||
label {
|
||||
text-transform: uppercase;
|
||||
font-size: 0.75rem;
|
||||
margin-top: 0.25rem;
|
||||
margin-bottom: 0.25rem;
|
||||
color: #777;
|
||||
}
|
||||
}
|
||||
|
||||
p.trans-sentence {
|
||||
text-transform: capitalize;
|
||||
}
|
||||
}
|
||||
|
||||
&.closed {
|
||||
&:hover, &:active, &:focus {
|
||||
.active_table_row.closed {
|
||||
border: 1px solid $disabled-bright;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.current {
|
||||
&.closed {
|
||||
&, & * {
|
||||
color: $dark-grey;
|
||||
}
|
||||
}
|
||||
|
||||
&.open {
|
||||
.active_table_row:first-child {
|
||||
color: $dark-grey;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,117 +0,0 @@
|
||||
@import mixins
|
||||
@import branding
|
||||
@import big-input
|
||||
@import animations
|
||||
|
||||
// Filter-box
|
||||
.row .row.filter-box
|
||||
margin-left: 0
|
||||
margin-right: 0
|
||||
|
||||
.row.filter-box:first-child
|
||||
border: 1px solid $clr-blue-light
|
||||
@include border-radius(0.25em)
|
||||
margin-top: 2px
|
||||
@media all and (max-width: 640px)
|
||||
margin-bottom: 1em
|
||||
|
||||
.row.filter-box.clear-filters
|
||||
background: transparent
|
||||
margin-top: 1em
|
||||
|
||||
products .filter-box
|
||||
background: #f7f7f7
|
||||
|
||||
.filter-box
|
||||
background: rgba(245,245,245,0.6)
|
||||
.tdhead
|
||||
padding: 0.25rem 0.5rem
|
||||
margin-top: 0.9rem
|
||||
color: $clr-blue
|
||||
border-bottom: 1px solid $clr-blue-light
|
||||
|
||||
// OVERRIDES
|
||||
[class*="block-grid-"]
|
||||
margin: 0 0 0.5rem 0
|
||||
[class*="block-grid-"] > li
|
||||
padding-bottom: 0.5rem !important
|
||||
|
||||
li
|
||||
@include border-radius(12px)
|
||||
padding-top: 0.5rem
|
||||
margin-bottom: 0.25rem
|
||||
&:hover, &:focus
|
||||
background: rgba(255,255,255,0.25)
|
||||
li.active
|
||||
background: white
|
||||
@include box-shadow(inset 0 1px 3px 0 rgba(143,48,29,0.5))
|
||||
|
||||
li.active a
|
||||
color: $clr-brick
|
||||
render-svg
|
||||
svg
|
||||
path
|
||||
fill: $clr-brick
|
||||
&:hover, &:focus
|
||||
border-color: $clr-brick-bright
|
||||
|
||||
li a
|
||||
@include csstrans
|
||||
display: table
|
||||
table-layout: fixed
|
||||
text-transform: capitalize
|
||||
overflow: visible
|
||||
line-height: 1
|
||||
color: $med-drk-grey
|
||||
font-size: 0.875rem
|
||||
span
|
||||
display: table-cell
|
||||
vertical-align: middle
|
||||
text-align: left
|
||||
i
|
||||
display: block
|
||||
font-size: 1.5rem
|
||||
margin: 0 0.2rem 0 0
|
||||
|
||||
&:hover, &:focus
|
||||
color: $clr-brick-bright
|
||||
|
||||
render-svg
|
||||
svg
|
||||
path
|
||||
fill: $clr-brick-bright
|
||||
|
||||
&:active, &.active
|
||||
color: $clr-brick
|
||||
render-svg
|
||||
svg
|
||||
path
|
||||
fill: $clr-brick
|
||||
|
||||
render-svg
|
||||
display: block
|
||||
width: 1.5rem
|
||||
height: 1.5rem
|
||||
margin: 0 0.2rem 0 0
|
||||
padding: 0
|
||||
svg
|
||||
width: 1.5rem
|
||||
height: 1.5rem
|
||||
path
|
||||
fill: #666
|
||||
|
||||
.button.filterbtn
|
||||
margin-bottom: 0 !important
|
||||
min-width: 160px
|
||||
|
||||
#active-table-search
|
||||
position: relative
|
||||
@include placeholder(rgba(0,0,0,0.4), #777)
|
||||
input[type="text"]
|
||||
@include big-input(rgba(0,0,0,0.3), #777, $clr-brick)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
164
app/assets/stylesheets/darkswarm/active_table_search.css.scss
Normal file
164
app/assets/stylesheets/darkswarm/active_table_search.css.scss
Normal file
@@ -0,0 +1,164 @@
|
||||
@import "mixins";
|
||||
@import "branding";
|
||||
@import "big-input";
|
||||
@import "animations";
|
||||
|
||||
// Filter-box
|
||||
.row .row.filter-box {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.row.filter-box:first-child {
|
||||
border: 1px solid $clr-blue-light;
|
||||
|
||||
@include border-radius(0.25em);
|
||||
|
||||
margin-top: 2px;
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
}
|
||||
|
||||
.row.filter-box.clear-filters {
|
||||
background: transparent;
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
products .filter-box {
|
||||
background: #f7f7f7;
|
||||
}
|
||||
|
||||
.filter-box {
|
||||
background: rgba(245, 245, 245, 0.6);
|
||||
|
||||
.tdhead {
|
||||
padding: 0.25rem 0.5rem;
|
||||
margin-top: 0.9rem;
|
||||
color: $clr-blue;
|
||||
border-bottom: 1px solid $clr-blue-light;
|
||||
}
|
||||
|
||||
// OVERRIDES
|
||||
[class*="block-grid-"] {
|
||||
margin: 0 0 0.5rem 0;
|
||||
}
|
||||
|
||||
[class*="block-grid-"] > li {
|
||||
padding-bottom: 0.5rem !important;
|
||||
}
|
||||
|
||||
li {
|
||||
@include border-radius(12px);
|
||||
|
||||
padding-top: 0.5rem;
|
||||
margin-bottom: 0.25rem;
|
||||
|
||||
&:hover, &:focus {
|
||||
background: rgba(255, 255, 255, 0.25);
|
||||
}
|
||||
}
|
||||
|
||||
li.active {
|
||||
background: white;
|
||||
|
||||
@include box-shadow(inset 0 1px 3px 0 rgba(143, 48, 29, 0.5));
|
||||
}
|
||||
|
||||
li.active a {
|
||||
color: $clr-brick;
|
||||
|
||||
render-svg {
|
||||
svg {
|
||||
path {
|
||||
fill: $clr-brick;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:hover, &:focus {
|
||||
border-color: $clr-brick-bright;
|
||||
}
|
||||
}
|
||||
|
||||
li a {
|
||||
@include csstrans;
|
||||
|
||||
display: table;
|
||||
table-layout: fixed;
|
||||
text-transform: capitalize;
|
||||
overflow: visible;
|
||||
line-height: 1;
|
||||
color: $med-drk-grey;
|
||||
font-size: 0.875rem;
|
||||
|
||||
span {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
i {
|
||||
display: block;
|
||||
font-size: 1.5rem;
|
||||
margin: 0 0.2rem 0 0;
|
||||
}
|
||||
|
||||
&:hover, &:focus {
|
||||
color: $clr-brick-bright;
|
||||
|
||||
render-svg {
|
||||
svg {
|
||||
path {
|
||||
fill: $clr-brick-bright;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:active, &.active {
|
||||
color: $clr-brick;
|
||||
|
||||
render-svg {
|
||||
svg {
|
||||
path {
|
||||
fill: $clr-brick;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
render-svg {
|
||||
display: block;
|
||||
width: 1.5rem;
|
||||
height: 1.5rem;
|
||||
margin: 0 0.2rem 0 0;
|
||||
padding: 0;
|
||||
|
||||
svg {
|
||||
width: 1.5rem;
|
||||
height: 1.5rem;
|
||||
|
||||
path {
|
||||
fill: #666;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.button.filterbtn {
|
||||
margin-bottom: 0 !important;
|
||||
min-width: 160px;
|
||||
}
|
||||
|
||||
#active-table-search {
|
||||
position: relative;
|
||||
|
||||
@include placeholder(rgba(0, 0, 0, 0.4), #777);
|
||||
|
||||
input[type="text"] {
|
||||
@include big-input(rgba(0, 0, 0, 0.3), #777, $clr-brick);
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,4 @@
|
||||
// https://docs.angularjs.org/api/ng/directive/ngCloak
|
||||
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak
|
||||
display: none !important
|
||||
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
|
||||
display: none !important;
|
||||
}
|
||||
@@ -1,217 +0,0 @@
|
||||
@import mixins
|
||||
|
||||
// ANIMATION FUNCTIONS
|
||||
|
||||
|
||||
//
|
||||
@-webkit-keyframes slideInDown
|
||||
0%
|
||||
opacity: 0
|
||||
-webkit-transform: translateY(-20px)
|
||||
transform: translateY(-20px)
|
||||
100%
|
||||
-webkit-transform: translateY(0)
|
||||
transform: translateY(0)
|
||||
|
||||
@keyframes slideInDown
|
||||
0%
|
||||
opacity: 0
|
||||
-webkit-transform: translateY(-20px)
|
||||
-ms-transform: translateY(-20px)
|
||||
transform: translateY(-20px)
|
||||
100%
|
||||
-webkit-transform: translateY(0)
|
||||
-ms-transform: translateY(0)
|
||||
transform: translateY(0)
|
||||
|
||||
|
||||
|
||||
@-webkit-keyframes slideOutUp
|
||||
0%
|
||||
-webkit-transform: translateY(0)
|
||||
transform: translateY(0)
|
||||
100%
|
||||
opacity: 0
|
||||
-webkit-transform: translateY(-20px)
|
||||
transform: translateY(-20px)
|
||||
|
||||
|
||||
@keyframes slideOutUp
|
||||
0%
|
||||
-webkit-transform: translateY(0)
|
||||
-ms-transform: translateY(0)
|
||||
transform: translateY(0)
|
||||
|
||||
@-webkit-keyframes fadeIn
|
||||
0%
|
||||
opacity: 0
|
||||
100%
|
||||
opacity: 1
|
||||
|
||||
|
||||
@keyframes fadeIn
|
||||
0%
|
||||
opacity: 0
|
||||
100%
|
||||
opacity: 1
|
||||
|
||||
@-webkit-keyframes spin
|
||||
0%
|
||||
-webkit-transform: rotate(0deg)
|
||||
transform: rotate(0deg)
|
||||
100%
|
||||
-webkit-transform: rotate(359deg)
|
||||
transform: rotate(359deg)
|
||||
@keyframes spin
|
||||
0%
|
||||
-webkit-transform: rotate(0deg)
|
||||
transform: rotate(0deg)
|
||||
100%
|
||||
-webkit-transform: rotate(359deg)
|
||||
transform: rotate(359deg)
|
||||
|
||||
// ANIMATION CLASSES
|
||||
|
||||
.fade
|
||||
opacity: 0
|
||||
-webkit-transition: opacity .15s linear
|
||||
transition: opacity .15s linear
|
||||
|
||||
.fade.in
|
||||
opacity: 1
|
||||
|
||||
.reveal-modal.fade
|
||||
-webkit-transition: -webkit-transform .2s ease-out
|
||||
-moz-transition: -moz-transform .2s ease-out
|
||||
-o-transition: -o-transform .2s ease-out
|
||||
transition: transform .2s ease-out
|
||||
-webkit-transform: translate(0, -25%)
|
||||
-ms-transform: translate(0, -25%)
|
||||
transform: translate(0, -25%)
|
||||
|
||||
.reveal-modal.in
|
||||
-webkit-transform: translate(0, 0)
|
||||
-ms-transform: translate(0, 0)
|
||||
transform: translate(0, 0)
|
||||
|
||||
.reveal-modal-bg.fade
|
||||
filter: alpha(opacity = 0)
|
||||
opacity: 0
|
||||
|
||||
.reveal-modal-bg.in
|
||||
filter: alpha(opacity = 50)
|
||||
opacity: .5
|
||||
|
||||
|
||||
.animate-repeat
|
||||
&.ng-move, &.ng-enter, &.ng-leave
|
||||
-webkit-transition: all 300ms linear
|
||||
transition: all 300ms linear
|
||||
|
||||
&.ng-leave
|
||||
opacity: 1
|
||||
&.ng-leave-active
|
||||
opacity: 0
|
||||
|
||||
&.ng-enter
|
||||
opacity: 0
|
||||
&.ng-enter-active
|
||||
opacity: 1
|
||||
|
||||
product.animate-repeat
|
||||
&.ng-leave
|
||||
border-color: rgba(153, 153, 153, 1)
|
||||
&.ng-leave-active
|
||||
border-color: rgba(153, 153, 153, 0)
|
||||
|
||||
&.ng-enter
|
||||
border-color: rgba(153, 153, 153, 0)
|
||||
&.ng-enter-active
|
||||
border-color: rgba(153, 153, 153, 1)
|
||||
|
||||
.animate-show
|
||||
-webkit-animation-name: slideInDown
|
||||
animation-name: slideInDown
|
||||
-webkit-animation-duration: 0.5s
|
||||
animation-duration: 0.5s
|
||||
-webkit-animation-fill-mode: both
|
||||
animation-fill-mode: both
|
||||
// line-height: 20px
|
||||
// opacity: 1
|
||||
|
||||
.animate-show.ng-hide-add,
|
||||
.animate-show.ng-hide-remove
|
||||
// display: block !important
|
||||
|
||||
.animate-show.ng-hide
|
||||
-webkit-animation-name: slideOutUp
|
||||
animation-name: slideOutUp
|
||||
-webkit-animation-duration: 0.15s
|
||||
animation-duration: 0.15s
|
||||
-webkit-animation-fill-mode: both
|
||||
animation-fill-mode: both
|
||||
// line-height: 0
|
||||
// opacity: 0
|
||||
// padding: 0 10px
|
||||
|
||||
.row.animate-show ~ .row
|
||||
-webkit-animation-name: fadeIn
|
||||
animation-name: fadeIn
|
||||
-webkit-animation-duration: 0.5s
|
||||
animation-duration: 0.5s
|
||||
-webkit-animation-fill-mode: both
|
||||
animation-fill-mode: both
|
||||
|
||||
//
|
||||
|
||||
.animate-slide
|
||||
max-height: 500px
|
||||
opacity: 1 !important
|
||||
-webkit-transition: all 300ms ease-in-out
|
||||
-moz-transition: all 300ms ease-in-out
|
||||
-o-transition: all 300ms ease-in-out
|
||||
transition: all 300ms ease-in-out
|
||||
|
||||
&.ng-hide
|
||||
overflow: hidden
|
||||
max-height: 0
|
||||
opacity: 0 !important
|
||||
|
||||
// &.ng-hide-add-active, &.ng-hide-remove-active
|
||||
|
||||
&.ng-hide-add, &.ng-hide-remove
|
||||
/* IMPORTANT: this needs to be here to make it visible during the animation
|
||||
since the .ng-hide class is already on the element rendering
|
||||
it as hidden. */
|
||||
display: block !important
|
||||
|
||||
|
||||
.animate-show
|
||||
opacity: 1 !important
|
||||
-webkit-transition: all 300ms ease-in-out
|
||||
-moz-transition: all 300ms ease-in-out
|
||||
-o-transition: all 300ms ease-in-out
|
||||
transition: all 300ms ease-in-out
|
||||
|
||||
&.ng-hide
|
||||
opacity: 0 !important
|
||||
|
||||
// &.ng-hide-add-active, &.ng-hide-remove-active
|
||||
|
||||
&.ng-hide-add, &.ng-hide-remove
|
||||
/* IMPORTANT: this needs to be here to make it visible during the animation
|
||||
since the .ng-hide class is already on the element rendering
|
||||
it as hidden. */
|
||||
display: block !important
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@mixin csstrans
|
||||
-webkit-transition: all 300ms ease
|
||||
-moz-transition: all 300ms ease
|
||||
-ms-transition: all 300ms ease
|
||||
-o-transition: all 300ms ease
|
||||
transition: all 300ms ease
|
||||
-webkit-transform-style: preserve-3d
|
||||
271
app/assets/stylesheets/darkswarm/animations.scss
Normal file
271
app/assets/stylesheets/darkswarm/animations.scss
Normal file
@@ -0,0 +1,271 @@
|
||||
@import "mixins";
|
||||
|
||||
// ANIMATION FUNCTIONS
|
||||
|
||||
//
|
||||
@-webkit-keyframes slideInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(-20px);
|
||||
transform: translateY(-20px);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes slideInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(-20px);
|
||||
-ms-transform: translateY(-20px);
|
||||
transform: translateY(-20px);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: translateY(0);
|
||||
-ms-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes slideOutUp {
|
||||
0% {
|
||||
-webkit-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(-20px);
|
||||
transform: translateY(-20px);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes slideOutUp {
|
||||
0% {
|
||||
-webkit-transform: translateY(0);
|
||||
-ms-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes fadeIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes fadeIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
|
||||
// ANIMATION CLASSES
|
||||
|
||||
.fade {
|
||||
opacity: 0;
|
||||
-webkit-transition: opacity 0.15s linear;
|
||||
transition: opacity 0.15s linear;
|
||||
}
|
||||
|
||||
.fade.in {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.reveal-modal.fade {
|
||||
-webkit-transition: -webkit-transform 0.2s ease-out;
|
||||
-moz-transition: -moz-transform 0.2s ease-out;
|
||||
-o-transition: -o-transform 0.2s ease-out;
|
||||
transition: transform 0.2s ease-out;
|
||||
-webkit-transform: translate(0, -25%);
|
||||
-ms-transform: translate(0, -25%);
|
||||
transform: translate(0, -25%);
|
||||
}
|
||||
|
||||
.reveal-modal.in {
|
||||
-webkit-transform: translate(0, 0);
|
||||
-ms-transform: translate(0, 0);
|
||||
transform: translate(0, 0);
|
||||
}
|
||||
|
||||
.reveal-modal-bg.fade {
|
||||
filter: alpha(opacity = 0);
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.reveal-modal-bg.in {
|
||||
filter: alpha(opacity = 50);
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.animate-repeat {
|
||||
&.ng-move, &.ng-enter, &.ng-leave {
|
||||
-webkit-transition: all 300ms linear;
|
||||
transition: all 300ms linear;
|
||||
}
|
||||
|
||||
&.ng-leave {
|
||||
opacity: 1;
|
||||
|
||||
&.ng-leave-active {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
&.ng-enter {
|
||||
opacity: 0;
|
||||
|
||||
&.ng-enter-active {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
product.animate-repeat {
|
||||
&.ng-leave {
|
||||
border-color: rgba(153, 153, 153, 1);
|
||||
|
||||
&.ng-leave-active {
|
||||
border-color: rgba(153, 153, 153, 0);
|
||||
}
|
||||
}
|
||||
|
||||
&.ng-enter {
|
||||
border-color: rgba(153, 153, 153, 0);
|
||||
|
||||
&.ng-enter-active {
|
||||
border-color: rgba(153, 153, 153, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.animate-show {
|
||||
-webkit-animation-name: slideInDown;
|
||||
animation-name: slideInDown;
|
||||
-webkit-animation-duration: 0.5s;
|
||||
animation-duration: 0.5s;
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
|
||||
// line-height: 20px
|
||||
// opacity: 1
|
||||
}
|
||||
|
||||
.animate-show.ng-hide-add,
|
||||
.animate-show.ng-hide-remove {
|
||||
// display: block !important
|
||||
}
|
||||
|
||||
.animate-show.ng-hide {
|
||||
-webkit-animation-name: slideOutUp;
|
||||
animation-name: slideOutUp;
|
||||
-webkit-animation-duration: 0.15s;
|
||||
animation-duration: 0.15s;
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
|
||||
// line-height: 0
|
||||
// opacity: 0
|
||||
// padding: 0 10px
|
||||
}
|
||||
|
||||
.row.animate-show ~ .row {
|
||||
-webkit-animation-name: fadeIn;
|
||||
animation-name: fadeIn;
|
||||
-webkit-animation-duration: 0.5s;
|
||||
animation-duration: 0.5s;
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
.animate-slide {
|
||||
max-height: 500px;
|
||||
opacity: 1 !important;
|
||||
-webkit-transition: all 300ms ease-in-out;
|
||||
-moz-transition: all 300ms ease-in-out;
|
||||
-o-transition: all 300ms ease-in-out;
|
||||
transition: all 300ms ease-in-out;
|
||||
|
||||
&.ng-hide {
|
||||
overflow: hidden;
|
||||
max-height: 0;
|
||||
opacity: 0 !important;
|
||||
}
|
||||
|
||||
// &.ng-hide-add-active, &.ng-hide-remove-active
|
||||
|
||||
&.ng-hide-add, &.ng-hide-remove {
|
||||
/* IMPORTANT: this needs to be here to make it visible during the animation
|
||||
* since the .ng-hide class is already on the element rendering
|
||||
* it as hidden. */
|
||||
display: block !important;
|
||||
}
|
||||
}
|
||||
|
||||
.animate-show {
|
||||
opacity: 1 !important;
|
||||
-webkit-transition: all 300ms ease-in-out;
|
||||
-moz-transition: all 300ms ease-in-out;
|
||||
-o-transition: all 300ms ease-in-out;
|
||||
transition: all 300ms ease-in-out;
|
||||
|
||||
&.ng-hide {
|
||||
opacity: 0 !important;
|
||||
}
|
||||
|
||||
// &.ng-hide-add-active, &.ng-hide-remove-active
|
||||
|
||||
&.ng-hide-add, &.ng-hide-remove {
|
||||
/* IMPORTANT: this needs to be here to make it visible during the animation
|
||||
* since the .ng-hide class is already on the element rendering
|
||||
* it as hidden. */
|
||||
display: block !important;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin csstrans {
|
||||
-webkit-transition: all 300ms ease;
|
||||
-moz-transition: all 300ms ease;
|
||||
-ms-transition: all 300ms ease;
|
||||
-o-transition: all 300ms ease;
|
||||
transition: all 300ms ease;
|
||||
-webkit-transform-style: preserve-3d;
|
||||
}
|
||||
@@ -1,93 +0,0 @@
|
||||
@import typography
|
||||
@import branding
|
||||
@import animations
|
||||
@import mixins
|
||||
|
||||
//Big search used in active table search \\
|
||||
|
||||
@mixin big-input($input, $inputhvr, $inputactv)
|
||||
@include headingFont
|
||||
@include csstrans
|
||||
@include border-radius(0.5rem)
|
||||
background: rgba(255,255,255,0.1)
|
||||
border: 2px solid $input
|
||||
font-size: 2rem
|
||||
box-shadow: 0
|
||||
padding: 0.5rem 1rem
|
||||
height: auto
|
||||
width: 100%
|
||||
margin-bottom: 0.5rem
|
||||
box-shadow: none
|
||||
color: $inputactv
|
||||
@media all and (max-width: 640px)
|
||||
font-size: 1.25rem
|
||||
|
||||
&:hover
|
||||
@include box-shadow(0 1px 1px 0 rgba(255,255,255,0.25))
|
||||
border: 2px solid $inputhvr
|
||||
color: $inputactv
|
||||
|
||||
&:active, &:focus, &.active
|
||||
border: 2px solid $inputactv
|
||||
color: $inputactv
|
||||
background: white
|
||||
background: rgba(255,255,255,0.5)
|
||||
text-shadow: 0 0 10px #ffffff
|
||||
padding: 1rem
|
||||
letter-spacing: 0.02rem
|
||||
outline: none
|
||||
|
||||
@mixin big-input-static
|
||||
outline: 0
|
||||
&:active, &:focus, &.active
|
||||
padding: 0.75rem 1rem 0.35rem 1rem
|
||||
letter-spacing: 0
|
||||
|
||||
@mixin medium-input($input, $inputhvr, $inputactv)
|
||||
@include headingFont
|
||||
@include csstrans
|
||||
@include border-radius(0.5rem)
|
||||
background: rgba(255,255,255,0.1)
|
||||
border: 2px solid $input
|
||||
font-size: 0.875rem
|
||||
box-shadow: 0
|
||||
padding: 0.5rem 0.625rem 0.375rem
|
||||
height: auto
|
||||
width: 100%
|
||||
margin-bottom: 0.5rem
|
||||
box-shadow: none
|
||||
color: $inputactv
|
||||
|
||||
&:hover
|
||||
@include box-shadow(0 1px 1px 0 rgba(255,255,255,0.25))
|
||||
border: 2px solid $inputhvr
|
||||
color: $inputactv
|
||||
|
||||
&:active, &:focus, &.active
|
||||
border: 2px solid $inputactv
|
||||
color: $inputactv
|
||||
background: white
|
||||
background: rgba(255,255,255,0.5)
|
||||
text-shadow: 0 0 10px #ffffff
|
||||
outline: none
|
||||
|
||||
@mixin placeholder($placeholder, $placeholderhvr)
|
||||
::-webkit-input-placeholder
|
||||
color: $placeholder
|
||||
:-moz-placeholder
|
||||
color: $placeholder
|
||||
::-moz-placeholder
|
||||
color: $placeholder
|
||||
:-ms-input-placeholder
|
||||
color: $placeholder
|
||||
|
||||
&:hover
|
||||
::-webkit-input-placeholder
|
||||
color: $placeholderhvr
|
||||
:-moz-placeholder
|
||||
color: $placeholderhvr
|
||||
::-moz-placeholder
|
||||
color: $placeholderhvr
|
||||
:-ms-input-placeholder
|
||||
color: $placeholderhvr
|
||||
|
||||
127
app/assets/stylesheets/darkswarm/big-input.scss
Normal file
127
app/assets/stylesheets/darkswarm/big-input.scss
Normal file
@@ -0,0 +1,127 @@
|
||||
@import "typography";
|
||||
@import "branding";
|
||||
@import "animations";
|
||||
@import "mixins";
|
||||
|
||||
//Big search used in active table search \\
|
||||
|
||||
@mixin big-input($input, $inputhvr, $inputactv) {
|
||||
@include headingFont;
|
||||
|
||||
@include csstrans;
|
||||
|
||||
@include border-radius(0.5rem);
|
||||
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
border: 2px solid $input;
|
||||
font-size: 2rem;
|
||||
box-shadow: 0;
|
||||
padding: 0.5rem 1rem;
|
||||
height: auto;
|
||||
width: 100%;
|
||||
margin-bottom: 0.5rem;
|
||||
box-shadow: none;
|
||||
color: $inputactv;
|
||||
|
||||
@media all and (max-width: 640px) {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
@include box-shadow(0 1px 1px 0 rgba(255, 255, 255, 0.25));
|
||||
|
||||
border: 2px solid $inputhvr;
|
||||
color: $inputactv;
|
||||
}
|
||||
|
||||
&:active, &:focus, &.active {
|
||||
border: 2px solid $inputactv;
|
||||
color: $inputactv;
|
||||
background: white;
|
||||
background: rgba(255, 255, 255, 0.5);
|
||||
text-shadow: 0 0 10px #ffffff;
|
||||
padding: 1rem;
|
||||
letter-spacing: 0.02rem;
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin big-input-static {
|
||||
outline: 0;
|
||||
|
||||
&:active, &:focus, &.active {
|
||||
padding: 0.75rem 1rem 0.35rem 1rem;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin medium-input($input, $inputhvr, $inputactv) {
|
||||
@include headingFont;
|
||||
|
||||
@include csstrans;
|
||||
|
||||
@include border-radius(0.5rem);
|
||||
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
border: 2px solid $input;
|
||||
font-size: 0.875rem;
|
||||
box-shadow: 0;
|
||||
padding: 0.5rem 0.625rem 0.375rem;
|
||||
height: auto;
|
||||
width: 100%;
|
||||
margin-bottom: 0.5rem;
|
||||
box-shadow: none;
|
||||
color: $inputactv;
|
||||
|
||||
&:hover {
|
||||
@include box-shadow(0 1px 1px 0 rgba(255, 255, 255, 0.25));
|
||||
|
||||
border: 2px solid $inputhvr;
|
||||
color: $inputactv;
|
||||
}
|
||||
|
||||
&:active, &:focus, &.active {
|
||||
border: 2px solid $inputactv;
|
||||
color: $inputactv;
|
||||
background: white;
|
||||
background: rgba(255, 255, 255, 0.5);
|
||||
text-shadow: 0 0 10px #ffffff;
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin placeholder($placeholder, $placeholderhvr) {
|
||||
::-webkit-input-placeholder {
|
||||
color: $placeholder;
|
||||
}
|
||||
|
||||
-moz-placeholder: {
|
||||
color: $placeholder;
|
||||
};
|
||||
|
||||
::-moz-placeholder {
|
||||
color: $placeholder;
|
||||
}
|
||||
|
||||
-ms-input-placeholder: {
|
||||
color: $placeholder;
|
||||
};
|
||||
|
||||
&:hover {
|
||||
::-webkit-input-placeholder {
|
||||
color: $placeholderhvr;
|
||||
}
|
||||
|
||||
-moz-placeholder: {
|
||||
color: $placeholderhvr;
|
||||
};
|
||||
|
||||
::-moz-placeholder {
|
||||
color: $placeholderhvr;
|
||||
}
|
||||
|
||||
-ms-input-placeholder: {
|
||||
color: $placeholderhvr;
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
$ofn-brand: #f27052
|
||||
// e.g. australia, uk, norway specific color
|
||||
|
||||
$ofn-grey: #808184
|
||||
|
||||
|
||||
// old colors:
|
||||
|
||||
$clr-brick: #c1122b
|
||||
$clr-brick-light: #f5e6e7
|
||||
$clr-brick-light-trans: rgba(245, 230, 231, 0.9)
|
||||
$clr-brick-ultra-light: #faf5f6
|
||||
$clr-brick-bright: #eb4c46
|
||||
$clr-brick-med-bright: #e5a2a0
|
||||
$clr-brick-light-bright: #f5c4c9
|
||||
|
||||
$clr-turquoise: #0b8c61
|
||||
$clr-turquoise-light: #ceefe4
|
||||
$clr-turquoise-ultra-light: #e8f9f4
|
||||
$clr-turquoise-bright: #23a877
|
||||
|
||||
$clr-blue: #0096ad
|
||||
$clr-blue-light: #85d9e5
|
||||
$clr-blue-bright: #14b6cc
|
||||
|
||||
$clr-yellow-light: #faf6c7
|
||||
|
||||
$disabled-light: #e5e5e5
|
||||
$disabled-bright: #ccc
|
||||
$disabled-med: #b3b3b3
|
||||
$disabled-dark: #999
|
||||
$disabled-v-dark: #808080
|
||||
$med-grey: #666
|
||||
$med-drk-grey: #444
|
||||
$dark-grey: #333
|
||||
$light-grey: #ddd
|
||||
$black: #000
|
||||
|
||||
37
app/assets/stylesheets/darkswarm/branding.css.scss
Normal file
37
app/assets/stylesheets/darkswarm/branding.css.scss
Normal file
@@ -0,0 +1,37 @@
|
||||
$ofn-brand: #f27052;
|
||||
|
||||
// e.g. australia, uk, norway specific color
|
||||
|
||||
$ofn-grey: #808184;
|
||||
|
||||
// old colors:
|
||||
|
||||
$clr-brick: #c1122b;
|
||||
$clr-brick-light: #f5e6e7;
|
||||
$clr-brick-light-trans: rgba(245, 230, 231, 0.9);
|
||||
$clr-brick-ultra-light: #faf5f6;
|
||||
$clr-brick-bright: #eb4c46;
|
||||
$clr-brick-med-bright: #e5a2a0;
|
||||
$clr-brick-light-bright: #f5c4c9;
|
||||
|
||||
$clr-turquoise: #0b8c61;
|
||||
$clr-turquoise-light: #ceefe4;
|
||||
$clr-turquoise-ultra-light: #e8f9f4;
|
||||
$clr-turquoise-bright: #23a877;
|
||||
|
||||
$clr-blue: #0096ad;
|
||||
$clr-blue-light: #85d9e5;
|
||||
$clr-blue-bright: #14b6cc;
|
||||
|
||||
$clr-yellow-light: #faf6c7;
|
||||
|
||||
$disabled-light: #e5e5e5;
|
||||
$disabled-bright: #ccc;
|
||||
$disabled-med: #b3b3b3;
|
||||
$disabled-dark: #999;
|
||||
$disabled-v-dark: #808080;
|
||||
$med-grey: #666;
|
||||
$med-drk-grey: #444;
|
||||
$dark-grey: #333;
|
||||
$light-grey: #ddd;
|
||||
$black: #000;
|
||||
@@ -1,78 +0,0 @@
|
||||
@import branding
|
||||
@import mixins
|
||||
@import animations
|
||||
|
||||
footer
|
||||
.row
|
||||
p a
|
||||
font-size: 0.875rem
|
||||
a, a *
|
||||
@include csstrans
|
||||
color: white
|
||||
&:hover, &:active, &:focus
|
||||
color: rgba(white, 1)
|
||||
text-decoration: underline
|
||||
|
||||
.footer-global
|
||||
background-color: $ofn-grey
|
||||
padding-top: 60px
|
||||
padding-bottom: 40px
|
||||
.logo
|
||||
width: 200px
|
||||
height: 200px
|
||||
background: $ofn-grey
|
||||
@include border-radius(120px)
|
||||
margin: -140px auto 0 auto
|
||||
img
|
||||
margin-top: 36px
|
||||
|
||||
.alert-box
|
||||
background-color: transparent
|
||||
border: none
|
||||
padding: 0
|
||||
.alert-cta
|
||||
@include csstrans
|
||||
width: 100%
|
||||
border: 1px solid rgba($dark-grey, 0.35)
|
||||
background-image: url("/assets/tile-wide.png")
|
||||
background-position: center center
|
||||
background-color: #bbb
|
||||
padding: 12px 0 8px 0
|
||||
display: block
|
||||
&, & *
|
||||
@include csstrans
|
||||
color: #333
|
||||
strong
|
||||
letter-spacing: 0.5px
|
||||
a:hover, a:active, a:focus
|
||||
text-decoration: none
|
||||
border-color: white
|
||||
&, & *
|
||||
color: rgba(white, 1)
|
||||
.row
|
||||
&, p, h1, h2, h3, h4, h5, h6
|
||||
color: $disabled-bright
|
||||
|
||||
.footer-local
|
||||
background: lighten($dark-grey, 3%)
|
||||
@include panepadding
|
||||
.row
|
||||
&, p, h1, h2, h3, h4, h5, h6
|
||||
color: $disabled-med
|
||||
p.secure-icon i
|
||||
font-size: 10rem
|
||||
color: rgba(white, 0.1)
|
||||
p.secure-text
|
||||
color: rgba($disabled-med, 0.35)
|
||||
.social-icons
|
||||
margin-bottom: 0.25rem
|
||||
margin-top: 0.75rem
|
||||
a
|
||||
i
|
||||
font-size: 1.5rem
|
||||
color: white
|
||||
&:hover, &:active, &:focus
|
||||
text-decoration: none
|
||||
i
|
||||
color: lighten($dark-grey, 60%)
|
||||
text-shadow: 2px 2px 0 black
|
||||
127
app/assets/stylesheets/darkswarm/footer.scss
Normal file
127
app/assets/stylesheets/darkswarm/footer.scss
Normal file
@@ -0,0 +1,127 @@
|
||||
@import "branding";
|
||||
@import "mixins";
|
||||
@import "animations";
|
||||
|
||||
footer {
|
||||
.row {
|
||||
p a {
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
a, a * {
|
||||
@include csstrans;
|
||||
|
||||
color: white;
|
||||
|
||||
&:hover, &:active, &:focus {
|
||||
color: rgba(white, 1);
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.footer-global {
|
||||
background-color: $ofn-grey;
|
||||
padding-top: 60px;
|
||||
padding-bottom: 40px;
|
||||
|
||||
.logo {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
background: $ofn-grey;
|
||||
|
||||
@include border-radius(120px);
|
||||
|
||||
margin: (-140px) auto 0 auto;
|
||||
|
||||
img {
|
||||
margin-top: 36px;
|
||||
}
|
||||
}
|
||||
|
||||
.alert-box {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
padding: 0;
|
||||
|
||||
.alert-cta {
|
||||
@include csstrans;
|
||||
|
||||
width: 100%;
|
||||
border: 1px solid rgba($dark-grey, 0.35);
|
||||
background-image: url("/assets/tile-wide.png");
|
||||
background-position: center center;
|
||||
background-color: #bbb;
|
||||
padding: 12px 0 8px 0;
|
||||
display: block;
|
||||
|
||||
&, & * {
|
||||
@include csstrans;
|
||||
|
||||
color: #333;
|
||||
}
|
||||
|
||||
strong {
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
|
||||
a:hover, a:active, a:focus {
|
||||
text-decoration: none;
|
||||
border-color: white;
|
||||
|
||||
&, & * {
|
||||
color: rgba(white, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.row {
|
||||
&, p, h1, h2, h3, h4, h5, h6 {
|
||||
color: $disabled-bright;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.footer-local {
|
||||
background: lighten($dark-grey, 3%);
|
||||
|
||||
@include panepadding;
|
||||
|
||||
.row {
|
||||
&, p, h1, h2, h3, h4, h5, h6 {
|
||||
color: $disabled-med;
|
||||
}
|
||||
|
||||
p.secure-icon i {
|
||||
font-size: 10rem;
|
||||
color: rgba(white, 0.1);
|
||||
}
|
||||
|
||||
p.secure-text {
|
||||
color: rgba($disabled-med, 0.35);
|
||||
}
|
||||
|
||||
.social-icons {
|
||||
margin-bottom: 0.25rem;
|
||||
margin-top: 0.75rem;
|
||||
|
||||
a {
|
||||
i {
|
||||
font-size: 1.5rem;
|
||||
color: white;
|
||||
}
|
||||
|
||||
&:hover, &:active, &:focus {
|
||||
text-decoration: none;
|
||||
|
||||
i {
|
||||
color: lighten($dark-grey, 60%);
|
||||
text-shadow: 2px 2px 0 black;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
@import mixins
|
||||
@import branding
|
||||
|
||||
fieldset
|
||||
border: 0
|
||||
6
app/assets/stylesheets/darkswarm/forms.css.scss
Normal file
6
app/assets/stylesheets/darkswarm/forms.css.scss
Normal file
@@ -0,0 +1,6 @@
|
||||
@import "mixins";
|
||||
@import "branding";
|
||||
|
||||
fieldset {
|
||||
border: 0;
|
||||
}
|
||||
@@ -1,108 +0,0 @@
|
||||
@import branding
|
||||
@import mixins
|
||||
@import typography
|
||||
|
||||
// Search page
|
||||
#groups
|
||||
@include groupsbg
|
||||
@include sidepaddingSm
|
||||
@include panepadding
|
||||
h1, p.text
|
||||
font-weight: 300
|
||||
h1
|
||||
font-size: 350%
|
||||
a > .group-name
|
||||
&:hover, &:focus, &:active
|
||||
text-decoration: underline
|
||||
|
||||
.groups-icons
|
||||
text-align: right
|
||||
a
|
||||
font-size: 1.5em
|
||||
|
||||
.groups-header
|
||||
border: 2px solid $clr-brick-light-bright
|
||||
@include border-radius-mixed(0.5em, 0.5em, 0, 0)
|
||||
margin: -1rem 0 1rem
|
||||
padding: 1rem 0.9375rem
|
||||
@media screen and (min-width: 640px)
|
||||
border: 0 none
|
||||
@include border-radius(0)
|
||||
margin: 0
|
||||
padding: 0
|
||||
|
||||
.group
|
||||
padding-bottom: 0.5em
|
||||
.row div
|
||||
font-size: 110%
|
||||
.row a
|
||||
vertical-align: middle
|
||||
.ofn-i_035-groups
|
||||
font-size: 120%
|
||||
vertical-align: middle
|
||||
|
||||
// Individual Page
|
||||
#group-page
|
||||
.group-logo, .group-header
|
||||
text-align: center
|
||||
.group-logo
|
||||
padding-bottom: 1em
|
||||
max-height: 200px
|
||||
.group-name
|
||||
border-bottom: 1px solid #ccc
|
||||
@media screen and (min-width: 768px)
|
||||
.group-logo, .group-header
|
||||
text-align: left
|
||||
.group-logo
|
||||
max-height: 120px
|
||||
float: left
|
||||
padding-right: 1em
|
||||
background-color: white
|
||||
|
||||
// Tabs
|
||||
.tabs dd a // Mobile first
|
||||
padding: 0.25rem 0.45rem 0rem
|
||||
font-size: 0.75rem
|
||||
border: none
|
||||
margin-bottom: -2px
|
||||
margin-right: 2px
|
||||
text-transform: capitalize
|
||||
@include headingFont
|
||||
@include border-radius(1em 0.25em 0 0)
|
||||
@include gradient($disabled-light, $disabled-bright)
|
||||
@media screen and (min-width: 768px)
|
||||
.tabs dd a
|
||||
padding: 0.5rem 1rem 0.25em
|
||||
font-size: 0.875rem
|
||||
@include border-radius(1.5em 0.25em 0 0)
|
||||
@media screen and (min-width: 1024px)
|
||||
.tabs dd a
|
||||
padding: 0.75rem 1.5rem 0.5em
|
||||
font-size: 1rem
|
||||
@include border-radius(2em 0.25em 0 0)
|
||||
.tabs dd.active a
|
||||
@include gradient(white, white)
|
||||
margin-bottom: -1px
|
||||
border-top: 1px solid $light-grey
|
||||
border-left: 1px solid $light-grey
|
||||
border-right: 1px solid $light-grey
|
||||
border-bottom: 0
|
||||
.tabs-content
|
||||
border-top: 1px solid $light-grey
|
||||
border-left: 1px solid $light-grey
|
||||
border-right: 1px solid $light-grey
|
||||
border-bottom: 1px solid $light-grey
|
||||
padding: 1.5em
|
||||
|
||||
// Producers tab
|
||||
.producers
|
||||
background-image: none
|
||||
background-color: initial
|
||||
.active_table .active_table_node a.is_distributor, .active_table .active_table_node a.is_distributor i.ofn-i_059-producer
|
||||
color: $clr-turquoise
|
||||
padding: 0
|
||||
// Hubs tab
|
||||
.hubs
|
||||
background-image: none
|
||||
padding-top: 0
|
||||
padding-bottom: 0
|
||||
169
app/assets/stylesheets/darkswarm/groups.css.scss
Normal file
169
app/assets/stylesheets/darkswarm/groups.css.scss
Normal file
@@ -0,0 +1,169 @@
|
||||
@import "branding";
|
||||
@import "mixins";
|
||||
@import "typography";
|
||||
|
||||
// Search page
|
||||
#groups {
|
||||
@include groupsbg;
|
||||
|
||||
@include sidepaddingSm;
|
||||
|
||||
@include panepadding;
|
||||
|
||||
h1, p.text {
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 350%;
|
||||
}
|
||||
|
||||
a > .group-name {
|
||||
&:hover, &:focus, &:active {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
.groups-icons {
|
||||
text-align: right;
|
||||
|
||||
a {
|
||||
font-size: 1.5em;
|
||||
}
|
||||
}
|
||||
|
||||
.groups-header {
|
||||
border: 2px solid $clr-brick-light-bright;
|
||||
|
||||
@include border-radius-mixed(0.5em, 0.5em, 0, 0);
|
||||
|
||||
margin: (-1rem) 0 1rem;
|
||||
padding: 1rem 0.9375rem;
|
||||
|
||||
@media screen and (min-width: 640px) {
|
||||
border: 0 none;
|
||||
|
||||
@include border-radius(0);
|
||||
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.group {
|
||||
padding-bottom: 0.5em;
|
||||
|
||||
.row div {
|
||||
font-size: 110%;
|
||||
}
|
||||
|
||||
.row a {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.ofn-i_035-groups {
|
||||
font-size: 120%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
|
||||
// Individual Page
|
||||
#group-page {
|
||||
.group-logo, .group-header {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.group-logo {
|
||||
padding-bottom: 1em;
|
||||
max-height: 200px;
|
||||
}
|
||||
|
||||
.group-name {
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 768px) {
|
||||
.group-logo, .group-header {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.group-logo {
|
||||
max-height: 120px;
|
||||
float: left;
|
||||
padding-right: 1em;
|
||||
background-color: white;
|
||||
}
|
||||
}
|
||||
|
||||
// Tabs
|
||||
.tabs dd a {
|
||||
padding: 0.25rem 0.45rem 0rem;
|
||||
font-size: 0.75rem;
|
||||
border: none;
|
||||
margin-bottom: -2px;
|
||||
margin-right: 2px;
|
||||
text-transform: capitalize;
|
||||
|
||||
@include headingFont;
|
||||
|
||||
@include border-radius(1em 0.25em 0 0);
|
||||
|
||||
@include gradient($disabled-light, $disabled-bright);
|
||||
}
|
||||
|
||||
@media screen and (min-width: 768px) {
|
||||
.tabs dd a {
|
||||
padding: 0.5rem 1rem 0.25em;
|
||||
font-size: 0.875rem;
|
||||
|
||||
@include border-radius(1.5em 0.25em 0 0);
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1024px) {
|
||||
.tabs dd a {
|
||||
padding: 0.75rem 1.5rem 0.5em;
|
||||
font-size: 1rem;
|
||||
|
||||
@include border-radius(2em 0.25em 0 0);
|
||||
}
|
||||
}
|
||||
|
||||
.tabs dd.active a {
|
||||
@include gradient(white, white);
|
||||
|
||||
margin-bottom: -1px;
|
||||
border-top: 1px solid $light-grey;
|
||||
border-left: 1px solid $light-grey;
|
||||
border-right: 1px solid $light-grey;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
.tabs-content {
|
||||
border-top: 1px solid $light-grey;
|
||||
border-left: 1px solid $light-grey;
|
||||
border-right: 1px solid $light-grey;
|
||||
border-bottom: 1px solid $light-grey;
|
||||
padding: 1.5em;
|
||||
}
|
||||
|
||||
// Producers tab
|
||||
.producers {
|
||||
background-image: none;
|
||||
background-color: initial;
|
||||
|
||||
.active_table .active_table_node a.is_distributor, .active_table .active_table_node a.is_distributor i.ofn-i_059-producer {
|
||||
color: $clr-turquoise;
|
||||
}
|
||||
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
// Hubs tab
|
||||
.hubs {
|
||||
background-image: none;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
@import variables
|
||||
|
||||
nav.top-bar
|
||||
margin-bottom: 0px
|
||||
a.icon
|
||||
&:hover
|
||||
text-decoration: none
|
||||
height: $topbar-height
|
||||
color: white
|
||||
i
|
||||
font-size: 29px
|
||||
line-height: $topbar-height
|
||||
span
|
||||
font-size: 13px
|
||||
display: inline-block
|
||||
line-height: $topbar-height
|
||||
height: $topbar-height
|
||||
vertical-align: top
|
||||
|
||||
body > section[role='main']
|
||||
padding: 0px
|
||||
31
app/assets/stylesheets/darkswarm/header.css.scss
Normal file
31
app/assets/stylesheets/darkswarm/header.css.scss
Normal file
@@ -0,0 +1,31 @@
|
||||
@import "variables";
|
||||
|
||||
nav.top-bar {
|
||||
margin-bottom: 0px;
|
||||
|
||||
a.icon {
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
height: $topbar-height;
|
||||
color: white;
|
||||
|
||||
i {
|
||||
font-size: 29px;
|
||||
line-height: $topbar-height;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 13px;
|
||||
display: inline-block;
|
||||
line-height: $topbar-height;
|
||||
height: $topbar-height;
|
||||
vertical-align: top;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
body > section[role='main'] {
|
||||
padding: 0px;
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user