jekyll-theme-chirpy-customized-upe 3.2.0 → 4.0.0.pre.beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +14 -9
- data/_includes/sidebar.html +47 -13
- data/_layouts/default.html +8 -1
- data/_layouts/forgot.html +13 -10
- data/_layouts/login.html +18 -17
- metadata +11 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 98b52776934d2e7b8ba8f9e15d8b57ec5d9e03058d3feff5a0e4357c2a6cf80d
|
4
|
+
data.tar.gz: b0c36d51689850d4cf6af2144caff1bafe1c0433956f922222efbad4b4b0f17c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8cd3d7d563f7e7108ae830c0f77b825deb446b8466af9bafeef1191f0b63ac30f2c0622ef726ec4a99dc290a53c3d7d540587e1de2313ea7ed8a3a7c46b73f0e
|
7
|
+
data.tar.gz: 8dd8ed3ffaedb4f8f817505e548410b0d5693569496348f672795ba8837151c524cbe9629a7fc60cbdddf67803dcc80306c4a3fab3e2fa5f7f5879fec6c467b1
|
data/README.md
CHANGED
@@ -3,13 +3,19 @@
|
|
3
3
|
[![Gem Version](https://img.shields.io/gem/v/jekyll-theme-chirpy-customized-upe)][gem]
|
4
4
|
[![GitHub license](https://img.shields.io/github/license/cotes2020/chirpy-starter.svg?color=blue)][mit]
|
5
5
|
|
6
|
-
*Derived from Chirpy theme*
|
6
|
+
*Derived from [Chirpy][chirpy] theme*
|
7
|
+
|
8
|
+
## Why do I need this customization?
|
9
|
+
|
10
|
+
While using the Chirpy theme, I have noticed some functionalities that are different from what I'm accustomed to and some functionalities that are still missing. These include implementing blog login access (the current repository should be set to private or deployed to my own server), enhancing the Mathjax plugin, and changing the UI style, among others. Additionally, this serves as a challenge to test my frontend coding skills.
|
11
|
+
|
12
|
+
> The next steps are similar to the Chirpy documentation
|
7
13
|
|
8
14
|
## Installation
|
9
15
|
|
10
16
|
### Creating a New URL
|
11
17
|
|
12
|
-
Sign in to GitHub and browse to [**unpublished-posts-enhancement**](https://github.com/Jo-CRuiSe/unpublished-posts-enhancement), click the button <kbd>Use this template</kbd> > <kbd>Create a new repository</kbd>, and name the new repository to what you like which represents your unpulished posts pages URL.
|
18
|
+
Sign in to GitHub and browse to [**unpublished-posts-enhancement**](https://github.com/Jo-CRuiSe/unpublished-posts-enhancement), click the button <kbd>[Use this template][use-template]</kbd> > <kbd>Create a new repository</kbd>, and name the new repository to what you like which represents your unpulished posts pages URL.
|
13
19
|
|
14
20
|
### Installing Dependencies
|
15
21
|
|
@@ -31,7 +37,7 @@ After a few seconds, the local service will be published at _<http://127.0.0.1:4
|
|
31
37
|
|
32
38
|
## Deployment
|
33
39
|
|
34
|
-
Before the deployment begins, check out the file `_config.yml`
|
40
|
+
Before the deployment begins, check out the file `_config.yml`and make sure the `url` is configured correctly. Remember to change the `baseurl` to your project name that starts with a slash, e.g, `/project-name`.
|
35
41
|
|
36
42
|
Now you can choose _ONE_ of the following methods to deploy your Jekyll site.
|
37
43
|
|
@@ -40,7 +46,7 @@ Now you can choose _ONE_ of the following methods to deploy your Jekyll site.
|
|
40
46
|
There are a few things to get ready for.
|
41
47
|
|
42
48
|
- If you're on the GitHub Free plan, keep your site repository public.
|
43
|
-
- If you have committed `Gemfile.lock`
|
49
|
+
- If you have committed `Gemfile.lock` to the repository, and your local machine is not running Linux, go to the root of your site and update the platform list of the lock-file:
|
44
50
|
|
45
51
|
```console
|
46
52
|
$ bundle lock --add-platform x86_64-linux
|
@@ -64,7 +70,7 @@ Go to the root of the source project, and build your site as follows:
|
|
64
70
|
$ JEKYLL_ENV=production bundle exec jekyll b
|
65
71
|
```
|
66
72
|
|
67
|
-
Unless you specified the output path, the generated site files will be placed in folder `_site`
|
73
|
+
Unless you specified the output path, the generated site files will be placed in folder `_site`of the project's root directory. Now you should upload those files to the target server.
|
68
74
|
|
69
75
|
## Configuration
|
70
76
|
|
@@ -75,9 +81,8 @@ Unless you specified the output path, the generated site files will be placed in
|
|
75
81
|
|
76
82
|
This work is published under [MIT][mit] License.
|
77
83
|
|
78
|
-
[gem]: https://rubygems.org/gems/jekyll-theme-chirpy
|
84
|
+
[gem]: https://rubygems.org/gems/jekyll-theme-chirpy-customized-upe
|
79
85
|
[chirpy]: https://github.com/cotes2020/jekyll-theme-chirpy/
|
80
|
-
[use-template]: https://github.com/
|
86
|
+
[use-template]: https://github.com/Jo-CRuiSe/unpublished-posts-enhancement/generate
|
81
87
|
[CD]: https://en.wikipedia.org/wiki/Continuous_deployment
|
82
|
-
[mit]: https://github.com/
|
83
|
-
[https://github.com/Jo-CRuiSe/unpublished-posts-enhancement]: UnpublishedPostsEnhancementforChirpyTheme
|
88
|
+
[mit]: https://github.com/Jo-CRuiSe/jekyll-theme-chirpy-customized-upe/blob/master/LICENSE
|
data/_includes/sidebar.html
CHANGED
@@ -1,17 +1,30 @@
|
|
1
1
|
<!-- The Side Bar -->
|
2
2
|
<style>
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
3
|
+
.info-form {
|
4
|
+
visibility: hidden;
|
5
|
+
opacity: 0;
|
6
|
+
display: flex;
|
7
|
+
justify-content: center;
|
8
|
+
align-items: center;
|
9
|
+
position: fixed;
|
10
|
+
max-width: 400px;
|
11
|
+
top: 50%;
|
12
|
+
left: 50%;
|
13
|
+
z-index: 9999;
|
14
|
+
transform: translate(-50%, -60%);
|
15
|
+
animation: disappear 0.3s ease-in-out;
|
16
|
+
}
|
17
|
+
|
18
|
+
.info-form.active {
|
19
|
+
display: flex;
|
20
|
+
visibility: visible;
|
21
|
+
opacity: 1;
|
22
|
+
transform: translate(-50%, -50%);
|
23
|
+
animation: appear 0.3s ease-in-out;
|
24
|
+
}
|
25
|
+
|
26
|
+
.gal-info {
|
27
|
+
transition: all 0.3s ease-in-out;
|
15
28
|
}
|
16
29
|
|
17
30
|
@keyframes appear {
|
@@ -25,6 +38,18 @@
|
|
25
38
|
}
|
26
39
|
}
|
27
40
|
|
41
|
+
@keyframes disappear {
|
42
|
+
from {
|
43
|
+
opacity: 1;
|
44
|
+
transform: translate(-50%, -50%);
|
45
|
+
}
|
46
|
+
to {
|
47
|
+
opacity: 0;
|
48
|
+
transform: translate(-50%, -60%);
|
49
|
+
}
|
50
|
+
|
51
|
+
}
|
52
|
+
|
28
53
|
.form-changeInfo input[type="text"],
|
29
54
|
input[type="url"]
|
30
55
|
{
|
@@ -68,6 +93,7 @@
|
|
68
93
|
</style>
|
69
94
|
|
70
95
|
{% include lang.html %}
|
96
|
+
{% if site.Leancloud.needLogin %}
|
71
97
|
<div id = "InfoForm">
|
72
98
|
<div class = "info">
|
73
99
|
<form target="_self" class="form-changeInfo">
|
@@ -93,10 +119,13 @@
|
|
93
119
|
</div>
|
94
120
|
</div>
|
95
121
|
<div class="gal-info"></div>
|
122
|
+
{% endif %}
|
96
123
|
<aside aria-label="Sidebar" id="sidebar" class="d-flex flex-column align-items-end">
|
124
|
+
{% if site.Leancloud.needLogin %}
|
97
125
|
<a href="javascript:void(0)" id="changeInfo" onclick="document.getElementById('InfoForm').style.display = 'flex'; document.querySelector('.gal-info').classList.add('active');" style="position: absolute; top: 140px; left: 150px;">
|
98
126
|
<i class="fa-fw fas fa-pen-to-square"></i>
|
99
127
|
</a>
|
128
|
+
{% endif %}
|
100
129
|
<header class="profile-wrapper">
|
101
130
|
<a href="{{ site.baseurl }}" id="avatar" class="rounded-circle">
|
102
131
|
{%- if site.avatar != empty and site.avatar -%}
|
@@ -108,7 +137,7 @@
|
|
108
137
|
</a>
|
109
138
|
|
110
139
|
<div class="site-title">
|
111
|
-
<a href="{{ site.baseurl }}">
|
140
|
+
<a href="{{ site.baseurl }}">{{site.social.name}}</a>
|
112
141
|
</div>
|
113
142
|
<p class="site-subtitle fst-italic mb-0">{{ site.tagline }}</p>
|
114
143
|
</header>
|
@@ -189,9 +218,11 @@
|
|
189
218
|
</a>
|
190
219
|
{% endif %}
|
191
220
|
{% endfor %}
|
221
|
+
{% if site.Leancloud.needLogin %}
|
192
222
|
<a href="javascript:void(0);" onclick="AV.User.logOut();setTimeout(function() { window.location.reload(); }, 1000)" title="{{ site.data.locales[lang].login.logout }}">
|
193
223
|
<i class="fas fa-right-from-bracket" style="color: rgb(181, 27, 27);"></i>
|
194
224
|
</a>
|
225
|
+
{% endif %}
|
195
226
|
</div>
|
196
227
|
<!-- .sidebar-bottom -->
|
197
228
|
</aside>
|
@@ -202,6 +233,8 @@
|
|
202
233
|
window.location.href = '{{ site.baseurl }}';
|
203
234
|
});
|
204
235
|
</script>
|
236
|
+
|
237
|
+
{% if site.Leancloud.needLogin %}
|
205
238
|
<script>
|
206
239
|
var formValidate = {
|
207
240
|
checkNickname: function() {
|
@@ -260,4 +293,5 @@
|
|
260
293
|
event.preventDefault();
|
261
294
|
});
|
262
295
|
</script>
|
296
|
+
{% endif %}
|
263
297
|
|
data/_layouts/default.html
CHANGED
@@ -77,7 +77,9 @@ layout: compress
|
|
77
77
|
|
78
78
|
<!-- JavaScripts -->
|
79
79
|
|
80
|
-
{%
|
80
|
+
{% if site.Leancloud.needLogin %}
|
81
|
+
{% include login-check.html %}
|
82
|
+
{% endif %}
|
81
83
|
|
82
84
|
{% if site.mathjax.display_on_home.enabled %}
|
83
85
|
{% unless page.layout == 'post' or page.layout == 'archives' %}
|
@@ -93,6 +95,11 @@ layout: compress
|
|
93
95
|
|
94
96
|
{% include_cached search-loader.html %}
|
95
97
|
|
98
|
+
{% unless site.Leancloud.needLogin %}
|
99
|
+
<script>
|
100
|
+
document.querySelector('body').style.display='block';
|
101
|
+
</script>
|
102
|
+
{% endunless %}
|
96
103
|
|
97
104
|
</body>
|
98
105
|
</html>
|
data/_layouts/forgot.html
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
+
{% if site.Leancloud.needLogin %}
|
1
2
|
<!DOCTYPE html>
|
2
3
|
<html>
|
3
|
-
|
4
4
|
<head>
|
5
5
|
<meta charset="utf-8">
|
6
6
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
@@ -47,13 +47,11 @@
|
|
47
47
|
border-radius: 10px;
|
48
48
|
padding: 5px;
|
49
49
|
font-size: 1rem;
|
50
|
-
outline: none;
|
50
|
+
/* outline: none; */
|
51
51
|
}
|
52
52
|
|
53
|
-
|
54
|
-
|
55
|
-
height: 30px;
|
56
|
-
padding: 0;
|
53
|
+
#forgotBtn {
|
54
|
+
padding: 5px 20px;
|
57
55
|
margin: 15px 0;
|
58
56
|
font-family: Arial, Helvetica, sans-serif;
|
59
57
|
color: #fff;
|
@@ -63,7 +61,7 @@
|
|
63
61
|
border: none;
|
64
62
|
text-align: center;
|
65
63
|
align-items: center;
|
66
|
-
border-radius:
|
64
|
+
border-radius: 999px;;
|
67
65
|
}
|
68
66
|
|
69
67
|
#forgotBtn:active {
|
@@ -131,8 +129,8 @@
|
|
131
129
|
<body>
|
132
130
|
<div class="shell">
|
133
131
|
<h2 class="title">Forgot</h2>
|
134
|
-
<input type="email" id="email" placeholder="Enter the email you used to login">
|
135
|
-
<
|
132
|
+
<input type="email" id="email" placeholder="Enter the email you used to login" required>
|
133
|
+
<button id="forgotBtn">{{ site.data.locales[lang].login.confirm }}</button>
|
136
134
|
</div>
|
137
135
|
|
138
136
|
|
@@ -166,4 +164,9 @@
|
|
166
164
|
</script>
|
167
165
|
</body>
|
168
166
|
|
169
|
-
</html>
|
167
|
+
</html>
|
168
|
+
{% else %}
|
169
|
+
<script>
|
170
|
+
window.location.href = '{{ site.baseurl}}';
|
171
|
+
</script>
|
172
|
+
{% endif %}
|
data/_layouts/login.html
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
|
2
|
-
layout: compress
|
3
|
-
---
|
1
|
+
{% if site.Leancloud.needLogin %}
|
4
2
|
<!DOCTYPE html>
|
5
3
|
<html>
|
6
4
|
|
@@ -50,17 +48,15 @@ layout: compress
|
|
50
48
|
border-radius: 10px;
|
51
49
|
padding: 5px;
|
52
50
|
font-size: 1rem;
|
53
|
-
outline: none;
|
51
|
+
/* outline: none; */
|
54
52
|
}
|
55
53
|
|
56
54
|
#email {
|
57
55
|
display: none;
|
58
56
|
}
|
59
57
|
|
60
|
-
|
61
|
-
|
62
|
-
height: 30px;
|
63
|
-
padding: 0;
|
58
|
+
#loginBtn {
|
59
|
+
padding: 5px 20px;
|
64
60
|
margin: 15px 0;
|
65
61
|
font-family: Arial, Helvetica, sans-serif;
|
66
62
|
color: #fff;
|
@@ -70,7 +66,7 @@ layout: compress
|
|
70
66
|
border: none;
|
71
67
|
text-align: center;
|
72
68
|
align-items: center;
|
73
|
-
border-radius:
|
69
|
+
border-radius: 999px;
|
74
70
|
}
|
75
71
|
|
76
72
|
#loginBtn:active {
|
@@ -184,10 +180,10 @@ layout: compress
|
|
184
180
|
{% include lang.html %}
|
185
181
|
<div class="shell">
|
186
182
|
<h2 class="title">{{ site.data.locales[lang].login.login }}</h2>
|
187
|
-
<input type="text" id="username" placeholder="{{ site.data.locales[lang].login.username }}">
|
188
|
-
<input type="password" id="password" placeholder="{{ site.data.locales[lang].login.password }}">
|
189
|
-
<input type="email" id="email" placeholder="{{ site.data.locales[lang].login.email }}">
|
190
|
-
<
|
183
|
+
<input type="text" id="username" placeholder="{{ site.data.locales[lang].login.username }}" required>
|
184
|
+
<input type="password" id="password" placeholder="{{ site.data.locales[lang].login.password }}" required>
|
185
|
+
<input type="email" id="email" placeholder="{{ site.data.locales[lang].login.email }}" required>
|
186
|
+
<button id="loginBtn">{{ site.data.locales[lang].login.login }}</button>
|
191
187
|
<div class="footer">
|
192
188
|
{% if site.Leancloud.allowRegister %}
|
193
189
|
<button id="signUp">{{ site.data.locales[lang].login.go_to_register }}</button>
|
@@ -204,7 +200,7 @@ layout: compress
|
|
204
200
|
var signUpBtn = document.getElementById('signUp');
|
205
201
|
if (title.innerText == '{{ site.data.locales[lang].login.login }}') {
|
206
202
|
title.innerText = '{{ site.data.locales[lang].login.register }}';
|
207
|
-
loginBtn.
|
203
|
+
loginBtn.innerText = '{{ site.data.locales[lang].login.register }}';
|
208
204
|
signUpBtn.innerText = '{{ site.data.locales[lang].login.go_to_login }}';
|
209
205
|
document.getElementById('username').value = '';
|
210
206
|
document.getElementById('password').value = '';
|
@@ -214,7 +210,7 @@ layout: compress
|
|
214
210
|
document.getElementById('email').style.display = 'block';
|
215
211
|
} else {
|
216
212
|
title.innerText = '{{ site.data.locales[lang].login.login }}';
|
217
|
-
loginBtn.
|
213
|
+
loginBtn.innerText = '{{ site.data.locales[lang].login.login }}';
|
218
214
|
signUpBtn.innerText = '{{ site.data.locales[lang].login.go_to_register }}';
|
219
215
|
document.getElementById('username').placeholder = '{{ site.data.locales[lang].login.username }}';
|
220
216
|
document.getElementById('password').placeholder = '{{ site.data.locales[lang].login.password }}';
|
@@ -310,7 +306,7 @@ layout: compress
|
|
310
306
|
}).catch(function (error) {
|
311
307
|
/* 注册失败,处理错误信息 */
|
312
308
|
console.log('注册失败:', error);
|
313
|
-
alert('{{ site.data.locales[lang].login.
|
309
|
+
alert('{{ site.data.locales[lang].login.login_fail }}' + '\n' + error.message.replace(/\[.*?\]/g, ''));
|
314
310
|
});
|
315
311
|
}
|
316
312
|
};
|
@@ -326,4 +322,9 @@ layout: compress
|
|
326
322
|
</script>
|
327
323
|
</body>
|
328
324
|
|
329
|
-
</html>
|
325
|
+
</html>
|
326
|
+
{% else %}
|
327
|
+
<script>
|
328
|
+
window.location.href = '{{ site.baseurl}}';
|
329
|
+
</script>
|
330
|
+
{% endif%}
|
metadata
CHANGED
@@ -1,14 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-theme-chirpy-customized-upe
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0.pre.beta2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
+
- Cotes Chung
|
7
8
|
- Jo Cruise
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2024-
|
12
|
+
date: 2024-03-15 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: jekyll
|
@@ -228,7 +229,12 @@ files:
|
|
228
229
|
homepage: https://github.com/Jo-CRuiSe
|
229
230
|
licenses:
|
230
231
|
- MIT
|
231
|
-
metadata:
|
232
|
+
metadata:
|
233
|
+
bug_tracker_uri: https://github.com/Jo-CRuiSe/jekyll-theme-chirpy-customized-upe/issues
|
234
|
+
documentation_uri: https://github.com/Jo-CRuiSe/jekyll-theme-chirpy-customized-upe/#readme
|
235
|
+
homepage_uri: https://jo-cruise.github.io/GemTest
|
236
|
+
source_code_uri: https://github.com/Jo-CRuiSe/jekyll-theme-chirpy-customized-upe
|
237
|
+
plugin_type: theme
|
232
238
|
post_install_message:
|
233
239
|
rdoc_options: []
|
234
240
|
require_paths:
|
@@ -240,9 +246,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
240
246
|
version: '3.0'
|
241
247
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
242
248
|
requirements:
|
243
|
-
- - "
|
249
|
+
- - ">"
|
244
250
|
- !ruby/object:Gem::Version
|
245
|
-
version:
|
251
|
+
version: 1.3.1
|
246
252
|
requirements: []
|
247
253
|
rubygems_version: 3.3.26
|
248
254
|
signing_key:
|