Skip to content

Commit 7e8fb91

Browse files
Merge pull request #91 from 1instinct/@aaron.smulktis/develop
Fix Homepage Section Order, Tweak Nav, Remove Dead Files
2 parents 22198bc + 62f20a7 commit 7e8fb91

128 files changed

Lines changed: 1134 additions & 1914 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env.example

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
#Spree Envs
2-
COMPANY_LOGO=path/to/file.png
1+
COMPANY_LOGO=instinct_logo.png
2+
COMPANY_BACKGROUND=background.png
3+
LANG=
34

45
# Devise Dev
56
DEVISE_SECRET_KEY=9249bee1e313be562c663298d9849317b8dc8acf3d27ac13f8bfd73fb7e60669412c2bcae92f823769ed1da8bf056b07a8d23b80d84508f1f0a546d6a3840b93
67

78
# Database Creds
8-
DATABASE_URL=postgres://postgres:password@k8-service-name:5432/dna_admin_development
9+
DATABASE_URL=postgres://postgres:password@db:5432/dna_admin_development
910

1011
# Pusher Dev client
1112
PUSHER_APP_ID=

.git-crypt/.gitattributes

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Do not edit this file. To specify the files to encrypt, create your own
2+
# .gitattributes file in the directory where your files are.
3+
* !filter !diff
4+
*.gpg binary
Binary file not shown.

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ envvars.txt
2424
.env.staging
2525
.env.production
2626
.prettierrc
27+
secret.yml
28+
secret.yaml
29+
secrets.yml
30+
secrets.yaml
2731

2832
.byebug_history
2933
# Ignore precompiled javascript packs
@@ -86,3 +90,5 @@ secret.yaml
8690
*.tar
8791
*.yml.prod
8892
docker-compose.yml.local
93+
94+
.anima/

Gemfile

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,22 +40,25 @@ gem 'rack-cors', :require => 'rack/cors'
4040
# Reduces boot times through caching; required in config/boot.rb
4141
gem 'bootsnap', '~> 1.8.1'
4242

43-
gem "aws-sdk-s3", require: false
43+
gem "aws-sdk-s3", '~> 1.96'
4444

4545
gem "net-http"
4646

4747
gem 'spree', github: '1instinct/spree', branch: 'instinct-dna'
4848
gem 'spree_auth_devise', '~> 4.3'
4949
gem 'spree_gateway', '~> 3.9'
5050
gem 'spree_static_content', github: 'spree-contrib/spree_static_content'
51-
gem 'spree_digital', github: 'spree-contrib/spree_digital', branch: 'fix/spree-4-1-plus'
51+
# gem 'spree_digital', github: 'spree-contrib/spree_digital'
5252
gem 'spree_reffiliate', github: '1instinct/spree_reffiliate'
5353
gem 'spree_loyalty_points', github: '1instinct/spree-loyalty-points'
5454
# gem 'spree_avatax_official', github: 'spree-contrib/spree_avatax_official', branch: 'spree-4-1-plus'
5555
# gem 'spree_avatax_official', '~> 1.9.0'
5656

57+
gem 'spree_avatar', github: '1instinct/spree_avatar'
5758
gem 'spree_editor', github: 'spree-contrib/spree_editor'
5859

60+
gem 'paperclip', '~> 6.1.0'
61+
5962
# doesn't support spree 4
6063
#gem 'spree_promo_users_codes', github: 'vinsol-spree-contrib/spree_promo_users_codes', branch: 'master'
6164

@@ -71,7 +74,7 @@ group :development, :test do
7174
gem 'prettier'
7275
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
7376
# use to seed the records
74-
gem "factory_bot_rails", "~> 5.1"
77+
gem 'factory_bot_rails', '~> 5.2'
7578
# Use to generate fake data
7679
gem 'faker'
7780
end

Gemfile.lock

Lines changed: 44 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -73,26 +73,23 @@ GIT
7373
ffaker (~> 2.9)
7474
spree_core (= 4.2.5)
7575

