Quellcode durchsuchen

auto acp scripted

master
jfinn vor 4 Jahren
Ursprung
Commit
f571561d37
1 geänderte Dateien mit 305 neuen und 0 gelöschten Zeilen
  1. 305
    0
      rldjs/rldjs.js

+ 305
- 0
rldjs/rldjs.js Datei anzeigen

@@ -0,0 +1,305 @@
1
+clog = console.log
2
+function resp_handler(a0,a1,a2,a3,a4) {
3
+	clog("jdv: resp_handler",a0,a1,a2,a3,a4)
4
+}
5
+
6
+rlist = []
7
+clog("RLIST!")
8
+function dflt_handler(resp,status,jqXHR) {
9
+	rldh = jqXHR.rldh
10
+	// if (0 && !rldh.qs.v) {
11
+	if (!rldh.qs.v) {
12
+		console.log("NOT V:",rldh.qs.v,rldh.url)
13
+		rldh.qs.v = 1
14
+		rldh.cached = resp
15
+	} else {
16
+		// console.log("VEXIST V:",rldh.qs.v)
17
+	}
18
+	if (rldh.cached != resp) {
19
+		console.log("jdv DIFF")
20
+		// console.log(resp)
21
+		rlist.push(resp)
22
+		rldh.diffH(rldh,{resp,status,jqXHR})
23
+		rldh.qs.v += 1
24
+		rldh.cached = resp
25
+	}
26
+}
27
+
28
+function rls_handler(resp,status,jqXHR) {
29
+	rldh = jqXHR.rldh
30
+	// if (0 && !rldh.qs.v) {
31
+	if (!rldh.qs.v) {
32
+		// console.log("NOT V:",rldh.qs.v,rldh.url)
33
+		console.log("~NOT V2:",rldh.qs.v,rldh.url,JSON.parse(JSON.stringify(rldh)),window.rls)
34
+		rldh.qs.v = 1
35
+		// rldh.cached = resp
36
+	} else {
37
+		// console.log("VEXIST V:",rldh.qs.v)
38
+	}
39
+	if (rldh.cached != resp) {
40
+		// console.log("jdv DIFF",[rldh],{"c":rldh.cached,r:resp},{resp,status,jqXHR})
41
+		// console.log(resp)
42
+		rlist.push(resp)
43
+		rldh.diffH(rldh,{resp,status,jqXHR})
44
+		rldh.qs.v += 1
45
+		rldh.cached = resp
46
+	}
47
+}
48
+
49
+function dflt_handler2(resp,rldh,status,jqXHR) {
50
+	// rldh = jqXHR.rldh
51
+	// if (0 && !rldh.qs.v) {
52
+	if (!rldh.qs.v) {
53
+		console.log("NOT V:",rldh.qs.v)
54
+		rldh.qs.v = 1
55
+		rldh.cached = resp
56
+	} else {
57
+		// console.log("VEXIST V:",rldh.qs.v)
58
+	}
59
+	if (rldh.cached != resp) {
60
+		console.log("jdv DIFF")
61
+		// console.log(resp)
62
+		rlist.push(resp)
63
+		rldh.diffH(rldh,{resp,status,jqXHR})
64
+		rldh.qs.v += 1
65
+		rldh.cached = resp
66
+	}
67
+}
68
+function diff_handler(a0,a1,a2,a3,a4) {
69
+	clog("jdv: diff_handler","NOT IMPLEMENTED")
70
+}
71
+
72
+function jsrh(rldh,rsp) {
73
+		var s = document.createElement("script")
74
+		s.src = rldh.url+"?"+"v="+rldh.qs.v
75
+		s.classList.add("rld")
76
+		var s0 = $(`script.rld[src^="`+rldh.url+`"]`)[0]
77
+		var sp =s0.previousElementSibling
78
+		s0.remove()
79
+		sp.after(s)
80
+}
81
+function xmsg(data,exe,attrs={}){
82
+	var ns = {xmlns:"jcorner"}
83
+	var msg = $build("message",{ to: APP.conference._room.room.roomjid,
84
+            type: 'groupchat',
85
+             });
86
+	if (exe){
87
+		data.exe=exe
88
+	}
89
+	var payload=JSON.stringify(data)
90
+	Object.assign({},ns,attrs)
91
+
92
+	msg.c("code", payload,Object.assign({},ns,attrs)).up();
93
+	console.log()
94
+	APP.conference._room.room.connection.send(msg)
95
+// APP.conference._room.room.roomjid
96
+}
97
+
98
+
99
+function jsrrh(rldh,rsp) {
100
+	console.log("jsrrh RAW",rsp)
101
+	if (APP.conference.getLocalDisplayName() == "rc"){
102
+	xmsg({"k1":"v1"},rsp.resp)
103
+	}
104
+}
105
+
106
+function cssrh(rldh,rsp) {
107
+		var s = document.createElement("link")
108
+		s.href = rldh.url+"?"+"v="+rldh.qs.v
109
+		s.rel = "stylesheet"
110
+		s.classList.add("rld")
111
+		var s0 = $(`link.rld[href^="`+rldh.url+`"]`)[0]
112
+		var sp =s0.previousElementSibling
113
+		sp.after(s)
114
+		setTimeout(rmv_timeout,50,s0)
115
+}
116
+function rmv_timeout(node){
117
+	console.log(this,node)
118
+	node.remove()
119
+}
120
+var reqt = {
121
+	url:"",
122
+	respH:dflt_handler,
123
+	diffH:diff_handler,
124
+}
125
+
126
+
127
+
128
+
129
+class nRld {
130
+	constructor(basepath="/") {
131
+		this.arr = []
132
+		this.obj = {}
133
+		this.int = 1550
134
+		// if (localStorage.rld_interval){
135
+		if (localStorage.rld_int_json){
136
+
137
+			clog("rld_int_json")
138
+			try {
139
+				var rij = JSON.parse(localStorage.rld_int_json)
140
+				if (Number.isInteger(rij.all)){
141
+					this.int = rij.all
142
+					clog("rld_int_json set")
143
+				}
144
+				clog("rld_int_json:",rij)
145
+			} catch (e) {
146
+				clog("rld_int_json err:",e)
147
+			}
148
+
149
+			// this.int = localStorage.rld_interval
150
+		} else {
151
+			clog("!rld_int_json")
152
+		}
153
+
154
+		// this.int = 1550
155
+		this.minInt = 250
156
+		this.basepath = basepath
157
+
158
+
159
+		this.files = {}
160
+		this.arr2 = []
161
+	}
162
+	add (file){
163
+
164
+	}
165
+	addNew (file){
166
+
167
+	}
168
+
169
+	rld_check() {
170
+		// clog("RLD CHECK")
171
+		for (var file of this.arr){
172
+			var aii 
173
+			aii= $.ajax({
174
+  				url: file.url,
175
+  				data: file.qs,
176
+  				cache:false,
177
+  				success: file.respH,
178
+  				dataType: "text"
179
+			})
180
+			aii.rldh=file
181
+		}
182
+	}
183
+	run(){
184
+		clog("RUN rldjs")
185
+		if (this.intid){
186
+			clearInterval(this.intid)
187
+		}
188
+		this.intid = setInterval(this.rld_check.bind(this),this.int)
189
+	}
190
+	setint(int){
191
+		if (this.minInt > int){
192
+			throw "minInt > int"
193
+		}
194
+		this.int = int
195
+		this.run()
196
+
197
+
198
+	}
199
+}
200
+rldi=new nRld()
201
+
202
+
203
+tdx2 = []
204
+tdx9 = []
205
+function url_str(url){
206
+	li = url.lastIndexOf("/")
207
+	upath = url.substring(0,li)
208
+	snq = url.substring(li+1)
209
+	sn = snq.split("?")[0]
210
+	// clog("US",li,upath,snq,sn)
211
+	return sn
212
+
213
+}
214
+
215
+
216
+rlst=""
217
+rlsd={}
218
+// RC THIS is called by rls.js
219
+function rld_ls() {
220
+	// body...
221
+	var rlst0 = JSON.stringify(rls)
222
+	// clog("cui... RLD LSz",rlst0==rlst, rldi.arr[0])
223
+	// clog("cui... RLD LS", rldi.arr[0].qs.v)
224
+	if (rlst != rlst0 || rldi.arr[0].qs.v <= 2){
225
+		// clog("cui RLD LS")
226
+		var k,v,rsp
227
+		for (k in rldi.files){
228
+			v = rldi.files[k]
229
+			rsp=rls[k]
230
+			dflt_handler2(rsp,v)
231
+		}
232
+		rlst = rlst0
233
+
234
+	}
235
+}
236
+
237
+
238
+
239
+
240
+
241
+function onl(){
242
+		console.log("TDEX2...")
243
+
244
+
245
+
246
+	var j = $(".rld")
247
+		clog("!.",j)
248
+	for (en of j){
249
+		var t = Object.assign({},reqt,{})
250
+		tdx2.push(t)
251
+		t.qs = {v:0}
252
+		if (en.tagName == "SCRIPT") {
253
+			t.url = en.getAttribute("src")
254
+			t.diffH = jsrh
255
+		} else if (en.tagName == "LINK") {
256
+			t.url = en.getAttribute("href")
257
+			t.diffH = cssrh
258
+		}
259
+		if (en.classList.contains("rrld")){
260
+			t.respH = rls_handler
261
+			// t.qs.v=1
262
+		rldi.arr.push(t)
263
+		clog("RLDI ARR PUSH")
264
+		console.trace("RLDI")
265
+		} else if (en.classList.contains("crld")){
266
+		rldi.files[url_str(t.url)] = t
267
+		} else {
268
+		rldi.files[url_str(t.url)] = t
269
+		} 
270
+	}
271
+}
272
+
273
+
274
+setTimeout(onl,500)
275
+rldi.run()
276
+
277
+function rldj(){
278
+	// return
279
+	console.log("WINPATH2...")
280
+	// onl()
281
+		// setTimeout(onl,100)
282
+}
283
+
284
+console.log("HI")
285
+// sss
286
+
287
+
288
+
289
+
290
+
291
+
292
+
293
+
294
+
295
+
296
+
297
+
298
+function rcom(){
299
+	var k,v
300
+	var k2,v2
301
+	for ([k,v] of Object.entries(rldi.files) ){
302
+		clog(k,v.cached == rls[k],v.cached,rls[k])
303
+	}
304
+
305
+}

Laden…
Abbrechen
Speichern