Compare commits
406 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
92a40fc842 | ||
|
|
4b2f1cefa0 | ||
|
|
299b0fe5be | ||
|
|
2ea0c89899 | ||
|
|
237d129710 | ||
|
|
e9c8547ca3 | ||
|
|
dee503befb | ||
|
|
781fcae946 | ||
|
|
d3c8e4a547 | ||
|
|
a6e8d6906f | ||
|
|
be17d80cc4 | ||
|
|
85b27f5b51 | ||
|
|
b55b4e9a0c | ||
|
|
33dff551c7 | ||
|
|
1e31dd88ee | ||
|
|
cbc8a62686 | ||
|
|
3b7cd6d329 | ||
|
|
97ae170dd1 | ||
|
|
3812d1eebb | ||
|
|
2e1b2ffe12 | ||
|
|
a068411b7d | ||
|
|
f8b083e4b7 | ||
|
|
f5849e91dc | ||
|
|
6fa7d9cbcb | ||
|
|
9520eeeb15 | ||
|
|
da620f3723 | ||
|
|
f8d5b7ede8 | ||
|
|
ed91cd6463 | ||
|
|
b5ef24bacb | ||
|
|
f0f165a129 | ||
|
|
1a86206e1f | ||
|
|
c6d463bf25 | ||
|
|
b86848269b | ||
|
|
5bceb81479 | ||
|
|
509cf6250a | ||
|
|
07275574b6 | ||
|
|
5d2d619d66 | ||
|
|
17ce80a417 | ||
|
|
d86c3cff26 | ||
|
|
5e4e939087 | ||
|
|
559d3b0e4b | ||
|
|
883e5f1095 | ||
|
|
abc5a215a2 | ||
|
|
919f87df58 | ||
|
|
cf13115d57 | ||
|
|
408f7b7f10 | ||
|
|
e4991d4528 | ||
|
|
09cc3c6285 | ||
|
|
5a7175e75d | ||
|
|
1c0196cf5d | ||
|
|
c6acbc6810 | ||
|
|
eeb54f3f76 | ||
|
|
4c7fa4eb9f | ||
|
|
e5fc3c19e3 | ||
|
|
544e6e074a | ||
|
|
d3e72b5a2a | ||
|
|
f9cbdcee0a | ||
|
|
527a139f72 | ||
|
|
64fdbcf04f | ||
|
|
0d5106d571 | ||
|
|
9a4ba5aa1f | ||
|
|
e1769e638d | ||
|
|
24ca1b064a | ||
|
|
0b59ca2dc1 | ||
|
|
7f4bccc956 | ||
|
|
20a76626b9 | ||
|
|
1fdcbbec40 | ||
|
|
bd922085c4 | ||
|
|
c42f83b6b1 | ||
|
|
d75076e1c9 | ||
|
|
21628ed069 | ||
|
|
e9dd863462 | ||
|
|
83b19ee632 | ||
|
|
79fd8ed98b | ||
|
|
e618c4c2c0 | ||
|
|
ee6b71b140 | ||
|
|
1c9bb906d1 | ||
|
|
ac3c3f9f6c | ||
|
|
6829636f11 | ||
|
|
98ba135d49 | ||
|
|
4a93e9e94f | ||
|
|
b6fd3a11fa | ||
|
|
f79dfed6ef | ||
|
|
0fdbcc0023 | ||
|
|
eead8d665f | ||
|
|
01c98bf6e4 | ||
|
|
22e61d9834 | ||
|
|
279c5925ef | ||
|
|
9e2e96d19e | ||
|
|
49476b17e8 | ||
|
|
1aa80e53b1 | ||
|
|
5cf09d264c | ||
|
|
143545da0d | ||
|
|
0815775bc3 | ||
|
|
30bcdde5ca | ||
|
|
cb7033eea0 | ||
|
|
25a889375c | ||
|
|
b41029d5d0 | ||
|
|
d2c5533549 | ||
|
|
cc9d2ebbac | ||
|
|
799bfae6e4 | ||
|
|
c365047d0c | ||
|
|
dbefd43f07 | ||
|
|
8507690865 | ||
|
|
42fccd1bdf | ||
|
|
3cff83b7a5 | ||
|
|
05d8c825c7 | ||
|
|
0dd33e6635 | ||
|
|
bcca8c5c0d | ||
|
|
f5048ecf7c | ||
|
|
4fb30f2942 | ||
|
|
5c7ab2efa3 | ||
|
|
9a1b524915 | ||
|
|
cc65faadd0 | ||
|
|
a28eaba31a | ||
|
|
e50bbeaefb | ||
|
|
1c5a495d5c | ||
|
|
a6556f3a4f | ||
|
|
033fe88513 | ||
|
|
bfa71942fe | ||
|
|
01397b2e49 | ||
|
|
6ee3010fa7 | ||
|
|
ecacde41dd | ||
|
|
126e9e82a6 | ||
|
|
9c33be911c | ||
|
|
6d7fd6dc94 | ||
|
|
309ddece89 | ||
|
|
3ea29df111 | ||
|
|
05782b6ec1 | ||
|
|
f33a9e1a58 | ||
|
|
043cc915e7 | ||
|
|
5007fd8ec3 | ||
|
|
a7a99b5048 | ||
|
|
12f5e48479 | ||
|
|
98f7e58f9d | ||
|
|
de64a5154b | ||
|
|
048a741a2c | ||
|
|
19565a5f3b | ||
|
|
fc0afae51c | ||
|
|
454e4c971a | ||
|
|
34841f8543 | ||
|
|
412e906ed3 | ||
|
|
800eecea33 | ||
|
|
8d570286a1 | ||
|
|
f8c761f492 | ||
|
|
e0fff552f9 | ||
|
|
4d8796669b | ||
|
|
dc5506d06b | ||
|
|
100d672eef | ||
|
|
6486e41576 | ||
|
|
a5fefbe6bb | ||
|
|
912b7a8f95 | ||
|
|
75c62a7cb8 | ||
|
|
2917c0fa44 | ||
|
|
c93673d78b | ||
|
|
c54b18a416 | ||
|
|
8a4dcef7fe | ||
|
|
500cb65b41 | ||
|
|
d1b8b12901 | ||
|
|
a16da4eae0 | ||
|
|
f1ef8ba3c7 | ||
|
|
8b928b5a66 | ||
|
|
08d3eb6f93 | ||
|
|
36f719d538 | ||
|
|
db58fb5b0c | ||
|
|
f1f9a2e7fc | ||
|
|
60d6599f9b | ||
|
|
dc43612a04 | ||
|
|
bc0c9dd229 | ||
|
|
b848d583ff | ||
|
|
e341b12d3a | ||
|
|
4d106129ee | ||
|
|
69b1d14cc4 | ||
|
|
ef8f611458 | ||
|
|
7dc42c9e39 | ||
|
|
3d4e00a03c | ||
|
|
a642ad0855 | ||
|
|
10f97fe14b | ||
|
|
07f9dc23e0 | ||
|
|
29e78e63ad | ||
|
|
95bfc74b3f | ||
|
|
e1400705fe | ||
|
|
843c6ea6a6 | ||
|
|
c53df00969 | ||
|
|
5f09f1b4f7 | ||
|
|
c92aa41e28 | ||
|
|
595aa760cb | ||
|
|
94165f17e4 | ||
|
|
24507c6c0a | ||
|
|
1eef483c44 | ||
|
|
af064a3fc7 | ||
|
|
de7837aea9 | ||
|
|
7d0cf2ace9 | ||
|
|
71918539b8 | ||
|
|
16ad465571 | ||
|
|
ad56594fe9 | ||
|
|
c0e4a22a6e | ||
|
|
7780046d71 | ||
|
|
a3f7fc1202 | ||
|
|
9085741f3c | ||
|
|
8cc5c2246a | ||
|
|
eb6af408d7 | ||
|
|
60297eb5c8 | ||
|
|
41b286f80f | ||
|
|
f1c19ea64c | ||
|
|
7fbc9aa680 | ||
|
|
2253859cd1 | ||
|
|
e83e2295ed | ||
|
|
3e1f4628e3 | ||
|
|
7983b2f45a | ||
|
|
e106c7a0cd | ||
|
|
13d814ff23 | ||
|
|
73a32fdaf1 | ||
|
|
8e91e4513d | ||
|
|
4bde6a0a3d | ||
|
|
138e0281a3 | ||
|
|
31de5d45ea | ||
|
|
58f28f112a | ||
|
|
997479f5be | ||
|
|
0fa4540cec | ||
|
|
bebe0c41f6 | ||
|
|
09a4c4e17e | ||
|
|
c1971d015c | ||
|
|
666036756e | ||
|
|
dc266e066f | ||
|
|
44e9cf5ade | ||
|
|
69d1111c73 | ||
|
|
32a2e793ad | ||
|
|
c297b7014a | ||
|
|
4168ea054b | ||
|
|
b49eb8fe03 | ||
|
|
78a70292ac | ||
|
|
dfa837cac6 | ||
|
|
b49a4cbc4f | ||
|
|
3ee0cf46e0 | ||
|
|
36891c73cb | ||
|
|
a968aa9b91 | ||
|
|
991d0029dd | ||
|
|
5fb4110328 | ||
|
|
6540bb8efc | ||
|
|
b8fadb50ae | ||
|
|
9dc2b248c7 | ||
|
|
ee4a1925fe | ||
|
|
780df6bfe0 | ||
|
|
58dcdbd9c4 | ||
|
|
2e8ec3df18 | ||
|
|
6271b83fad | ||
|
|
778cf0326b | ||
|
|
94e3946d52 | ||
|
|
0b74242f49 | ||
|
|
bb82fc4b20 | ||
|
|
6e10c416e2 | ||
|
|
ab44046658 | ||
|
|
a9619a6dca | ||
|
|
20bfcd6e48 | ||
|
|
60ac3f29a5 | ||
|
|
adb8b6b02f | ||
|
|
b3f97479d3 | ||
|
|
097367a9f8 | ||
|
|
1e1ddedfb2 | ||
|
|
428e4c63d4 | ||
|
|
0d0ffa1cd0 | ||
|
|
a092e97294 | ||
|
|
26bd1000de | ||
|
|
59adae5c9c | ||
|
|
233532a85f | ||
|
|
99fb9c1966 | ||
|
|
3a12f9a7c8 | ||
|
|
4d766a29ab | ||
|
|
c43c35601b | ||
|
|
fe1c60ba47 | ||
|
|
b7708d750b | ||
|
|
fbd4f98fa9 | ||
|
|
9ec5dc6466 | ||
|
|
e023a66167 | ||
|
|
4af704b1d0 | ||
|
|
1ea63bca6e | ||
|
|
503fb53750 | ||
|
|
6ff6e4248c | ||
|
|
57af658e7c | ||
|
|
913c167fdf | ||
|
|
7603ea867f | ||
|
|
c5cfda5283 | ||
|
|
aaa32528ea | ||
|
|
602dfbe002 | ||
|
|
14aada1808 | ||
|
|
32ee8afdce | ||
|
|
7b9ff9b6dd | ||
|
|
658c27408e | ||
|
|
8f6d04a129 | ||
|
|
b487c9848b | ||
|
|
94fbb624f5 | ||
|
|
ed0f2de2f3 | ||
|
|
c64ef39e22 | ||
|
|
0138fded17 | ||
|
|
116eb6a2c6 | ||
|
|
0fd496aa97 | ||
|
|
4d57a73ee3 | ||
|
|
7d6dbeba28 | ||
|
|
f53ed4bf31 | ||
|
|
818a0f8595 | ||
|
|
a347152490 | ||
|
|
fce2147dc1 | ||
|
|
7247e65115 | ||
|
|
2cd5afbf9c | ||
|
|
e72c3d861b | ||
|
|
94683f1eaa | ||
|
|
c81503d95f | ||
|
|
4d8d74dec7 | ||
|
|
cfb31b46e4 | ||
|
|
e0645dfbd9 | ||
|
|
66f20a6b8a | ||
|
|
ac48613556 | ||
|
|
a4aa949499 | ||
|
|
ae442769b5 | ||
|
|
a31e8ff82f | ||
|
|
4efe3fdf88 | ||
|
|
62e6cacfd0 | ||
|
|
7f74854a2f | ||
|
|
0b61872d96 | ||
|
|
ba3f97ca1f | ||
|
|
5ede8d169f | ||
|
|
bfd9ffd84a | ||
|
|
7b89e6aa80 | ||
|
|
1871d42e68 | ||
|
|
a5debc19dc | ||
|
|
628d87b69a | ||
|
|
5ef13d3c5a | ||
|
|
099a5b0b7b | ||
|
|
34602244ca | ||
|
|
b9e5821497 | ||
|
|
8548a1a67e | ||
|
|
a7689973be | ||
|
|
5e8bdce67d | ||
|
|
a4be0ff55a | ||
|
|
7124dc57fd | ||
|
|
400f2ea9b9 | ||
|
|
0462b3e55d | ||
|
|
435819acc4 | ||
|
|
310d1b3726 | ||
|
|
0d9e07d484 | ||
|
|
45a44844ca | ||
|
|
1a995aedda | ||
|
|
c3224ce668 | ||
|
|
3932884dba | ||
|
|
057ad9c6d3 | ||
|
|
50c559964c | ||
|
|
b4e89ad2c0 | ||
|
|
70feef1256 | ||
|
|
cb615ba994 | ||
|
|
3524e658f8 | ||
|
|
4ceaec0ef5 | ||
|
|
adf4f92ffb | ||
|
|
ca7eb72688 | ||
|
|
dd42b0c239 | ||
|
|
e173c69ee3 | ||
|
|
b35c5e902f | ||
|
|
e3b4f6efc1 | ||
|
|
a533daab96 | ||
|
|
4b42c28bd5 | ||
|
|
3e97762f7e | ||
|
|
79387d3d82 | ||
|
|
2706c0e47e | ||
|
|
5dc7d1ee11 | ||
|
|
9451f3659c | ||
|
|
e1a1b74f03 | ||
|
|
50e4c5fac9 | ||
|
|
abe592c9a3 | ||
|
|
0e6cd30e7e | ||
|
|
732a61664f | ||
|
|
a858c21296 | ||
|
|
2660ffd459 | ||
|
|
a0a752a3b1 | ||
|
|
63f9abdf5c | ||
|
|
9ddfb1584b | ||
|
|
95a0bf39f7 | ||
|
|
6e17f0aaa2 | ||
|
|
8bc9def6ae | ||
|
|
1d77812ab8 | ||
|
|
a03c4f7110 | ||
|
|
7f6a7b4254 | ||
|
|
8ef91d1b2a | ||
|
|
3d2c196237 | ||
|
|
50b8eaecab | ||
|
|
f30c67da7b | ||
|
|
d05e5e430a | ||
|
|
cc011f5136 | ||
|
|
a7b3bbee74 | ||
|
|
c20369919c | ||
|
|
044a4c6816 | ||
|
|
a8b823668f | ||
|
|
51f912033b | ||
|
|
115d8e0d6e | ||
|
|
40d290951c | ||
|
|
6b73eb435c | ||
|
|
9e54162a62 | ||
|
|
d80166e80d | ||
|
|
f19af52556 | ||
|
|
f430267304 | ||
|
|
16215289d0 | ||
|
|
f021d260b1 | ||
|
|
d6aae0050f | ||
|
|
55e29832e1 | ||
|
|
1cbdd9a5fa | ||
|
|
bd3a4acc15 | ||
|
|
722ccfc83b |
2
.gitignore
vendored
@@ -36,3 +36,5 @@ config/initializers/feature_toggle.rb
|
||||
NERD_tree*
|
||||
coverage
|
||||
libpeerconnection.log
|
||||
tags
|
||||
app/assets/javascripts/tags
|
||||
|
||||
7
Gemfile
@@ -7,7 +7,11 @@ gem 'pg'
|
||||
gem 'spree', :github => 'openfoodfoundation/spree', :branch => '1-3-stable'
|
||||
gem 'spree_i18n', :github => 'spree/spree_i18n'
|
||||
gem 'spree_auth_devise', :github => 'spree/spree_auth_devise', :branch => '1-3-stable'
|
||||
gem 'spree_paypal_express', :github => "spree-contrib/better_spree_paypal_express", :branch => "1-3-stable"
|
||||
|
||||
# Waiting on merge of PR #117
|
||||
# https://github.com/spree-contrib/better_spree_paypal_express/pull/117
|
||||
gem 'spree_paypal_express', :github => "openfoodfoundation/better_spree_paypal_express", :branch => "1-3-stable"
|
||||
#gem 'spree_paypal_express', :github => "spree-contrib/better_spree_paypal_express", :branch => "1-3-stable"
|
||||
|
||||
gem 'comfortable_mexican_sofa'
|
||||
|
||||
@@ -38,6 +42,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 'foreigner'
|
||||
gem 'immigrant'
|
||||
|
||||
20
Gemfile.lock
@@ -12,6 +12,15 @@ GIT
|
||||
specs:
|
||||
custom_error_message (1.1.1)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/openfoodfoundation/better_spree_paypal_express.git
|
||||
revision: cdd61161ccd27cd8d183f9321422c7be113796b8
|
||||
branch: 1-3-stable
|
||||
specs:
|
||||
spree_paypal_express (2.0.3)
|
||||
paypal-sdk-merchant (= 1.106.1)
|
||||
spree_core (~> 1.3.4)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/openfoodfoundation/spree.git
|
||||
revision: bbe5e779bcb883a1726ad4006d7c06b06c3f5372
|
||||
@@ -54,15 +63,6 @@ GIT
|
||||
spree_sample (1.3.6.beta)
|
||||
spree_core (= 1.3.6.beta)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/spree-contrib/better_spree_paypal_express.git
|
||||
revision: db135b89a289aaab951c1228bcc55871de0cbba7
|
||||
branch: 1-3-stable
|
||||
specs:
|
||||
spree_paypal_express (2.0.3)
|
||||
paypal-sdk-merchant (= 1.106.1)
|
||||
spree_core (~> 1.3.4)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/spree/deface.git
|
||||
revision: 1110a1336252109bce7f98f9182042e0bc2930ae
|
||||
@@ -153,6 +153,7 @@ GEM
|
||||
railties (>= 3.1)
|
||||
sprockets
|
||||
tilt
|
||||
angularjs-file-upload-rails (1.1.0)
|
||||
angularjs-rails (1.2.13)
|
||||
ansi (1.4.2)
|
||||
arel (3.0.3)
|
||||
@@ -505,6 +506,7 @@ DEPENDENCIES
|
||||
active_model_serializers
|
||||
andand
|
||||
angular-rails-templates
|
||||
angularjs-file-upload-rails (~> 1.1.0)
|
||||
angularjs-rails
|
||||
awesome_print
|
||||
aws-sdk
|
||||
|
||||
@@ -9,7 +9,6 @@ Supported by the Open Food Foundation, we are proudly open source and not-for-pr
|
||||
|
||||
We're part of global movement - get involved!
|
||||
|
||||
* We're crowd-funding RIGHT NOW - please help out at http://startsomegood.com/openfoodnetwork
|
||||
* Fill in this short survey to tell us who you are and what you want to do with OFN: https://docs.google.com/a/eaterprises.com.au/forms/d/1zxR5vSiU9CigJ9cEaC8-eJLgYid8CR8er7PPH9Mc-30/edit#
|
||||
* Find out more and join in the conversation - http://openfoodnetwork.org
|
||||
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="32px" y="32px" height="32px" width="32px"
|
||||
viewBox="0 0 30.2 40" enable-background="new 0 0 30.2 40" xml:space="preserve">
|
||||
<g id="Layer_1_1_">
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M15.1,39.5c-0.1,0-0.2,0-0.3-0.1C14.2,38.9,0.5,27.2,0.5,15.1C0.5,7.1,7,0.5,15.1,0.5
|
||||
s14.6,6.6,14.6,14.6c0,12.3-13.7,23.8-14.3,24.3C15.3,39.5,15.2,39.5,15.1,39.5z"/>
|
||||
<path fill="#E5E5E5" d="M15.1,1c8,0,14.1,6.5,14.1,14.1C29.2,27.4,15.1,39,15.1,39S1,27.1,1,15.1C1,7.5,7.1,1,15.1,1 M15.1,0
|
||||
C6.8,0,0,6.8,0,15.1c0,12.3,13.9,24.1,14.5,24.6c0.2,0.2,0.4,0.2,0.6,0.2c0.2,0,0.5-0.1,0.6-0.2c0.6-0.5,14.5-12.1,14.5-24.6
|
||||
C30.2,6.8,23.4,0,15.1,0L15.1,0z"/>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<g>
|
||||
<path fill="#0B8C61" d="M15.1,32.5c-0.1,0-0.2,0-0.3-0.1c-0.4-0.3-9.1-7.7-9.1-15.5c0-5.2,4.2-9.4,9.4-9.4s9.4,4.2,9.4,9.4
|
||||
c0,7.9-8.7,15.2-9.1,15.5C15.3,32.5,15.2,32.5,15.1,32.5z"/>
|
||||
<path fill="#E5E5E5" d="M15.1,8c5.1,0,8.9,4.1,8.9,8.9c0,7.7-8.9,15.1-8.9,15.1s-8.9-7.5-8.9-15.1C6.2,12.1,10,8,15.1,8 M15.1,7
|
||||
c-5.5,0-9.9,4.5-9.9,9.9c0,8,8.9,15.5,9.3,15.8c0.2,0.2,0.4,0.2,0.6,0.2c0.2,0,0.5-0.1,0.6-0.2C16.1,32.5,25,25,25,16.9
|
||||
C25,11.5,20.6,7,15.1,7L15.1,7z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="source_files" display="none">
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB |
@@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="32px" y="32px" height="32px" width="32px"
|
||||
viewBox="0 0 30.2 40" enable-background="new 0 0 30.2 40" xml:space="preserve">
|
||||
<g id="Layer_1_1_">
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M15.1,39.5c-0.1,0-0.2,0-0.3-0.1C14.2,38.9,0.5,27.2,0.5,15.1C0.5,7.1,7,0.5,15.1,0.5
|
||||
s14.6,6.6,14.6,14.6c0,12.3-13.7,23.8-14.3,24.3C15.3,39.5,15.2,39.5,15.1,39.5z"/>
|
||||
<path fill="#E5E5E5" d="M15.1,1c8,0,14.1,6.5,14.1,14.1C29.2,27.4,15.1,39,15.1,39S1,27.1,1,15.1C1,7.5,7.1,1,15.1,1 M15.1,0
|
||||
C6.8,0,0,6.8,0,15.1c0,12.3,13.9,24.1,14.5,24.6c0.2,0.2,0.4,0.2,0.6,0.2c0.2,0,0.5-0.1,0.6-0.2c0.6-0.5,14.5-12.1,14.5-24.6
|
||||
C30.2,6.8,23.4,0,15.1,0L15.1,0z"/>
|
||||
</g>
|
||||
</g>
|
||||
<path fill="#FFFFFF" d="M16.9,21.7c1.9-3.2,3.9-7.3,3.9-9.5c0-3.2-2.6-5.7-5.7-5.7S9.4,9,9.4,12.2c0,2.2,2.1,6.3,3.9,9.5
|
||||
c-2.1,0.3-3.5,1.2-3.5,2.3c0,1.4,2.3,2.5,5.3,2.5s5.3-1.1,5.3-2.5C20.4,22.9,19,22.1,16.9,21.7z M12.2,12.2c0-1.6,1.3-2.9,2.9-2.9
|
||||
c1.6,0,2.9,1.3,2.9,2.9c0,1.6-1.3,2.9-2.9,2.9C13.5,15.1,12.2,13.8,12.2,12.2z M15.1,25.7c-2.7,0-4.6-0.9-4.6-1.7
|
||||
c0-0.6,1.2-1.4,3.2-1.6c0.1,0.2,0.2,0.3,0.3,0.4c0,0.1,0.1,0.2,0.1,0.2c0.1,0.2,0.2,0.3,0.3,0.5c0,0,0.1,0.1,0.1,0.1
|
||||
c0.1,0.2,0.2,0.3,0.2,0.4c0,0,0,0,0,0c0.1,0.1,0.1,0.1,0.1,0.1l0.3,0.5l0.3-0.5c0,0,0,0,0.1-0.1c0,0,0-0.1,0-0.1
|
||||
c0.1-0.1,0.1-0.2,0.2-0.3c0,0,0-0.1,0.1-0.1c0.1-0.2,0.2-0.3,0.3-0.5c0-0.1,0.1-0.1,0.1-0.2c0.1-0.1,0.2-0.3,0.3-0.5
|
||||
c2,0.3,3.2,1,3.2,1.6C19.7,24.8,17.8,25.7,15.1,25.7z"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="source_files" display="none">
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.8 KiB |
@@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="32px" y="32px" height="32px" width="32px"
|
||||
viewBox="0 0 30.2 40" enable-background="new 0 0 30.2 40" xml:space="preserve">
|
||||
<g id="Layer_1_1_">
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<path fill="#0B8C61" d="M15.1,39.5c-0.1,0-0.2,0-0.3-0.1C14.2,38.9,0.5,27.2,0.5,15.1C0.5,7.1,7,0.5,15.1,0.5
|
||||
s14.6,6.6,14.6,14.6c0,12.3-13.7,23.8-14.3,24.3C15.3,39.5,15.2,39.5,15.1,39.5z"/>
|
||||
<path fill="#E5E5E5" d="M15.1,1c8,0,14.1,6.5,14.1,14.1C29.2,27.4,15.1,39,15.1,39S1,27.1,1,15.1C1,7.5,7.1,1,15.1,1 M15.1,0
|
||||
C6.8,0,0,6.8,0,15.1c0,12.3,13.9,24.1,14.5,24.6c0.2,0.2,0.4,0.2,0.6,0.2c0.2,0,0.5-0.1,0.6-0.2c0.6-0.5,14.5-12.1,14.5-24.6
|
||||
C30.2,6.8,23.4,0,15.1,0L15.1,0z"/>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M8.3,15.3c2.9-0.8,5.8,1.2,6.1,4.2c0,0.1,0,0.2,0.1,0.4c0.1,0,0.2,0,0.4,0c2.4-0.1,4.8-0.1,7.2-0.2
|
||||
c-1,0.3-1.7,1.2-1.7,2.3c0,1.3,1.1,2.4,2.4,2.4c1.3,0,2.4-1.1,2.4-2.4c0-1.2-0.9-2.2-2-2.3c1.8-0.1,1.4-0.1,1.7-1.7
|
||||
c0.1-0.8,0.2-1.6,0.3-2.3c0.1-0.7-0.1-0.9-0.8-0.9c-1.1,0-2-0.1-3.1-0.1c0,0-0.1,0-0.1-0.1c0-0.8,0-2.7,0-2.7s-0.4-0.3-0.9,0
|
||||
c0,0.9,0,1.8,0,2.8c0,0-1.3,0-3.1-0.1c-0.1,0-0.3-0.1-0.4-0.4c-0.3-0.8-0.9-2.3-1.7-4.6c0,0-0.4-1-1.5-1c-0.9,0-5.2,0-5.2,0v5.7
|
||||
c0,0-0.4,0.2-0.7,0.2C7.4,15.3,7.5,15.5,8.3,15.3z M23.9,22c0,0.7-0.6,1.2-1.2,1.2s-1.2-0.6-1.2-1.2c0-0.7,0.6-1.2,1.2-1.2
|
||||
C23.4,20.8,23.9,21.3,23.9,22z M9.6,11.3l0-1.1l4.4,0l1.4,4.2l0,0c-1.9,0-4,0-5.8,0.1L9.6,11.3z"/>
|
||||
<path fill="#FFFFFF" d="M9.4,15.8c-2.4,0-4.3,1.9-4.3,4.3s1.9,4.3,4.3,4.3c2.4,0,4.3-1.9,4.3-4.3C13.7,17.7,11.8,15.8,9.4,15.8z
|
||||
M9.4,22.5c-1.3,0-2.4-1.1-2.4-2.4c0-1.3,1.1-2.4,2.4-2.4c1.3,0,2.4,1.1,2.4,2.4S10.7,22.5,9.4,22.5z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="source_files" display="none">
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 2.0 KiB |
67
app/assets/images/map_001-producer-only.svg
Normal file
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<g>
|
||||
<path fill="#0B8C61" d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002
|
||||
l-0.935-2.824L9.46,8.846z"/>
|
||||
<circle fill="#0B8C61" cx="8.728" cy="17.454" r="1.569"/>
|
||||
<path fill="#0B8C61" d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075
|
||||
c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464
|
||||
c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112
|
||||
c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727
|
||||
c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069
|
||||
s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"/>
|
||||
<circle fill="#0B8C61" cx="20.826" cy="19.013" r="1.006"/>
|
||||
<path fill="#0B8C61" d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839
|
||||
c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484
|
||||
S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065
|
||||
c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0
|
||||
v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252
|
||||
c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147
|
||||
c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037
|
||||
c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0
|
||||
c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147
|
||||
c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163
|
||||
c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018
|
||||
C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257
|
||||
c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"/>
|
||||
<path fill="#0B8C61" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z M23.973,19.013
|
||||
c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98
|
||||
c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018
|
||||
c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455
|
||||
c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679
|
||||
c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572
|
||||
c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23
|
||||
c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073
|
||||
c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208
|
||||
c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.3 KiB |
69
app/assets/images/map_002-producer-only-profile.svg
Normal file
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<g>
|
||||
<path fill="#0B8C61" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.333C28,6.717,21.72,0,14,0z M14.002,30.908
|
||||
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1c7.44,0,13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
|
||||
<path fill="#0B8C61" d="M23.703,15.582c0.123-0.658,0.214-1.36,0.284-2.208c0.035-0.422,0.026-0.962-0.358-1.396
|
||||
c-0.433-0.489-1.081-0.514-1.358-0.525c-0.659-0.024-1.281-0.048-1.916-0.073c0.011-0.745,0.028-1.56,0.028-1.56l0.011-0.52
|
||||
l-0.419-0.307c-0.106-0.078-0.495-0.332-1.044-0.332c-0.306,0-0.599,0.077-0.872,0.23l-0.512,0.286v0.586v1.502
|
||||
c-0.378-0.009-0.845-0.02-1.376-0.031c-0.062-0.164-0.135-0.355-0.217-0.572c-0.298-0.78-0.706-1.847-1.203-3.283l-0.011-0.03
|
||||
l-0.013-0.03c-0.234-0.557-0.969-1.5-2.238-1.5H7.811h-1v1v4.407L6.3,11.276l-0.125,0.757c-0.061,0.373-0.13,0.911,0.148,1.375
|
||||
C4.939,14.233,4,15.729,4,17.455c0,2.606,2.121,4.727,4.728,4.727c2.39,0,4.349-1.79,4.661-4.096
|
||||
c0.107,0.016,0.212,0.03,0.315,0.03h0.018l0.037-0.001c0.706-0.018,1.421-0.031,2.137-0.043c0.639-0.011,1.288-0.023,1.94-0.039
|
||||
c-0.103,0.311-0.158,0.641-0.158,0.98c0,1.735,1.412,3.147,3.148,3.147c1.736,0,3.147-1.412,3.147-3.147
|
||||
c0-0.706-0.242-1.369-0.651-1.903c0.135-0.239,0.23-0.556,0.292-0.981C23.636,15.978,23.662,15.798,23.703,15.582z M8.728,21.181
|
||||
C6.672,21.181,5,19.51,5,17.455c0-1.562,0.969-2.898,2.335-3.451c0.026,0.001,0.046,0.009,0.074,0.009
|
||||
c0.197,0,0.409-0.034,0.685-0.112c0.289-0.081,0.586-0.122,0.881-0.122c0.21,0,0.417,0.021,0.619,0.061
|
||||
c0.888,0.213,1.652,0.741,2.166,1.464c0.041,0.06,0.082,0.121,0.119,0.184c0.057,0.091,0.105,0.188,0.155,0.285
|
||||
c0.16,0.334,0.279,0.693,0.325,1.075c0.009,0.083,0.022,0.176,0.037,0.283l0.011,0.082l0.041,0.296
|
||||
C12.417,19.539,10.763,21.181,8.728,21.181z M22.973,19.013c0,1.184-0.964,2.147-2.147,2.147c-1.186,0-2.148-0.963-2.148-2.147
|
||||
c0-0.985,0.669-1.815,1.575-2.067c-2.174,0.109-4.353,0.113-6.529,0.169c-0.007,0-0.013,0-0.02,0
|
||||
c-0.092,0-0.188-0.022-0.289-0.036c-0.032-0.402-0.111-0.788-0.238-1.156c-0.004-0.012-0.007-0.024-0.011-0.037
|
||||
c-0.063-0.177-0.134-0.348-0.217-0.515c-0.076-0.163-0.161-0.318-0.255-0.469c-0.032-0.05-0.062-0.099-0.096-0.147
|
||||
c-0.646-0.956-1.628-1.642-2.748-1.879c-0.362-0.089-0.734-0.149-1.122-0.149c-0.509,0-0.991,0.102-1.451,0.252
|
||||
c-0.181-0.073-0.192-0.312-0.115-0.784c0.296-0.029,0.649-0.178,0.649-0.178V6.819c0,0,3.899,0,4.679,0
|
||||
c0.943,0,1.316,0.888,1.316,0.888c0.72,2.081,1.269,3.432,1.52,4.126c0.097,0.264,0.303,0.39,0.378,0.392
|
||||
c1.672,0.035,2.844,0.065,2.844,0.065c0-0.873,0-1.706,0-2.527c0.136-0.076,0.267-0.103,0.383-0.103
|
||||
c0.265,0,0.453,0.138,0.453,0.138s-0.037,1.76-0.037,2.484c0,0.038,0.048,0.059,0.077,0.06c0.961,0.038,1.848,0.075,2.808,0.109
|
||||
c0.646,0.025,0.813,0.18,0.758,0.839c-0.059,0.705-0.14,1.412-0.271,2.108c-0.269,1.444,0.042,1.395-1.562,1.496
|
||||
C22.183,17.055,22.973,17.943,22.973,19.013z"/>
|
||||
<path fill="#0B8C61" d="M19.57,19.013c0,0.693,0.564,1.257,1.256,1.257c0.692,0,1.256-0.564,1.256-1.257
|
||||
c0-0.692-0.564-1.255-1.256-1.255C20.134,17.758,19.57,18.321,19.57,19.013z M21.832,19.013c0,0.555-0.451,1.007-1.006,1.007
|
||||
c-0.555,0-1.006-0.452-1.006-1.007c0-0.554,0.451-1.005,1.006-1.005C21.381,18.008,21.832,18.459,21.832,19.013z"/>
|
||||
<path fill="#0B8C61" d="M12.919,8.341L8.961,8.347l-0.004,0.97l-0.003,2.916c1.209-0.044,2.595-0.069,3.939-0.069
|
||||
c0.452,0,0.9,0.003,1.334,0.009l-0.045-0.018L12.919,8.341z M12.893,11.663c-1.138,0-2.34,0.018-3.438,0.052l0.003-2.397
|
||||
L9.46,8.846l3.098-0.005l0.935,2.824C13.294,11.664,13.094,11.663,12.893,11.663z"/>
|
||||
<path fill="#0B8C61" d="M8.728,15.385c-1.142,0-2.07,0.929-2.07,2.07s0.928,2.069,2.07,2.069c1.141,0,2.069-0.928,2.069-2.069
|
||||
S9.869,15.385,8.728,15.385z M8.728,19.023c-0.865,0-1.57-0.704-1.57-1.569c0-0.866,0.704-1.57,1.57-1.57
|
||||
c0.865,0,1.569,0.704,1.569,1.57C10.297,18.32,9.593,19.023,8.728,19.023z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.6 KiB |
67
app/assets/images/map_003-producer-shop.svg
Normal file
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002
|
||||
l-0.935-2.824L9.46,8.846z"/>
|
||||
<circle fill="#C1122B" cx="8.728" cy="17.454" r="1.569"/>
|
||||
<path fill="#C1122B" d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075
|
||||
c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464
|
||||
c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112
|
||||
c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727
|
||||
c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069
|
||||
s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"/>
|
||||
<circle fill="#C1122B" cx="20.826" cy="19.013" r="1.006"/>
|
||||
<path fill="#C1122B" d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839
|
||||
c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484
|
||||
S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065
|
||||
c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0
|
||||
v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252
|
||||
c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147
|
||||
c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037
|
||||
c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0
|
||||
c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147
|
||||
c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163
|
||||
c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018
|
||||
C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257
|
||||
c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"/>
|
||||
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z M23.973,19.013
|
||||
c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98
|
||||
c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018
|
||||
c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455
|
||||
c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679
|
||||
c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572
|
||||
c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23
|
||||
c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073
|
||||
c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208
|
||||
c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.3 KiB |
69
app/assets/images/map_004-producer-shop-profile.svg
Normal file
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.333C28,6.717,21.72,0,14,0z M14.002,30.908
|
||||
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1c7.44,0,13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
|
||||
<path fill="#C1122B" d="M23.703,15.582c0.123-0.658,0.214-1.36,0.284-2.208c0.035-0.422,0.026-0.962-0.358-1.396
|
||||
c-0.433-0.489-1.081-0.514-1.358-0.525c-0.659-0.024-1.281-0.048-1.916-0.073c0.011-0.745,0.028-1.56,0.028-1.56l0.011-0.52
|
||||
l-0.419-0.307c-0.106-0.078-0.495-0.332-1.044-0.332c-0.306,0-0.599,0.077-0.872,0.23l-0.512,0.286v0.586v1.502
|
||||
c-0.378-0.009-0.845-0.02-1.376-0.031c-0.062-0.164-0.135-0.355-0.217-0.572c-0.298-0.78-0.706-1.847-1.203-3.283l-0.011-0.03
|
||||
l-0.013-0.03c-0.234-0.557-0.969-1.5-2.238-1.5H7.811h-1v1v4.407L6.3,11.276l-0.125,0.757c-0.061,0.373-0.13,0.911,0.148,1.375
|
||||
C4.939,14.233,4,15.729,4,17.455c0,2.606,2.121,4.727,4.728,4.727c2.39,0,4.349-1.79,4.661-4.096
|
||||
c0.107,0.016,0.212,0.03,0.315,0.03h0.018l0.037-0.001c0.706-0.018,1.421-0.031,2.137-0.043c0.639-0.011,1.288-0.023,1.94-0.039
|
||||
c-0.103,0.311-0.158,0.641-0.158,0.98c0,1.735,1.412,3.147,3.148,3.147c1.736,0,3.147-1.412,3.147-3.147
|
||||
c0-0.706-0.242-1.369-0.651-1.903c0.135-0.239,0.23-0.556,0.292-0.981C23.636,15.978,23.662,15.798,23.703,15.582z M8.728,21.181
|
||||
C6.672,21.181,5,19.51,5,17.455c0-1.562,0.969-2.898,2.335-3.451c0.026,0.001,0.046,0.009,0.074,0.009
|
||||
c0.197,0,0.409-0.034,0.685-0.112c0.289-0.081,0.586-0.122,0.881-0.122c0.21,0,0.417,0.021,0.619,0.061
|
||||
c0.888,0.213,1.652,0.741,2.166,1.464c0.041,0.06,0.082,0.121,0.119,0.184c0.057,0.091,0.105,0.188,0.155,0.285
|
||||
c0.16,0.334,0.279,0.693,0.325,1.075c0.009,0.083,0.022,0.176,0.037,0.283l0.011,0.082l0.041,0.296
|
||||
C12.417,19.539,10.763,21.181,8.728,21.181z M22.973,19.013c0,1.184-0.964,2.147-2.147,2.147c-1.186,0-2.148-0.963-2.148-2.147
|
||||
c0-0.985,0.669-1.815,1.575-2.067c-2.174,0.109-4.353,0.113-6.529,0.169c-0.007,0-0.013,0-0.02,0
|
||||
c-0.092,0-0.188-0.022-0.289-0.036c-0.032-0.402-0.111-0.788-0.238-1.156c-0.004-0.012-0.007-0.024-0.011-0.037
|
||||
c-0.063-0.177-0.134-0.348-0.217-0.515c-0.076-0.163-0.161-0.318-0.255-0.469c-0.032-0.05-0.062-0.099-0.096-0.147
|
||||
c-0.646-0.956-1.628-1.642-2.748-1.879c-0.362-0.089-0.734-0.149-1.122-0.149c-0.509,0-0.991,0.102-1.451,0.252
|
||||
c-0.181-0.073-0.192-0.312-0.115-0.784c0.296-0.029,0.649-0.178,0.649-0.178V6.819c0,0,3.899,0,4.679,0
|
||||
c0.943,0,1.316,0.888,1.316,0.888c0.72,2.081,1.269,3.432,1.52,4.126c0.097,0.264,0.303,0.39,0.378,0.392
|
||||
c1.672,0.035,2.844,0.065,2.844,0.065c0-0.873,0-1.706,0-2.527c0.136-0.076,0.267-0.103,0.383-0.103
|
||||
c0.265,0,0.453,0.138,0.453,0.138s-0.037,1.76-0.037,2.484c0,0.038,0.048,0.059,0.077,0.06c0.961,0.038,1.848,0.075,2.808,0.109
|
||||
c0.646,0.025,0.813,0.18,0.758,0.839c-0.059,0.705-0.14,1.412-0.271,2.108c-0.269,1.444,0.042,1.395-1.562,1.496
|
||||
C22.183,17.055,22.973,17.943,22.973,19.013z"/>
|
||||
<path fill="#C1122B" d="M19.57,19.013c0,0.693,0.564,1.257,1.256,1.257c0.692,0,1.256-0.564,1.256-1.257
|
||||
c0-0.692-0.564-1.255-1.256-1.255C20.134,17.758,19.57,18.321,19.57,19.013z M21.832,19.013c0,0.555-0.451,1.007-1.006,1.007
|
||||
c-0.555,0-1.006-0.452-1.006-1.007c0-0.554,0.451-1.005,1.006-1.005C21.381,18.008,21.832,18.459,21.832,19.013z"/>
|
||||
<path fill="#C1122B" d="M12.919,8.341L8.961,8.347l-0.004,0.97l-0.003,2.916c1.209-0.044,2.595-0.069,3.939-0.069
|
||||
c0.452,0,0.9,0.003,1.334,0.009l-0.045-0.018L12.919,8.341z M12.893,11.663c-1.138,0-2.34,0.018-3.438,0.052l0.003-2.397
|
||||
L9.46,8.846l3.098-0.005l0.935,2.824C13.294,11.664,13.094,11.663,12.893,11.663z"/>
|
||||
<path fill="#C1122B" d="M8.728,15.385c-1.142,0-2.07,0.929-2.07,2.07s0.928,2.069,2.07,2.069c1.141,0,2.069-0.928,2.069-2.069
|
||||
S9.869,15.385,8.728,15.385z M8.728,19.023c-0.865,0-1.57-0.704-1.57-1.569c0-0.866,0.704-1.57,1.57-1.57
|
||||
c0.865,0,1.569,0.704,1.569,1.57C10.297,18.32,9.593,19.023,8.728,19.023z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.6 KiB |
51
app/assets/images/map_005-hub.svg
Normal file
@@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M13.999,8.546c-1.24,0-2.249,1.009-2.249,2.248c0,1.242,1.009,2.253,2.249,2.253
|
||||
c1.241,0,2.251-1.01,2.251-2.253C16.25,9.555,15.24,8.546,13.999,8.546z"/>
|
||||
<path fill="#C1122B" d="M14,6.348c-2.453,0-4.448,1.995-4.448,4.448c0,0.859,0.468,3.112,3.602,8.541l0.387,0.671l0.134,0.225
|
||||
l0.09,0.15l0.043,0.072l0.085,0.144l0.108,0.178l0.104-0.172l0.036-0.061l0.088-0.149l0.032-0.054l0.19-0.319l0.395-0.685
|
||||
c3.134-5.44,3.602-7.687,3.602-8.542C18.448,8.343,16.452,6.348,14,6.348z M13.999,13.797c-1.654,0-2.999-1.347-2.999-3.003
|
||||
c0-1.655,1.346-2.998,2.999-2.998c1.655,0,3.001,1.345,3.001,2.998C17,12.451,15.654,13.797,13.999,13.797z"/>
|
||||
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.333C28,6.717,21.72,0,14,0z M19.336,22.021
|
||||
c-0.002,1.728-2.686,2.632-5.337,2.632c-2.652,0-5.337-0.905-5.337-2.634c0-1.158,1.352-2.099,3.465-2.462
|
||||
c-1.721-3.01-3.577-6.721-3.577-8.76c0-3.004,2.444-5.448,5.448-5.448s5.448,2.444,5.449,5.447c0,2.036-1.858,5.75-3.578,8.762
|
||||
C17.984,19.92,19.336,20.86,19.336,22.021z"/>
|
||||
<path fill="#C1122B" d="M15.175,20.763c-0.029,0.048-0.059,0.1-0.088,0.148c-0.04,0.068-0.084,0.142-0.121,0.204
|
||||
c-0.111,0.184-0.206,0.339-0.293,0.483c-0.021,0.03-0.042,0.066-0.061,0.096c-0.081,0.133-0.142,0.231-0.194,0.313
|
||||
c-0.015,0.025-0.032,0.054-0.045,0.073c-0.052,0.082-0.08,0.125-0.08,0.125l-0.295,0.463l-0.293-0.463
|
||||
c0,0-0.031-0.048-0.085-0.134c-0.006-0.009-0.013-0.023-0.019-0.029c-0.053-0.086-0.123-0.198-0.212-0.345
|
||||
c-0.025-0.038-0.052-0.086-0.079-0.127c-0.083-0.136-0.17-0.278-0.274-0.448c-0.042-0.072-0.089-0.15-0.134-0.225
|
||||
c-0.026-0.044-0.053-0.09-0.078-0.132l-0.381,0.061c-1.729,0.277-2.477,0.925-2.477,1.195c0,0.172,0.269,0.481,0.859,0.754
|
||||
c0.8,0.37,1.926,0.574,3.172,0.574c2.608,0,4.031-0.878,4.031-1.329c0-0.269-0.748-0.917-2.476-1.195L15.175,20.763z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
51
app/assets/images/map_006-hub-profile.svg
Normal file
@@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.333C28,6.717,21.72,0,14,0z M14.002,30.908
|
||||
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1s13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
|
||||
<path fill="#C1122B" d="M14,7.796c-1.654,0-3,1.344-3,2.998c0,1.656,1.346,3.003,3,3.003c1.655,0,3-1.347,3-3.003
|
||||
C17,9.141,15.654,7.796,14,7.796z M14,13.047c-1.24,0-2.25-1.01-2.25-2.253c0-1.24,1.009-2.248,2.25-2.248
|
||||
c1.241,0,2.25,1.009,2.25,2.248C16.25,12.037,15.24,13.047,14,13.047z"/>
|
||||
<path fill="#C1122B" d="M14,5.348c-3.004,0-5.448,2.444-5.448,5.448c0,2.039,1.856,5.75,3.577,8.76
|
||||
c-2.113,0.363-3.465,1.304-3.465,2.462c0,1.729,2.685,2.634,5.337,2.634c2.65,0,5.335-0.904,5.337-2.632
|
||||
c0-1.16-1.352-2.1-3.465-2.464c1.719-3.012,3.578-6.725,3.578-8.762C19.448,7.792,17.003,5.348,14,5.348z M18.031,22.018
|
||||
c0,0.451-1.423,1.329-4.031,1.329c-1.246,0-2.372-0.204-3.172-0.574c-0.591-0.273-0.859-0.582-0.859-0.754
|
||||
c0-0.269,0.748-0.917,2.477-1.195l0.381-0.061c0.025,0.042,0.053,0.088,0.078,0.132c0.045,0.075,0.092,0.153,0.134,0.225
|
||||
c0.104,0.17,0.191,0.313,0.274,0.448c0.027,0.042,0.054,0.089,0.079,0.127c0.089,0.147,0.159,0.258,0.212,0.345
|
||||
c0.006,0.007,0.013,0.021,0.019,0.029c0.053,0.086,0.085,0.134,0.085,0.134l0.293,0.463l0.295-0.463c0,0,0.028-0.044,0.08-0.125
|
||||
c0.012-0.019,0.029-0.048,0.045-0.073c0.052-0.082,0.113-0.18,0.194-0.313c0.019-0.029,0.04-0.066,0.061-0.096
|
||||
c0.086-0.143,0.181-0.298,0.293-0.483c0.037-0.063,0.081-0.136,0.121-0.204c0.029-0.048,0.06-0.1,0.088-0.148l0.38,0.061
|
||||
C17.283,21.101,18.031,21.749,18.031,22.018z M14.847,19.337l-0.396,0.688l-0.189,0.316l-0.032,0.054l-0.089,0.151l-0.036,0.06
|
||||
l-0.104,0.172L13.892,20.6l-0.085-0.144l-0.043-0.072l-0.09-0.15l-0.135-0.227l-0.387-0.67c-3.134-5.43-3.602-7.682-3.602-8.541
|
||||
c0-2.453,1.995-4.448,4.448-4.448c2.453,0,4.448,1.995,4.449,4.447C18.449,11.65,17.981,13.897,14.847,19.337z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
52
app/assets/images/map_007-shop.svg
Normal file
@@ -0,0 +1,52 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M21.552,10.282h-3.274l-1.683-2.709c-0.165-0.287-0.533-0.384-0.8-0.228
|
||||
c-0.135,0.078-0.229,0.201-0.27,0.35c-0.041,0.153-0.019,0.315,0.062,0.457l1.359,2.129h-6.311l1.379-2.161
|
||||
c0.066-0.114,0.087-0.271,0.046-0.421c-0.04-0.15-0.136-0.275-0.271-0.353c-0.266-0.156-0.64-0.053-0.787,0.202l-1.697,2.733
|
||||
H6.448c-0.522,0-0.948,0.426-0.948,0.948v0.827c0,0.492,0.363,0.97,0.793,1.041l0.105,0.018h15.156l0.119-0.016
|
||||
c0.44-0.058,0.827-0.545,0.827-1.043V11.23C22.5,10.708,22.074,10.282,21.552,10.282z"/>
|
||||
<path fill="#C1122B" d="M8.057,20.02c0.007,0.222,0.122,0.337,0.263,0.337h11.365c0.142,0,0.257-0.115,0.257-0.256l0.007-0.1
|
||||
l0.971-5.886H7.082L8.057,20.02z M17.116,16.074c0-0.298,0.22-0.539,0.518-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017
|
||||
c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.518-0.241-0.518-0.539V16.074z M14.694,16.074c0-0.298,0.219-0.539,0.517-0.539
|
||||
s0.517,0.241,0.517,0.539v2.017c0,0.298-0.219,0.539-0.517,0.539s-0.517-0.241-0.517-0.539V16.074z M12.272,16.074
|
||||
c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.517,0.241,0.517,0.539v2.017c0,0.298-0.22,0.539-0.517,0.539
|
||||
c-0.298,0-0.517-0.241-0.517-0.539V16.074z M9.85,16.074c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017
|
||||
c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.517-0.241-0.517-0.539V16.074z"/>
|
||||
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.333C28,6.717,21.72,0,14,0z M23.5,12.057
|
||||
c0,0.863-0.567,1.661-1.325,1.942l-1.025,5.889c-0.015,0.976-0.889,1.831-1.94,1.831H8.744c-1.052,0-1.925-0.855-1.947-1.906
|
||||
l-1.024-5.828C5.036,13.691,4.5,12.91,4.5,12.057V11.23c0-1.074,0.874-1.948,1.948-1.948H8.75l1.396-2.247
|
||||
c0.4-0.698,1.417-0.978,2.145-0.555c0.755,0.435,1.015,1.403,0.58,2.159l-0.41,0.642h2.662l-0.39-0.61
|
||||
c-0.227-0.391-0.284-0.823-0.174-1.235c0.109-0.406,0.37-0.745,0.734-0.955c0.716-0.417,1.739-0.148,2.159,0.579l1.381,2.223
|
||||
h2.718c1.074,0,1.948,0.874,1.948,1.948V12.057z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.8 KiB |
73
app/assets/images/map_008-shop-profile.svg
Normal file
@@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
|
||||
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
|
||||
<metadata>
|
||||
<sfw xmlns="&ns_sfw;">
|
||||
<slices></slices>
|
||||
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
|
||||
</sfw>
|
||||
</metadata>
|
||||
<g>
|
||||
<path opacity="0.25" fill="#282828" d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643
|
||||
C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643
|
||||
C24.988,26.679,20.059,25,14,25z"/>
|
||||
<g>
|
||||
<path fill="#FFFFFF" d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z"/>
|
||||
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32
|
||||
c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.333C28,6.717,21.72,0,14,0z M14.002,30.908
|
||||
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1s13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
|
||||
<g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M19.457,22.366H8.494c-1.074,0-1.965-0.873-1.988-1.946l-1.079-6.143
|
||||
C4.661,13.986,4.1,13.177,4.1,12.295v-0.866c0-1.097,0.892-1.989,1.988-1.989h2.441l1.479-2.379
|
||||
c0.408-0.709,1.438-0.99,2.177-0.563c0.37,0.214,0.635,0.559,0.747,0.973c0.11,0.413,0.054,0.846-0.16,1.216l-0.479,0.751h2.98
|
||||
L14.813,8.72c-0.229-0.395-0.288-0.833-0.177-1.251c0.11-0.413,0.375-0.758,0.745-0.971c0.731-0.428,1.766-0.151,2.191,0.588
|
||||
l1.463,2.354h2.877c1.096,0,1.988,0.892,1.988,1.989v0.866c0,0.894-0.594,1.719-1.382,1.996l-1.08,6.199
|
||||
C21.423,21.492,20.532,22.366,19.457,22.366z M6.088,10.383c-0.576,0-1.045,0.47-1.045,1.046v0.866
|
||||
c0,0.54,0.401,1.064,0.874,1.143l0.33,0.055l1.195,6.836c0.019,0.635,0.488,1.094,1.052,1.094h10.964
|
||||
c0.565,0,1.034-0.459,1.045-1.023l1.199-6.915l0.344-0.045c0.494-0.064,0.912-0.588,0.912-1.145v-0.866
|
||||
c0-0.576-0.469-1.046-1.045-1.046H18.51L16.762,7.57c-0.186-0.324-0.605-0.433-0.909-0.256
|
||||
c-0.153,0.088-0.262,0.229-0.307,0.398c-0.046,0.175-0.021,0.358,0.072,0.518l1.373,2.152h-6.42l1.393-2.183
|
||||
c0.077-0.134,0.1-0.313,0.055-0.483c-0.046-0.17-0.156-0.313-0.308-0.401c-0.304-0.179-0.729-0.061-0.895,0.23l-1.763,2.838
|
||||
H6.088z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M19.956,21.986H8.049c-0.697,0-1.264-0.566-1.264-1.263l-1.207-7.266h16.845l-1.204,7.282
|
||||
C21.22,21.419,20.653,21.986,19.956,21.986z M6.69,14.399l1.031,6.247c0.006,0.253,0.151,0.397,0.328,0.397h11.907
|
||||
c0.177,0,0.321-0.144,0.321-0.32l0.006-0.097l1.029-6.226H6.69z"/>
|
||||
</g>
|
||||
<g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M17.807,19.181c0.311,0,0.541-0.253,0.541-0.565v-2.113c0-0.312-0.23-0.565-0.541-0.565
|
||||
c-0.312,0-0.542,0.253-0.542,0.565v2.113C17.264,18.929,17.495,19.181,17.807,19.181z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M15.268,19.181c0.312,0,0.542-0.253,0.542-0.565v-2.113c0-0.312-0.23-0.565-0.542-0.565
|
||||
s-0.542,0.253-0.542,0.565v2.113C14.727,18.929,14.957,19.181,15.268,19.181z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M12.731,19.181c0.311,0,0.542-0.253,0.542-0.565v-2.113c0-0.312-0.23-0.565-0.542-0.565
|
||||
c-0.312,0-0.542,0.253-0.542,0.565v2.113C12.19,18.929,12.419,19.181,12.731,19.181z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#C1122B" d="M10.194,19.181c0.311,0,0.541-0.253,0.541-0.565v-2.113c0-0.312-0.23-0.565-0.541-0.565
|
||||
c-0.312,0-0.542,0.253-0.542,0.565v2.113C9.652,18.929,9.882,19.181,10.194,19.181z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.5 KiB |
BIN
app/assets/images/potatoes.png
Normal file
|
After Width: | Height: | Size: 8.2 KiB |
@@ -22,5 +22,6 @@
|
||||
//= require ./payment_methods/payment_methods
|
||||
//= require ./products/products
|
||||
//= require ./shipping_methods/shipping_methods
|
||||
//= require ./users/users
|
||||
|
||||
//= require_tree .
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
angular.module("ofn.admin").controller "AdminOrderMgmtCtrl", [
|
||||
"$scope", "$http", "dataFetcher", "blankOption", "pendingChanges", "VariantUnitManager", "OptionValueNamer",
|
||||
($scope, $http, dataFetcher, blankOption, pendingChanges, VariantUnitManager, OptionValueNamer) ->
|
||||
"$scope", "$http", "dataFetcher", "blankOption", "pendingChanges", "VariantUnitManager", "OptionValueNamer", "SpreeApiKey"
|
||||
($scope, $http, dataFetcher, blankOption, pendingChanges, VariantUnitManager, OptionValueNamer, SpreeApiKey) ->
|
||||
$scope.loading = true
|
||||
|
||||
$scope.initialiseVariables = ->
|
||||
start = daysFromToday -7
|
||||
@@ -32,14 +33,14 @@ angular.module("ofn.admin").controller "AdminOrderMgmtCtrl", [
|
||||
quantity: { name: "Quantity", visible: true }
|
||||
max: { name: "Max", visible: true }
|
||||
|
||||
$scope.initialise = (spree_api_key) ->
|
||||
$scope.initialise = ->
|
||||
$scope.initialiseVariables()
|
||||
authorise_api_reponse = ""
|
||||
dataFetcher("/api/users/authorise_api?token=" + spree_api_key).then (data) ->
|
||||
dataFetcher("/api/users/authorise_api?token=" + SpreeApiKey).then (data) ->
|
||||
authorise_api_reponse = data
|
||||
$scope.spree_api_key_ok = data.hasOwnProperty("success") and data["success"] == "Use of API Authorised"
|
||||
if $scope.spree_api_key_ok
|
||||
$http.defaults.headers.common["X-Spree-Token"] = spree_api_key
|
||||
$http.defaults.headers.common["X-Spree-Token"] = SpreeApiKey
|
||||
dataFetcher("/api/enterprises/accessible?template=bulk_index&q[is_primary_producer_eq]=true").then (data) ->
|
||||
$scope.suppliers = data
|
||||
$scope.suppliers.unshift blankOption()
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
angular.module("ofn.admin").controller "AdminProductEditCtrl", [
|
||||
"$scope", "$timeout", "$http", "dataFetcher", "DirtyProducts", "VariantUnitManager", "producers", "Taxons",
|
||||
($scope, $timeout, $http, dataFetcher, DirtyProducts, VariantUnitManager, producers, Taxons) ->
|
||||
"$scope", "$timeout", "$http", "dataFetcher", "DirtyProducts", "VariantUnitManager", "producers", "Taxons", "SpreeApiKey",
|
||||
($scope, $timeout, $http, dataFetcher, DirtyProducts, VariantUnitManager, producers, Taxons, SpreeApiKey) ->
|
||||
$scope.loading = true
|
||||
|
||||
$scope.updateStatusMessage =
|
||||
text: ""
|
||||
style: {}
|
||||
@@ -42,14 +44,13 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", [
|
||||
$scope.limit = 15
|
||||
$scope.productsWithUnsavedVariants = []
|
||||
|
||||
|
||||
$scope.initialise = (spree_api_key) ->
|
||||
$scope.initialise = ->
|
||||
authorise_api_reponse = ""
|
||||
dataFetcher("/api/users/authorise_api?token=" + spree_api_key).then (data) ->
|
||||
dataFetcher("/api/users/authorise_api?token=" + SpreeApiKey).then (data) ->
|
||||
authorise_api_reponse = data
|
||||
$scope.spree_api_key_ok = data.hasOwnProperty("success") and data["success"] == "Use of API Authorised"
|
||||
if $scope.spree_api_key_ok
|
||||
$http.defaults.headers.common["X-Spree-Token"] = spree_api_key
|
||||
$http.defaults.headers.common["X-Spree-Token"] = SpreeApiKey
|
||||
$scope.fetchProducts()
|
||||
else if authorise_api_reponse.hasOwnProperty("error")
|
||||
$scope.api_error_msg = authorise_api_reponse("error")
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
angular.module("ofn.admin").controller "AdminEnterpriseRelationshipsCtrl", ($scope, EnterpriseRelationships, Enterprises) ->
|
||||
$scope.EnterpriseRelationships = EnterpriseRelationships
|
||||
$scope.Enterprises = Enterprises
|
||||
$scope.permissions = {}
|
||||
|
||||
$scope.create = ->
|
||||
$scope.EnterpriseRelationships.create($scope.parent_id, $scope.child_id)
|
||||
$scope.EnterpriseRelationships.create($scope.parent_id, $scope.child_id, $scope.permissions)
|
||||
|
||||
$scope.delete = (enterprise_relationship) ->
|
||||
if confirm("Are you sure?")
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
angular.module("ofn.admin").controller "AdminEnterpriseRolesCtrl", ($scope, EnterpriseRoles, Users, Enterprises) ->
|
||||
$scope.EnterpriseRoles = EnterpriseRoles
|
||||
$scope.Users = Users
|
||||
$scope.Enterprises = Enterprises
|
||||
|
||||
$scope.create = ->
|
||||
$scope.EnterpriseRoles.create($scope.user_id, $scope.enterprise_id)
|
||||
|
||||
$scope.delete = (enterprise_role) ->
|
||||
if confirm("Are you sure?")
|
||||
$scope.EnterpriseRoles.delete enterprise_role
|
||||
@@ -0,0 +1,7 @@
|
||||
angular.module("ofn.admin").controller "ProvidersCtrl", ($scope, paymentMethod) ->
|
||||
if paymentMethod.type
|
||||
$scope.include_html = "/admin/payment_methods/show_provider_preferences?" +
|
||||
"provider_type=#{paymentMethod.type};" +
|
||||
"pm_id=#{paymentMethod.id};"
|
||||
else
|
||||
$scope.include_html = ""
|
||||
@@ -0,0 +1,7 @@
|
||||
angular.module("ofn.admin").directive "providerPrefsFor", ($http) ->
|
||||
link: (scope, element, attrs) ->
|
||||
element.on "change blur load", ->
|
||||
scope.$apply ->
|
||||
scope.include_html = "/admin/payment_methods/show_provider_preferences?" +
|
||||
"provider_type=#{element.val()};" +
|
||||
"pm_id=#{attrs.providerPrefsFor};"
|
||||
@@ -4,8 +4,8 @@ angular.module("admin.enterprises")
|
||||
$scope.PaymentMethods = PaymentMethods.paymentMethods
|
||||
$scope.ShippingMethods = ShippingMethods.shippingMethods
|
||||
|
||||
for PaymentMethod in $scope.PaymentMethods
|
||||
PaymentMethod.selected = if PaymentMethod.id in $scope.Enterprise.payment_method_ids then true else false
|
||||
for payment_method in $scope.PaymentMethods
|
||||
payment_method.selected = payment_method.id in $scope.Enterprise.payment_method_ids
|
||||
|
||||
$scope.paymentMethodsColor = ->
|
||||
if $scope.PaymentMethods.length > 0
|
||||
@@ -14,13 +14,13 @@ angular.module("admin.enterprises")
|
||||
"red"
|
||||
|
||||
$scope.selectedPaymentMethodsCount = ->
|
||||
$scope.PaymentMethods.reduce (count, PaymentMethod) ->
|
||||
count++ if PaymentMethod.selected
|
||||
$scope.PaymentMethods.reduce (count, payment_method) ->
|
||||
count++ if payment_method.selected
|
||||
count
|
||||
, 0
|
||||
|
||||
for ShippingMethod in $scope.ShippingMethods
|
||||
ShippingMethod.selected = if ShippingMethod.id in $scope.Enterprise.shipping_method_ids then true else false
|
||||
for shipping_method in $scope.ShippingMethods
|
||||
shipping_method.selected = shipping_method.id in $scope.Enterprise.shipping_method_ids
|
||||
|
||||
$scope.shippingMethodsColor = ->
|
||||
if $scope.ShippingMethods.length > 0
|
||||
@@ -29,7 +29,7 @@ angular.module("admin.enterprises")
|
||||
"red"
|
||||
|
||||
$scope.selectedShippingMethodsCount = ->
|
||||
$scope.ShippingMethods.reduce (count, ShippingMethod) ->
|
||||
count++ if ShippingMethod.selected
|
||||
$scope.ShippingMethods.reduce (count, shipping_method) ->
|
||||
count++ if shipping_method.selected
|
||||
count
|
||||
, 0
|
||||
@@ -1 +1 @@
|
||||
angular.module("admin.enterprises", ["admin.payment_methods", "admin.shipping_methods"])
|
||||
angular.module("admin.enterprises", ["admin.payment_methods", "admin.shipping_methods", "admin.users"])
|
||||
@@ -197,12 +197,13 @@ angular.module('order_cycle', ['ngResource'])
|
||||
this.order_cycle.outgoing_exchanges.push({enterprise_id: new_distributor_id, incoming: false, active: true, variants: {}, enterprise_fees: []})
|
||||
|
||||
removeExchange: (exchange) ->
|
||||
incoming_index = this.order_cycle.incoming_exchanges.indexOf exchange
|
||||
this.order_cycle.incoming_exchanges.splice(incoming_index, 1) if incoming_index > -1
|
||||
outgoing_index = this.order_cycle.outgoing_exchanges.indexOf exchange
|
||||
this.order_cycle.outgoing_exchanges.splice(outgoing_index, 1) if outgoing_index > -1
|
||||
|
||||
this.removeDistributionOfVariant(variant_id) for variant_id, active of exchange.variants when active
|
||||
if exchange.incoming
|
||||
incoming_index = this.order_cycle.incoming_exchanges.indexOf exchange
|
||||
this.order_cycle.incoming_exchanges.splice(incoming_index, 1)
|
||||
this.removeDistributionOfVariant(variant_id) for variant_id, active of exchange.variants when active
|
||||
else
|
||||
outgoing_index = this.order_cycle.outgoing_exchanges.indexOf exchange
|
||||
this.order_cycle.outgoing_exchanges.splice(outgoing_index, 1) if outgoing_index > -1
|
||||
|
||||
addCoordinatorFee: ->
|
||||
this.order_cycle.coordinator_fees.push({})
|
||||
@@ -330,7 +331,7 @@ angular.module('order_cycle', ['ngResource'])
|
||||
}])
|
||||
|
||||
.factory('Enterprise', ['$resource', ($resource) ->
|
||||
Enterprise = $resource('/admin/enterprises/:enterprise_id.json', {}, {'index': {method: 'GET', isArray: true}})
|
||||
Enterprise = $resource('/admin/enterprises/for_order_cycle/:enterprise_id.json', {}, {'index': {method: 'GET', isArray: true}})
|
||||
|
||||
{
|
||||
Enterprise: Enterprise
|
||||
|
||||
@@ -1,12 +1,17 @@
|
||||
angular.module("ofn.admin").factory 'EnterpriseRelationships', ($http, enterprise_relationships) ->
|
||||
new class EnterpriseRelationships
|
||||
create_errors: ""
|
||||
all_permissions: [
|
||||
'add_to_order_cycle'
|
||||
'manage_products'
|
||||
]
|
||||
|
||||
constructor: ->
|
||||
@enterprise_relationships = enterprise_relationships
|
||||
|
||||
create: (parent_id, child_id) ->
|
||||
$http.post('/admin/enterprise_relationships', {enterprise_relationship: {parent_id: parent_id, child_id: child_id}}).success (data, status) =>
|
||||
create: (parent_id, child_id, permissions) ->
|
||||
permissions = (name for name, enabled of permissions when enabled)
|
||||
$http.post('/admin/enterprise_relationships', {enterprise_relationship: {parent_id: parent_id, child_id: child_id, permissions_list: permissions}}).success (data, status) =>
|
||||
@enterprise_relationships.unshift(data)
|
||||
@create_errors = ""
|
||||
|
||||
@@ -16,3 +21,8 @@ angular.module("ofn.admin").factory 'EnterpriseRelationships', ($http, enterpris
|
||||
delete: (er) ->
|
||||
$http.delete('/admin/enterprise_relationships/' + er.id).success (data) =>
|
||||
@enterprise_relationships.splice @enterprise_relationships.indexOf(er), 1
|
||||
|
||||
permission_presentation: (permission) ->
|
||||
switch permission
|
||||
when "add_to_order_cycle" then "to add to order cycle"
|
||||
when "manage_products" then "to manage products"
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
angular.module("ofn.admin").factory 'EnterpriseRoles', ($http, enterpriseRoles) ->
|
||||
new class EnterpriseRoles
|
||||
create_errors: ""
|
||||
|
||||
constructor: ->
|
||||
@enterprise_roles = enterpriseRoles
|
||||
|
||||
create: (user_id, enterprise_id) ->
|
||||
$http.post('/admin/enterprise_roles', {enterprise_role: {user_id: user_id, enterprise_id: enterprise_id}}).success (data, status) =>
|
||||
@enterprise_roles.unshift(data)
|
||||
@create_errors = ""
|
||||
|
||||
.error (response, status) =>
|
||||
@create_errors = response.errors
|
||||
|
||||
delete: (er) ->
|
||||
$http.delete('/admin/enterprise_roles/' + er.id).success (data) =>
|
||||
@enterprise_roles.splice @enterprise_roles.indexOf(er), 1
|
||||
4
app/assets/javascripts/admin/services/users.js.coffee
Normal file
@@ -0,0 +1,4 @@
|
||||
angular.module("ofn.admin").factory 'Users', (users) ->
|
||||
new class Users
|
||||
constructor: ->
|
||||
@users = users
|
||||
@@ -0,0 +1,18 @@
|
||||
angular.module("admin.users").directive "ofnUserAutocomplete", ($http) ->
|
||||
link: (scope,element,attrs) ->
|
||||
setTimeout ->
|
||||
element.select2
|
||||
multiple: false
|
||||
initSelection: (element, callback) ->
|
||||
callback { id: element.val(), email: attrs.email }
|
||||
ajax:
|
||||
url: Spree.routes.user_search
|
||||
datatype: 'json'
|
||||
data:(term, page) ->
|
||||
{ q: term }
|
||||
results: (data, page) ->
|
||||
{ results: data }
|
||||
formatResult: (user) ->
|
||||
user.email
|
||||
formatSelection: (user) ->
|
||||
user.email
|
||||
1
app/assets/javascripts/admin/users/users.js.coffee
Normal file
@@ -0,0 +1 @@
|
||||
angular.module("admin.users", [])
|
||||
@@ -11,11 +11,12 @@
|
||||
#= require lodash.underscore.js
|
||||
#= require angular-scroll.min.js
|
||||
#= require angular-google-maps.min.js
|
||||
#= require angular-timer.min.js
|
||||
#= require ../shared/mm-foundation-tpls-0.2.2.min.js
|
||||
#= require ../shared/bindonce.min.js
|
||||
#= require ../shared/ng-infinite-scroll.min.js
|
||||
#= require ../shared/angular-local-storage.js
|
||||
#= require angularjs-file-upload
|
||||
|
||||
|
||||
#= require angular-rails-templates
|
||||
#= require_tree ../templates
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
Darkswarm.controller "SignupCtrl", ($scope, $http, $location, AuthenticationService) ->
|
||||
Darkswarm.controller "SignupCtrl", ($scope, $http, $window, $location, Redirections, AuthenticationService) ->
|
||||
$scope.path = "/signup"
|
||||
$scope.errors =
|
||||
email: null
|
||||
@@ -6,6 +6,9 @@ Darkswarm.controller "SignupCtrl", ($scope, $http, $location, AuthenticationServ
|
||||
|
||||
$scope.submit = ->
|
||||
$http.post("/user/spree_user", {spree_user: $scope.spree_user}).success (data)->
|
||||
location.href = location.origin + location.pathname # Strips out hash fragments
|
||||
if Redirections.after_login
|
||||
$window.location.href = $window.location.origin + Redirections.after_login
|
||||
else
|
||||
$window.location.href = $window.location.origin + $window.location.pathname # Strips out hash fragments
|
||||
.error (data) ->
|
||||
$scope.errors = data
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Darkswarm.controller "AuthenticationCtrl", ($scope, AuthenticationService, SpreeUser)->
|
||||
$scope.open = AuthenticationService.open
|
||||
$scope.toggle = AuthenticationService.toggle
|
||||
|
||||
|
||||
$scope.spree_user = SpreeUser.spree_user
|
||||
$scope.active = AuthenticationService.active
|
||||
$scope.select = AuthenticationService.select
|
||||
|
||||
@@ -6,9 +6,9 @@ Darkswarm.controller "CheckoutCtrl", ($scope, storage, Checkout, CurrentUser, Cu
|
||||
prefix = "order_#{Checkout.order.id}#{CurrentUser?.id}#{CurrentHub.hub.id}"
|
||||
|
||||
for field in $scope.fieldsToBind
|
||||
storage.bind $scope, "Checkout.order.#{field}",
|
||||
storage.bind $scope, "Checkout.order.#{field}",
|
||||
storeName: "#{prefix}_#{field}"
|
||||
storage.bind $scope, "Checkout.ship_address_same_as_billing",
|
||||
storage.bind $scope, "Checkout.ship_address_same_as_billing",
|
||||
storeName: "#{prefix}_sameasbilling"
|
||||
defaultValue: true
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ Darkswarm.controller "PaymentCtrl", ($scope, $timeout) ->
|
||||
{key: "January", value: "1"},
|
||||
{key: "February", value: "2"},
|
||||
{key: "March", value: "3"},
|
||||
{key: "April", value: "4"},
|
||||
{key: "April", value: "4"},
|
||||
{key: "May", value: "5"},
|
||||
{key: "June", value: "6"},
|
||||
{key: "July", value: "7"},
|
||||
@@ -20,4 +20,4 @@ Darkswarm.controller "PaymentCtrl", ($scope, $timeout) ->
|
||||
$scope.years = [moment().year()..(moment().year()+15)]
|
||||
$scope.secrets.card_month = "1"
|
||||
$scope.secrets.card_year = moment().year()
|
||||
$timeout $scope.onTimeout
|
||||
$timeout $scope.onTimeout
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
angular.module('Darkswarm').controller "EnterpriseImageCtrl", ($scope, EnterpriseImageService) ->
|
||||
$scope.imageStep = 'logo'
|
||||
|
||||
$scope.imageSteps = ['logo', 'promo']
|
||||
|
||||
$scope.imageUploader = EnterpriseImageService.imageUploader
|
||||
|
||||
$scope.imageSelect = (image_step) ->
|
||||
EnterpriseImageService.imageSrc = null
|
||||
$scope.imageStep = image_step
|
||||
|
||||
$scope.imageSrc = ->
|
||||
EnterpriseImageService.imageSrc
|
||||
@@ -1,4 +1,4 @@
|
||||
Darkswarm.controller "HubsCtrl", ($scope, Hubs, Search, $document, $rootScope, HashNavigation, FilterSelectorsService) ->
|
||||
Darkswarm.controller "HubsCtrl", ($scope, Hubs, Search, $document, $rootScope, HashNavigation, FilterSelectorsService, MapModal) ->
|
||||
$scope.Hubs = Hubs
|
||||
$scope.hubs = Hubs.visible
|
||||
$scope.totalActive = FilterSelectorsService.totalActive
|
||||
@@ -6,6 +6,8 @@ Darkswarm.controller "HubsCtrl", ($scope, Hubs, Search, $document, $rootScope, H
|
||||
$scope.filterText = FilterSelectorsService.filterText
|
||||
$scope.FilterSelectorsService = FilterSelectorsService
|
||||
$scope.query = Search.search()
|
||||
$scope.show_profiles = false
|
||||
$scope.openModal = MapModal.open
|
||||
|
||||
$scope.$watch "query", (query)->
|
||||
Search.search query
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
Darkswarm.controller "ProducersCtrl", ($scope, Producers, $filter, FilterSelectorsService, Search) ->
|
||||
Darkswarm.controller "ProducersCtrl", ($scope, Producers, $filter, FilterSelectorsService, Search, MapModal) ->
|
||||
$scope.Producers = Producers
|
||||
$scope.totalActive = FilterSelectorsService.totalActive
|
||||
$scope.clearAll = FilterSelectorsService.clearAll
|
||||
@@ -7,6 +7,8 @@ Darkswarm.controller "ProducersCtrl", ($scope, Producers, $filter, FilterSelecto
|
||||
$scope.filtersActive = false
|
||||
$scope.activeTaxons = []
|
||||
$scope.query = Search.search()
|
||||
$scope.show_profiles = false
|
||||
$scope.openModal = MapModal.open
|
||||
|
||||
$scope.$watch "query", (query)->
|
||||
Search.search query
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
Darkswarm.controller "RegistrationCtrl", ($scope, RegistrationService, EnterpriseRegistrationService, availableCountries) ->
|
||||
$scope.currentStep = RegistrationService.currentStep
|
||||
$scope.enterprise = EnterpriseRegistrationService.enterprise
|
||||
$scope.select = RegistrationService.select
|
||||
|
||||
$scope.steps = ['details','address','contact','about','images','social']
|
||||
|
||||
$scope.countries = availableCountries
|
||||
|
||||
$scope.countryHasStates = ->
|
||||
$scope.enterprise.country.states.length > 0
|
||||
@@ -0,0 +1,15 @@
|
||||
Darkswarm.controller "RegistrationFormCtrl", ($scope, RegistrationService, EnterpriseRegistrationService) ->
|
||||
$scope.submitted = false
|
||||
|
||||
$scope.valid = (form) ->
|
||||
$scope.submitted = !form.$valid
|
||||
form.$valid
|
||||
|
||||
$scope.create = (form) ->
|
||||
EnterpriseRegistrationService.create() if $scope.valid(form)
|
||||
|
||||
$scope.update = (nextStep, form) ->
|
||||
EnterpriseRegistrationService.update(nextStep) if $scope.valid(form)
|
||||
|
||||
$scope.selectIfValid = (nextStep, form) ->
|
||||
RegistrationService.select(nextStep) if $scope.valid(form)
|
||||
@@ -1,19 +1,19 @@
|
||||
window.Darkswarm = angular.module("Darkswarm", ["ngResource",
|
||||
'mm.foundation',
|
||||
'angularLocalStorage',
|
||||
'pasvaz.bindonce',
|
||||
'infinite-scroll',
|
||||
'angular-flash.service',
|
||||
window.Darkswarm = angular.module("Darkswarm", ["ngResource",
|
||||
'mm.foundation',
|
||||
'angularLocalStorage',
|
||||
'pasvaz.bindonce',
|
||||
'infinite-scroll',
|
||||
'angular-flash.service',
|
||||
'templates',
|
||||
'timer',
|
||||
'ngSanitize',
|
||||
'ngAnimate',
|
||||
'google-maps',
|
||||
'duScroll',
|
||||
'angularFileUpload',
|
||||
]).config ($httpProvider, $tooltipProvider, $locationProvider, $anchorScrollProvider) ->
|
||||
$httpProvider.defaults.headers.post['X-CSRF-Token'] = $('meta[name="csrf-token"]').attr('content')
|
||||
$httpProvider.defaults.headers.put['X-CSRF-Token'] = $('meta[name="csrf-token"]').attr('content')
|
||||
$httpProvider.defaults.headers['common']['X-Requested-With'] = 'XMLHttpRequest'
|
||||
$httpProvider.defaults.headers.post['X-CSRF-Token'] = $('meta[name="csrf-token"]').attr('content')
|
||||
$httpProvider.defaults.headers.put['X-CSRF-Token'] = $('meta[name="csrf-token"]').attr('content')
|
||||
$httpProvider.defaults.headers['common']['X-Requested-With'] = 'XMLHttpRequest'
|
||||
$httpProvider.defaults.headers.common.Accept = "application/json, text/javascript, */*"
|
||||
|
||||
# This allows us to trigger these two events on tooltips
|
||||
@@ -21,4 +21,3 @@ window.Darkswarm = angular.module("Darkswarm", ["ngResource",
|
||||
|
||||
# We manually handle our scrolling
|
||||
$anchorScrollProvider.disableAutoScrolling()
|
||||
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
Darkswarm.directive "ofnInlineFlash", ->
|
||||
restrict: 'E'
|
||||
controller: ($scope) ->
|
||||
$scope.visible = true
|
||||
$scope.closeFlash = ->
|
||||
$scope.visible = false
|
||||
@@ -0,0 +1,13 @@
|
||||
Darkswarm.directive "ofnRegistrationLimitModal", (Navigation, $modal, Loading) ->
|
||||
restrict: 'A'
|
||||
link: (scope, elem, attr)->
|
||||
scope.modalInstance = $modal.open
|
||||
templateUrl: 'registration/limit_reached.html'
|
||||
windowClass: "login-modal large"
|
||||
backdrop: 'static'
|
||||
|
||||
scope.modalInstance.result.then scope.close, scope.close
|
||||
|
||||
scope.close = ->
|
||||
Loading.message = "Taking you back to the home page"
|
||||
Navigation.go "/"
|
||||
@@ -0,0 +1,16 @@
|
||||
# Convert number to string currency using injected currency configuration.
|
||||
#
|
||||
# @requires currencyConfig json - /app/serializers/api/currency_config_serializer.rb
|
||||
# @return: string
|
||||
Darkswarm.filter "localizeCurrency", (currencyConfig)->
|
||||
(amount) ->
|
||||
currency_code = if currencyConfig.display_currency then " " + currencyConfig.currency else ""
|
||||
decimals = if currencyConfig.hide_cents == "true" then 0 else 2
|
||||
# We need to use parseFloat before toFixed as the amount should be a passed in as a string.
|
||||
amount_fixed = parseFloat(amount).toFixed(decimals)
|
||||
|
||||
# Build the final price string.
|
||||
if currencyConfig.symbol_position == 'before'
|
||||
currencyConfig.symbol + amount_fixed + currency_code
|
||||
else
|
||||
amount_fixed + " " + currencyConfig.symbol + currency_code
|
||||
@@ -0,0 +1,7 @@
|
||||
Darkswarm.filter 'showProfiles', ()->
|
||||
(enterprises, show_profiles) ->
|
||||
enterprises ||= []
|
||||
show_profiles ?= true
|
||||
|
||||
enterprises.filter (enterprise)=>
|
||||
show_profiles or enterprise.has_shopfront
|
||||
@@ -1,7 +1,7 @@
|
||||
window.FieldsetMixin = ($scope)->
|
||||
$scope.next = (event = false)->
|
||||
event.preventDefault() if event
|
||||
$scope.show $scope.nextPanel
|
||||
$scope.show $scope.nextPanel
|
||||
|
||||
$scope.onTimeout = ->
|
||||
if $scope[$scope.name].$valid
|
||||
@@ -36,7 +36,6 @@ window.FieldsetMixin = ($scope)->
|
||||
when "number" then "must be number"
|
||||
when "email" then "must be email address"
|
||||
|
||||
#server_errors = $scope.Order.errors[path.replace('order.', '')]
|
||||
#errors.push server_errors if server_errors?
|
||||
(errors.filter (error) -> error?).join ", "
|
||||
|
||||
#server_errors = $scope.Order.errors[path.replace('order.', '')]
|
||||
#errors.push server_errors if server_errors?
|
||||
(errors.filter (error) -> error?).join ", "
|
||||
@@ -4,12 +4,14 @@ Darkswarm.factory "AuthenticationService", (Navigation, $modal, $location, Redir
|
||||
selectedPath: "/login"
|
||||
|
||||
constructor: ->
|
||||
if $location.path() in ["/login", "/signup", "/forgot"]
|
||||
@open()
|
||||
if $location.path() in ["/login", "/signup", "/forgot"] && location.pathname isnt '/register/auth'
|
||||
@open $location.path()
|
||||
else if location.pathname is '/register/auth'
|
||||
@open '/signup', 'registration_authentication.html'
|
||||
|
||||
open: (path = false)=>
|
||||
open: (path = false, template = 'authentication.html') =>
|
||||
@modalInstance = $modal.open
|
||||
templateUrl: 'authentication.html'
|
||||
templateUrl: template
|
||||
windowClass: "login-modal medium"
|
||||
@modalInstance.result.then @close, @close
|
||||
@selectedPath = path || @selectedPath
|
||||
|
||||
@@ -3,7 +3,7 @@ Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http)->
|
||||
new class Cart
|
||||
dirty: false
|
||||
order: CurrentOrder.order
|
||||
line_items: CurrentOrder.order?.line_items || []
|
||||
line_items: CurrentOrder.order?.line_items || []
|
||||
constructor: ->
|
||||
for line_item in @line_items
|
||||
line_item.variant.line_item = line_item
|
||||
@@ -22,13 +22,13 @@ Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http)->
|
||||
# TODO what shall we do here?
|
||||
|
||||
data: =>
|
||||
variants = {}
|
||||
variants = {}
|
||||
for li in @line_items_present()
|
||||
variants[li.variant.id] =
|
||||
variants[li.variant.id] =
|
||||
quantity: li.quantity
|
||||
max_quantity: li.max_quantity
|
||||
{variants: variants}
|
||||
|
||||
|
||||
|
||||
saved: =>
|
||||
@dirty = false
|
||||
@@ -48,15 +48,15 @@ Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http)->
|
||||
|
||||
total: =>
|
||||
@line_items_present().map (li)->
|
||||
li.variant.getPrice()
|
||||
li.variant.totalPrice()
|
||||
.reduce (t, price)->
|
||||
t + price
|
||||
, 0
|
||||
|
||||
register_variant: (variant)=>
|
||||
exists = @line_items.some (li)-> li.variant == variant
|
||||
@create_line_item(variant) unless exists
|
||||
|
||||
@create_line_item(variant) unless exists
|
||||
|
||||
create_line_item: (variant)->
|
||||
variant.line_item =
|
||||
variant: variant
|
||||
|
||||
@@ -13,7 +13,7 @@ Darkswarm.factory 'Checkout', (CurrentOrder, ShippingMethods, PaymentMethods, $h
|
||||
Loading.clear()
|
||||
@errors = response.errors
|
||||
RailsFlashLoader.loadFlash(response.flash)
|
||||
|
||||
|
||||
# Rails wants our Spree::Address data to be provided with _attributes
|
||||
preprocess: ->
|
||||
munged_order = {}
|
||||
@@ -25,13 +25,17 @@ Darkswarm.factory 'Checkout', (CurrentOrder, ShippingMethods, PaymentMethods, $h
|
||||
munged_order["ship_address_attributes"] = value
|
||||
when "payment_method_id"
|
||||
munged_order["payments_attributes"] = [{payment_method_id: value}]
|
||||
when "shipping_method_id", "payment_method_id", "email"
|
||||
when "shipping_method_id", "payment_method_id", "email", "special_instructions"
|
||||
munged_order[name] = value
|
||||
else
|
||||
# Ignore everything else
|
||||
|
||||
if @ship_address_same_as_billing
|
||||
munged_order.ship_address_attributes = munged_order.bill_address_attributes
|
||||
# If the order already has a ship and bill address (as with logged in users with
|
||||
# past orders), and we don't remove id here, then this will set the wrong id for
|
||||
# ship address, and Rails will error with a 404 for that address.
|
||||
delete munged_order.ship_address_attributes.id
|
||||
|
||||
if @paymentMethod()?.method_type == 'gateway'
|
||||
angular.extend munged_order.payments_attributes[0], {
|
||||
@@ -54,7 +58,7 @@ Darkswarm.factory 'Checkout', (CurrentOrder, ShippingMethods, PaymentMethods, $h
|
||||
|
||||
shippingPrice: ->
|
||||
@shippingMethod()?.price || 0.0
|
||||
|
||||
|
||||
paymentMethod: ->
|
||||
PaymentMethods.payment_methods_by_id[@order.payment_method_id]
|
||||
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
Darkswarm.factory "EnterpriseImageService", (FileUploader, spreeApiKey) ->
|
||||
new class EnterpriseImageService
|
||||
imageSrc: null
|
||||
|
||||
imageUploader: new FileUploader
|
||||
headers:
|
||||
'X-Spree-Token': spreeApiKey
|
||||
autoUpload: true
|
||||
|
||||
configure: (enterprise) =>
|
||||
@imageUploader.url = "/api/enterprises/#{enterprise.id}/update_image"
|
||||
@imageUploader.onSuccessItem = (image, response) => @imageSrc = response
|
||||
@@ -0,0 +1,58 @@
|
||||
Darkswarm.factory "EnterpriseRegistrationService", ($http, RegistrationService, EnterpriseImageService, CurrentUser, spreeApiKey, Loading, availableCountries, enterpriseAttributes) ->
|
||||
new class EnterpriseRegistrationService
|
||||
enterprise:
|
||||
user_ids: [CurrentUser.id]
|
||||
email: CurrentUser.email
|
||||
address: {}
|
||||
country: availableCountries[0]
|
||||
|
||||
constructor: ->
|
||||
for key, value of enterpriseAttributes
|
||||
@enterprise[key] = value
|
||||
|
||||
create: =>
|
||||
Loading.message = "Creating " + @enterprise.name
|
||||
$http(
|
||||
method: "POST"
|
||||
url: "/api/enterprises"
|
||||
data:
|
||||
enterprise: @prepare()
|
||||
params:
|
||||
token: spreeApiKey
|
||||
).success((data) =>
|
||||
Loading.clear()
|
||||
@enterprise.id = data
|
||||
EnterpriseImageService.configure(@enterprise)
|
||||
RegistrationService.select('about')
|
||||
).error((data) =>
|
||||
Loading.clear()
|
||||
alert('Failed to create your enterprise.\nPlease ensure all fields are completely filled out.')
|
||||
)
|
||||
# RegistrationService.select('about')
|
||||
|
||||
update: (step) =>
|
||||
Loading.message = "Updating " + @enterprise.name
|
||||
$http(
|
||||
method: "PUT"
|
||||
url: "/api/enterprises/#{@enterprise.id}"
|
||||
data:
|
||||
enterprise: @prepare()
|
||||
params:
|
||||
token: spreeApiKey
|
||||
).success((data) ->
|
||||
Loading.clear()
|
||||
RegistrationService.select(step)
|
||||
).error((data) ->
|
||||
Loading.clear()
|
||||
alert('Failed to update your enterprise.\nPlease ensure all fields are completely filled out.')
|
||||
)
|
||||
# RegistrationService.select(step)
|
||||
|
||||
prepare: =>
|
||||
enterprise = {}
|
||||
excluded = [ 'address', 'country', 'id' ]
|
||||
for key, value of @enterprise when key not in excluded
|
||||
enterprise[key] = value
|
||||
enterprise.address_attributes = @enterprise.address if @enterprise.address?
|
||||
enterprise.address_attributes.country_id = @enterprise.country.id if @enterprise.country?
|
||||
enterprise
|
||||
@@ -2,7 +2,7 @@ Darkswarm.factory 'Hubs', ($filter, Enterprises, visibleFilter) ->
|
||||
new class Hubs
|
||||
constructor: ->
|
||||
@hubs = @order Enterprises.enterprises.filter (hub)->
|
||||
hub.is_distributor
|
||||
hub.has_hub_listing
|
||||
@visible = visibleFilter @hubs
|
||||
|
||||
order: (hubs)->
|
||||
|
||||
@@ -48,3 +48,4 @@ Darkswarm.factory 'Products', ($resource, Enterprises, Dereferencer, Taxons, Car
|
||||
|
||||
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
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
angular.module('Darkswarm').factory "RegistrationService", (Navigation, $modal, Loading)->
|
||||
|
||||
new class RegistrationService
|
||||
constructor: ->
|
||||
@open()
|
||||
|
||||
open: =>
|
||||
@modalInstance = $modal.open
|
||||
templateUrl: 'registration.html'
|
||||
windowClass: "login-modal large"
|
||||
backdrop: 'static'
|
||||
@modalInstance.result.then @close, @close
|
||||
@select 'introduction'
|
||||
|
||||
select: (step)=>
|
||||
@current_step = step
|
||||
|
||||
currentStep: =>
|
||||
@current_step
|
||||
|
||||
close: ->
|
||||
Loading.message = "Taking you back to the home page"
|
||||
Navigation.go "/"
|
||||
@@ -5,7 +5,7 @@ Darkswarm.factory 'Variants', ->
|
||||
@variants[variant.id] ||= @extend variant
|
||||
|
||||
extend: (variant)->
|
||||
variant.getPrice = ->
|
||||
variant.price * variant.line_item.quantity
|
||||
variant.basePricePercentage = Math.round(variant.base_price / variant.price * 100)
|
||||
variant.totalPrice = ->
|
||||
variant.price_with_fees * variant.line_item.quantity
|
||||
variant.basePricePercentage = Math.round(variant.price / variant.price_with_fees * 100)
|
||||
variant
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
%a.close-reveal-modal.outside{"ng-click" => "$close()"}
|
||||
%a.close-reveal-modal{"ng-click" => "$close()"}
|
||||
%i.ofn-i_009-close
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
%div{bindonce: true}
|
||||
%div.contact-container{bindonce: true}
|
||||
%div.modal-centered{"bo-if" => "enterprise.email || enterprise.website || enterprise.phone"}
|
||||
%p.modal-header Contact
|
||||
%p{"ng-if" => "enterprise.phone"}
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
.highlight
|
||||
.highlight-top
|
||||
%p.right
|
||||
{{ [enterprise.address.city, enterprise.address.state_name] | printArray}}
|
||||
%h3{"ng-if" => "enterprise.is_distributor"}
|
||||
%a{"bo-href" => "enterprise.path", "ofn-empties-cart" => "enterprise", bindonce: true}
|
||||
%i.ofn-i_040-hub
|
||||
{{ enterprise.name }}
|
||||
%h3{"ng-if" => "!enterprise.is_distributor"}
|
||||
%i.ofn-i_036-producers
|
||||
{{ enterprise.name }}
|
||||
%img.hero-img{"ng-src" => "{{enterprise.promo_image}}"}
|
||||
.highlight{"ng-class" => "{'has_shopfront' : enterprise.has_shopfront}"}
|
||||
.highlight-top.row
|
||||
.small-12.medium-7.large-8.columns
|
||||
%h3{"ng-if" => "enterprise.has_shopfront"}
|
||||
%a{"bo-href" => "enterprise.path", "ofn-empties-cart" => "enterprise", bindonce: true}
|
||||
%i{"ng-class" => "enterprise.icon_font"}
|
||||
%span {{ enterprise.name }}
|
||||
%h3{"ng-if" => "!enterprise.has_shopfront", "ng-class" => "{'is_producer' : enterprise.is_primary_producer}"}
|
||||
%i{"ng-class" => "enterprise.icon_font"}
|
||||
%span {{ enterprise.name }}
|
||||
.small-12.medium-5.large-4.columns.text-right.small-only-text-left
|
||||
%p {{ [enterprise.address.city, enterprise.address.state_name] | printArray}}
|
||||
%img.hero-img{"ng-src" => "{{enterprise.promo_image}}"}
|
||||
@@ -1,16 +1,16 @@
|
||||
.row.pad-top{bindonce: true, "ng-if" => "enterprise.hubs.length > 0"}
|
||||
.row.pad-top{bindonce: true, "ng-if" => "enterprise.hubs.length > 0 && enterprise.has_shopfront"}
|
||||
.cta-container.small-12.columns
|
||||
%label
|
||||
Shop for
|
||||
%strong {{enterprise.name}}
|
||||
products at:
|
||||
%a.button.hub{"ng-repeat" => "hub in enterprise.hubs",
|
||||
%a.cta-hub{"ng-repeat" => "hub in enterprise.hubs",
|
||||
"bo-href" => "hub.path",
|
||||
"bo-class" => "{primary: hub.active, secondary: !hub.active}",
|
||||
"ofn-empties-cart" => "hub"}
|
||||
%i.ofn-i_033-open-sign{"bo-if" => "hub.active"}
|
||||
%i.ofn-i_032-closed-sign{"bo-if" => "!hub.active"}
|
||||
{{hub.name}}
|
||||
.hub-name {{hub.name}}
|
||||
.button-address {{ hub.address.city }} , {{hub.address.state_name}}
|
||||
%i.ofn-i_007-caret-right
|
||||
/ %i.ofn-i_007-caret-right
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
.row.pad-top{bindonce: true}
|
||||
.row.pad-top{bindonce: true, ng: { if: 'enterprise.has_shopfront' } }
|
||||
.cta-container.small-12.columns
|
||||
.row
|
||||
.small-4.columns
|
||||
%label{"active-table-hub-link" => "enterprise", change: "Change hub to:", shop: "Shop now at:"}
|
||||
%label{"active-table-hub-link" => "enterprise", change: "Change shop to:", shop: "Shop now at:"}
|
||||
.small-8.columns.right
|
||||
%label.right{"bo-if" => "enterprise.pickup || enterprise.delivery"}
|
||||
Delivery options:
|
||||
@@ -14,11 +14,11 @@
|
||||
Delivery
|
||||
.row
|
||||
.columns.small-12
|
||||
%a.button.hub.expand{"bo-href" => "enterprise.path",
|
||||
%a.cta-hub{"bo-href" => "enterprise.path",
|
||||
"ng-class" => "{primary: enterprise.active, secondary: !enterprise.active}",
|
||||
"ofn-empties-cart" => "enterprise"}
|
||||
%i.ofn-i_033-open-sign{"bo-if" => "enterprise.active"}
|
||||
%i.ofn-i_032-closed-sign{"bo-if" => "!enterprise.active"}
|
||||
{{enterprise.name}}
|
||||
.hub-name {{enterprise.name}}
|
||||
.button-address {{ enterprise.address.city }} , {{enterprise.address.state_name}}
|
||||
%i.ofn-i_007-caret-right
|
||||
/ %i.ofn-i_007-caret-right
|
||||
|
||||
@@ -10,23 +10,26 @@
|
||||
.expanded{"ng-show" => "expanded"}
|
||||
%ul
|
||||
%li.cost
|
||||
.right {{ variant.base_price | currency }}
|
||||
.right {{ variant.price | localizeCurrency }}
|
||||
Item cost
|
||||
%li{"bo-if" => "variant.fees.admin"}
|
||||
.right {{ variant.fees.admin | currency }}
|
||||
.right {{ variant.fees.admin | localizeCurrency }}
|
||||
Admin fee
|
||||
%li{"bo-if" => "variant.fees.sales"}
|
||||
.right {{ variant.fees.sales | currency }}
|
||||
.right {{ variant.fees.sales | localizeCurrency }}
|
||||
Sales fee
|
||||
%li{"bo-if" => "variant.fees.packing"}
|
||||
.right {{ variant.fees.packing | currency }}
|
||||
.right {{ variant.fees.packing | localizeCurrency }}
|
||||
Packing fee
|
||||
%li{"bo-if" => "variant.fees.transport"}
|
||||
.right {{ variant.fees.transport | currency }}
|
||||
.right {{ variant.fees.transport | localizeCurrency }}
|
||||
Transport fee
|
||||
%li{"bo-if" => "variant.fees.fundraising"}
|
||||
.right {{ variant.fees.fundraising | localizeCurrency }}
|
||||
Fundraising fee
|
||||
%li
|
||||
%strong
|
||||
.right = {{ variant.price | currency }}
|
||||
.right = {{ variant.price_with_fees | localizeCurrency }}
|
||||
|
||||
|
||||
%a{"ng-click" => "expanded = !expanded"}
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
%button.graph-button{"ng-class" => "{open: tt_isOpen}"}
|
||||
%i.ofn-i-058-graph
|
||||
%i.ofn-i_058-graph
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
.row
|
||||
.columns.small-12.large-6
|
||||
%img.product-img{"ng-src" => "{{product.primaryImage}}", "ng-if" => "product.primaryImage"}
|
||||
%img.product-img{"ng-src" => "{{product.largeImage}}", "ng-if" => "product.largeImage"}
|
||||
.columns.small-12.large-6.product-header
|
||||
%h2
|
||||
/ %render-svg{path: "{{product.primary_taxon.icon}}"}
|
||||
|
||||
10
app/assets/javascripts/templates/registration.html.haml
Normal file
@@ -0,0 +1,10 @@
|
||||
%div#registration-modal{"ng-controller" => "RegistrationCtrl"}
|
||||
%div{ ng: { show: "currentStep() == 'introduction'" } }
|
||||
%ng-include{ src: "'registration/introduction.html'" }
|
||||
%div{ ng: { repeat: 'step in steps', show: "currentStep() == step" } }
|
||||
%ng-include{ src: "'registration/'+ step + '.html'" }
|
||||
%div{ ng: { show: "currentStep() == 'finished'" } }
|
||||
%ng-include{ src: "'registration/finished.html'" }
|
||||
|
||||
%a.close-reveal-modal{"ng-click" => "$close()"}
|
||||
%i.ofn-i_009-close
|
||||
@@ -0,0 +1,44 @@
|
||||
.container#registration-about
|
||||
.header
|
||||
%h2 Nice one!
|
||||
%h5
|
||||
Now let's flesh out the details about
|
||||
%span.brick{"ng-show" => "enterprise.is_distributor"}
|
||||
{{ enterprise.name }}
|
||||
%span.turquoise{"ng-show" => "!enterprise.is_distributor" }
|
||||
{{ enterprise.name }}
|
||||
|
||||
%ng-include{ src: "'registration/steps.html'" }
|
||||
%form{ name: 'about', novalidate: true, ng: { controller: "RegistrationFormCtrl", submit: "update('images',about)" } }
|
||||
.row
|
||||
.small-12.columns
|
||||
.alert-box.alert{"data-alert" => ""}
|
||||
{{ enterprise.name }} won't be visible on the Open Food Network until you enter a long and short description.
|
||||
%a.close{:href => "#"} ×
|
||||
|
||||
.alert-box.info{"data-alert" => ""}
|
||||
{{ enterprise.name }} has been created on the Open Food Network. If you leave at any point from here onwards, your enterprise will be saved, and you can always login to the admin section to update or continue filling out your enterprise details.
|
||||
%a.close{:href => "#"} ×
|
||||
|
||||
.small-12.large-8.columns
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_description' } Short Description:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_description', placeholder: "A short sentence describing your enterprise", ng: { model: 'enterprise.description' } }
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_long_desc' } Long Description:
|
||||
%textarea.chunky.small-12.columns{ id: 'enterprise_long_desc', rows: 6, placeholder: "This is your opportunity to tell the story of your enterprise - what makes you different and wonderful? We'd suggest keeping your description to under 600 characters or 150 words.", ng: { model: 'enterprise.long_description' } }
|
||||
%small {{ enterprise.long_description.length }} characters / up to 600 recommended
|
||||
.small-12.large-4.columns
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_abn' } ABN:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_abn', placeholder: "eg. 99 123 456 789", ng: { model: 'enterprise.abn' } }
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_acn' } ACN:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_acn', placeholder: "eg. 123 456 789", ng: { model: 'enterprise.acn' } }
|
||||
.row.buttons.pad-top
|
||||
.small-12.columns
|
||||
%input.button.primary{ type: "submit", value: "Continue" }
|
||||
@@ -0,0 +1,60 @@
|
||||
.container#registration-address
|
||||
.header
|
||||
%h2
|
||||
Greetings
|
||||
%span{ ng: { class: "{brick: enterprise.is_distributor, turquoise: !enterprise.is_distributor}" } }
|
||||
{{ enterprise.name }}
|
||||
|
||||
%h5 Now we need to know where you are
|
||||
%ng-include{ src: "'registration/steps.html'" }
|
||||
%form{ name: 'address', novalidate: true, ng: { controller: "RegistrationFormCtrl", submit: "selectIfValid('contact',address)" } }
|
||||
.row.content
|
||||
.small-12.medium-12.large-7.columns
|
||||
.row
|
||||
.small-12.columns.field
|
||||
%label{ for: 'enterprise_address' } Address:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_address', name: 'address1', required: true, placeholder: "eg. 123 Cranberry Drive", required: true, ng: { model: 'enterprise.address.address1' } }
|
||||
%span.error.small-12.columns{ ng: { show: "address.address1.$error.required && submitted" } }
|
||||
You need to enter an address.
|
||||
.row
|
||||
.small-12.large-8.columns.field
|
||||
%label{ for: 'enterprise_city' } Suburb:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_city', name: 'city', required: true, placeholder: "eg. Northcote", ng: { model: 'enterprise.address.city' } }
|
||||
%span.error.small-12.columns{ ng: { show: "address.city.$error.required && submitted" } }
|
||||
You need to enter a suburb.
|
||||
.small-12.large-4.columns.field
|
||||
%label{ for: 'enterprise_zipcode' } Postcode:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_zipcode', name: 'zipcode', required: true, placeholder: "eg. 3070", ng: { model: 'enterprise.address.zipcode' } }
|
||||
%span.error.small-12.columns{ ng: { show: "address.zipcode.$error.required && submitted" } }
|
||||
You need to enter a postcode.
|
||||
.row
|
||||
.small-12.large-8.columns.field
|
||||
%label{ for: 'enterprise_country' } Country:
|
||||
%select.chunky.small-12.columns{ id: 'enterprise_country', name: 'country', required: true, ng: { model: 'enterprise.country', options: 'c as c.name for c in countries' } }
|
||||
%span.error.small-12.columns{ ng: { show: "address.country.$error.required && submitted" } }
|
||||
You need to enter a country.
|
||||
.small-12.large-4.columns.field
|
||||
%label{ for: 'enterprise_state' } State:
|
||||
%select.chunky.small-12.columns{ id: 'enterprise_state', name: 'state', ng: { model: 'enterprise.address.state_id', options: 's.id as s.abbr for s in enterprise.country.states', show: 'countryHasStates()', required: 'countryHasStates()' } }
|
||||
%span.error.small-12.columns{ ng: { show: "address.state.$error.required && submitted" } }
|
||||
You need to enter a state.
|
||||
.small-12.medium-12.large-5.hide-for-small-only
|
||||
// This is the location area
|
||||
/ %h6
|
||||
/ Location display
|
||||
/ %i.ofn-i_013-help.has-tip{ 'data-tooltip' => true, title: "Choose how you want to display your enterprise's address on the Open Food Network. By default, full location is shown everywhere including street name and number."}
|
||||
/ .row
|
||||
/ .small-12.columns
|
||||
/ %label.indent-checkbox
|
||||
/ %input{ type: 'checkbox', id: 'enterpise_suburb_only', ng: { model: 'enterprise.suburb_only' } }
|
||||
/ Hide my street name and street number from the public (ie. only show the suburb)
|
||||
/ .small-12.columns
|
||||
/ %label.indent-checkbox
|
||||
/ %input{ type: 'checkbox', id: 'enterprise_on_map', ng: { model: 'enterprise.on_map' } }
|
||||
/ Blur my location on the map (show an approximate, not exact pin)
|
||||
|
||||
.row.buttons
|
||||
.small-12.columns
|
||||
%input.button.secondary{ type: "button", value: "Back", ng: { click: "select('details')" } }
|
||||
|
||||
%input.button.primary{ type: "submit", value: "Continue" }
|
||||
@@ -0,0 +1,46 @@
|
||||
.container#registration-contact
|
||||
.header
|
||||
%h2 Last step to create your enterprise!
|
||||
%h5
|
||||
Who is responsible for managing
|
||||
%span{ ng: { class: "{brick: enterprise.is_distributor, turquoise: !enterprise.is_distributor}" } }
|
||||
{{ enterprise.name }}?
|
||||
%ng-include{ src: "'registration/steps.html'" }
|
||||
%form{ name: 'contact', novalidate: true, ng: { controller: "RegistrationFormCtrl", submit: "create(contact)" } }
|
||||
.row.content
|
||||
.small-12.medium-12.large-7.columns
|
||||
.row
|
||||
.small-12.columns.field
|
||||
%label{ for: 'enterprise_contact' } Primary Contact:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_contact', name: 'contact', required: true, placeholder: "Contact Name", ng: { model: 'enterprise.contact' } }
|
||||
%span.error.small-12.columns{ ng: { show: "contact.contact.$error.required && submitted" } }
|
||||
You need to enter a primary contact.
|
||||
.row
|
||||
.small-12.columns.field
|
||||
%label{ for: 'enterprise_email' } Email address:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_email', name: 'email', type: 'email', required: true, placeholder: "eg. charlie@thefarm.com", ng: { model: 'enterprise.email' } }
|
||||
%span.error.small-12.columns{ ng: { show: "(contact.email.$error.email || contact.email.$error.required) && submitted" } }
|
||||
You need to enter valid email address.
|
||||
.row
|
||||
.small-12.columns.field
|
||||
%label{ for: 'enterprise_phone' } Phone number:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_phone', name: 'phone', placeholder: "eg. (03) 1234 5678", ng: { model: 'enterprise.phone' } }
|
||||
.small-12.medium-12.large-5.hide-for-small-only
|
||||
/ %h6
|
||||
/ Contact display
|
||||
/ %i.ofn-i_013-help.has-tip{ 'data-tooltip' => true, title: "Choose how you want to display your contact details on the Open Food Network."}
|
||||
/ .row
|
||||
/ .small-12.columns
|
||||
/ %label.indent-checkbox
|
||||
/ %input{ type: 'checkbox', id: 'contact_name_profile', ng: { model: 'enterprise.name_in_profile' } } Display name in profile
|
||||
/ .small-12.columns
|
||||
/ %label.indent-checkbox
|
||||
/ %input{ type: 'checkbox', id: 'contact_email_profile', ng: { model: 'enterprise.email_in_profile' } } Display email in profile
|
||||
/ .small-12.columns
|
||||
/ %label.indent-checkbox
|
||||
/ %input{ type: 'checkbox', id: 'contact_phone_profile', ng: { model: 'enterprise.phone_in_profile' } } Display phone in profile
|
||||
.row.buttons
|
||||
.small-12.columns
|
||||
%input.button.secondary{ type: "button", value: "Back", ng: { click: "select('address')" } }
|
||||
|
||||
%input.button.primary{ type: "submit", value: "Continue" }
|
||||
@@ -0,0 +1,42 @@
|
||||
.container#registration-details{bindonce: true}
|
||||
.header
|
||||
%h2 Let's Get Started
|
||||
%h5{ bo: { if: "enterprise.type != 'single'" } } Woot! First we need to know what sort of enterprise you are:
|
||||
%h5{ bo: { if: "enterprise.type == 'single'" } } Woot! First we need to know the name of your farm:
|
||||
%ng-include{ src: "'registration/steps.html'" }
|
||||
%form{ name: 'details', novalidate: true, ng: { controller: "RegistrationFormCtrl", submit: "selectIfValid('address',details)" } }
|
||||
.row
|
||||
.small-12.columns.field
|
||||
%label{ for: 'enterprise_name', bo: { if: "enterprise.type != 'single'" } } Enterprise Name:
|
||||
%label{ for: 'enterprise_name', bo: { if: "enterprise.type == 'single'" } } Farm Name:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_name', name: 'name', placeholder: "eg. Charlie's Awesome Farm", required: true, ng: { model: 'enterprise.name' } }
|
||||
%span.error.small-12.columns{ ng: { show: "details.name.$error.required && submitted" } }
|
||||
You need to enter a name for your enterprise!
|
||||
|
||||
.row#enterprise-types{ 'data-equalizer' => true, bo: { if: "enterprise.type != 'single'" } }
|
||||
.small-12.columns.field
|
||||
.row
|
||||
.small-12.columns
|
||||
%label Choose one:
|
||||
.row
|
||||
.small-12.medium-4.large-4.columns{ 'data-equalizer-watch' => true }
|
||||
%a.panel#producer-panel{ href: "#", ng: { click: "enterprise.is_distributor = false; enterprise.is_primary_producer = true", class: "{selected: (!enterprise.is_distributor && enterprise.is_primary_producer)}" } }
|
||||
.left
|
||||
/ %render-svg{ path: "/assets/map-icon-producer.svg" }
|
||||
%h4 I'm A Producer
|
||||
%p Producers make yummy things to eat &/or drink. You're a producer if you grow it, raise it, brew it, bake it, ferment it, milk it or mould it.
|
||||
.small-12.medium-4.large-4.columns{ 'data-equalizer-watch' => true }
|
||||
%a.panel#hub-panel{ href: "#", ng: { click: "enterprise.is_distributor = true; enterprise.is_primary_producer = false", class: "{selected: (enterprise.is_distributor && !enterprise.is_primary_producer)}" } }
|
||||
.left
|
||||
/ %render-svg{ path: "/assets/map-icon-hub.svg" }
|
||||
%h4 I'm A Hub
|
||||
%p Hubs connect the producer to the eater. Hubs can be co-ops, independent retailers, buying groups, wholesalers, CSA box schemes, farm-gate stalls, etc.
|
||||
.small-12.medium-4.large-4.columns{ 'data-equalizer-watch' => true }
|
||||
%a.panel#both-panel{ href: "#", ng: { click: "enterprise.is_distributor = true; enterprise.is_primary_producer = true", class: "{selected: (enterprise.is_distributor && enterprise.is_primary_producer)}" } }
|
||||
.left
|
||||
/ %render-svg{path: "/assets/map-icon-both.svg"}
|
||||
%h4 I'm Both
|
||||
%p Hey there, Jack-of-all-trades! Not only do you produce things to eat &/or drink, you also want to sell your yummies through an Open Food Network shopfront.
|
||||
.row.buttons
|
||||
.small-12.columns
|
||||
%input.button.primary.right{ type: "submit", value: "Continue" }
|
||||
@@ -0,0 +1,18 @@
|
||||
.container#registration-finished
|
||||
.header
|
||||
%h2 Well done!
|
||||
%h5
|
||||
You have successfully completed the profile for
|
||||
%span.brick{"ng-show" => "enterprise.is_distributor"}
|
||||
{{ enterprise.name }}
|
||||
%span.turquoise{"ng-show" => "!enterprise.is_distributor" }
|
||||
{{ enterprise.name }}
|
||||
.content{ style: 'text-align: center'}
|
||||
%h3 Why not check it out on the Open Food Network?
|
||||
%a.button.primary{ type: "button", href: "/map" } Go to Map Page >
|
||||
|
||||
%br
|
||||
%br
|
||||
|
||||
%h3 Next step - add some products:
|
||||
%a.button.primary{ type: "button", href: "/admin/products/new" } Add a Product >
|
||||
@@ -0,0 +1,20 @@
|
||||
.container#registration-images{ 'nv-file-drop' => true, uploader: "imageUploader", options:"{ alias: imageStep }", ng: { controller: "EnterpriseImageCtrl" } }
|
||||
.header
|
||||
%h2 Thanks!
|
||||
%h5 Let's upload some pretty pictures so your profile looks great! :)
|
||||
%ng-include{ src: "'registration/steps.html'" }
|
||||
%form{ name: 'images', novalidate: true, ng: { controller: "RegistrationFormCtrl", submit: "select('social')" } }
|
||||
.row{ ng: { repeat: 'image_step in imageSteps', show: "imageStep == image_step" } }
|
||||
%ng-include{ src: "'registration/images/'+ image_step + '.html'" }
|
||||
|
||||
.row.buttons.pad-top{ ng: { if: "imageStep == 'logo'" } }
|
||||
.small-12.columns
|
||||
%input.button.primary{ type: "button", value: "Back", ng: { click: "select('about')" } }
|
||||
|
||||
%input.button.primary{ type: "button", value: "Continue", ng: { click: "imageSelect('promo')" } }
|
||||
|
||||
.row.buttons.pad-top{ ng: { if: "imageStep == 'promo'" } }
|
||||
.small-12.columns
|
||||
%input.button.primary{ type: "button", value: "Back", ng: { click: "imageSelect('logo')" } }
|
||||
|
||||
%input.button.primary{ type: "submit", value: "Continue" }
|
||||
@@ -0,0 +1,41 @@
|
||||
.small-12.medium-12.large-6.columns
|
||||
.row
|
||||
.small-12.columns.center
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%h4
|
||||
Step 1. Select Logo Image
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%span.small
|
||||
Tip: Square images will work best, preferably at least 300×300px
|
||||
.row.pad-top
|
||||
.small-12.columns
|
||||
.image-select.small-12.columns
|
||||
%label.small-12.columns.button{ for: 'image-select' } Choose a logo image
|
||||
%input#image-select{ type: 'file', hidden: true, 'nv-file-select' => true, uploader: "imageUploader", options: '{ alias: imageStep }' }
|
||||
.row.show-for-large-up
|
||||
.large-12.columns
|
||||
%span#or.large-12.columns
|
||||
OR
|
||||
.row.show-for-large-up
|
||||
.large-12.columns
|
||||
#image-over{ 'nv-file-over' => true, uploader: "imageUploader" }
|
||||
Drag and drop your logo here
|
||||
.small-12.medium-12.large-6.columns
|
||||
.row
|
||||
.small-12.columns.center
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%h4
|
||||
Step 2. Review Your Logo
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%span.small
|
||||
Tip: for best results, your logo should fill the available space
|
||||
.row.pad-top
|
||||
.small-12.columns.center
|
||||
#image-placeholder.logo
|
||||
%img{ ng: { show: "imageSrc()", src: '{{ imageSrc() }}' } }
|
||||
.message{ ng: { hide: "imageSrc()" } }
|
||||
Your logo will appear here for review once uploaded
|
||||
@@ -0,0 +1,39 @@
|
||||
.small-12.medium-12.large-12.columns
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%h4
|
||||
Step 3. Select Promo Image
|
||||
.row
|
||||
.small-12.medium-12.large-5.columns.center
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%span.small
|
||||
Tip: Shown as a banner, preferred size is 1200×260px
|
||||
.row.pad-top
|
||||
.small-12.columns
|
||||
.image-select.small-12.columns
|
||||
%label.small-12.columns.button{ for: 'image-select' } Choose a promo image
|
||||
%input#image-select{ type: 'file', hidden: true, 'nv-file-select' => true, uploader: "imageUploader", options: '{ alias: imageStep }' }
|
||||
.large-2.columns
|
||||
%span#or.horizontal.large-12.columns
|
||||
OR
|
||||
.large-5.columns
|
||||
#image-over{ 'nv-file-over' => true, uploader: "imageUploader" }
|
||||
Drag and drop your promo here
|
||||
.small-12.medium-12.large-12.columns.pad-top
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%h4
|
||||
Step 4. Review Your Promo Banner
|
||||
.row
|
||||
.small-12.columns.center
|
||||
.row
|
||||
.small-12.columns.center
|
||||
%span.small
|
||||
Tip: for best results, your promo image should fill the available space
|
||||
.row.pad-top
|
||||
.small-12.columns.center
|
||||
#image-placeholder.promo
|
||||
%img{ ng: { show: "imageSrc()", src: '{{ imageSrc() }}' } }
|
||||
.message{ ng: { hide: "imageSrc()" } }
|
||||
Your logo will appear here for review once uploaded
|
||||
@@ -0,0 +1,39 @@
|
||||
%div
|
||||
.header
|
||||
%h2 Hi there!
|
||||
%h4 This wizard will step you through creating a profile
|
||||
.row
|
||||
.small-12.medium-3.large-2.columns.text-right.hide-for-small-only
|
||||
%img{:src => "/assets/potatoes.png"}
|
||||
.small-12.medium-9.large-10.columns
|
||||
%p
|
||||
Your profile gives you an online presence on the
|
||||
%strong Open Food Network,
|
||||
allowing you to easily connect with potential customers or partners. You can always choose to update your info later, as well as choose to upgrade your Profile to and Online Store, where you can sell products, track orders and receive payments. Creating a profile takes about 5-10 minutes.
|
||||
.row{ 'data-equalizer' => true }
|
||||
.small-12.medium-6.large-6.columns.pad-top{ 'data-equalizer-watch' => true }
|
||||
%h5 You'll need the following:
|
||||
%ul.check-list
|
||||
%li
|
||||
Your enterprise address and contact details
|
||||
%li
|
||||
Your logo image
|
||||
%li
|
||||
A pretty picture for your profile header
|
||||
%li
|
||||
Some 'About Us' text
|
||||
|
||||
.small-12.medium-6.large-6.columns{ 'data-equalizer-watch' => true}
|
||||
.highlight-box
|
||||
%h5 Your profile entitles you to:
|
||||
%ul.small-block-grid-1
|
||||
%li
|
||||
%i.ofn-i_020-search
|
||||
A searchable listing
|
||||
%li
|
||||
%i.ofn-i_040-hub
|
||||
A pin on the OFN map
|
||||
.row
|
||||
.small-12.columns
|
||||
%hr
|
||||
%input.button.primary{ type: "button", value: "Let's get started!", ng: { click: "select('details')" } }
|
||||
@@ -0,0 +1,15 @@
|
||||
%div
|
||||
.header.center
|
||||
%h2 Oh no!
|
||||
%h4 You have reached the limit!
|
||||
.row
|
||||
.small-12.medium-3.large-2.columns.text-right.hide-for-small-only
|
||||
%img{:src => "/assets/potatoes.png"}
|
||||
.small-12.medium-9.large-10.columns
|
||||
%p
|
||||
You have reached the limit for the number of enterprises you are allowed to own on the
|
||||
%strong Open Food Network.
|
||||
.row
|
||||
.small-12.columns
|
||||
%hr
|
||||
%input.button.primary{ type: "button", value: "Return to the homepage", ng: { click: "close()" } }
|
||||
@@ -0,0 +1,35 @@
|
||||
.container#registration-social
|
||||
.header
|
||||
%h2 Last step!
|
||||
%h5 How can people find {{ enterprise.name }} online?
|
||||
%ng-include{ src: "'registration/steps.html'" }
|
||||
%form{ name: 'social', novalidate: true, ng: { controller: "RegistrationFormCtrl", submit: "update('finished',social)" } }
|
||||
.row.content
|
||||
.small-12.large-7.columns
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_website' } Website:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_website', placeholder: "eg. openfoodnetwork.org.au", ng: { model: 'enterprise.website' } }
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_facebook' } Facebook:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_facebook', placeholder: "eg. www.facebook.com/PageNameHere", ng: { model: 'enterprise.facebook' } }
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_linkedin' } LinkedIn:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_linkedin', placeholder: "eg. www.linkedin.com/YourNameHere", ng: { model: 'enterprise.linkedin' } }
|
||||
.small-12.large-5.columns
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_twitter' } Twitter:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_twitter', placeholder: "eg. @twitter_handle", ng: { model: 'enterprise.twitter' } }
|
||||
.row
|
||||
.small-12.columns
|
||||
%label{ for: 'enterprise_instagram' } Instagram:
|
||||
%input.chunky.small-12.columns{ id: 'enterprise_instagram', placeholder: "eg. @instagram_handle", ng: { model: 'enterprise.instagram' } }
|
||||
|
||||
.row.buttons
|
||||
.small-12.columns
|
||||
%input.button.secondary{ type: "button", value: "Back", ng: { click: "select('images')" } }
|
||||
|
||||
%input.button.primary{ type: "submit", value: "Continue" }
|
||||
@@ -0,0 +1,5 @@
|
||||
.row#progress-bar
|
||||
.small-12.medium-2.columns.item{ ng: { repeat: 'step in steps', class: "{active: (currentStep() == step),'show-for-medium-up': (currentStep() != step)}" } }
|
||||
{{ $index+1 + ". " + step }}
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
.container
|
||||
.row.modal-centered
|
||||
%h2 Welcome to the Open Food Network!
|
||||
%h5 Start By Signing Up (or logging in):
|
||||
%div{"ng-controller" => "AuthenticationCtrl"}
|
||||
%tabset
|
||||
%ng-include{src: "'signup.html'"}
|
||||
%ng-include{src: "'login.html'"}
|
||||
%ng-include{src: "'forgot.html'"}
|
||||
%div{ ng: { show: "active('/signup')"} }
|
||||
%hr
|
||||
Already have an account?
|
||||
%a{ href: "", ng: { click: "select('/login')"}}
|
||||
Log in now.
|
||||
|
||||
%a.close-reveal-modal{"ng-click" => "$close()"}
|
||||
%i.ofn-i_009-close
|
||||
@@ -48,7 +48,7 @@
|
||||
.small-4.medium-2.large-2.columns.variant-price
|
||||
.table-cell.price
|
||||
%i.ofn-i_009-close
|
||||
{{ variant.price | currency }}
|
||||
{{ variant.price_with_fees | localizeCurrency }}
|
||||
|
||||
-# Now in a template in app/assets/javascripts/templates !
|
||||
%price-breakdown{"price-breakdown" => "_", variant: "variant",
|
||||
@@ -59,4 +59,4 @@
|
||||
.small-12.medium-2.large-2.columns.total-price.text-right
|
||||
.table-cell
|
||||
%strong
|
||||
{{ variant.getPrice() | currency }}
|
||||
{{ variant.totalPrice() | localizeCurrency }}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
%tab#sign-up-content{"ng-controller" => "SignupCtrl",
|
||||
heading: "Sign up",
|
||||
%tab#sign-up-content{"ng-controller" => "SignupCtrl",
|
||||
heading: "Sign up",
|
||||
active: "active(path)",
|
||||
select: "select(path)"}
|
||||
%form{"ng-submit" => "submit()"}
|
||||
.row
|
||||
.large-12.columns
|
||||
%label{for: "email"} Your email
|
||||
%input.title.input-text{name: "email",
|
||||
%input.title.input-text{name: "email",
|
||||
type: "email",
|
||||
id: "email",
|
||||
tabindex: 1,
|
||||
@@ -16,7 +16,7 @@
|
||||
.row
|
||||
.large-12.columns
|
||||
%label{for: "password"} Choose a password
|
||||
%input.title.input-text{name: "password",
|
||||
%input.title.input-text{name: "password",
|
||||
type: "password",
|
||||
id: "password",
|
||||
autocomplete: "off",
|
||||
@@ -27,7 +27,7 @@
|
||||
.row
|
||||
.large-12.columns
|
||||
%label{for: "password_confirmation"} Confirm password
|
||||
%input.title.input-text{name: "password_confirmation",
|
||||
%input.title.input-text{name: "password_confirmation",
|
||||
type: "password",
|
||||
id: "password_confirmation",
|
||||
autocomplete: "off",
|
||||
@@ -35,7 +35,7 @@
|
||||
"ng-model" => "spree_user.password_confirmation"}
|
||||
.row
|
||||
.large-12.columns
|
||||
%input.button.primary{name: "commit",
|
||||
tabindex: "3",
|
||||
type: "submit",
|
||||
%input.button.primary{name: "commit",
|
||||
tabindex: "3",
|
||||
type: "submit",
|
||||
value: "Sign up now"}
|
||||
|
||||
@@ -7,7 +7,10 @@
|
||||
background-color: #fff
|
||||
|
||||
|
||||
table#enterprise-relationships
|
||||
table#enterprise-relationships, table#enterprise-roles
|
||||
ul
|
||||
list-style-type: none
|
||||
|
||||
th.actions, td.actions
|
||||
width: 16%
|
||||
.errors
|
||||
@@ -84,13 +84,16 @@ button.graph-button
|
||||
display: inline
|
||||
background-color: rgba(255,255,255,0.5)
|
||||
padding: 5px
|
||||
@media all and (max-width: 768px)
|
||||
display: none
|
||||
// Hide for small
|
||||
|
||||
&:hover, &:active, &:focus
|
||||
background-color: rgba(255,255,255,1)
|
||||
i.ofn-i-058-graph
|
||||
i.ofn-i_058-graph
|
||||
color: $clr-brick-bright
|
||||
|
||||
i.ofn-i-058-graph
|
||||
i.ofn-i_058-graph
|
||||
color: #999
|
||||
margin: 0
|
||||
padding: 0
|
||||
@@ -98,7 +101,7 @@ button.graph-button
|
||||
|
||||
@media all and (max-width: 640px)
|
||||
padding: 3px
|
||||
i.ofn-i-058-graph
|
||||
i.ofn-i_058-graph
|
||||
font-size: 0.75rem
|
||||
|
||||
button.graph-button.open
|
||||
@@ -107,10 +110,10 @@ button.graph-button.open
|
||||
|
||||
&:hover, &:active, &:focus
|
||||
background-color: rgba(255,255,255,1)
|
||||
i.ofn-i-058-graph
|
||||
i.ofn-i_058-graph
|
||||
color: $clr-brick-bright
|
||||
|
||||
i.ofn-i-058-graph
|
||||
i.ofn-i_058-graph
|
||||
color: $clr-brick
|
||||
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
padding: 1rem 0
|
||||
|
||||
.active_table .active_table_node
|
||||
margin-top: 0.25rem
|
||||
display: block
|
||||
border: 0
|
||||
|
||||
@@ -28,15 +29,22 @@
|
||||
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
|
||||
&, & *
|
||||
font-size: 0.875rem
|
||||
fat > div label
|
||||
&, & *
|
||||
font-size: 0.75rem
|
||||
|
||||
|
||||
.active_table_row // Inherits from active_table
|
||||
border: 1px solid transparent
|
||||
@include border-radius(0.5em)
|
||||
|
||||
// Foundation overrides
|
||||
margin-left: 0
|
||||
@@ -56,19 +64,25 @@
|
||||
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 $disabled-bright
|
||||
border-top: 1px solid #aaa
|
||||
@media all and (max-width: 640px)
|
||||
margin-top: 1em
|
||||
|
||||
ul, ol
|
||||
font-size: 0.875rem
|
||||
@@ -81,7 +95,7 @@
|
||||
font-size: 0.75rem
|
||||
margin-top: 0.25rem
|
||||
margin-bottom: 0.25rem
|
||||
color: $disabled-dark
|
||||
color: #777
|
||||
|
||||
p.trans-sentence
|
||||
text-transform: capitalize
|
||||
@@ -97,7 +111,6 @@
|
||||
color: $dark-grey
|
||||
&.open
|
||||
.active_table_row:first-child
|
||||
&, & *
|
||||
color: $dark-grey
|
||||
|
||||
|
||||
|
||||
@@ -9,7 +9,13 @@
|
||||
margin-right: 0
|
||||
|
||||
.row.filter-box:first-child
|
||||
// border-top: 1px solid $clr-brick
|
||||
border: 1px solid $clr-blue-light
|
||||
@include border-radius(0.25em)
|
||||
margin-top: 2px
|
||||
|
||||
.row.filter-box:last-child
|
||||
background: transparent
|
||||
margin-top: 1em
|
||||
|
||||
products .filter-box
|
||||
background: #f7f7f7
|
||||
@@ -20,6 +26,8 @@ products .filter-box
|
||||
.tdhead
|
||||
padding: 0.25rem 0.5rem
|
||||
margin-top: 0.9rem
|
||||
color: $clr-blue
|
||||
border-bottom: 1px solid $clr-blue-light
|
||||
|
||||
// OVERRIDES
|
||||
[class*="block-grid-"]
|
||||
|
||||
3
app/assets/stylesheets/darkswarm/angular.css.sass
Normal file
@@ -0,0 +1,3 @@
|
||||
// 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
|
||||
@@ -9,8 +9,6 @@
|
||||
@include avenir
|
||||
@include csstrans
|
||||
@include border-radius(0.5rem)
|
||||
|
||||
// transition: all 0.5s ease
|
||||
background: rgba(255,255,255,0.1)
|
||||
border: 2px solid $input
|
||||
font-size: 2rem
|
||||
@@ -21,6 +19,8 @@
|
||||
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))
|
||||
|
||||
@@ -1,17 +1,6 @@
|
||||
// ORIGINAL
|
||||
// $clr-brick: #8f301d
|
||||
// $clr-brick-light: #f5e4e1
|
||||
// $clr-brick-ultra-light: #f7f4ef
|
||||
// $clr-brick-bright: #db583d
|
||||
// $clr-brick-light-bright: #f4bbb0
|
||||
|
||||
// $clr-turquoise: #097563
|
||||
// $clr-turquoise-light: #cef2ec
|
||||
// $clr-turquoise-ultra-light: #e6faf7
|
||||
// $clr-turquoise-bright: #1d8f7c
|
||||
|
||||
$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
|
||||
@@ -22,6 +11,15 @@ $clr-turquoise-light: #ceefe4
|
||||
$clr-turquoise-ultra-light: #e8f9f4
|
||||
$clr-turquoise-bright: #23a877
|
||||
|
||||
$disabled-dark: #999
|
||||
$clr-blue: #0096ad
|
||||
$clr-blue-light: #85d9e5
|
||||
$clr-blue-bright: #14b6cc
|
||||
|
||||
$disabled-light: #e5e5e5
|
||||
$disabled-bright: #ccc
|
||||
$dark-grey: #333
|
||||
$disabled-med: #b3b3b3
|
||||
$disabled-dark: #999
|
||||
$disabled-v-dark: #808080
|
||||
$med-grey: #666
|
||||
$dark-grey: #333
|
||||
$black: #000
|
||||
|
||||
@@ -3,10 +3,19 @@
|
||||
|
||||
checkout
|
||||
display: block
|
||||
|
||||
@media all and (max-width: 640px)
|
||||
&.row .row
|
||||
margin-left: 0
|
||||
margin-right: 0
|
||||
|
||||
orderdetails
|
||||
.button, table
|
||||
width: 100%
|
||||
@media all and (max-width: 640px)
|
||||
form.edit_order
|
||||
border: 1px solid $disabled-bright
|
||||
margin-bottom: 2rem
|
||||
|
||||
#details, #billing, #shipping, #payment
|
||||
border: 0
|
||||
|
||||
@@ -7,24 +7,19 @@
|
||||
background-color: black
|
||||
background-image: url("/assets/home/ofn_bg_1.jpg")
|
||||
@include fullbg
|
||||
height: 500px
|
||||
height: 400px
|
||||
padding: 40px 0px
|
||||
h1, h2, span, small, timer
|
||||
h1, h2, p
|
||||
color: white
|
||||
p
|
||||
color: $clr-brick-light
|
||||
h1
|
||||
margin-bottom: 3rem
|
||||
margin-bottom: 1em
|
||||
h2
|
||||
font-size: 1.6875rem
|
||||
max-width: 610px
|
||||
margin: 0 auto
|
||||
padding-bottom: 0.5rem
|
||||
|
||||
a
|
||||
color: white
|
||||
&:hover, &:active, &:focus
|
||||
color: $clr-brick-light-bright
|
||||
@include textsoftpress
|
||||
a.button.primary
|
||||
color: white
|
||||
@@ -10,103 +10,131 @@
|
||||
overflow-x: hidden
|
||||
overflow-y: visible
|
||||
|
||||
//Hub icon styline
|
||||
i.ofn-i_040-hub
|
||||
@include border-radius(99999rem)
|
||||
font-size: 1.15rem
|
||||
display: inline-block
|
||||
padding: 0.2rem
|
||||
margin-top: 0.1rem
|
||||
margin-bottom: 0.1rem
|
||||
background-color: transparent
|
||||
@media all and (max-width: 768px)
|
||||
font-size: 1rem
|
||||
|
||||
//Generic text link style
|
||||
a:hover, a:active, a:focus
|
||||
color: $clr-brick-bright
|
||||
a, a *
|
||||
color: $clr-brick
|
||||
&:hover, &:active, &:focus
|
||||
color: $clr-brick-bright
|
||||
|
||||
@media all and (max-width: 640px)
|
||||
&.closed, &.open
|
||||
//Hub and Producer icons
|
||||
i.ofn-i_063-hub, i.ofn-i_064-hub-reversed, i.ofn-i_059-producer, i.ofn-i_060-producer-reversed
|
||||
font-size: 2rem
|
||||
display: inline-block
|
||||
margin-right: 0.25rem
|
||||
float: left
|
||||
|
||||
//Closed & Open column
|
||||
.open_closed
|
||||
i
|
||||
font-size: 2rem
|
||||
float: right
|
||||
margin-left: 0.5rem
|
||||
|
||||
//Hub Name
|
||||
span.hub-name-listing
|
||||
font-weight: 700
|
||||
|
||||
//CLOSED row
|
||||
&.closed
|
||||
.active_table_row
|
||||
border: 1px solid transparent
|
||||
@media all and (max-width: 640px)
|
||||
border-color: $clr-brick-light
|
||||
&:hover, &:active, &:focus
|
||||
border-color: $clr-brick-light-bright
|
||||
|
||||
//OPEN row
|
||||
&.open
|
||||
.active_table_row, .active_table_row:first-child, .active_table_row:last-child
|
||||
border-color: $clr-brick-light-bright
|
||||
|
||||
&.open, &.closed
|
||||
@media all and (max-width: 640px)
|
||||
.active_table_row:first-child .skinny-head
|
||||
background-color: $clr-brick-light
|
||||
@include border-radius-mixed(0.5em, 0.5em, 0, 0)
|
||||
margin-top: -1rem
|
||||
margin-bottom: 1rem
|
||||
padding-top: 1rem
|
||||
padding-bottom: 1rem
|
||||
&.inactive
|
||||
&.closed, &.open
|
||||
.active_table_row:first-child .skinny-head
|
||||
background-color: white
|
||||
|
||||
//Inactive row
|
||||
&.inactive, &.inactive strong
|
||||
color: $disabled-dark
|
||||
label
|
||||
margin-top: 1rem
|
||||
|
||||
&, & *
|
||||
color: $disabled-dark
|
||||
|
||||
a i.ofn-i_040-hub
|
||||
color: $disabled-dark
|
||||
|
||||
&.current
|
||||
&.closed, &.open
|
||||
|
||||
a, a strong, a span, a i
|
||||
color: $disabled-dark
|
||||
&:hover, &:focus, &:active
|
||||
color: $disabled-dark
|
||||
|
||||
a i.ofn-i_040-hub
|
||||
color: white
|
||||
background-color: $disabled-dark
|
||||
a:hover, a:focus, a:active
|
||||
color: $disabled-dark
|
||||
i.ofn-i_040-hub
|
||||
background-color: $disabled-dark
|
||||
|
||||
&.closed
|
||||
&:hover, &:active, &:focus
|
||||
border: none
|
||||
color: $disabled-dark
|
||||
|
||||
&.open
|
||||
.active_table_row:first-child
|
||||
color: $disabled-dark
|
||||
strong
|
||||
color: $disabled-dark
|
||||
&:hover, &:active, &:focus
|
||||
color: $disabled-dark
|
||||
strong
|
||||
color: $disabled-dark
|
||||
.active_table_row:nth-child(2)
|
||||
background-color: rgba(255, 255, 255, 0)
|
||||
|
||||
//Open row
|
||||
//Padding second row
|
||||
&.open
|
||||
.active_table_row:nth-child(2)
|
||||
padding-bottom: 0.75rem
|
||||
|
||||
//Current selected row
|
||||
|
||||
//CURRENT hub (shows selected hub)
|
||||
&.current
|
||||
//overwrites active_table
|
||||
&.closed
|
||||
a, a i, a span, a strong
|
||||
color: $clr-brick
|
||||
|
||||
&.closed, &.open
|
||||
a i.ofn-i_040-hub
|
||||
color: white
|
||||
background-color: $clr-brick
|
||||
a, a *
|
||||
color: $clr-brick
|
||||
.active_table_row
|
||||
border-color: $clr-brick
|
||||
.active_table_row:first-child, .active_table_row:last-child
|
||||
background-color: $clr-brick-light-trans
|
||||
opacity: 1
|
||||
&:hover, &:focus, &:active
|
||||
opacity: 0.9
|
||||
border-color: $clr-brick-bright
|
||||
@media all and (max-width: 640px)
|
||||
.active_table_row:first-child .skinny-head
|
||||
background-color: rgba(255,255,255,0.85)
|
||||
|
||||
//INACTIVE - closed hub
|
||||
&.inactive
|
||||
&.closed, &.open
|
||||
&, & *
|
||||
color: $disabled-med
|
||||
a, a *
|
||||
color: $disabled-dark
|
||||
&.closed
|
||||
.active_table_row, .active_table_row:first-child, .active_table_row:last-child
|
||||
&:hover, &:active, &:focus
|
||||
border-color: $disabled-bright
|
||||
&.open
|
||||
.active_table_row, .active_table_row:first-child, .active_table_row:last-child
|
||||
// border-color: $disabled-bright
|
||||
&, &:hover, &:active, &:focus
|
||||
border-color: $disabled-bright
|
||||
|
||||
&.closed, &.open
|
||||
|
||||
// & Current hub
|
||||
&.current
|
||||
.active_table_row, .active_table_row:first-child, .active_table_row:last-child
|
||||
a, a *
|
||||
color: $med-grey
|
||||
border-color: $disabled-dark
|
||||
background-color: rgba(220,220,220,0.5)
|
||||
&:hover, &:focus, &:active
|
||||
border-color: $disabled-dark
|
||||
|
||||
// Small devices
|
||||
@media all and (max-width: 640px)
|
||||
.active_table_row:first-child .skinny-head
|
||||
background-color: $disabled-bright
|
||||
|
||||
// Small devices
|
||||
@media all and (max-width: 640px)
|
||||
.active_table_row, .active_table_row:first-child, .active_table_row:last-child
|
||||
border-color: $disabled-bright
|
||||
background-color: transparent
|
||||
&:hover, &:focus, &:active
|
||||
border-color: $disabled-bright
|
||||
opacity: 0.85
|
||||
.active_table_row:first-child .skinny-head
|
||||
background-color: $disabled-light
|
||||
|
||||
a:hover, a:focus, a:active
|
||||
strong, span
|
||||
color: $clr-brick-bright
|
||||
i.ofn-i_040-hub
|
||||
background-color: $clr-brick-bright
|
||||
|
||||
|
||||
|
||||
|
||||
//Is Profile - profile node
|
||||
&.inactive.is_profile
|
||||
&.closed, &.open
|
||||
.active_table_row
|
||||
&:hover, &:active, &:focus
|
||||
border-color: transparent
|
||||
cursor: auto
|
||||
@media all and (max-width: 640px)
|
||||
border-color: transparent
|
||||
|
||||
|
||||
@@ -11,12 +11,16 @@
|
||||
@include box-shadow(0 1px 2px 1px rgba(0,0,0,0.25))
|
||||
|
||||
.hero-img
|
||||
border-bottom: 1px solid $disabled-bright
|
||||
outline: 1px solid $disabled-bright
|
||||
border-color: transparent
|
||||
@include box-shadow(none)
|
||||
width: 100%
|
||||
min-height: 56px
|
||||
min-height: 80px
|
||||
height: inherit
|
||||
max-height: 260px
|
||||
overflow: hidden
|
||||
@media all and (max-width: 640px)
|
||||
min-height: 68px
|
||||
|
||||
.hero-img-small
|
||||
background-color: #333
|
||||
|
||||
@@ -16,10 +16,28 @@
|
||||
-webkit-box-shadow: $box-shadow
|
||||
box-shadow: $box-shadow
|
||||
|
||||
@mixin elipse-shadow($elipse-shadow)
|
||||
content: ""
|
||||
position: absolute
|
||||
z-index: -1
|
||||
-webkit-box-shadow: $elipse-shadow
|
||||
box-shadow: $elipse-shadow
|
||||
bottom: -12%
|
||||
left: 10%
|
||||
right: 10%
|
||||
width: 80%
|
||||
height: 10%
|
||||
-moz-border-radius: 100%
|
||||
border-radius: 100%
|
||||
|
||||
@mixin border-radius($border-radius)
|
||||
-webkit-border-radius: $border-radius
|
||||
border-radius: $border-radius
|
||||
|
||||
@mixin border-radius-mixed($border-radius-TL, $border-radius-TR, $border-radius-BR, $border-radius-BL)
|
||||
-webkit-border-radius: $border-radius-TL $border-radius-TR $border-radius-BR $border-radius-BL
|
||||
border-radius: $border-radius-TL $border-radius-TR $border-radius-BR $border-radius-BL
|
||||
|
||||
@mixin transform-translate($translate)
|
||||
-ms-transform: $translate
|
||||
-webkit-transform: $translate
|
||||
|
||||
@@ -2,25 +2,61 @@
|
||||
@import mixins
|
||||
|
||||
|
||||
// Generic styles for use
|
||||
|
||||
.modal-centered
|
||||
text-align: center
|
||||
p
|
||||
margin-bottom: 0
|
||||
|
||||
.modal-header, p.modal-header
|
||||
text-align: center
|
||||
text-transform: uppercase
|
||||
font-size: 1rem
|
||||
font-weight: 400
|
||||
color: $disabled-dark
|
||||
border-bottom: 1px solid $disabled-dark
|
||||
margin-top: 0.75rem
|
||||
margin-bottom: 0.5rem
|
||||
|
||||
// Enterprise promo image and text
|
||||
|
||||
.highlight
|
||||
position: relative
|
||||
|
||||
.highlight-top
|
||||
padding: 0.75rem 0.9375rem
|
||||
width: 100%
|
||||
overflow: hidden
|
||||
padding-top: 0.75rem
|
||||
padding-bottom: 0.75rem
|
||||
background-color: rgba(255,255,255,0.65)
|
||||
position: absolute
|
||||
bottom: 0
|
||||
width: 100%
|
||||
border: 0
|
||||
outline: 0
|
||||
@media only screen and (max-width: 640px)
|
||||
padding-top: 0.5rem
|
||||
padding-bottom: 0.35rem
|
||||
|
||||
h3, p
|
||||
margin-top: 0
|
||||
margin-bottom: 0
|
||||
padding-bottom: 0
|
||||
line-height: 1
|
||||
|
||||
h3 > i
|
||||
color: $clr-brick
|
||||
|
||||
p
|
||||
line-height: 2
|
||||
line-height: 2.4
|
||||
@media all and (max-width: 640px)
|
||||
line-height: 1.4
|
||||
|
||||
h3 a:hover span
|
||||
border-bottom: 1px solid $clr-brick-bright
|
||||
|
||||
.is_producer
|
||||
&, & *
|
||||
color: $clr-turquoise
|
||||
|
||||
|
||||
// ABOUT Enterprise
|
||||
@@ -41,11 +77,16 @@
|
||||
max-width: 180px
|
||||
max-height: 180px
|
||||
|
||||
// CONTACT Enterprise
|
||||
|
||||
.contact-container
|
||||
a:hover
|
||||
text-decoration: underline
|
||||
|
||||
// FOLLOW Enterprise
|
||||
|
||||
.follow-icons
|
||||
text-align: center
|
||||
// text-align: center
|
||||
span
|
||||
display: inline-block
|
||||
margin: 0 0.25rem 0.75rem 0.25rem
|
||||
@@ -66,7 +107,7 @@
|
||||
label
|
||||
text-transform: uppercase
|
||||
font-size: 0.875rem
|
||||
margin-bottom: 0
|
||||
margin-bottom: 0.75rem
|
||||
5rem
|
||||
color: $dark-grey
|
||||
|
||||
@@ -74,51 +115,53 @@
|
||||
color: $disabled-dark
|
||||
span
|
||||
text-transform: capitalize
|
||||
|
||||
.cta-hub
|
||||
margin-right: 2rem
|
||||
margin-top: 0rem
|
||||
margin-bottom: 0.75rem
|
||||
display: inline-block
|
||||
|
||||
.button.secondary
|
||||
background-color: #999
|
||||
.button.hub
|
||||
margin-right: 1rem
|
||||
margin-top: 0.25rem
|
||||
margin-bottom: 1rem
|
||||
padding-left: 1rem
|
||||
padding-right: 1rem
|
||||
font-weight: bold
|
||||
&.secondary
|
||||
color: $disabled-dark
|
||||
|
||||
&.primary
|
||||
color: $clr-brick
|
||||
|
||||
i.ofn-i_033-open-sign, i.ofn-i_032-closed-sign
|
||||
margin-right: 0.15rem
|
||||
font-size: 1.25rem
|
||||
i.ofn-i_007-caret-right
|
||||
margin-left: 1rem
|
||||
margin-right: 0.1rem
|
||||
font-size: 2rem
|
||||
padding: 0.15rem 0.25rem 0.35rem 0.25rem
|
||||
float: left
|
||||
|
||||
.hub-name
|
||||
margin-top: 0.75rem
|
||||
margin-bottom: 0.2rem
|
||||
font-weight: 400
|
||||
display: inline-block
|
||||
border-bottom: 1px solid transparent
|
||||
.button-address
|
||||
margin-top: 0.5rem
|
||||
margin-bottom: 0.2rem
|
||||
margin-left: 0.1rem
|
||||
text-transform: uppercase
|
||||
font-weight: 300
|
||||
font-style: italic
|
||||
font-size: 0.75rem
|
||||
display: inline
|
||||
display: inline-block
|
||||
border-bottom: 1px solid transparent
|
||||
@media all and (max-width: 640px)
|
||||
display: none
|
||||
.button.hub.expand
|
||||
text-align: left
|
||||
i.ofn-i_007-caret-right
|
||||
float: right
|
||||
i.ofn-i_033-open-sign, i.ofn-i_032-closed-sign
|
||||
float: left
|
||||
margin-right: 0.5rem
|
||||
|
||||
&:hover, &:focus, &:active
|
||||
&.secondary
|
||||
color: #666
|
||||
.hub-name, .button-address
|
||||
border-bottom: 1px solid #999
|
||||
&.primary
|
||||
color: $clr-brick-bright
|
||||
.hub-name, .button-address
|
||||
border-bottom: 1px solid $clr-brick-bright
|
||||
|
||||
|
||||
// Generic styles for use
|
||||
|
||||
.modal-centered
|
||||
text-align: center
|
||||
p
|
||||
margin-bottom: 0
|
||||
|
||||
.modal-header, p.modal-header
|
||||
text-align: center
|
||||
text-transform: uppercase
|
||||
font-size: 1rem
|
||||
font-weight: 400
|
||||
color: $disabled-dark
|
||||
border-bottom: 1px solid $disabled-dark
|
||||
margin-top: 0.75rem
|
||||
margin-bottom: 0.5rem
|
||||
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
|
||||
// Styling for login modal to style tabs
|
||||
.reveal-modal.login-modal
|
||||
border-bottom-color: #efefef
|
||||
|
||||
.login-modal
|
||||
background: #efefef
|
||||
.tabs-content
|
||||
background: #fff
|
||||
background: #fff
|
||||
padding-top: 10px
|
||||
|
||||
|
||||
|
||||
@@ -4,66 +4,45 @@
|
||||
dialog, .reveal-modal
|
||||
border: none
|
||||
outline: none
|
||||
padding: 1rem
|
||||
padding: 30px 20px 0 20px
|
||||
border-bottom: 30px solid white
|
||||
overflow-y: scroll
|
||||
|
||||
// Sets up max heights based on device height
|
||||
@media all and (min-height: 1025px)
|
||||
overflow-x: hidden
|
||||
// Not working yet - want a nice gradient shadow when there is overflow - needs JS too
|
||||
// &:after
|
||||
// @include elipse-shadow(0 0 40px rgba(0, 0, 0, 0.8))
|
||||
|
||||
|
||||
// Reveal.js break point:
|
||||
// @media only screen and (max-width: 40.063em)
|
||||
|
||||
// Small - when modal IS full screen
|
||||
@media only screen and (max-width: 640px)
|
||||
max-height: initial
|
||||
// This is needed to make the height not the height of whole content page
|
||||
min-height: 100%
|
||||
position: absolute !important
|
||||
top: 0
|
||||
left: 0
|
||||
|
||||
// Medium and up - when modal IS NOT full screen
|
||||
@media only screen and (min-width: 641px)
|
||||
top: 10%
|
||||
max-height: 80%
|
||||
|
||||
@media all and (min-height: 700px) and (max-height: 1024px)
|
||||
max-height: 70%
|
||||
|
||||
@media all and (min-height: 600px) and (max-height: 699px)
|
||||
max-height: 60%
|
||||
|
||||
@media all and (min-height: 481px) and (max-height: 599px)
|
||||
max-height: 60%
|
||||
|
||||
@media only screen and (max-height: 480px) and (min-width: 641px)
|
||||
max-height: 60%
|
||||
|
||||
@media all and (max-height: 480px)
|
||||
overflow-y: scroll
|
||||
|
||||
|
||||
.reveal-modal-bg
|
||||
background-color: rgba(0,0,0,0.65)
|
||||
background-color: rgba(0,0,0,0.85)
|
||||
|
||||
dialog .close-reveal-modal, .reveal-modal .close-reveal-modal
|
||||
right: 0.4rem
|
||||
background-color: rgba(235,235,235,0.85)
|
||||
right: 0.25rem
|
||||
top: 0.25rem
|
||||
background-color: rgba(205,205,205,0.65)
|
||||
text-shadow: none
|
||||
padding: 0.3rem
|
||||
font-size: 2rem
|
||||
padding: 0.45rem
|
||||
color: #666
|
||||
z-index: 9999999
|
||||
@include border-radius(999999rem)
|
||||
&:hover, &:active, &:focus
|
||||
background-color: rgba(235,235,235,1)
|
||||
background-color: rgba(205,205,205,1)
|
||||
color: #333
|
||||
|
||||
// dialog .close-reveal-modal.outside, .reveal-modal .close-reveal-modal.outside
|
||||
// top: -2.5rem
|
||||
// right: -2.5rem
|
||||
// font-size: 2rem
|
||||
// color: white
|
||||
// text-shadow: none
|
||||
// padding: 0.25rem
|
||||
// @include border-radius(999999)
|
||||
// border: 1px solid transparent
|
||||
// &:hover, &:active, &:focus
|
||||
// text-shadow: 0 1px 3px #333
|
||||
// border: 1px solid white
|
||||
|
||||
// @media all and (max-width: 640px)
|
||||
// top: 0.5rem
|
||||
// right: 0.5rem
|
||||
// font-size: 2rem
|
||||
// color: white
|
||||
// text-shadow: none
|
||||
// padding: 0.25rem
|
||||
// background-color: rgba(150,150,150,0.85)
|
||||
// @include border-radius(999999)
|
||||
// border: 1px solid transparent
|
||||
// &:hover, &:active, &:focus
|
||||
// text-shadow: 0 1px 3px #333
|
||||
// border: 1px solid white
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
@import branding
|
||||
@import mixins
|
||||
|
||||
.producers
|
||||
.active_table .active_table_node
|
||||
@@ -7,24 +8,73 @@
|
||||
@media all and (max-width: 640px)
|
||||
.skinny-head
|
||||
background-color: $clr-turquoise-light
|
||||
@include border-radius-mixed(0.5em, 0.5em, 0, 0)
|
||||
margin-top: -1rem
|
||||
margin-bottom: 1rem
|
||||
padding-top: 1rem
|
||||
padding-bottom: 1rem
|
||||
.follow-icons
|
||||
&, & *
|
||||
font-size: 1.5rem
|
||||
|
||||
|
||||
// Producer icons
|
||||
i.ofn-i_059-producer, i.ofn-i_060-producer-reversed
|
||||
font-size: 2rem
|
||||
display: inline-block
|
||||
margin-right: 0.25rem
|
||||
float: left
|
||||
color: $clr-turquoise
|
||||
|
||||
a
|
||||
&:hover, &:active, &:focus
|
||||
color: $clr-turquoise-bright
|
||||
span
|
||||
text-decoration: underline
|
||||
|
||||
&.has_shopfront, &.has_shopfront i.ofn-i_059-producer, &.has_shopfront i.ofn-i_060-producer-reversed
|
||||
color: $clr-brick
|
||||
&:hover, &:active, &:focus
|
||||
color: $clr-brick-bright
|
||||
|
||||
a.cta-hub
|
||||
&:hover, &:focus, &:active
|
||||
&.secondary
|
||||
color: #666
|
||||
.hub-name, .button-address
|
||||
border-bottom: 1px solid #999
|
||||
&.primary
|
||||
color: $clr-brick-bright
|
||||
.hub-name, .button-address
|
||||
border-bottom: 1px solid $clr-brick-bright
|
||||
|
||||
p.word-wrap
|
||||
margin-bottom: 0
|
||||
&:last-child
|
||||
margin-bottom: 1rem
|
||||
|
||||
.fat-taxons
|
||||
background-color: $clr-turquoise-light
|
||||
|
||||
.producer-name
|
||||
color: $clr-turquoise
|
||||
|
||||
//Open row
|
||||
&.open
|
||||
|
||||
.active_table_row
|
||||
border-left: 1px solid $clr-turquoise-bright
|
||||
border-right: 1px solid $clr-turquoise-bright
|
||||
background-color: rgba(255,255,255,0.4)
|
||||
background-color: rgba(206,239,228,0.4)
|
||||
.cta-container
|
||||
background: none
|
||||
.columns img
|
||||
padding: 1rem 0
|
||||
max-height: 160px
|
||||
width: auto
|
||||
&.left
|
||||
padding: 0.25rem 1rem 0.25rem 0
|
||||
&.right
|
||||
padding: 0.25rem 0.5rem 0.25rem 2rem
|
||||
|
||||
.active_table_row:first-child
|
||||
border-top: 1px solid $clr-turquoise-bright
|
||||
@@ -35,6 +85,12 @@
|
||||
|
||||
//Closed row
|
||||
&.closed
|
||||
&:hover, &:active, &:focus
|
||||
.active_table_row.closed
|
||||
border: 1px solid $clr-turquoise
|
||||
.active_table_row.closed
|
||||
border: 1px solid transparent
|
||||
@media all and (max-width: 640px)
|
||||
border-color: $clr-turquoise-light
|
||||
&:hover, &:active, &:focus
|
||||
border-color: $clr-turquoise
|
||||
|
||||
|
||||
|
||||
|
||||
161
app/assets/stylesheets/darkswarm/registration.css.sass
Normal file
@@ -0,0 +1,161 @@
|
||||
@import branding
|
||||
@import mixins
|
||||
|
||||
#registration-modal
|
||||
.header
|
||||
text-align: center
|
||||
background-color: #efefef
|
||||
padding-bottom: 1rem
|
||||
.container
|
||||
background-color: #ffffff
|
||||
.content
|
||||
// margin-bottom: 15px
|
||||
|
||||
i
|
||||
font-size: 150%
|
||||
|
||||
.buttons
|
||||
|
||||
ofn-inline-flash
|
||||
display: block
|
||||
padding: 15px
|
||||
position: relative
|
||||
margin-bottom: 10px
|
||||
&.brick
|
||||
background-color: $clr-brick-light
|
||||
border: 2px solid $clr-brick
|
||||
color: $clr-brick
|
||||
&.turquoise
|
||||
background-color: $clr-turquoise-light
|
||||
border: 2px solid $clr-turquoise
|
||||
color: $clr-turquoise
|
||||
.close-button
|
||||
position: absolute
|
||||
top: 0px
|
||||
right: 0px
|
||||
|
||||
.field
|
||||
margin-bottom: 15px
|
||||
|
||||
input.chunky
|
||||
padding: 8px
|
||||
font-size: 105%
|
||||
|
||||
label.indent-checkbox
|
||||
display: block
|
||||
padding-left: 20px
|
||||
text-indent: -17px
|
||||
input
|
||||
margin: 0px
|
||||
|
||||
label
|
||||
margin-bottom: 3px
|
||||
|
||||
ol, ul
|
||||
// font-size: 80%
|
||||
font-size: 0.875rem
|
||||
padding: 0
|
||||
margin: 0
|
||||
ol
|
||||
list-style-type: decimal
|
||||
|
||||
.highlight-box
|
||||
background: white
|
||||
padding: 1rem 1.2rem
|
||||
@media all and (max-width: 640px)
|
||||
margin-top: 1rem
|
||||
|
||||
#progress-bar
|
||||
margin-bottom: 15px
|
||||
.item
|
||||
padding: 12px 0px
|
||||
text-transform: uppercase
|
||||
text-align: center
|
||||
background-color: #333
|
||||
border: 2px solid #333
|
||||
color: #fff
|
||||
.item.active
|
||||
background-color: #cccccc
|
||||
border: 2px solid #333
|
||||
color: #333
|
||||
@include box-shadow(inset 0 0 1px 0 #fff)
|
||||
|
||||
|
||||
.image-select
|
||||
label
|
||||
font-size: 18px
|
||||
padding: 21px 0px
|
||||
#logo-select
|
||||
display: none
|
||||
|
||||
#image-over
|
||||
font-size: 18px
|
||||
padding: 41px 0px
|
||||
border: 3px dashed #494949
|
||||
text-align: center
|
||||
font-weight: bold
|
||||
color: #494949
|
||||
&.nv-file-over
|
||||
background-color: #78cd91
|
||||
|
||||
#or
|
||||
text-align: center
|
||||
font-weight: bold
|
||||
font-size: 18px
|
||||
padding: 21px 0px
|
||||
&.horizontal
|
||||
padding: 41px 0px
|
||||
|
||||
#image-placeholder
|
||||
font-size: 18px
|
||||
font-weight: bold
|
||||
color: #373737
|
||||
background-color: #e1e1e1
|
||||
text-align: center
|
||||
border: 3px dashed #494949
|
||||
margin-left: auto
|
||||
margin-right: auto
|
||||
&.logo
|
||||
.message
|
||||
padding-top: 6em
|
||||
width: 306px
|
||||
height: 306px
|
||||
&.promo
|
||||
.message
|
||||
padding-top: 4em
|
||||
width: 726px
|
||||
height: 166px
|
||||
|
||||
|
||||
#registration-details
|
||||
#enterprise-types
|
||||
a.panel
|
||||
display: block
|
||||
background-color: #efefef
|
||||
color: black
|
||||
@media all and (min-width: 768px)
|
||||
min-height: 200px
|
||||
&:hover
|
||||
background-color: #fff
|
||||
&#producer-panel:hover
|
||||
&, & *
|
||||
color: $clr-turquoise
|
||||
&#hub-panel:hover, &#both-panel:hover
|
||||
&, & *
|
||||
color: $clr-brick
|
||||
&.selected
|
||||
&, & *
|
||||
color: #fff
|
||||
&#hub-panel, &#both-panel
|
||||
background-color: $clr-brick-bright
|
||||
&:hover
|
||||
&, & *
|
||||
color: white
|
||||
&#producer-panel
|
||||
background-color: $clr-turquoise-bright
|
||||
&:hover
|
||||
&, & *
|
||||
color: white
|
||||
p
|
||||
clear: both
|
||||
font-size: 0.875rem
|
||||
@@ -1,10 +1,10 @@
|
||||
@font-face {
|
||||
font-family: 'OFN';
|
||||
src:url('/OFN.eot?-4w617y');
|
||||
src:url('/OFN.eot?#iefix-4w617y') format('embedded-opentype'),
|
||||
url('/OFN.woff?-4w617y') format('woff'),
|
||||
url('/OFN.ttf?-4w617y') format('truetype'),
|
||||
url('/OFN.svg?-4w617y#OFN') format('svg');
|
||||
src:url('/OFN.eot?eslsji');
|
||||
src:url('/OFN.eot?#iefixeslsji') format('embedded-opentype'),
|
||||
url('/OFN.woff?eslsji') format('woff'),
|
||||
url('/OFN.ttf?eslsji') format('truetype'),
|
||||
url('/OFN.svg?eslsji#OFN') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
@@ -194,6 +194,42 @@
|
||||
.ofn-i_057-expand:before {
|
||||
content: "\e638";
|
||||
}
|
||||
.ofn-i-058-graph:before {
|
||||
.ofn-i_058-graph:before {
|
||||
content: "\e639";
|
||||
}
|
||||
.ofn-i_059-producer:before {
|
||||
content: "\e63a";
|
||||
}
|
||||
.ofn-i_060-producer-reversed:before {
|
||||
content: "\e63b";
|
||||
}
|
||||
.ofn-i_061-producer-map:before {
|
||||
content: "\e63c";
|
||||
}
|
||||
.ofn-i_062-producer-map-reversed:before {
|
||||
content: "\e63d";
|
||||
}
|
||||
.ofn-i_063-hub:before {
|
||||
content: "\e63e";
|
||||
}
|
||||
.ofn-i_064-hub-reversed:before {
|
||||
content: "\e63f";
|
||||
}
|
||||
.ofn-i_065-hub-map:before {
|
||||
content: "\e640";
|
||||
}
|
||||
.ofn-i_066-hub-map-reversed:before {
|
||||
content: "\e641";
|
||||
}
|
||||
.ofn-i_067-shop:before {
|
||||
content: "\e642";
|
||||
}
|
||||
.ofn-i_068-shop-reversed:before {
|
||||
content: "\e643";
|
||||
}
|
||||
.ofn-i_069-shop-map:before {
|
||||
content: "\e644";
|
||||
}
|
||||
.ofn-i_070-shop-map-reversed:before {
|
||||
content: "\e645";
|
||||
}
|
||||
|
||||
@@ -48,6 +48,9 @@ small, .small
|
||||
.turquoise
|
||||
color: $clr-turquoise
|
||||
|
||||
.brick
|
||||
color: $clr-brick
|
||||
|
||||
@mixin avenir
|
||||
font-family: "AvenirBla_IE", "AvenirBla"
|
||||
|
||||
@@ -55,8 +58,8 @@ h1, h2, h3, h4, h5, h6, .avenir
|
||||
@include avenir
|
||||
padding: 0px
|
||||
|
||||
ul.bullet-list
|
||||
margin: 0
|
||||
ul.bullet-list, ul.check-list
|
||||
margin: 0 0 0 1.25em !important
|
||||
li
|
||||
list-style: none
|
||||
line-height: 1.5
|
||||
@@ -64,12 +67,16 @@ ul.bullet-list
|
||||
li:before
|
||||
content: "\e609"
|
||||
font-family: "OFN"
|
||||
margin-left: -1.25em
|
||||
display: inline-block
|
||||
font-weight: normal
|
||||
font-style: normal
|
||||
font-variant: normal
|
||||
text-transform: none
|
||||
|
||||
|
||||
ul.check-list
|
||||
li:before
|
||||
content: "\e632"
|
||||
|
||||
.light-grey
|
||||
color: #666666
|
||||
|
||||
@@ -63,6 +63,20 @@ button.success, .button.success
|
||||
.button.success:hover, .button.success:active, .button.success:focus, button.success:hover, button.success:active, button.success:focus
|
||||
background: #14b6cc
|
||||
|
||||
.button.help-btn
|
||||
@include border-radius(999999px)
|
||||
&.tiny
|
||||
padding: 0rem
|
||||
margin: 0
|
||||
float: right
|
||||
i
|
||||
font-size: 1.25rem
|
||||
|
||||
.profile-checkbox
|
||||
display: inline-block
|
||||
input[type="checkbox"] + label
|
||||
margin: 0 0.2rem
|
||||
|
||||
// Responsive
|
||||
@media screen and (min-width: 768px)
|
||||
[role="main"]
|
||||
|
||||