76+
GIT
77+
remote: https://github.com/1instinct/spree_avatar.git
78+
revision: 2831457dd9d7bd3e36981f3fae57f978ba579a4f
79+
specs:
80+
spree_avatar (1.1.0)
81+
active_storage_validations
82+
inline_svg
83+
rails (~> 6.0)
84+
spree (~> 4.0, < 6.0)
85+
7686
GIT
7787
remote: https://github.com/1instinct/spree_reffiliate.git
7888
revision: 16a092086888b5d9f60aa8510f5bdddf4eb96953
7989
specs:
8090
spree_reffiliate (3.2.0.alpha)
8191
spree_core (>= 3.2.0, <= 4.3.0.alpha)
8292

83-
GIT
84-
remote: https://github.com/spree-contrib/spree_digital.git
85-
revision: 7cca74ccae17e556c5aa97732cbb3c2d95fbd3ac
86-
branch: fix/spree-4-1-plus
87-
specs:
88-
spree_digital (4.1.0)
89-
deface (~> 1.0)
90-
spree_api (>= 3.1.0, < 5.0)
91-
spree_backend (>= 3.1.0, < 5.0)
92-
spree_core (>= 3.1.0, < 5.0)
93-
spree_extension
94-
spree_frontend (>= 3.1.0, < 5.0)
95-
9693
GIT
9794
remote: https://github.com/spree-contrib/spree_editor.git
9895
revision: 1e79e8c1150e784f76ef2f4e008a8b0e9133bab3
@@ -196,30 +193,30 @@ GEM
196193
io-like (~> 0.4.0)
197194
autoprefixer-rails (10.4.21.0)
198195
execjs (~> 2)
199-
awesome_nested_set (3.8.0)
200-
activerecord (>= 4.0.0, < 8.1)
196+
awesome_nested_set (3.9.0)
197+
activerecord (>= 4.0.0, < 8.2)
201198
aws-eventstream (1.4.0)
202-
aws-partitions (1.1194.0)
203-
aws-sdk-core (3.239.2)
199+
aws-partitions (1.1202.0)
200+
aws-sdk-core (3.241.3)
204201
aws-eventstream (~> 1, >= 1.3.0)
205202
aws-partitions (~> 1, >= 1.992.0)
206203
aws-sigv4 (~> 1.9)
207204
base64
208205
bigdecimal
209206
jmespath (~> 1, >= 1.6.1)
210207
logger
211-
aws-sdk-kms (1.118.0)
212-
aws-sdk-core (~> 3, >= 3.239.1)
208+
aws-sdk-kms (1.120.0)
209+
aws-sdk-core (~> 3, >= 3.241.3)
213210
aws-sigv4 (~> 1.5)
214-
aws-sdk-s3 (1.206.0)
215-
aws-sdk-core (~> 3, >= 3.234.0)
211+
aws-sdk-s3 (1.211.0)
212+
aws-sdk-core (~> 3, >= 3.241.3)
216213
aws-sdk-kms (~> 1)
217214
aws-sigv4 (~> 1.5)
218215
aws-sigv4 (1.12.1)
219216
aws-eventstream (~> 1, >= 1.0.2)
220217
base64 (0.3.0)
221-
bcrypt (3.1.20)
222-
bigdecimal (3.3.1)
218+
bcrypt (3.1.21)
219+
bigdecimal (4.0.1)
223220
bindex (0.8.1)
224221
bootsnap (1.8.1)
225222
msgpack (~> 1.0)
@@ -249,6 +246,7 @@ GEM
249246
ckeditor (5.0.0)
250247
orm_adapter (~> 0.5.0)
251248
cldr-plurals-runtime-rb (1.1.0)
249+
climate_control (0.2.0)
252250
coffee-rails (4.2.2)
253251
coffee-script (>= 2.2.0)
254252
railties (>= 4.0.0)
@@ -292,7 +290,7 @@ GEM
292290
faker (3.4.2)
293291
i18n (>= 1.8.11, < 2)
294292
ffaker (2.21.0)
295-
ffi (1.17.2)
293+
ffi (1.17.3)
296294
flatpickr (4.6.13.1)
297295
friendly_id (5.6.0)
298296
activerecord (>= 4.0.0)
@@ -308,7 +306,7 @@ GEM
308306
http-accept (1.7.0)
309307
http-cookie (1.1.0)
310308
domain_name (~> 0.5)
311-
i18n (1.14.7)
309+
i18n (1.14.8)
312310
concurrent-ruby (~> 1.0)
313311
image_processing (1.14.0)
314312
mini_magick (>= 4.9.5, < 6)
@@ -346,7 +344,7 @@ GEM
346344
rb-inotify (~> 0.9, >= 0.9.7)
347345
ruby_dep (~> 1.2)
348346
logger (1.7.0)
349-
loofah (2.24.1)
347+
loofah (2.25.0)
350348
crass (~> 1.0.2)
351349
nokogiri (>= 1.12.0)
352350
mail (2.9.0)
@@ -362,6 +360,9 @@ GEM
362360
logger
363361
mime-types-data (~> 3.2025, >= 3.2025.0507)
364362
mime-types-data (3.2025.0924)
363+
mimemagic (0.3.10)
364+
nokogiri (~> 1)
365+
rake
365366
mini_magick (4.13.2)
366367
mini_mime (1.1.5)
367368
mini_portile2 (2.8.9)
@@ -371,7 +372,7 @@ GEM
371372
money (6.19.0)
372373
i18n (>= 0.6.4, <= 2)
373374
msgpack (1.8.0)
374-
net-http (0.8.0)
375+
net-http (0.9.1)
375376
uri (>= 0.11.1)
376377
net-imap (0.3.9)
377378
date
@@ -388,9 +389,15 @@ GEM
388389
mini_portile2 (~> 2.8.2)
389390
racc (~> 1.4)
390391
orm_adapter (0.5.0)
392+
paperclip (6.1.0)
393+
activemodel (>= 4.2.0)
394+
activesupport (>= 4.2.0)
395+
mime-types
396+
mimemagic (~> 0.3.0)
397+
terrapin (~> 0.6.0)
391398
paranoia (2.6.4)
392399
activerecord (>= 5.1, < 7.2)
393-
pg (1.6.2)
400+
pg (1.6.3)
394401
polyglot (0.3.5)
395402
popper_js (1.16.1)
396403
premailer (1.22.0)
@@ -539,9 +546,11 @@ GEM
539546
rbs
540547
syntax_tree (>= 2.0.1)
541548
temple (0.10.4)
542-
thor (1.4.0)
543-
tilt (2.6.1)
544-
timeout (0.5.0)
549+
terrapin (0.6.0)
550+
climate_control (>= 0.0.3, < 1.0)
551+
thor (1.5.0)
552+
tilt (2.7.0)
553+
timeout (0.6.0)
545554
tinymce-rails (4.2.8)
546555
railties (>= 3.1.1)
547556
turbolinks (5.2.1)
@@ -577,18 +586,19 @@ PLATFORMS
577586
ruby
578587

