1<!doctype html> 2<html lang="en"> 3<head> 4 <meta charset="utf-8"> 5 <title>VAPEBAZAR Vape Online Shop in Hemmingen, Germany | TRUEen</title> 6 7 <meta name="description" content="VAPEBAZAR Vape Online Shop, Marie-Curie-Str. 16 in Germany. Call us at +4951121534062"> 8 <meta property="og:title" content="VAPEBAZAR Vape Online Shop in Hemmingen, Germany | TRUEen"> 9 <meta property="og:url" content="https://trueen.com/business/premium/vapebazar-vape-online-shop/746704"> 10 <meta property="og:image" content="https://trueen.com/uploads/1778748783_vapebazar-logo500.png"> 11 <meta name="robots" content="index,follow"> 12 <link rel="canonical" href="https://trueen.com/business/premium/vapebazar-vape-online-shop/746704"> 13 14 <meta name="viewport" content="width=device-width, initial-scale=1"> 15 16 <!-- Favicons --> 17 <link rel="shortcut icon" href="https://trueen.com/images/favicon.png"> 18 19 20 <!-- Styles --> 21 <link rel="stylesheet" href="https://trueen.com/frontend/css/bootstrap.min.css"> 22 <link rel="stylesheet" href="https://trueen.com/frontend/css/style.css"> 23 <link rel="stylesheet" href="https://trueen.com/frontend/css/custom.css"> 24 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"> 25 <link rel="stylesheet" href="https://cdn.datatables.net/1.10.13/css/dataTables.bootstrap.min.css"> 26 <link rel="stylesheet" href="https://cdn.datatables.net/responsive/2.1.1/css/responsive.bootstrap.min.css"> 27 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.css"> 28 <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" crossorigin=""> 29 <link rel="stylesheet" href="https://trueen.com/frontend/css/jquery.timepicker.min.css"> 30 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css"/> 31 32 <!-- Scripts --> 33 34
34<script src="https://cdn.ckeditor.com/ckeditor5/41.4.2/classic/ckeditor.js"></script>
34 35
35<script src="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js" ></script>
35 36
36<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" ></script>
36 37
37<script src="https://trueen.com/frontend/js/jquery.simplePagination.js" ></script>
37 38
38<script src="https://trueen.com/frontend/js/vendor/modernizr-2.8.3.min.js" ></script>
38 39
39<script src="https://trueen.com/frontend/js/handlebars.min.js" ></script>
39 40
40<script src="https://trueen.com/frontend/assets/owlcarousel/owl.carousel.js" ></script>
40 41
41<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/sweetalert2.all.min.js" ></script>
41 42
42<script src="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.js" ></script>
42 43 44 45
45<script src="https://unpkg.com/[email protected]/dist/leaflet.js"></script>
vendor: 69 bytes, lines 45-46
45 46 <script async src="https://www.googletagmanager.com/gtag/js?id=
46G-NKGJJ10VVR
vendor: 17 bytes, lines 46-47
46"></script> 47
47<script async custom-element="amp-ad" src="https://cdn.ampproject.org/v0/amp-ad-0.1.js"></script>
47 48
48<script> 49
vendor: 148 bytes, lines 49-52
49window.dataLayer = window.dataLayer || []; 50 function gtag(){dataLayer.push(arguments);} 51 gtag('js', new Date()); 52 gtag('config', '
52G-NKGJJ10VVR
vendor: 9 bytes, lines 52-53
52'); 53
53</script>
53 54 55 <style> 56 .search1 button { 57 position: absolute; 58 top: 3px; 59 right: 5px; 60 height: 44px; 61 width: 172px; 62 border-radius: 29px; 63 font-size: 23px; 64 padding: 6px; 65 } 66 .search1 input { 67 height: 50px; 68 text-indent: 18px; 69 border: 2px solid #000; 70 font-size: 21px; 71 border-radius: 34px; 72 } 73 .search1 { 74 margin-bottom: 42px; 75 } 76 header { 77 background-color: #f3f1fc !important; 78 padding: 26px 0; 79 } 80 @media (min-width: 360px) { 81 .navbar-toggle .icon-bar { 82 background-color: #fff !important; 83 } 84 header nav ul.navbar-nav li.dropdown { 85 background-color: #fff !important; 86 } 87 } 88 </style> 89</head> 90 91 <!-- Header --> 92 <!-- Header --> 93<header class="navbar-static-top bs-docs-nav" id="top" role="banner" style="background-color: #f3f1fc !important; padding: 26px 0;"> 94 <div class="container"> 95 <div class="navbar-header"> 96 <!-- Mobile sidebar toggle button --> 97 <button id="mobile-sidebar-toggle" class="navbar-toggle collapsed" type="button" style="display: none;"> 98 <span class="sr-only">Toggle user menu</span> 99 <span class="icon-bar"></span> 100 <span class="icon-bar"></span> 101 <span class="icon-bar"></span> 102 </button> 103 104 <a href="https://trueen.com" class="navbar-brand"> 105 <img src="https://trueen.com/images/Trueen-logo.png" alt="Logo"> 106 </a> 107 </div> 108 <!-- Mobile Navigation (Always visible on mobile) --> 109 <div id="mobile-nav" style="display: none; margin-top: 15px;"> 110 <a href="https://trueen.com/login" style="display: block; padding: 8px 0; color: #333; text-decoration: none;">Login</a> 111 <a href="https://trueen.com/signup" style="display: block; padding: 8px 0; color: #333; text-decoration: none;">Signup</a> 112 </div> 113 114 <!-- Desktop Navigation --> 115 <div id="desktop-nav" style="display: block; text-align: right; margin-top: 10px;"> 116 117 118 <a href="https://trueen.com/list-your-business/price" style="margin-left: 15px; color: #333; text-decoration: none;">+Add Business</a> 119 120 <a href="https://trueen.com/login" style="margin-left: 15px; color: #333; text-decoration: none;">Get Started</a> 121 </div> 122 </div> 123</header> 124
125<script> 126// Show mobile nav on small screens, desktop nav on large screens 127function handleResize() { 128 const mobileNav = document.getElementById('mobile-nav'); 129 const desktopNav = document.getElementById('desktop-nav'); 130 const toggleBtn = document.getElementById('mobile-sidebar-toggle'); 131 const userMenu = document.getElementById('user-menu'); 132 133 if (window.innerWidth <= 767) { 134 // Mobile 135 if (mobileNav) mobileNav.style.display = 'block'; 136 if (desktopNav) desktopNav.style.display = 'none'; 137 138 // Show toggle button only if user-menu exists 139 if (toggleBtn && userMenu) { 140 toggleBtn.style.display = 'block'; 141 } else if (toggleBtn) { 142 toggleBtn.style.display = 'none'; 143 } 144 } else { 145 // Desktop 146 if (mobileNav) mobileNav.style.display = 'none'; 147 if (desktopNav) desktopNav.style.display = 'block'; 148 if (toggleBtn) toggleBtn.style.display = 'none'; 149 } 150} 151 152// Run on load and resize 153window.addEventListener('load', handleResize); 154window.addEventListener('resize', handleResize); 155 156// Additional function to handle toggle button click 157document.addEventListener('DOMContentLoaded', function() { 158 const toggleBtn = document.getElementById('mobile-sidebar-toggle'); 159 const userMenu = document.getElementById('user-menu'); 160 161 if (toggleBtn && userMenu) { 162 toggleBtn.addEventListener('click', function() { 163 // Toggle the user menu visibility 164 if (userMenu.style.display === 'block') { 165 userMenu.style.display = 'none'; 166 } else { 167 userMenu.style.display = 'block'; 168 } 169 }); 170 } 171}); 172</script>
172 173 174<style> 175 #desktop-nav a{ 176 font-size: 17px; 177 } 178 header { 179 text-transform: uppercase; 180 } 181</style> 182 183 184 185 186 187 <!-- Go to www.addthis.com/dashboard to customize your tools --> 188 189 190 191 192<section> 193 <div class="head-section"> 194 <div class="container"> 195 <div class="row"> 196 197 <div class="col-lg-7 col-md-7 col-sm-12"> 198 <div class="left-company-box"> 199 200 <div class="header-containerx w-100"> 201 <div class="header-contentx"> 202 <h1 class="header-titlex"> 203 VAPEBAZAR Vape Online Shop 204 </h1> 205 <span class="badge bg-green text-sm verified" 206 style="display: inline-block; vertical-align: middle; white-space: nowrap; margin-left: 8px; margin-top: -13px;"> 207 <i class="fa fa-check-circle fa-sm" title="Verified by TRUEen"></i> Verified 208 </span> 209 </div> 210 211 <div style="margin-top: 15px;"> 212 <div class="ratings"> 213 <i class="fa fa-star-o"></i> 214 <i class="fa fa-star-o"></i> 215 <i class="fa fa-star-o"></i> 216 <i class="fa fa-star-o"></i> 217 <i class="fa fa-star-o"></i> 218 0 219 (<b>0 Review</b>) 220 221 <a href="#" data-toggle="modal" data-target="#review_modal" class="btn btn-review" style="background: #bcf2c2">Write a Review</a> 222 <a href="javascript:" 223 onclick="addToWishList(this, '746704')" 224 title="Add to Favorite" 225 style=" border: #06634b solid 0.5px;" 226 class="btn btn-save"> 227 <i class="far fa-bookmark" aria-hidden="true"></i> Save 228 </a> 229 </div> 230 </div> 231 </div> 232 233 <h4> 234 235 <span title="This listing has been claimed by the business owner or their representative." style="color:#006ec9;"> 236 <i class="fa fa-check-circle fa-sm"></i> Claimed 237 </span> 238 <sup><b>.</b></sup> 239 <span class="single-page-category" style="font-size: 15px;"> 240 <a href="https://trueen.com/business-listing/category/ecommerce/35"> 241 eCommerce 242 </a> 243 , 244 <a href="https://trueen.com/business-listing/category/store-and-supermarket-supplies/122"> 245 Store and Supermarket Supplies 246 </a> 247 248 </span> 249 </h4> 250 251 252 253 <div class="contact-business-listing text-left" style="padding: 15px; max-width: 500px;"> 254 <strong>Contact Information</strong> 255 <hr> 256 <p><i class="fa fa-map-marker" style="color:#006ec9;"></i> Marie-Curie-Str. 16</p> 257 <p><i class="fa fa-map" style="color:#006ec9;"></i> 258 <a href="https://trueen.com/business-listing/country/germany/5"> 259 Germany 260 </a> 261 </p> 262 <p><i class="fa fa-phone-square" style="color:#006ec9;"></i> +4951121534062</p> 263 264 <p> 265 <i class="fa fa-globe" style="color:#006ec9;"></i> 266 <a href="https://www.vapebazar.de" class="text-primary" target="_blank"> 267 https://www.vapebazar.de </a> 268 </p> 269 <hr> 270 271 <p><i class="fa fa-clock-o" style="color:#006ec9;"></i>
271Updated on <b>May 14, 2026</b></p> 272 273 <hr> 274 275 <div style="margin-top: 20px;"> 276 <div class="single-page-button"> 277 278 279 280 <img src="https://trueen.com/images/avatar/trueen.png" class="fa fa-check-circle" title="Premium Business" alt="Premium Business" style="color:#9d6010;width:30px" loading="lazy"> 281 Premium Business 282 283 </div> 284 </div> 285 286 </div> 287 288 </div> 289 </div> 290 291 292 <div class="col-lg-5 col-md-5 col-sm-12"> 293 <div class="single-page-logo" style="text-align: center;"> 294 <br><br> 295 <img src="https://trueen.com/uploads/1778748783_vapebazar-logo500.png" loading="lazy" 296 alt="VAPEBAZAR Vape Online Shop" 297 class="top_logo"> 298 299 <br> 300 301 302 <h2 class="bold-quote"><i>VAPEBAZAR - Dein Vape, Elfbar Pods - Onlineshop</i></h2> 303 304 <nav class="content-share_navbar d-flex align-items-center bg-light"> 305 <strong>Share This Listing: </strong> 306 <ul class="list-unstyled d-flex mb-0 gap-2 content-share_list"> 307 <!-- Facebook Share --> 308 <li class="content-share_list-item"> 309 <a href="#" 310 class="share-icon text-decoration-none text-reset" 311 onclick="window.open('https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Ftrueen.com%2Fbusiness%2Fpremium%2Fvapebazar-vape-online-shop%2F746704', '_blank', 'width=626,height=436')" 312 target="_blank" aria-label="Share on Facebook" rel="nofollow"> 313 <i class="fab fa-facebook"></i> 314 </a> 315 </li> 316 317 <!-- Twitter/X Share --> 318 <li class="content-share_list-item"> 319 <a href="#" 320 class="share-icon text-decoration-none text-reset" 321 onclick="window.open('https://twitter.com/intent/tweet?url=https%3A%2F%2Ftrueen.com%2Fbusiness%2Fpremium%2Fvapebazar-vape-online-shop%2F746704&text=VAPEBAZAR+Vape+Online+Shop', '_blank', 'width=626,height=436')" 322 target="_blank" aria-label="Share on Twitter" rel="nofollow"> 323 <i class="fab fa-x-twitter"></i> <!-- Using fa-x-twitter for newer icon --> 324 </a> 325 </li> 326 327 <!-- LinkedIn Share --> 328 <li class="content-share_list-item"> 329 <a href="#" 330 class="share-icon text-decoration-none text-reset" 331 onclick="window.open('https://www.linkedin.com/shareArticle?url=https%3A%2F%2Ftrueen.com%2Fbusiness%2Fpremium%2Fvapebazar-vape-online-shop%2F746704&title=VAPEBAZAR+Vape+Online+Shop', '_blank', 'width=626,height=436')" 332 target="_blank" aria-label="Share on LinkedIn" rel="nofollow"> 333 <i class="fab fa-linkedin"></i> 334 </a> 335 </li> 336 337 <!-- Email Share --> 338 <li class="content-share_list-item"> 339 <a href="mailto:?subject=VAPEBAZAR+Vape+Online+Shop&body=https%3A%2F%2Ftrueen.com%2Fbusiness%2Fpremium%2Fvapebazar-vape-online-shop%2F746704" 340 class="share-icon text-decoration-none text-reset" 341 target="_blank" aria-label="Share via Email" rel="nofollow"> 342 <i class="fa fa-envelope"></i> 343 </a> 344 </li> 345 </ul> 346</nav> 347 348 349<style> 350 351 .share-icon { 352 display: flex !important; 353 justify-content: center !important; 354 align-items: center !important; 355 } 356 357 .content-share_navbar { 358 display: inline-flex !important; 359 border-radius: 6px; 360 align-items: center; 361 border: 1px solid #ddd; 362 padding: 5px !important; /* â Exactly 5px inside border */ 363 gap: 5px !important; /* â Uniform spacing between <strong> and <ul> */ 364 width: auto !important; /* â Prevent Bootstrap width expansion */ 365 } 366 367 .content-share_navbar > * { 368 flex: 0 0 auto !important; /* â Make sure no element (like UL) expands */ 369 } 370 371 .content-share_list { 372 display: inline-flex !important; 373 padding: 0; 374 margin: 0; 375 gap: 5px !important; /* â Clean 5px spacing between icons */ 376 flex-grow: 0 !important; /* â Prevent expansion */ 377 } 378 379 380 .content-share_list { 381 display: flex; 382 align-items: center; /* Align icons vertically in the center */ 383 list-style: none; 384 padding: 0; 385 margin: 0; 386 flex-grow: 1; /* Allow the list to take remaining space if needed */ 387 } 388 389 .content-share_list-item { 390 display: block; /* Changed from inline-block */ 391 /* border-radius: 50%; */ 392 padding: 0.4rem; /* Consistent padding inside the circle */ 393 transition: all 0.2s ease-in-out; /* Smooth transition for hover effects */ 394 background-color: transparent; /* Start transparent */ 395 /* border: 1px solid transparent; */ 396 } 397 398 .content-share_list-item a { 399 width: 36px;
399 /* Fixed width for consistent circle size */ 400 height: 36px; /* Fixed height for consistent circle size */ 401 border-radius: 50%; /* Ensure link area is circular */ 402 transition: all 0.2s ease-in-out; /* Smooth transition for link hover */ /* Add border to each icon button */ 403 } 404 405 .content-share_list-item a:hover { 406 background-color: rgba(0, 0, 0, 0.05); /* Light background on hover */ 407 transform: scale(1.1); /* Slightly enlarge on hover */ 408 } 409 410 .content-share_list-item i { 411 transition: color 0.2s ease-in-out; /* Smooth color transition */ 412 color: #495057; /* Default icon color */ 413 } 414 415 .content-share_list-item a:hover i { 416 color: #007bff; /* Change icon color on hover */ 417 } 418 419 @media (max-width: 768px) { 420 421 422 .content-share_list-item a { 423 width: 26px; /* Fixed width for consistent circle size */ 424 height: 26px; 425 } 426 } 427 428</style> 429 <br> 430 <div class="" style="margin:5px; padding-top:40px"> 431 <div style="font-size: 15px;"> 432 <strong>Do You Recommend This Business?</strong> 433 <a href="#" data-toggle="modal" data-target="#review_modal" class="btn-rec">Yes</a> <a href="#" data-toggle="modal" data-target="#review_modal" class="btn-rec">No</a> 434 435 </div> 436 </div> 437 </div> 438 </div> 439 </div> 440 </div> 441 </div> 442</section> 443 444<style> 445 .review-top { 446 margin-top: 30px; 447 } 448</style> 449 450 451<section> 452 <div class="description-section"> 453 <div class="container"> 454 <div class="row"> 455 456 <div class="col-md-8 col-sm-12"> 457 <!-- Company Overview Section --> 458<section class="company-overview-section"> 459 460 461 462 463 <!-- Company Description --> 464 <div class="company-description-card"> 465 <div class="description-header"> 466 <h2 class="description-title">About VAPEBAZAR Vape Online Shop</h2> 467 </div> 468 <div class="description-content"> 469 <div class="company-bio"><p><strong>Elfbar Pods bei Vapebazar kaufen grosse Auswahl fr dein Pod-System</strong></p> 470 471<p>Du suchst nach hochwertigen <strong>Elfbar Pods</strong> fuer intensiven Geschmack und ein unkompliziertes Dampferlebnis? Bei <a href="https://www.vapebazar.de"><strong>Vapebazar</strong></a> findest du eine attraktive Auswahl an beliebten Elfbar Pod-Sorten ideal fuer alle, die Wert auf einfache Handhabung, zuverlssige Qualitt und starken Geschmack legen. Ob fruchtig, frisch oder klassisch:
471Entdecke jetzt passende Pods fuer dein Gert und geniee komfortables Dampfen im Alltag.</p> 472 473<p><strong>Jetzt Elfbar Pods bei Vapebazar entdecken:</strong> <a href="https://www.vapebazar.de/elfbar-elfa">Elfbar Pods kaufen</a></p></div> 474 475 </div> 476 </div> 477 478 <!-- Products & Services Section --> 479<div class="products-services-section"> 480 481 482</div> 483</section> 484 485 486 487 488 489 <div class="faq-section"> 490 <div> 491 <h2 style="margin-left: 15px;"><strong>Frequently Asked Questions</strong></h2> 492 <br> 493 <div class="faq-list"> 494 <div class="faq-item"> 495 <div class="faq-question" aria-expanded="false"> 496 <h3>Where is VAPEBAZAR Vape Online Shop's headquarters located?</h3> 497 498 </div> 499 <div class="faq-answer"> 500 <p>The headquarters of VAPEBAZAR Vape Online Shop is located at <b>Marie-Curie-Str. 16</b>.</p> 501 </div> 502 </div> 503 504 <div class="faq-item"> 505 <div class="faq-question" aria-expanded="false"> 506 <h3>What is VAPEBAZAR Vape Online Shop's contact phone number?</h3> 507 508 </div> 509 <div class="faq-answer"> 510 <p>The contact phone number for VAPEBAZAR Vape Online Shop is <b>+4951121534062</b>.</p> 511 </div> 512 </div> 513 514 <div class="faq-item"> 515 <div class="faq-question" aria-expanded="false"> 516 <h3>What is VAPEBAZAR Vape Online Shop's official website?</h3> 517 518 </div> 519 <div class="faq-answer"> 520 <div> 521 <p> 522 The official website for VAPEBAZAR Vape Online Shop is <b>https://www.vapebazar.de</b>. 523 </p> 524 </div> 525 </div> 526 </div> 527 528 <div class="faq-item"> 529 <div class="faq-question" aria-expanded="false"> 530 <h3>Who is the Owner/CEO/Representative of VAPEBAZAR Vape Online Shop?</h3> 531 532 </div> 533 <div class="faq-answer"> 534 <p>The representative of VAPEBAZAR Vape Online Shop is <b>Mehdi Arab</b>.</p> 535 <br> 536 <p><i class="fa fa-user" style="color:#006ec9;"></i> Listed by <b>Mehdi</b></p> 537 538 <!--<div class="leadership-info"> 539 540 <p>For detailed company information including leadership contacts:</p> 541 <form action="https://trueen.com/filter-businesses" method="POST" target="_blank" class="company-info-form"> 542 <input type="hidden" name="_token" value="dSBkqe3MvT6QPUflycWK4RlSSp4LZ93nutTharut"> <input type="hidden" name="keyword" value="VAPEBAZAR Vape Online Shop"> 543 <button type="submit" class="btn-view-company-info"> 544 <span class="icon">â</span> 545 View Email Formats, Employees & Company Details 546 </button> 547 </form> 548 </div> --> 549 </div> 550 </div> 551 </div> 552 553 <br> 554 </div> 555 </div> 556 557 <br> 558 559 <div class="row"> 560 <div class="col-md-8"> 561 <h3>Ask the Community</h3> 562 563 </div> 564 <div class="col-md-4"> 565 <h4><a data-toggle="modal" data-target="#question_modal">Ask a question +</a></h4> 566 567 568 </div> 569 <div class="col-md-12 col-lg-12"> 570 <h5>Have inquiries regarding the <b><a href="https://trueen.com/business/premium/vapebazar-vape-online-shop/746704" class="visible-link">VAPEBAZAR Vape Online Shop</a></b>? Ask your questions to the TRUEen community!</h5> 571 572 </div> 573 574 <div class=""> 575 576 577 578 </div> 579 </div> 580 581 <p class="light-hr"> 582 583 <div class="row"> 584 <!-- 585 586 587 588 589 590 <div class="col-md-1"> 591 592 </div> 593 --> 594 595 596 <div class="col-md-6"> 597 </div> 598 599 </div> 600 601 <p class="light-hr"> 602 <div class="review-section-wrapper"> 603 604 605 <div class="row review-summary-row"> 606 <div class="col-sm-8"> 607 <div class="rating-block"> 608 <h3 content="0"> 609 Reviews
610 <span class="h2 fa fa-star rating-color" aria-hidden="true"></span> 611 <span class="rating-value">0</span> 612 </h3> 613 </div> 614 </div> 615 <div class="col-sm-4"> 616 <div class="rating-block text-right"> 617 <a class="btn btn-block btn-success" 618 data-toggle="modal" 619 data-target="#review_modal"> 620 <i class="fa fa-edit"></i> Write a Review 621 </a> 622 </div> 623 </div> 624 </div> 625 626 627 <div class="row"> 628 <div class="col-sm-12"> 629 <h4 itemprop="reviewCount">0 total</h4> 630 631 <div class="custom-progress-bar"> 632 <ul> 633 634 <li> 635 <span class="progress-type">5-stars </span> 636 <span class="progress-track"> 637 <div class="progress"> 638 <div class="progress-bar" 639 role="progressbar" 640 style="width: 0%" 641 aria-valuenow="0" 642 aria-valuemin="0" 643 aria-valuemax="100"></div> 644 </div> 645 </span> 646 <span class="progress-spacer"></span> 647 </li> 648 <li> 649 <span class="progress-type">4-stars </span> 650 <span class="progress-track"> 651 <div class="progress"> 652 <div class="progress-bar" 653 role="progressbar" 654 style="width: 0%" 655 aria-valuenow="0" 656 aria-valuemin="0" 657 aria-valuemax="100"></div> 658 </div> 659 </span> 660 <span class="progress-spacer"></span> 661 </li> 662 <li> 663 <span class="progress-type">3-stars </span> 664 <span class="progress-track"> 665 <div class="progress"> 666 <div class="progress-bar" 667 role="progressbar" 668 style="width: 0%" 669 aria-valuenow="0" 670 aria-valuemin="0" 671 aria-valuemax="100"></div> 672 </div> 673 </span> 674 <span class="progress-spacer"></span> 675 </li> 676 <li> 677 <span class="progress-type">2-stars </span> 678 <span class="progress-track"> 679 <div class="progress"> 680 <div class="progress-bar" 681 role="progressbar" 682 style="width: 0%" 683 aria-valuenow="0" 684 aria-valuemin="0" 685 aria-valuemax="100"></div> 686 </div> 687 </span> 688 <span class="progress-spacer"></span> 689 </li> 690 <li>
691 <span class="progress-type">1-star </span> 692 <span class="progress-track"> 693 <div class="progress"> 694 <div class="progress-bar" 695 role="progressbar" 696 style="width: 0%" 697 aria-valuenow="0" 698 aria-valuemin="0" 699 aria-valuemax="100"></div> 700 </div> 701 </span> 702 <span class="progress-spacer"></span> 703 </li> 704 </ul> 705 </div> 706 </div> 707 </div> 708 709 710 <div class="row"> 711 <div class="col-md-12"> 712 <p class="no-reviews-msg">No reviews yet. Be the first to review!</p> 713 </div> 714 </div> 715</div> 716 717 718 719 </div> 720 721 722 723 724 <div class="col-md-4 col-sm-12"> 725 <div class="sidebar-section"> 726 <h2>Photo of VAPEBAZAR Vape Online Shop</h2> 727 <div class="single-page-logo text-center"> 728 <!-- <img src="https://trueen.com/uploads/1689190716_icon.png"><br/><br/> --> 729 <img src="https://trueen.com/uploads/cover/1778748783_VAPEBAZAR-bei-nacht.png" alt="Photo of VAPEBAZAR - Dein Vape, Elfbar Pods - Onlineshop" class="img-responsive" style="height: 300px; width: 400px" loading="lazy"> 730 731 </div> 732 <div class=" text-center"> 733 <a class="btn btn-lg lg-block view-button" href="https://trueen.com/login"><i class="fa fa-envelope"></i> Chat Now</a> 734 </div> 735 <br/> <br/> 736 737 738<!-- Contact the Business Section --> 739<section class="contact-business-section"> 740 <div class="contact-business-inner"> 741 <!-- Header --> 742 <div class="contact-business-header"> 743 <div class="contact-business-icon"> 744 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"> 745 <path stroke-linecap="round" stroke-linejoin="round" d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"/> 746 </svg> 747 </div> 748 <div class="contact-business-title"> 749 <h3>Get in Touch with Leadership and Key Contacts</h3> 750 </div> 751 </div> 752 753 <!-- Body --> 754 <div class="contact-business-body"> 755 <p class="contact-business-text"> 756 View detailed company information including verified email, employee directories, leadership contacts, and organizational details. 757 </p> 758 759 <!-- Feature Highlights 760 <ul class="contact-business-features"> 761 <li> 762 <span class="feature-check">â</span> 763 Verified email formats 764 </li> 765 <li> 766 <span class="feature-check">â</span> 767 Employee & leadership contacts 768 </li> 769 <li> 770 <span class="feature-check">â</span> 771 Full company details 772 </li> 773 </ul> --> 774 775 <!-- Call to Action --> 776 <form action="https://trueen.com/filter-businesses" method="POST" target="_blank" class="company-info-form"> 777 <input type="hidden" name="_token" value="dSBkqe3MvT6QPUflycWK4RlSSp4LZ93nutTharut"> <input type="hidden" name="keyword" value="VAPEBAZAR Vape Online Shop"> 778 <button type="submit" class="btn-view-company-info">
779 <span>View This Listing Details</span> 780 </button> 781 </form> 782 </div> 783 </div> 784</section> 785 786<style> 787 /* --- Contact Business Section --- */ 788 .contact-business-listing { 789 padding: 0; 790 border: 1px solid #e2e8f0; 791 border-radius: 16px; 792 margin: 1.5rem 0; 793 overflow: hidden; 794 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03); 795 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 796 } 797 798 .contact-business-section { 799 padding: 0; 800 background: #ffffff; 801 border: 1px solid #e2e8f0; 802 border-radius: 16px; 803 margin: 1.5rem 0; 804 overflow: hidden; 805 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03); 806 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 807 } 808 809 .contact-business-inner { 810 padding: 1.75rem 2rem; 811 } 812 813 /* Header */ 814 .contact-business-header { 815 display: flex; 816 align-items: center; 817 gap: 1rem; 818 padding-bottom: 1.25rem; 819 margin-bottom: 1.25rem; 820 border-bottom: 1px solid #f1f5f9; 821 } 822 823 .contact-business-icon { 824 display: flex; 825 align-items: center; 826 justify-content: center; 827 width: 48px; 828 height: 48px; 829 border-radius: 12px; 830 background: linear-gradient(135deg, #eff6ff, #dbeafe); 831 color: #2563eb; 832 flex-shrink: 0; 833 } 834 835 .contact-business-title h3 { 836 margin: 0; 837 font-size: 1.9rem; 838 font-weight: 600; 839 color: #0f172a; 840 line-height: 1.3; 841 } 842 843 .contact-business-subtitle { 844 display: block; 845 /* font-size: 0.8rem; */ 846 color: #64748b; 847 margin-top: 0.15rem; 848 } 849 850 /* Body */ 851 .contact-business-text { 852 margin: 0 0 1rem 0; 853 color: #475569; 854 /* font-size: 0.95rem; */ 855 line-height: 1.6; 856 } 857 858 /* Feature list */ 859 .contact-business-features { 860 list-style: none; 861 padding: 0; 862 margin: 0 0 1.5rem 0; 863 display: flex; 864 flex-wrap: wrap; 865 gap: 0.5rem 1.25rem; 866 } 867 868 .contact-business-features li { 869 display: inline-flex; 870 align-items: center; 871 gap: 0.4rem; 872 /* font-size: 0.85rem; */ 873 color: #334155; 874 font-weight: 500; 875 } 876 877 .feature-check { 878 display: inline-flex; 879 align-items: center; 880 justify-content: center; 881 width: 18px; 882 height: 18px; 883 border-radius: 50%; 884 background: #dcfce7; 885 color: #16a34a; 886 /* font-size: 0.7rem; */ 887 font-weight: 700; 888 } 889 890 /* CTA */ 891 .company-info-form { 892 margin: 0; 893 } 894 895 .btn-view-company-info { 896 display: inline-flex; 897 align-items: center; 898 justify-content: center; 899 gap: 1.6rem; 900 width: 100%; 901 background: #0f172a; 902 color: #ffffff; 903 border: none; 904 padding: 0.85rem 1.5rem; 905 margin-top: 1rem; 906 border-radius: 12px; 907 /* font-size: 0.95rem; */ 908 font-weight: 500; 909 cursor: pointer; 910 transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease; 911 } 912 913 .btn-view-company-info:hover { 914 background: #1e293b; 915 box-shadow: 0 6px 16px rgba(15, 23, 42, 0.15); 916 } 917 918 .btn-view-company-info:active { 919 transform: scale(0.99); 920 } 921 922 .btn-view-company-info .icon { 923 /* font-size: 1.05rem; */ 924 line-height: 1; 925 transition: transform 0.2s ease; 926 } 927 928 .btn-view-company-info:hover .icon { 929 transform: translateX(3px); 930 } 931 932 /* Responsive */ 933 @media (max-width: 576px) { 934 .contact-business-inner { 935 padding: 1.25rem 1.25rem; 936 } 937 .contact-business-features { 938 flex-direction: column; 939 gap: 0.4rem; 940 } 941 } 942</style> 943 944 <style> 945.listing-map-card { 946 background: #fff; 947 /* border: 1px solid #e9ecef; */ 948 border-radius: 10px; 949 padding-bottom: 15px; 950 margin-bottom: 5px; 951 height: 100%; 952} 953.listing-map-embed iframe { 954 display: block; 955 width: 100%; 956}
957.listing-address { 958 /* font-size: 15px; */ 959 line-height: 1.6; 960} 961.dir { 962 text-align: center !important; 963} 964.btn-direction { 965 966 display: inline-flex; 967 align-items: center; 968 justify-content: center; 969 gap: 1.6rem; 970 width: 90%; 971 /* background: #0f172a; */ 972 color: #ffffff; 973 border: none; 974 padding: 0.85rem 1.5rem; 975 margin-top: 1rem; 976 border-radius: 5px; 977 /* font-size: 0.95rem; */ 978 font-weight: 500; 979 cursor: pointer; 980 transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease; 981} 982 </style> 983<div class=""> 984 <div class="listing-map-card"> 985 986 987 988 <div class="listing-map-embed mb-3"> 989 <iframe 990 width="100%" 991 height="280" 992 style="border:0; border-radius:8px;" 993 loading="lazy" 994 allowfullscreen 995 referrerpolicy="no-referrer-when-downgrade" 996 src="https://www.google.com/maps?q=VAPEBAZAR+Vape+Online+Shop%2C+Marie-Curie-Str.+16%2C+Germany&output=embed"> 997 </iframe> 998 </div> 999 1000 1001 <div class="dir"> 1002 <a href="https://www.google.com/maps/dir/?api=1&destination=VAPEBAZAR+Vape+Online+Shop%2C+Marie-Curie-Str.+16%2C+Germany" 1003 target="_blank" 1004 rel="noopener noreferrer" 1005 class="btn btn-primary btn-direction"> 1006 <i class="fas fa-diamond-turn-right me-2"></i> 1007 Get Directions 1008 </a> 1009 </div> 1010 </div> 1011</div> 1012 1013 </div> 1014 1015 <!-- VIP Membership Card --> 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 </div> 1026 1027 </div> 1028 </div> 1029 1030 </div> 1031 1032 1033</section> 1034 1035<!-- Modal --> 1036 <div class="modal fade" id="review_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> 1037 <div class="modal-dialog modal-lg" role="document"> 1038 <div class="modal-content review-modal-content"> 1039 1040 1041 <div class="modal-header review-modal-header"> 1042 <div class="header-text"> 1043 <h4 class="modal-title" id="myModalLabel"> 1044 <i class="fa fa-pencil-square-o"></i> Write a Review 1045 </h4> 1046 <p class="header-subtitle">Share your honest experience to help others decide.</p> 1047 </div> 1048 <button type="button" class="close review-close" data-dismiss="modal" aria-label="Close"> 1049 <span aria-hidden="true">×</span> 1050 </button> 1051 </div> 1052 1053 1054 <div class="modal-body review-modal-body"> 1055 <div class="msg"></div> 1056 1057 <form class="form-horizontal review-form" method="post" 1058 action="https://trueen.com/save-review" 1059 enctype="multipart/form-data" id="reviewForm"> 1060 <input type="hidden" name="_token" value="dSBkqe3MvT6QPUflycWK4RlSSp4LZ93nutTharut"> <input type="hidden" name="listing_id" 1061 value="746704"> 1062 1063 <div class="login-prompt"> 1064 <i class="fa fa-lock"></i> 1065 <p class="lead">Please <a href="https://trueen.com/login">Login</a> to post a review.</p> 1066 </div> 1067 </form> 1068 </div> 1069 </div> 1070 </div> 1071</div> 1072 1073 1074<style> 1075 /* ---- Modal Shell ---- */ 1076 .review-modal-content { 1077 border: none; 1078 border-radius: 14px; 1079 overflow: hidden; 1080 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25); 1081 } 1082 1083 .review-modal-header { 1084 background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%); 1085 color: #fff; 1086 padding: 22px 28px; 1087 border-bottom: none; 1088 position: relative; 1089 } 1090 .review-modal-header .modal-title { 1091 color: #fff; 1092 font-weight: 600; 1093 font-size: 20px; 1094 margin: 0; 1095 letter-spacing: .3px; 1096 } 1097 .review-modal-header .modal-title i { margin-right: 8px; } 1098 .review-modal-header .header-subtitle { 1099 color: rgba(255, 255, 255, .85); 1100 font-size: 13px; 1101 margin: 4px 0 0; 1102 } 1103 .review-close { 1104 position: absolute; 1105 top: 16px; 1106 right: 20px; 1107 color: #fff; 1108 opacity: .85; 1109 font-size: 26px; 1110 text-shadow: none; 1111 transition: opacity .2s, transform .2s; 1112 } 1113 .review-close:hover { opacity: 1; transform: rotate(90deg); color: #fff; } 1114 1115 .review-modal-body { 1116 padding: 28px 30px 32px; 1117 background: #f9fbfc; 1118 } 1119 1120 .review-warning { 1121 display: flex; 1122 align-items: flex-start; 1123 gap: 12px; 1124 margin-bottom: 24px; 1125 padding: 14px 16px; 1126 border: 1px solid #f0d58a; 1127 border-left: 4px solid #e3a008; 1128 border-radius: 8px; 1129 background: #fff8e5; 1130 color: #594515; 1131 font-size: 13px; 1132 line-height: 1.55; 1133 } 1134 .review-warning > i { margin-top: 2px; color: #c58a00; font-size: 18px; } 1135 .review-warning strong { display: block; margin-bottom: 3px; } 1136 .review-warning p { margin: 0; } 1137 1138 /* ---- Sections ---- */ 1139 .review-section { margin-bottom: 26px; } 1140 .section-label { 1141 font-weight: 600; 1142 font-size: 14px; 1143 color: #2c3e50; 1144 margin-bottom: 10px; 1145 display: flex; 1146 align-items: center; 1147 gap: 6px; 1148 } 1149 .section-label i { color: #28a745; width: 16px; text-align: center; } 1150 .required-mark { color: #e74c3c; font-weight: bold; } 1151 .optional-mark { color: #8a949e; font-weight: 400; font-size: 12px; } 1152 1153 /* ---- Floating Fields ---- */ 1154 .floating-field { position: relative; } 1155 .floating-field .form-control { 1156 height: 52px; 1157 border: 1.5px solid #dfe6e9; 1158 border-radius: 10px; 1159 padding: 18px 14px 6px; 1160 font-size: 15px; 1161 background: #fff; 1162 transition: border-color .2s, box-shadow .2s; 1163 box-shadow: none; 1164 } 1165 .floating-field textarea.form-control { 1166 height: auto; 1167 min-height: 140px; 1168 padding-top: 22px; 1169 resize: vertical; 1170 } 1171 .floating-field .form-control:focus { 1172 border-color: #28a745; 1173 box-shadow: 0 0 0 4px rgba(40, 167, 69, .12); 1174 outline: none; 1175 } 1176 .floating-field label { 1177 position: absolute; 1178 top: 15px; 1179 left: 15px; 1180 font-size: 15px; 1181 color: #8a949e; 1182 font-weight: 400; 1183 pointer-events: none; 1184 transition: all .18s ease; 1185 background: transparent; 1186 padding: 0 4px; 1187 } 1188 .floating-field .form-control:focus ~ label, 1189 .floating-field .form-control:not(:placeholder-shown) ~ label { 1190 top: -9px; 1191 left: 12px; 1192 font-size: 11.5px; 1193 font-weight: 600; 1194 color: #28a745; 1195 background: #fff; 1196 border-radius: 4px; 1197 letter-spacing: .3px; 1198 text-transform: uppercase; 1199 } 1200 .floating-field .form-control.is-invalid { 1201 border-color: #e74c3c; 1202 box-shadow: 0 0 0 4px rgba(231, 76, 60, .1); 1203 } 1204 .field-error { display: block; margin-top: 6px; font-size: 13px; } 1205 1206 /* ---- Date field ---- */ 1207 .floating-field-date { padding-top: 10px; } 1208 .floating-field-date .date-label-fixed { 1209 position: absolute; 1210 top: 0; 1211 left: 12px; 1212 font-size: 11.5px; 1213 font-weight: 600; 1214 color: #28a745; 1215 background: #fff; 1216 padding: 0 4px; 1217 border-radius: 4px; 1218 letter-spacing: .3px; 1219 text-transform: uppercase; 1220 } 1221 1222 /* ---- File field ---- */ 1223 .file-field { position: relative; } 1224 .file-field .file-input { 1225 position: absolute; 1226 width: 0.1px; 1227 height: 0.1px; 1228 opacity: 0; 1229 overflow: hidden; 1230 z-index: -1; 1231 } 1232 .file-field .file-label { 1233 display: inline-flex; 1234 align-items: center; 1235 gap: 10px; 1236 padding: 12px 20px; 1237 border: 1.5px dashed #cfe8d5; 1238 border-radius: 10px; 1239 background: #fff; 1240 cursor: pointer; 1241 font-weight: 500; 1242 color: #28a745; 1243 transition: border-color .2s, background .2s; 1244 width: 100%; 1245 margin-bottom: 0; 1246 } 1247 .file-field .file-label:hover { 1248 border-color: #28a745; 1249 background: #f1faf3; 1250 } 1251 .file-field .file-label i { font-size: 18px; } 1252 .file-field .file-input:focus + .file-label { 1253 outline: 2px solid #28a745; 1254 outline-offset: 2px; 1255 } 1256 .file-field .file-hint { 1257 display: block; 1258 margin-top: 6px; 1259 font-size: 12px; 1260 color: #8a949e; 1261 } 1262 .file-field .file-hint.error { color: #e74c3c; font-weight: 600; } 1263 1264 /* ---- Image preview ---- */ 1265 .image-preview-wrap { 1266 position: relative; 1267 display: inline-block; 1268 margin-top: 12px; 1269 border-radius: 10px; 1270 overflow: hidden; 1271 box-shadow: 0 4px 12px rgba(0, 0, 0, .08); 1272 } 1273 .image-preview-wrap img { 1274 display: block; 1275 max-width: 180px; 1276 max-height: 180px; 1277 object-fit: cover; 1278 border-radius: 10px; 1279 } 1280 .image-remove { 1281 position: absolute; 1282 top: 6px; 1283 right: 6px; 1284 width: 26px;
1285 height: 26px; 1286 border-radius: 50%; 1287 border: none; 1288 background: rgba(231, 76, 60, .9); 1289 color: #fff; 1290 font-size: 12px; 1291 cursor: pointer; 1292 display: flex; 1293 align-items: center; 1294 justify-content: center; 1295 transition: background .2s; 1296 } 1297 .image-remove:hover { background: #e74c3c; } 1298 1299 /* ---- Char Counter ---- */ 1300 .char-counter { 1301 position: absolute; 1302 right: 12px; 1303 bottom: -18px; 1304 font-size: 11.5px; 1305 color: #8a949e; 1306 letter-spacing: .3px; 1307 } 1308 1309 /* ========================================================= 1310 Star Rating â SQUARE BOXES (1â Poor ⦠5â Excellent) 1311 Default : light gray border, white bg, gray star glyph 1312 Filled : colored square background + white star glyph 1313 (color depends on rating sentiment) 1314 ========================================================= */ 1315 .rating-section { margin-bottom: 30px; } 1316 .star-rating-wrap { 1317 display: flex; 1318 align-items: center; 1319 gap: 16px; 1320 flex-wrap: wrap; 1321 } 1322 .star-rating { 1323 display: inline-flex; 1324 flex-direction: row; 1325 align-items: center; 1326 gap: 2px; 1327 padding: 4px 2px; 1328 } 1329 .star-rating .star-label { 1330 cursor: pointer; 1331 position: relative; 1332 display: inline-block; 1333 line-height: 1; 1334 transition: transform .15s ease; 1335 } 1336 .star-rating .star-label:hover { transform: translateY(-2px); } 1337 1338 /* ---- Square box wrapper ---- */ 1339 .star-rating .star-box { 1340 display: inline-flex; 1341 align-items: center; 1342 justify-content: center; 1343 width: 48px; 1344 height: 48px; 1345 border: 2px solid #dfe6e9; 1346 /* border-radius: 8px; */ 1347 background: #ffffff; 1348 color: #dfe6e9; /* star glyph color (default gray) */ 1349 font-size: 20px; 1350 transition: 1351 background-color .18s ease, 1352 border-color .18s ease, 1353 color .18s ease, 1354 box-shadow .18s ease, 1355 transform .15s ease; 1356 } 1357 .star-rating .star-box .star-icon { 1358 pointer-events: none; 1359 color: #f1f1f1 !important; 1360 transition: color .18s ease; 1361 } 1362 1363 /* ---- Filled state â outer box fills, glyph stays white ---- */ 1364 .star-rating .star-label.is-filled .star-box { 1365 color: #ffffff; 1366 border-color: transparent; 1367 box-shadow: 0 4px 12px rgba(0, 0, 0, .12); 1368 } 1369 .star-rating .star-label.is-filled .star-icon { color: #ffffff; } 1370 1371 /* Hidden radio */ 1372 .star-rating .star-input { 1373 position: absolute; 1374 opacity: 0; 1375 width: 0; 1376 height: 0; 1377 pointer-events: none; 1378 } 1379 /* Keyboard focus ring on the square */ 1380 .star-rating .star-input:focus + .star-box { 1381 /* outline: 2px solid #28a745; */ 1382 outline-offset: 3px; 1383 } 1384 1385 .rating-text { 1386 font-size: 14px; 1387 color: #8a949e; 1388 font-weight: 500; 1389 min-width: 130px; 1390 } 1391 .rating-text.active { color: #2c3e50; font-weight: 600; } 1392 1393 /* ---- Confirm Checkbox ---- */ 1394 .confirm-section { 1395 background: #fff; 1396 border: 1.5px dashed #cfe8d5; 1397 border-radius: 10px; 1398 padding: 16px 18px; 1399 } 1400 .confirm-label { 1401 display: flex; 1402 align-items: flex-start; 1403 gap: 12px; 1404 cursor: pointer; 1405 margin: 0; 1406 font-weight: 400; 1407 color: #495057; 1408 font-size: 13.5px; 1409 line-height: 1.55; 1410 } 1411 .confirm-label input[type="checkbox"] { 1412 position: absolute; 1413 opacity: 0; 1414 width: 0; height: 0; 1415 } 1416 .confirm-label .checkmark { 1417 flex: 0 0 20px; 1418 width: 20px; 1419 height: 20px; 1420 border: 2px solid #b8c4cc; 1421 border-radius: 5px; 1422 margin-top: 2px; 1423 position: relative; 1424 transition: all .2s; 1425 background: #fff; 1426 } 1427 .confirm-label input[type="checkbox"]:checked ~ .checkmark { 1428 background: #28a745; 1429 border-color: #28a745; 1430 } 1431 .confirm-label input[type="checkbox"]:checked ~ .checkmark::after { 1432 content: ''; 1433 position: absolute; 1434 left: 6px; 1435 top: 2px; 1436 width: 5px; 1437 height: 10px; 1438 border: solid #fff; 1439 border-width: 0 2px 2px 0; 1440 transform: rotate(45deg); 1441 } 1442 .confirm-label input[type="checkbox"]:focus ~ .checkmark { 1443 box-shadow: 0 0 0 4px rgba(40, 167, 69, .18); 1444 } 1445 1446 /* ---- Actions ---- */ 1447 .review-actions { 1448 display: flex; 1449 justify-content: flex-end; 1450 gap: 12px; 1451 padding-top: 10px; 1452 border-top: 1px solid #eef2f4; 1453 margin-top: 8px; 1454 } 1455 .btn-submit { 1456 background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%); 1457 border: none; 1458 border-radius: 10px; 1459 padding: 11px 26px; 1460 font-weight: 600; 1461 letter-spacing: .3px; 1462 box-shadow: 0 6px 16px rgba(40, 167, 69, .28); 1463 transition: transform .15s, box-shadow .15s; 1464 } 1465 .btn-submit:hover { 1466 transform: translateY(-1px); 1467 box-shadow: 0 10px 22px rgba(40, 167, 69, .35); 1468 background: linear-gradient(135deg, #218838 0%, #19692c 100%); 1469 } 1470 .btn-submit i { margin-right: 6px; } 1471 .btn-cancel { 1472 border-radius: 10px; 1473 padding: 11px 22px; 1474 font-weight: 500; 1475 color: #495057; 1476 border: 1.5px solid #dfe6e9; 1477 background: #fff; 1478 } 1479 .btn-cancel:hover { background: #f1f3f5; } 1480 1481 /* ---- Login Prompt ---- */ 1482 .login-prompt { 1483 text-align: center; 1484 padding: 40px 20px; 1485 color: #495057; 1486 } 1487 .login-prompt i { 1488 font-size: 42px; 1489 color: #28a745; 1490 margin-bottom: 16px; 1491 display: block; 1492 } 1493 .login-prompt a { font-weight: 600; color: #28a745; } 1494
1495 /* ---- Responsive ---- */ 1496 @media (max-width: 767px) { 1497 .review-modal-body { padding: 20px 18px 24px; } 1498 .star-rating { gap: 6px; } 1499 .star-rating .star-box { width: 42px; height: 42px; font-size: 18px; } 1500 .review-actions { flex-direction: column-reverse; } 1501 .review-actions .btn { width: 100%; } 1502 .rating-text { min-width: auto; } 1503 } 1504</style> 1505 1506
1507<script> 1508 (function () { 1509 document.addEventListener('DOMContentLoaded', function () { 1510 1511 /* ================================================== 1512 1. Star Rating (square boxes, LTR 1â â 5â ) 1513 + Dynamic placeholder for review textarea 1514 ================================================== */ 1515 const starWrap = document.getElementById('starRating'); 1516 const ratingText = document.getElementById('ratingText'); 1517 const commentField = document.getElementById('comment'); 1518 const ratingWords = { 1: 'Poor', 2: 'Fair', 3: 'Good', 4: 'Very Good', 5: 'Excellent' }; 1519 const ratingColors = { 1520 1: '#d66b6b', 1521 2: '#e59a57', 1522 3: '#e2b84f', 1523 4: '#79b77e', 1524 5: '#28a745' 1525 }; 1526 1527 // Placeholder prompts by rating tier 1528 const commentPlaceholders = { 1529 1: 'What went wrong? Please describe the issue(s) you experienced â poor service, unmet expectations, hidden fees, etc.', 1530 2: 'What disappointed you? Tell us what fell short of your expectations so others know what to watch out for.', 1531 3: 'Share your balanced experience â what worked well and what could be improved?', 1532 4: 'What did you like most? Tell us what made your experience a positive one.', 1533 5: 'What made this excellent? Share the highlights so others can enjoy the same experience.' 1534 }; 1535 const defaultPlaceholder = 'What was your overall experience? What did you like or dislike the most? Would you recommend this to others?'; 1536 1537 function setCommentPlaceholder(rating) { 1538 if (!commentField) return; 1539 // Don't overwrite user-typed content 1540 if (commentField.value && commentField.value.trim().length > 0) return; 1541 1542 if (rating >= 1 && rating <= 5) { 1543 commentField.setAttribute('placeholder', commentPlaceholders[rating]); 1544 } else { 1545 commentField.setAttribute('placeholder', defaultPlaceholder); 1546 } 1547 } 1548 1549 if (starWrap) { 1550 const ratingLabels = Array.from(starWrap.querySelectorAll('.star-label')) 1551 .sort((a, b) => parseInt(a.dataset.value, 10) - parseInt(b.dataset.value, 10)); 1552 1553 function paintStars(value) {
1554 ratingLabels.forEach(function (lbl) { 1555 const v = parseInt(lbl.dataset.value, 10); 1556 const filled = value > 0 && v <= value; 1557 lbl.classList.toggle('is-filled', filled); 1558 const box = lbl.querySelector('.star-box'); 1559 if (box) box.style.backgroundColor = filled ? ratingColors[value] : ''; 1560 }); 1561 } 1562 1563 function updateRatingText(value) { 1564 if (!ratingText) return; 1565 if (value && ratingWords[value]) { 1566 ratingText.textContent = ratingWords[value]; 1567 ratingText.classList.add('active'); 1568 } else { 1569 ratingText.textContent = 'Select a rating'; 1570 ratingText.classList.remove('active'); 1571 } 1572 } 1573 1574 ratingLabels.forEach(function (lbl) { 1575 const input = lbl.querySelector('.star-input'); 1576 const value = parseInt(lbl.dataset.value, 10); 1577 1578 lbl.addEventListener('mouseenter', function () { 1579 paintStars(value); 1580 updateRatingText(value); 1581 setCommentPlaceholder(value); 1582 }); 1583 1584 input.addEventListener('change', function () { 1585 paintStars(value); 1586 updateRatingText(value); 1587 setCommentPlaceholder(value); 1588 }); 1589 1590 input.addEventListener('focus', function () { 1591 // Focus ring handled by CSS (.star-input:focus + .star-box) 1592 }); 1593 }); 1594 1595 starWrap.addEventListener('mouseleave', function () { 1596 const checked = starWrap.querySelector('.star-input:checked'); 1597 const val = checked ? parseInt(checked.value, 10) : 0; 1598 paintStars(val); 1599 updateRatingText(val); 1600 setCommentPlaceholder(val); 1601 }); 1602 1603 // Restore state on load 1604 const checkedStar = starWrap.querySelector('.star-input:checked'); 1605 const initialVal = checkedStar ? parseInt(checkedStar.value, 10) : 0; 1606 paintStars(0); 1607 if (initialVal > 0) { 1608 paintStars(initialVal); 1609 updateRatingText(initialVal); 1610 setCommentPlaceholder(initialVal); 1611 } else { 1612 updateRatingText(0); 1613 setCommentPlaceholder(0); 1614 } 1615 } 1616 1617 /* ================================================== 1618 2. Character Counters 1619 ================================================== */ 1620 document.querySelectorAll('.char-counter').forEach(function (counter) { 1621 const fieldId = counter.dataset.for; 1622 const field = document.getElementById(fieldId); 1623 if (!field) return; 1624 const max = field.getAttribute('maxlength') || 0; 1625 1626 function update() { 1627 counter.textContent = field.value.length + ' / ' + max; 1628 counter.style.color = field.value.length > max * 0.9 ? '#e67e22' : '#8a949e'; 1629 } 1630 field.addEventListener('input', update); 1631 update(); 1632 }); 1633 1634 /* ================================================== 1635 3. Image Upload â Max 50 KB with preview 1636 ================================================== */ 1637 const MAX_IMAGE_BYTES = 50 * 1024; 1638 const imageInput = document.getElementById('image'); 1639 const imageHint = document.getElementById('imageHint'); 1640 const imagePreview = document.getElementById('imagePreview'); 1641 const imagePreviewWrap= document.getElementById('imagePreviewWrap'); 1642 const imageRemove = document.getElementById('imageRemove'); 1643 const fileLabelText = document.querySelector('.file-field .file-label-text'); 1644 let currentObjectURL= null; 1645 1646 function humanSize(bytes) { 1647 if (bytes < 1024) return bytes + ' B'; 1648 if (bytes < 1024 * 1024) return (bytes / 1024).toFixed(1) + ' KB'; 1649 return (bytes / 1024 / 1024).toFixed(2) + ' MB'; 1650 } 1651 1652 function resetImage() { 1653 if (currentObjectURL) { 1654 URL.revokeObjectURL(currentObjectURL); 1655 currentObjectURL = null; 1656 } 1657 imageInput.value = ''; 1658 imagePreview.src = ''; 1659 imagePreviewWrap.style.display = 'none'; 1660 imageHint.textContent = 'JPG or PNG · Max 50 KB'; 1661 imageHint.classList.remove('error'); 1662 if (fileLabelText) fileLabelText.textContent = 'Choose an imageâ¦'; 1663 } 1664 1665 if (imageInput) { 1666 imageInput.addEventListener('change', function () { 1667 const file = imageInput.files && imageInput.files[0]; 1668 if (!file) { resetImage(); return; } 1669 1670 if (file.size > MAX_IMAGE_BYTES) { 1671 imageHint.textContent = 1672 'File too large (' + humanSize(file.size) + '). Maximum allowed: 50 KB.'; 1673 imageHint.classList.add('error'); 1674 imageInput.value = ''; 1675 imagePreviewWrap.style.display = 'none'; 1676 if (fileLabelText) fileLabelText.textContent = 'Choose an imageâ¦'; 1677 return; 1678 } 1679 1680 const allowedTypes = ['image/jpeg', 'image/png', 'image/jpg']; 1681 if (!allowedTypes.includes(file.type)) { 1682 imageHint.textContent = 'Only JPG or PNG images are allowed.'; 1683 imageHint.classList.add('error'); 1684 imageInput.value = ''; 1685 imagePreviewWrap.style.display = 'none'; 1686 return; 1687 } 1688 1689 imageHint.textContent = 'Selected: ' + file.name + ' (' + humanSize(file.size) + ')'; 1690 imageHint.classList.remove('error'); 1691 if (fileLabelText) fileLabelText.textContent = file.name; 1692 1693 if (currentObjectURL) URL.revokeObjectURL(currentObjectURL); 1694 currentObjectURL = URL.createObjectURL(file); 1695 imagePreview.src = currentObjectURL; 1696 imagePreviewWrap.style.display = 'inline-block'; 1697 }); 1698 1699 if (imageRemove) { 1700 imageRemove.addEventListener('click', resetImage); 1701 } 1702 } 1703 1704 /* ================================================== 1705 4. Resolve City and Country from the Visitor IP 1706 ================================================== */ 1707 const geoCity = document.getElementById('geo_city'); 1708 const geoCountry = document.getElementById('geo_country'); 1709 let ipLocationPending = true; 1710 const ipLookupController = new AbortController(); 1711 const ipLookupTimeout = setTimeout(function () { 1712 ipLookupController.abort(); 1713 }, 4000); 1714 const ipLocationLookup = fetch('https://ipapi.co/json/', { 1715 headers: { 'Accept': 'application/json' }, 1716 signal: ipLookupController.signal 1717 }) 1718 .then(function (response) { 1719 if (!response.ok) throw new Error('IP location lookup failed'); 1720 return response.json(); 1721 }) 1722 .then(function (data) { 1723 if (data.city && geoCity) geoCity.value = data.city; 1724 if (data.country_name && geoCountry) geoCountry.value = data.country_name; 1725 }) 1726 .catch(function () { /* Keep existing values silently if lookup fails. */ }) 1727 .finally(function () { 1728 clearTimeout(ipLookupTimeout); 1729 ipLocationPending = false; 1730 }); 1731 1732 /* ================================================== 1733 5. Form Validation 1734 ================================================== */ 1735 const form = document.getElementById('reviewForm'); 1736 if (form) { 1737 form.addEventListener('submit', function (e) { 1738 if (ipLocationPending) { 1739 e.preventDefault(); 1740 ipLocationLookup.finally(function () { 1741 form.requestSubmit(e.submitter || undefined); 1742 }); 1743 return; 1744 } 1745 1746 let valid = true; 1747 let firstInvalid = null; 1748 1749 form.querySelectorAll('.mustEntry').forEach(function (el) { 1750 if (!el.value.trim()) { 1751 el.classList.add('is-invalid'); 1752 valid = false; 1753 if (!firstInvalid) firstInvalid = el; 1754 } else { 1755 el.classList.remove('is-invalid'); 1756 } 1757 }); 1758 1759 const ratingChecked = form.querySelector('input[name="rating"]:checked'); 1760 if (!ratingChecked) { 1761 valid = false; 1762 if (starWrap) starWrap.scrollIntoView({ behavior: 'smooth', block: 'center' }); 1763 } 1764 1765 const confirmCheck = form.querySelector('input[name="confirm_genuine"]'); 1766 if (confirmCheck && !confirmCheck.checked) { 1767 valid = false; 1768 confirmCheck.parentElement.scrollIntoView({ behavior: 'smooth', block: 'center' }); 1769 } 1770 1771 if (imageInput && imageInput.files && imageInput.files[0]) { 1772 if (imageInput.files[0].size > MAX_IMAGE_BYTES) { 1773 valid = false; 1774 imageHint.textContent = 'Image is too large. Maximum allowed: 50 KB.'; 1775 imageHint.classList.add('error'); 1776 imageInput.scrollIntoView({ behavior: 'smooth', block: 'center' }); 1777 } 1778 } 1779 1780 if (!valid) { 1781 e.preventDefault(); 1782 if (firstInvalid) { 1783 firstInvalid.focus(); 1784 firstInvalid.scrollIntoView({ behavior: 'smooth', block: 'center' }); 1785 } 1786 } 1787 }); 1788 1789 form.querySelectorAll('.mustEntry').forEach(function (el) { 1790 el.addEventListener('input', function () { 1791 if (el.value.trim()) el.classList.remove('is-invalid'); 1792 }); 1793 }); 1794 } 1795 }); 1796 })(); 1797</script>
1797 1798 1799 1800 <!-- <div class="modal-footer">--> 1801 1802 <!-- Modal --> 1803 <div class="modal fade" id="question_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> 1804 <div class="modal-dialog" role="document"> 1805 <div class="modal-content"> 1806 <div class="modal-header"> 1807 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span 1808 aria-hidden="true">×</span></button> 1809 <h4 class="modal-title" id="myModalLabel">Write Question</h4> 1810 </div> 1811 <div class="modal-body"> 1812 <div class="panel panel-success"> 1813 <div class="panel-heading"><i class="fa fa-pencil-square-o"></i> Write Question</div> 1814 <div class="panel-body"> 1815 <div class="msg"></div> 1816 <form class="form" method="post" action="https://trueen.com/user/question/store"> 1817 <input type="hidden" name="_token" value="dSBkqe3MvT6QPUflycWK4RlSSp4LZ93nutTharut"> 1818 <input type="hidden" name="listing_id" value="746704"> 1819 <div class="text-center"> 1820 <p class="lead">Please <a href="https://trueen.com/login">Login</a> to Ask a question.</p> 1821 </div> 1822 1823 </form> 1824 </div> 1825 </div> 1826 </div> 1827 1828 </div> 1829 </div> 1830 </div> 1831 1832 1833 1834 <div class="modal fade" id="answer_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> 1835 <div class="modal-dialog" role="document"> 1836 <div class="modal-content"> 1837 <div class="modal-header"> 1838 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span 1839 aria-hidden="true">×</span></button> 1840 <h4 class="modal-title" id="myModalLabel">Add Answer</h4> 1841 </div> 1842 <div class="modal-body"> 1843 <div class="panel panel-success"> 1844 <div class="panel-heading"><i class="fa fa-pencil-square-o"></i> Add Answer</div> 1845 <div class="panel-body"> 1846 <div class="msg"></div> 1847 <form class="form" method="post" action="https://trueen.com/user/answer/update"> 1848 <input type="hidden" name="_token" value="dSBkqe3MvT6QPUflycWK4RlSSp4LZ93nutTharut"> 1849 <input type="hidden" name="listing_id" value="746704"> 1850 <input type="hidden" name="id" value=""> 1851 <div class="text-center"> 1852 <p class="lead">Please <a href="https://trueen.com/login">Login</a> to 1853 add question.</p> 1854 </div> 1855 1856 </form> 1857 </div> 1858 </div> 1859 </div> 1860 1861 </div> 1862 </div> 1863 </div> 1864 1865 <!-- clam model--> 1866<div class="modal fade" id="claim_modal_746704" tabindex="-1" role="dialog" aria-labelledby="claimModalLabel"> 1867 <div class="modal-dialog modal-lg" role="document"> 1868 <div class="modal-content"> 1869 <div class="modal-header"> 1870 <div class="header-content"> 1871 <i class="fas fa-building"></i> 1872 <h2 class="modal-title">Claim Business Listing</h2> 1873 </div> 1874 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1875 <span aria-hidden="true">×</span> 1876 </button> 1877 </div> 1878 <div class="modal-body"> 1879 <!-- Business Header --> 1880 <div class="business-x-card"> 1881 <div class="business-icon"> 1882 <i class="fas fa-store"></i> 1883 </div> 1884 <div class="business-info"> 1885 <h3 class="business-name">VAPEBAZAR Vape Online Shop</h3> 1886 <div class="business-website"> 1887 <i class="fas fa-globe"></i>
1888 <span>https://www.vapebazar.de</span> 1889 </div> 1890 <div class="business-website"> 1891 <i class="fas fa-briefcase"></i> 1892 <span>https://trueen.com/business/premium/vapebazar-vape-online-shop/746704</span> 1893 </div> 1894 </div> 1895 </div> 1896 1897 <div class="state-message login-required"> 1898 <div class="state-icon"> 1899 <i class="fas fa-sign-in-alt"></i> 1900 </div> 1901 <h2>Login Required</h2> 1902 <p>Please log in to claim this business listing</p> 1903 <a href="https://trueen.com/login" class="btn btn-primary btn-large"> 1904 <i class="fas fa-sign-in-alt"></i> 1905 Login to Continue 1906 </a> 1907 </div> 1908 </div> 1909 </div> 1910 </div> 1911</div> 1912 1913<link rel="stylesheet" href="https://trueen.com/frontend/css/claim.css"> 1914
1915<script> 1916document.addEventListener('DOMContentLoaded', function() { 1917 // Initialize all claim forms 1918 document.querySelectorAll('[id^="claimForm_"]').forEach(form => { 1919 const listingId = form.id.split('_')[1]; 1920 initializeClaimForm(listingId); 1921 }); 1922 1923 function initializeClaimForm(listingId) { 1924 const emailInput = document.getElementById(`email_${listingId}`); 1925 const websiteInput = document.getElementById(`website_${listingId}`); 1926 const claimButton = document.getElementById(`claimButton_${listingId}`); 1927 const emailValid = document.getElementById(`emailValid_${listingId}`); 1928 const emailWarning = document.getElementById(`emailWarning_${listingId}`); 1929 const form = document.getElementById(`claimForm_${listingId}`); 1930 1931 // Extract domain from website 1932 function extractDomain(website) { 1933 try { 1934 const url = new URL(website); 1935 return url.hostname.replace('www.', ''); 1936 } catch (e) { 1937 return website.replace(/^(https?:\/\/)?(www\.)?/, '').split('/')[0]; 1938 } 1939 } 1940 1941 // Validate email domain 1942 function validateEmailDomain(email, website) { 1943 const domain = extractDomain(website); 1944 const emailDomain = email.split('@')[1]; 1945 return emailDomain === domain; 1946 } 1947 1948 // Update step progress visualization 1949 function updateStepProgress(isValid) { 1950 const stepCards = document.querySelectorAll(`#claimForm_${listingId} .step-card`); 1951 const statusItems = document.querySelectorAll(`#claimForm_${listingId} .status-item`); 1952 1953 // Reset all steps 1954 stepCards.forEach(card => { 1955 card.classList.remove('active', 'completed'); 1956 }); 1957 statusItems.forEach(item => { 1958 item.classList.remove('active'); 1959 }); 1960 1961 if (isValid) { 1962 // All steps are active when email is valid 1963 stepCards.forEach(card => { 1964 card.classList.add('completed'); 1965 }); 1966 statusItems.forEach(item => { 1967 item.classList.add('active'); 1968 }); 1969 1970 // Highlight current step (form submission) 1971 stepCards[1].classList.add('active'); 1972 statusItems[1].classList.add('active'); 1973 } else { 1974 // Only first step is active when email is invalid 1975 stepCards[0].classList.add('active'); 1976 statusItems[0].classList.add('active'); 1977 } 1978 } 1979 1980 // Update UI based on email validation 1981 function updateEmailValidationUI(isValid) { 1982 // Hide all validation messages first 1983 emailValid.style.display = 'none'; 1984 emailWarning.style.display = 'none'; 1985 1986 if (isValid) { 1987 // Email matches domain - show success message 1988 emailValid.style.display = 'flex'; 1989 claimButton.disabled = false; 1990 updateStepProgress(true); 1991 } else { 1992 // Email doesn't match domain 1993 emailWarning.style.display = 'flex'; 1994 claimButton.disabled = true; 1995 updateStepProgress(false); 1996 } 1997 } 1998 1999 // Initial validation 2000 if (emailInput && websiteInput) { 2001 const isValid = validateEmailDomain(emailInput.value, websiteInput.value); 2002 updateEmailValidationUI(isValid); 2003 } 2004 2005 // Validate on email input change 2006 if (emailInput) { 2007 emailInput.addEventListener('input', function() { 2008 const email = this.value; 2009 const website = websiteInput.value; 2010 2011 if (email && website) { 2012 const isValid = validateEmailDomain(email, website); 2013 updateEmailValidationUI(isValid); 2014 } 2015 }); 2016 } 2017 2018 // Form submission 2019 if (form) { 2020 form.addEventListener('submit', function(e) { 2021 const email = emailInput.value; 2022 const website = websiteInput.value; 2023 const isValid = validateEmailDomain(email, website); 2024 // alert(email); 2025 if (!isValid) { 2026 e.preventDefault(); 2027 alert('Please use an email with the domain ' + extractDomain(website) + ' or follow the manual verification process.'); 2028 return; 2029 } 2030 2031 // Form will submit normally if validation passes 2032 }); 2033 } 2034 } 2035}); 2036</script>
2036 2037 <div class="recent_business"> 2038 <div class="container"> 2039 <div class="row"> 2040 <div class="col-md-12"> 2041 <div class="business"> 2042 <h2 style="text-align: center;">Recent Relevant Businesses</h2> <br/> 2043 <p style="text-align: center;">Explore recent business listings with eCommerce category. </p> 2044 </div> 2045 </div> 2046 2047 </div> 2048 2049 2050<div class="row equal-height"> 2051 2052 <div class="col-md-4"> 2053 <div class="card-container"> 2054 <div class="card list"> 2055 2056 <p class="listing-title"> 2057 <a target="_blank" href="https://trueen.com/business/listing/potenciaabc/796428"> 2058 PotenciaABC 2059 </a> 2060 </p> 2061 2062 <p class="listing-info"> 2063 <span>PotenciaABC - Intimate Wellness Products Online</span> 2064 Hitel utca 1 2065 <br><small>2 days ago</small> 2066 </p> 2067 </div> 2068 </div> 2069 </div> 2070 2071 <div class="col-md-4"> 2072 <div class="card-container"> 2073 <div class="card list"> 2074 2075 <p class="listing-title"> 2076 <a target="_blank" href="https://trueen.com/business/listing/akcio-kozpont/796381"> 2077 Akcio Kozpont 2078 </a> 2079 </p> 2080 2081 <p class="listing-info"> 2082 <span>The central hub for the latest online promotional flyers and deals</span> 2083 Kertvárosi út 59. 2084 <br><small>5 days ago</small> 2085 </p> 2086 </div> 2087 </div> 2088 </div> 2089 2090 <div class="col-md-4"> 2091 <div class="card-container"> 2092 <div class="card list"> 2093 2094 <p class="listing-title"> 2095 <a target="_blank" href="https://trueen.com/business/listing/rameen-official/796373"> 2096 Rameen Official 2097 </a> 2098 </p> 2099 2100 <p class="listing-info"> 2101 <span>Rameen Official is an clothing brand that blends traditional Eastern style with modern trend</span> 2102 Business Enclave MH-508, Ichra, Ferozpur Road Lahore 2103 <br><small>5 days ago</small> 2104 </p> 2105 </div> 2106 </div> 2107 </div> 2108 </div> 2109 <div class="row"> 2110 <div class="col-md-4 col-lg-4 col-md-offset-4 text-center"> 2111 <a href="https://trueen.com/business-listing/category/ecommerce/35" class="btn btn-outline-secondary btn-business">More Recent Businesses</a> 2112 <br><br><br> 2113 </div> 2114 </div> 2115 </div> 2116 </div> 2117 2118 2119 2120 2121 <div class="load"> 2122 <div class="updated"></div> 2123 <img class="loading" src="https://trueen.com/images/loader.gif" alt=""> 2124</div> 2125 2126<!--Footer Area start --> 2127<div class="footer"> 2128 <div class="container"> 2129 <div class="row"> 2130 <div class="footer-content"> 2131 <div class="col-lg-3 col-md-3 col-sm-3"> 2132 <p class="footer-header">About Us</p> 2133 <p>TRUEen is a growing business community providing online search facilities of companies around the world. We help businesses showcase their products and services to generate authentic leads in the digital world. Unlike conventional directories, TRUEen will list sites of all sizes, be it personal, NGO or commercial.</p> 2134 <p>Our focus is to provide services to both website owners and visitors looking for business leads who are interested in the product or service they offer.</p> 2135 </div> 2136 2137 <div class="col-lg-4 col-md-4 col-sm-4"> 2138 <p class="footer-header">Quick Links</p> 2139 <ul> 2140 <li><a href="https://trueen.com/list-your-business/price">Add Your Business</a></li> 2141 <li><a href="https://trueen.com/about-us">About Us</a></li> 2142 <li><a href="https://trueen.com/blog">Blog</a></li> 2143 <li><a href="https://trueen.com/terms-conditions">Terms & Conditions</a></li> 2144 <li><a href="https://trueen.com/privacy-policy">Privacy Policy</a></li> 2145 <li><a href="https://trueen.com/local-seo-services">Local Seo Services</a></li> 2146 <li><a href="https://trueen.com/business-list">Business List</a></li> 2147 <li><a href="https://trueen.com/contact-us">Contact Us</a></li> 2148 <li><a href="https://trueen.com/local-citation-building">Local Citation Building</a></li> 2149 <li><a href="https://trueen.com/filter-businesses">Search Leads</a></li> 2150 <li><a href="https://trueen.com/claim/instructions">How to Claim Your Listing?</a></li> 2151 </ul> 2152 </div> 2153 2154 <div class="col-lg-3 col-md-3 col-sm-3"> 2155 <p class="footer-header">Where to find us</p> 2156 <address> 2157 US Address: <br>1164 Cromwell Avenue <br>Bronx, NY 10452, USA. 2158 </address> 2159 <address> 2160 Germany Address: <br> 2161 Saarstr 34, 47058 DUISBURG<br> 2162 Düsseldorf , Germany <br><br> 2163 <i class="fab fa-whatsapp" style="color: #25D366;"></i><a href="https://wa.me/8801756230219" class="footer-link" target="_blank" title="WhatsApp"> +880 1756-230219</a><br><br> 2164 <i class="fa fa-envelope" style="color: #f98b8b;"></i> <a href="mailto:[email protected]" class="footer-link">[email protected]</a><br> 2165 <i class="fa fa-envelope" style="color: #f98b8b;"></i> <a href="mailto:[email protected]" class="footer-link">[email protected]</a> 2166 </address> 2167 </div> 2168 2169 <div class="col-lg-2 col-md-2 col-sm-2"> 2170 <p class="footer-header">Find us </p> 2171 <ul> 2172 <li><a href="https://www.facebook.com/TrueEnCom" rel="nofollow" target="_blank">Facebook</a></li> 2173 <li><a href="https://twitter.com/TrueEn_com" rel="nofollow" target="_blank">Twitter</a></li> 2174 <li><a href="https://www.linkedin.com/company/trueen-com" rel="nofollow" target="_blank">Linkedin</a></li> 2175 </ul> 2176 </div> 2177 </div> 2178 2179 2180 <div class="clearfix border-gray"></div> 2181 2182 <div class="text-center"><br> 2183 <p>
2183©2015 - 2026 TRUEen.com, All Rights Reserved</p> 2184 </div> 2185 2186 2187 </div> 2188 </div> 2189</div> 2190<!--Footer Area end --> 2191
2192<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
vendor: 2 bytes, line 2192
2192
2193<script src="https://trueen.com/frontend/js/bootstrap.min.js"></script>
vendor: 2 bytes, line 2193
2193
2194<script>window.jQuery || document.write('
2194<script src="js/vendor/jquery-1.11.3.min.js"><\/script>')</script>
vendor: 2 bytes, line 2194
2194
2195<script src="https://trueen.com/frontend/js/plugins.js"></script>
vendor: 2 bytes, line 2195
2195
2196<script src="https://trueen.com/frontend/js/main.js"></script>
2196 2197
2198<script> 2199 </script>
2199 2200 2201<!-- Your other styles and JavaScript remain unchanged --> 2202
2203<script> 2204$(function() { 2205 $('#send_email').click(function(e){ 2206 e.preventDefault(); 2207 2208 var requiredField = $(".mustEntryFooter"); 2209 var emptyField = []; 2210 2211 $.each(requiredField, function() { 2212 var self = $(this); 2213 if(self.val() == "") { 2214 emptyField.push(1); 2215 self.addClass('fill'); 2216 } else { 2217 self.removeClass('fill'); 2218 } 2219 }); 2220 2221 if(emptyField.length > 0) return false; 2222 2223 var recaptcha_response_field = $("input[name=recaptcha_response_field]").val(); 2224 if(recaptcha_response_field == "") { 2225 $(".msg").html('<div class="alert alert-danger alert-dismissible fade in" role="alert"><button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">Ã</span></button><strong>Error!</strong> Complete reCAPTCHA. </div>'); 2226 return false; 2227 } 2228 2229 var formdata = $(this).parents("form").serialize(); 2230 formdata = "action=send_email&" + formdata; 2231 2232 var url = "https://trueen.com/ajaxpost"; 2233 2234 $(".load").fadeIn(); 2235 2236 setTimeout(function(){ 2237 $.ajax({
2238 url: url, 2239 data : formdata, 2240 type : "POST", 2241 success: function(result){ 2242 $(".updated").html(result); 2243 $(".updated").fadeIn(300, function() { 2244 setTimeout(function(){ 2245 $(".load").fadeOut(300, function() { 2246 $("#review_modal").modal("hide"); 2247 location.reload(); 2248 }); 2249 }, 20000000); 2250 }); 2251 } 2252 }); 2253 }, 2000); 2254 }); 2255}); 2256</script>
2256 2257 2258<style> 2259 .footer ul li a { 2260 padding: 2px 0px !important; 2261 } 2262 .footer-link { 2263 color: #ffffff !important; 2264 } 2265</style> 2266 2267 2268 2269 2270 2271
2272<script> 2273document.addEventListener('DOMContentLoaded', function() { 2274 const tabs = document.querySelectorAll('.plan-tab'); 2275 const contents = document.querySelectorAll('.plan-content'); 2276 2277 tabs.forEach(tab => { 2278 tab.addEventListener('click', () => { 2279 const tabId = tab.getAttribute('data-tab'); 2280 2281 // Remove active class from all tabs and contents 2282 tabs.forEach(t => t.classList.remove('active')); 2283 contents.forEach(c => c.classList.remove('active')); 2284 2285 // Add active class to clicked tab and corresponding content 2286 tab.classList.add('active'); 2287 document.getElementById(`${tabId}-tab`).classList.add('active'); 2288 2289 // Add click animation 2290 tab.style.transform = 'scale(0.95)'; 2291 setTimeout(() => { 2292 tab.style.transform = ''; 2293 }, 150); 2294 }); 2295 }); 2296 2297 // Add keyboard navigation 2298 document.addEventListener('keydown', (e) => { 2299 if (e.key === 'ArrowRight' || e.key === 'ArrowLeft') { 2300 const activeTab = document.querySelector('.plan-tab.active'); 2301 const currentIndex = Array.from(tabs).indexOf(activeTab); 2302 let nextIndex; 2303 2304 if (e.key === 'ArrowRight') { 2305 nextIndex = (currentIndex + 1) % tabs.length; 2306 } else { 2307 nextIndex = (currentIndex - 1 + tabs.length) % tabs.length; 2308 } 2309 2310 tabs[nextIndex].click(); 2311 } 2312 }); 2313}); 2314</script>
2314 2315 2316
2316<script type="text/javascript"> 2317 2318var mymap = L.map('mapid').setView([, ], 14); 2319var marker = L.marker([, ]).addTo(mymap); 2320marker.bindPopup("<b>VAPEBAZAR Vape Online Shop</b>.").openPopup(); 2321//circle.bindPopup("I am a circle."); 2322//polygon.bindPopup("I am a polygon."); 2323 2324L.tileLayer('https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token={accessToken}', { 2325 attribution: 'Map data © <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://trueen.com/">Trueen</a>', 2326 maxZoom: 19, 2327 id: 'mapbox/streets-v11', 2328 tileSize: 512, 2329 zoomOffset: -1, 2330 accessToken: 'pk.eyJ1IjoibmFmaXowMTYiLCJhIjoiY2tsdDY1bGw1MW1kcjJubndvZzRtdzR2NiJ9.tHvXdmRhNbIWBAx3sbf6qQ' 2331}).addTo(mymap); 2332 2333 2334//var marker = L.marker([, ]).addTo(mymap); 2335 2336</script>
2336 2337<style type="text/css"> 2338 #mapid { height: 275px; } 2339</style> 2340
2341<script type="text/javascript"> 2342 2343 function addToWishList(elem, listing_id) { 2344 var isLoggedIn = ''; 2345 //alert(listing_id); 2346 //console.log(isLoggedIn); 2347 if (isLoggedIn === '1') { 2348 $.ajax({ 2349 type : "POST", 2350 url : "https://trueen.com/user/add_to_wishlist", 2351 //alert('hi'); 2352 data : { "_token": "dSBkqe3MvT6QPUflycWK4RlSSp4LZ93nutTharut",listing_id : listing_id}, 2353 success : function(response) { 2354 if (response == 'added') { 2355 $(elem).html('<i class="fa fa-heart" style="color:red"></i>'); 2356 toastr.success('Added to wishlist'); 2357 }else { 2358 toastr.success('Already added!'); 2359 } 2360 } 2361 }); 2362 }else { 2363 toastr.error('Please Login'); 2364 //loginAlert(); 2365 } 2366 } 2367 2368</script>
2368 2369 2370
2370<script src="https://trueen.com/frontend/js/jquery.rating.js"></script>
2370 2371
2371<script> 2372 $(function () { 2373 $('button[name=review-button]').click(function (e) { 2374 2375 e.preventDefault(); 2376 2377 var requiredField = $(".mustEntry"); 2378 2379 var emptyField = []; 2380 $.each(requiredField, function () { 2381 var self = $(this); 2382 if (self.val() == "") { 2383 emptyField.push(1); 2384 self.addClass('fill'); 2385 } else { 2386 self.removeClass('fill'); 2387 } 2388 }); 2389 if (emptyField.length > 0) { 2390 $(".msg").html('<div class="alert alert-warning alert-dismissible fade in" role="alert"><button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">Ã</span></button><strong>Warning!</strong> You must fill required fileds. </div>'); 2391 return false; 2392 } 2393 2394 var formdata = $(this).parents("form").serialize(); 2395 formdata = "action=submit_review&" + formdata; 2396 var url = "/ajaxpost"; 2397 2398 2399 $(".load").fadeIn(); 2400 setTimeout(function () { 2401 $.ajax({
2402 url: url, 2403 data: formdata, 2404 type: "POST", 2405 success: function (result) { 2406 $(".updated").html(result); 2407 $(".updated").fadeIn(300, function () { 2408 setTimeout(function () { 2409 $(".load").fadeOut(300, function () { 2410 $("#review_modal").modal("hide"); 2411 location.reload(); 2412 }); 2413 }, 2000); 2414 2415 }); 2416 } 2417 }); 2418 }, 2000); 2419 2420 2421 }); 2422 }); 2423 </script>
2423 2424
2424<script type="application/ld+json"> 2425{ 2426 "@context": "https://schema.org", 2427 "@type": "LocalBusiness", 2428 "name": "VAPEBAZAR Vape Online Shop", 2429 "url": "https://trueen.com/business/premium/vapebazar-vape-online-shop/746704", 2430 "description": "VAPEBAZAR - Dein Vape, Elfbar Pods - Onlineshop", 2431 "logo": "https://trueen.com/uploads/1778748783_vapebazar-logo500.png", 2432 "image": "https://trueen.com/uploads/1778748783_vapebazar-logo500.png", 2433 "telephone": "+4951121534062", 2434 "address": { 2435 "@type": "PostalAddress", 2436 "addressLocality": "Marie-Curie-Str. 16", 2437 "addressCountry": "Germany" 2438 } 2439} 2440</script>
2440 2441 2442 2443
2443<script type="application/ld+json"> 2444 { 2445 "@context": "https://schema.org", 2446 "@type": "FAQPage", 2447 "mainEntity": [{ 2448 "@type": "Question", 2449 "name": "Who is VAPEBAZAR Vape Online Shop?", 2450 "acceptedAnswer": { 2451 "@type": "Answer", 2452 "text": "Elfbar Pods bei Vapebazar kaufen grosse Auswahl fr dein Pod-System\n\nDu suchst nach hochwertigen Elfbar Pods fuer intensiven Geschmack und ein unkompliziertes Dampferlebnis? Bei Vapebazar findest du eine attraktive Auswahl an beliebten Elfbar Pod-Sorten ideal fuer alle, die Wert auf einfache Handhabung, zuverlssige Qualitt und starken Geschmack legen. Ob fruchtig, frisch oder klassisch: Entdecke jetzt passende Pods fuer dein Gert und geniee komfortables Dampfen im Alltag.\n\nJetzt Elfbar Pods bei Vapebazar entdecken: Elfbar Pods kaufen" 2453 } 2454 },{ 2455 "@type": "Question", 2456 "name": "Where are VAPEBAZAR Vape Online Shop headquarters located?", 2457 "acceptedAnswer": { 2458 "@type": "Answer", 2459 "text": "The headquarters of VAPEBAZAR Vape Online Shop is located at Marie-Curie-Str. 16" 2460 } 2461 }, { 2462 "@type": "Question", 2463 "name": "What is VAPEBAZAR Vape Online Shop's contact phone number?", 2464 "acceptedAnswer": { 2465 "@type": "Answer", 2466 "text": "The contact phone number of VAPEBAZAR Vape Online Shop is +4951121534062" 2467 } 2468 },{ 2469 "@type": "Question", 2470 "name": "What is VAPEBAZAR Vape Online Shop's official website?", 2471 "acceptedAnswer": { 2472 "@type": "Answer", 2473 "text": "The official website of VAPEBAZAR Vape Online Shop is https://www.vapebazar.de" 2474 } 2475 }, { 2476 "@type": "Question", 2477 "name": "Who is the Owner/CEO/Representative of VAPEBAZAR Vape Online Shop? ", 2478 "acceptedAnswer": { 2479 "@type": "Answer", 2480 "text": "The representative of VAPEBAZAR Vape Online Shop is Mehdi" 2481 } 2482 } 2483 ] 2484 } 2485 </script>
2485 2486 2487 2488 2489
2489<script> 2490 $(document).ready(function(){ 2491 $(".page-link").click(function(){ 2492 var pageURL = $(location).attr("href"); 2493 alert(pageURL); 2494 }); 2495 }); 2496</script>
2496 2497
2498<script> 2499document.addEventListener('DOMContentLoaded', function() { 2500 // Copy coupon code functionality 2501 document.querySelectorAll('.copy-btn').forEach(btn => { 2502 btn.addEventListener('click', function() { 2503 const code = this.getAttribute('data-code'); 2504 navigator.clipboard.writeText(code).then(() => { 2505 const originalHTML = this.innerHTML; 2506 this.innerHTML = '<i class="fas fa-check fa-xl"></i>'; 2507 this.style.color = '#00aa00'; 2508 setTimeout(() => { 2509 this.innerHTML = originalHTML; 2510 this.style.color = ''; 2511 }, 2000); 2512 }).catch(err => { 2513 console.error('Failed to copy: ', err); 2514 }); 2515 }); 2516 }); 2517}); 2518</script>
2518 2519
2520<script> 2521document.addEventListener("DOMContentLoaded", () => { 2522 document.querySelectorAll(".message-link").forEach(link => { 2523 const href = link.getAttribute("href"); 2524 2525 // Only modify if it's not a "#" or empty 2526 if (href && href !== "#" && !href.startsWith("javascript")) { 2527 link.dataset.href = href; // store actual URL 2528 link.removeAttribute("href"); // remove real href to hide preview 2529 2530 link.style.cursor = "pointer"; // keep link cursor style 2531 2532 link.addEventListener("click", e => { 2533 window.location.href = link.dataset.href; // navigate on click 2534 }); 2535 } 2536 }); 2537}); 2538</script>
2538 2539 2540
2541<script> 2542document.addEventListener('DOMContentLoaded', function () { 2543 const trigger = document.getElementById('unclaimed-trigger'); 2544 if (!trigger) return; 2545 2546 // Create tooltip once 2547 let tooltip = document.querySelector('.unclaimed-tooltip'); 2548 if (!tooltip) { 2549 tooltip = document.createElement('div'); 2550 tooltip.className = 'unclaimed-tooltip'; 2551 tooltip.id = 'unclaimed-tooltip'; 2552 tooltip.innerHTML = ` 2553 <p><strong>Are you the business owner?</strong></p> 2554 <p> 2555 <a href="#" data-toggle="modal" data-target="#claim_modal_746704" class="claim-link">Claim This Business</a> for free 2556 to connect with audience, respond to reviews, message customers, and build your reputation. 2557 </p> 2558 <a href="https://trueen.com/claim/instructions" target="_blank" class="link">Learn more</a><span class="benefits">about how to claim your business.</span>`; 2559 document.body.appendChild(tooltip); 2560 } 2561 2562 let hideTimer = null; 2563 2564 function positionTooltip() { 2565 const rect = trigger.getBoundingClientRect(); 2566 const GAP = 12; 2567 2568 if (!document.body.contains(tooltip)) { 2569 document.body.appendChild(tooltip); 2570 } 2571 2572 tooltip.classList.add('measuring'); 2573 const tooltipHeight = tooltip.offsetHeight; 2574 const tooltipWidth = tooltip.offsetWidth; 2575 tooltip.classList.remove('measuring'); 2576 2577 const spaceAboveViewport = rect.top; 2578 const spaceBelowViewport = window.innerHeight - rect.bottom; 2579 2580 let position = (spaceAboveViewport >= tooltipHeight + GAP) ? 'above' : 'below'; 2581 2582 tooltip.className = 'unclaimed-tooltip visible position-' + position; 2583 2584 const pageScrollY = window.scrollY || window.pageYOffset; 2585 const pageScrollX = window.scrollX || window.pageXOffset; 2586 2587 const triggerCenterX = rect.left + rect.width / 2; 2588 let left = Math.round(triggerCenterX - tooltipWidth / 2 + pageScrollX); 2589 2590 const minLeft = 16 + pageScrollX; 2591 const maxLeft = (document.documentElement.clientWidth - tooltipWidth - 16) + pageScrollX; 2592 left = Math.max(minLeft, Math.min(left, maxLeft)); 2593 2594 let top; 2595 if (position === 'above') { 2596 top = Math.round(rect.top + pageScrollY - tooltipHeight - GAP); 2597 top = Math.max(8 + pageScrollY, top); 2598 } else { 2599 top = Math.round(rect.bottom + pageScrollY + GAP); 2600 const maxTop = (document.documentElement.clientHeight - 8 - tooltipHeight) + pageScrollY; 2601 top = Math.min(top, maxTop); 2602 } 2603 2604 tooltip.style.left = left + 'px'; 2605 tooltip.style.top = top + 'px'; 2606 2607 const arrowCenter = (triggerCenterX + pageScrollX) - left; 2608 const safeArrowX = Math.max(12, Math.min(arrowCenter, tooltipWidth - 12)); 2609 tooltip.style.setProperty('--arrow-x', safeArrowX + 'px'); 2610 } 2611 2612 function showTooltip() { 2613 clearTimeout(hideTimer); 2614 positionTooltip(); 2615 tooltip.classList.add('visible'); 2616 } 2617 2618 function hideTooltipSoon() { 2619 clearTimeout(hideTimer); 2620 hideTimer = setTimeout(() => { 2621 tooltip.classList.remove('visible'); 2622 }, 180); 2623 } 2624 2625 trigger.addEventListener('mouseenter', showTooltip); 2626 trigger.addEventListener('mouseleave', hideTooltipSoon); 2627 trigger.addEventListener('focus', showTooltip); 2628 trigger.addEventListener('blur', hideTooltipSoon); 2629 2630 trigger.addEventListener('touchstart', function (ev) { 2631 ev.preventDefault(); 2632 if (tooltip.classList.contains('visible')) { 2633 tooltip.classList.remove('visible'); 2634 } else { 2635 positionTooltip(); 2636 tooltip.classList.add('visible'); 2637 } 2638 }, { passive: false }); 2639 2640 tooltip.addEventListener('mouseenter', () => clearTimeout(hideTimer)); 2641 tooltip.addEventListener('mouseleave', hideTooltipSoon); 2642 2643 let scrollTimer = null; 2644 function onScrollResize() { 2645 if (tooltip.classList.contains('visible')) { 2646 if (scrollTimer) clearTimeout(scrollTimer); 2647 scrollTimer = setTimeout(positionTooltip, 50); 2648 } 2649 } 2650 window.addEventListener('scroll', onScrollResize, { passive: true }); 2651 window.addEventListener('resize', onScrollResize); 2652 2653 document.addEventListener('keydown', function (e) { 2654 if (e.key === 'Escape') { 2655 tooltip.classList.remove('visible'); 2656 trigger.blur(); 2657 } 2658 }); 2659}); 2660 2661</script>
2661 2662<style> 2663 .btn-save:hover{ 2664 background:#c5c6c8; 2665 } 2666 .top_logo { 2667 height:160px !important; 2668 width:auto !important; 2669 } 2670 .btn-rec { 2671 border: #929499 solid 0.1px; 2672 border-radius: 6px; 2673 padding: 8px; 2674 margin: 5px; 2675 // background: #c5c6c8; 2676 } 2677 .btn-rec:hover { 2678 background: #a3a7af; 2679 } 2680</style> 2681<link rel="stylesheet" href="https://trueen.com/frontend/css/singlelist.css"> 2682 2683 2684 2685 2686 2687 2688 2689
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.