Skip to content

Commit 7a02838

Browse files
Frankie34yechs
authored andcommitted
Translate 1.0
1 parent 2580d01 commit 7a02838

23 files changed

Lines changed: 557 additions & 173 deletions

File tree

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ On the Settings tab, admins can easily control their event application timeline
6666
| ------------------------------------------- | ------- |
6767
| [Node.js](http://nodejs.org) | `10.13+` |
6868
| [MongoDB](www.mongodb.com/) | `4.0+` |
69+
| gulp| `3.9.1`|
6970

7071
Run the following commands to check the current installed versions:
7172

@@ -98,6 +99,8 @@ git update-index --assume-unchanged .env
9899

99100
Edit the configuration file in `.env` for your setup, and then run the application:
100101
```bash
102+
npm install --global gulp-cli
103+
npm install --save-dev gulp@3.9.1
101104
gulp server
102105
```
103106

app/client/index.html

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<base href="/">
55
<meta charset="UTF-8">
66
<meta name="viewport" content="width=device-width, initial-scale=1">
7-
<title> HackMIT 2015 </title>
7+
<title> THE Hack 2019 </title>
88

99
<!-- jQuery -->
1010
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
@@ -13,9 +13,23 @@
1313
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css" />
1414
<script src="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.js"></script>
1515

16+
<!-- Angular stuff -->
17+
<script src="plugins/angular/angular.min.js"></script>
18+
<script src="plugins/angular-ui-router/release/angular-ui-router.min.js"></script>
19+
1620
<!-- Angular app -->
1721
<script src="./build/app.js"></script>
1822

23+
<!-- Sweet Alert -->
24+
<script src="plugins/sweetalert/dist/sweetalert.min.js"></script>
25+
<link rel="stylesheet" type="text/css" href="plugins/sweetalert/dist/sweetalert.css">
26+
27+
<!-- Moment -->
28+
<script src="plugins/moment/min/moment.min.js"></script>
29+
30+
<!-- showdown! -->
31+
<script src="plugins/showdown/dist/showdown.min.js"></script>
32+
1933
<!-- Custom styling -->
2034
<link rel="stylesheet" href="./stylesheets/normalize.css">
2135
<link rel="stylesheet" href="./build/site.css">

app/client/src/constants.js

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,21 @@ const angular = require('angular');
22

33
angular.module('reg')
44
.constant('EVENT_INFO', {
5-
NAME: 'HackMIT 2015',
5+
NAME: 'THE Hack 2019',
66
})
77
.constant('DASHBOARD', {
8-
UNVERIFIED: 'You should have received an email asking you verify your email. Click the link in the email and you can start your application!',
9-
INCOMPLETE_TITLE: 'You still need to complete your application!',
10-
INCOMPLETE: 'If you do not complete your application before the [APP_DEADLINE], you will not be considered for the admissions lottery!',
11-
SUBMITTED_TITLE: 'Your application has been submitted!',
12-
SUBMITTED: 'Feel free to edit it at any time. However, once registration is closed, you will not be able to edit it any further.\nAdmissions will be determined by a random lottery. Please make sure your information is accurate before registration is closed!',
13-
CLOSED_AND_INCOMPLETE_TITLE: 'Unfortunately, registration has closed, and the lottery process has begun.',
14-
CLOSED_AND_INCOMPLETE: 'Because you have not completed your profile in time, you will not be eligible for the lottery process.',
15-
ADMITTED_AND_CAN_CONFIRM_TITLE: 'You must confirm by [CONFIRM_DEADLINE].',
16-
ADMITTED_AND_CANNOT_CONFIRM_TITLE: 'Your confirmation deadline of [CONFIRM_DEADLINE] has passed.',
17-
ADMITTED_AND_CANNOT_CONFIRM: 'Although you were accepted, you did not complete your confirmation in time.\nUnfortunately, this means that you will not be able to attend the event, as we must begin to accept other applicants on the waitlist.\nWe hope to see you again next year!',
18-
CONFIRMED_NOT_PAST_TITLE: 'You can edit your confirmation information until [CONFIRM_DEADLINE]',
19-
DECLINED: 'We\'re sorry to hear that you won\'t be able to make it to HackMIT 2015! :(\nMaybe next year! We hope you see you again soon.',
8+
UNVERIFIED: '我们已经向你的注册邮箱发送了验证邮件。完成验证后,申请通道将开放。',
9+
INCOMPLETE_TITLE: '你的申请仍未完成',
10+
INCOMPLETE: '如果你在 [APP_DEADLINE] 前无法完成申请,你将无法被组委会审查校园大使资格。请尽快完成你的申请。',
11+
SUBMITTED_TITLE: '你的申请已提交',
12+
SUBMITTED: '我们欢迎你随时修改你的申请。但是,一旦申请结束,你将无法进一步编辑你的申请内容。\n 我们的审核将完全基于你提交的信息,请确保你提交的所有信息真实有效。',
13+
CLOSED_AND_INCOMPLETE_TITLE: '很抱歉,申请已经结束。',
14+
CLOSED_AND_INCOMPLETE: '由于你未及时完成信息填写,你无法被组委会审查校园大使资格',
15+
ADMITTED_AND_CAN_CONFIRM_TITLE: '请在 [CONFIRM_DEADLINE] 前确认参赛',
16+
ADMITTED_AND_CANNOT_CONFIRM_TITLE: '你的校园大使邀请已经失效',
17+
ADMITTED_AND_CANNOT_CONFIRM: '虽然我们为你提供了校园大使资格,但是你并没有在校园大使确认截止日期前确认。\n很遗憾,你的邀请已经提供给了等待名单上的其他申请者。\n希望在明年的活动宣传中见到你!',
18+
CONFIRMED_NOT_PAST_TITLE: '你可以在 [CONFIRM_DEADLINE] 前修改你的确认信息。',
19+
DECLINED: '很遗憾,我们今年无法邀请你参加我们的校园大使计划 :(\n希望在明年的活动中见到你!',
2020
})
2121
.constant('TEAM',{
2222
NO_TEAM_REG_CLOSED: 'Unfortunately, it\'s too late to enter the lottery with a team.\nHowever, you can still form teams on your own before or during the event!',

app/client/stylesheets/_application.scss

Lines changed: 228 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,232 @@
44
text-transform: none;
55
letter-spacing: 0;
66
}
7+
8+
body {
9+
font-family: 'Lato';
10+
}
11+
12+
.darkgrey-background {
13+
background-color: #252525;
14+
}
15+
16+
.horizontal-center {
17+
text-align: center;
18+
}
19+
20+
.navbar-brand-logo {
21+
padding-top: 5px;
22+
padding-bottom: 5px;
23+
}
24+
25+
.navbar-brand-logo img {
26+
width: 40px;
27+
}
28+
29+
.navbar-brand-text {
30+
padding-top: 15px;
31+
padding-bottom: 15px;
32+
margin-left: -15px;
33+
line-height: 20px;
34+
}
35+
36+
.intro-container {
37+
min-height: 100vh;
38+
position: relative;
39+
}
40+
41+
.hackinit-logo {
42+
width: 450px;
43+
max-width: 80%;
44+
}
45+
46+
.hackinit-logo-col {
47+
padding-top: 50px;
48+
position: absolute;
49+
top: 50%;
50+
transform: translateY(-50%);
51+
}
52+
53+
#hackinit-horizontal {
54+
display: inline;
55+
}
56+
57+
#hackinit-vertical {
58+
display: none;
59+
}
60+
61+
.description-container {
62+
margin-top: 20px;
63+
}
64+
65+
.description h3 {
66+
margin-bottom: 25px;
67+
}
68+
69+
.description p {
70+
margin-bottom: 25px;
71+
font-size: 20px;
72+
}
73+
74+
.description p a, .description p a:hover {
75+
text-decoration: none;
76+
}
77+
78+
.reasons h4 {
79+
margin-bottom: 20px;
80+
}
81+
82+
.reasons .list-group .list-group-item {
83+
font-size: 14px;
84+
border: none;
85+
padding-left: 0;
86+
}
87+
88+
.reasons .list-group .list-group-item .fa.fa-check-square-o {
89+
color: #f36000;
90+
}
91+
92+
.scroll-down-row {
93+
position: absolute;
94+
bottom: 0;
95+
left: 0;
96+
right: 0;
97+
width: 100%;
98+
margin: 0 auto;
99+
}
100+
101+
.scroll-down-link, .scroll-down-link:hover, .scroll-down-link:focus {
102+
color: #333;
103+
}
104+
105+
#form {
106+
padding-top: 60px;
107+
padding-bottom: 50px;
108+
}
109+
110+
.form-field {
111+
padding-top: 10px;
112+
padding-bottom: 10px;
113+
}
114+
115+
.select-box {
116+
-webkit-appearance: none;
117+
-moz-appearance: none;
118+
background-position: right 50%;
119+
background-repeat: no-repeat;
120+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAMCAYAAABSgIzaAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDZFNDEwNjlGNzFEMTFFMkJEQ0VDRTM1N0RCMzMyMkIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDZFNDEwNkFGNzFEMTFFMkJEQ0VDRTM1N0RCMzMyMkIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NkU0MTA2N0Y3MUQxMUUyQkRDRUNFMzU3REIzMzIyQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0NkU0MTA2OEY3MUQxMUUyQkRDRUNFMzU3REIzMzIyQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuGsgwQAAAA5SURBVHjaYvz//z8DOYCJgUxAf42MQIzTk0D/M+KzkRGPoQSdykiKJrBGpOhgJFYTWNEIiEeAAAMAzNENEOH+do8AAAAASUVORK5CYII=);
121+
padding: .5em;
122+
padding-right: 1.5em;
123+
}
124+
125+
.hide {
126+
display: none;
127+
}
128+
129+
.left-half {
130+
padding-right: 0;
131+
}
132+
133+
.right-half {
134+
padding-left: 0;
135+
margin-left: -1px;
136+
}
137+
138+
.right-half input {
139+
border-top-right-radius: 4px !important;
140+
border-bottom-right-radius: 4px !important;
141+
}
142+
143+
.text-area {
144+
width: 100%;
145+
resize: none;
146+
}
147+
148+
.submit-btn-col {
149+
padding-top: 20px;
150+
}
151+
152+
.intl-tel-input {
153+
display: table-cell;
154+
}
155+
156+
.intl-tel-input .selected-flag {
157+
z-index: 4;
158+
outline: none;
159+
}
160+
161+
.intl-tel-input .iti-flag .arrow {
162+
border: none;
163+
}
164+
165+
#cellphone-input {
166+
border-top-left-radius: 0;
167+
border-bottom-left-radius: 0;
168+
border-top-right-radius: 4px;
169+
border-bottom-right-radius: 4px;
170+
}
171+
172+
#file:focus {
173+
outline: none;
174+
}
175+
176+
.left-half.has-error~.right-half input {
177+
border-left-color: #a94442;
178+
}
179+
180+
.alertify-logs {
181+
z-index: 1000;
182+
}
183+
184+
.footer {
185+
color: #888;
186+
font-size: 15px;
187+
padding-top: 30px;
188+
padding-bottom: 30px;
189+
}
190+
191+
.footer p {
192+
margin-bottom: 5px;
193+
}
194+
195+
.footer p a, .footer p a:hover {
196+
color: white;
197+
text-decoration: none;
198+
}
199+
200+
@media only screen and (max-width: 991px) {
201+
.hackinit-logo-col {
202+
padding-top: 75px;
203+
position: initial;
204+
top: initial;
205+
transform: initial;
206+
}
207+
208+
.description {
209+
margin-bottom: 10px;
210+
}
211+
212+
.reasons .list-group {
213+
margin-bottom: 70px;
214+
}
215+
216+
.reasons .list-group .list-group-item {
217+
font-size: 16px;
218+
}
219+
}
220+
221+
@media only screen and (max-width: 499px) {
222+
.description-container {
223+
margin-top: 0;
224+
}
225+
}
226+
227+
input:-webkit-autofill,
228+
input:-webkit-autofill:hover,
229+
input:-webkit-autofill:focus,
230+
input:-webkit-autofill:active {
231+
-webkit-box-shadow: 0 0 0px 1000px white inset;
232+
transition: background-color 9999s ease-in-out 9999s;
233+
}
234+
7235
}