579588
DEPENDENCIES
580-
aws-sdk-s3
589+
aws-sdk-s3 (~> 1.96)
581590
bootsnap (~> 1.8.1)
582591
byebug
583592
capybara (>= 2.15)
584593
chromedriver-helper
585594
coffee-rails (~> 4.2)
586595
dotenv-rails
587-
factory_bot_rails (~> 5.1)
596+
factory_bot_rails (~> 5.2)
588597
faker
589598
jbuilder (~> 2.5)
590599
listen (>= 3.0.5, < 3.2)
591600
net-http
601+
paperclip (~> 6.1.0)
592602
pg
593603
prettier
594604
puma (~> 4.3)
@@ -600,7 +610,7 @@ DEPENDENCIES
600610
selenium-webdriver
601611
spree!
602612
spree_auth_devise (~> 4.3)
603-
spree_digital!
613+
spree_avatar!
604614
spree_editor!
605615
spree_gateway (~> 3.9)
606616
spree_loyalty_points!

app/assets/images/background.jpg

163 KB
Loading

app/assets/stylesheets/spree/backend/login.scss

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
11
$primary: #2196F3;
22

3+
body {
4+
margin: 0 !important;
5+
background: black;
6+
overflow: hidden;
7+
}
8+
39
.divclass {
410
font-family: "Open Sans", sans-serif;
511
height: 100vh;
6-
background-image: url("https://i.imgur.com/HgflTDf.jpg") 50% fixed;
12+
// background-image: url(asset-path('background.jpg', image)) 50% fixed;
713
background-size: cover;
814
}
915

