Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/im/ui/list/js/ |
Upload File : |
(function(){"use strict";BX.namespace("BX.im.list.queue");BX.im.list.queue=function(t){t=t||{};this.listInstance=t.list;this.TYPE_ALL="all";this.TYPE_ADD="add";this.TYPE_UPDATE="update";this.list={};this.list[this.TYPE_ADD]={};this.list[this.TYPE_UPDATE]={};this.pause=false;this.updateInterval=1e3;if(!this.listInstance){clearInterval(this.updateIntervalId);this.updateIntervalId=setInterval(this.worker.bind(this),this.updateInterval)}};BX.im.list.queue.prototype.add=function(t,e,i){if(!this.listInstance){return false}if(t==this.TYPE_ALL){return false}this.list[t][e]=i;return true};BX.im.list.queue.prototype.delete=function(t,e){if(!this.listInstance){return false}if(t==this.TYPE_ALL){delete this.list[this.TYPE_ADD][e];delete this.list[this.TYPE_UPDATE][e]}else{delete this.list[t][e]}return true};BX.im.list.queue.prototype.clear=function(){if(!this.listInstance){return false}this.list[this.TYPE_ADD]={};this.list[this.TYPE_UPDATE]={};return true};BX.im.list.queue.prototype.pause=function(){this.pause=true;return true};BX.im.list.queue.prototype.continue=function(){this.pause=false;return true};BX.im.list.queue.prototype.worker=function(){if(!this.listInstance||this.pause){return false}var t=new Date;var e=[];for(var i in this.list[this.TYPE_ADD]){if(!this.list[this.TYPE_ADD].hasOwnProperty(i)){continue}e.push(this.list[this.TYPE_ADD][i]);delete this.list[this.TYPE_ADD][i]}if(e.length>0){this.listInstance.addItems(e)}var s=[];for(var i in this.list[this.TYPE_UPDATE]){if(!this.list[this.TYPE_UPDATE].hasOwnProperty(i)){continue}s.push({filter:{"params.id":this.list[this.TYPE_UPDATE][i]["id"]},element:this.list[this.TYPE_UPDATE][i]});delete this.list[this.TYPE_UPDATE][i]}if(s.length>0){this.listInstance.updateItems(s)}if(e.length>0||s.length>0){console.info("BX.im.list.queue.worker: added - "+e.length+" / updated - "+s.length+" ("+(new Date-t)+"ms)",{add:e,update:s})}return true};BX.im.list.queue.prototype.destroy=function(){if(!this.listInstance){return false}clearInterval(this.updateIntervalId);return true}})();