항목수정 및 언어버튼 가시성 수정
@@ -1,14 +1,11 @@
|
||||
/* 기본 스타일 */
|
||||
:root {
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: 'Plus Jakarta Sans', sans-serif;
|
||||
background-color: #f8fafc;
|
||||
color: #0f172a;
|
||||
}
|
||||
|
||||
.font-industrial { font-family: 'Space Grotesk', sans-serif; }
|
||||
.font-premium { font-family: 'Plus Jakarta Sans', sans-serif; }
|
||||
|
||||
@@ -18,6 +15,13 @@ body {
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
/* Premium Typography Styles */
|
||||
.premium-kerning { letter-spacing: -0.04em; }
|
||||
.industrial-tracking { letter-spacing: 0.15em; }
|
||||
.hero-title {
|
||||
line-height: 1.05;
|
||||
}
|
||||
|
||||
/* Animations */
|
||||
@keyframes fadeIn {
|
||||
from { opacity: 0; transform: translateY(20px); }
|
||||
@@ -29,30 +33,21 @@ body {
|
||||
.no-scrollbar::-webkit-scrollbar { display: none; }
|
||||
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
|
||||
|
||||
/* 서비스 카드 이미지 hover */
|
||||
.service-card:hover .service-image {
|
||||
transform: scale(1.1);
|
||||
filter: grayscale(0);
|
||||
}
|
||||
|
||||
/* ==================== 이미지 보호 레이어 ==================== */
|
||||
.img-protect-wrapper {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
/* ── 언어 전환 버튼 ───────────────────────────────────────── */
|
||||
.lang-btn {
|
||||
background: transparent;
|
||||
opacity: 0.5;
|
||||
transition: all 0.2s;
|
||||
}
|
||||
|
||||
.img-protect-wrapper img {
|
||||
display: block;
|
||||
.lang-btn:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.img-protect-wrapper .img-overlay {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
cursor: default;
|
||||
z-index: 10;
|
||||
user-select: none;
|
||||
-webkit-user-drag: none;
|
||||
.lang-btn.active-lang {
|
||||
background: #2563eb;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
BIN
.Backup/html/assets/images/BatchControl.png
Normal file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
.Backup/html/assets/images/ControlRoom7.png
Normal file
|
After Width: | Height: | Size: 2.2 MiB |
BIN
.Backup/html/assets/images/bearing.png
Normal file
|
After Width: | Height: | Size: 2.5 MiB |
BIN
.Backup/html/assets/images/dcsintegration.png
Normal file
|
After Width: | Height: | Size: 521 KiB |
BIN
.Backup/html/assets/images/favicon.ico
Normal file
|
After Width: | Height: | Size: 190 KiB |
3
.Backup/html/assets/images/honeywell-logo.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg width="153" height="28" viewBox="0 0 153 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.1958 0.0376587H19.0741V21.8852H12.1958V11.9031H6.86567V21.948H0.0380859V0.0376587H6.90374V9.15336H12.2338L12.1958 0.0376587ZM38.1863 9.5677C38.7946 10.7403 39.1534 12.0238 39.2408 13.339C39.3281 14.6542 39.1419 15.9731 38.6939 17.2143C38.0334 19.088 36.6704 20.6389 34.8867 21.5462C33.3694 22.2242 31.7157 22.5505 30.0515 22.5004C28.0303 22.5744 26.0381 22.0069 24.3661 20.8807C22.8654 19.8031 21.7783 18.2539 21.2823 16.4861C20.9055 15.1998 20.8182 13.8475 21.0265 12.5242C21.2348 11.2009 21.7336 9.9389 22.4879 8.8269C23.1494 7.94476 23.9835 7.20335 24.9406 6.64681C25.8978 6.09028 26.9583 5.73 28.0591 5.58744C28.6483 5.47201 29.2479 5.41731 29.8485 5.42421C31.2007 5.36704 32.5518 5.55862 33.8334 5.98923C35.6886 6.57531 37.2464 7.84244 38.1863 9.53004V9.5677ZM32.3866 11.765C32.4008 10.879 32.2679 9.99675 31.9932 9.15336C31.6633 8.33721 31.0795 7.42062 30.0896 7.42062H29.747C29.214 7.52107 28.719 8.07353 28.2495 9.06546C27.8691 10.3994 27.7316 11.7897 27.8434 13.1713C27.8434 13.7112 27.8434 14.3013 27.8434 14.9291C27.8434 17.8045 28.0464 18.696 28.6809 19.5874C28.8163 19.8179 28.9994 20.0176 29.218 20.1734C29.4367 20.3291 29.6861 20.4375 29.95 20.4915C30.1555 20.5128 30.3633 20.4914 30.5599 20.4287C30.7566 20.366 30.9379 20.2633 31.0922 20.1273C31.8718 19.2543 32.3205 18.1401 32.3612 16.9758C32.412 16.4484 32.412 13.8493 32.3866 11.7273V11.765ZM55.4456 6.01434C54.5147 5.64739 53.5164 5.47789 52.5152 5.51682C51.5139 5.55575 50.5321 5.80225 49.6333 6.24035C48.7844 6.70525 48.0448 7.34288 47.4631 8.1112V5.91389H41.1178V21.8852H47.4631V10.409C47.8319 9.72798 48.4035 9.17567 49.1002 8.8269C49.4547 8.63076 49.8616 8.54725 50.2657 8.58768C50.6698 8.62811 51.0516 8.79052 51.3592 9.05291C51.732 9.53331 51.9168 10.1308 51.8795 10.7354V21.8852H58.1614V9.73093C58.114 8.91506 57.8337 8.12922 57.353 7.46468C56.8723 6.80014 56.2109 6.28416 55.4456 5.97667V6.01434ZM77.2228 9.70582C77.981 11.3319 78.3294 13.1156 78.238 14.904H66.8164V18.1435C66.8777 18.4973 67.0023 18.8375 67.1845 19.148C67.451 19.487 68.3647 20.8179 71.4739 20.3282C74.9258 19.7883 74.8369 17.3399 74.9004 17.3399H77.6289C77.5816 18.3459 77.1667 19.3008 76.4613 20.0269C74.9693 21.3481 73.0965 22.1736 71.1059 22.3874C69.716 22.6346 68.2899 22.6008 66.9137 22.2879C65.5374 21.975 64.2394 21.3895 63.0981 20.5668C61.8901 19.5757 60.9849 18.2714 60.4838 16.8C59.7882 14.4682 59.987 11.9643 61.0422 9.7686C61.8924 8.32351 63.1416 7.14836 64.6432 6.38107C66.1447 5.61378 67.8364 5.2862 69.5195 5.43676C73.5298 5.58743 75.8141 7.01883 77.2228 9.66815V9.70582ZM71.6135 11.3381C71.6175 10.6363 71.5366 9.93655 71.3724 9.2538C71.2274 8.71848 70.9379 8.23232 70.5348 7.84752C70.2297 7.55511 69.8361 7.36975 69.4143 7.31985C68.9926 7.26996 68.5659 7.35829 68.1997 7.57129C67.5673 8.10426 67.1486 8.84365 67.0195 9.6556C66.9042 10.6306 66.8576 11.6123 66.8799 12.5937H71.6135C71.6008 12.443 71.6008 12.0789 71.6135 11.3381ZM135.143 9.69327C135.899 11.3193 136.239 13.1046 136.133 14.8915H124.787V18.1309C124.849 18.4865 124.978 18.8273 125.168 19.1354C125.422 19.4744 126.348 20.8054 129.458 20.3157C132.909 19.7758 132.808 17.3273 132.884 17.3273H135.613C135.559 18.3318 135.145 19.2845 134.445 20.0143C132.946 21.3542 131.059 22.1932 129.052 22.4125C126.805 22.6386 123.62 22.7013 121.056 20.5919C119.845 19.6011 118.936 18.2971 118.429 16.8251C117.734 14.4933 117.933 11.9894 118.988 9.79371C119.838 8.34863 121.087 7.17347 122.589 6.40618C124.09 5.63889 125.782 5.31131 127.465 5.46187C131.45 5.58743 133.734 7.01883 135.143 9.66815V9.69327ZM129.483 11.3381C129.492 10.6353 129.406 9.93447 129.229 9.2538C129.083 8.71607 128.789 8.22916 128.379 7.84752C128.066 7.5777 127.672 7.41588 127.258 7.38644C126.844 7.357 126.431 7.46153 126.082 7.6843C125.449 8.21727 125.031 8.95665 124.902 9.7686C124.781 10.7389 124.734 11.7169 124.762 12.6942H129.483C129.483 12.443 129.483 12.0789 129.483 11.3381ZM115.523 5.91389L113.074 14.8664L110.345 5.91389H104.749L102.211 14.8664L99.4061 5.91389H90.751L87.6038 13.5229L84.6341 5.91389H77.6796L84.1138 22.2368C84.0938 22.4457 84.0513 22.652 83.9869 22.852C83.7096 23.7546 83.2425 24.589 82.6163 25.3004C82.4192 25.5316 82.1644 25.7077 81.8772 25.8112C81.59 25.9148 81.2804 25.9421 80.9792 25.8906C81.2053 25.6767 81.3865 25.4206 81.5122 25.1372C81.6861 24.4681 81.5953 23.7585 81.2584 23.1534C80.9553 22.697 80.5101 22.3508 79.9903 22.1673C79.4704 21.9837 78.9043 21.9729 78.3776 22.1363C77.7125 22.2812 77.1309 22.6772 76.7564 23.24C76.3819 23.8029 76.2442 24.488 76.3725 25.1498C76.5248 26.4054 77.3878 27.5731 79.5325 27.9498C80.3689 28.1157 81.2341 28.0703 82.0481 27.818C82.8622 27.5656 83.5988 27.1143 84.19 26.5058C85.1381 25.395 85.8658 24.117 86.3347 22.739L93.048 6.41613L97.8198 21.8852H103.213L105.751 12.6188L108.67 21.8852H113.912L118.353 5.91389H115.523ZM138.036 21.8852H144.153V0.0376587H138.036V21.8852ZM146.057 0.0376587V21.8852H152.174V0.0376587H146.057Z" fill="#D22630"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.9 KiB |
BIN
.Backup/html/assets/images/instrument.png
Normal file
|
After Width: | Height: | Size: 338 KiB |
BIN
.Backup/html/assets/images/reactor.png
Normal file
|
After Width: | Height: | Size: 1.4 MiB |
346
.Backup/html/assets/js/i18n.js
Normal file
@@ -0,0 +1,346 @@
|
||||
// ============================================================
|
||||
// 다국어 지원 (한국어 / 영어)
|
||||
// ============================================================
|
||||
const translations = {
|
||||
en: {
|
||||
// NAV
|
||||
'nav.home' : 'Home',
|
||||
'nav.dcs' : 'DCS',
|
||||
'nav.batch' : 'Batch Process',
|
||||
'nav.dbsvr' : 'Database Server',
|
||||
'nav.products' : 'Instruments',
|
||||
'nav.services' : 'References',
|
||||
'nav.about' : 'About',
|
||||
'nav.contact' : 'Contact',
|
||||
'nav.quote' : 'Request Quote',
|
||||
|
||||
// HERO
|
||||
'hero.badge' : 'Precision Industrial Control',
|
||||
'hero.title' : 'Engineering <span class="text-blue-500 font-normal">Precision</span> <br class="hidden md:block"/> Industrial Control',
|
||||
'hero.desc' : 'Hanmo Control & Network Co., Ltd. provides elite-tier DCS and SCADA architectures for critical infrastructure and modern digital transformation.',
|
||||
'hero.btn1' : 'Explore Expertise',
|
||||
'hero.btn2' : 'Consultation',
|
||||
'stat.nodes' : 'Reference Projects',
|
||||
'stat.uptime' : 'Downtime',
|
||||
'stat.engineers': 'Partners',
|
||||
'stat.years' : 'Years Excellence',
|
||||
|
||||
// DCS
|
||||
'dcs.badge' : 'Advanced Control Systems',
|
||||
'dcs.title' : 'DCS Integration',
|
||||
'dcs.desc' : 'Enterprise-grade Distributed Control System architecture designed for the most critical industrial applications.',
|
||||
'dcs.f0.title' : 'Honeywell Experion PKS',
|
||||
'dcs.f0.desc' : 'Reliable DCS solutions with Honeywell\'s Experion PKS, ensuring seamless integration and optimal performance',
|
||||
'dcs.f1.title' : 'Redundant Architecture',
|
||||
'dcs.f1.desc' : 'Fault-tolerant systems with dual processing units ensuring 99.99% uptime',
|
||||
'dcs.f2.title' : 'Real-time Communication',
|
||||
'dcs.f2.desc' : 'Sub-millisecond response times with synchronized control across multiple nodes',
|
||||
'dcs.f3.title' : 'Security Certified',
|
||||
'dcs.f3.desc' : 'IEC 62443 compliance with military-grade encryption protocols',
|
||||
'dcs.btn' : 'Request Technical Specs',
|
||||
|
||||
// BATCH
|
||||
'batch.badge' : 'Process Automation',
|
||||
'batch.title' : 'Batch Process Control',
|
||||
'batch.desc' : 'Not only precision control, but also production planning, process data & historical lot management, you can get it by our Batch Manager software.',
|
||||
'batch.f1.title': 'Batch Manager Software',
|
||||
'batch.f1.desc' : 'Process control data and production data management per lot no. in a software platform',
|
||||
'batch.f2.title': 'ControlEdge HC900',
|
||||
'batch.f2.desc' : 'Over the PLC for continuous and batch process control, Hybrid Controller from Honeywell. it is perfect solution of batch plant',
|
||||
'batch.f3.title': 'Process Data Management',
|
||||
'batch.f3.desc' : 'Setpoint scheduling & recipe for various products, lot management with single mouse click',
|
||||
'batch.f4.title': 'Quick Production Setup',
|
||||
'batch.f4.desc' : 'Real-time batch tracking with predictive quality monitoring',
|
||||
'batch.f5.title': 'Easy Historical Tracking',
|
||||
'batch.f5.desc' : 'FDA 21 CFR Part 11 compliance and complete data integrity',
|
||||
'batch.btn' : 'Start Implementation',
|
||||
|
||||
// DBSVR
|
||||
'db.badge' : 'Data Infrastructure',
|
||||
'db.title' : 'Database Server Solutions',
|
||||
'db.desc' : 'Mission-critical historian and data management infrastructure for continuous industrial operations.',
|
||||
'db.c1.title' : 'High-Performance Historian',
|
||||
'db.c1.desc' : 'SQL Server-based architecture optimized for 1M+ data points per second with sub-second query response',
|
||||
'db.c2.title' : 'Disaster Recovery',
|
||||
'db.c2.desc' : 'Geo-redundant replication with RTO < 15 minutes and RPO < 5 minutes',
|
||||
'db.c3.title' : 'Security & Compliance',
|
||||
'db.c3.desc' : 'Role-based access control, encryption at rest/transit, and full audit logging',
|
||||
'db.btn' : 'Get Infrastructure Consultation',
|
||||
|
||||
// INSTRUMENTS
|
||||
'inst.badge' : 'Precision Measurement',
|
||||
'inst.title' : 'Control Instruments',
|
||||
'inst.desc' : 'Smart field instruments engineered for accuracy and reliability in demanding industrial environments.',
|
||||
'inst.i1.title' : 'Flow Transmitters',
|
||||
'inst.i1.desc' : 'Magnetic, Coriolis, and vortex flow meters with ±0.5% accuracy',
|
||||
'inst.i2.title' : 'Pressure Transmitters',
|
||||
'inst.i2.desc' : 'Differential and absolute pressure sensors for ultra-high sensitivity',
|
||||
'inst.i3.title' : 'Temperature Sensors',
|
||||
'inst.i3.desc' : 'RTD, thermocouple, and infrared temperature measurement',
|
||||
'inst.i4.title' : 'Level Transmitters',
|
||||
'inst.i4.desc' : 'Ultrasonic, radar, and capacitive level sensors',
|
||||
'inst.i5.title' : 'Analytical Sensors',
|
||||
'inst.i5.desc' : 'pH, conductivity, oxygen, and dissolved gas analyzers',
|
||||
'inst.i6.title' : 'Control Valves',
|
||||
'inst.i6.desc' : 'Smart positioners with HART communication',
|
||||
'inst.i7.title' : 'Vibration Monitors',
|
||||
'inst.i7.desc' : 'Accelerometers and velocity sensors for predictive maintenance',
|
||||
'inst.i8.title' : 'Smart Data Loggers',
|
||||
'inst.i8.desc' : 'IoT-enabled data acquisition units with cloud connectivity',
|
||||
'inst.custom.title' : 'Custom Integration Available',
|
||||
'inst.custom.desc' : 'All instruments integrate seamlessly with our DCS and SCADA platforms. Custom configurations available for specialized applications.',
|
||||
'inst.custom.btn' : 'Request Custom Configuration',
|
||||
'inst.quote' : 'Get Quote →',
|
||||
|
||||
// REFERENCES
|
||||
'svc.badge' : 'Referenced Plant Varieties',
|
||||
'svc.title' : 'Versatile Automation References',
|
||||
'svc.desc' : 'From Deep Understanding of various industry references to Seamless Execution.',
|
||||
'svc.s1.title' : 'DCS / SCADA',
|
||||
'svc.s1.desc' : 'Semiconductor Solvent Recovery Plant., 80% Hydrazin Plant, SNCR & SCR Envirionmental Plant, etc',
|
||||
'svc.s1.item1' : 'Semiconductor Solvent Recovery Plant',
|
||||
'svc.s1.item2' : '80% Hydrazin Plant',
|
||||
'svc.s1.item3' : 'SNCR & SCR in Power Plant',
|
||||
'svc.s1.item4' : 'Oil Tank Terminal',
|
||||
'svc.s1.link' : 'Learn More',
|
||||
|
||||
'svc.s2.title' : 'Batch Plant',
|
||||
'svc.s2.desc' : 'Real-time monitoring platforms with advanced HMI and secure remote access protocols.',
|
||||
'svc.s2.item1' : 'Micro Capsule forming agent plant',
|
||||
'svc.s2.item2' : 'ADCA,HDCA Plant',
|
||||
'svc.s2.item3' : 'Vacuum Furnace Plant - Decorative Stainless Plate',
|
||||
'svc.s2.link' : 'Case Studies',
|
||||
|
||||
'svc.s3.title' : 'Other Projects',
|
||||
'svc.s3.desc' : 'Various industrial automation projects.',
|
||||
'svc.s3.item1' : 'Waste to Energy Incineration Plant',
|
||||
'svc.s3.item2' : 'Copper Rod Continuous Casting Plant',
|
||||
'svc.s3.item3' : 'Bearing Continuous Heat Treatment Plant',
|
||||
'svc.s3.item4' : 'High Speed Cold Rolling Continuous Casting Plant',
|
||||
'svc.s3.link' : 'CASE STUDIES',
|
||||
|
||||
'svc.s4.title' : 'Instruments',
|
||||
'svc.s4.desc' : 'Smart field sensors for flow, pressure, and temperature with high-accuracy calibration.',
|
||||
'svc.s4.item1' : 'Honeywell',
|
||||
'svc.s4.item2' : 'Azbil',
|
||||
'svc.s4.item3' : 'Endress Hauser',
|
||||
'svc.s4.item4' : 'Flownics',
|
||||
'svc.s4.item5' : 'Komoto - (Motoyama Korea)',
|
||||
'svc.s4.item6' : 'Autonics - (Konics)',
|
||||
'svc.s4.link' : 'Product Catalog',
|
||||
|
||||
// ABOUT
|
||||
'about.badge' : 'About Hanmo',
|
||||
'about.title' : 'Trusted Partner in Industrial Automation',
|
||||
'about.p1' : 'Since our founding, Hanmo Control & Network Co., Ltd. has been at the forefront of industrial automation engineering. We specialize in designing, implementing, and maintaining mission-critical control systems for the world\'s most demanding industries.',
|
||||
'about.p2' : 'Our certified engineers brings decades of combined experience in DCS, SCADA, instrumentation and industrial networking, ensuring your operations run with unmatched precision and reliability.',
|
||||
'about.cert' : 'Certified',
|
||||
'about.support' : 'Support',
|
||||
'about.years' : 'Years of Industrial Excellence',
|
||||
|
||||
// CONTACT
|
||||
'contact.badge' : 'Get In Touch',
|
||||
'contact.title' : 'Start Your Project',
|
||||
'contact.desc' : 'Contact our engineering team for a detailed consultation and project assessment.',
|
||||
'contact.name' : 'Full Name',
|
||||
'contact.email' : 'Email Address',
|
||||
'contact.company': 'Company Name',
|
||||
'contact.msg' : 'Describe your project requirements...',
|
||||
'contact.btn' : 'Send Message',
|
||||
'contact.sending': 'Sending...',
|
||||
'contact.success': '✅ Message sent successfully. We will get back to you shortly.',
|
||||
'contact.error.required': '⚠ Name, email, and message are required.',
|
||||
'contact.error.email' : '⚠ Please enter a valid email address.',
|
||||
'contact.error.fail' : '❌ Failed to send. Please try again later.',
|
||||
|
||||
// FOOTER
|
||||
'footer.copy' : '© 2024 Hanmo Control & Network Co., Ltd. All rights reserved.',
|
||||
},
|
||||
|
||||
ko: {
|
||||
// NAV
|
||||
'nav.home' : '홈',
|
||||
'nav.dcs' : 'DCS',
|
||||
'nav.batch' : '배치 프로세스',
|
||||
'nav.dbsvr' : '데이터베이스 서버',
|
||||
'nav.products' : '계측기기',
|
||||
'nav.services' : '실적 플랜트 분야',
|
||||
'nav.about' : '회사소개',
|
||||
'nav.contact' : '문의하기',
|
||||
'nav.quote' : '견적 요청',
|
||||
|
||||
// HERO
|
||||
'hero.badge' : '정밀 공정 제어 시스템',
|
||||
'hero.title' : '<span class="text-blue-500 font-normal">정밀함</span>을 설계하는<br class="hidden md:block"/> 공정 제어 전문기업',
|
||||
'hero.desc' : '(주)한모씨앤앤은 핵심 인프라와 디지털 전환을 위한 최고 수준의 DCS 및 SCADA BATCH CONTROL 시스템을 제공합니다.',
|
||||
'hero.btn1' : '전문 분야 보기',
|
||||
'hero.btn2' : '상담 신청',
|
||||
'stat.nodes' : '프로젝트 실적',
|
||||
'stat.uptime' : '시스템 가동률',
|
||||
'stat.engineers': '파트너사',
|
||||
'stat.years' : '년 업계 경력',
|
||||
|
||||
// DCS
|
||||
'dcs.badge' : '공정 제어 시스템',
|
||||
'dcs.title' : 'DCS 통합 솔루션',
|
||||
'dcs.desc' : '중요한 공정 현장을 위한 엔터프라이즈급 분산 제어 시스템(DCS) 아키텍처를 설계합니다.',
|
||||
'dcs.f0.title' : 'Honeywell Experion',
|
||||
'dcs.f0.desc' : 'Honeywell Experion 플랫폼을 기반으로 한 안정적이고 다양한 DCS 솔루션을 제공합니다.',
|
||||
'dcs.f1.title' : '이중화 아키텍처',
|
||||
'dcs.f1.desc' : '이중화 서버 & 컨트롤러,통신으로 99.99% 가동률을 보장하는 내결함성 시스템',
|
||||
'dcs.f2.title' : '실시간 통신',
|
||||
'dcs.f2.desc' : '밀리초 미만의 응답 시간으로 다중 노드 간 동기화된 제어 실현',
|
||||
'dcs.f3.title' : '보안 인증',
|
||||
'dcs.f3.desc' : 'IEC 62443 준수 및 군사 수준 암호화 프로토콜 적용',
|
||||
'dcs.btn' : '기술 사양 요청',
|
||||
|
||||
// BATCH
|
||||
'batch.badge' : '배치 프로세스 자동화',
|
||||
'batch.title' : '배치 프로세스 제어',
|
||||
'batch.desc' : '배치 프로세스 자동화는 생산 제품의 다양성을 위한 정밀제어 및 제품별 설정 데이터 생성 및 관리, 생산 로트 이력관리가 하나의 시스템에서 실현됩니다. 반응기, 산업로(배치,연속 혼재공정) 등의 배치 플랜트에 최적화된 제어 시스템과 소프트웨어 솔루션을 제공합니다.',
|
||||
'batch.f1.title': '배치 매니저 소프트웨어',
|
||||
'batch.f1.desc' : '제품별 설정값 패턴 ,레시피, 로트관리 등의 제어와 생산 데이터베이스가 하나의 시스템에서 제공됩니다',
|
||||
'batch.f2.title': 'ControlEdge HC900',
|
||||
'batch.f2.desc' : '설정값 패턴 프로그램, 레시피, 정밀 PID 제어, PLC를 넘어서는 하이브리드 컨트롤러로 배치 플랜트에 최적화된 솔루션',
|
||||
'batch.f3.title': 'MES,ERP 연동',
|
||||
'batch.f3.desc' : '자사 데이터베이스 서버를 통한, 손쉬운 MES, ERP 연동으로 생산 스케쥴 관리 지원 가능',
|
||||
'batch.f4.title': '신속한 운전 설정',
|
||||
'batch.f4.desc' : '단 한번의 다운로드로, 제품별 생산 환경 설정이 초단위로 완료됩니다',
|
||||
'batch.f5.title': '생산 로트 이력 관리',
|
||||
'batch.f5.desc' : '생산 로트 관리 및 로트별 차트 그래프를 제공하여 이력 데이터 분석에 탁월.',
|
||||
'batch.btn' : '구축 상담 신청',
|
||||
|
||||
// DBSVR
|
||||
'db.badge' : '데이터 인프라',
|
||||
'db.title' : '데이터베이스 서버 솔루션',
|
||||
'db.desc' : '지속적인 공정 운영을 위한 미션 크리티컬 히스토리안 및 데이터 관리 인프라를 제공합니다.',
|
||||
'db.c1.title' : '고성능 히스토리안',
|
||||
'db.c1.desc' : '초당 100만+ 데이터 포인트를 처리하는 SQL Server 기반 아키텍처',
|
||||
'db.c2.title' : '재해 복구',
|
||||
'db.c2.desc' : 'RTO 15분 미만, RPO 5분 미만의 지역 이중화 복제 시스템',
|
||||
'db.c3.title' : '보안 및 컴플라이언스',
|
||||
'db.c3.desc' : '역할 기반 접근 제어, 저장/전송 암호화 및 완전한 감사 로깅',
|
||||
'db.btn' : '인프라 상담 신청',
|
||||
|
||||
// INSTRUMENTS
|
||||
'inst.badge' : '정밀 계측',
|
||||
'inst.title' : '계측 제어 기기',
|
||||
'inst.desc' : '가혹한 공정 환경에서도 정확성과 신뢰성을 발휘하는 스마트 현장 계측기기를 공급합니다.',
|
||||
'inst.i1.title' : '유량 변환기',
|
||||
'inst.i1.desc' : '±0.1% 정확도의 코리올리 질량 유량계, 마그네틱, 볼텍스 유량계',
|
||||
'inst.i2.title' : '압력 트랜스미터',
|
||||
'inst.i2.desc' : '초고감도 차압 및 절대압, 리모트실 트랜스미터',
|
||||
'inst.i3.title' : '온도 센서',
|
||||
'inst.i3.desc' : 'RTD, 열전대, 적외선 온도 측정기',
|
||||
'inst.i4.title' : '레벨 트랜스미터',
|
||||
'inst.i4.desc' : '초음파, 레이더, 정전용량식 레벨 트랜스미터',
|
||||
'inst.i5.title' : '분석 센서',
|
||||
'inst.i5.desc' : 'pH, 전도도, 산소, 용존 가스 분석기',
|
||||
'inst.i6.title' : '컨트롤 밸브',
|
||||
'inst.i6.desc' : 'HART 통신 지원 스마트 포지셔너',
|
||||
'inst.i7.title' : '진동 모니터',
|
||||
'inst.i7.desc' : '예측 유지보수를 위한 가속도계 및 속도 센서',
|
||||
'inst.i8.title' : '스마트 데이터 로거',
|
||||
'inst.i8.desc' : '클라우드 연결 기능을 갖춘 IoT 데이터 수집 장치',
|
||||
'inst.custom.title' : '맞춤형 통합 솔루션 제공',
|
||||
'inst.custom.desc' : '모든 계측기기는 당사의 DCS 및 SCADA 플랫폼과 원활하게 통합됩니다. 특수 응용 분야에 맞는 커스텀 구성이 가능합니다.',
|
||||
'inst.custom.btn' : '맞춤 구성 요청',
|
||||
'inst.quote' : '견적 요청 →',
|
||||
|
||||
// REFERENCES
|
||||
'svc.badge' : '실적 플랜트 분야',
|
||||
'svc.title' : '다양한 산업 분야의 자동화 실적',
|
||||
'svc.desc' : '공정에 대한 깊이있는 이해와 경험을 바탕으로 복잡한 공정을 위한 특화된 엔지니어링을 제공합니다.',
|
||||
'svc.s1.title' : 'DCS / SCADA',
|
||||
'svc.s1.desc' : '반도체용 솔벤트 회수 플랜트, 발전소, 화학 플랜트 등 대규모 공정을 위한 이중화 제어 아키텍처',
|
||||
'svc.s1.item1' : '반도체용 솔벤트 회수 플랜트',
|
||||
'svc.s1.item2' : '80% 하이드라진 플랜트',
|
||||
'svc.s1.item3' : '발전소 SNCR & SCR 플랜트',
|
||||
'svc.s1.item4' : '오일 탱크 터미널 플랜트',
|
||||
'svc.s1.link' : '자세히 보기',
|
||||
'svc.s2.title' : '배치 플랜트',
|
||||
'svc.s2.desc' : '실시간 모니터링 플랫폼과 고급 HMI, 안전한 원격 액세스 프로토콜을 갖춘 배치 플랜트 제어 시스템',
|
||||
'svc.s2.item1' : '마이크로 캡슐 발포제 플랜트',
|
||||
'svc.s2.item2' : 'ADCA,HDCA 플랜트',
|
||||
'svc.s2.item3' : '진공 열처리로 플랜트',
|
||||
'svc.s2.link' : '사례 연구',
|
||||
'svc.s3.title' : '기타 프로젝트',
|
||||
'svc.s3.desc' : '기타 핵심 산업 자동화',
|
||||
'svc.s3.item1' : '쓰레기 소각장 플랜트',
|
||||
'svc.s3.item2' : '구리 환재 연속 주조로',
|
||||
'svc.s3.item3' : '베어링 연속 열처리로 플랜트',
|
||||
'svc.s3.item4' : '고속 냉간 연속 주조로 플랜트',
|
||||
'svc.s3.link' : '데이터 보안',
|
||||
'svc.s4.title' : '제어 계측기기 협력사',
|
||||
'svc.s4.desc' : '고객 현장에 대한 깊은 이해를 바탕으로 최적 계측기 선정',
|
||||
'svc.s4.item1' : '한국하니웰(주)',
|
||||
'svc.s4.item2' : '한국아즈빌(주)',
|
||||
'svc.s4.item3' : '엔드레스하우저',
|
||||
'svc.s4.item4' : '플로우닉스(주)',
|
||||
'svc.s4.item5' : '(주)코모토',
|
||||
'svc.s4.item6' : '오토닉스(주)',
|
||||
'svc.s4.link' : '제품 카탈로그',
|
||||
|
||||
// ABOUT
|
||||
'about.badge' : '회사 소개',
|
||||
'about.title' : '공정 자동화의 신뢰할 수 있는 파트너',
|
||||
'about.p1' : '(주)한모씨앤앤는 창립 이래 공정 자동화 엔지니어링의 최전선에서 활동하고 있습니다. 세계에서 가장 까다로운 공정 현장을 위한 미션 크리티컬 제어 시스템 설계, 구현 및 유지보수를 전문으로 합니다.',
|
||||
'about.p2' : 'DCS, SCADA, 계측기기, 공정 네트워킹 분야에서 수십 년의 경험을 바탕으로 최고의 정밀도와 신뢰성을 보장합니다.',
|
||||
'about.cert' : '인증',
|
||||
'about.support' : '지원',
|
||||
'about.years' : '여년간의 공정 제어 전문성',
|
||||
|
||||
// CONTACT
|
||||
'contact.badge' : '문의하기',
|
||||
'contact.title' : '프로젝트를 시작하세요',
|
||||
'contact.desc' : '엔지니어링 팀에 문의하여 상세 상담 및 프로젝트 평가를 받아보세요.',
|
||||
'contact.name' : '성명',
|
||||
'contact.email' : '이메일 주소',
|
||||
'contact.company': '회사명',
|
||||
'contact.msg' : '프로젝트 요구사항을 설명해 주세요...',
|
||||
'contact.btn' : '메시지 보내기',
|
||||
'contact.sending': '전송 중...',
|
||||
'contact.success': '✅ 메시지가 성공적으로 전송되었습니다. 빠른 시일 내에 회신 드리겠습니다.',
|
||||
'contact.error.required': '⚠ 이름, 이메일, 메시지는 필수 항목입니다.',
|
||||
'contact.error.email' : '⚠ 올바른 이메일 주소를 입력해 주세요.',
|
||||
'contact.error.fail' : '❌ 전송에 실패했습니다. 잠시 후 다시 시도해 주세요.',
|
||||
|
||||
// FOOTER
|
||||
'footer.copy' : '© (주)한모씨앤앤. All rights reserved.',
|
||||
}
|
||||
};
|
||||
|
||||
// ── 현재 언어 (로컬스토리지 유지) ──────────────────────────
|
||||
let currentLang = localStorage.getItem('hmLang') || 'en';
|
||||
|
||||
function t(key) {
|
||||
return translations[currentLang][key] || translations['en'][key] || key;
|
||||
}
|
||||
|
||||
function applyTranslations() {
|
||||
document.querySelectorAll('[data-i18n]').forEach(el => {
|
||||
const key = el.getAttribute('data-i18n');
|
||||
const type = el.getAttribute('data-i18n-type') || 'text';
|
||||
if (type === 'html') {
|
||||
el.innerHTML = t(key);
|
||||
} else if (type === 'placeholder') {
|
||||
el.setAttribute('placeholder', t(key));
|
||||
} else {
|
||||
el.textContent = t(key);
|
||||
}
|
||||
});
|
||||
// <html lang> 업데이트
|
||||
document.documentElement.lang = currentLang;
|
||||
// 버튼 활성 상태 업데이트
|
||||
document.querySelectorAll('.lang-btn').forEach(btn => {
|
||||
btn.classList.toggle('active-lang', btn.dataset.lang === currentLang);
|
||||
});
|
||||
}
|
||||
|
||||
function switchLang(lang) {
|
||||
currentLang = lang;
|
||||
localStorage.setItem('hmLang', lang);
|
||||
applyTranslations();
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', applyTranslations);
|
||||
89
.Backup/html/assets/js/script.js
Normal file
@@ -0,0 +1,89 @@
|
||||
// ============================================================
|
||||
// ★ EmailJS 설정 - 아래 3가지 값을 본인 계정으로 교체하세요 ★
|
||||
// ============================================================
|
||||
const EMAILJS_PUBLIC_KEY = 'HO6i369gX6X5HEXtJ';
|
||||
const EMAILJS_SERVICE_ID = 'service_4ur5lqd';
|
||||
const EMAILJS_TEMPLATE_ID = 'template_jp0v5qv';
|
||||
// ============================================================
|
||||
|
||||
emailjs.init(EMAILJS_PUBLIC_KEY);
|
||||
|
||||
// ── Contact Form ─────────────────────────────────────────────
|
||||
document.getElementById('contact-submit').addEventListener('click', function () {
|
||||
const name = document.getElementById('contact-name').value.trim();
|
||||
const email = document.getElementById('contact-email').value.trim();
|
||||
const company = document.getElementById('contact-company').value.trim();
|
||||
const message = document.getElementById('contact-message').value.trim();
|
||||
const btn = document.getElementById('contact-submit');
|
||||
|
||||
if (!name || !email || !message) {
|
||||
showStatus('error', t('contact.error.required')); return;
|
||||
}
|
||||
if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) {
|
||||
showStatus('error', t('contact.error.email')); return;
|
||||
}
|
||||
|
||||
btn.disabled = true;
|
||||
btn.textContent = t('contact.sending');
|
||||
|
||||
const templateParams = {
|
||||
name : name,
|
||||
message : 'Email : ' + email + '\nCompany : ' + (company || 'N/A') + '\n\n' + message,
|
||||
reply_to : email
|
||||
};
|
||||
|
||||
emailjs.send(EMAILJS_SERVICE_ID, EMAILJS_TEMPLATE_ID, templateParams)
|
||||
.then(function () {
|
||||
showStatus('success', t('contact.success'));
|
||||
document.getElementById('contact-name').value = '';
|
||||
document.getElementById('contact-email').value = '';
|
||||
document.getElementById('contact-company').value = '';
|
||||
document.getElementById('contact-message').value = '';
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.error('EmailJS error:', error);
|
||||
showStatus('error', t('contact.error.fail'));
|
||||
})
|
||||
.finally(function () {
|
||||
btn.disabled = false;
|
||||
btn.textContent = t('contact.btn');
|
||||
});
|
||||
});
|
||||
|
||||
function showStatus(type, msg) {
|
||||
const status = document.getElementById('contact-status');
|
||||
status.classList.remove('hidden', 'bg-green-500/20', 'text-green-400', 'bg-red-500/20', 'text-red-400');
|
||||
status.classList.add(type === 'success' ? 'bg-green-500/20' : 'bg-red-500/20',
|
||||
type === 'success' ? 'text-green-400' : 'text-red-400');
|
||||
status.textContent = msg;
|
||||
}
|
||||
|
||||
// ── Header scroll ────────────────────────────────────────────
|
||||
const mainHeader = document.getElementById('main-header');
|
||||
const brandName = document.getElementById('brand-name');
|
||||
const navLinks = document.querySelectorAll('.nav-link');
|
||||
|
||||
window.addEventListener('scroll', () => {
|
||||
if (window.scrollY > 50) {
|
||||
mainHeader.classList.add('glass-effect', 'py-3');
|
||||
mainHeader.classList.remove('py-6');
|
||||
if (brandName) brandName.classList.replace('text-white', 'text-slate-900');
|
||||
navLinks.forEach(link => link.classList.replace('text-slate-100', 'text-slate-700'));
|
||||
} else {
|
||||
mainHeader.classList.remove('glass-effect', 'py-3');
|
||||
mainHeader.classList.add('py-6');
|
||||
if (brandName) brandName.classList.replace('text-slate-900', 'text-white');
|
||||
navLinks.forEach(link => link.classList.replace('text-slate-700', 'text-slate-100'));
|
||||
}
|
||||
});
|
||||
|
||||
// ── Mobile menu ───────────────────────────────────────────────
|
||||
const mobileMenuBtn = document.getElementById('mobile-menu-btn');
|
||||
const mobileMenu = document.getElementById('mobile-menu');
|
||||
const closeMenuBtn = document.getElementById('close-menu-btn');
|
||||
|
||||
if (mobileMenuBtn) mobileMenuBtn.addEventListener('click', () => mobileMenu.classList.remove('translate-x-full'));
|
||||
if (closeMenuBtn) closeMenuBtn.addEventListener('click', () => mobileMenu.classList.add('translate-x-full'));
|
||||
|
||||
const mobileNavLinks = mobileMenu ? mobileMenu.querySelectorAll('a') : [];
|
||||
mobileNavLinks.forEach(link => link.addEventListener('click', () => mobileMenu.classList.add('translate-x-full')));
|
||||