You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

jev3.js 8.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356
  1. function maybe_init_msto_corner_list(){
  2. // console.trace("maybe_init_msto_corner_list")
  3. if (!msto.conference.corners){
  4. var skew_version = skew_version_helper("rmix_any")
  5. if (skew_version?.rmix_any) {
  6. msto.conference.corners = {corner_list:{c1:{},c2:{},c3:{},c4:{},c5:{},c6:{}},default_corner:"c2"}
  7. } else {
  8. msto.conference.corners = {corner_list:{c1:{},c2:{}},default_corner:"c2"}
  9. }
  10. }
  11. return
  12. }
  13. function get_msto_corners(){
  14. return msto.conference.corners
  15. }
  16. function get_msto_corner_list(){
  17. if (!msto.conference.corners){
  18. maybe_init_msto_corner_list()
  19. }
  20. return msto.conference.corners.corner_list
  21. }
  22. glob_u.jev.data_templates.corner = {}
  23. function init_jev_fs_toolbar_helper(){
  24. merge_partial_template(glob_u.jev.sto,{
  25. fs_toolbar:{
  26. add_corner:{
  27. types:["change"],
  28. event_name:"add_corner",
  29. }
  30. }
  31. })
  32. }
  33. function init_jev_fs_helper(name){
  34. merge_partial_template(glob_u.jev.sto,{
  35. tx:{a:{b:{c:1}}},
  36. })
  37. // clog("init_jev_fs_helper skew_version_helper",skew_version_helper("rmix_any"))
  38. var vlow = .2
  39. var skew_version = skew_version_helper("rmix_any")
  40. if (skew_version?.rmix_any) {
  41. vlow = 1
  42. // msto.conference.corners = {corner_list:{c1:{},c2:{},c3:{},c4:{},c5:{},c6:{}},default_corner:"c2"}
  43. }
  44. merge_partial_template(glob_u.jev.sto,{
  45. fs_toolbar:{
  46. // vlow:.2,
  47. // vlow:1,
  48. vlow,
  49. events:{
  50. vlow_update:{
  51. types:["input","change"],
  52. event_name:"vlow_update",
  53. },
  54. add_corner:{
  55. types:["change"],
  56. event_name:"add_corner",
  57. }
  58. }
  59. }
  60. })
  61. }
  62. function init_jev_corner_helper_v2(name){
  63. merge_partial_template(glob_u.jev.sto,{
  64. vid_containers:{
  65. [name]:{
  66. muted_toggle:1,
  67. events:{
  68. muted_toggle:{
  69. types:["change"],
  70. event_name:"muted_toggle",
  71. },
  72. remove_corner:{
  73. types:["change"],
  74. event_name:"remove_corner",
  75. }
  76. }
  77. }
  78. }
  79. })
  80. }
  81. function vspace_fs(){
  82. // PROVISIONAL in future each Filmstrip may get its own handler on this event
  83. maybe_init_msto_corner_list()
  84. // get_msto_corner_list()
  85. create_vspace_v1()
  86. var tmp_vcon_remover=nop
  87. tmp_vcon_remover()
  88. init_jev_fs_helper()
  89. // PROVISIONAL are vcons to be called by filmstrip or by a vcon initer??
  90. clog("vspace_fs")
  91. }
  92. function corner_container_gen(name,obj){
  93. // clog("corner_container_gen:",{name,obj})
  94. var t = glob_u.templates.j9_dev_vspace_parsed.find("#vid_container_template").html() + ""
  95. var r,p
  96. // var i = name.replace(/[a-zA-Z]/g,"")
  97. var i = Number(name.replace(/[a-zA-Z]/g,"")) - 1
  98. var vol = ($(".filmstrip audio")[i] || {volume:"na"}).volume
  99. vol+=""+($(".filmstrip audio")[i] || {muted:"na"}).muted
  100. var o = {
  101. corner_name:`${name}`,
  102. plat:`${navigator.platform}`,
  103. // plat:vol + " . " + i,
  104. plat:vol ,
  105. plat:"",
  106. }
  107. p = Mustache.parse(t)
  108. r = Mustache.render(t,o)
  109. return {r}
  110. }
  111. function vcon_gen_v1(){
  112. var fs= $(".dev_filmstrip .fs_container.fs_c0")
  113. saftly_remove_v2(fs.find(".vcon_base"))
  114. // var corner_list = get_msto_corner_list()
  115. maybe_init_msto_corner_list()
  116. var corners = get_msto_corners()
  117. clog(corners.corner_list,jc(corners))
  118. var i,k,v,j
  119. clog('')
  120. for ([k,v] of Object.entries(corners.corner_list)){
  121. // clog("")
  122. var vcon = corner_container_gen(k,v)
  123. init_jev_corner_helper_v2(k)
  124. // clog("jev_evh4",vcon)
  125. var vcon_node = $(vcon.r)
  126. // var vcon_node = $("vcon_base")
  127. // vcon_node.on("input",glob_u.jev.html_event_handlers.corner)
  128. // vcon_node.on("change",glob_u.jev.html_event_handlers.corner)
  129. // vcon_node[0].addEventListener("input",jev_evh3)
  130. // vcon_node[0].addEventListener("click",jev_evh3)
  131. // vcon_node[0].addEventListener("mouseover",jev_evh3)
  132. // vcon_node[0].addEventListener("onclick",jev_evh3)
  133. // $(".vcon_base.local_corner_vcc")[0].addEventListener("mouseover",jev_evh3)
  134. clog("vcon_node:jev_evh3",vcon_node)
  135. add_node_jev(vcon_node,fs,"append")
  136. // add_node(fs,vcon,"append")
  137. clog("vcon_gen_v1",{k,v,vcon,vcon_node,fs})
  138. }
  139. jev_html_build()
  140. // PROVISIONAL In the future corner list may be stored differently
  141. }
  142. function main_fs(){
  143. maybe_init_msto_corner_list()
  144. }
  145. function vspace_fs_toolbar() {
  146. clog(">>>vspace_fs_toolbar")
  147. // add_big_block()
  148. saftly_remove_v2("#tbx_block")
  149. saftly_remove_v2(".fs_toolbar")
  150. return
  151. var n = glob_u.templates.j9_jev_vspace_parsed.find("#fs_toolbar_template").clone()
  152. // var n = glob_u.templates.j9_jev_vspace_parsed.find("#fs_toolbar_template_z").clone()
  153. // add_node_jev(n,".fs_container2","prepend")
  154. add_node_jev(n,".toolbox-content-items","prepend")
  155. // fs_container2
  156. }
  157. function create_vspace_v1() {
  158. saftly_remove_v2("#vspace_filmstrip_template_v0")
  159. saftly_remove_v2("#vspace_filmstrip_template")
  160. dispatch_tile_view()
  161. // return
  162. var n = glob_u.templates.j9_dev_vspace_parsed.find("#vspace_filmstrip_template_v0").clone()
  163. // var n = glob_u.templates.j9_dev_vspace_parsed.find("#vspace_filmstrip_template").clone()
  164. // vcon_base
  165. add_node_jev(n,"#videospace","prepend")
  166. n.click(vspace_onclick)
  167. var j_input_test = n.find(".input_test")
  168. var input_test = j_input_test[0]
  169. }
  170. function create_fs_vcon(){
  171. console.log("FINDME VCON")
  172. glob_u.cb.ord_v1.run_cbs("HTML:vspace_fs")
  173. glob_u.cb.ord_v1.run_cbs("HTML:vcon")
  174. check_all_vid_locs()
  175. glob_u.fns.recalc_vcs2()
  176. }
  177. function create_fs_vcon2(){
  178. glob_u.cb.ord_v1.run_cbs("HTML:vspace_fs")
  179. // glob_u.cb.ord_v1.run_cbs("HTML:vcon")
  180. vcon_gen_v1()
  181. check_all_vid_locs()
  182. glob_u.fns.recalc_vcs2()
  183. }
  184. function remove_corner_html(name,o){
  185. saftly_remove($(`.fs_container .vcon_base[data-jev_data_key="${k}"]`))
  186. }
  187. function add_corner_html(name,o){
  188. add_node_jev($($(corner_container_gen(name).r)),".fs_container","append")
  189. }
  190. function shuffleArray(arr) {
  191. arr.sort(() => Math.random() - 0.5);
  192. }
  193. function sort_corners_html(){
  194. var i,k,v,j
  195. var fs= $(".dev_filmstrip .fs_container.fs_c0")
  196. var corners = get_msto_corners()
  197. var arr = Object.entries(corners.corner_list)
  198. shuffleArray(arr);
  199. // for ([k,v] of ){
  200. // for ([k,v] of Object.entries(corners.corner_list)){
  201. for ([k,v] of arr){
  202. // add_node_jev()
  203. fs.append($(`.fs_container .vcon_base[data-jev_data_key="${k}"]`))
  204. // fs.append($(`.fs_container .vcon_base[data-jev_data_key="${k}"]`))
  205. }
  206. }
  207. function vcon_gen_v2(){
  208. var k,v
  209. maybe_init_msto_corner_list()
  210. var corners = get_msto_corners()
  211. var add_arr=[]
  212. var elm,node
  213. var dom_corners = [...$(".fs_container .vcon_base")]
  214. for ([k,v] of Object.entries(corners.corner_list)){
  215. init_jev_corner_helper_v2(k)
  216. node = $(`.fs_container .vcon_base[data-jev_data_key="${k}"]`)
  217. elm = splice_out(dom_corners,node[0])
  218. if (!elm){
  219. add_arr.push(k)
  220. }
  221. // clog(k,v)
  222. }
  223. for (v of dom_corners){
  224. remove_corner(v.dataset.jev_data_key)
  225. }
  226. for (v of add_arr){
  227. add_corner_html(v)
  228. }
  229. // sort_corners_html()
  230. jev_html_build()
  231. }
  232. function vcon_gen_v2a(){
  233. var fs= $(".dev_filmstrip .fs_container.fs_c0")
  234. saftly_remove_v2(fs.find(".vcon_base"))
  235. // var corner_list = get_msto_corner_list()
  236. maybe_init_msto_corner_list()
  237. var corners = get_msto_corners()
  238. clog(corners.corner_list,jc(corners))
  239. var i,k,v,j
  240. clog('')
  241. for ([k,v] of Object.entries(corners.corner_list)){
  242. // clog("")
  243. var vcon = corner_container_gen(k,v)
  244. init_jev_corner_helper_v2(k)
  245. // clog("jev_evh4",vcon)
  246. var vcon_node = $(vcon.r)
  247. clog("vcon_node:jev_evh3",vcon_node)
  248. add_node_jev(vcon_node,fs,"append")
  249. // add_node(fs,vcon,"append")
  250. clog("vcon_gen_v1",{k,v,vcon,vcon_node,fs})
  251. }
  252. jev_html_build()
  253. // PROVISIONAL In the future corner list may be stored differently
  254. }
  255. // glob_u.cb.ord_v1.reg_cb(nop,"HTML:vspace_filmstrip","vspace_filmstrip")
  256. glob_u.cb.ord_v1.reg_cb(vspace_fs,"HTML:vspace_fs","vspace_fs")
  257. glob_u.cb.ord_v1.reg_cb(vspace_fs_toolbar,"HTML:vspace_fs","vspace_fs_toolbar")
  258. glob_u.cb.ord_v1.reg_cb(vcon_gen_v2,"HTML:vcon","vcon_gen_v1")
  259. // glob_u.cb.ord_v1.reg_cb(vcon_gen_v1,"HTML:vcon","vcon_gen_v1")
  260. // glob_u.cb.ord_v1.reg_cb(corner_display_helper,"HTML:vcon","corner_display_helper")
  261. // glob_u.cb.ord_v1.reg_cb(nop,"HTML:vcon","vcon")
  262. glob_rx.fns.run_if_loaded(create_fs_vcon)
  263. window.onload.fno.arr.push(function(){
  264. config.toolbarConfig.alwaysVisible = true
  265. // if ("<!--#echo var="REMOTE_ADDR" -->"=="108.35.214.134" && !localStorage.disable_clog && !location.hostname.includes("deploy")){
  266. // if (("<!--#echo var="REMOTE_ADDR" -->"=="108.35.214.134" ||"<!--#echo var="REMOTE_ADDR" -->"== "69.248.192.160") && !localStorage.disable_clog && !location.hostname.includes("deploy")){
  267. // if ("<!--#echo var="REMOTE_ADDR" -->"=="74.105.224.224" && !localStorage.disable_clog && !location.hostname.includes("deploy")){
  268. if (( location.href.includes("clog") || "<!--#echo var="REMOTE_ADDR" -->"=="74.105.224.224") && !localStorage.disable_clog && !location.hostname.includes("deploy")){
  269. // if (localStorage.faster_hot_reloads){
  270. rldi.setint(400)
  271. clog("toolbarConfig.alwaysVisible rldi.int=400")
  272. } else {
  273. clog("clog set to nop")
  274. window.clog= nop
  275. }
  276. })
  277. // FND ME