-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
93 lines (90 loc) · 3.33 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<html lang="zh-cn">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>铺路根据地</title>
<meta name="description" content="铺路尚未成功,同志仍需努力!">
<link rel="icon" type="image/png" sizes="460x460" href="https://avatars.githubusercontent.com/u/67631647">
<h1>Github Pages</h1>
<span id="github-pages"><span id="pages-message"></span>如果这里什么也没有,请<a id="pages-refresh"
href="./">刷新</a>页面,或者前往这个[页面](https://github.com/orgs/Paving-Base/repositories)查看</span>
<script data-pjax>
(function () {
var isLoading = false;
var results = document.getElementById("github-pages");
var message = document.getElementById("pages-message");
function loadReadmeAsync() {
if (isLoading) {
return;
}
isLoading = true;
message.innerHTML = "正在从 GitHub 拉取信息,请坐和放宽<br>";
function onError() {
message.innerHTML = "拉取失败,即将跳转到 GitHub 页面<br>";
location.href = "https://github.com/orgs/Paving-Base/repositories";
isLoading = false;
}
var pages = [];
function fetchData(page) {
var request = typeof XDomainRequest === "undefined" ? new XMLHttpRequest() : new XDomainRequest();
try {
request.open("GET", "https://api.github.com/orgs/Paving-Base/repos?sort=updated&page=" + page, true);
}
catch (_) {
onError();
return;
}
request.onload = function () {
try {
message.innerHTML = "拉取成功第" + page + "页<br>";
var data = typeof JSON === "undefined" ? eval('(' + request.responseText + ')') : JSON.parse(request.responseText);
if (data.length) {
for (var i = 0; i < data.length; i++) {
var repo = data[i];
if (repo.has_pages) {
pages.push(repo);
}
}
fetchData(page + 1);
}
else {
message.innerHTML = "拉取成功,正在解析<br>";
var list = document.createElement("ul");
for (var i = 0; i < pages.length; i++) {
var repo = pages[i];
var item = document.createElement("li");
list.appendChild(item);
var link = document.createElement('a');
link.href = "https://paving-base.github.io/" + (repo.name === "paving-base.github.io" ? '' : repo.name);
link.innerText = repo.name;
item.appendChild(link);
}
results.innerHTML = '';
results.appendChild(list);
if (typeof pjax !== "undefined") {
pjax.refresh(results);
}
}
}
catch (_) {
onError();
return;
}
finally {
isLoading = false;
}
};
request.onerror = onError;
request.ontimeout = onError;
request.send();
}
fetchData(1);
}
loadReadmeAsync();
var refresh = document.getElementById("pages-refresh");
if (typeof refresh === "object") {
refresh.href = "javascript:void(0)";
refresh.onclick = loadReadmeAsync;
}
})();
</script>
</html>