-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsw.php
134 lines (125 loc) · 4.15 KB
/
sw.php
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
<?php
header("content-type: application/x-javascript");
if($_GET["install"] != "true"){
$aa = '';
//if($_COOKIE["ON_PASS"] != md5("ORDYLANNOTE_PASS_ID".$_COOKIE["ON_PASS_NUMBER"]."_TRUE")){$onpass = "false";}
if($_GET["do"] == "allnotetext"){
$notenum = file('allnotes.ordylandata');
$notenum = $notenum[0];
$aa = ',"/noteview/tags/1",
"/noteview/tags/10",
"/noteview/tags/11",
"/noteview/tags/12",
"/noteview/tags/13",
"/noteview/tags/14",
"/noteview/tags/15",
"/noteview/tags/16",
"/noteview/tags/17",
/* "/noteview/tags/1?gettexta=true",
"/noteview/tags/10?gettexta=true",
"/noteview/tags/11?gettexta=true",
"/noteview/tags/12?gettexta=true",
"/noteview/tags/13?gettexta=true",
"/noteview/tags/14?gettexta=true",
"/noteview/tags/15?gettexta=true",
"/noteview/tags/16?gettexta=true",
"/noteview/tags/17?gettexta=true",*/
"cardroom.php"';
for ($i = 0; $i < $notenum + 1; $i++) {
$aa = $aa.',
"/noteview/notes/'.$i.'"';
}
}
elseif ($_GET["do"] == "noteimg") {
if(file_exists("notes/".$_GET["id"].'.ordylandata')){
$notteee = file("notes/".$_GET["id"].'.ordylandata')[0];
$notteee = explode('{[(<||>)]}', $notteee);
$tp = $notteee[3];
$tp = explode('|', $tp);
for ($i = 0; $i < count($tp)-1; $i++) {
$aa = $aa.',
"'.$tp[$i].'"';
}
}}
//if($onpass == "false"){$aa="";}
print<<<JS
const CACHE_NAME = 'ON';
self.addEventListener('install',async event => {
const cache = await caches.open(CACHE_NAME);
await cache.addAll([
//必要资源
"/",
"/back.png",
"/nonetwork.html",
"404.html",
"/1.css"{$aa}
]);
await self.skipWaiting();
});
self.addEventListener('activate',event => {
console.log('activate: ',event);
event.waitUntil(self.clients.claim());
});
self.addEventListener('fetch',async (event) => {
// 注意,event.request 页面发出的请求
// 而 caches.match 根据请求匹配本地缓存中有没有相应的资源
async function getResponse(){
try {
if(navigator.onLine){ // onLine 是 true,表示有网
let response = await fetch(event.request);
let cache = await caches.open(CACHE_NAME);
await cache.put(event.request, response.clone());
return response;
}else{
return await caches.match(event.request);
}
} catch (error) {
// 也有可能在请求途中我们网断了,这时候需要判断一下缓存中有没有数据
let res = await caches.match(event.request);
if(!res) return caches.match('/nonetwork.html');
return res;
}
}
event.respondWith(
getResponse()
);
});
/*
self.addEventListener('fetch',async (event) => {
// 注意,event.request 页面发出的请求
// 而 caches.match 根据请求匹配本地缓存中有没有相应的资源
async function getResponse(){
try {
const response = await caches.match(event.request);
// 如果没有找到相应的内容,就用 fetch 给服务器发请求
if(!response){
response = await fetch(event.request);
// 打开缓存,将请求到的数据克隆一份放入缓存中
let cache = await caches.open(CACHE_NAME);
await cache.put(event.request, response.clone());
} // 最后别忘了返回 promise包裹的 response
return response;
} catch (error) {
// fetch 没有请求到(可能是断网了),这也表明缓存中没有请求对应的响应数据
// 这个时候就使用缓存里的其他数据
return caches.match('/');
}
}
event.respondWith(
getResponse()
);
});*/
JS;
}
else{
echo("self.addEventListener('install',event => {
console.log('install: ',event);
});
self.addEventListener('activate',event => {
console.log('activate: ',event);
});
self.addEventListener('fetch',event => {
console.log('fetch: ',event);
});
");
}