Horror: Storm hits cruise ship and forces it to list 45 degrees – ‘It was like the Titanic’ (video)

Canadian passenger Dan So, 41, filmed people around him frantically trying to stand as objects fell and shattered around them as Royal Caribbean’s Explorer of the Seas capsized violently during a storm off its coast of Africa last week – with objects around them smashing to the ground.

“It was like the Titanic,” So told Kennedy News and Media, seeing “people screaming and glasses breaking.”

“I thought this could be the end and the ship would go into the water,” he added of the alarming “45 degree” tilt.

“I took out my mobile phone and texted my colleagues, telling them I don’t know what’s going to happen and to be careful. I was writing my last message, thinking I was going to die,” added the 41-year-old, who was traveling on a cruise ship for the first time in his life.

One passenger was reportedly injured during the bad weather as passengers were taken to their rooms for an hour for necessary checks to be carried out.

The ship made an unscheduled stop in Las Palmas to help the injured passenger before continuing on its way, the company said.

Melania Trump: Not moving into the White House – “This time it will be different”

Black Friday: What consumers should watch out for

Brazil: Man strapped with explosives detonates outside Supreme Court

Kostas Martakis: “When I entered, some people told me to undress”

#Horror #Storm #hits #cruise #ship #forces #list #degrees #Titanic #video

How can​ error handling⁣ be effectively ‌implemented in JavaScript ⁤ad loading ​processes?

​ It ⁤seems that the provided ⁤script ⁣is a JavaScript‌ code snippet, ⁢likely part of a‍ larger codebase for ​a ‌web page that handles ad scripts, ad placement, and other⁢ functionalities such‍ as push ⁢notifications and ‌commenting⁢ systems. Below, I’ll give you a brief explanation of various segments in the ⁢code along⁢ with some suggestions for improvement or cleanup.

### Code Explanation

1. **Removing Ads for Mobile**:

```javascript

‍ document.querySelectorAll('.adsense-for-mobile').forEach(function(e) {

⁣ ⁢ ⁤ ‍⁢ e.querySelector('.adsbygoogle').remove();

⁤});

⁣ ⁢ ```

This segment removes Google AdSense ad‌ elements from mobile displays by selecting them and calling `remove()`.

2. **Loading‌ Google⁣ AdSense**:

```javascript

const adSenseSlots = document.querySelectorAll('.adsbygoogle');

‌ const adSenseSlotCount = adSenseSlots.length;

if (adSenseSlotCount >⁢ 0) {

⁢ adSenseSlots.forEach(function(e){});

}

```

⁣ ‍​ Here, the script checks ⁣if there are any ad slots (adsbygoogle) present. However, ⁤there is no actual loading logic shown inside⁣ the loop.

3. **Adman Integration**:

​ ‌ ```javascript

​ window.AdmanQueue=window.AdmanQueue||[];

AdmanQueue.push(function(){Adman.adunit({id:338,h:'});

‌ ```

⁣This initializes the⁣ Adman ad⁣ service and defines an ad unit.

4. **OneSignal Initialization**:

⁢ ```javascript

window.OneSignalDeferred = window.OneSignalDeferred || [];

OneSignalDeferred.push(function(OneSignal) {

‍ ‍ OneSignal.init({

⁣ ​ ‌ ​ appId: "487cc53b-3b66-4f84-8803-3a3a133043ab",

​⁤ ‍ });

⁣⁢ });

‌ ```

This initializes ‌OneSignal push notifications with a specific ​app ID.

5. **Disqus Comments**:

‌```javascript

⁢ var disqus_config = function() {

this.page.url="

⁤ this.page.identifier = 1565586;

⁣ };

⁢ ⁢ ```

‍ ​ This sets up ⁢configuration for Disqus comments⁢ for a specific page identifier.

6. ⁣**Dynamic Script Loading**:

```javascript

setTimeout(function(){

‍ ⁢ ‍ (function() {

‍ ​ ​ ​ ​⁤ ‍ var ​d = document,

⁢ s = d.createElement('script');

s.src="

‍ s.setAttribute('data-timestamp', +new Date());

⁤ ⁣ ‌ ⁣ ‍(d.head || d.body).appendChild(s);

})();

},​ 3000);

```

This dynamically loads a script after a timeout, which is useful for delaying loading to improve initial load performance.

7. **Various‍ Ad Integrations**:⁤ There are​ multiple calls ‌to `asyncLoadScript` for loading ⁤different advertising solutions but with incomplete URL/syntax:

⁢ ```javascript

‍ // asyncLoadScript('...missing URL...');

```

### ⁢Suggestions ‍for ‌Improvement

1. **Complete the⁢ Script URLs**: ‌There are many instances ⁣where the⁣ script URLs or additional logic are missing. These ‍need to ⁣be filled in to ensure‍ the scripts load⁣ correctly.

2. **Error Handling**: ⁢Consider adding error ⁣handling around the ad loading processes to ⁤manage scenarios where scripts fail to load.

3. **Refactoring for Clarity**: ​If possible,⁢ refactor the ​code into modular functions to improve readability⁤ and maintainability.

4. **Optimize Ad Loading**:⁤ Use best ⁤practices for⁢ loading ads, such​ as lazy⁢ loading or asynchronous loading,‍ which could improve performance, especially ⁤on mobile devices.

5. **Testing for Performance**: After implementing ⁤changes, test‌ the performance of the⁤ page to ensure ‍that scripts ⁤load in a timely manner without negatively impacting user ⁢experience.

By ​addressing the above points, ⁣the ‍script can​ be made more robust and performant while ⁤ensuring a ⁤better user experience on the webpage.

Leave a Replay