/*! elementor-pro - v3.26.0 - 17-12-2024 */ (()=>{"use strict";class Screenshot extends elementorModules.ViewModule{getDefaultSettings(){return{empty_content_headline:"Empty Content.",crop:{width:1200,height:1500},excluded_external_css_urls:["https://kit-pro.fontawesome.com"],external_images_urls:["https://i.ytimg.com"],timeout:15e3,render_timeout:5e3,timerLabel:null,timer_label:`${ElementorScreenshotConfig.post_id} - timer`,image_placeholder:"data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=",isDebug:elementorCommonConfig.isElementorDebug,isDebugSvg:!1,...ElementorScreenshotConfig}}getDefaultElements(){const e=jQuery(ElementorScreenshotConfig.selector),t=e.find(".elementor-section-wrap > .elementor-section, .elementor > .elementor-section");return{$elementor:e,$sections:t,$firstSection:t.first(),$notElementorElements:elementorCommon.elements.$body.find("> *:not(style, link)").not(e),$head:jQuery("head")}}onInit(){return super.onInit(),this.log("Screenshot init","time"),this.timeoutTimer=setTimeout(this.screenshotFailed.bind(this),this.getSettings("timeout")),this.captureScreenshot()}captureScreenshot(){return this.elements.$elementor.length||(elementorCommon.helpers.consoleWarn("Screenshots: The content of this page is empty, the module will create a fake conent just for this screenshot."),this.createFakeContent()),this.removeUnnecessaryElements(),this.handleIFrames(),this.removeFirstSectionMargin(),this.handleLinks(),this.loadExternalCss(),this.loadExternalImages(),Promise.resolve().then(this.createImage.bind(this)).then(this.createImageElement.bind(this)).then(this.cropCanvas.bind(this)).then(this.save.bind(this)).then(this.screenshotSucceed.bind(this)).catch(this.screenshotFailed.bind(this))}createFakeContent(){this.elements.$elementor=jQuery("
").css({height:this.getSettings("crop.height"),width:this.getSettings("crop.width"),display:"flex",alignItems:"center",justifyContent:"center"}),this.elements.$elementor.append(jQuery("

").css({fontSize:"85px"}).html(this.getSettings("empty_content_headline"))),document.body.prepend(this.elements.$elementor)}loadExternalCss(){const e=[this.getSettings("home_url"),...this.getSettings("excluded_external_css_urls")].map((e=>`[href^="${e}"]`)).join(", ");jQuery("link").not(e).each(((e,t)=>{const s=jQuery(t),n=s.clone();n.attr("href",this.getScreenshotProxyUrl(s.attr("href"))),this.elements.$head.append(n),s.remove()}))}loadExternalImages(){const e=this.getSettings("external_images_urls").map((e=>`img[src^="${e}"]`)).join(", ");jQuery(e).each(((e,t)=>{const s=jQuery(t);s.attr("src",this.getScreenshotProxyUrl(s.attr("src")))}))}handleIFrames(){this.elements.$elementor.find("iframe").each(((e,t)=>{const s=jQuery(t),n=jQuery("
",{css:{background:"gray",width:s.width(),height:s.height()}});s.before(n),s.remove()}))}removeUnnecessaryElements(){let e=0;this.elements.$sections.filter(((t,s)=>{let n=!1;return e>=this.getSettings("crop.height")&&(n=!0),e+=jQuery(s).outerHeight(),n})).each(((e,t)=>{t.remove()})),this.elements.$notElementorElements.remove()}handleLinks(){elementorCommon.elements.$body.find("a").attr("href","/")}removeFirstSectionMargin(){this.elements.$firstSection.css({marginTop:0})}createImage(){const e=new Promise((e=>{window.addEventListener("load",(()=>{e()}))})),t=new Promise((e=>{setTimeout((()=>{e()}),this.getSettings("render_timeout"))}));return Promise.race([e,t]).then((()=>{if(this.log("Start creating screenshot."),this.getSettings("isDebugSvg"))return domtoimage.toSvg(document.body,{imagePlaceholder:this.getSettings("image_placeholder")}).then((e=>this.download(e))),Promise.reject("Debug SVG.");return/^((?!chrome|android).)*safari/i.test(window.userAgent)?(this.log('Creating screenshot with "html2canvas"'),html2canvas(document.body).then((e=>e.toDataURL("image/png")))):(this.log('Creating screenshot with "dom-to-image"'),domtoimage.toPng(document.body,{imagePlaceholder:this.getSettings("image_placeholder")}))}))}download(e){const t=jQuery("",{href:e,download:"debugSvg.svg",html:"Download SVG"});elementorCommon.elements.$body.append(t),t.trigger("click")}createImageElement(e){const t=new Image;return t.src=e,new Promise((e=>{t.onload=()=>e(t)}))}cropCanvas(e){const t=this.getSettings("crop.width"),s=this.getSettings("crop.height"),n=document.createElement("canvas"),i=n.getContext("2d"),o=t/e.width;return n.width=t,n.height=s>e.height?e.height:s,i.drawImage(e,0,0,e.width,e.height,0,0,e.width*o,e.height*o),Promise.resolve(n)}save(e){return new Promise(((t,s)=>{elementorCommon.ajax.addRequest("screenshot_save",{data:{post_id:this.getSettings("post_id"),screenshot:e.toDataURL("image/png")},success:e=>{this.log(`Screenshot created: ${encodeURI(e)}`),t(e)},error:()=>{this.log("Failed to create screenshot."),s()}})}))}markAsFailed(){return new Promise(((e,t)=>{elementorCommon.ajax.addRequest("screenshot_failed",{data:{post_id:this.getSettings("post_id")},success:()=>{this.log("Marked as failed."),e()},error:()=>{this.log("Failed to mark this screenshot as failed."),t()}})}))}getScreenshotProxyUrl(e){return`${this.getSettings("home_url")}?screenshot_proxy&nonce=${this.getSettings("nonce")}&href=${e}`}screenshotSucceed(e){this.screenshotDone(!0,e)}screenshotFailed(e){this.log(e,null),this.markAsFailed().then((()=>this.screenshotDone(!1)))}screenshotDone(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;clearTimeout(this.timeoutTimer),this.timeoutTimer=null,window.parent.postMessage({name:"capture-screenshot-done",success:e,id:this.getSettings("post_id"),imageUrl:t},"*"),this.log(`Screenshot ${e?"Succeed":"Failed"}.`,"timeEnd")}log(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"timeLog";this.getSettings("isDebug")&&(console.log("string"==typeof e?`${this.getSettings("post_id")} - ${e}`:e),t&&console[t](this.getSettings("timer_label")))}}jQuery((()=>{new Screenshot}))})(); The Tach - Page 14 of 24 -

Getting Ready for Future AI Regulations Today

Future AI Regulations

It is understood the importance of preparing for Future AI Regulations now. Why AI regulatory preparation is important AI technologies evolve industries, including, but not limited to healthcare and finance in the shortest time possible. What is promising about this is growth, and like most growth, it has its risks too. Failure to regulate AI … Read more

Australia’s Plan to Ban Children from Social Media: Can It Succeed?

Social Media Ban

The Australian government’s proposal to implement a bold Social Media Ban for children under 16 years has ignited an intense national debate. Social media apps and websites such as X, TikTok, Facebook, and Instagram among others are primarily on the receiving end of such a plan. This proposal is aimed at exploring the effects or … Read more

Apple Sales Fall Year-on-Year on China’s Singles’ Day, While Huawei Rises 7%

Apple sales fall

The Apple sales fall in the period that China celebrated its Singles’ Day shopping festival has raised curiosity and has brought to light some of the problems that currently affect Apple in one of its more important markets. Sold about 2 million handsets from October 18 to November 10 which, sales declined by “double-digit percentages”, … Read more

Can Cambridge Lead the UK’s Deep Tech Innovation Revolution?

UK's Deep Tech

There is the possibility of transforming Cambridge into a major deep-tech hotspot. This article aims to discuss the benefits and drawbacks of the UK’s Deep Tech Revolution and its prospects in the context of technologies in the future. What is Deep Tech Innovation? It means deep technology is a sophisticated form of technology that tackles … Read more

Revolutionizing Learning: Top Educational Technology Startup Ideas

Educational Technology Startup

Discover innovative Educational Technology startup ideas that are transforming education for everyone. An Overview of Educational Technologies EdTech which stands for educational technology is revolutionizing learning today. Education here is complemented with technology resulting in proper learning experiences. From smart classrooms to mobile apps, EdTech offers many innovative solutions. This technology helps both students and … Read more

Breaking into ICS Pen-Testing: 3 Steps for Heavy Metal Hacking

Breaking into ICS Pen-Testing

Learn how to Breaking into ICS Pen-Testing with three steps. Discover essential skills, tools, and tips for this cybersecurity field. What Is ICS Pen-Testing? ICS pen-testing, or Industrial Control System penetration testing means checking critical systems for a slew of vulnerabilities. Such systems are used in regulating functions in sectors such as energy, manufacturing, as … Read more

Huawei Opens Pre-Orders for the Mate 70 Smartphone in China

Huawei starts taking pre-orders

Huawei Technologies has formally posted that Huawei starts taking pre-orders for the much anticipated Mate 70 smartphone Once again, a statement on the WeChat official account underlines the firm’s continuous efforts in the process of striving for decentralization in the highly competitive smartphone market. Another event set to take place on the sixth is a … Read more

Creating a Virtual Art Gallery with Artificial Intelligence

Art gallery

A virtual art gallery transforms how artists present their work to the public. Interactive, immersive, and easily available digital exhibitions are now possible because of developments in neural networks in art. The emergence of virtual galleries allows artists to display their work outside of geographical boundaries, fostering innovation on a worldwide scale. This article explores … Read more

Iranian Hackers Deploy WezRat Malware in Attacks Targeting Israeli Organizations

Iranian Hackers Attacks

Specialists in cyber security identified a serious new threat in the sphere of hacker attacks carried out by Iran. These attacks employ WezRat malware: it is a remote access trojan as well as an information stealer. This advanced tool launched by Iranian state-sponsored hackers to perpetrate the network, steal confidential information, and perform destructive operations. … Read more

Phil Spencer Discusses Why Xbox Doesn’t Have a PS5 Pro Equivalent

Phil Spencer

In this article, Phil Spencer addresses why Xbox has no direct PS5 Pro equivalent. He talks about Microsoft’s strategy and plans for the console. Discover why Xbox is taking a different route and how this impacts gamers. Introduction: In gaming, there is a lot of rivalry that is evident most especially between Xbox and PlayStation. … Read more