123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305 |
- clog = console.log
- function resp_handler(a0,a1,a2,a3,a4) {
- clog("jdv: resp_handler",a0,a1,a2,a3,a4)
- }
-
- rlist = []
- clog("RLIST!")
- function dflt_handler(resp,status,jqXHR) {
- rldh = jqXHR.rldh
- // if (0 && !rldh.qs.v) {
- if (!rldh.qs.v) {
- console.log("NOT V:",rldh.qs.v,rldh.url)
- rldh.qs.v = 1
- rldh.cached = resp
- } else {
- // console.log("VEXIST V:",rldh.qs.v)
- }
- if (rldh.cached != resp) {
- console.log("jdv DIFF")
- // console.log(resp)
- rlist.push(resp)
- rldh.diffH(rldh,{resp,status,jqXHR})
- rldh.qs.v += 1
- rldh.cached = resp
- }
- }
-
- function rls_handler(resp,status,jqXHR) {
- rldh = jqXHR.rldh
- // if (0 && !rldh.qs.v) {
- if (!rldh.qs.v) {
- // console.log("NOT V:",rldh.qs.v,rldh.url)
- console.log("~NOT V2:",rldh.qs.v,rldh.url,JSON.parse(JSON.stringify(rldh)),window.rls)
- rldh.qs.v = 1
- // rldh.cached = resp
- } else {
- // console.log("VEXIST V:",rldh.qs.v)
- }
- if (rldh.cached != resp) {
- // console.log("jdv DIFF",[rldh],{"c":rldh.cached,r:resp},{resp,status,jqXHR})
- // console.log(resp)
- rlist.push(resp)
- rldh.diffH(rldh,{resp,status,jqXHR})
- rldh.qs.v += 1
- rldh.cached = resp
- }
- }
-
- function dflt_handler2(resp,rldh,status,jqXHR) {
- // rldh = jqXHR.rldh
- // if (0 && !rldh.qs.v) {
- if (!rldh.qs.v) {
- console.log("NOT V:",rldh.qs.v)
- rldh.qs.v = 1
- rldh.cached = resp
- } else {
- // console.log("VEXIST V:",rldh.qs.v)
- }
- if (rldh.cached != resp) {
- console.log("jdv DIFF")
- // console.log(resp)
- rlist.push(resp)
- rldh.diffH(rldh,{resp,status,jqXHR})
- rldh.qs.v += 1
- rldh.cached = resp
- }
- }
- function diff_handler(a0,a1,a2,a3,a4) {
- clog("jdv: diff_handler","NOT IMPLEMENTED")
- }
-
- function jsrh(rldh,rsp) {
- var s = document.createElement("script")
- s.src = rldh.url+"?"+"v="+rldh.qs.v
- s.classList.add("rld")
- var s0 = $(`script.rld[src^="`+rldh.url+`"]`)[0]
- var sp =s0.previousElementSibling
- s0.remove()
- sp.after(s)
- }
- function xmsg(data,exe,attrs={}){
- var ns = {xmlns:"jcorner"}
- var msg = $build("message",{ to: APP.conference._room.room.roomjid,
- type: 'groupchat',
- });
- if (exe){
- data.exe=exe
- }
- var payload=JSON.stringify(data)
- Object.assign({},ns,attrs)
-
- msg.c("code", payload,Object.assign({},ns,attrs)).up();
- console.log()
- APP.conference._room.room.connection.send(msg)
- // APP.conference._room.room.roomjid
- }
-
-
- function jsrrh(rldh,rsp) {
- console.log("jsrrh RAW",rsp)
- if (APP.conference.getLocalDisplayName() == "rc"){
- xmsg({"k1":"v1"},rsp.resp)
- }
- }
-
- function cssrh(rldh,rsp) {
- var s = document.createElement("link")
- s.href = rldh.url+"?"+"v="+rldh.qs.v
- s.rel = "stylesheet"
- s.classList.add("rld")
- var s0 = $(`link.rld[href^="`+rldh.url+`"]`)[0]
- var sp =s0.previousElementSibling
- sp.after(s)
- setTimeout(rmv_timeout,50,s0)
- }
- function rmv_timeout(node){
- console.log(this,node)
- node.remove()
- }
- var reqt = {
- url:"",
- respH:dflt_handler,
- diffH:diff_handler,
- }
-
-
-
-
- class nRld {
- constructor(basepath="/") {
- this.arr = []
- this.obj = {}
- this.int = 1550
- // if (localStorage.rld_interval){
- if (localStorage.rld_int_json){
-
- clog("rld_int_json")
- try {
- var rij = JSON.parse(localStorage.rld_int_json)
- if (Number.isInteger(rij.all)){
- this.int = rij.all
- clog("rld_int_json set")
- }
- clog("rld_int_json:",rij)
- } catch (e) {
- clog("rld_int_json err:",e)
- }
-
- // this.int = localStorage.rld_interval
- } else {
- clog("!rld_int_json")
- }
-
- // this.int = 1550
- this.minInt = 250
- this.basepath = basepath
-
-
- this.files = {}
- this.arr2 = []
- }
- add (file){
-
- }
- addNew (file){
-
- }
-
- rld_check() {
- // clog("RLD CHECK")
- for (var file of this.arr){
- var aii
- aii= $.ajax({
- url: file.url,
- data: file.qs,
- cache:false,
- success: file.respH,
- dataType: "text"
- })
- aii.rldh=file
- }
- }
- run(){
- clog("RUN rldjs")
- if (this.intid){
- clearInterval(this.intid)
- }
- this.intid = setInterval(this.rld_check.bind(this),this.int)
- }
- setint(int){
- if (this.minInt > int){
- throw "minInt > int"
- }
- this.int = int
- this.run()
-
-
- }
- }
- rldi=new nRld()
-
-
- tdx2 = []
- tdx9 = []
- function url_str(url){
- li = url.lastIndexOf("/")
- upath = url.substring(0,li)
- snq = url.substring(li+1)
- sn = snq.split("?")[0]
- // clog("US",li,upath,snq,sn)
- return sn
-
- }
-
-
- rlst=""
- rlsd={}
- // RC THIS is called by rls.js
- function rld_ls() {
- // body...
- var rlst0 = JSON.stringify(rls)
- // clog("cui... RLD LSz",rlst0==rlst, rldi.arr[0])
- // clog("cui... RLD LS", rldi.arr[0].qs.v)
- if (rlst != rlst0 || rldi.arr[0].qs.v <= 2){
- // clog("cui RLD LS")
- var k,v,rsp
- for (k in rldi.files){
- v = rldi.files[k]
- rsp=rls[k]
- dflt_handler2(rsp,v)
- }
- rlst = rlst0
-
- }
- }
-
-
-
-
-
- function onl(){
- console.log("TDEX2...")
-
-
-
- var j = $(".rld")
- clog("!.",j)
- for (en of j){
- var t = Object.assign({},reqt,{})
- tdx2.push(t)
- t.qs = {v:0}
- if (en.tagName == "SCRIPT") {
- t.url = en.getAttribute("src")
- t.diffH = jsrh
- } else if (en.tagName == "LINK") {
- t.url = en.getAttribute("href")
- t.diffH = cssrh
- }
- if (en.classList.contains("rrld")){
- t.respH = rls_handler
- // t.qs.v=1
- rldi.arr.push(t)
- clog("RLDI ARR PUSH")
- console.trace("RLDI")
- } else if (en.classList.contains("crld")){
- rldi.files[url_str(t.url)] = t
- } else {
- rldi.files[url_str(t.url)] = t
- }
- }
- }
-
-
- setTimeout(onl,500)
- rldi.run()
-
- function rldj(){
- // return
- console.log("WINPATH2...")
- // onl()
- // setTimeout(onl,100)
- }
-
- console.log("HI")
- // sss
-
-
-
-
-
-
-
-
-
-
-
-
- function rcom(){
- var k,v
- var k2,v2
- for ([k,v] of Object.entries(rldi.files) ){
- clog(k,v.cached == rls[k],v.cached,rls[k])
- }
-
- }
|