Skip to content

Commit 40289b3

Browse files
authored
Add ?landing=true option for more focused top/bottom nav (codecombat#6660)
* Add ?landing=true option for more focused top/bottom nav * Fix compile-static-templates for landing page query variable context
1 parent 5ed3037 commit 40289b3

File tree

7 files changed

+172
-154
lines changed

7 files changed

+172
-154
lines changed

app/components/common/Navigation.coco.vue

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
OZARIA_CHINA,
77
isOldBrowser,
88
isCodeCombat,
9-
isOzaria
9+
isOzaria,
10+
getQueryVariable
1011
} from 'core/utils'
1112
1213
/**
@@ -55,6 +56,10 @@
5556
return `${document.location.protocol}//${document.location.host}`
5657
.replace(CODECOMBAT, OZARIA)
5758
.replace(CODECOMBAT_CHINA, OZARIA_CHINA)
59+
},
60+
61+
hideNav () {
62+
return getQueryVariable('landing', false)
5863
}
5964
},
6065
@@ -144,7 +149,7 @@
144149
img.code-ninjas-logo(src="/images/pages/base/code-ninjas-logo-right.png" alt="Code Ninjas logo")
145150
a.navbar-brand(v-else-if="me.showChinaResourceInfo()" href="/home")
146151
img#logo-img(src="/images/pages/base/logo-en+cn.png" alt="CodeCombat logo")
147-
a.navbar-brand(v-else href="/home")
152+
a.navbar-brand(v-else :href="hideNav ? '#' : '/home'")
148153
img#logo-img(src="/images/pages/base/logo.png" alt="CodeCombat logo")
149154

150155
.navbar-browser-recommendation.navbar-header(v-if="isOldBrowser")
@@ -154,7 +159,7 @@
154159

155160
#navbar-collapse.collapse.navbar-collapse
156161
.nav-spacer
157-
ul.nav.navbar-nav(v-if="!me.hideTopRightNav()")
162+
ul.nav.navbar-nav(v-if="!me.hideTopRightNav() && !hideNav")
158163
template(v-if="me.showChinaResourceInfo()")
159164
li
160165
a.text-p(href="https://blog.koudashijie.com") {{ $t('nav.blog') }}
@@ -264,7 +269,7 @@
264269
li
265270
a.account-dropdown-item#logout-button {{ $t('login.log_out') }}
266271

267-
ul.nav.navbar-nav.text-p.login-buttons(v-if="me.isAnonymous()")
272+
ul.nav.navbar-nav.text-p.login-buttons(v-if="me.isAnonymous() && !hideNav")
268273
li
269274
a#create-account-link.signup-button(data-event-action="Header Sign Up CTA") {{ $t('signup.sign_up') }}
270275
li
@@ -412,6 +417,7 @@
412417
.language-dropdown {
413418
max-height: 60vh;
414419
overflow-y: auto;
420+
left: -55px;
415421
}
416422
417423
#navbar-collapse {

app/components/common/Navigation.ozar.vue

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
OZARIA_CHINA,
77
isOldBrowser,
88
isCodeCombat,
9-
isOzaria
9+
isOzaria,
10+
getQueryVariable
1011
} from 'core/utils'
1112
1213
/**
@@ -55,6 +56,10 @@
5556
return `${document.location.protocol}//${document.location.host}`
5657
.replace(CODECOMBAT, OZARIA)
5758
.replace(CODECOMBAT_CHINA, OZARIA_CHINA)
59+
},
60+
61+
hideNav () {
62+
return getQueryVariable('landing', false)
5863
}
5964
},
6065
@@ -144,7 +149,7 @@
144149
img.code-ninjas-logo(src="/images/pages/base/code-ninjas-logo-right.png" alt="Code Ninjas logo")
145150
a.navbar-brand(v-else-if="me.showChinaResourceInfo()" href="/home")
146151
img#logo-img(src="/images/pages/base/logo-en+cn.png" alt="CodeCombat logo")
147-
a.navbar-brand(v-else href="/home")
152+
a.navbar-brand(v-else :href="hideNav ? '#' : '/home'")
148153
img#logo-img(src="/images/pages/base/logo.png" alt="CodeCombat logo")
149154

150155
.navbar-browser-recommendation.navbar-header(v-if="isOldBrowser")
@@ -154,7 +159,7 @@
154159

155160
#navbar-collapse.collapse.navbar-collapse
156161
.nav-spacer
157-
ul.nav.navbar-nav(v-if="!me.hideTopRightNav()")
162+
ul.nav.navbar-nav(v-if="!me.hideTopRightNav() && !hideNav")
158163
template(v-if="me.showChinaResourceInfo()")
159164
li
160165
a.text-p(href="https://blog.koudashijie.com") {{ $t('nav.blog') }}
@@ -260,7 +265,7 @@
260265
li
261266
a.account-dropdown-item#logout-button {{ $t('login.log_out') }}
262267

263-
ul.nav.navbar-nav.text-p.login-buttons(v-if="me.isAnonymous()")
268+
ul.nav.navbar-nav.text-p.login-buttons(v-if="me.isAnonymous() && !hideNav")
264269
li
265270
a#create-account-link.signup-button(data-event-action="Header Sign Up CTA") {{ $t('signup.sign_up') }}
266271
li
@@ -408,6 +413,7 @@
408413
.language-dropdown {
409414
max-height: 60vh;
410415
overflow-y: auto;
416+
left: -55px;
411417
}
412418
413419
#navbar-collapse {

app/templates/base-flat.coco.pug

Lines changed: 105 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -41,116 +41,117 @@
4141
block footer
4242
#footer.small
4343
if !me.hideFooter()
44-
.container
45-
.row
46-
if me.showChinaResourceInfo()
47-
.col-lg-12
48-
.row
49-
.col-lg-3
50-
h3(data-i18n="nav.general")
51-
ul.list-unstyled
52-
li
53-
a(href="/about", data-i18n="nav.about")
54-
//li
55-
// a(href="/about#careers", data-i18n="nav.careers")
56-
if !me.isStudent()
44+
if !getQueryVariable('landing', false)
45+
.container
46+
.row
47+
if me.showChinaResourceInfo()
48+
.col-lg-12
49+
.row
50+
.col-lg-3
51+
h3(data-i18n="nav.general")
52+
ul.list-unstyled
53+
li
54+
a(href="/about", data-i18n="nav.about")
55+
//li
56+
// a(href="/about#careers", data-i18n="nav.careers")
57+
if !me.isStudent()
58+
li
59+
a(href="/contact-cn", data-i18n="nav.contact")
60+
li
61+
a(href="/parents", data-i18n="nav.parent")
62+
li
63+
a(href="http://blog.koudashijie.com/", data-i18n="nav.blog")
5764
li
58-
a(href="/contact-cn", data-i18n="nav.contact")
59-
li
60-
a(href="/parents", data-i18n="nav.parent")
61-
li
62-
a(href="http://blog.koudashijie.com/", data-i18n="nav.blog")
63-
li
64-
a(href="https://beian.miit.gov.cn/") 京ICP备19012263号
65-
.col-lg-3
66-
if !me.isStudent()
67-
h3(data-i18n="nav.educators")
65+
a(href="https://beian.miit.gov.cn/") 京ICP备19012263号
66+
.col-lg-3
67+
if !me.isStudent()
68+
h3(data-i18n="nav.educators")
69+
ul.list-unstyled
70+
li
71+
- var faqURL = "/teachers/resources/faq";
72+
- if (me.get('preferredLanguage') == 'nl-NL' || me.get('preferredLanguage') == 'nl-BE')
73+
- faqURL = "/teachers/resources/faq-nl-NL";
74+
- if (me.get('preferredLanguage') == 'he')
75+
- faqURL = "/teachers/resources/faq-HE";
76+
- if (me.get('preferredLanguage') == 'pt-BR' || me.get('preferredLanguage') == 'pt-PT')
77+
- faqURL = "/teachers/resources/faq-pt-BR";
78+
- if (me.get('preferredLanguage') == 'zh-HANS' || me.get('preferredLanguage') == 'zh-HANT')
79+
- faqURL = "/teachers/resources/faq-zh-HANS";
80+
a(href=faqURL, data-i18n="teacher.educator_faq")
81+
li
82+
a(href="/teachers/resources", data-i18n="nav.resource_hub")
83+
li
84+
a(href="https://ozaria.com", data-i18n="new_home.try_ozaria")
85+
li
86+
a(href="/teachers/classes", data-i18n="nav.my_classrooms")
87+
.col-lg-3
88+
h3 相关链接
6889
ul.list-unstyled
6990
li
70-
- var faqURL = "/teachers/resources/faq";
71-
- if (me.get('preferredLanguage') == 'nl-NL' || me.get('preferredLanguage') == 'nl-BE')
72-
- faqURL = "/teachers/resources/faq-nl-NL";
73-
- if (me.get('preferredLanguage') == 'he')
74-
- faqURL = "/teachers/resources/faq-HE";
75-
- if (me.get('preferredLanguage') == 'pt-BR' || me.get('preferredLanguage') == 'pt-PT')
76-
- faqURL = "/teachers/resources/faq-pt-BR";
77-
- if (me.get('preferredLanguage') == 'zh-HANS' || me.get('preferredLanguage') == 'zh-HANT')
78-
- faqURL = "/teachers/resources/faq-zh-HANS";
79-
a(href=faqURL, data-i18n="teacher.educator_faq")
80-
li
81-
a(href="/teachers/resources", data-i18n="nav.resource_hub")
82-
li
83-
a(href="https://ozaria.com", data-i18n="new_home.try_ozaria")
84-
li
85-
a(href="/teachers/classes", data-i18n="nav.my_classrooms")
86-
.col-lg-3
87-
h3 相关链接
88-
ul.list-unstyled
89-
li
90-
a(href="https://codecombat.163.com") 极客战记(个人版)
91-
li
92-
a(href="https://aojiarui.com") 奥佳睿 - CodeCombat原创新作
93-
li
94-
a(href="https://codecombat.com") CodeCombat全球官网
91+
a(href="https://codecombat.163.com") 极客战记(个人版)
92+
li
93+
a(href="https://aojiarui.com") 奥佳睿 - CodeCombat原创新作
94+
li
95+
a(href="https://codecombat.com") CodeCombat全球官网
9596

96-
.col-lg-3
97-
h3(data-i18n="nav.follow_us")
98-
img.mpqr(src="https://assets.koudashijie.com/images/mpqrcode.jpeg")
99-
else
100-
.col-lg-12
101-
.row
102-
.col-lg-3
103-
h3(data-i18n="nav.general")
104-
ul.list-unstyled
105-
li
106-
a(href="/about", data-i18n="nav.about")
107-
li
108-
- var faqURL = "https://codecombat.zendesk.com/hc/en-us"
109-
a(href=faqURL, data-i18n="contact.faq", target="_blank")
110-
li
111-
a(href="/about#careers", data-i18n="nav.careers")
112-
li
113-
a.contact-modal(tabindex=-1, data-i18n="nav.contact")
114-
li
115-
a(href="/parents", data-i18n="nav.parent")
116-
li
117-
a(href="https://blog.codecombat.com/", data-i18n="nav.blog", target="_blank")
118-
.col-lg-3
119-
if !me.isStudent()
120-
h3(data-i18n="nav.educators")
97+
.col-lg-3
98+
h3(data-i18n="nav.follow_us")
99+
img.mpqr(src="https://assets.koudashijie.com/images/mpqrcode.jpeg")
100+
else
101+
.col-lg-12
102+
.row
103+
.col-lg-3
104+
h3(data-i18n="nav.general")
121105
ul.list-unstyled
122106
li
123-
a(href="/impact", data-i18n="nav.impact")
124-
li
125-
a(href="/teachers/resources", data-i18n="nav.resource_hub")
126-
li
127-
a(href="/teachers/classes", data-i18n="nav.my_classrooms")
128-
li
129-
a(href="https://ozaria.com", data-i18n="new_home.try_ozaria")
130-
.col-lg-3
131-
h3(data-i18n="nav.get_involved")
132-
ul.list-unstyled
133-
li
134-
a(href="https://github.com/codecombat/codecombat") GitHub
135-
li
136-
a(href='/community', data-i18n="nav.community")
137-
li
138-
a(href="/contribute", data-i18n="nav.contribute")
139-
li
140-
a(href="/league", data-i18n="game_menu.multiplayer_tab")
141-
if !me.isStudent() && me.showForumLink()
142-
li
143-
a(href=view.forumLink(), data-i18n="nav.forum", target="_blank")
144-
.col-lg-3
145-
if !me.showingStaticPagesWhileLoading() && me.useSocialSignOn()
146-
h3(data-i18n="nav.follow_us")
147-
div.social-buttons
148-
a(href="https://www.youtube.com/channel/UCEl7Rs_jtl3hcbnp0xZclQA", target="_blank")
149-
img(src="/images/pages/base/youtube_symbol_button.png", width="40")
150-
a(href="https://twitter.com/codecombat", target="_blank")
151-
img(src="/images/pages/base/twitter_logo_btn.png", width="40")
152-
a(href="https://www.facebook.com/codecombat", target="_blank")
153-
img(src="/images/pages/base/facebook_logo_btn.png", width="40")
107+
a(href="/about", data-i18n="nav.about")
108+
li
109+
- var faqURL = "https://codecombat.zendesk.com/hc/en-us"
110+
a(href=faqURL, data-i18n="contact.faq", target="_blank")
111+
li
112+
a(href="/about#careers", data-i18n="nav.careers")
113+
li
114+
a.contact-modal(tabindex=-1, data-i18n="nav.contact")
115+
li
116+
a(href="/parents", data-i18n="nav.parent")
117+
li
118+
a(href="https://blog.codecombat.com/", data-i18n="nav.blog", target="_blank")
119+
.col-lg-3
120+
if !me.isStudent()
121+
h3(data-i18n="nav.educators")
122+
ul.list-unstyled
123+
li
124+
a(href="/impact", data-i18n="nav.impact")
125+
li
126+
a(href="/teachers/resources", data-i18n="nav.resource_hub")
127+
li
128+
a(href="/teachers/classes", data-i18n="nav.my_classrooms")
129+
li
130+
a(href="https://ozaria.com", data-i18n="new_home.try_ozaria")
131+
.col-lg-3
132+
h3(data-i18n="nav.get_involved")
133+
ul.list-unstyled
134+
li
135+
a(href="https://github.com/codecombat/codecombat") GitHub
136+
li
137+
a(href='/community', data-i18n="nav.community")
138+
li
139+
a(href="/contribute", data-i18n="nav.contribute")
140+
li
141+
a(href="/league", data-i18n="game_menu.multiplayer_tab")
142+
if !me.isStudent() && me.showForumLink()
143+
li
144+
a(href=view.forumLink(), data-i18n="nav.forum", target="_blank")
145+
.col-lg-3
146+
if !me.showingStaticPagesWhileLoading() && me.useSocialSignOn()
147+
h3(data-i18n="nav.follow_us")
148+
div.social-buttons
149+
a(href="https://www.youtube.com/channel/UCEl7Rs_jtl3hcbnp0xZclQA", target="_blank")
150+
img(src="/images/pages/base/youtube_symbol_button.png", width="40")
151+
a(href="https://twitter.com/codecombat", target="_blank")
152+
img(src="/images/pages/base/twitter_logo_btn.png", width="40")
153+
a(href="https://www.facebook.com/codecombat", target="_blank")
154+
img(src="/images/pages/base/facebook_logo_btn.png", width="40")
154155

155156
#final-footer(dir="ltr")
156157
img(src="/images/pages/base/logo.png" alt="CodeCombat")

0 commit comments

Comments
 (0)