🎁Free Shipping on Orders Over $59🎉
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
1 / 8
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
Portable Security Door Lock
50% OFF
Fnkus

Portable Security Door Lock

$9.95 $19.95
0 sold
Color
Qty 1000 in stock

STAY IN CONTROL OF YOUR OWN SECURITY

HOW MUCH DO YOU VALUE YOUR PRIVACY & SECURITY?

With all the recent reports of burglaries and break-ins at Hotels in recent weeks, it's important now more than ever to keep yourself protected from outside threats barging into your home unexpectedly.
Well, with our lock you never have to worry about intruders stepping inside your house ever again. This simple, yet effective travel door lock was brilliantly engineered to prevent any outside jimmying, maneuvering, or attempts from breaking into your home.

✅ Ideal For Hotels, Rented Housing, Dorms Etc
✅ Fits All Door Sizes & Shapes
✅ Completely Portable Anywhere You Travel
✅ Strong & Reliable Mechanism 
✅ High-Quality Steel Preventing It From Breaking
✅ No Handy Man Or Installation Required
✅ Easily Fits Into Door Within Seconds 
✅ Long-Term & Durable 

Make sure you and your loved ones are secure and safe with the Intruder Defender!

  • Enhanced Privacy: Provides additional safety, security, and privacy.
  • Suitable for Most Doors: Can be used on doors with or without locks. Fits almost any door thickness.
  • Easy to Install: Installs in seconds and doesn't require tools.
  • Durable: Made of military-grade steel, so it's not easy to break or deform.
  • Lock-and-Stay: This lock works together with your existing locks to provide enhanced security while you're in a room. 
  • Protect Yourself Anywhere: Use it at home or take it with you. Perfect for travel, apartment living, hotel, or student dorm. Also great if you are staying at an AirBNB or any other short-term rental.
  • Lightweight and Easy to Carry: It's compact enough to keep in your handbag or pocket.

SPECIFICATIONS

  • Material: PP+Stainless Steel
  • Item Weight: 130g
  • Color: Red

PACKAGE INCLUDED

  • 1x Portable Security Door Lock
const TAG = 'spz-custom-painter-button-animation'; const MAX_ITERATION_COUNT = 99999999; const SITE = (window.C_SETTINGS && window.C_SETTINGS.routes && window.C_SETTINGS.routes.root) || ''; const ADD_TO_CART_ANIMATION_SETTING = `${SITE}/api/marketing_atmosphere_app/add_to_cart_btn_animation/setting`; class SpzCustomPainterButtonAnimation extends SPZ.BaseElement { /**@override */ static deferredMount() { return false; } /** @param {!SpzElement} element */ constructor(element) { super(element); /** @private {!../../src/service/xhr-impl.Xhr} */ this.xhr_ = SPZServices.xhrFor(this.win); /** @private {Object} */ this.data_ = null; /** @private {Element} */ this.addToCartButton_ = null; /** @private {boolean} */ this.productAvailable_ = true; /** @private {number} */ this.timerId_ = null; /** @private {number} */ this.animationExecutionCount_ = 0; /** @private {boolean} */ this.selectedVariantAvailable_ = true; /** @private {number} */ this.delay_ = 5000; /** @private {number} */ this.iterationCount_ = 5; /** @private {string} */ this.animationClass_ = ''; } /** @override */ isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } /** @override */ buildCallback() { this.productAvailable_ = this.element.hasAttribute('product-available'); this.selectedVariantAvailable_ = this.element.hasAttribute('selected-variant-available'); } /** @override */ mountCallback() { this.render_(); } /** @private */ render_() { if (!this.productAvailable_) { return; } this.fetch_().then((data) => { if (!data) { return; } this.data_ = data; this.animationClass_ = `painter-${data.animation_name}-animation`; this.iterationCount_ = data.animation_iteration_count === 'infinite' ? MAX_ITERATION_COUNT : data.animation_iteration_count; const animationDuration = 1; const animationDelay = data.animation_delay || 5; this.delay_ = (animationDuration + animationDelay) * 1000; this.handleButtonEffect_(); }); } /** * @param {JsonObject} data * @return {(null|Object)} * @private */ parseJson_(data) { try { return JSON.parse(data); } catch (e) { return null; } } /** * @return {Promise} * @private */ fetch_() { return this.xhr_.fetchJson(ADD_TO_CART_ANIMATION_SETTING).then((data) => { if (!data || !data.enabled) { return null; } return this.parseJson_(data.detail); }); } /** @private */ getAddToCartButton_() { this.addToCartButton_ = SPZCore.Dom.scopedQuerySelector( document.body, '[data-section-type="product"] [role="addToCart"], [data-section-type="product_detail"] [role="addToCart"], [data-section-type="product_detail"] [data-click="addToCart"], [data-section-type="product"] [data-click="addToCart"]' ); } /** @private */ restartAnimation_() { this.addToCartButton_.classList.remove(this.animationClass_); this.addToCartButton_./* OK */ offsetWidth; this.addToCartButton_.classList.add(this.animationClass_); this.animationExecutionCount_++; } /** @private */ clearTimer_() { this.win.clearInterval(this.timerId_); this.timerId_ = null; } /** @private */ setupTimer_() { this.timerId_ = this.win.setInterval(() => { this.restartAnimation_(); if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); this.clearTimer_(); } }, this.delay_); } /** @private */ restartTimer_() { if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); return; } this.setupTimer_(); } /** @private */ listenVariantChange_() { SPZUtils.Event.listen(self.document, 'dj.variantChange', (e) => { const selectedVariant = e.detail && e.detail.selected; if (!selectedVariant) { return; } const {available} = selectedVariant; if (this.selectedVariantAvailable_ !== available) { this.selectedVariantAvailable_ = available; this.clearTimer_(); if (available) { this.restartTimer_(); } } }); } /** @private */ removeAnimationClass_() { this.win.setTimeout(() => { this.addToCartButton_.classList.remove(this.animationClass_); }, 1000); } /** @private */ handleButtonEffect_() { this.getAddToCartButton_(); if (!this.addToCartButton_) { return; } if (this.selectedVariantAvailable_) { ++this.animationExecutionCount_; this.addToCartButton_.classList.add(this.animationClass_); if (this.iterationCount_ === 1) { this.removeAnimationClass_(); return; } this.setupTimer_(); } this.listenVariantChange_(); } } SPZ.defineElement(TAG, SpzCustomPainterButtonAnimation);