作者 邓超

bbbbb

@@ -121,490 +121,458 @@ class TemplateController extends BaseController @@ -121,490 +121,458 @@ class TemplateController extends BaseController
121 $source_id = $this->param['source_id']??0; 121 $source_id = $this->param['source_id']??0;
122 122
123 if($source=='index'){ 123 if($source=='index'){
124 - $def = '<!DOCTYPE html>  
125 -<html lang="en">  
126 -  
127 -<head>  
128 - <meta charset="utf-8">  
129 - <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">  
130 - <meta name="description" content="">  
131 - <meta name="author" content="">  
132 - <link rel="icon" href="../../favicon.ico">  
133 -  
134 - <title>Example Template for Bootstrap</title>  
135 -  
136 - <link href="../../css/editor.css" rel="stylesheet">  
137 -  
138 - <script src="../../js/jquery.min.js"></script>  
139 - <script src="../../js/popper.min.js"></script>  
140 - <script src="../../js/bootstrap.min.js"></script>  
141 -  
142 - <link href="example.css" rel="stylesheet">  
143 -  
144 - <script src="../../libs/aos/aos.js"></script>  
145 - <link href="../../libs/aos/aos.css" rel="stylesheet">  
146 -  
147 - <script src="../../libs/swiper/swiper.js"></script>  
148 - <link href="../../libs/swiper/swiper.css" rel="stylesheet">  
149 -</head>  
150 -  
151 -<body>  
152 - <header noAction id="globalso-header" class="web_head testnoaction screen-xxl sticky-top ">  
153 - <div class=" layout">  
154 - <div class=" d-flex align-items-center justify-content-between py-md-4">  
155 - <div class="logo w-25 w-sm-auto"><a href="#"><img class="img-fluid" src="img/logo.png" alt=""></a></div>  
156 - <nav class="navbar navbar-expand-md navbar-dark flex-fill justify-content-end mx-2 pe-md-5">  
157 - <button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#navMenu"  
158 - aria-controls="navMenu">  
159 - <span class="navbar-toggler-icon"></span>  
160 - </button>  
161 - <ul class="nav column-gap-5 justify-content-end text-white d-none d-md-flex">  
162 - <li><a href="#">Home</a></li>  
163 - <li class="dropdown">  
164 - <a href="#" class="dropdown-toggle" data-bs-toggle="dropdown">Products</a>  
165 - <ul class="dropdown-menu fs-6 text-body shadow-sm border-0">  
166 - <li><a href="#" class="dropdown-item py-2">Product Information</a></li>  
167 - <li><a href="#" class="dropdown-item py-2">Change of Insurance</a></li>  
168 - <li><a href="#" class="dropdown-item py-2">Traveling Oxygen Program</a></li>  
169 - <li><a href="#" class="dropdown-item py-2">Contact</a></li>  
170 - </ul>  
171 - </li>  
172 - <li><a href="#">News</a></li>  
173 - <li><a href="#">Download</a></li>  
174 - <li><a href="#">FAQ</a></li>  
175 - <li><a href="#">Contact</a></li>  
176 - </ul>  
177 - </nav>  
178 - <div class="d-flex align-items-center justify-content-end">  
179 - <div class="search">  
180 - <button type="button" class="btn border-0" data-bs-toggle="dropdown">  
181 - <svg viewBox="0 0 24 24" width="18" height="18" stroke="#ffffff" stroke-width="2"  
182 - fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">  
183 - <circle cx="11" cy="11" r="8"></circle>  
184 - <line x1="21" y1="21" x2="16.65" y2="16.65"></line>  
185 - </svg>  
186 - </button>  
187 - <div class="dropdown-menu p-3 shadow-sm border-0">  
188 - <form action="">  
189 - <div class="d-flex mb-2">  
190 - <input type="text" class="form-control" name="search" placeholder="Start Typing...">  
191 - <button class="btn btn-search border-0" type="submit">  
192 - <svg viewBox="0 0 24 24" width="18" height="18" stroke="#333333"  
193 - stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"  
194 - class="css-i6dzq1">  
195 - <circle cx="11" cy="11" r="8"></circle>  
196 - <line x1="21" y1="21" x2="16.65" y2="16.65"></line>  
197 - </svg>  
198 - </button>  
199 - </div>  
200 - <p class="search-attr">Hit enter to search or ESC to close</p>  
201 - </form>  
202 - </div>  
203 - </div>  
204 - <div class="change-language ms-md-4">  
205 - <div role="button" class="dropdown-toggle text-white d-flex align-items-center"  
206 - data-bs-toggle="dropdown">  
207 - <b class="country-flag language-flag-en"></b> <span>English</span>  
208 - </div>  
209 - <div class="dropdown-menu shadow-sm border-0">  
210 - <div class="d-flex flex-wrap p-3 text-body">  
211 - <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="English">  
212 - <b class="country-flag language-flag-en"></b>  
213 - <span>English</span>  
214 - </a>  
215 - <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Françai">  
216 - <b class="country-flag language-flag-fr"></b>  
217 - <span>Françai</span>  
218 - </a>  
219 - <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Español">  
220 - <b class="country-flag language-flag-es"></b>  
221 - <span>Español</span>  
222 - </a>  
223 - <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Deutsch">  
224 - <b class="country-flag language-flag-de"></b>  
225 - <span>Deutsch</span>  
226 - </a>  
227 - <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Română">  
228 - <b class="country-flag language-flag-ro"></b>  
229 - <span>Română</span>  
230 - </a>  
231 - </div>  
232 - </div>  
233 - </div>  
234 - </div>  
235 - </div>  
236 - </div>  
237 - </header>  
238 -  
239 - <main class="web_main" id="globalso-main">  
240 - <section class="slider_banner screen-full position-relative testnoaction" data-aos="fade-up"  
241 - data-aos-delay="500" id="banner">  
242 - <div class="layout">  
243 - <div class="swiper-wrapper">  
244 - <div class="swiper-slide"><a href="#"> <img class=" img-fluid" src="img/banner01.jpg"  
245 - alt="slide1" /></a>  
246 - </div>  
247 - <div class="swiper-slide"><a href="#"> <img class=" img-fluid" src="img/banner02.jpg"  
248 - alt="slide2" /></a>  
249 - </div>  
250 - <div class="swiper-slide"><a href="#"> <img class=" img-fluid" src="img/banner01.jpg"  
251 - alt="slide3" /></a>  
252 - </div>  
253 - </div>  
254 - <div class="index-swiper-buttons">  
255 - <div class="swiper-button-prev la"></div>  
256 - <div class="swiper-button-next la"></div>  
257 - </div>  
258 - <div class="swiper-pagination">  
259 - </div>  
260 - </section>  
261 - <section noActionSection noAction class="product-1 screen-xxl mb-5 mt-0 block-item-4 testnoaction">  
262 - <div class="layout">  
263 - <div class="row gx-0">  
264 - <div class="index-hd text-center" data-aos="fade-up" data-aos-delay="500">  
265 - <h2 class="fs-1 fw-bold">New Products</h2>  
266 - </div>  
267 - <div class="index-bd default-product-items d-flex flex-wrap" data-aos="fade-up"  
268 - data-aos-delay="500">  
269 - <div class="default-product-item block-item" style="padding:10px">  
270 - <figure class="item-inner" style="padding:10px">  
271 - <div class="item-img" style="padding:10px">  
272 - <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>  
273 - </div>  
274 - <figcaption class="item-info">  
275 - <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>  
276 - </figcaption>  
277 - </figure>  
278 - </div>  
279 - <div class="default-product-item block-item">  
280 - <figure class="item-inner">  
281 - <div class="item-img">  
282 - <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>  
283 - </div>  
284 - <figcaption class="item-info">  
285 - <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>  
286 - </figcaption>  
287 - </figure>  
288 - </div>  
289 - <div class="default-product-item block-item">  
290 - <figure class="item-inner">  
291 - <div class="item-img">  
292 - <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>  
293 - </div>  
294 - <figcaption class="item-info">  
295 - <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>  
296 - </figcaption>  
297 - </figure>  
298 - </div>  
299 - <div class="default-product-item block-item">  
300 - <figure class="item-inner">  
301 - <div class="item-img">  
302 - <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>  
303 - </div>  
304 - <figcaption class="item-info">  
305 - <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>  
306 - </figcaption>  
307 - </figure>  
308 - </div>  
309 - <div class="default-product-item block-item">  
310 - <figure class="item-inner">  
311 - <div class="item-img">  
312 - <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>  
313 - </div>  
314 - <figcaption class="item-info">  
315 - <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>  
316 - </figcaption>  
317 - </figure>  
318 - </div>  
319 - </div>  
320 - </div>  
321 - </div>  
322 - </section>  
323 - <section class="screen-xxl">  
324 - <div class="layout">  
325 - <div class="row">  
326 - <div class="col-md-4 p-3" data-aos="fade-up" data-aos-delay="500">  
327 - <i>  
328 - <svg viewBox="0 0 24 24" width="48" height="48" stroke="#318fff" stroke-width="1"  
329 - fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">  
330 - <path  
331 - d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z">  
332 - </path>  
333 - </svg>  
334 - </i>  
335 - <div class="la-3x text-body opacity-25 lh-1 my-4">01</div>  
336 - <div class="pe-4">  
337 - <h4 class="text-uppercase fw-bold">Saddles</h4>  
338 - <div class="mt-3 uu">Our store is ready to offer you the best saddle selection of all shapes  
339 - and  
340 - types for your bike.</div>  
341 - </div>  
342 - </div>  
343 - <div class="col-md-4 p-3" data-aos="fade-up" data-aos-delay="500">  
344 - <i>  
345 - <svg viewBox="0 0 24 24" width="48" height="48" stroke="#318fff" stroke-width="1"  
346 - fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">  
347 - <line x1="4" y1="21" x2="4" y2="14"></line>  
348 - <line x1="4" y1="10" x2="4" y2="3"></line>  
349 - <line x1="12" y1="21" x2="12" y2="12"></line>  
350 - <line x1="12" y1="8" x2="12" y2="3"></line>  
351 - <line x1="20" y1="21" x2="20" y2="16"></line>  
352 - <line x1="20" y1="12" x2="20" y2="3"></line>  
353 - <line x1="1" y1="14" x2="7" y2="14"></line>  
354 - <line x1="9" y1="8" x2="15" y2="8"></line>  
355 - <line x1="17" y1="16" x2="23" y2="16"></line>  
356 - </svg>  
357 - </i>  
358 - <div class="la-3x text-body opacity-25 lh-1 my-4">02</div>  
359 - <div class="pe-4">  
360 - <h4 class="text-uppercase fw-bold">rims &amp; Wheels</h4>  
361 - <p class="mt-3">Feel free to explore an extensive range of wheels, rims &amp; tires for  
362 - your  
363 - bike at our store.</p>  
364 - </div>  
365 - </div>  
366 - <div class="col-md-4 p-3" data-aos="fade-up" data-aos-delay="500">  
367 - <i>  
368 - <svg viewBox="0 0 24 24" width="48" height="48" stroke="#318fff" stroke-width="1"  
369 - fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">  
370 - <path  
371 - d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z">  
372 - </path>  
373 - <polyline points="7.5 4.21 12 6.81 16.5 4.21"></polyline>  
374 - <polyline points="7.5 19.79 7.5 14.6 3 12"></polyline>  
375 - <polyline points="21 12 16.5 14.6 16.5 19.79"></polyline>  
376 - <polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline>  
377 - <line x1="12" y1="22.08" x2="12" y2="12"></line>  
378 - </svg>  
379 - </i>  
380 - <div class="la-3x text-body opacity-25 lh-1 my-4">04</div>  
381 - <div class="pe-4">  
382 - <h4 class="text-uppercase fw-bold">Saddles</h4>  
383 - <p class="mt-3">Need a reliable and durable frame for your bike? Our store managers  
384 - will be  
385 - ready to help you.</p>  
386 - </div>  
387 - </div>  
388 - </div>  
389 - </div>  
390 - </section>  
391 - <section class="about-1 screen-xxl">  
392 - <div class="layout">  
393 - <div class="row">  
394 - <div class="col-lg-6" data-aos="fade-up" data-aos-delay="500">  
395 - <div class="company_show bg-light rounded-3 position-relative h-100">  
396 - <div class="swiper-wrapper">  
397 - <div class="swiper-slide p-4">  
398 - <a href="#"><img class=" img-fluid" src="img/company_intr_01.png" alt=""></a>  
399 - </div>  
400 - <div class="swiper-slide p-4">  
401 - <a href="#"><img class=" img-fluid" src="img/company_intr_02.png" alt=""></a>  
402 - </div>  
403 - <div class="swiper-slide p-4">  
404 - <a href="#"><img class=" img-fluid" src="img/company_intr_03.png" alt=""></a>  
405 - </div>  
406 - </div>  
407 - <div class="swiper-pagination"></div>  
408 - </div>  
409 - </div>  
410 - <div class="col-lg-6" data-aos="fade-up" data-aos-delay="500">  
411 - <div class="company_content ps-lg-5 py-5 py-lg-3">  
412 - <h2 class="fs-1 fw-bold">Why Choose Us</h2>  
413 - <dl class="my-4 my-sm-5 text-dark">  
414 - <dt class="fs-7">◎ Over 25 years of experience</dt>  
415 - <dd class="my-3">  
416 - Since 1990, we have been partnering with various suppliers and manufacturers of bike  
417 - parts  
418 - to provide our customers with high-quality replacement parts for their bikes for  
419 - over 25 years.  
420 - </dd>  
421 - <dt class="fs-7">◎ 5+ years of warranty on all parts</dt>  
422 - <dd class="my-3">  
423 - Every part you buy at our store is provided with exclusive 5-year warranty and some  
424 - parts  
425 - from premium manufacturers have even longer warranty.  
426 - </dd>  
427 - <dt class="fs-7">◎ Over 25 years of experience</dt>  
428 - <dd class="my-3">  
429 - We guarantee the best customer service with easy product returns &amp; replacements  
430 - as well  
431 - as 24-hour support for all our clients. Besides, every client also gets free  
432 - worldwide  
433 - delivery of any part from our catalog.  
434 - </dd>  
435 - </dl>  
436 - <a href="#" class="btn btn-primary px-4 fs-7">Learn More</a>  
437 - </div>  
438 - </div>  
439 - </div>  
440 - </div>  
441 - </section>  
442 -  
443 - <section class="news-1 screen-xxl">  
444 - <div class="layout">  
445 - <div class="row gx-0 my-sm-4">  
446 - <div class="index_hd text-center" data-aos="fade-up" data-aos-delay="500">  
447 - <h2 class="fs-1 fw-bold">Our Blog</h2>  
448 - </div>  
449 - <div class="index-bd row pb-3 py-md-4 px-0 gx-0 gy-3" data-aos="fade-up" data-aos-delay="500">  
450 - <div class="col-sm-6 col-md-4 gx-3 gx-md-4 gy-3 gy-md-0">  
451 - <figure class="d-flex flex-column h-100">  
452 - <span class="item_img">  
453 - <a href=""><img class="img-fluid" src="img/news01.jpg" alt=""></a>  
454 - </span>  
455 - <figcaption class="bg-white p-3 flex-fill">  
456 - <time class="text-secondary">August 9, 2019</time>  
457 - <h3 class="fs-7 fs-sm-5 my-3 fw-bold">  
458 - <a href="#" class="text-body">Essential Commuter Accessories: Stock or DIY?</a>  
459 - </h3>  
460 - <p class="m-0 text-secondary">Lorem ipsum dolor sit amet, consetetur sadipscing  
461 - elitr, sed  
462 - diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed  
463 - diam voluptua. </p>  
464 - </figcaption>  
465 - </figure>  
466 - </div>  
467 - <div class="col-sm-6 col-md-4 gx-3 gx-md-4 gy-3 gy-md-0">  
468 - <figure class="d-flex flex-column h-100">  
469 - <span class="item_img">  
470 - <a href=""><img class=" img-fluid" src="img/news02.jpg" alt=""></a>  
471 - </span>  
472 - <figcaption class="bg-white p-3 flex-fill">  
473 - <time class="text-secondary">August 9, 2019</time>  
474 - <h3 class="fs-7 fs-sm-5 my-3 fw-bold">  
475 - <a href="#" class="text-body">5 Winter Biking Necessities that You Need to  
476 - Have</a>  
477 - </h3>  
478 - <p class="m-0 text-secondary">Lorem ipsum dolor sit amet, consetetur sadipscing  
479 - elitr, sed diam nonumy</p>  
480 - </figcaption>  
481 - </figure>  
482 - </div>  
483 - <div class="col-sm-6 col-md-4 gx-3 gx-md-4 gy-3 gy-md-0">  
484 - <figure class="d-flex flex-column h-100">  
485 - <span class="item_img">  
486 - <a href=""><img class=" img-fluid" src="img/news03.jpg" alt=""></a>  
487 - </span>  
488 - <figcaption class="bg-white p-3 flex-fill">  
489 - <time class="text-secondary">August 9, 2019</time>  
490 - <h3 class="fs-7 fs-sm-5 my-3 fw-bold">  
491 - <a href="#" class="text-body">Bike Tune-up Done Right: Tips from Cyclert  
492 - Experts</a>  
493 - </h3>  
494 - <p class="m-0 text-secondary">Lorem ipsum dolor sit amet, consetetur sadipscing  
495 - elitr, sed  
496 - diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed  
497 - diam voluptua. </p>  
498 - </figcaption>  
499 - </figure>  
500 - </div>  
501 - </div>  
502 - </div>  
503 - </div>  
504 - </section>  
505 - </main>  
506 -  
507 - <footer class="web_footer screen-xxl" id="globalso-footer">  
508 - <div class="layout">  
509 - <div class="row py-5 gx-0" data-aos="fade-up" data-aos-delay="500">  
510 - <nav class="foot_item col-sm-6 col-md-4 gx-0 gx-sm-4 pt-4">  
511 - <div class="foot_logo"><img src="img/logo.png" alt=""></div>  
512 - <div class="my-5 pe-4 text-white">Shelter has been a trusted name in insurance for more than 15  
513 - years. Today, we  
514 - proudly serve more than 16 million customers nationwide.Shelter has been a trusted name in  
515 - insurance for  
516 - more than 15 years. </div>  
517 - <ul class="sns_list d-flex gap-4 list-unstyled">  
518 - <li><a href=""><img src="img/sns01.png" alt=""></a></li>  
519 - <li><a href=""><img src="img/sns02.png" alt=""></a></li>  
520 - <li><a href=""><img src="img/sns03.png" alt=""></a></li>  
521 - <li><a href=""><img src="img/sns04.png" alt=""></a></li>  
522 - <li><a href=""><img src="img/sns05.png" alt=""></a></li>  
523 - </ul>  
524 - </nav>  
525 - <nav class="foot_item col-sm-6 col-md-4 gx-0 gx-sm-4 pt-4 px-sm-5 ps-lg-9">  
526 - <div class="mb-4">  
527 - <h2 class="fs-5 fw-bold text-white">Quick Links</h2>  
528 - </div>  
529 - <div class="foot_item_bd">  
530 - <ul class="list-unstyled">  
531 - <li class="my-3"><a href="" class="text-white">Home</a></li>  
532 - <li class="my-3"><a href="" class="text-white">Products</a></li>  
533 - <li class="my-3"><a href="" class="text-white">Services</a></li>  
534 - <li class="my-3"><a href="" class="text-white">News</a></li>  
535 - <li class="my-3"><a href="" class="text-white">About us</a></li>  
536 - <li class="my-3"><a href="" class="text-white">Contact us</a></li>  
537 - </ul>  
538 - </div>  
539 - </nav>  
540 - <nav class="foot_item col-sm-6 col-md-4 gx-0 gx-sm-4 pt-4">  
541 - <div class="mb-4">  
542 - <h2 class="fs-5 fw-bold text-white">Get in Touch</h2>  
543 - </div>  
544 - <div class="foot_item_bd">  
545 - <address>  
546 - <ul class="list-unstyled">  
547 - <li class="my-3 d-flex align-items-center">  
548 - <i class="la la-city la-inverse fs-4"></i>  
549 - <div class="flex-fill ms-2">  
550 - <span class="text-white">Chengdu,Sichuan province Shuxihuanjie #615</span>  
551 - </div>  
552 - </li>  
553 - <li class="my-3 d-flex align-items-center">  
554 - <i class="la la-phone la-inverse fs-4"></i>  
555 - <div class="flex-fill ms-2">  
556 - <a class="tel_link" href="tel:">  
557 - <span class="text-white">Phone:</span>  
558 - <span class="text-white">400-86-25660</span>  
559 - </a>  
560 - </div>  
561 - </li>  
562 - <li class="my-3 d-flex align-items-center">  
563 - <i class="la la-mail-bulk la-inverse fs-4"></i>  
564 - <div class="flex-fill ms-2">  
565 - <a href="mailto:">  
566 - <span class="text-white">Email:</span>  
567 - <span class="text-white">800025660@126.com</span>  
568 - </a>  
569 - </div>  
570 - </li>  
571 - </ul>  
572 - </address>  
573 - </div>  
574 - </nav>  
575 - </div>  
576 - </div>  
577 - </footer>  
578 -  
579 -</body> 124 + $def = '<header noAction id="globalso-header" class="web_head testnoaction screen-xxl sticky-top ">
  125 + <div class=" layout">
  126 + <div class=" d-flex align-items-center justify-content-between py-md-4">
  127 + <div class="logo w-25 w-sm-auto"><a href="#"><img class="img-fluid" src="img/logo.png" alt=""></a></div>
  128 + <nav class="navbar navbar-expand-md navbar-dark flex-fill justify-content-end mx-2 pe-md-5">
  129 + <button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#navMenu"
  130 + aria-controls="navMenu">
  131 + <span class="navbar-toggler-icon"></span>
  132 + </button>
  133 + <ul class="nav column-gap-5 justify-content-end text-white d-none d-md-flex">
  134 + <li><a href="#">Home</a></li>
  135 + <li class="dropdown">
  136 + <a href="#" class="dropdown-toggle" data-bs-toggle="dropdown">Products</a>
  137 + <ul class="dropdown-menu fs-6 text-body shadow-sm border-0">
  138 + <li><a href="#" class="dropdown-item py-2">Product Information</a></li>
  139 + <li><a href="#" class="dropdown-item py-2">Change of Insurance</a></li>
  140 + <li><a href="#" class="dropdown-item py-2">Traveling Oxygen Program</a></li>
  141 + <li><a href="#" class="dropdown-item py-2">Contact</a></li>
  142 + </ul>
  143 + </li>
  144 + <li><a href="#">News</a></li>
  145 + <li><a href="#">Download</a></li>
  146 + <li><a href="#">FAQ</a></li>
  147 + <li><a href="#">Contact</a></li>
  148 + </ul>
  149 + </nav>
  150 + <div class="d-flex align-items-center justify-content-end">
  151 + <div class="search">
  152 + <button type="button" class="btn border-0" data-bs-toggle="dropdown">
  153 + <svg viewBox="0 0 24 24" width="18" height="18" stroke="#ffffff" stroke-width="2"
  154 + fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">
  155 + <circle cx="11" cy="11" r="8"></circle>
  156 + <line x1="21" y1="21" x2="16.65" y2="16.65"></line>
  157 + </svg>
  158 + </button>
  159 + <div class="dropdown-menu p-3 shadow-sm border-0">
  160 + <form action="">
  161 + <div class="d-flex mb-2">
  162 + <input type="text" class="form-control" name="search" placeholder="Start Typing...">
  163 + <button class="btn btn-search border-0" type="submit">
  164 + <svg viewBox="0 0 24 24" width="18" height="18" stroke="#333333"
  165 + stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"
  166 + class="css-i6dzq1">
  167 + <circle cx="11" cy="11" r="8"></circle>
  168 + <line x1="21" y1="21" x2="16.65" y2="16.65"></line>
  169 + </svg>
  170 + </button>
  171 + </div>
  172 + <p class="search-attr">Hit enter to search or ESC to close</p>
  173 + </form>
  174 + </div>
  175 + </div>
  176 + <div class="change-language ms-md-4">
  177 + <div role="button" class="dropdown-toggle text-white d-flex align-items-center"
  178 + data-bs-toggle="dropdown">
  179 + <b class="country-flag language-flag-en"></b> <span>English</span>
  180 + </div>
  181 + <div class="dropdown-menu shadow-sm border-0">
  182 + <div class="d-flex flex-wrap p-3 text-body">
  183 + <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="English">
  184 + <b class="country-flag language-flag-en"></b>
  185 + <span>English</span>
  186 + </a>
  187 + <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Françai">
  188 + <b class="country-flag language-flag-fr"></b>
  189 + <span>Françai</span>
  190 + </a>
  191 + <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Español">
  192 + <b class="country-flag language-flag-es"></b>
  193 + <span>Español</span>
  194 + </a>
  195 + <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Deutsch">
  196 + <b class="country-flag language-flag-de"></b>
  197 + <span>Deutsch</span>
  198 + </a>
  199 + <a href="#" class="col-4 mb-3 pe-2 d-flex align-items-center" title="Română">
  200 + <b class="country-flag language-flag-ro"></b>
  201 + <span>Română</span>
  202 + </a>
  203 + </div>
  204 + </div>
  205 + </div>
  206 + </div>
  207 + </div>
  208 + </div>
  209 +</header>
  210 +
  211 +<main class="web_main" id="globalso-main">
  212 + <section class="slider_banner screen-full position-relative testnoaction" data-aos="fade-up"
  213 + data-aos-delay="500" id="banner">
  214 + <div class="layout">
  215 + <div class="swiper-wrapper">
  216 + <div class="swiper-slide"><a href="#"> <img class=" img-fluid" src="img/banner01.jpg"
  217 + alt="slide1" /></a>
  218 + </div>
  219 + <div class="swiper-slide"><a href="#"> <img class=" img-fluid" src="img/banner02.jpg"
  220 + alt="slide2" /></a>
  221 + </div>
  222 + <div class="swiper-slide"><a href="#"> <img class=" img-fluid" src="img/banner01.jpg"
  223 + alt="slide3" /></a>
  224 + </div>
  225 + </div>
  226 + <div class="index-swiper-buttons">
  227 + <div class="swiper-button-prev la"></div>
  228 + <div class="swiper-button-next la"></div>
  229 + </div>
  230 + <div class="swiper-pagination">
  231 + </div>
  232 + </section>
  233 + <section noActionSection noAction class="product-1 screen-xxl mb-5 mt-0 block-item-4 testnoaction">
  234 + <div class="layout">
  235 + <div class="row gx-0">
  236 + <div class="index-hd text-center" data-aos="fade-up" data-aos-delay="500">
  237 + <h2 class="fs-1 fw-bold">New Products</h2>
  238 + </div>
  239 + <div class="index-bd default-product-items d-flex flex-wrap" data-aos="fade-up"
  240 + data-aos-delay="500">
  241 + <div class="default-product-item block-item" style="padding:10px">
  242 + <figure class="item-inner" style="padding:10px">
  243 + <div class="item-img" style="padding:10px">
  244 + <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>
  245 + </div>
  246 + <figcaption class="item-info">
  247 + <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>
  248 + </figcaption>
  249 + </figure>
  250 + </div>
  251 + <div class="default-product-item block-item">
  252 + <figure class="item-inner">
  253 + <div class="item-img">
  254 + <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>
  255 + </div>
  256 + <figcaption class="item-info">
  257 + <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>
  258 + </figcaption>
  259 + </figure>
  260 + </div>
  261 + <div class="default-product-item block-item">
  262 + <figure class="item-inner">
  263 + <div class="item-img">
  264 + <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>
  265 + </div>
  266 + <figcaption class="item-info">
  267 + <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>
  268 + </figcaption>
  269 + </figure>
  270 + </div>
  271 + <div class="default-product-item block-item">
  272 + <figure class="item-inner">
  273 + <div class="item-img">
  274 + <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>
  275 + </div>
  276 + <figcaption class="item-info">
  277 + <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>
  278 + </figcaption>
  279 + </figure>
  280 + </div>
  281 + <div class="default-product-item block-item">
  282 + <figure class="item-inner">
  283 + <div class="item-img">
  284 + <a href="#"><img class="img-fluid" src="img/index_pd01.png" alt=""></a>
  285 + </div>
  286 + <figcaption class="item-info">
  287 + <h3 class="item-title"><a href="#">Aluminum Bottle Cage</a></h3>
  288 + </figcaption>
  289 + </figure>
  290 + </div>
  291 + </div>
  292 + </div>
  293 + </div>
  294 + </section>
  295 + <section class="screen-xxl">
  296 + <div class="layout">
  297 + <div class="row">
  298 + <div class="col-md-4 p-3" data-aos="fade-up" data-aos-delay="500">
  299 + <i>
  300 + <svg viewBox="0 0 24 24" width="48" height="48" stroke="#318fff" stroke-width="1"
  301 + fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">
  302 + <path
  303 + d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z">
  304 + </path>
  305 + </svg>
  306 + </i>
  307 + <div class="la-3x text-body opacity-25 lh-1 my-4">01</div>
  308 + <div class="pe-4">
  309 + <h4 class="text-uppercase fw-bold">Saddles</h4>
  310 + <div class="mt-3 uu">Our store is ready to offer you the best saddle selection of all shapes
  311 + and
  312 + types for your bike.</div>
  313 + </div>
  314 + </div>
  315 + <div class="col-md-4 p-3" data-aos="fade-up" data-aos-delay="500">
  316 + <i>
  317 + <svg viewBox="0 0 24 24" width="48" height="48" stroke="#318fff" stroke-width="1"
  318 + fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">
  319 + <line x1="4" y1="21" x2="4" y2="14"></line>
  320 + <line x1="4" y1="10" x2="4" y2="3"></line>
  321 + <line x1="12" y1="21" x2="12" y2="12"></line>
  322 + <line x1="12" y1="8" x2="12" y2="3"></line>
  323 + <line x1="20" y1="21" x2="20" y2="16"></line>
  324 + <line x1="20" y1="12" x2="20" y2="3"></line>
  325 + <line x1="1" y1="14" x2="7" y2="14"></line>
  326 + <line x1="9" y1="8" x2="15" y2="8"></line>
  327 + <line x1="17" y1="16" x2="23" y2="16"></line>
  328 + </svg>
  329 + </i>
  330 + <div class="la-3x text-body opacity-25 lh-1 my-4">02</div>
  331 + <div class="pe-4">
  332 + <h4 class="text-uppercase fw-bold">rims &amp; Wheels</h4>
  333 + <p class="mt-3">Feel free to explore an extensive range of wheels, rims &amp; tires for
  334 + your
  335 + bike at our store.</p>
  336 + </div>
  337 + </div>
  338 + <div class="col-md-4 p-3" data-aos="fade-up" data-aos-delay="500">
  339 + <i>
  340 + <svg viewBox="0 0 24 24" width="48" height="48" stroke="#318fff" stroke-width="1"
  341 + fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1">
  342 + <path
  343 + d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z">
  344 + </path>
  345 + <polyline points="7.5 4.21 12 6.81 16.5 4.21"></polyline>
  346 + <polyline points="7.5 19.79 7.5 14.6 3 12"></polyline>
  347 + <polyline points="21 12 16.5 14.6 16.5 19.79"></polyline>
  348 + <polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline>
  349 + <line x1="12" y1="22.08" x2="12" y2="12"></line>
  350 + </svg>
  351 + </i>
  352 + <div class="la-3x text-body opacity-25 lh-1 my-4">04</div>
  353 + <div class="pe-4">
  354 + <h4 class="text-uppercase fw-bold">Saddles</h4>
  355 + <p class="mt-3">Need a reliable and durable frame for your bike? Our store managers
  356 + will be
  357 + ready to help you.</p>
  358 + </div>
  359 + </div>
  360 + </div>
  361 + </div>
  362 + </section>
  363 + <section class="about-1 screen-xxl">
  364 + <div class="layout">
  365 + <div class="row">
  366 + <div class="col-lg-6" data-aos="fade-up" data-aos-delay="500">
  367 + <div class="company_show bg-light rounded-3 position-relative h-100">
  368 + <div class="swiper-wrapper">
  369 + <div class="swiper-slide p-4">
  370 + <a href="#"><img class=" img-fluid" src="img/company_intr_01.png" alt=""></a>
  371 + </div>
  372 + <div class="swiper-slide p-4">
  373 + <a href="#"><img class=" img-fluid" src="img/company_intr_02.png" alt=""></a>
  374 + </div>
  375 + <div class="swiper-slide p-4">
  376 + <a href="#"><img class=" img-fluid" src="img/company_intr_03.png" alt=""></a>
  377 + </div>
  378 + </div>
  379 + <div class="swiper-pagination"></div>
  380 + </div>
  381 + </div>
  382 + <div class="col-lg-6" data-aos="fade-up" data-aos-delay="500">
  383 + <div class="company_content ps-lg-5 py-5 py-lg-3">
  384 + <h2 class="fs-1 fw-bold">Why Choose Us</h2>
  385 + <dl class="my-4 my-sm-5 text-dark">
  386 + <dt class="fs-7">◎ Over 25 years of experience</dt>
  387 + <dd class="my-3">
  388 + Since 1990, we have been partnering with various suppliers and manufacturers of bike
  389 + parts
  390 + to provide our customers with high-quality replacement parts for their bikes for
  391 + over 25 years.
  392 + </dd>
  393 + <dt class="fs-7">◎ 5+ years of warranty on all parts</dt>
  394 + <dd class="my-3">
  395 + Every part you buy at our store is provided with exclusive 5-year warranty and some
  396 + parts
  397 + from premium manufacturers have even longer warranty.
  398 + </dd>
  399 + <dt class="fs-7">◎ Over 25 years of experience</dt>
  400 + <dd class="my-3">
  401 + We guarantee the best customer service with easy product returns &amp; replacements
  402 + as well
  403 + as 24-hour support for all our clients. Besides, every client also gets free
  404 + worldwide
  405 + delivery of any part from our catalog.
  406 + </dd>
  407 + </dl>
  408 + <a href="#" class="btn btn-primary px-4 fs-7">Learn More</a>
  409 + </div>
  410 + </div>
  411 + </div>
  412 + </div>
  413 + </section>
  414 +
  415 + <section class="news-1 screen-xxl">
  416 + <div class="layout">
  417 + <div class="row gx-0 my-sm-4">
  418 + <div class="index_hd text-center" data-aos="fade-up" data-aos-delay="500">
  419 + <h2 class="fs-1 fw-bold">Our Blog</h2>
  420 + </div>
  421 + <div class="index-bd row pb-3 py-md-4 px-0 gx-0 gy-3" data-aos="fade-up" data-aos-delay="500">
  422 + <div class="col-sm-6 col-md-4 gx-3 gx-md-4 gy-3 gy-md-0">
  423 + <figure class="d-flex flex-column h-100">
  424 + <span class="item_img">
  425 + <a href=""><img class="img-fluid" src="img/news01.jpg" alt=""></a>
  426 + </span>
  427 + <figcaption class="bg-white p-3 flex-fill">
  428 + <time class="text-secondary">August 9, 2019</time>
  429 + <h3 class="fs-7 fs-sm-5 my-3 fw-bold">
  430 + <a href="#" class="text-body">Essential Commuter Accessories: Stock or DIY?</a>
  431 + </h3>
  432 + <p class="m-0 text-secondary">Lorem ipsum dolor sit amet, consetetur sadipscing
  433 + elitr, sed
  434 + diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed
  435 + diam voluptua. </p>
  436 + </figcaption>
  437 + </figure>
  438 + </div>
  439 + <div class="col-sm-6 col-md-4 gx-3 gx-md-4 gy-3 gy-md-0">
  440 + <figure class="d-flex flex-column h-100">
  441 + <span class="item_img">
  442 + <a href=""><img class=" img-fluid" src="img/news02.jpg" alt=""></a>
  443 + </span>
  444 + <figcaption class="bg-white p-3 flex-fill">
  445 + <time class="text-secondary">August 9, 2019</time>
  446 + <h3 class="fs-7 fs-sm-5 my-3 fw-bold">
  447 + <a href="#" class="text-body">5 Winter Biking Necessities that You Need to
  448 + Have</a>
  449 + </h3>
  450 + <p class="m-0 text-secondary">Lorem ipsum dolor sit amet, consetetur sadipscing
  451 + elitr, sed diam nonumy</p>
  452 + </figcaption>
  453 + </figure>
  454 + </div>
  455 + <div class="col-sm-6 col-md-4 gx-3 gx-md-4 gy-3 gy-md-0">
  456 + <figure class="d-flex flex-column h-100">
  457 + <span class="item_img">
  458 + <a href=""><img class=" img-fluid" src="img/news03.jpg" alt=""></a>
  459 + </span>
  460 + <figcaption class="bg-white p-3 flex-fill">
  461 + <time class="text-secondary">August 9, 2019</time>
  462 + <h3 class="fs-7 fs-sm-5 my-3 fw-bold">
  463 + <a href="#" class="text-body">Bike Tune-up Done Right: Tips from Cyclert
  464 + Experts</a>
  465 + </h3>
  466 + <p class="m-0 text-secondary">Lorem ipsum dolor sit amet, consetetur sadipscing
  467 + elitr, sed
  468 + diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed
  469 + diam voluptua. </p>
  470 + </figcaption>
  471 + </figure>
  472 + </div>
  473 + </div>
  474 + </div>
  475 + </div>
  476 + </section>
  477 +</main>
  478 +
  479 +<footer class="web_footer screen-xxl" id="globalso-footer">
  480 + <div class="layout">
  481 + <div class="row py-5 gx-0" data-aos="fade-up" data-aos-delay="500">
  482 + <nav class="foot_item col-sm-6 col-md-4 gx-0 gx-sm-4 pt-4">
  483 + <div class="foot_logo"><img src="img/logo.png" alt=""></div>
  484 + <div class="my-5 pe-4 text-white">Shelter has been a trusted name in insurance for more than 15
  485 + years. Today, we
  486 + proudly serve more than 16 million customers nationwide.Shelter has been a trusted name in
  487 + insurance for
  488 + more than 15 years. </div>
  489 + <ul class="sns_list d-flex gap-4 list-unstyled">
  490 + <li><a href=""><img src="img/sns01.png" alt=""></a></li>
  491 + <li><a href=""><img src="img/sns02.png" alt=""></a></li>
  492 + <li><a href=""><img src="img/sns03.png" alt=""></a></li>
  493 + <li><a href=""><img src="img/sns04.png" alt=""></a></li>
  494 + <li><a href=""><img src="img/sns05.png" alt=""></a></li>
  495 + </ul>
  496 + </nav>
  497 + <nav class="foot_item col-sm-6 col-md-4 gx-0 gx-sm-4 pt-4 px-sm-5 ps-lg-9">
  498 + <div class="mb-4">
  499 + <h2 class="fs-5 fw-bold text-white">Quick Links</h2>
  500 + </div>
  501 + <div class="foot_item_bd">
  502 + <ul class="list-unstyled">
  503 + <li class="my-3"><a href="" class="text-white">Home</a></li>
  504 + <li class="my-3"><a href="" class="text-white">Products</a></li>
  505 + <li class="my-3"><a href="" class="text-white">Services</a></li>
  506 + <li class="my-3"><a href="" class="text-white">News</a></li>
  507 + <li class="my-3"><a href="" class="text-white">About us</a></li>
  508 + <li class="my-3"><a href="" class="text-white">Contact us</a></li>
  509 + </ul>
  510 + </div>
  511 + </nav>
  512 + <nav class="foot_item col-sm-6 col-md-4 gx-0 gx-sm-4 pt-4">
  513 + <div class="mb-4">
  514 + <h2 class="fs-5 fw-bold text-white">Get in Touch</h2>
  515 + </div>
  516 + <div class="foot_item_bd">
  517 + <address>
  518 + <ul class="list-unstyled">
  519 + <li class="my-3 d-flex align-items-center">
  520 + <i class="la la-city la-inverse fs-4"></i>
  521 + <div class="flex-fill ms-2">
  522 + <span class="text-white">Chengdu,Sichuan province Shuxihuanjie #615</span>
  523 + </div>
  524 + </li>
  525 + <li class="my-3 d-flex align-items-center">
  526 + <i class="la la-phone la-inverse fs-4"></i>
  527 + <div class="flex-fill ms-2">
  528 + <a class="tel_link" href="tel:">
  529 + <span class="text-white">Phone:</span>
  530 + <span class="text-white">400-86-25660</span>
  531 + </a>
  532 + </div>
  533 + </li>
  534 + <li class="my-3 d-flex align-items-center">
  535 + <i class="la la-mail-bulk la-inverse fs-4"></i>
  536 + <div class="flex-fill ms-2">
  537 + <a href="mailto:">
  538 + <span class="text-white">Email:</span>
  539 + <span class="text-white">800025660@126.com</span>
  540 + </a>
  541 + </div>
  542 + </li>
  543 + </ul>
  544 + </address>
  545 + </div>
  546 + </nav>
  547 + </div>
  548 + </div>
  549 +</footer>
580 <script> 550 <script>
581 - AOS.init();  
582 - var mySwiper = new Swiper(\'.slider_banner .layout\', {  
583 - effect: \'fade\',  
584 - speed: 1000,  
585 - loop: true,  
586 - autoplay: {  
587 - delay: 3500,  
588 - disableOnInteraction: false,  
589 - },  
590 - pagination: {  
591 - el: \'.slider_banner .swiper-pagination\',  
592 - clickable: true,  
593 - },  
594 - navigation: {  
595 - nextEl: \'.slider_banner .swiper-button-next\',  
596 - prevEl: \'.slider_banner .swiper-button-prev\',  
597 - },  
598 - });  
599 -  
600 - var swiper = new Swiper(\'.company_show\', {  
601 - pagination: {  
602 - el: \'.company_show .swiper-pagination\',  
603 - },  
604 - })  
605 -</script>  
606 -  
607 -</html>'; 551 +AOS.init();
  552 +var mySwiper = new Swiper(\'.slider_banner .layout\', {
  553 + effect: \'fade\',
  554 + speed: 1000,
  555 + loop: true,
  556 + autoplay: {
  557 + delay: 3500,
  558 + disableOnInteraction: false,
  559 + },
  560 + pagination: {
  561 + el: \'.slider_banner .swiper-pagination\',
  562 + clickable: true,
  563 + },
  564 + navigation: {
  565 + nextEl: \'.slider_banner .swiper-button-next\',
  566 + prevEl: \'.slider_banner .swiper-button-prev\',
  567 + },
  568 +});
  569 +
  570 +var swiper = new Swiper(\'.company_show\', {
  571 + pagination: {
  572 + el: \'.company_show .swiper-pagination\',
  573 + },
  574 +})
  575 +<\/script>';
608 }else{ 576 }else{
609 $def = '<div class=" d-flex align-items-center justify-content-between py-md-4"> 577 $def = '<div class=" d-flex align-items-center justify-content-between py-md-4">
610 <div class="logo w-25 w-sm-auto"><a href="#"><img class="img-fluid" src="img/logo.png" alt=""></a></div> 578 <div class="logo w-25 w-sm-auto"><a href="#"><img class="img-fluid" src="img/logo.png" alt=""></a></div>
@@ -693,9 +661,13 @@ class TemplateController extends BaseController @@ -693,9 +661,13 @@ class TemplateController extends BaseController
693 661
694 $data = TemplateLogic::instance()->first($source,$source_id); 662 $data = TemplateLogic::instance()->first($source,$source_id);
695 663
  664 + $res = [
  665 + 'html' => $data?$data['html']:$def,
  666 + 'name' => 'example'
  667 + ];
696 668
697 669
698 - return $this->response('',Code::SUCCESS,$data?$data['html']:$def); 670 + return $this->response('',Code::SUCCESS,$res);
699 671
700 } 672 }
701 673