app/client/stylesheets/_branding.scss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ $tertiary: #4c82cc;
1212
* login-bg: image for login splash page
1313
*/
1414

15-
$login-bg: url('https://s3.amazonaws.com/hackmit-assets/tintedphoto_1920_1080_low.jpg');
15+
$login-bg: url('https://s3.cn-north-1.amazonaws.com.cn/thehack/web-assets/img/hackinit/quill/bg.png');

app/client/stylesheets/_sidebar.scss

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@
66
width: $sidebar-width;
77
z-index: 999;
88
overflow: auto;
9-
9+
img {
10+
max-width:100%;
11+
max-height:100%;
12+
}
1013
@include transition-duration($sidebar-transition-time);
1114

1215
.item {
@@ -79,7 +82,10 @@
7982
@media only screen and (max-width: 768px) {
8083
#sidebar {
8184
@include transform(translate3d(-$sidebar-width, 0, 0));
82-
85+
.tab img {
86+
max-width:100%;
87+
max-height:100%;
88+
}
8389
// When the sidebar is open
8490
&.open {
8591
// Transform the sidebar to original position
@@ -100,6 +106,14 @@
100106
opacity: 1;
101107
@include transform(translate3d(0,0,0));
102108
padding: 12px;
109+
110+
img {
111+
max-width:100%;
112+
max-height:100%;
113+
}
114+
}
115+
.note {
116+
display: none;
103117
}
104118
}
105119
}

0 commit comments

Comments
 (0)