@@ -27,7 +33,7 @@ $primary: #2196F3;
2733
background: rgba(darken(#2196F3,40%), 0.85);
2834
font-family: "Open Sans", sans-serif;
2935
height: 100vh;
30-
background-image: url("https://i.imgur.com/HgflTDf.jpg");
36+
// background-image: url(asset-path('background.jpg', image));
3137
background-size: cover;
3238
}
3339

app/controllers/spree/admin/homepage_sections_controller.rb

Lines changed: 35 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@ class HomepageSectionsController < Spree::Admin::BaseController
66
def index
77
@q = HomepageSection.ransack(params[:q])
88
@collection = @q.result
9-
.order(position: :asc)
9+
.ordered
1010
.page(params[:page])
1111
.per(params[:per_page] || 25)
12+
@min_position = HomepageSection.minimum(:position) || 0
13+
@max_position = HomepageSection.maximum(:position) || 0
1214
end
1315

1416
def new
@@ -64,16 +66,20 @@ def destroy
6466
def move_up
6567
@homepage_section = HomepageSection.find(params[:id])
6668
previous_section = HomepageSection.where('position < ?', @homepage_section.position)
67-
.order(position: :desc)
68-
.first
69+
.ordered
70+
.last
6971

7072
if previous_section
71-
HomepageSection.transaction do
72-
temp_position = @homepage_section.position
73-
@homepage_section.update_column(:position, previous_section.position)
74-
previous_section.update_column(:position, temp_position)
73+
ActiveRecord::Base.transaction do
74+
current_pos = @homepage_section.position
75+
prev_pos = previous_section.position
76+
77+
@homepage_section.update_attribute(:position, prev_pos)
78+
previous_section.update_attribute(:position, current_pos)
7579
end
76-
flash[:success] = Spree.t('homepage_section.moved_up')
80+
flash[:success] = 'Section moved up successfully'
81+
else
82+
flash[:error] = 'Cannot move section up'
7783
end
7884

7985
redirect_to admin_homepage_sections_path
@@ -83,21 +89,36 @@ def move_up
8389
def move_down
8490
@homepage_section = HomepageSection.find(params[:id])
8591
next_section = HomepageSection.where('position > ?', @homepage_section.position)
86-
.order(position: :asc)
92+
.ordered
8793
.first
8894

8995
if next_section
90-
HomepageSection.transaction do
91-
temp_position = @homepage_section.position
92-
@homepage_section.update_column(:position, next_section.position)
93-
next_section.update_column(:position, temp_position)
96+
ActiveRecord::Base.transaction do
97+
current_pos = @homepage_section.position
98+
next_pos = next_section.position
99+
100+
@homepage_section.update_attribute(:position, next_pos)
101+
next_section.update_attribute(:position, current_pos)
94102
end
95-
flash[:success] = Spree.t('homepage_section.moved_down')
103+
flash[:success] = 'Section moved down successfully'
104+
else
105+
flash[:error] = 'Cannot move section down'
96106
end
97107

98108
redirect_to admin_homepage_sections_path
99109
end
100110

111+
# Toggle visibility
112+
def toggle_visibility
113+
@homepage_section = HomepageSection.find(params[:id])
114+
@homepage_section.update(is_visible: !@homepage_section.is_visible)
115+
116+
status = @homepage_section.is_visible ? 'visible' : 'hidden'
117+
flash[:success] = "Section is now #{status}"
118+
119+
redirect_to admin_homepage_sections_path
120+
end
121+
101122
private
102123

103124
def set_homepage_section

app/controllers/spree/api/v1/menu_items_controller.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ def menu_item_detail(id)
199199
return menu_item
200200
end
201201
def fetch_childrens(menu_item)
202-
childrens = MenuItem.all.where(id: menu_item.child_chain.pluck(:id))
203-
return childrens
202+
# Only fetch direct children, not all descendants
203+
menu_item.childrens
204204
end
205205
end

0 commit comments

Comments
 (0)