Help
RSS
API
Feed
Maltego
Contact
Domain > 2ifx.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2022-08-03
208.117.45.217
(
ClassC
)
2025-12-07
91.99.103.223
(
ClassC
)
Port 80
HTTP/1.1 200 OKDate: Sun, 07 Dec 2025 20:42:39 GMTServer: ApacheUpgrade: h2,h2cConnection: UpgradeVary: Accept-EncodingTransfer-Encoding: chunkedContent-Type: text/html; charsetUTF-8 nlbr>!DOCTYPE html>html langen>head> meta charsetUTF-8 /> meta nameviewport contentwidthdevice-width, initial-scale1 /> title>2ifx.com | 01/title> link hrefhttps://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css relstylesheet /> link relicon typeimage/x-icon hrefhttps://www.networthdomains.nl/wp-content/uploads/2025/03/cropped-Screenshot-2025-03-25-142041-32x32.png > link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css> style> body { /* The image used */ background-image: url(img/bg.jpg); background-size: cover; /* Scales image to cover entire screen */ background-repeat: no-repeat; /* Prevents tiling */ background-position: center center; /* Centers the image */ background-attachment: fixed; /* Optional: keeps image fixed when scrolling */ } .bg-light { background-color: none!important;} /* NEW: Section styling for canvas or other content */ .canvas-section { text-align: center; padding: 0px; } /* NEW: Visual title styling inside sections */ .section-title { font-size: 32px; } /* NEW: Basic canvas styling (optional, only needed if you use canvas) */ canvas { width: 100%; height: auto; border: 4px solid #fff; border-radius: 5px; }/**/ inputtypenumber::-webkit-inner-spin-button, inputtypenumber::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; } inputtypenumber { -moz-appearance: textfield; } /* ticker BEGIN */ .ticker-wrapper { background-color: #ffc600; color: #012327;/* padding: 6px; */ white-space: nowrap; overflow: hidden; box-sizing: border-box; font-size: 1.5rem; font-weight: bold; width: 100%; background: #f1c40f; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc;/* padding: 10px 0; */ position: relative;/* height: 40px; */ } .ticker-content { display: inline-block; padding-right: 100%; /* spacing for seamless loop */ font-size: 15px; text-transform: uppercase; letter-spacing: 1px; font-family: PT Sans; color: #000; } .ticker-content span { display: inline-block; font-family: sans-serif; font-size: 16px; padding-right: 50px; } .ticker-content span.tekoop { color: #012327; /* background-color: white; */ padding: 2px 5px; border-radius: 4px; font-weight: normal; } .ticker-content span.verkocht { color: #fff; /* background-color: white; */ padding: 2px 5px; border-radius: 4px; font-weight: normal; } /* ticker END */ /* Flexbox voor container */ .container { display: flex; flex: 1; padding: 0; } .left { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; background-size: cover; background-position: center; height: 100vh; position: relative; /* voor overlay */ } .left h1 { font-size: 3rem; margin: 0; padding: 20px; } .left p { font-size: 1.5rem; margin-top: 10px; color: #00ff95; font-weight: bold; padding: 20px; } /* Overlay voor tekst op bedrijfswagen */ .text-overlay { position: absolute; top: 50%; left: 60%; transform: translate(-50%, -50%); width: 500px; min-height: 100px; padding: 10px; color: #000; font-size: 53px; border-radius: 6px; display: none; resize: both; overflow: none; } .text-overlay:focus { outline: 0px solid #ffc600; } /* lightbox */ .interest-button { background-color: #ffc600; color: white; width: auto; font-size: 1.5rem; padding: 5px 5px; border: none; margin: 20px; border-radius: 5px; cursor: pointer; z-index: 1002; } .interest-button:hover { background-color: #ffc600; color: white; border: none; cursor: pointer; z-index: 1002; } .lightbox { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); display: none; align-items: center; justify-content: center; z-index: 1003; } .lightbox-content { background-color: #02403c; padding: 30px; border-radius: 10px; width: 90%; max-width: 600px; color: white; position: relative; } .lightbox-content h2 { margin-top: 0; } .lightbox-close { position: absolute; top: 10px; right: 15px; font-size: 1.5rem; cursor: pointer; } /* Formulieren */ form { display: flex; flex-direction: column; gap: 15px; } .form-row { display: flex; gap: 10px; } .form-row input, .form-row textarea { flex: 1; padding: 10px; font-size: 1rem; border: none; border-radius: 4px; background-color: #fff; color: #000; } .bid-input { display: flex; align-items: center; background-color: #fff; border-radius: 4px; } .bid-input span { padding: 10px; background-color: #eee; color: #000; border-top-left-radius: 4px; border-bottom-left-radius: 4px; } .bid-input input { border: none; padding: 10px; font-size: 1rem; border-radius: 0 4px 4px 0; width: 100%; background-color: #fff; color: #000; } input::placeholder, textarea::placeholder { color: #555; } .pro-button { background-color: #ffc600; color: black; cursor: pointer; padding: 10px; font-size: 1rem; border: none; border-radius: 4px; } .pro-button:hover { background-color: #e6b800; } .carousel-control-next-icon {background-color: #ffc600;padding: 0px;}.carousel-control-prev-icon {background-color: #ffc600;padding: 0px;}a {color: #ffc600;text-decoration: none;}.footer-content { margin-top: 1rem; margin-left: 1rem; margin-right: 1rem; text-align: center;}.footer-content span { font-size: clamp(0.6rem, 2vw + 0.5rem, 0.6rem); color: #ffc600; display: inline-block; max-width: 100%; word-wrap: break-word;}.footer-content img { max-width: 100%; height: auto;}.fade-in { opacity: 0; animation: fadeInEffect 2s ease-in forwards;}.language_flags { float: right;} .language_flags img { width:16px; height: 11px; }@keyframes fadeInEffect { to { opacity: 1; }} /style>/head>body> div classcontainer-fluid> div classrow mb-4> div classticker-wrapper idticker> div classticker-content idtickerContent> /div> /div> /div> div classrow> !-- LEFT COLUMN --> div classcol-md-6 p-1> /div> div classcol-md-6 p-s-3> div classlanguage_flags> !-- Flag switcher --> a href?langen>img srcimg/flag_en.png altEnglish />/a> a href?langnl>img srcimg/flag_nl.png altDutch />/a> /div> /div> /div> div classrow> !-- LEFT COLUMN --> div classcol-md-6 p-1> !-- LEFT COLUMN: INFOBOX classalign-items-center justify-content-center --> div classd-flex flex-column h-100 p-3 rounded stylemin-height: 250px;> h3 classuppercase fs-3 fs-md-2 fs-lg-1 ms-4 fade-in> span stylefont-size: clamp(1.25rem, 2vw + 0.5rem, 2.5rem); color: #fff;> strong>Deze domeinnaam is te koop!/strong> /span>/h3> p classmt-4 ms-4 fade-in>span stylefont-size: clamp(1.0rem, 2vw + 0.5rem, 1.0rem); color: #ffffff;> strong stylecolor: #ffc600;>2ifx.com/strong> is professioneel, herkenbaar en krachtig.Ideaal voor een merk, bedrijf of persoonlijk project met ambitie./br>/br>i classbi bi-check-circle-fill>/i> Makkelijk te onthouden/br>i classbi bi-check-circle-fill>/i> Direct inzetbaar/br>i classbi bi-check-circle-fill>/i> Klaar voor groei/br>/br>Mis deze kans niet en neem nu contact op! /span>/p> button classbtn interest-button btn-sm stylecolor:white onclicktoggleLightbox()>Interesse?/button> /div> /div> !-- RIGHT COLUMN: SLIDER --> div classcol-md-6 p-3> div idsectionSlider classcarousel slide shadow-sm rounded data-bs-ridecarousel> div classcarousel-inner> !-- Slide 1 --> div classcarousel-item active> section classcanvas-section> div classsection-title stylefont-size: clamp(1.25rem, 2vw + 0.5rem, 2.5rem);>/div> section classcanvas-section position-relative d-flex flex-column justify-content-center align-items-center> div classposition-absolute top-0 start-0 sm> /div> !-- Top-right download button --> canvas idcanvas-screen>/canvas> /section> /section> /div> !-- Slide 3 --> div classcarousel-item> section classcanvas-section> div classsection-title stylefont-size: clamp(1.25rem, 2vw + 0.5rem, 2.5rem);>/div> section classcanvas-section position-relative d-flex flex-column justify-content-center align-items-center> div classposition-absolute top-0 start-0 sm> /div> !-- Top-right download button --> canvas idcanvas-card >/canvas> /section> /section> /div> !-- Add more sections if needed --> /div> !-- Carousel Controls --> button classcarousel-control-prev typebutton data-bs-target#sectionSlider data-bs-slideprev> span classcarousel-control-prev-icon>/span> /button> button classcarousel-control-next typebutton data-bs-target#sectionSlider data-bs-slidenext> span classcarousel-control-next-icon>/span> /button> /div> /div> /div> /div> div classlightbox idlightbox> div classlightbox-content> span classlightbox-close onclicktoggleLightbox()>×/span> h2>Interesse in deze domeinnaam?/h2> form action methodPOST> div classform-row> input typetext namedomeinnaam value2ifx.com placeholderdomeinnaam readonly required /> /div> div classform-row> input classform-control typetext namevoornaam placeholderVoornaam required /> input classform-control typetext nameachternaam placeholderAchternaam required /> /div> !-- Honeypot field - hidden from humans --> div styledisplay:none;> input typetext namerobot_check placeholderLeave this empty> input typetext namedomain_check value2ifx.com placeholderLeave this empty> /div> div classform-row> input classform-control typetext namestraat placeholderStraatnaam required /> input classform-control typetext namehuisnummer placeholderHuisnummer required /> /div> div classform-row> input classform-control typetext namepostcode placeholderPostcode required /> input classform-control typetext namewoonplaats placeholderWoonplaats required /> /div> div classform-row> input classform-control typeemail nameemail placeholderE-mailadres required /> input classform-control typetext nametelefoon placeholderTelefoonnummer required /> /div> div classbid-input> span>€/span> input typenumber namebod placeholderPlaats uw bod hier required /> /div> div classform-row> textarea namevoorstel_opmerking placeholderUw voorstel of opmerking rows4>Ik heb interesse in de domainnaam 2ifx.com.../textarea> /div> button classpro-button typesubmit>Verstuur/button> /form> /div> /div> p classfooter-content> span> a hrefhttps://www.networthdomains.nl>img srcimg/nwd-logo-2025-org.png width300 heightauto altNWD Logo>/a>br> Zadelmakerstraat 64 | 1991 JE Velserbroek | a hreftel:+310852229830>+31(0)85 222 98 30/a> a hrefmailto:info@networthdomains.nl>info@networthdomains.nl/a> br> KvK: 96217472 | BTW-nummer: NL867517463B01 br> Copyright © 2025 – Net Worth Domains B.V. a hreflang/nl/privacyverklaring.php> - Privacy/a> /span>/p> !-- Bootstrap 5 JavaScript bundle --> script srchttps://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js>/script>script>// In je canvasSettings objecten, pas fontSize aan met een grotere waarde voor mobiel function isMobile() { return window.innerWidth 768; } function toggleLightbox() { const box document.getElementById(lightbox); box.style.display box.style.display flex ? none : flex; }////// const marketingName 2ifx.com; const showDebug false; const canvasSettings {}; const REFERENCE_WIDTH 1707; const REFERENCE_HEIGHT 1137; const sources { canvas-screen: img/image1.jpg,// canvas-van: img/image2.jpg, canvas-card: img/image3.jpg }; function drawResponsiveImageWithText(canvasId, src, initialFn) { const canvas document.getElementById(canvasId); const ctx canvas.getContext(2d); const img new Image(); img.onload function () { const aspect img.width / img.height; canvas.width window.innerWidth; canvas.height canvas.width / aspect; let saved canvasSettingscanvasId; // First-time init if (!saved) {// let init initialFn(canvas.width, canvas.height); let init initialFn(REFERENCE_WIDTH, REFERENCE_HEIGHT); saved { ...init,// xPercent: init.x / canvas.width,// yPercent: init.y / canvas.height, xPercent: init.x / REFERENCE_WIDTH, yPercent: init.y / REFERENCE_HEIGHT, // fontSizePercent: init.fontSize / canvas.width, fontSizePercent: init.fontSize / REFERENCE_WIDTH, dragging: false, offsetX: 0, offsetY: 0 }; } // else { // Recalculate from relative position saved.x saved.xPercent * canvas.width; saved.y saved.yPercent * canvas.height; saved.fontSize saved.fontSizePercent * canvas.width;// } canvasSettingscanvasId saved; renderCanvas(canvas, ctx, img, saved); }; img.src src;// addDragSupport(canvasId); } function renderCanvas(canvas, ctx, img, settings) { ctx.clearRect(0, 0, canvas.width, canvas.height); ctx.drawImage(img, 0, 0, canvas.width, canvas.height);// Base font size before adjustment const baseFontSize settings.fontSize; ctx.font `${baseFontSize}px ${settings.fontFamily}`; const textWidth ctx.measureText(marketingName).width; // ✅ 1. Define max width for the text to fit into const maxTextWidth canvas.width * settings.factor; // ✅ 2. Calculate scaling factor let scaleFactor maxTextWidth / textWidth; // ✅ 3. Apply scale only if text is too wide if (scaleFactor 1) { settings.fontSize baseFontSize * scaleFactor; ctx.font `${settings.fontSize}px ${settings.fontFamily}`; } else { ctx.font `${baseFontSize}px ${settings.fontFamily}`; } ctx.fillStyle settings.color; ctx.textAlign settings.align; ctx.save(); ctx.translate(settings.x, settings.y); if (settings.rotate) ctx.rotate(settings.rotate * Math.PI / 180);//// NEW// // ✅ Apply shadow if enabled if (settings.textShadow) { ctx.shadowColor settings.shadowColor ?? rgba(0,0,0,0.5); ctx.shadowBlur settings.shadowBlur ?? 5; ctx.shadowOffsetX settings.shadowOffsetX ?? 2; ctx.shadowOffsetY settings.shadowOffsetY ?? 2; } // ✅ Apply gradient if enabled if (settings.textGradient) { const gradient ctx.createLinearGradient(0, 0, ctx.measureText(marketingName).width, 0); gradient.addColorStop(0, settings.gradientStart ?? #00f); gradient.addColorStop(1, settings.gradientEnd ?? #0ff); ctx.fillStyle gradient; } else { ctx.fillStyle settings.color; } // ✅ Draw filled text ctx.fillText(marketingName, 0, 0);//// NEW// // ✅ Apply stroke if enabled if (settings.textStroke) { ctx.lineWidth settings.strokeWidth ?? 2; ctx.strokeStyle settings.strokeColor ?? #000; ctx.strokeText(marketingName, 0, 0); } ctx.restore(); if (showDebug) drawDebugHelpers(ctx, settings); } function drawDebugHelpers(ctx, settings) { ctx.strokeStyle red; ctx.beginPath(); ctx.moveTo(settings.x - 10, settings.y); ctx.lineTo(settings.x + 10, settings.y); ctx.moveTo(settings.x, settings.y - 10); ctx.lineTo(settings.x, settings.y + 10); ctx.stroke(); ctx.strokeStyle rgba(255,0,0,0.5); ctx.strokeRect(settings.x, settings.y - settings.fontSize, marketingName.length * settings.fontSize * 0.5, settings.fontSize); ctx.fillStyle red; ctx.font 14px monospace; // Offset debug text further from top-left edge const offsetX 140; const offsetY 180; ctx.fillText(`X: ${Math.round(settings.x)} Y: ${Math.round(settings.y)}`, offsetX, offsetY); ctx.fillText(`Font: ${Math.round(settings.fontSize)}px`, offsetX, offsetY + 20); ctx.fillText(`Rotate: ${settings.rotate ?? 0}°`, offsetX, offsetY + 40); ctx.fillText(`Canvas: ${ctx.canvas.width}×${ctx.canvas.height}`, offsetX, offsetY + 60); // ✅ Canvas size added } function addDragSupport(canvasId) { const canvas document.getElementById(canvasId); const ctx canvas.getContext(2d); canvas.addEventListener(mousedown, (e) > startDrag(e, canvasId)); canvas.addEventListener(mousemove, (e) > duringDrag(e, canvasId)); canvas.addEventListener(mouseup, () > stopDrag(canvasId)); canvas.addEventListener(mouseleave, () > stopDrag(canvasId)); canvas.addEventListener(touchstart, (e) > startDrag(e.touches0, canvasId));/* canvas.addEventListener(touchmove, (e) > { e.preventDefault(); duringDrag(e.touches0, canvasId); }, { passive: false }); */ canvas.addEventListener(touchmove, (e) > { const settings canvasSettingscanvasId; if (settings && settings.dragging) { e.preventDefault(); // ✅ Only prevent scrolling if dragging duringDrag(e.touches0, canvasId); } }, { passive: false }); canvas.addEventListener(touchend, () > stopDrag(canvasId)); } function startDrag(e, canvasId) { const canvas document.getElementById(canvasId); const rect canvas.getBoundingClientRect(); const settings canvasSettingscanvasId; const mouseX e.clientX - rect.left; const mouseY e.clientY - rect.top; const boxW marketingName.length * settings.fontSize * 0.5; const boxH settings.fontSize; const inBox mouseX > settings.x && mouseX settings.x + boxW && mouseY > settings.y - boxH && mouseY settings.y; if (inBox) { settings.dragging true; settings.offsetX mouseX - settings.x; settings.offsetY mouseY - settings.y; } } function duringDrag(e, canvasId) { const canvas document.getElementById(canvasId); const ctx canvas.getContext(2d); const rect canvas.getBoundingClientRect(); const settings canvasSettingscanvasId; if (settings.dragging) { settings.x e.clientX - rect.left - settings.offsetX; settings.y e.clientY - rect.top - settings.offsetY; // Update percentage-based positioning settings.xPercent settings.x / canvas.width; settings.yPercent settings.y / canvas.height; const img new Image(); img.src sourcescanvasId; img.onload () > renderCanvas(canvas, ctx, img, settings); } } function stopDrag(canvasId) { if (canvasSettingscanvasId) { canvasSettingscanvasId.dragging false; } } function loadCanvases() { drawResponsiveImageWithText(canvas-screen, sourcescanvas-screen, (w, h) > ({// x: w * 0.5,// y: h * 0.35, x: 870, y: 650, fontSize: w * 0.07, fontFamily: isMobile() ? Georgia : Georgia , color: #ffffff, align: center, rotate: 0, factor: 0.35, // text scaling factor: isMobile() ? 0.50 : 0.35, fontSize: isMobile() ? w * 0.07 : w * 0.06, })); drawResponsiveImageWithText(canvas-card, sourcescanvas-card, (w, h) > ({// x: w * 0.75,// y: h * 0.85, x: 860, y: 568, fontSize: w * 0.03, fontFamily: Georgia, color: white, align: center, rotate: 341, factor: 0.5, // text scaling })); } window.addEventListener(load, loadCanvases); window.addEventListener(resize, loadCanvases); function downloadCanvas(canvasId) { const canvas document.getElementById(canvasId); const link document.createElement(a); link.download `${canvasId}.png`; link.href canvas.toDataURL(image/png); link.click();}//// REST API CALL domains //fetch(https://checkthisonline.nl/nwd2025/-1-1/wp-json/wp/v2/nwd-domain?per_page10) .then(response > { if (!response.ok) { throw new Error(`HTTP error ${response.status}`); } return response.json(); }) .then(posts > { const container document.getElementById(tickerContent); posts.forEach(post > { const domainName post.acf?.domain_name ?? Onbekend; const assignedCustomer post.acf?.assigned_customer ?? ; const domainStatus assignedCustomer ? verkocht : te koop; const domainStyle assignedCustomer ? verkocht : tekoop; // Create the element const span document.createElement(span); span.innerHTML `${domainName} span class${domainStyle}>${domainStatus}/span>`; // Append to container container.appendChild(span); }); }) .catch(error > { console.error(Fetch error:, error); });// Only apply animation oncedocument.addEventListener(DOMContentLoaded, function () { const ticker document.querySelector(.ticker-content); // Force animation to persist without being reset ticker.style.animationPlayState running;});/script>script> const ticker document.getElementById(ticker); let scrollSpeed 1; setInterval(() > { ticker.scrollLeft + scrollSpeed; if (ticker.scrollLeft > ticker.scrollWidth / 2) { ticker.scrollLeft 0; } }, 20); // adjust speed by lowering or increasing interval/script>/body>/html>
Port 443
HTTP/1.1 200 OKDate: Sun, 07 Dec 2025 20:42:40 GMTServer: ApacheUpgrade: h2Connection: UpgradeVary: Accept-EncodingTransfer-Encoding: chunkedContent-Type: text/html; charsetUTF-8 nlbr>!DOCTYPE html>html langen>head> meta charsetUTF-8 /> meta nameviewport contentwidthdevice-width, initial-scale1 /> title>2ifx.com | 01/title> link hrefhttps://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css relstylesheet /> link relicon typeimage/x-icon hrefhttps://www.networthdomains.nl/wp-content/uploads/2025/03/cropped-Screenshot-2025-03-25-142041-32x32.png > link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css> style> body { /* The image used */ background-image: url(img/bg.jpg); background-size: cover; /* Scales image to cover entire screen */ background-repeat: no-repeat; /* Prevents tiling */ background-position: center center; /* Centers the image */ background-attachment: fixed; /* Optional: keeps image fixed when scrolling */ } .bg-light { background-color: none!important;} /* NEW: Section styling for canvas or other content */ .canvas-section { text-align: center; padding: 0px; } /* NEW: Visual title styling inside sections */ .section-title { font-size: 32px; } /* NEW: Basic canvas styling (optional, only needed if you use canvas) */ canvas { width: 100%; height: auto; border: 4px solid #fff; border-radius: 5px; }/**/ inputtypenumber::-webkit-inner-spin-button, inputtypenumber::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; } inputtypenumber { -moz-appearance: textfield; } /* ticker BEGIN */ .ticker-wrapper { background-color: #ffc600; color: #012327;/* padding: 6px; */ white-space: nowrap; overflow: hidden; box-sizing: border-box; font-size: 1.5rem; font-weight: bold; width: 100%; background: #f1c40f; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc;/* padding: 10px 0; */ position: relative;/* height: 40px; */ } .ticker-content { display: inline-block; padding-right: 100%; /* spacing for seamless loop */ font-size: 15px; text-transform: uppercase; letter-spacing: 1px; font-family: PT Sans; color: #000; } .ticker-content span { display: inline-block; font-family: sans-serif; font-size: 16px; padding-right: 50px; } .ticker-content span.tekoop { color: #012327; /* background-color: white; */ padding: 2px 5px; border-radius: 4px; font-weight: normal; } .ticker-content span.verkocht { color: #fff; /* background-color: white; */ padding: 2px 5px; border-radius: 4px; font-weight: normal; } /* ticker END */ /* Flexbox voor container */ .container { display: flex; flex: 1; padding: 0; } .left { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; background-size: cover; background-position: center; height: 100vh; position: relative; /* voor overlay */ } .left h1 { font-size: 3rem; margin: 0; padding: 20px; } .left p { font-size: 1.5rem; margin-top: 10px; color: #00ff95; font-weight: bold; padding: 20px; } /* Overlay voor tekst op bedrijfswagen */ .text-overlay { position: absolute; top: 50%; left: 60%; transform: translate(-50%, -50%); width: 500px; min-height: 100px; padding: 10px; color: #000; font-size: 53px; border-radius: 6px; display: none; resize: both; overflow: none; } .text-overlay:focus { outline: 0px solid #ffc600; } /* lightbox */ .interest-button { background-color: #ffc600; color: white; width: auto; font-size: 1.5rem; padding: 5px 5px; border: none; margin: 20px; border-radius: 5px; cursor: pointer; z-index: 1002; } .interest-button:hover { background-color: #ffc600; color: white; border: none; cursor: pointer; z-index: 1002; } .lightbox { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); display: none; align-items: center; justify-content: center; z-index: 1003; } .lightbox-content { background-color: #02403c; padding: 30px; border-radius: 10px; width: 90%; max-width: 600px; color: white; position: relative; } .lightbox-content h2 { margin-top: 0; } .lightbox-close { position: absolute; top: 10px; right: 15px; font-size: 1.5rem; cursor: pointer; } /* Formulieren */ form { display: flex; flex-direction: column; gap: 15px; } .form-row { display: flex; gap: 10px; } .form-row input, .form-row textarea { flex: 1; padding: 10px; font-size: 1rem; border: none; border-radius: 4px; background-color: #fff; color: #000; } .bid-input { display: flex; align-items: center; background-color: #fff; border-radius: 4px; } .bid-input span { padding: 10px; background-color: #eee; color: #000; border-top-left-radius: 4px; border-bottom-left-radius: 4px; } .bid-input input { border: none; padding: 10px; font-size: 1rem; border-radius: 0 4px 4px 0; width: 100%; background-color: #fff; color: #000; } input::placeholder, textarea::placeholder { color: #555; } .pro-button { background-color: #ffc600; color: black; cursor: pointer; padding: 10px; font-size: 1rem; border: none; border-radius: 4px; } .pro-button:hover { background-color: #e6b800; } .carousel-control-next-icon {background-color: #ffc600;padding: 0px;}.carousel-control-prev-icon {background-color: #ffc600;padding: 0px;}a {color: #ffc600;text-decoration: none;}.footer-content { margin-top: 1rem; margin-left: 1rem; margin-right: 1rem; text-align: center;}.footer-content span { font-size: clamp(0.6rem, 2vw + 0.5rem, 0.6rem); color: #ffc600; display: inline-block; max-width: 100%; word-wrap: break-word;}.footer-content img { max-width: 100%; height: auto;}.fade-in { opacity: 0; animation: fadeInEffect 2s ease-in forwards;}.language_flags { float: right;} .language_flags img { width:16px; height: 11px; }@keyframes fadeInEffect { to { opacity: 1; }} /style>/head>body> div classcontainer-fluid> div classrow mb-4> div classticker-wrapper idticker> div classticker-content idtickerContent> /div> /div> /div> div classrow> !-- LEFT COLUMN --> div classcol-md-6 p-1> /div> div classcol-md-6 p-s-3> div classlanguage_flags> !-- Flag switcher --> a href?langen>img srcimg/flag_en.png altEnglish />/a> a href?langnl>img srcimg/flag_nl.png altDutch />/a> /div> /div> /div> div classrow> !-- LEFT COLUMN --> div classcol-md-6 p-1> !-- LEFT COLUMN: INFOBOX classalign-items-center justify-content-center --> div classd-flex flex-column h-100 p-3 rounded stylemin-height: 250px;> h3 classuppercase fs-3 fs-md-2 fs-lg-1 ms-4 fade-in> span stylefont-size: clamp(1.25rem, 2vw + 0.5rem, 2.5rem); color: #fff;> strong>Deze domeinnaam is te koop!/strong> /span>/h3> p classmt-4 ms-4 fade-in>span stylefont-size: clamp(1.0rem, 2vw + 0.5rem, 1.0rem); color: #ffffff;> strong stylecolor: #ffc600;>2ifx.com/strong> is professioneel, herkenbaar en krachtig.Ideaal voor een merk, bedrijf of persoonlijk project met ambitie./br>/br>i classbi bi-check-circle-fill>/i> Makkelijk te onthouden/br>i classbi bi-check-circle-fill>/i> Direct inzetbaar/br>i classbi bi-check-circle-fill>/i> Klaar voor groei/br>/br>Mis deze kans niet en neem nu contact op! /span>/p> button classbtn interest-button btn-sm stylecolor:white onclicktoggleLightbox()>Interesse?/button> /div> /div> !-- RIGHT COLUMN: SLIDER --> div classcol-md-6 p-3> div idsectionSlider classcarousel slide shadow-sm rounded data-bs-ridecarousel> div classcarousel-inner> !-- Slide 1 --> div classcarousel-item active> section classcanvas-section> div classsection-title stylefont-size: clamp(1.25rem, 2vw + 0.5rem, 2.5rem);>/div> section classcanvas-section position-relative d-flex flex-column justify-content-center align-items-center> div classposition-absolute top-0 start-0 sm> /div> !-- Top-right download button --> canvas idcanvas-screen>/canvas> /section> /section> /div> !-- Slide 3 --> div classcarousel-item> section classcanvas-section> div classsection-title stylefont-size: clamp(1.25rem, 2vw + 0.5rem, 2.5rem);>/div> section classcanvas-section position-relative d-flex flex-column justify-content-center align-items-center> div classposition-absolute top-0 start-0 sm> /div> !-- Top-right download button --> canvas idcanvas-card >/canvas> /section> /section> /div> !-- Add more sections if needed --> /div> !-- Carousel Controls --> button classcarousel-control-prev typebutton data-bs-target#sectionSlider data-bs-slideprev> span classcarousel-control-prev-icon>/span> /button> button classcarousel-control-next typebutton data-bs-target#sectionSlider data-bs-slidenext> span classcarousel-control-next-icon>/span> /button> /div> /div> /div> /div> div classlightbox idlightbox> div classlightbox-content> span classlightbox-close onclicktoggleLightbox()>×/span> h2>Interesse in deze domeinnaam?/h2> form action methodPOST> div classform-row> input typetext namedomeinnaam value2ifx.com placeholderdomeinnaam readonly required /> /div> div classform-row> input classform-control typetext namevoornaam placeholderVoornaam required /> input classform-control typetext nameachternaam placeholderAchternaam required /> /div> !-- Honeypot field - hidden from humans --> div styledisplay:none;> input typetext namerobot_check placeholderLeave this empty> input typetext namedomain_check value2ifx.com placeholderLeave this empty> /div> div classform-row> input classform-control typetext namestraat placeholderStraatnaam required /> input classform-control typetext namehuisnummer placeholderHuisnummer required /> /div> div classform-row> input classform-control typetext namepostcode placeholderPostcode required /> input classform-control typetext namewoonplaats placeholderWoonplaats required /> /div> div classform-row> input classform-control typeemail nameemail placeholderE-mailadres required /> input classform-control typetext nametelefoon placeholderTelefoonnummer required /> /div> div classbid-input> span>€/span> input typenumber namebod placeholderPlaats uw bod hier required /> /div> div classform-row> textarea namevoorstel_opmerking placeholderUw voorstel of opmerking rows4>Ik heb interesse in de domainnaam 2ifx.com.../textarea> /div> button classpro-button typesubmit>Verstuur/button> /form> /div> /div> p classfooter-content> span> a hrefhttps://www.networthdomains.nl>img srcimg/nwd-logo-2025-org.png width300 heightauto altNWD Logo>/a>br> Zadelmakerstraat 64 | 1991 JE Velserbroek | a hreftel:+310852229830>+31(0)85 222 98 30/a> a hrefmailto:info@networthdomains.nl>info@networthdomains.nl/a> br> KvK: 96217472 | BTW-nummer: NL867517463B01 br> Copyright © 2025 – Net Worth Domains B.V. a hreflang/nl/privacyverklaring.php> - Privacy/a> /span>/p> !-- Bootstrap 5 JavaScript bundle --> script srchttps://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js>/script>script>// In je canvasSettings objecten, pas fontSize aan met een grotere waarde voor mobiel function isMobile() { return window.innerWidth 768; } function toggleLightbox() { const box document.getElementById(lightbox); box.style.display box.style.display flex ? none : flex; }////// const marketingName 2ifx.com; const showDebug false; const canvasSettings {}; const REFERENCE_WIDTH 1707; const REFERENCE_HEIGHT 1137; const sources { canvas-screen: img/image1.jpg,// canvas-van: img/image2.jpg, canvas-card: img/image3.jpg }; function drawResponsiveImageWithText(canvasId, src, initialFn) { const canvas document.getElementById(canvasId); const ctx canvas.getContext(2d); const img new Image(); img.onload function () { const aspect img.width / img.height; canvas.width window.innerWidth; canvas.height canvas.width / aspect; let saved canvasSettingscanvasId; // First-time init if (!saved) {// let init initialFn(canvas.width, canvas.height); let init initialFn(REFERENCE_WIDTH, REFERENCE_HEIGHT); saved { ...init,// xPercent: init.x / canvas.width,// yPercent: init.y / canvas.height, xPercent: init.x / REFERENCE_WIDTH, yPercent: init.y / REFERENCE_HEIGHT, // fontSizePercent: init.fontSize / canvas.width, fontSizePercent: init.fontSize / REFERENCE_WIDTH, dragging: false, offsetX: 0, offsetY: 0 }; } // else { // Recalculate from relative position saved.x saved.xPercent * canvas.width; saved.y saved.yPercent * canvas.height; saved.fontSize saved.fontSizePercent * canvas.width;// } canvasSettingscanvasId saved; renderCanvas(canvas, ctx, img, saved); }; img.src src;// addDragSupport(canvasId); } function renderCanvas(canvas, ctx, img, settings) { ctx.clearRect(0, 0, canvas.width, canvas.height); ctx.drawImage(img, 0, 0, canvas.width, canvas.height);// Base font size before adjustment const baseFontSize settings.fontSize; ctx.font `${baseFontSize}px ${settings.fontFamily}`; const textWidth ctx.measureText(marketingName).width; // ✅ 1. Define max width for the text to fit into const maxTextWidth canvas.width * settings.factor; // ✅ 2. Calculate scaling factor let scaleFactor maxTextWidth / textWidth; // ✅ 3. Apply scale only if text is too wide if (scaleFactor 1) { settings.fontSize baseFontSize * scaleFactor; ctx.font `${settings.fontSize}px ${settings.fontFamily}`; } else { ctx.font `${baseFontSize}px ${settings.fontFamily}`; } ctx.fillStyle settings.color; ctx.textAlign settings.align; ctx.save(); ctx.translate(settings.x, settings.y); if (settings.rotate) ctx.rotate(settings.rotate * Math.PI / 180);//// NEW// // ✅ Apply shadow if enabled if (settings.textShadow) { ctx.shadowColor settings.shadowColor ?? rgba(0,0,0,0.5); ctx.shadowBlur settings.shadowBlur ?? 5; ctx.shadowOffsetX settings.shadowOffsetX ?? 2; ctx.shadowOffsetY settings.shadowOffsetY ?? 2; } // ✅ Apply gradient if enabled if (settings.textGradient) { const gradient ctx.createLinearGradient(0, 0, ctx.measureText(marketingName).width, 0); gradient.addColorStop(0, settings.gradientStart ?? #00f); gradient.addColorStop(1, settings.gradientEnd ?? #0ff); ctx.fillStyle gradient; } else { ctx.fillStyle settings.color; } // ✅ Draw filled text ctx.fillText(marketingName, 0, 0);//// NEW// // ✅ Apply stroke if enabled if (settings.textStroke) { ctx.lineWidth settings.strokeWidth ?? 2; ctx.strokeStyle settings.strokeColor ?? #000; ctx.strokeText(marketingName, 0, 0); } ctx.restore(); if (showDebug) drawDebugHelpers(ctx, settings); } function drawDebugHelpers(ctx, settings) { ctx.strokeStyle red; ctx.beginPath(); ctx.moveTo(settings.x - 10, settings.y); ctx.lineTo(settings.x + 10, settings.y); ctx.moveTo(settings.x, settings.y - 10); ctx.lineTo(settings.x, settings.y + 10); ctx.stroke(); ctx.strokeStyle rgba(255,0,0,0.5); ctx.strokeRect(settings.x, settings.y - settings.fontSize, marketingName.length * settings.fontSize * 0.5, settings.fontSize); ctx.fillStyle red; ctx.font 14px monospace; // Offset debug text further from top-left edge const offsetX 140; const offsetY 180; ctx.fillText(`X: ${Math.round(settings.x)} Y: ${Math.round(settings.y)}`, offsetX, offsetY); ctx.fillText(`Font: ${Math.round(settings.fontSize)}px`, offsetX, offsetY + 20); ctx.fillText(`Rotate: ${settings.rotate ?? 0}°`, offsetX, offsetY + 40); ctx.fillText(`Canvas: ${ctx.canvas.width}×${ctx.canvas.height}`, offsetX, offsetY + 60); // ✅ Canvas size added } function addDragSupport(canvasId) { const canvas document.getElementById(canvasId); const ctx canvas.getContext(2d); canvas.addEventListener(mousedown, (e) > startDrag(e, canvasId)); canvas.addEventListener(mousemove, (e) > duringDrag(e, canvasId)); canvas.addEventListener(mouseup, () > stopDrag(canvasId)); canvas.addEventListener(mouseleave, () > stopDrag(canvasId)); canvas.addEventListener(touchstart, (e) > startDrag(e.touches0, canvasId));/* canvas.addEventListener(touchmove, (e) > { e.preventDefault(); duringDrag(e.touches0, canvasId); }, { passive: false }); */ canvas.addEventListener(touchmove, (e) > { const settings canvasSettingscanvasId; if (settings && settings.dragging) { e.preventDefault(); // ✅ Only prevent scrolling if dragging duringDrag(e.touches0, canvasId); } }, { passive: false }); canvas.addEventListener(touchend, () > stopDrag(canvasId)); } function startDrag(e, canvasId) { const canvas document.getElementById(canvasId); const rect canvas.getBoundingClientRect(); const settings canvasSettingscanvasId; const mouseX e.clientX - rect.left; const mouseY e.clientY - rect.top; const boxW marketingName.length * settings.fontSize * 0.5; const boxH settings.fontSize; const inBox mouseX > settings.x && mouseX settings.x + boxW && mouseY > settings.y - boxH && mouseY settings.y; if (inBox) { settings.dragging true; settings.offsetX mouseX - settings.x; settings.offsetY mouseY - settings.y; } } function duringDrag(e, canvasId) { const canvas document.getElementById(canvasId); const ctx canvas.getContext(2d); const rect canvas.getBoundingClientRect(); const settings canvasSettingscanvasId; if (settings.dragging) { settings.x e.clientX - rect.left - settings.offsetX; settings.y e.clientY - rect.top - settings.offsetY; // Update percentage-based positioning settings.xPercent settings.x / canvas.width; settings.yPercent settings.y / canvas.height; const img new Image(); img.src sourcescanvasId; img.onload () > renderCanvas(canvas, ctx, img, settings); } } function stopDrag(canvasId) { if (canvasSettingscanvasId) { canvasSettingscanvasId.dragging false; } } function loadCanvases() { drawResponsiveImageWithText(canvas-screen, sourcescanvas-screen, (w, h) > ({// x: w * 0.5,// y: h * 0.35, x: 870, y: 650, fontSize: w * 0.07, fontFamily: isMobile() ? Georgia : Georgia , color: #ffffff, align: center, rotate: 0, factor: 0.35, // text scaling factor: isMobile() ? 0.50 : 0.35, fontSize: isMobile() ? w * 0.07 : w * 0.06, })); drawResponsiveImageWithText(canvas-card, sourcescanvas-card, (w, h) > ({// x: w * 0.75,// y: h * 0.85, x: 860, y: 568, fontSize: w * 0.03, fontFamily: Georgia, color: white, align: center, rotate: 341, factor: 0.5, // text scaling })); } window.addEventListener(load, loadCanvases); window.addEventListener(resize, loadCanvases); function downloadCanvas(canvasId) { const canvas document.getElementById(canvasId); const link document.createElement(a); link.download `${canvasId}.png`; link.href canvas.toDataURL(image/png); link.click();}//// REST API CALL domains //fetch(https://checkthisonline.nl/nwd2025/-1-1/wp-json/wp/v2/nwd-domain?per_page10) .then(response > { if (!response.ok) { throw new Error(`HTTP error ${response.status}`); } return response.json(); }) .then(posts > { const container document.getElementById(tickerContent); posts.forEach(post > { const domainName post.acf?.domain_name ?? Onbekend; const assignedCustomer post.acf?.assigned_customer ?? ; const domainStatus assignedCustomer ? verkocht : te koop; const domainStyle assignedCustomer ? verkocht : tekoop; // Create the element const span document.createElement(span); span.innerHTML `${domainName} span class${domainStyle}>${domainStatus}/span>`; // Append to container container.appendChild(span); }); }) .catch(error > { console.error(Fetch error:, error); });// Only apply animation oncedocument.addEventListener(DOMContentLoaded, function () { const ticker document.querySelector(.ticker-content); // Force animation to persist without being reset ticker.style.animationPlayState running;});/script>script> const ticker document.getElementById(ticker); let scrollSpeed 1; setInterval(() > { ticker.scrollLeft + scrollSpeed; if (ticker.scrollLeft > ticker.scrollWidth / 2) { ticker.scrollLeft 0; } }, 20); // adjust speed by lowering or increasing interval/script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]