BlechProfis

Kontakt

Nur für gewerbliche Kunden!

Kontaktadresse in Deutschland:
DIVIKOM Blechprofis
Eschersheimer Landstraße 42
D-60322 Frankfurt am Main
Tel. +49-(0)162-8373904
E-Mail: info@blechprofis.eu

Hauptadresse: 
Divikom, s.r.o.
Dolmenska 772
25241 Dolni Brezany
Tschechische Republik

Tel. +49-(0)162-8373904 (Deutschland)
Tel.: +420-608711446
Ust.ID-Nr.: CZ27125645.
Die Gesellschaft wurde von Amtsgerichts Prag, Tschechische Republik in Abschnitt C, Nr. 98195 am März 10 2004 registriert.

Laserschneiden Blech gelocht

Senden Sie uns Ihre Nachricht oder anfordern Sie ein Angebot

// Blechprofis.eu - JavaScript(function() { 'use strict';// Navigation const hamburger = document.getElementById('hamburger'); const navMenu = document.getElementById('navMenu'); if (hamburger && navMenu) { hamburger.addEventListener('click', function() { hamburger.classList.toggle('active'); navMenu.classList.toggle('active'); }); const navLinks = navMenu.querySelectorAll('a'); navLinks.forEach(link => { link.addEventListener('click', function() { hamburger.classList.remove('active'); navMenu.classList.remove('active'); }); }); } // Smooth Scroll document.querySelectorAll('a[href^="#"]').forEach(anchor => { anchor.addEventListener('click', function(e) { e.preventDefault(); const targetId = this.getAttribute('href'); if (targetId === '#') return; const targetElement = document.querySelector(targetId); if (targetElement) { const navbarHeight = 70; const targetPosition = targetElement.offsetTop - navbarHeight; window.scrollTo({ top: targetPosition, behavior: 'smooth' }); } }); }); // Scroll Animations const observerOptions = { threshold: 0.1, rootMargin: '0px 0px -50px 0px' }; const observer = new IntersectionObserver(function(entries) { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.classList.add('visible'); observer.unobserve(entry.target); } }); }, observerOptions); const animatedElements = document.querySelectorAll('.fade-in-up'); animatedElements.forEach(el => observer.observe(el)); // Product Card Effects const productCards = document.querySelectorAll('.product-card, .feature-card'); productCards.forEach(card => { card.addEventListener('mousemove', function(e) { const rect = card.getBoundingClientRect(); const x = e.clientX - rect.left; const y = e.clientY - rect.top; const centerX = rect.width / 2; const centerY = rect.height / 2; const rotateX = (y - centerY) / 10; const rotateY = (centerX - x) / 10; card.style.transform = `perspective(1000px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) translateY(-5px)`; }); card.addEventListener('mouseleave', function() { card.style.transform = 'perspective(1000px) rotateX(0) rotateY(0) translateY(0)'; }); }); // Back to Top Button const backToTopBtn = document.createElement('button'); backToTopBtn.innerHTML = ''; backToTopBtn.className = 'back-to-top'; backToTopBtn.setAttribute('aria-label', 'Nach oben'); document.body.appendChild(backToTopBtn); const backToTopStyle = document.createElement('style'); backToTopStyle.textContent = ` .back-to-top { position: fixed; bottom: 30px; right: 30px; width: 50px; height: 50px; background: linear-gradient(135deg, #FF8C42, #D97941); color: white; border: none; border-radius: 50%; font-size: 1.2rem; cursor: pointer; opacity: 0; visibility: hidden; transition: all 0.3s ease; box-shadow: 0 4px 12px rgba(255, 140, 66, 0.3); z-index: 999; } .back-to-top.show { opacity: 1; visibility: visible; } .back-to-top:hover { transform: translateY(-5px); box-shadow: 0 6px 16px rgba(255, 140, 66, 0.4); } `; document.head.appendChild(backToTopStyle); window.addEventListener('scroll', function() { if (window.pageYOffset > 500) { backToTopBtn.classList.add('show'); } else { backToTopBtn.classList.remove('show'); } }); backToTopBtn.addEventListener('click', function() { window.scrollTo({ top: 0, behavior: 'smooth' }); }); // Kontaktní formulář - validace a odeslání const contactForm = document.getElementById('contact-form'); const formMessage = document.getElementById('form-message'); // File Upload funkce const fileInput = document.getElementById('anhang'); const fileList = document.getElementById('file-list'); let uploadedFiles = []; const MAX_FILE_SIZE = 10 * 1024 * 1024; // 10 MB const ALLOWED_TYPES = [ 'application/pdf', 'application/msword', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'image/jpeg', 'image/jpg', 'image/png', 'application/zip', 'application/x-zip-compressed' ]; if (fileInput) { fileInput.addEventListener('change', function(e) { handleFiles(e.target.files); }); // Drag & Drop const fileUploadDisplay = document.querySelector('.file-upload-display'); ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(eventName => { fileUploadDisplay.addEventListener(eventName, preventDefaults, false); }); function preventDefaults(e) { e.preventDefault(); e.stopPropagation(); } ['dragenter', 'dragover'].forEach(eventName => { fileUploadDisplay.addEventListener(eventName, function() { fileUploadDisplay.style.borderColor = 'var(--accent-color)'; fileUploadDisplay.style.background = 'white'; }); }); ['dragleave', 'drop'].forEach(eventName => { fileUploadDisplay.addEventListener(eventName, function() { fileUploadDisplay.style.borderColor = '#e2e8f0'; fileUploadDisplay.style.background = '#f8f9fa'; }); }); fileUploadDisplay.addEventListener('drop', function(e) { const dt = e.dataTransfer; const files = dt.files; handleFiles(files); }); } function handleFiles(files) { const fileArray = Array.from(files); fileArray.forEach(file => { // Validace typu souboru if (!ALLOWED_TYPES.includes(file.type)) { showFileError(`Nepodporovaný typ souboru: ${file.name}`); return; } // Validace velikosti if (file.size > MAX_FILE_SIZE) { showFileError(`Soubor ${file.name} je příliš velký (max. 10 MB)`); return; } // Přidání souboru uploadedFiles.push(file); displayFile(file); }); } function displayFile(file) { const fileItem = document.createElement('div'); fileItem.className = 'file-item'; const fileIcon = getFileIcon(file.type); const fileSize = formatFileSize(file.size); fileItem.innerHTML = `
${file.name} ${fileSize}
`; fileList.appendChild(fileItem); // Remove handler fileItem.querySelector('.file-remove').addEventListener('click', function() { removeFile(file.name); fileItem.remove(); }); } function removeFile(filename) { uploadedFiles = uploadedFiles.filter(f => f.name !== filename); } function getFileIcon(type) { if (type.includes('pdf')) return 'fa-file-pdf'; if (type.includes('word') || type.includes('document')) return 'fa-file-word'; if (type.includes('image')) return 'fa-file-image'; if (type.includes('zip')) return 'fa-file-archive'; return 'fa-file'; } function formatFileSize(bytes) { if (bytes === 0) return '0 Bytes'; const k = 1024; const sizes = ['Bytes', 'KB', 'MB']; const i = Math.floor(Math.log(bytes) / Math.log(k)); return Math.round(bytes / Math.pow(k, i) * 100) / 100 + ' ' + sizes[i]; } function showFileError(message) { const errorDiv = document.createElement('div'); errorDiv.className = 'file-error'; errorDiv.innerHTML = ` ${message}`; fileList.appendChild(errorDiv); setTimeout(function() { errorDiv.remove(); }, 5000); } if (contactForm) { contactForm.addEventListener('submit', function(e) { e.preventDefault(); // Získání dat z formuláře const formData = new FormData(contactForm); // Přidání nahraných souborů uploadedFiles.forEach(file => { formData.append('files[]', file); }); // Zobrazení loading stavu const submitBtn = contactForm.querySelector('.form-submit'); const originalText = submitBtn.innerHTML; submitBtn.innerHTML = ' Wird gesendet...'; submitBtn.disabled = true; // Simulace odeslání (v produkci nahradit AJAX požadavkem) setTimeout(function() { // Úspěch formMessage.className = 'form-message success'; const filesCount = uploadedFiles.length; const filesText = filesCount > 0 ? ` (${filesCount} Datei${filesCount > 1 ? 'en' : ''} angehängt)` : ''; formMessage.textContent = `Vielen Dank für Ihre Anfrage${filesText}! Wir werden Sie so schnell wie möglich kontaktieren.`; contactForm.reset(); // Vyčištění seznamu souborů uploadedFiles = []; fileList.innerHTML = ''; // Reset tlačítka submitBtn.innerHTML = originalText; submitBtn.disabled = false; // Scroll k potvrzení formMessage.scrollIntoView({ behavior: 'smooth', block: 'center' }); // Skrytí zprávy po 8 sekundách setTimeout(function() { formMessage.className = 'form-message'; formMessage.textContent = ''; }, 8000); }, 1500); /* // PRO PRODUKCI - AJAX odeslání do WordPressu: fetch('/wp-admin/admin-ajax.php', { method: 'POST', body: formData }) .then(response => response.json()) .then(data => { if (data.success) { formMessage.className = 'form-message success'; formMessage.textContent = data.message || 'Vielen Dank für Ihre Anfrage!'; contactForm.reset(); uploadedFiles = []; fileList.innerHTML = ''; } else { formMessage.className = 'form-message error'; formMessage.textContent = data.message || 'Es ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.'; } submitBtn.innerHTML = originalText; submitBtn.disabled = false; formMessage.scrollIntoView({ behavior: 'smooth', block: 'center' }); }) .catch(error => { console.error('Chyba při odeslání formuláře:', error); formMessage.className = 'form-message error'; formMessage.textContent = 'Es ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.'; submitBtn.innerHTML = originalText; submitBtn.disabled = false; }); */ }); // Real-time validace polí const requiredFields = contactForm.querySelectorAll('[required]'); requiredFields.forEach(field => { field.addEventListener('blur', function() { if (!field.value.trim()) { field.style.borderColor = '#dc3545'; } else { field.style.borderColor = '#48bb78'; } }); field.addEventListener('input', function() { if (field.value.trim()) { field.style.borderColor = '#48bb78'; } }); }); } console.log('%c⚙️ Blechprofis.eu', 'font-size: 20px; font-weight: bold; color: #1a5490;'); console.log('%cCortenstahl für Profis', 'font-size: 14px; color: #D97941;'); })();