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/main/core/ |
Upload File : |
(function(e){if(e.BX.frameCache)return;var a=e.BX;var t="compositeCache";var r=1440;var s=["bitrix_sessid","USER_ID","SERVER_TIME","USER_TZ_OFFSET","USER_TZ_AUTO"];var i="/bitrix/tools/composite_data.php";var n=false;a.frameCache=function(){};if(typeof localStorage!=="undefined"){a.frameCache.localStorage=new a.localStorage}else{a.frameCache.localStorage={set:a.DoNothing,get:function(){return null},remove:a.DoNothing}}a.frameCache.localStorage.prefix=function(){return"bx-"};a.frameCache.init=function(){this.cacheDataBase=null;this.tableParams={tableName:"composite",fields:[{name:"id",unique:true},"content","hash","props"]};this.frameDataReceived=false;this.frameDataInserted=false;if(a.type.isString(e.frameDataString)&&e.frameDataString.length>0){a.frameCache.onFrameDataReceived(e.frameDataString)}this.vars=e.frameCacheVars?e.frameCacheVars:{dynamicBlocks:{},page_url:"",params:{},storageBlocks:[]};var i=a.frameCache.localStorage.get(t)||{};for(var n=0;n<s.length;n++){var o=s[n];if(typeof a.message[o]!="undefined"){i[o]=a.message[o]}}a.frameCache.localStorage.set(t,i,r);a.addCustomEvent("onBXMessageNotFound",(function(e){if(a.util.in_array(e,s)){var r=a.frameCache.localStorage.get(t);if(r&&typeof r[e]!="undefined"){a.message[e]=r[e]}else{a.frameCache.getCompositeMessages()}}}));if(!e.frameUpdateInvoked){this.update(false);e.frameUpdateInvoked=true}if(e.frameRequestStart){a.ready((function(){a.onCustomEvent("onCacheDataRequestStart");a.frameCache.tryUpdateSessid()}))}if(e.frameRequestFail){a.ready((function(){setTimeout((function(){a.onCustomEvent("onFrameDataRequestFail",[e.frameRequestFail])}),0)}))}a.frameCache.insertBanner()};a.frameCache.getCompositeMessages=function(){try{a.ajax({method:"GET",dataType:"json",url:i,async:false,data:"",onsuccess:function(e){a.frameCache.setCompositeVars(e)}})}catch(e){a.debug("Composite sync request failed.")}};a.frameCache.setCompositeVars=function(e){if(!e){return}else if(e.lang){e=e.lang}var i=a.frameCache.localStorage.get(t)||{};for(var n in e){if(e.hasOwnProperty(n)){a.message[n]=e[n];if(a.util.in_array(n,s)){i[n]=e[n]}}}a.frameCache.localStorage.set(t,i,r)};a.frameCache.insertBlock=function(e,t){if(!a.type.isFunction(t)){t=function(){}}if(!e){t();return}var r=null;var s=null;var i=null;var n="bxdynamic_";if(e.ID.substr(0,n.length)===n){s=a(e.ID+"_start");i=a(e.ID+"_end");if(!s||!i){a.debug("Dynamic area "+e.ID+" was not found");t();return}}else{r=a(e.ID);if(!r){a.debug("Container "+e.ID+" was not found");t();return}}let o=false;let c=false;const f=m();u();l((()=>{c=true;h()}));function l(t){let r=f.styles;if(a.type.isArray(e.PROPS.CSS)&&e.PROPS.CSS.length>0){r=e.PROPS.CSS.concat(r)}let s=f.externalJS;if(a.type.isArray(e.PROPS.JS)&&e.PROPS.JS.length>0){s=s.concat(e.PROPS.JS)}const i=r.concat(s);if(i.length>0){a.load(i,t)}else{t()}}function h(){if(r){if(e.PROPS.USE_ANIMATION){r.style.opacity=0;r.innerHTML=e.CONTENT;new a.easing({duration:1500,start:{opacity:0},finish:{opacity:100},transition:a.easing.makeEaseOut(a.easing.transitions.quart),step:function(e){r.style.opacity=e.opacity/100},complete:function(){r.style.cssText=""}}).animate()}else{r.innerHTML=e.CONTENT}}else{a.frameCache.removeNodes(s,i);s.insertAdjacentHTML("afterEnd",e.CONTENT)}o=true;if(c){d()}}function u(){if(a.Type.isStringFilled(f.html)){document.head.insertAdjacentHTML("beforeend",f.html)}a.evalGlobal(f.inlineJS.join(";"))}function m(){var t={styles:[],inlineJS:[],externalJS:[],html:""};if(!a.type.isArray(e.PROPS.STRINGS)||e.PROPS.STRINGS.length<1){return t}var r=a.processHTML(e.PROPS.STRINGS.join(""),false);for(var s=0,i=r.SCRIPT.length;s<i;s++){var n=r.SCRIPT[s];if(n.isInternal){t.inlineJS.push(n.JS)}else{t.externalJS.push(n.JS)}}t.styles=r.STYLE;t.html=r.HTML;return t}function d(){c=true;if(o){a.ajax.processRequestData(e.CONTENT,{scriptsRunFirst:false,dataType:"HTML"});if(a.type.isArray(e.PROPS.BUNDLE_JS)){a.setJSList(e.PROPS.BUNDLE_JS)}if(a.type.isArray(e.PROPS.BUNDLE_CSS)){a.setCSSList(e.PROPS.BUNDLE_CSS)}t()}}};a.frameCache.removeNodes=function(e,a){var t=false;var r=e.parentNode;var s=Array.prototype.slice.call(r.childNodes);for(var i=0,n=s.length;i<n;i++){if(t){if(s[i]===a){break}else{r.removeChild(s[i])}}else if(s[i]===e){t=true}}};a.frameCache.update=function(e,t){t=!!t;e=typeof e=="undefined"?true:e;if(e){this.requestData()}if(!t){a.ready(a.proxy((function(){if(!this.frameDataReceived){this.invokeCache()}}),this))}};a.frameCache.invokeCache=function(){if(this.vars.storageBlocks&&this.vars.storageBlocks.length>0){a.onCustomEvent(this,"onCacheInvokeBefore",[this.vars.storageBlocks]);this.readCacheWithID(this.vars.storageBlocks,a.proxy(this.insertFromCache,this))}};a.frameCache.handleResponse=function(t){if(t==null)return;a.onCustomEvent("onFrameDataReceivedBefore",[t]);if(t.dynamicBlocks&&t.dynamicBlocks.length>0){this.insertBlocks(t.dynamicBlocks,false);this.writeCache(t.dynamicBlocks)}a.onCustomEvent("onFrameDataReceived",[t]);if(t.isManifestUpdated=="1"&&this.vars.CACHE_MODE==="APPCACHE"&&e.applicationCache&&(e.applicationCache.status==e.applicationCache.IDLE||e.applicationCache.status==e.applicationCache.UPDATEREADY)){e.applicationCache.update()}if(t.htmlCacheChanged===true&&this.vars.CACHE_MODE==="HTMLCACHE"){a.onCustomEvent("onHtmlCacheChanged",[t])}if(a.type.isArray(t.spread)){for(var r=0;r<t.spread.length;r++){(new Image).src=t.spread[r]}}};a.frameCache.requestData=function(){var t=[{name:"BX-ACTION-TYPE",value:"get_dynamic"},{name:"BX-REF",value:document.referrer},{name:"BX-CACHE-MODE",value:this.vars.CACHE_MODE},{name:"BX-CACHE-BLOCKS",value:this.vars.dynamicBlocks?JSON.stringify(this.vars.dynamicBlocks):""}];if(this.vars.AUTO_UPDATE===false&&this.vars.AUTO_UPDATE_TTL&&this.vars.AUTO_UPDATE_TTL>0){var r=Date.parse(document.lastModified);if(!isNaN(r)){var s=(new Date).getTime();if(r+this.vars.AUTO_UPDATE_TTL*1e3<s){t.push({name:"BX-INVALIDATE-CACHE",value:"Y"})}}}if(this.vars.CACHE_MODE==="APPCACHE"){t.push({name:"BX-APPCACHE-PARAMS",value:JSON.stringify(this.vars.PARAMS)});t.push({name:"BX-APPCACHE-URL",value:this.vars.PAGE_URL?this.vars.PAGE_URL:""})}a.onCustomEvent("onCacheDataRequestStart");var i=e.location.href;var n=i.indexOf("#");if(n>0){i=i.substring(0,n)}i+=(i.indexOf("?")>=0?"&":"?")+"bxrand="+(new Date).getTime();a.ajax({timeout:60,method:"GET",url:i,data:{},headers:t,skipBxHeader:true,processData:false,onsuccess:a.proxy(a.frameCache.onFrameDataReceived,this),onfailure:function(){e.frameRequestFail={error:true,reason:"bad_response",url:i,xhr:this.xhr,status:this.xhr?this.xhr.status:0};a.onCustomEvent("onFrameDataRequestFail",[e.frameRequestFail])}})};a.frameCache.onFrameDataReceived=function(t){var r=null;try{r=JSON.parse(t)}catch(r){var s={error:true,reason:"bad_eval",response:t};e.frameRequestFail=s;a.ready((function(){setTimeout((function(){a.onCustomEvent("onFrameDataRequestFail",[s])}),0)}));return}this.frameDataReceived=true;if(r&&a.type.isNotEmptyString(r.redirect_url)){e.location=r.redirect_url;return}if(r&&r.error===true){e.frameRequestFail=r;a.ready(a.proxy((function(){setTimeout(a.proxy((function(){a.onCustomEvent("onFrameDataRequestFail",[r])}),this),0)}),this));return}a.frameCache.setCompositeVars(r);a.ready(a.proxy((function(){this.handleResponse(r);this.tryUpdateSessid()}),this))};a.frameCache.insertFromCache=function(e,t){if(!this.frameDataReceived){var r=e.items;if(r.length>0){for(var s=0;s<r.length;s++){r[s].PROPS=JSON.parse(r[s].PROPS)}this.insertBlocks(r,true)}a.onCustomEvent(this,"onCacheInvokeAfter",[this.vars.storageBlocks,e])}};a.frameCache.insertBlocks=function(t,r){var s=new Set;for(var i=0;i<t.length;i++){var n=t[i];a.onCustomEvent("onBeforeDynamicBlockUpdate",[n,r]);if(n.PROPS.AUTO_UPDATE===false){continue}s.add(n)}let o=0;const c=()=>{if(e.performance){var s=performance.getEntries();for(var i=0;i<s.length;i++){var n=s[i];if(n.initiatorType==="xmlhttprequest"&&n.name&&n.name.match(/bxrand=[0-9]+/)){this.requestTiming=n}}if(e.performance.measure){e.performance.measure("Composite:LCP");var o=performance.getEntriesByName("Composite:LCP");if(o.length>0&&o[0].duration){this.lcp=Math.ceil(o[0].duration)}}}a.onCustomEvent("onFrameDataProcessed",[t,r]);this.frameDataInserted=true};const f=()=>{if(++o===s.size){c()}};if(s.size===0){c()}else{s.forEach((function(e){if(e&&e.HASH&&e.PROPS&&e.PROPS.ID){this.vars.dynamicBlocks[e.PROPS.ID]=e.HASH}this.insertBlock(e,f)}),this)}};a.frameCache.writeCache=function(e){for(var a=0;a<e.length;a++){if(e[a].PROPS.USE_BROWSER_STORAGE===true){this.writeCacheWithID(e[a].ID,e[a].CONTENT,e[a].HASH,JSON.stringify(e[a].PROPS))}}};a.frameCache.openDatabase=function(){var e=this.cacheDataBase!=null;if(!e){this.cacheDataBase=new a.Dexie("composite");if(this.cacheDataBase!=null){this.cacheDataBase.version(1).stores({composite:"&ID,CONTENT,HASH,PROPS"});e=true}}return e};a.frameCache.writeCacheWithID=function(e,t,r,s){if(a.frameCache.openDatabase()){if(typeof s=="object"){s=JSON.stringify(s)}this.cacheDataBase.composite.put({ID:e,CONTENT:t,HASH:r,PROPS:s})}};a.frameCache.readCacheWithID=function(e,t){if(a.frameCache.openDatabase()){this.cacheDataBase.composite.where("ID").anyOf(e).toArray().then(function(e){t({items:e})}.bind(this))}else if(typeof t!="undefined"){t({items:[]})}};a.frameCache.insertBanner=function(){if(!this.vars.banner||!a.type.isNotEmptyString(this.vars.banner.text)){return}a.ready(a.proxy((function(){var e=a.create("a",{props:{className:"bx-composite-btn"+(a.type.isNotEmptyString(this.vars.banner.style)?" bx-btn-"+this.vars.banner.style:""),href:this.vars.banner.url},attrs:{target:"_blank"},text:this.vars.banner.text});if(a.type.isNotEmptyString(this.vars.banner.bgcolor)){e.style.backgroundColor=this.vars.banner.bgcolor;if(a.util.in_array(this.vars.banner.bgcolor.toUpperCase(),["#FFF","#FFFFFF","WHITE"])){a.addClass(e,"bx-btn-border")}}var t=a("bx-composite-banner");if(t){t.appendChild(e)}else{a.addClass(e,"bx-composite-btn-fixed");document.body.appendChild(a.create("div",{style:{position:"relative"},children:[e]}))}}),this))};a.frameCache.tryUpdateSessid=function(){if(n){return}var e="bitrix_sessid";var r=false;if(typeof a.message[e]!="undefined"){r=a.message[e]}else{var s=a.frameCache.localStorage.get(t)||{};if(typeof s[e]!="undefined"){r=s[e]}}if(r!==false){n=true;this.updateSessid(r)}};a.frameCache.updateSessid=function(e){var a=document.getElementsByName("sessid");for(var t=0;t<a.length;t++){a[t].value=e}};a.frameCache.init()})(window); //# sourceMappingURL=core_frame_cache.map.js