From eecaf11adbb6f6698c96e579718e98f1ba8bdf5e Mon Sep 17 00:00:00 2001 From: Dinesh Salunke Date: Thu, 2 Nov 2023 13:49:00 +0530 Subject: [PATCH] chore: initial commit --- .editorconfig | 6 + .gitignore | 1 + _dev/elegance.css | 15 + _dev/package.json | 12 + _dev/tailwind.config.js | 12 + _dev/yarn.lock | 552 ++++++++++ assets/css/elegance.css | 647 ++++++++++++ assets/css/theme.css | 994 ++++++++++++++++++ assets/js/custom.js | 4 + assets/js/theme.js | 1 + config/.htaccess | 10 + config/theme.yml | 120 +++ .../views/templates/hook/blockreassurance.tpl | 38 + .../views/templates/widget/contactform.tpl | 135 +++ modules/ps_advertising/index.php | 35 + modules/ps_advertising/ps_advertising.tpl | 28 + modules/ps_banner/ps_banner.tpl | 31 + modules/ps_bestsellers/views/index.php | 35 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_bestsellers.tpl | 37 + .../ps_bestsellers/views/templates/index.php | 35 + modules/ps_brandlist/views/index.php | 35 + .../views/templates/_partials/brand_form.tpl | 33 + .../views/templates/_partials/brand_text.tpl | 36 + .../views/templates/_partials/index.php | 35 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_brandlist.tpl | 41 + .../ps_brandlist/views/templates/index.php | 35 + modules/ps_categoryproducts/views/index.php | 35 + .../views/templates/hook/index.php | 35 + .../templates/hook/ps_categoryproducts.tpl | 38 + .../views/templates/index.php | 35 + .../views/templates/hook/ps_categorytree.tpl | 67 ++ modules/ps_contactinfo/nav.tpl | 42 + .../ps_contactinfo/ps_contactinfo-rich.tpl | 62 ++ modules/ps_contactinfo/ps_contactinfo.tpl | 74 ++ modules/ps_crossselling/views/index.php | 35 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_crossselling.tpl | 33 + .../ps_crossselling/views/templates/index.php | 35 + .../ps_currencyselector.tpl | 46 + .../ps_customeraccountlinks.tpl | 51 + .../ps_customersignin/ps_customersignin.tpl | 58 + modules/ps_emailalerts/views/index.php | 35 + .../views/templates/hook/index.php | 34 + .../templates/hook/my-account-footer.tpl | 30 + .../views/templates/hook/my-account.tpl | 32 + .../ps_emailalerts/views/templates/index.php | 34 + .../templates/hook/ps_emailsubscription.tpl | 74 ++ modules/ps_facetedsearch/ps_facetedsearch.tpl | 36 + .../templates/hook/ps_featuredproducts.tpl | 37 + .../views/templates/hook/slider.tpl | 60 ++ .../ps_languageselector.tpl | 49 + .../templates/hook/hookDisplayFooter.tpl | 44 + .../views/templates/hook/linkblock.tpl | 42 + modules/ps_mainmenu/ps_mainmenu.tpl | 23 + modules/ps_newproducts/views/index.php | 35 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_newproducts.tpl | 39 + .../ps_newproducts/views/templates/index.php | 35 + modules/ps_productinfo/views/index.php | 35 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_productinfo.tpl | 43 + .../ps_productinfo/views/templates/index.php | 35 + modules/ps_rssfeed/views/index.php | 35 + .../ps_rssfeed/views/templates/hook/index.php | 35 + .../views/templates/hook/ps_rssfeed.tpl | 39 + modules/ps_rssfeed/views/templates/index.php | 35 + modules/ps_searchbar/ps_searchbar.tpl | 35 + .../views/templates/hook/ps_sharebuttons.tpl | 37 + modules/ps_shoppingcart/modal.tpl | 83 ++ .../ps_shoppingcart-product-line.tpl | 59 ++ modules/ps_shoppingcart/ps_shoppingcart.tpl | 44 + modules/ps_socialfollow/ps_socialfollow.tpl | 34 + modules/ps_specials/views/index.php | 35 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_specials.tpl | 38 + modules/ps_specials/views/templates/index.php | 35 + modules/ps_supplierlist/views/index.php | 35 + .../views/templates/_partials/index.php | 35 + .../templates/_partials/supplier_form.tpl | 33 + .../templates/_partials/supplier_text.tpl | 36 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_supplierlist.tpl | 41 + .../ps_supplierlist/views/templates/index.php | 35 + modules/ps_viewedproduct/views/index.php | 35 + .../views/templates/hook/index.php | 35 + .../views/templates/hook/ps_viewedproduct.tpl | 32 + .../views/templates/index.php | 35 + preview.png | Bin 0 -> 141698 bytes templates/_partials/breadcrumb.tpl | 40 + templates/_partials/footer.tpl | 54 + templates/_partials/form-errors.tpl | 35 + templates/_partials/form-fields.tpl | 195 ++++ templates/_partials/head.tpl | 70 ++ templates/_partials/header.tpl | 41 + templates/_partials/javascript.tpl | 52 + templates/_partials/notifications.tpl | 78 ++ templates/_partials/pagination.tpl | 64 ++ templates/_partials/stylesheets.tpl | 37 + .../catalog/_partials/active_filters.tpl | 43 + .../catalog/_partials/category-header.tpl | 41 + templates/catalog/_partials/facets.tpl | 168 +++ .../catalog/_partials/miniatures/brand.tpl | 37 + .../catalog/_partials/miniatures/category.tpl | 37 + .../_partials/miniatures/pack-product.tpl | 54 + .../catalog/_partials/miniatures/product.tpl | 92 ++ .../catalog/_partials/product-activation.tpl | 38 + .../catalog/_partials/product-add-to-cart.tpl | 88 ++ .../_partials/product-additional-info.tpl | 27 + .../_partials/product-cover-thumbnails.tpl | 60 ++ .../_partials/product-customization.tpl | 69 ++ .../catalog/_partials/product-details.tpl | 91 ++ .../catalog/_partials/product-discounts.tpl | 49 + templates/catalog/_partials/product-flags.tpl | 31 + .../_partials/product-images-modal.tpl | 60 ++ .../catalog/_partials/product-prices.tpl | 114 ++ .../catalog/_partials/product-variants.tpl | 69 ++ .../catalog/_partials/products-bottom.tpl | 6 + templates/catalog/_partials/products-top.tpl | 56 + templates/catalog/_partials/products.tpl | 44 + templates/catalog/_partials/quickview.tpl | 79 ++ templates/catalog/_partials/sort-orders.tpl | 47 + templates/catalog/_partials/variant-links.tpl | 16 + templates/catalog/brands.tpl | 44 + templates/catalog/listing/best-sales.tpl | 5 + templates/catalog/listing/category.tpl | 29 + templates/catalog/listing/manufacturer.tpl | 31 + templates/catalog/listing/new-products.tpl | 5 + templates/catalog/listing/prices-drop.tpl | 5 + templates/catalog/listing/product-list.tpl | 73 ++ templates/catalog/listing/search.tpl | 5 + templates/catalog/listing/supplier.tpl | 30 + templates/catalog/manufacturers.tpl | 25 + templates/catalog/product.tpl | 268 +++++ templates/catalog/suppliers.tpl | 29 + templates/checkout/_partials/address-form.tpl | 46 + .../_partials/address-selector-block.tpl | 72 ++ .../_partials/cart-detailed-actions.tpl | 45 + .../_partials/cart-detailed-product-line.tpl | 175 +++ .../_partials/cart-detailed-totals.tpl | 58 + .../checkout/_partials/cart-detailed.tpl | 42 + .../_partials/cart-summary-items-subtotal.tpl | 30 + .../_partials/cart-summary-product-line.tpl | 44 + .../_partials/cart-summary-subtotals.tpl | 44 + .../_partials/cart-summary-totals.tpl | 54 + templates/checkout/_partials/cart-summary.tpl | 69 ++ templates/checkout/_partials/cart-voucher.tpl | 91 ++ .../checkout/_partials/customer-form.tpl | 50 + templates/checkout/_partials/footer.tpl | 29 + templates/checkout/_partials/header.tpl | 76 ++ templates/checkout/_partials/login-form.tpl | 37 + .../_partials/order-confirmation-table.tpl | 136 +++ .../_partials/order-final-summary-table.tpl | 38 + .../_partials/order-final-summary.tpl | 103 ++ .../checkout/_partials/steps/addresses.tpl | 137 +++ .../_partials/steps/checkout-step.tpl | 46 + .../checkout/_partials/steps/payment.tpl | 167 +++ .../_partials/steps/personal-information.tpl | 98 ++ .../checkout/_partials/steps/shipping.tpl | 124 +++ .../checkout/_partials/steps/unreachable.tpl | 31 + templates/checkout/cart-empty.tpl | 45 + templates/checkout/cart.tpl | 87 ++ templates/checkout/checkout-process.tpl | 30 + templates/checkout/checkout.tpl | 94 ++ templates/checkout/order-confirmation.tpl | 110 ++ .../cms/_partials/sitemap-nested-list.tpl | 38 + templates/cms/category.tpl | 53 + templates/cms/page.tpl | 47 + templates/cms/sitemap.tpl | 52 + templates/cms/stores.tpl | 88 ++ templates/contact.tpl | 37 + templates/customer/_partials/address-form.tpl | 63 ++ .../customer/_partials/block-address.tpl | 45 + .../customer/_partials/customer-form.tpl | 54 + templates/customer/_partials/login-form.tpl | 60 ++ .../customer/_partials/my-account-links.tpl | 34 + .../_partials/order-detail-no-return.tpl | 175 +++ .../_partials/order-detail-return.tpl | 253 +++++ .../customer/_partials/order-messages.tpl | 85 ++ templates/customer/address.tpl | 39 + templates/customer/addresses.tpl | 46 + templates/customer/authentication.tpl | 46 + templates/customer/discount.tpl | 96 ++ templates/customer/guest-login.tpl | 79 ++ templates/customer/guest-tracking.tpl | 70 ++ templates/customer/history.tpl | 119 +++ templates/customer/identity.tpl | 33 + templates/customer/my-account.tpl | 111 ++ templates/customer/order-detail.tpl | 213 ++++ templates/customer/order-follow.tpl | 98 ++ templates/customer/order-return.tpl | 151 +++ templates/customer/order-slip.tpl | 80 ++ templates/customer/page.tpl | 46 + templates/customer/password-email.tpl | 74 ++ templates/customer/password-infos.tpl | 50 + templates/customer/password-new.tpl | 90 ++ templates/customer/registration.tpl | 39 + templates/errors/404.tpl | 33 + templates/errors/forbidden.tpl | 30 + templates/errors/maintenance.tpl | 61 ++ templates/errors/not-found.tpl | 40 + templates/errors/restricted-country.tpl | 55 + templates/errors/static/500.html | 0 templates/errors/static/503.html | 0 templates/index.tpl | 90 ++ templates/layouts/layout-both-columns.tpl | 114 ++ templates/layouts/layout-content-only.tpl | 41 + templates/layouts/layout-error.tpl | 55 + templates/layouts/layout-full-width.tpl | 38 + templates/layouts/layout-left-column.tpl | 37 + templates/layouts/layout-right-column.tpl | 37 + templates/page.tpl | 58 + 213 files changed, 13594 insertions(+) create mode 100644 .editorconfig create mode 100644 .gitignore create mode 100644 _dev/elegance.css create mode 100644 _dev/package.json create mode 100644 _dev/tailwind.config.js create mode 100644 _dev/yarn.lock create mode 100644 assets/css/elegance.css create mode 100644 assets/css/theme.css create mode 100644 assets/js/custom.js create mode 100644 assets/js/theme.js create mode 100644 config/.htaccess create mode 100644 config/theme.yml create mode 100644 modules/blockreassurance/views/templates/hook/blockreassurance.tpl create mode 100644 modules/contactform/views/templates/widget/contactform.tpl create mode 100644 modules/ps_advertising/index.php create mode 100644 modules/ps_advertising/ps_advertising.tpl create mode 100644 modules/ps_banner/ps_banner.tpl create mode 100644 modules/ps_bestsellers/views/index.php create mode 100644 modules/ps_bestsellers/views/templates/hook/index.php create mode 100644 modules/ps_bestsellers/views/templates/hook/ps_bestsellers.tpl create mode 100644 modules/ps_bestsellers/views/templates/index.php create mode 100644 modules/ps_brandlist/views/index.php create mode 100644 modules/ps_brandlist/views/templates/_partials/brand_form.tpl create mode 100644 modules/ps_brandlist/views/templates/_partials/brand_text.tpl create mode 100644 modules/ps_brandlist/views/templates/_partials/index.php create mode 100644 modules/ps_brandlist/views/templates/hook/index.php create mode 100644 modules/ps_brandlist/views/templates/hook/ps_brandlist.tpl create mode 100644 modules/ps_brandlist/views/templates/index.php create mode 100644 modules/ps_categoryproducts/views/index.php create mode 100644 modules/ps_categoryproducts/views/templates/hook/index.php create mode 100644 modules/ps_categoryproducts/views/templates/hook/ps_categoryproducts.tpl create mode 100644 modules/ps_categoryproducts/views/templates/index.php create mode 100644 modules/ps_categorytree/views/templates/hook/ps_categorytree.tpl create mode 100644 modules/ps_contactinfo/nav.tpl create mode 100644 modules/ps_contactinfo/ps_contactinfo-rich.tpl create mode 100644 modules/ps_contactinfo/ps_contactinfo.tpl create mode 100644 modules/ps_crossselling/views/index.php create mode 100644 modules/ps_crossselling/views/templates/hook/index.php create mode 100644 modules/ps_crossselling/views/templates/hook/ps_crossselling.tpl create mode 100644 modules/ps_crossselling/views/templates/index.php create mode 100644 modules/ps_currencyselector/ps_currencyselector.tpl create mode 100644 modules/ps_customeraccountlinks/ps_customeraccountlinks.tpl create mode 100644 modules/ps_customersignin/ps_customersignin.tpl create mode 100644 modules/ps_emailalerts/views/index.php create mode 100644 modules/ps_emailalerts/views/templates/hook/index.php create mode 100644 modules/ps_emailalerts/views/templates/hook/my-account-footer.tpl create mode 100644 modules/ps_emailalerts/views/templates/hook/my-account.tpl create mode 100644 modules/ps_emailalerts/views/templates/index.php create mode 100644 modules/ps_emailsubscription/views/templates/hook/ps_emailsubscription.tpl create mode 100644 modules/ps_facetedsearch/ps_facetedsearch.tpl create mode 100644 modules/ps_featuredproducts/views/templates/hook/ps_featuredproducts.tpl create mode 100644 modules/ps_imageslider/views/templates/hook/slider.tpl create mode 100644 modules/ps_languageselector/ps_languageselector.tpl create mode 100644 modules/ps_legalcompliance/views/templates/hook/hookDisplayFooter.tpl create mode 100644 modules/ps_linklist/views/templates/hook/linkblock.tpl create mode 100644 modules/ps_mainmenu/ps_mainmenu.tpl create mode 100644 modules/ps_newproducts/views/index.php create mode 100644 modules/ps_newproducts/views/templates/hook/index.php create mode 100644 modules/ps_newproducts/views/templates/hook/ps_newproducts.tpl create mode 100644 modules/ps_newproducts/views/templates/index.php create mode 100644 modules/ps_productinfo/views/index.php create mode 100644 modules/ps_productinfo/views/templates/hook/index.php create mode 100644 modules/ps_productinfo/views/templates/hook/ps_productinfo.tpl create mode 100644 modules/ps_productinfo/views/templates/index.php create mode 100644 modules/ps_rssfeed/views/index.php create mode 100644 modules/ps_rssfeed/views/templates/hook/index.php create mode 100644 modules/ps_rssfeed/views/templates/hook/ps_rssfeed.tpl create mode 100644 modules/ps_rssfeed/views/templates/index.php create mode 100644 modules/ps_searchbar/ps_searchbar.tpl create mode 100644 modules/ps_sharebuttons/views/templates/hook/ps_sharebuttons.tpl create mode 100644 modules/ps_shoppingcart/modal.tpl create mode 100644 modules/ps_shoppingcart/ps_shoppingcart-product-line.tpl create mode 100644 modules/ps_shoppingcart/ps_shoppingcart.tpl create mode 100644 modules/ps_socialfollow/ps_socialfollow.tpl create mode 100644 modules/ps_specials/views/index.php create mode 100644 modules/ps_specials/views/templates/hook/index.php create mode 100644 modules/ps_specials/views/templates/hook/ps_specials.tpl create mode 100644 modules/ps_specials/views/templates/index.php create mode 100644 modules/ps_supplierlist/views/index.php create mode 100644 modules/ps_supplierlist/views/templates/_partials/index.php create mode 100644 modules/ps_supplierlist/views/templates/_partials/supplier_form.tpl create mode 100644 modules/ps_supplierlist/views/templates/_partials/supplier_text.tpl create mode 100644 modules/ps_supplierlist/views/templates/hook/index.php create mode 100644 modules/ps_supplierlist/views/templates/hook/ps_supplierlist.tpl create mode 100644 modules/ps_supplierlist/views/templates/index.php create mode 100644 modules/ps_viewedproduct/views/index.php create mode 100644 modules/ps_viewedproduct/views/templates/hook/index.php create mode 100644 modules/ps_viewedproduct/views/templates/hook/ps_viewedproduct.tpl create mode 100644 modules/ps_viewedproduct/views/templates/index.php create mode 100644 preview.png create mode 100644 templates/_partials/breadcrumb.tpl create mode 100644 templates/_partials/footer.tpl create mode 100644 templates/_partials/form-errors.tpl create mode 100644 templates/_partials/form-fields.tpl create mode 100644 templates/_partials/head.tpl create mode 100644 templates/_partials/header.tpl create mode 100644 templates/_partials/javascript.tpl create mode 100644 templates/_partials/notifications.tpl create mode 100644 templates/_partials/pagination.tpl create mode 100644 templates/_partials/stylesheets.tpl create mode 100644 templates/catalog/_partials/active_filters.tpl create mode 100644 templates/catalog/_partials/category-header.tpl create mode 100644 templates/catalog/_partials/facets.tpl create mode 100644 templates/catalog/_partials/miniatures/brand.tpl create mode 100644 templates/catalog/_partials/miniatures/category.tpl create mode 100644 templates/catalog/_partials/miniatures/pack-product.tpl create mode 100644 templates/catalog/_partials/miniatures/product.tpl create mode 100644 templates/catalog/_partials/product-activation.tpl create mode 100644 templates/catalog/_partials/product-add-to-cart.tpl create mode 100644 templates/catalog/_partials/product-additional-info.tpl create mode 100644 templates/catalog/_partials/product-cover-thumbnails.tpl create mode 100644 templates/catalog/_partials/product-customization.tpl create mode 100644 templates/catalog/_partials/product-details.tpl create mode 100644 templates/catalog/_partials/product-discounts.tpl create mode 100644 templates/catalog/_partials/product-flags.tpl create mode 100644 templates/catalog/_partials/product-images-modal.tpl create mode 100644 templates/catalog/_partials/product-prices.tpl create mode 100644 templates/catalog/_partials/product-variants.tpl create mode 100644 templates/catalog/_partials/products-bottom.tpl create mode 100644 templates/catalog/_partials/products-top.tpl create mode 100644 templates/catalog/_partials/products.tpl create mode 100644 templates/catalog/_partials/quickview.tpl create mode 100644 templates/catalog/_partials/sort-orders.tpl create mode 100644 templates/catalog/_partials/variant-links.tpl create mode 100644 templates/catalog/brands.tpl create mode 100644 templates/catalog/listing/best-sales.tpl create mode 100644 templates/catalog/listing/category.tpl create mode 100644 templates/catalog/listing/manufacturer.tpl create mode 100644 templates/catalog/listing/new-products.tpl create mode 100644 templates/catalog/listing/prices-drop.tpl create mode 100644 templates/catalog/listing/product-list.tpl create mode 100644 templates/catalog/listing/search.tpl create mode 100644 templates/catalog/listing/supplier.tpl create mode 100644 templates/catalog/manufacturers.tpl create mode 100644 templates/catalog/product.tpl create mode 100644 templates/catalog/suppliers.tpl create mode 100644 templates/checkout/_partials/address-form.tpl create mode 100644 templates/checkout/_partials/address-selector-block.tpl create mode 100644 templates/checkout/_partials/cart-detailed-actions.tpl create mode 100644 templates/checkout/_partials/cart-detailed-product-line.tpl create mode 100644 templates/checkout/_partials/cart-detailed-totals.tpl create mode 100644 templates/checkout/_partials/cart-detailed.tpl create mode 100644 templates/checkout/_partials/cart-summary-items-subtotal.tpl create mode 100644 templates/checkout/_partials/cart-summary-product-line.tpl create mode 100644 templates/checkout/_partials/cart-summary-subtotals.tpl create mode 100644 templates/checkout/_partials/cart-summary-totals.tpl create mode 100644 templates/checkout/_partials/cart-summary.tpl create mode 100644 templates/checkout/_partials/cart-voucher.tpl create mode 100644 templates/checkout/_partials/customer-form.tpl create mode 100644 templates/checkout/_partials/footer.tpl create mode 100644 templates/checkout/_partials/header.tpl create mode 100644 templates/checkout/_partials/login-form.tpl create mode 100644 templates/checkout/_partials/order-confirmation-table.tpl create mode 100755 templates/checkout/_partials/order-final-summary-table.tpl create mode 100755 templates/checkout/_partials/order-final-summary.tpl create mode 100644 templates/checkout/_partials/steps/addresses.tpl create mode 100644 templates/checkout/_partials/steps/checkout-step.tpl create mode 100644 templates/checkout/_partials/steps/payment.tpl create mode 100644 templates/checkout/_partials/steps/personal-information.tpl create mode 100644 templates/checkout/_partials/steps/shipping.tpl create mode 100644 templates/checkout/_partials/steps/unreachable.tpl create mode 100644 templates/checkout/cart-empty.tpl create mode 100644 templates/checkout/cart.tpl create mode 100644 templates/checkout/checkout-process.tpl create mode 100644 templates/checkout/checkout.tpl create mode 100644 templates/checkout/order-confirmation.tpl create mode 100644 templates/cms/_partials/sitemap-nested-list.tpl create mode 100644 templates/cms/category.tpl create mode 100644 templates/cms/page.tpl create mode 100644 templates/cms/sitemap.tpl create mode 100644 templates/cms/stores.tpl create mode 100644 templates/contact.tpl create mode 100644 templates/customer/_partials/address-form.tpl create mode 100644 templates/customer/_partials/block-address.tpl create mode 100644 templates/customer/_partials/customer-form.tpl create mode 100644 templates/customer/_partials/login-form.tpl create mode 100644 templates/customer/_partials/my-account-links.tpl create mode 100644 templates/customer/_partials/order-detail-no-return.tpl create mode 100644 templates/customer/_partials/order-detail-return.tpl create mode 100644 templates/customer/_partials/order-messages.tpl create mode 100644 templates/customer/address.tpl create mode 100644 templates/customer/addresses.tpl create mode 100644 templates/customer/authentication.tpl create mode 100644 templates/customer/discount.tpl create mode 100644 templates/customer/guest-login.tpl create mode 100644 templates/customer/guest-tracking.tpl create mode 100644 templates/customer/history.tpl create mode 100644 templates/customer/identity.tpl create mode 100644 templates/customer/my-account.tpl create mode 100644 templates/customer/order-detail.tpl create mode 100644 templates/customer/order-follow.tpl create mode 100644 templates/customer/order-return.tpl create mode 100644 templates/customer/order-slip.tpl create mode 100644 templates/customer/page.tpl create mode 100644 templates/customer/password-email.tpl create mode 100644 templates/customer/password-infos.tpl create mode 100644 templates/customer/password-new.tpl create mode 100644 templates/customer/registration.tpl create mode 100644 templates/errors/404.tpl create mode 100644 templates/errors/forbidden.tpl create mode 100644 templates/errors/maintenance.tpl create mode 100644 templates/errors/not-found.tpl create mode 100644 templates/errors/restricted-country.tpl create mode 100644 templates/errors/static/500.html create mode 100644 templates/errors/static/503.html create mode 100644 templates/index.tpl create mode 100644 templates/layouts/layout-both-columns.tpl create mode 100644 templates/layouts/layout-content-only.tpl create mode 100644 templates/layouts/layout-error.tpl create mode 100644 templates/layouts/layout-full-width.tpl create mode 100644 templates/layouts/layout-left-column.tpl create mode 100644 templates/layouts/layout-right-column.tpl create mode 100644 templates/page.tpl diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..2a78ee2 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,6 @@ +root = true + +[*] +indent_size = 2 +indent_style = space + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3c3629e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +node_modules diff --git a/_dev/elegance.css b/_dev/elegance.css new file mode 100644 index 0000000..1778147 --- /dev/null +++ b/_dev/elegance.css @@ -0,0 +1,15 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +body { + @apply bg-white; + @apply text-gray-700; + @apply font-medium; +} + +.icon-tabler { + stroke-width: 1px; + fill: none; + @apply stroke-current; +} diff --git a/_dev/package.json b/_dev/package.json new file mode 100644 index 0000000..ef84977 --- /dev/null +++ b/_dev/package.json @@ -0,0 +1,12 @@ +{ + "name": "elegance", + "version": "1.0.0", + "main": "index.js", + "license": "MIT", + "devDependencies": { + "tailwindcss": "^3.3.5" + }, + "scripts": { + "dev": "tailwindcss -i ./elegance.css -o ../assets/css/theme.css --watch" + } +} diff --git a/_dev/tailwind.config.js b/_dev/tailwind.config.js new file mode 100644 index 0000000..c2ef0e9 --- /dev/null +++ b/_dev/tailwind.config.js @@ -0,0 +1,12 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ["../templates/**/*.tpl", "../modules/**/*.tpl"], + theme: { + fontFamily: { + sans: ["Cairo"], + serif: ["Cairo"] + } + }, + plugins: [], +} + diff --git a/_dev/yarn.lock b/_dev/yarn.lock new file mode 100644 index 0000000..8f99ffd --- /dev/null +++ b/_dev/yarn.lock @@ -0,0 +1,552 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@alloc/quick-lru@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30" + integrity sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw== + +"@jridgewell/gen-mapping@^0.3.2": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== + dependencies: + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + +"@jridgewell/set-array@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@^0.3.9": + version "0.3.20" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" + integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +any-promise@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== + +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" + integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg== + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +camelcase-css@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" + integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== + +chokidar@^3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +commander@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +didyoumean@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" + integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== + +dlv@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" + integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== + +fast-glob@^3.3.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4" + integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + +fastq@^1.6.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== + dependencies: + reusify "^1.0.4" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +glob-parent@^5.1.2, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + +glob@7.1.6: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +hasown@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" + integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== + dependencies: + function-bind "^1.1.2" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-core-module@^2.13.0: + version "2.13.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + dependencies: + hasown "^2.0.0" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +jiti@^1.19.1: + version "1.21.0" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" + integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== + +lilconfig@^2.0.5, lilconfig@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== + +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +micromatch@^4.0.4, micromatch@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + dependencies: + braces "^3.0.2" + picomatch "^2.3.1" + +minimatch@^3.0.4: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +mz@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + +nanoid@^3.3.6: + version "3.3.6" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +object-assign@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-hash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== + +pirates@^4.0.1: + version "4.0.6" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== + +postcss-import@^15.1.0: + version "15.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70" + integrity sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew== + dependencies: + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-js@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.1.tgz#61598186f3703bab052f1c4f7d805f3991bee9d2" + integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw== + dependencies: + camelcase-css "^2.0.1" + +postcss-load-config@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-4.0.1.tgz#152383f481c2758274404e4962743191d73875bd" + integrity sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA== + dependencies: + lilconfig "^2.0.5" + yaml "^2.1.1" + +postcss-nested@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-6.0.1.tgz#f83dc9846ca16d2f4fa864f16e9d9f7d0961662c" + integrity sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ== + dependencies: + postcss-selector-parser "^6.0.11" + +postcss-selector-parser@^6.0.11: + version "6.0.13" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b" + integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss-value-parser@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + +postcss@^8.4.23: + version "8.4.31" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" + integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== + dependencies: + nanoid "^3.3.6" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== + dependencies: + pify "^2.3.0" + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +resolve@^1.1.7, resolve@^1.22.2: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + +sucrase@^3.32.0: + version "3.34.0" + resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.34.0.tgz#1e0e2d8fcf07f8b9c3569067d92fbd8690fb576f" + integrity sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.2" + commander "^4.0.0" + glob "7.1.6" + lines-and-columns "^1.1.6" + mz "^2.7.0" + pirates "^4.0.1" + ts-interface-checker "^0.1.9" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +tailwindcss@^3.3.5: + version "3.3.5" + resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.3.5.tgz#22a59e2fbe0ecb6660809d9cc5f3976b077be3b8" + integrity sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA== + dependencies: + "@alloc/quick-lru" "^5.2.0" + arg "^5.0.2" + chokidar "^3.5.3" + didyoumean "^1.2.2" + dlv "^1.1.3" + fast-glob "^3.3.0" + glob-parent "^6.0.2" + is-glob "^4.0.3" + jiti "^1.19.1" + lilconfig "^2.1.0" + micromatch "^4.0.5" + normalize-path "^3.0.0" + object-hash "^3.0.0" + picocolors "^1.0.0" + postcss "^8.4.23" + postcss-import "^15.1.0" + postcss-js "^4.0.1" + postcss-load-config "^4.0.1" + postcss-nested "^6.0.1" + postcss-selector-parser "^6.0.11" + resolve "^1.22.2" + sucrase "^3.32.0" + +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA== + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.1" + resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" + integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== + dependencies: + any-promise "^1.0.0" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +ts-interface-checker@^0.1.9: + version "0.1.13" + resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" + integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== + +util-deprecate@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +yaml@^2.1.1: + version "2.3.3" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.3.tgz#01f6d18ef036446340007db8e016810e5d64aad9" + integrity sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ== diff --git a/assets/css/elegance.css b/assets/css/elegance.css new file mode 100644 index 0000000..2fc9a8e --- /dev/null +++ b/assets/css/elegance.css @@ -0,0 +1,647 @@ +/* +! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com +*/ + +/* +1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4) +2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116) +*/ + +*, +::before, +::after { + box-sizing: border-box; + /* 1 */ + border-width: 0; + /* 2 */ + border-style: solid; + /* 2 */ + border-color: #e5e7eb; + /* 2 */ +} + +::before, +::after { + --tw-content: ''; +} + +/* +1. Use a consistent sensible line-height in all browsers. +2. Prevent adjustments of font size after orientation changes in iOS. +3. Use a more readable tab size. +4. Use the user's configured `sans` font-family by default. +5. Use the user's configured `sans` font-feature-settings by default. +6. Use the user's configured `sans` font-variation-settings by default. +*/ + +html { + line-height: 1.5; + /* 1 */ + -webkit-text-size-adjust: 100%; + /* 2 */ + -moz-tab-size: 4; + /* 3 */ + -o-tab-size: 4; + tab-size: 4; + /* 3 */ + font-family: Cairo; + /* 4 */ + font-feature-settings: normal; + /* 5 */ + font-variation-settings: normal; + /* 6 */ +} + +/* +1. Remove the margin in all browsers. +2. Inherit line-height from `html` so users can set them as a class directly on the `html` element. +*/ + +body { + margin: 0; + /* 1 */ + line-height: inherit; + /* 2 */ +} + +/* +1. Add the correct height in Firefox. +2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655) +3. Ensure horizontal rules are visible by default. +*/ + +hr { + height: 0; + /* 1 */ + color: inherit; + /* 2 */ + border-top-width: 1px; + /* 3 */ +} + +/* +Add the correct text decoration in Chrome, Edge, and Safari. +*/ + +abbr:where([title]) { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; +} + +/* +Remove the default font size and weight for headings. +*/ + +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: inherit; + font-weight: inherit; +} + +/* +Reset links to optimize for opt-in styling instead of opt-out. +*/ + +a { + color: inherit; + text-decoration: inherit; +} + +/* +Add the correct font weight in Edge and Safari. +*/ + +b, +strong { + font-weight: bolder; +} + +/* +1. Use the user's configured `mono` font family by default. +2. Correct the odd `em` font sizing in all browsers. +*/ + +code, +kbd, +samp, +pre { + font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + /* 1 */ + font-size: 1em; + /* 2 */ +} + +/* +Add the correct font size in all browsers. +*/ + +small { + font-size: 80%; +} + +/* +Prevent `sub` and `sup` elements from affecting the line height in all browsers. +*/ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* +1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297) +2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016) +3. Remove gaps between table borders by default. +*/ + +table { + text-indent: 0; + /* 1 */ + border-color: inherit; + /* 2 */ + border-collapse: collapse; + /* 3 */ +} + +/* +1. Change the font styles in all browsers. +2. Remove the margin in Firefox and Safari. +3. Remove default padding in all browsers. +*/ + +button, +input, +optgroup, +select, +textarea { + font-family: inherit; + /* 1 */ + font-feature-settings: inherit; + /* 1 */ + font-variation-settings: inherit; + /* 1 */ + font-size: 100%; + /* 1 */ + font-weight: inherit; + /* 1 */ + line-height: inherit; + /* 1 */ + color: inherit; + /* 1 */ + margin: 0; + /* 2 */ + padding: 0; + /* 3 */ +} + +/* +Remove the inheritance of text transform in Edge and Firefox. +*/ + +button, +select { + text-transform: none; +} + +/* +1. Correct the inability to style clickable types in iOS and Safari. +2. Remove default button styles. +*/ + +button, +[type='button'], +[type='reset'], +[type='submit'] { + -webkit-appearance: button; + /* 1 */ + background-color: transparent; + /* 2 */ + background-image: none; + /* 2 */ +} + +/* +Use the modern Firefox focus style for all focusable elements. +*/ + +:-moz-focusring { + outline: auto; +} + +/* +Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737) +*/ + +:-moz-ui-invalid { + box-shadow: none; +} + +/* +Add the correct vertical alignment in Chrome and Firefox. +*/ + +progress { + vertical-align: baseline; +} + +/* +Correct the cursor style of increment and decrement buttons in Safari. +*/ + +::-webkit-inner-spin-button, +::-webkit-outer-spin-button { + height: auto; +} + +/* +1. Correct the odd appearance in Chrome and Safari. +2. Correct the outline style in Safari. +*/ + +[type='search'] { + -webkit-appearance: textfield; + /* 1 */ + outline-offset: -2px; + /* 2 */ +} + +/* +Remove the inner padding in Chrome and Safari on macOS. +*/ + +::-webkit-search-decoration { + -webkit-appearance: none; +} + +/* +1. Correct the inability to style clickable types in iOS and Safari. +2. Change font properties to `inherit` in Safari. +*/ + +::-webkit-file-upload-button { + -webkit-appearance: button; + /* 1 */ + font: inherit; + /* 2 */ +} + +/* +Add the correct display in Chrome and Safari. +*/ + +summary { + display: list-item; +} + +/* +Removes the default spacing and border for appropriate elements. +*/ + +blockquote, +dl, +dd, +h1, +h2, +h3, +h4, +h5, +h6, +hr, +figure, +p, +pre { + margin: 0; +} + +fieldset { + margin: 0; + padding: 0; +} + +legend { + padding: 0; +} + +ol, +ul, +menu { + list-style: none; + margin: 0; + padding: 0; +} + +/* +Reset default styling for dialogs. +*/ + +dialog { + padding: 0; +} + +/* +Prevent resizing textareas horizontally by default. +*/ + +textarea { + resize: vertical; +} + +/* +1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300) +2. Set the default placeholder color to the user's configured gray 400 color. +*/ + +input::-moz-placeholder, textarea::-moz-placeholder { + opacity: 1; + /* 1 */ + color: #9ca3af; + /* 2 */ +} + +input::placeholder, +textarea::placeholder { + opacity: 1; + /* 1 */ + color: #9ca3af; + /* 2 */ +} + +/* +Set the default cursor for buttons. +*/ + +button, +[role="button"] { + cursor: pointer; +} + +/* +Make sure disabled buttons don't get the pointer cursor. +*/ + +:disabled { + cursor: default; +} + +/* +1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14) +2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210) + This can trigger a poorly considered lint error in some tools but is included by design. +*/ + +img, +svg, +video, +canvas, +audio, +iframe, +embed, +object { + display: block; + /* 1 */ + vertical-align: middle; + /* 2 */ +} + +/* +Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14) +*/ + +img, +video { + max-width: 100%; + height: auto; +} + +/* Make elements with the HTML hidden attribute stay hidden by default */ + +[hidden] { + display: none; +} + +*, ::before, ::after { + --tw-border-spacing-x: 0; + --tw-border-spacing-y: 0; + --tw-translate-x: 0; + --tw-translate-y: 0; + --tw-rotate: 0; + --tw-skew-x: 0; + --tw-skew-y: 0; + --tw-scale-x: 1; + --tw-scale-y: 1; + --tw-pan-x: ; + --tw-pan-y: ; + --tw-pinch-zoom: ; + --tw-scroll-snap-strictness: proximity; + --tw-gradient-from-position: ; + --tw-gradient-via-position: ; + --tw-gradient-to-position: ; + --tw-ordinal: ; + --tw-slashed-zero: ; + --tw-numeric-figure: ; + --tw-numeric-spacing: ; + --tw-numeric-fraction: ; + --tw-ring-inset: ; + --tw-ring-offset-width: 0px; + --tw-ring-offset-color: #fff; + --tw-ring-color: rgb(59 130 246 / 0.5); + --tw-ring-offset-shadow: 0 0 #0000; + --tw-ring-shadow: 0 0 #0000; + --tw-shadow: 0 0 #0000; + --tw-shadow-colored: 0 0 #0000; + --tw-blur: ; + --tw-brightness: ; + --tw-contrast: ; + --tw-grayscale: ; + --tw-hue-rotate: ; + --tw-invert: ; + --tw-saturate: ; + --tw-sepia: ; + --tw-drop-shadow: ; + --tw-backdrop-blur: ; + --tw-backdrop-brightness: ; + --tw-backdrop-contrast: ; + --tw-backdrop-grayscale: ; + --tw-backdrop-hue-rotate: ; + --tw-backdrop-invert: ; + --tw-backdrop-opacity: ; + --tw-backdrop-saturate: ; + --tw-backdrop-sepia: ; +} + +::backdrop { + --tw-border-spacing-x: 0; + --tw-border-spacing-y: 0; + --tw-translate-x: 0; + --tw-translate-y: 0; + --tw-rotate: 0; + --tw-skew-x: 0; + --tw-skew-y: 0; + --tw-scale-x: 1; + --tw-scale-y: 1; + --tw-pan-x: ; + --tw-pan-y: ; + --tw-pinch-zoom: ; + --tw-scroll-snap-strictness: proximity; + --tw-gradient-from-position: ; + --tw-gradient-via-position: ; + --tw-gradient-to-position: ; + --tw-ordinal: ; + --tw-slashed-zero: ; + --tw-numeric-figure: ; + --tw-numeric-spacing: ; + --tw-numeric-fraction: ; + --tw-ring-inset: ; + --tw-ring-offset-width: 0px; + --tw-ring-offset-color: #fff; + --tw-ring-color: rgb(59 130 246 / 0.5); + --tw-ring-offset-shadow: 0 0 #0000; + --tw-ring-shadow: 0 0 #0000; + --tw-shadow: 0 0 #0000; + --tw-shadow-colored: 0 0 #0000; + --tw-blur: ; + --tw-brightness: ; + --tw-contrast: ; + --tw-grayscale: ; + --tw-hue-rotate: ; + --tw-invert: ; + --tw-saturate: ; + --tw-sepia: ; + --tw-drop-shadow: ; + --tw-backdrop-blur: ; + --tw-backdrop-brightness: ; + --tw-backdrop-contrast: ; + --tw-backdrop-grayscale: ; + --tw-backdrop-hue-rotate: ; + --tw-backdrop-invert: ; + --tw-backdrop-opacity: ; + --tw-backdrop-saturate: ; + --tw-backdrop-sepia: ; +} + +.container { + width: 100%; +} + +@media (min-width: 640px) { + .container { + max-width: 640px; + } +} + +@media (min-width: 768px) { + .container { + max-width: 768px; + } +} + +@media (min-width: 1024px) { + .container { + max-width: 1024px; + } +} + +@media (min-width: 1280px) { + .container { + max-width: 1280px; + } +} + +@media (min-width: 1536px) { + .container { + max-width: 1536px; + } +} + +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; +} + +.collapse { + visibility: collapse; +} + +.my-2 { + margin-top: 0.5rem; + margin-bottom: 0.5rem; +} + +.ml-1 { + margin-left: 0.25rem; +} + +.mt-1 { + margin-top: 0.25rem; +} + +.mt-2 { + margin-top: 0.5rem; +} + +.mt-3 { + margin-top: 0.75rem; +} + +.block { + display: block; +} + +.inline { + display: inline; +} + +.table { + display: table; +} + +.hidden { + display: none; +} + +.truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.pr-0 { + padding-right: 0px; +} + +.text-justify { + text-align: justify; +} + +.filter { + filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); +} + +body { + --tw-bg-opacity: 1; + background-color: rgb(243 244 246 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(55 65 81 / var(--tw-text-opacity)); +} diff --git a/assets/css/theme.css b/assets/css/theme.css new file mode 100644 index 0000000..eecf40a --- /dev/null +++ b/assets/css/theme.css @@ -0,0 +1,994 @@ +/* +! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com +*/ + +/* +1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4) +2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116) +*/ + +*, +::before, +::after { + box-sizing: border-box; + /* 1 */ + border-width: 0; + /* 2 */ + border-style: solid; + /* 2 */ + border-color: #e5e7eb; + /* 2 */ +} + +::before, +::after { + --tw-content: ''; +} + +/* +1. Use a consistent sensible line-height in all browsers. +2. Prevent adjustments of font size after orientation changes in iOS. +3. Use a more readable tab size. +4. Use the user's configured `sans` font-family by default. +5. Use the user's configured `sans` font-feature-settings by default. +6. Use the user's configured `sans` font-variation-settings by default. +*/ + +html { + line-height: 1.5; + /* 1 */ + -webkit-text-size-adjust: 100%; + /* 2 */ + -moz-tab-size: 4; + /* 3 */ + -o-tab-size: 4; + tab-size: 4; + /* 3 */ + font-family: Cairo; + /* 4 */ + font-feature-settings: normal; + /* 5 */ + font-variation-settings: normal; + /* 6 */ +} + +/* +1. Remove the margin in all browsers. +2. Inherit line-height from `html` so users can set them as a class directly on the `html` element. +*/ + +body { + margin: 0; + /* 1 */ + line-height: inherit; + /* 2 */ +} + +/* +1. Add the correct height in Firefox. +2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655) +3. Ensure horizontal rules are visible by default. +*/ + +hr { + height: 0; + /* 1 */ + color: inherit; + /* 2 */ + border-top-width: 1px; + /* 3 */ +} + +/* +Add the correct text decoration in Chrome, Edge, and Safari. +*/ + +abbr:where([title]) { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; +} + +/* +Remove the default font size and weight for headings. +*/ + +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: inherit; + font-weight: inherit; +} + +/* +Reset links to optimize for opt-in styling instead of opt-out. +*/ + +a { + color: inherit; + text-decoration: inherit; +} + +/* +Add the correct font weight in Edge and Safari. +*/ + +b, +strong { + font-weight: bolder; +} + +/* +1. Use the user's configured `mono` font family by default. +2. Correct the odd `em` font sizing in all browsers. +*/ + +code, +kbd, +samp, +pre { + font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + /* 1 */ + font-size: 1em; + /* 2 */ +} + +/* +Add the correct font size in all browsers. +*/ + +small { + font-size: 80%; +} + +/* +Prevent `sub` and `sup` elements from affecting the line height in all browsers. +*/ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* +1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297) +2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016) +3. Remove gaps between table borders by default. +*/ + +table { + text-indent: 0; + /* 1 */ + border-color: inherit; + /* 2 */ + border-collapse: collapse; + /* 3 */ +} + +/* +1. Change the font styles in all browsers. +2. Remove the margin in Firefox and Safari. +3. Remove default padding in all browsers. +*/ + +button, +input, +optgroup, +select, +textarea { + font-family: inherit; + /* 1 */ + font-feature-settings: inherit; + /* 1 */ + font-variation-settings: inherit; + /* 1 */ + font-size: 100%; + /* 1 */ + font-weight: inherit; + /* 1 */ + line-height: inherit; + /* 1 */ + color: inherit; + /* 1 */ + margin: 0; + /* 2 */ + padding: 0; + /* 3 */ +} + +/* +Remove the inheritance of text transform in Edge and Firefox. +*/ + +button, +select { + text-transform: none; +} + +/* +1. Correct the inability to style clickable types in iOS and Safari. +2. Remove default button styles. +*/ + +button, +[type='button'], +[type='reset'], +[type='submit'] { + -webkit-appearance: button; + /* 1 */ + background-color: transparent; + /* 2 */ + background-image: none; + /* 2 */ +} + +/* +Use the modern Firefox focus style for all focusable elements. +*/ + +:-moz-focusring { + outline: auto; +} + +/* +Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737) +*/ + +:-moz-ui-invalid { + box-shadow: none; +} + +/* +Add the correct vertical alignment in Chrome and Firefox. +*/ + +progress { + vertical-align: baseline; +} + +/* +Correct the cursor style of increment and decrement buttons in Safari. +*/ + +::-webkit-inner-spin-button, +::-webkit-outer-spin-button { + height: auto; +} + +/* +1. Correct the odd appearance in Chrome and Safari. +2. Correct the outline style in Safari. +*/ + +[type='search'] { + -webkit-appearance: textfield; + /* 1 */ + outline-offset: -2px; + /* 2 */ +} + +/* +Remove the inner padding in Chrome and Safari on macOS. +*/ + +::-webkit-search-decoration { + -webkit-appearance: none; +} + +/* +1. Correct the inability to style clickable types in iOS and Safari. +2. Change font properties to `inherit` in Safari. +*/ + +::-webkit-file-upload-button { + -webkit-appearance: button; + /* 1 */ + font: inherit; + /* 2 */ +} + +/* +Add the correct display in Chrome and Safari. +*/ + +summary { + display: list-item; +} + +/* +Removes the default spacing and border for appropriate elements. +*/ + +blockquote, +dl, +dd, +h1, +h2, +h3, +h4, +h5, +h6, +hr, +figure, +p, +pre { + margin: 0; +} + +fieldset { + margin: 0; + padding: 0; +} + +legend { + padding: 0; +} + +ol, +ul, +menu { + list-style: none; + margin: 0; + padding: 0; +} + +/* +Reset default styling for dialogs. +*/ + +dialog { + padding: 0; +} + +/* +Prevent resizing textareas horizontally by default. +*/ + +textarea { + resize: vertical; +} + +/* +1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300) +2. Set the default placeholder color to the user's configured gray 400 color. +*/ + +input::-moz-placeholder, textarea::-moz-placeholder { + opacity: 1; + /* 1 */ + color: #9ca3af; + /* 2 */ +} + +input::placeholder, +textarea::placeholder { + opacity: 1; + /* 1 */ + color: #9ca3af; + /* 2 */ +} + +/* +Set the default cursor for buttons. +*/ + +button, +[role="button"] { + cursor: pointer; +} + +/* +Make sure disabled buttons don't get the pointer cursor. +*/ + +:disabled { + cursor: default; +} + +/* +1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14) +2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210) + This can trigger a poorly considered lint error in some tools but is included by design. +*/ + +img, +svg, +video, +canvas, +audio, +iframe, +embed, +object { + display: block; + /* 1 */ + vertical-align: middle; + /* 2 */ +} + +/* +Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14) +*/ + +img, +video { + max-width: 100%; + height: auto; +} + +/* Make elements with the HTML hidden attribute stay hidden by default */ + +[hidden] { + display: none; +} + +*, ::before, ::after { + --tw-border-spacing-x: 0; + --tw-border-spacing-y: 0; + --tw-translate-x: 0; + --tw-translate-y: 0; + --tw-rotate: 0; + --tw-skew-x: 0; + --tw-skew-y: 0; + --tw-scale-x: 1; + --tw-scale-y: 1; + --tw-pan-x: ; + --tw-pan-y: ; + --tw-pinch-zoom: ; + --tw-scroll-snap-strictness: proximity; + --tw-gradient-from-position: ; + --tw-gradient-via-position: ; + --tw-gradient-to-position: ; + --tw-ordinal: ; + --tw-slashed-zero: ; + --tw-numeric-figure: ; + --tw-numeric-spacing: ; + --tw-numeric-fraction: ; + --tw-ring-inset: ; + --tw-ring-offset-width: 0px; + --tw-ring-offset-color: #fff; + --tw-ring-color: rgb(59 130 246 / 0.5); + --tw-ring-offset-shadow: 0 0 #0000; + --tw-ring-shadow: 0 0 #0000; + --tw-shadow: 0 0 #0000; + --tw-shadow-colored: 0 0 #0000; + --tw-blur: ; + --tw-brightness: ; + --tw-contrast: ; + --tw-grayscale: ; + --tw-hue-rotate: ; + --tw-invert: ; + --tw-saturate: ; + --tw-sepia: ; + --tw-drop-shadow: ; + --tw-backdrop-blur: ; + --tw-backdrop-brightness: ; + --tw-backdrop-contrast: ; + --tw-backdrop-grayscale: ; + --tw-backdrop-hue-rotate: ; + --tw-backdrop-invert: ; + --tw-backdrop-opacity: ; + --tw-backdrop-saturate: ; + --tw-backdrop-sepia: ; +} + +::backdrop { + --tw-border-spacing-x: 0; + --tw-border-spacing-y: 0; + --tw-translate-x: 0; + --tw-translate-y: 0; + --tw-rotate: 0; + --tw-skew-x: 0; + --tw-skew-y: 0; + --tw-scale-x: 1; + --tw-scale-y: 1; + --tw-pan-x: ; + --tw-pan-y: ; + --tw-pinch-zoom: ; + --tw-scroll-snap-strictness: proximity; + --tw-gradient-from-position: ; + --tw-gradient-via-position: ; + --tw-gradient-to-position: ; + --tw-ordinal: ; + --tw-slashed-zero: ; + --tw-numeric-figure: ; + --tw-numeric-spacing: ; + --tw-numeric-fraction: ; + --tw-ring-inset: ; + --tw-ring-offset-width: 0px; + --tw-ring-offset-color: #fff; + --tw-ring-color: rgb(59 130 246 / 0.5); + --tw-ring-offset-shadow: 0 0 #0000; + --tw-ring-shadow: 0 0 #0000; + --tw-shadow: 0 0 #0000; + --tw-shadow-colored: 0 0 #0000; + --tw-blur: ; + --tw-brightness: ; + --tw-contrast: ; + --tw-grayscale: ; + --tw-hue-rotate: ; + --tw-invert: ; + --tw-saturate: ; + --tw-sepia: ; + --tw-drop-shadow: ; + --tw-backdrop-blur: ; + --tw-backdrop-brightness: ; + --tw-backdrop-contrast: ; + --tw-backdrop-grayscale: ; + --tw-backdrop-hue-rotate: ; + --tw-backdrop-invert: ; + --tw-backdrop-opacity: ; + --tw-backdrop-saturate: ; + --tw-backdrop-sepia: ; +} + +.container { + width: 100%; +} + +@media (min-width: 640px) { + .container { + max-width: 640px; + } +} + +@media (min-width: 768px) { + .container { + max-width: 768px; + } +} + +@media (min-width: 1024px) { + .container { + max-width: 1024px; + } +} + +@media (min-width: 1280px) { + .container { + max-width: 1280px; + } +} + +@media (min-width: 1536px) { + .container { + max-width: 1536px; + } +} + +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; +} + +.collapse { + visibility: collapse; +} + +.static { + position: static; +} + +.absolute { + position: absolute; +} + +.relative { + position: relative; +} + +.bottom-0 { + bottom: 0px; +} + +.bottom-\[50\%\] { + bottom: 50%; +} + +.left-0 { + left: 0px; +} + +.left-\[100\%\] { + left: 100%; +} + +.right-0 { + right: 0px; +} + +.top-0 { + top: 0px; +} + +.z-0 { + z-index: 0; +} + +.z-10 { + z-index: 10; +} + +.mx-auto { + margin-left: auto; + margin-right: auto; +} + +.my-2 { + margin-top: 0.5rem; + margin-bottom: 0.5rem; +} + +.my-4 { + margin-top: 1rem; + margin-bottom: 1rem; +} + +.ml-1 { + margin-left: 0.25rem; +} + +.mt-1 { + margin-top: 0.25rem; +} + +.mt-2 { + margin-top: 0.5rem; +} + +.mt-3 { + margin-top: 0.75rem; +} + +.mb-8 { + margin-bottom: 2rem; +} + +.mt-8 { + margin-top: 2rem; +} + +.mt-16 { + margin-top: 4rem; +} + +.mb-4 { + margin-bottom: 1rem; +} + +.block { + display: block; +} + +.inline { + display: inline; +} + +.flex { + display: flex; +} + +.table { + display: table; +} + +.grid { + display: grid; +} + +.hidden { + display: none; +} + +.aspect-square { + aspect-ratio: 1 / 1; +} + +.aspect-\[9\/16\] { + aspect-ratio: 9/16; +} + +.aspect-\[342\/513\] { + aspect-ratio: 342/513; +} + +.h-24 { + height: 6rem; +} + +.h-6 { + height: 1.5rem; +} + +.h-8 { + height: 2rem; +} + +.h-full { + height: 100%; +} + +.h-screen { + height: 100vh; +} + +.h-auto { + height: auto; +} + +.h-48 { + height: 12rem; +} + +.h-12 { + height: 3rem; +} + +.h-52 { + height: 13rem; +} + +.h-96 { + height: 24rem; +} + +.w-6 { + width: 1.5rem; +} + +.w-8 { + width: 2rem; +} + +.w-80 { + width: 20rem; +} + +.w-full { + width: 100%; +} + +.w-48 { + width: 12rem; +} + +.w-24 { + width: 6rem; +} + +.w-12 { + width: 3rem; +} + +.flex-1 { + flex: 1 1 0%; +} + +.flex-none { + flex: none; +} + +.shrink-0 { + flex-shrink: 0; +} + +.grid-cols-4 { + grid-template-columns: repeat(4, minmax(0, 1fr)); +} + +.grid-cols-2 { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.grid-cols-1 { + grid-template-columns: repeat(1, minmax(0, 1fr)); +} + +.grid-cols-3 { + grid-template-columns: repeat(3, minmax(0, 1fr)); +} + +.flex-row { + flex-direction: row; +} + +.flex-col { + flex-direction: column; +} + +.items-center { + align-items: center; +} + +.justify-center { + justify-content: center; +} + +.justify-between { + justify-content: space-between; +} + +.gap-4 { + gap: 1rem; +} + +.gap-8 { + gap: 2rem; +} + +.gap-16 { + gap: 4rem; +} + +.truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.bg-slate-400 { + --tw-bg-opacity: 1; + background-color: rgb(148 163 184 / var(--tw-bg-opacity)); +} + +.bg-gray-400 { + --tw-bg-opacity: 1; + background-color: rgb(156 163 175 / var(--tw-bg-opacity)); +} + +.bg-gray-200 { + --tw-bg-opacity: 1; + background-color: rgb(229 231 235 / var(--tw-bg-opacity)); +} + +.bg-cover { + background-size: cover; +} + +.object-cover { + -o-object-fit: cover; + object-fit: cover; +} + +.px-2 { + padding-left: 0.5rem; + padding-right: 0.5rem; +} + +.py-1 { + padding-top: 0.25rem; + padding-bottom: 0.25rem; +} + +.py-2 { + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.py-8 { + padding-top: 2rem; + padding-bottom: 2rem; +} + +.pl-2 { + padding-left: 0.5rem; +} + +.pr-0 { + padding-right: 0px; +} + +.pr-8 { + padding-right: 2rem; +} + +.text-justify { + text-align: justify; +} + +.text-2xl { + font-size: 1.5rem; + line-height: 2rem; +} + +.text-lg { + font-size: 1.125rem; + line-height: 1.75rem; +} + +.text-sm { + font-size: 0.875rem; + line-height: 1.25rem; +} + +.text-3xl { + font-size: 1.875rem; + line-height: 2.25rem; +} + +.text-base { + font-size: 1rem; + line-height: 1.5rem; +} + +.text-xl { + font-size: 1.25rem; + line-height: 1.75rem; +} + +.font-bold { + font-weight: 700; +} + +.filter { + filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); +} + +body { + --tw-bg-opacity: 1; + background-color: rgb(255 255 255 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(55 65 81 / var(--tw-text-opacity)); + font-weight: 500; +} + +.icon-tabler { + stroke-width: 1px; + fill: none; + stroke: currentColor; +} + +@media (min-width: 768px) { + .md\:flex { + display: flex; + } + + .md\:grid-cols-4 { + grid-template-columns: repeat(4, minmax(0, 1fr)); + } + + .md\:grid-cols-3 { + grid-template-columns: repeat(3, minmax(0, 1fr)); + } + + .md\:grid-cols-2 { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + +@media (min-width: 1024px) { + .lg\:flex { + display: flex; + } + + .lg\:flex-1 { + flex: 1 1 0%; + } + + .lg\:grid-cols-4 { + grid-template-columns: repeat(4, minmax(0, 1fr)); + } + + .lg\:items-center { + align-items: center; + } +} diff --git a/assets/js/custom.js b/assets/js/custom.js new file mode 100644 index 0000000..f4c0bc8 --- /dev/null +++ b/assets/js/custom.js @@ -0,0 +1,4 @@ +/* + * Custom code goes here. + * A template should always ship with an empty custom.js + */ diff --git a/assets/js/theme.js b/assets/js/theme.js new file mode 100644 index 0000000..d1b0e87 --- /dev/null +++ b/assets/js/theme.js @@ -0,0 +1 @@ +!function(t){function e(i){if(n[i])return n[i].exports;var r=n[i]={i:i,l:!1,exports:{}};return t[i].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var n={};e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,i){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:i})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=26)}([function(t,e){t.exports=jQuery},function(t,e){t.exports=prestashop},function(t,e,n){"use strict";function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var n=0;n5&&function(){var t=0;(0,a.default)(e).find(".color").each(function(e,n){e>4&&((0,a.default)(n).hide(),t++)}),(0,a.default)(e).find(".js-count").append("+"+t)}()})}}]),t}();e.default=s,t.exports=e.default},function(t,e,n){"use strict";var i,r;!function(t){function e(t){var e=t.length,i=n.type(t);return"function"!==i&&!n.isWindow(t)&&(!(1!==t.nodeType||!e)||("array"===i||0===e||"number"==typeof e&&e>0&&e-1 in t))}if(!t.jQuery){var n=function t(e,n){return new t.fn.init(e,n)};n.isWindow=function(t){return t&&t===t.window},n.type=function(t){return t?"object"==typeof t||"function"==typeof t?r[a.call(t)]||"object":typeof t:t+""},n.isArray=Array.isArray||function(t){return"array"===n.type(t)},n.isPlainObject=function(t){var e;if(!t||"object"!==n.type(t)||t.nodeType||n.isWindow(t))return!1;try{if(t.constructor&&!o.call(t,"constructor")&&!o.call(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}for(e in t);return void 0===e||o.call(t,e)},n.each=function(t,n,i){var r=0,o=t.length,a=e(t);if(i){if(a)for(;r0?r=a:n=a}while(Math.abs(o)>v&&++s=g?c(e,s):0===l?s:d(e,n,n+_)}function h(){E=!0,t===n&&i===r||f()}var m=4,g=.001,v=1e-7,y=10,b=11,_=1/(b-1),x="Float32Array"in e;if(4!==arguments.length)return!1;for(var w=0;w<4;++w)if("number"!=typeof arguments[w]||isNaN(arguments[w])||!isFinite(arguments[w]))return!1;t=Math.min(t,1),i=Math.min(i,1),t=Math.max(t,0),i=Math.max(i,0);var S=x?new Float32Array(b):new Array(b),E=!1,C=function(e){return E||h(),t===n&&i===r?e:0===e?0:1===e?1:l(p(e),n,r)};C.getControlPoints=function(){return[{x:t,y:n},{x:i,y:r}]};var T="generateBezier("+[t,n,i,r]+")";return C.toString=function(){return T},C}function f(t,e){var n=t;return _.isString(t)?E.Easings[t]||(n=!1):n=_.isArray(t)&&1===t.length?u.apply(null,t):_.isArray(t)&&2===t.length?C.apply(null,t.concat([e])):!(!_.isArray(t)||4!==t.length)&&c.apply(null,t),!1===n&&(n=E.Easings[E.defaults.easing]?E.defaults.easing:S),n}function d(t){if(t){var e=E.timestamp&&!0!==t?t:v.now(),n=E.State.calls.length;n>1e4&&(E.State.calls=r(E.State.calls),n=E.State.calls.length);for(var o=0;o4;t--){var e=n.createElement("div");if(e.innerHTML="\x3c!--[if IE "+t+"]>=0?e:Math.max(0,i+e),s=n<0?i+n:Math.min(n,i),l=s-a;if(l>0)if(o=new Array(l),this.charAt)for(r=0;r=0}:function(t,e){for(var n=0;n1e-4&&Math.abs(s.v)>1e-4))break;return o?function(t){return u[t*(u.length-1)|0]}:c}}();E.Easings={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},spring:function(t){return 1-Math.cos(4.5*t*Math.PI)*Math.exp(6*-t)}},h.each([["ease",[.25,.1,.25,1]],["ease-in",[.42,0,1,1]],["ease-out",[0,0,.58,1]],["ease-in-out",[.42,0,.58,1]],["easeInSine",[.47,0,.745,.715]],["easeOutSine",[.39,.575,.565,1]],["easeInOutSine",[.445,.05,.55,.95]],["easeInQuad",[.55,.085,.68,.53]],["easeOutQuad",[.25,.46,.45,.94]],["easeInOutQuad",[.455,.03,.515,.955]],["easeInCubic",[.55,.055,.675,.19]],["easeOutCubic",[.215,.61,.355,1]],["easeInOutCubic",[.645,.045,.355,1]],["easeInQuart",[.895,.03,.685,.22]],["easeOutQuart",[.165,.84,.44,1]],["easeInOutQuart",[.77,0,.175,1]],["easeInQuint",[.755,.05,.855,.06]],["easeOutQuint",[.23,1,.32,1]],["easeInOutQuint",[.86,0,.07,1]],["easeInExpo",[.95,.05,.795,.035]],["easeOutExpo",[.19,1,.22,1]],["easeInOutExpo",[1,0,0,1]],["easeInCirc",[.6,.04,.98,.335]],["easeOutCirc",[.075,.82,.165,1]],["easeInOutCirc",[.785,.135,.15,.86]]],function(t,e){E.Easings[e[0]]=c.apply(null,e[1])});var T=E.CSS={RegEx:{isHex:/^#([A-f\d]{3}){1,2}$/i,valueUnwrap:/^[A-z]+\((.*)\)$/i,wrappedValueAlreadyExtracted:/[0-9.]+ [0-9.]+ [0-9.]+( [0-9.]+)?/,valueSplit:/([A-z]+\(.+\))|(([A-z0-9#-.]+?)(?=\s|$))/gi},Lists:{colors:["fill","stroke","stopColor","color","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","outlineColor"],transformsBase:["translateX","translateY","scale","scaleX","scaleY","skewX","skewY","rotateZ"],transforms3D:["transformPerspective","translateZ","scaleZ","rotateX","rotateY"],units:["%","em","ex","ch","rem","vw","vh","vmin","vmax","cm","mm","Q","in","pc","pt","px","deg","grad","rad","turn","s","ms"],colorNames:{aliceblue:"240,248,255",antiquewhite:"250,235,215",aquamarine:"127,255,212",aqua:"0,255,255",azure:"240,255,255",beige:"245,245,220",bisque:"255,228,196",black:"0,0,0",blanchedalmond:"255,235,205",blueviolet:"138,43,226",blue:"0,0,255",brown:"165,42,42",burlywood:"222,184,135",cadetblue:"95,158,160",chartreuse:"127,255,0",chocolate:"210,105,30",coral:"255,127,80",cornflowerblue:"100,149,237",cornsilk:"255,248,220",crimson:"220,20,60",cyan:"0,255,255",darkblue:"0,0,139",darkcyan:"0,139,139",darkgoldenrod:"184,134,11",darkgray:"169,169,169",darkgrey:"169,169,169",darkgreen:"0,100,0",darkkhaki:"189,183,107",darkmagenta:"139,0,139",darkolivegreen:"85,107,47",darkorange:"255,140,0",darkorchid:"153,50,204",darkred:"139,0,0",darksalmon:"233,150,122",darkseagreen:"143,188,143",darkslateblue:"72,61,139",darkslategray:"47,79,79",darkturquoise:"0,206,209",darkviolet:"148,0,211",deeppink:"255,20,147",deepskyblue:"0,191,255",dimgray:"105,105,105",dimgrey:"105,105,105",dodgerblue:"30,144,255",firebrick:"178,34,34",floralwhite:"255,250,240",forestgreen:"34,139,34",fuchsia:"255,0,255",gainsboro:"220,220,220",ghostwhite:"248,248,255",gold:"255,215,0",goldenrod:"218,165,32",gray:"128,128,128",grey:"128,128,128",greenyellow:"173,255,47",green:"0,128,0",honeydew:"240,255,240",hotpink:"255,105,180",indianred:"205,92,92",indigo:"75,0,130",ivory:"255,255,240",khaki:"240,230,140",lavenderblush:"255,240,245",lavender:"230,230,250",lawngreen:"124,252,0",lemonchiffon:"255,250,205",lightblue:"173,216,230",lightcoral:"240,128,128",lightcyan:"224,255,255",lightgoldenrodyellow:"250,250,210",lightgray:"211,211,211",lightgrey:"211,211,211",lightgreen:"144,238,144",lightpink:"255,182,193",lightsalmon:"255,160,122",lightseagreen:"32,178,170",lightskyblue:"135,206,250",lightslategray:"119,136,153",lightsteelblue:"176,196,222",lightyellow:"255,255,224",limegreen:"50,205,50",lime:"0,255,0",linen:"250,240,230",magenta:"255,0,255",maroon:"128,0,0",mediumaquamarine:"102,205,170",mediumblue:"0,0,205",mediumorchid:"186,85,211",mediumpurple:"147,112,219",mediumseagreen:"60,179,113",mediumslateblue:"123,104,238",mediumspringgreen:"0,250,154",mediumturquoise:"72,209,204",mediumvioletred:"199,21,133",midnightblue:"25,25,112",mintcream:"245,255,250",mistyrose:"255,228,225",moccasin:"255,228,181",navajowhite:"255,222,173",navy:"0,0,128",oldlace:"253,245,230",olivedrab:"107,142,35",olive:"128,128,0",orangered:"255,69,0",orange:"255,165,0",orchid:"218,112,214",palegoldenrod:"238,232,170",palegreen:"152,251,152",paleturquoise:"175,238,238",palevioletred:"219,112,147",papayawhip:"255,239,213",peachpuff:"255,218,185",peru:"205,133,63",pink:"255,192,203",plum:"221,160,221",powderblue:"176,224,230",purple:"128,0,128",red:"255,0,0",rosybrown:"188,143,143",royalblue:"65,105,225",saddlebrown:"139,69,19",salmon:"250,128,114",sandybrown:"244,164,96",seagreen:"46,139,87",seashell:"255,245,238",sienna:"160,82,45",silver:"192,192,192",skyblue:"135,206,235",slateblue:"106,90,205",slategray:"112,128,144",snow:"255,250,250",springgreen:"0,255,127",steelblue:"70,130,180",tan:"210,180,140",teal:"0,128,128",thistle:"216,191,216",tomato:"255,99,71",turquoise:"64,224,208",violet:"238,130,238",wheat:"245,222,179",whitesmoke:"245,245,245",white:"255,255,255",yellowgreen:"154,205,50",yellow:"255,255,0"}},Hooks:{templates:{textShadow:["Color X Y Blur","black 0px 0px 0px"],boxShadow:["Color X Y Blur Spread","black 0px 0px 0px 0px"],clip:["Top Right Bottom Left","0px 0px 0px 0px"],backgroundPosition:["X Y","0% 0%"],transformOrigin:["X Y Z","50% 50% 0px"],perspectiveOrigin:["X Y","50% 50%"]},registered:{},register:function(){for(var t=0;t=1?"":"alpha(opacity="+parseInt(100*parseFloat(n),10)+")"}else switch(t){case"name":return"opacity";case"extract":case"inject":return n}}},register:function(){function t(t,e,n){if("border-box"===T.getPropertyValue(e,"boxSizing").toString().toLowerCase()===(n||!1)){var i,r,o=0,a="width"===t?["Left","Right"]:["Top","Bottom"],s=["padding"+a[0],"padding"+a[1],"border"+a[0]+"Width","border"+a[1]+"Width"];for(i=0;i9)||E.State.isGingerbread||(T.Lists.transformsBase=T.Lists.transformsBase.concat(T.Lists.transforms3D));for(var n=0;n8)&&3===o.split(" ").length&&(o+=" 1"),o;case"inject":return/^rgb/.test(r)?r:(m<=8?4===r.split(" ").length&&(r=r.split(/\s+/).slice(0,3).join(" ")):3===r.split(" ").length&&(r+=" 1"),(m<=8?"rgb":"rgba")+"("+r.replace(/\s+/g,",").replace(/\.(\d)+(?=,)/g,"")+")")}}}();T.Normalizations.registered.innerWidth=e("width",!0),T.Normalizations.registered.innerHeight=e("height",!0),T.Normalizations.registered.outerWidth=e("width"),T.Normalizations.registered.outerHeight=e("height")}},Names:{camelCase:function(t){return t.replace(/-(\w)/g,function(t,e){return e.toUpperCase()})},SVGAttribute:function(t){var e="width|height|x|y|cx|cy|r|rx|ry|x1|x2|y1|y2";return(m||E.State.isAndroid&&!E.State.isChrome)&&(e+="|transform"),new RegExp("^("+e+")$","i").test(t)},prefixCheck:function(t){if(E.State.prefixMatches[t])return[E.State.prefixMatches[t],!0];for(var e=["","Webkit","Moz","ms","O"],n=0,i=e.length;n=4&&"("===P?k++:(k&&k<5||k>=4&&")"===P&&--k<5)&&(k=0),0===D&&"r"===P||1===D&&"g"===P||2===D&&"b"===P||3===D&&"a"===P||D>=3&&"("===P?(3===D&&"a"===P&&(N=1),D++):N&&","===P?++N>3&&(D=N=0):(N&&D<(N?5:4)||D>=(N?4:3)&&")"===P&&--D<(N?5:4))&&(D=N=0)}}C===v.length&&A===m.length||(E.debug,a=i),a&&(I.length?(E.debug,v=I,m=O,b=x=""):a=i)}a||(y=S(r,v),v=y[0],x=y[1],y=S(r,m),m=y[0].replace(/^([+-\/*])=/,function(t,e){return w=e,""}),b=y[1],v=parseFloat(v)||0,m=parseFloat(m)||0,"%"===b&&(/^(fontSize|lineHeight)$/.test(r)?(m/=100,b="em"):/^scale/.test(r)?(m/=100,b=""):/(Red|Green|Blue)$/i.test(r)&&(m=m/100*255,b="")));if(/[\/*]/.test(w))b=x;else if(x!==b&&0!==v)if(0===m)b=x;else{s=s||function(){var i={myParent:t.parentNode||n.body,position:T.getPropertyValue(t,"position"),fontSize:T.getPropertyValue(t,"fontSize")},r=i.position===F.lastPosition&&i.myParent===F.lastParent,o=i.fontSize===F.lastFontSize;F.lastParent=i.myParent,F.lastPosition=i.position,F.lastFontSize=i.fontSize;var a={};if(o&&r)a.emToPx=F.lastEmToPx,a.percentToPxWidth=F.lastPercentToPxWidth,a.percentToPxHeight=F.lastPercentToPxHeight;else{var s=c&&c.isSVG?n.createElementNS("http://www.w3.org/2000/svg","rect"):n.createElement("div");E.init(s),i.myParent.appendChild(s),h.each(["overflow","overflowX","overflowY"],function(t,e){E.CSS.setPropertyValue(s,e,"hidden")}),E.CSS.setPropertyValue(s,"position",i.position),E.CSS.setPropertyValue(s,"fontSize",i.fontSize),E.CSS.setPropertyValue(s,"boxSizing","content-box"),h.each(["minWidth","maxWidth","width","minHeight","maxHeight","height"],function(t,e){E.CSS.setPropertyValue(s,e,"100%")}),E.CSS.setPropertyValue(s,"paddingLeft","100em"),a.percentToPxWidth=F.lastPercentToPxWidth=(parseFloat(T.getPropertyValue(s,"width",null,!0))||1)/100,a.percentToPxHeight=F.lastPercentToPxHeight=(parseFloat(T.getPropertyValue(s,"height",null,!0))||1)/100,a.emToPx=F.lastEmToPx=(parseFloat(T.getPropertyValue(s,"paddingLeft"))||1)/100,i.myParent.removeChild(s)}return null===F.remToPx&&(F.remToPx=parseFloat(T.getPropertyValue(n.body,"fontSize"))||16),null===F.vwToPx&&(F.vwToPx=parseFloat(e.innerWidth)/100,F.vhToPx=parseFloat(e.innerHeight)/100),a.remToPx=F.remToPx,a.vwToPx=F.vwToPx,a.vhToPx=F.vhToPx,E.debug,a}();var q=/margin|padding|left|right|width|text|word|letter/i.test(r)||/X$/.test(r)||"x"===r?"x":"y";switch(x){case"%":v*="x"===q?s.percentToPxWidth:s.percentToPxHeight;break;case"px":break;default:v*=s[x+"ToPx"]}switch(b){case"%":v*=1/("x"===q?s.percentToPxWidth:s.percentToPxHeight);break;case"px":break;default:v*=1/s[b+"ToPx"]}}switch(w){case"+":m=v+m;break;case"-":m=v-m;break;case"*":m*=v;break;case"/":m=v/m}u[r]={rootPropertyValue:d,startValue:v,currentValue:v,endValue:m,unitType:b,easing:g},a&&(u[r].pattern=a),E.debug};for(var L in x)if(x.hasOwnProperty(L)){var j=T.Names.camelCase(L),B=function(e,n){var i,o,a;return _.isFunction(e)&&(e=e.call(t,r,I)),_.isArray(e)?(i=e[0],!_.isArray(e[1])&&/^[\d-]/.test(e[1])||_.isFunction(e[1])||T.RegEx.isHex.test(e[1])?a=e[1]:_.isString(e[1])&&!T.RegEx.isHex.test(e[1])&&E.Easings[e[1]]||_.isArray(e[1])?(o=n?e[1]:f(e[1],l.duration),a=e[2]):a=e[1]||e[2]):i=e,n||(o=o||l.easing),_.isFunction(i)&&(i=i.call(t,r,I)),_.isFunction(a)&&(a=a.call(t,r,I)),[i||0,o,a]}(x[L]);if(b(T.Lists.colors,j)){var V=B[0],M=B[1],H=B[2];if(T.RegEx.isHex.test(V)){for(var W=["Red","Green","Blue"],U=T.Values.hexToRgb(V),q=H?T.Values.hexToRgb(H):i,z=0;z0?"up":"down"}function d(t){var e=(0,a.default)(t.currentTarget),n=e.data("update-url"),i=e.attr("value"),r=e.val();if(r!=parseInt(r)||r<0||isNaN(r))return void e.val(i);var o=r-i;0!==o&&(e.attr("value",r),s(n,c(o),e))}var h=".js-cart-line-product-quantity",m=[];l.default.on("updateCart",function(){(0,a.default)(".quickview").modal("hide")}),l.default.on("updatedCart",function(){r()}),r();var g=(0,a.default)("body"),v=function(){for(var t;m.length>0;)t=m.pop(),t.abort()},y=function(t){return(0,a.default)(t.parents(".bootstrap-touchspin").find("input"))},b=function(t){t.preventDefault();var e=(0,a.default)(t.currentTarget),n=t.currentTarget.dataset,i=o(e,t.namespace),r={ajax:"1",action:"update"};void 0!==i&&(v(),a.default.ajax({url:i.url,method:"POST",data:r,dataType:"json",beforeSend:function(t){m.push(t)}}).then(function(t){p.checkUpdateOpertation(t),y(e).val(t.quantity),l.default.emit("updateCart",{reason:n})}).fail(function(t){l.default.emit("handleError",{eventType:"updateProductInCart",resp:t,cartAction:i.type})}))};g.on("click",'[data-link-action="delete-from-cart"], [data-link-action="remove-voucher"]',b),g.on("touchspin.on.startdownspin",u,b),g.on("touchspin.on.startupspin",u,b),g.on("focusout keyup",h,function(t){if("keyup"===t.type)return 13===t.keyCode&&d(t),!1;d(t)});g.on("hidden.bs.collapse","#promo-code",function(){(0,a.default)(".display-promo").show(400)}),g.on("click",".promo-code-button",function(t){t.preventDefault(),(0,a.default)("#promo-code").collapse("toggle")}),g.on("click",".display-promo",function(t){(0,a.default)(t.currentTarget).hide(400)}),g.on("click",".js-discount .code",function(t){t.stopPropagation();var e=(0,a.default)(t.currentTarget);return(0,a.default)("[name=discount_name]").val(e.text()),(0,a.default)("#promo-code").collapse("show"),(0,a.default)(".display-promo").hide(400),!1})});var p={switchErrorStat:function(){var t=(0,a.default)(".checkout a");if(((0,a.default)("#notifications article.alert-danger").length||""!==d&&!c)&&t.addClass("disabled"),""!==d){var e=' ";(0,a.default)("#notifications .container").html(e),d="",f=!1,c&&t.removeClass("disabled")}else!c&&f&&(c=!1,f=!1,(0,a.default)("#notifications .container").html(""),t.removeClass("disabled"))},checkUpdateOpertation:function(t){c=t.hasOwnProperty("hasError");var e=t.errors||"";d=e instanceof Array?e.join(" "):e,f=!0}}},function(t,e,n){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}function r(){(0,s.default)(".js-terms a").on("click",function(t){t.preventDefault();var e=(0,s.default)(t.target).attr("href");e&&(e+="?content_only=1",s.default.get(e,function(t){(0,s.default)("#modal").find(".js-modal-content").html((0,s.default)(t).find(".page-cms").contents())}).fail(function(t){u.default.emit("handleError",{eventType:"clickTerms",resp:t})})),(0,s.default)("#modal").modal("show")}),(0,s.default)(".js-gift-checkbox").on("click",function(t){(0,s.default)("#gift").collapse("toggle")})}function o(){(0,s.default)(".card-block .cart-summary-products p a").on("click",function(t){t=(0,s.default)(this).find("i.material-icons"),"expand_more"==t.text()?t.text("expand_less"):t.text("expand_more")})}var a=n(0),s=i(a),l=n(1),u=i(l);(0,s.default)(document).ready(function(){1===(0,s.default)("body#checkout").length&&(r(),o()),u.default.on("updatedDeliveryForm",function(t){void 0!==t.deliveryOption&&0!==t.deliveryOption.length&&((0,s.default)(".carrier-extra-content").hide(),t.deliveryOption.next(".carrier-extra-content").slideDown())})})},function(t,e,n){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}var r=n(1),o=i(r),a=n(0),s=i(a);o.default.blockcart=o.default.blockcart||{},o.default.blockcart.showModal=function(t){function e(){return(0,s.default)("#blockcart-modal")}var n=e();n.length&&n.remove(),(0,s.default)("body").append(t),n=e(),n.modal("show").on("hidden.bs.modal",function(t){o.default.emit("updateProduct",{reason:t.currentTarget.dataset,event:t})})}},function(t,e,n){"use strict";function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var n=0;n(0,a.default)(".js-modal-mask").height()&&(t.move("down"),(0,a.default)(".js-modal-arrow-up").css("opacity","1"))})}},{key:"move",value:function(t){var e=(0,a.default)(".js-modal-product-images"),n=(0,a.default)(".js-modal-product-images li img").height()+10,i=e.position().top;e.velocity({translateY:"up"===t?i+n:i-n},function(){e.position().top>=0?(0,a.default)(".js-modal-arrow-up").css("opacity",".2"):e.position().top+e.height()<=(0,a.default)(".js-modal-mask").height()&&(0,a.default)(".js-modal-arrow-down").css("opacity",".2")})}}]),t}();e.default=s,t.exports=e.default},function(t,e,n){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(t,e){for(var n=0;n0&&this.options.badge&&this.$elementFilestyle.find("label").append(' '+e.length+""),this.$elementFilestyle.find(".group-span-filestyle").removeClass("input-group-btn")}}},size:function(t){if(void 0===t)return this.options.size;var e=this.$elementFilestyle.find("label"),n=this.$elementFilestyle.find("input");e.removeClass("btn-lg btn-sm"),n.removeClass("input-lg input-sm"),"nr"!=t&&(e.addClass("btn-"+t),n.addClass("input-"+t))},placeholder:function(t){if(void 0===t)return this.options.placeholder;this.options.placeholder=t,this.$elementFilestyle.find("input").attr("placeholder",t)},buttonText:function(t){if(void 0===t)return this.options.buttonText;this.options.buttonText=t,this.$elementFilestyle.find("label .buttonText").html(this.options.buttonText)},buttonName:function(t){if(void 0===t)return this.options.buttonName;this.options.buttonName=t,this.$elementFilestyle.find("label").attr({class:"btn "+this.options.buttonName})},iconName:function(t){if(void 0===t)return this.options.iconName;this.$elementFilestyle.find(".icon-span-filestyle").attr({class:"icon-span-filestyle "+this.options.iconName})},htmlIcon:function(){return this.options.icon?' ':""},htmlInput:function(){return this.options.input?' ':""},pushNameFiles:function(){var t="",e=[];void 0===this.$element[0].files?e[0]={name:this.$element[0]&&this.$element[0].value}:e=this.$element[0].files;for(var n=0;n",i=n.options.buttonBefore?o+n.htmlInput():n.htmlInput()+o,n.$elementFilestyle=t('
'+i+"
"),n.$elementFilestyle.find(".group-span-filestyle").attr("tabindex","0").keypress(function(t){if(13===t.keyCode||32===t.charCode)return n.$elementFilestyle.find("label").click(),!1}),n.$element.css({position:"absolute",clip:"rect(0px 0px 0px 0px)"}).attr("tabindex","-1").after(n.$elementFilestyle),n.options.disabled&&n.$element.attr("disabled","true"),n.$element.change(function(){var t=n.pushNameFiles();0==n.options.input&&n.options.badge?0==n.$elementFilestyle.find(".badge").length?n.$elementFilestyle.find("label").append(' '+t.length+""):0==t.length?n.$elementFilestyle.find(".badge").remove():n.$elementFilestyle.find(".badge").html(t.length):n.$elementFilestyle.find(".badge").remove()}),window.navigator.userAgent.search(/firefox/i)>-1&&n.$elementFilestyle.find("label").click(function(){return n.$element.click(),!1})}};var i=t.fn.filestyle;t.fn.filestyle=function(e,i){var r="",o=this.each(function(){if("file"===t(this).attr("type")){var o=t(this),a=o.data("filestyle"),s=t.extend({},t.fn.filestyle.defaults,e,"object"==typeof e&&e);a||(o.data("filestyle",a=new n(this,s)),a.constructor()),"string"==typeof e&&(r=a[e](i))}});return void 0!==typeof r?r:o},t.fn.filestyle.defaults={buttonText:"Choose file",iconName:"glyphicon glyphicon-folder-open",buttonName:"btn-default",size:"nr",input:!0,badge:!0,icon:!0,buttonBefore:!1,disabled:!1,placeholder:""},t.fn.filestyle.noConflict=function(){return t.fn.filestyle=i,this},t(function(){t(".filestyle").each(function(){var e=t(this),n={input:"false"!==e.attr("data-input"),icon:"false"!==e.attr("data-icon"),buttonBefore:"true"===e.attr("data-buttonBefore"),disabled:"true"===e.attr("data-disabled"),size:e.attr("data-size"),buttonText:e.attr("data-buttonText"),buttonName:e.attr("data-buttonName"),iconName:e.attr("data-iconName"),badge:"false"!==e.attr("data-badge"),placeholder:e.attr("data-placeholder")};e.filestyle(n)})})}(window.jQuery)},function(t,e,n){"use strict";!function(t){t.fn.scrollbox=function(e){var n={linear:!1,startDelay:2,delay:3,step:5,speed:32,switchItems:1,direction:"vertical",distance:"auto",autoPlay:!0,onMouseOverPause:!0,paused:!1,queue:null,listElement:"ul",listItemElement:"li",infiniteLoop:!0,switchAmount:0,afterForward:null,afterBackward:null,triggerStackable:!1};return e=t.extend(n,e),e.scrollOffset="vertical"===e.direction?"scrollTop":"scrollLeft",e.queue&&(e.queue=t("#"+e.queue)),this.each(function(){var n,i,r,o,a,s,l,u,c,f=t(this),d=null,p=null,h=!1,m=0,g=0;e.onMouseOverPause&&(f.bind("mouseover",function(){h=!0}),f.bind("mouseout",function(){h=!1})),n=f.children(e.listElement+":first-child"),!1===e.infiniteLoop&&0===e.switchAmount&&(e.switchAmount=n.children().length),s=function(){if(!h){var r,a,s,l,u;if(r=n.children(e.listItemElement+":first-child"),l="auto"!==e.distance?e.distance:"vertical"===e.direction?r.outerHeight(!0):r.outerWidth(!0),e.linear?s=Math.min(f[0][e.scrollOffset]+e.step,l):(u=Math.max(3,parseInt(.3*(l-f[0][e.scrollOffset]),10)),s=Math.min(f[0][e.scrollOffset]+u,l)),f[0][e.scrollOffset]=s,s>=l){for(a=0;a0?(n.append(e.queue.find(e.listItemElement)[0]),n.children(e.listItemElement+":first-child").remove()):n.append(n.children(e.listItemElement+":first-child")),++m;if(f[0][e.scrollOffset]=0,clearInterval(d),d=null,t.isFunction(e.afterForward)&&e.afterForward.call(f,{switchCount:m,currentFirstChild:n.children(e.listItemElement+":first-child")}),e.triggerStackable&&0!==g)return void i();if(!1===e.infiniteLoop&&m>=e.switchAmount)return;e.autoPlay&&(p=setTimeout(o,1e3*e.delay))}}},l=function(){if(!h){var r,a,s,l,u;if(0===f[0][e.scrollOffset]){for(a=0;a0?(g--,p=setTimeout(o,0)):(g++,p=setTimeout(r,0)))},o=function(){clearInterval(d),d=setInterval(s,e.speed)},r=function(){clearInterval(d),d=setInterval(l,e.speed)},u=function(){e.autoPlay=!0,h=!1,clearInterval(d),d=setInterval(s,e.speed)},c=function(){h=!0},a=function(t){e.delay=t||e.delay,clearTimeout(p),e.autoPlay&&(p=setTimeout(o,1e3*e.delay))},e.autoPlay&&(p=setTimeout(o,1e3*e.startDelay)),f.bind("resetClock",function(t){a(t)}),f.bind("forward",function(){e.triggerStackable?null!==d?g++:o():(clearTimeout(p),o())}),f.bind("backward",function(){e.triggerStackable?null!==d?g--:r():(clearTimeout(p),r())}),f.bind("pauseHover",function(){c()}),f.bind("forwardHover",function(){u()}),f.bind("speedUp",function(t,n){"undefined"===n&&(n=Math.max(1,parseInt(e.speed/2,10))),e.speed=n}),f.bind("speedDown",function(t,n){"undefined"===n&&(n=2*e.speed),e.speed=n}),f.bind("updateConfig",function(n,i){e=t.extend(e,i)})})}}(jQuery)},function(t,e,n){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}function r(t){(0,a.default)("#search_filters").replaceWith(t.rendered_facets),(0,a.default)("#js-active-search-filters").replaceWith(t.rendered_active_filters),(0,a.default)("#js-product-list-top").replaceWith(t.rendered_products_top),(0,a.default)("#js-product-list").replaceWith(t.rendered_products),(0,a.default)("#js-product-list-bottom").replaceWith(t.rendered_products_bottom),t.rendered_products_header&&(0,a.default)("#js-product-list-header").replaceWith(t.rendered_products_header),(new c.default).init()}var o=n(0),a=i(o),s=n(1),l=i(s);n(4);var u=n(3),c=i(u);(0,a.default)(document).ready(function(){l.default.on("clickQuickView",function(e){var n={action:"quickview",id_product:e.dataset.idProduct,id_product_attribute:e.dataset.idProductAttribute};a.default.post(l.default.urls.pages.product,n,null,"json").then(function(e){(0,a.default)("body").append(e.quickview_html);var n=(0,a.default)("#quickview-modal-"+e.product.id+"-"+e.product.id_product_attribute);n.modal("show"),t(n),n.on("hidden.bs.modal",function(){n.remove()})}).fail(function(t){l.default.emit("handleError",{eventType:"clickQuickView",resp:t})})});var t=function(t){var n=(0,a.default)(".js-arrows"),i=t.find(".js-qv-product-images");(0,a.default)(".js-thumb").on("click",function(t){(0,a.default)(".js-thumb").hasClass("selected")&&(0,a.default)(".js-thumb").removeClass("selected"),(0,a.default)(t.currentTarget).addClass("selected"),(0,a.default)(".js-qv-product-cover").attr("src",(0,a.default)(t.target).data("image-large-src"))}),i.find("li").length<=4?n.hide():n.on("click",function(t){(0,a.default)(t.target).hasClass("arrow-up")&&(0,a.default)(".js-qv-product-images").position().top<0?(e("up"),(0,a.default)(".arrow-down").css("opacity","1")):(0,a.default)(t.target).hasClass("arrow-down")&&i.position().top+i.height()>(0,a.default)(".js-qv-mask").height()&&(e("down"),(0,a.default)(".arrow-up").css("opacity","1"))}),t.find("#quantity_wanted").TouchSpin({verticalbuttons:!0,verticalupclass:"material-icons touchspin-up",verticaldownclass:"material-icons touchspin-down",buttondown_class:"btn btn-touchspin js-touchspin",buttonup_class:"btn btn-touchspin js-touchspin",min:1,max:1e6})},e=function(t){var e=(0,a.default)(".js-qv-product-images"),n=(0,a.default)(".js-qv-product-images li img").height()+20,i=e.position().top;e.velocity({translateY:"up"===t?i+n:i-n},function(){e.position().top>=0?(0,a.default)(".arrow-up").css("opacity",".2"):e.position().top+e.height()<=(0,a.default)(".js-qv-mask").height()&&(0,a.default)(".arrow-down").css("opacity",".2")})};(0,a.default)("body").on("click","#search_filter_toggler",function(){(0,a.default)("#search_filters_wrapper").removeClass("hidden-sm-down"),(0,a.default)("#content-wrapper").addClass("hidden-sm-down"),(0,a.default)("#footer").addClass("hidden-sm-down")}),(0,a.default)("#search_filter_controls .clear").on("click",function(){(0,a.default)("#search_filters_wrapper").addClass("hidden-sm-down"),(0,a.default)("#content-wrapper").removeClass("hidden-sm-down"),(0,a.default)("#footer").removeClass("hidden-sm-down")}),(0,a.default)("#search_filter_controls .ok").on("click",function(){(0,a.default)("#search_filters_wrapper").addClass("hidden-sm-down"),(0,a.default)("#content-wrapper").removeClass("hidden-sm-down"),(0,a.default)("#footer").removeClass("hidden-sm-down")});var n=function(t){if(void 0!==t.target.dataset.searchUrl)return t.target.dataset.searchUrl;if(void 0===(0,a.default)(t.target).parent()[0].dataset.searchUrl)throw new Error("Can not parse search URL");return(0,a.default)(t.target).parent()[0].dataset.searchUrl};(0,a.default)("body").on("change","#search_filters input[data-search-url]",function(t){l.default.emit("updateFacets",n(t))}),(0,a.default)("body").on("click",".js-search-filters-clear-all",function(t){l.default.emit("updateFacets",n(t))}),(0,a.default)("body").on("click",".js-search-link",function(t){t.preventDefault(),l.default.emit("updateFacets",(0,a.default)(t.target).closest("a").get(0).href)}),(0,a.default)("body").on("change","#search_filters select",function(t){var e=(0,a.default)(t.target).closest("form");l.default.emit("updateFacets","?"+e.serialize())}),l.default.on("updateProductList",function(t){r(t),window.scrollTo(0,0)})})},function(t,e,n){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}var r=n(0),o=i(r),a=n(1),s=i(a);(0,o.default)(document).ready(function(){function t(){(0,o.default)(".js-thumb").on("click",function(t){(0,o.default)(".js-modal-product-cover").attr("src",(0,o.default)(t.target).data("image-large-src")),(0,o.default)(".selected").removeClass("selected"),(0,o.default)(t.target).addClass("selected"),(0,o.default)(".js-qv-product-cover").prop("src",(0,o.default)(t.currentTarget).data("image-large-src"))})}function e(){(0,o.default)("#main .js-qv-product-images li").length>2?((0,o.default)("#main .js-qv-mask").addClass("scroll"),(0,o.default)(".scroll-box-arrows").addClass("scroll"),(0,o.default)("#main .js-qv-mask").scrollbox({direction:"h",distance:113,autoPlay:!1}),(0,o.default)(".scroll-box-arrows .left").click(function(){(0,o.default)("#main .js-qv-mask").trigger("backward")}),(0,o.default)(".scroll-box-arrows .right").click(function(){(0,o.default)("#main .js-qv-mask").trigger("forward")})):((0,o.default)("#main .js-qv-mask").removeClass("scroll"),(0,o.default)(".scroll-box-arrows").removeClass("scroll"))}function n(){(0,o.default)(".js-file-input").on("change",function(t){var e=void 0,n=void 0;(e=(0,o.default)(t.currentTarget)[0])&&(n=e.files[0])&&(0,o.default)(e).prev().text(n.name)})}!function(){var t=(0,o.default)("#quantity_wanted");t.TouchSpin({verticalbuttons:!0,verticalupclass:"material-icons touchspin-up",verticaldownclass:"material-icons touchspin-down",buttondown_class:"btn btn-touchspin js-touchspin",buttonup_class:"btn btn-touchspin js-touchspin",min:parseInt(t.attr("min"),10),max:1e6}),(0,o.default)("body").on("change keyup","#quantity_wanted",function(t){(0,o.default)(t.currentTarget).trigger("touchspin.stopspin"),s.default.emit("updateProduct",{eventType:"updatedProductQuantity",event:t})})}(),n(),t(),e(),s.default.on("updatedProduct",function(i){if(n(),t(),i&&i.product_minimal_quantity){var r=parseInt(i.product_minimal_quantity,10);(0,o.default)("#quantity_wanted").trigger("touchspin.updatesettings",{min:r})}e(),(0,o.default)((0,o.default)(".tabs .nav-link.active").attr("href")).addClass("active").removeClass("fade"),(0,o.default)(".js-product-images-modal").replaceWith(i.product_images_modal)})})},function(t,e,n){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}function r(t,e){var n=e.children().detach();e.empty().append(t.children().detach()),t.append(n)}function o(){u.default.responsive.mobile?(0,s.default)("*[id^='_desktop_']").each(function(t,e){var n=(0,s.default)("#"+e.id.replace("_desktop_","_mobile_"));n.length&&r((0,s.default)(e),n)}):(0,s.default)("*[id^='_mobile_']").each(function(t,e){var n=(0,s.default)("#"+e.id.replace("_mobile_","_desktop_"));n.length&&r((0,s.default)(e),n)}),u.default.emit("responsive update",{mobile:u.default.responsive.mobile})}var a=n(0),s=i(a),l=n(1),u=i(l);u.default.responsive=u.default.responsive||{},u.default.responsive.current_width=window.innerWidth,u.default.responsive.min_width=768,u.default.responsive.mobile=u.default.responsive.current_width=e&&n=e;u.default.responsive.current_width=n,u.default.responsive.mobile=u.default.responsive.current_width'+T.prefix+"",s=''+T.postfix+"";r.hasClass("input-group-btn")?(n='",r.append(n)):(n='",t(n).insertBefore(L)),o.hasClass("input-group-btn")?(i='",o.prepend(i)):(i='",t(i).insertAfter(L)),t(a).insertBefore(L),t(s).insertAfter(L),A=e}function p(){var e;e=T.verticalbuttons?'
'+T.prefix+''+T.postfix+'
':'
'+T.prefix+''+T.postfix+'
",A=t(e).insertBefore(L),t(".bootstrap-touchspin-prefix",A).after(L),L.hasClass("input-sm")?A.addClass("input-group-sm"):L.hasClass("input-lg")&&A.addClass("input-group-lg")}function h(){I={down:t(".bootstrap-touchspin-down",A),up:t(".bootstrap-touchspin-up",A),input:t("input",A),prefix:t(".bootstrap-touchspin-prefix",A).addClass(T.prefix_extraclass),postfix:t(".bootstrap-touchspin-postfix",A).addClass(T.postfix_extraclass)}}function m(){""===T.prefix&&I.prefix.hide(),""===T.postfix&&I.postfix.hide()}function g(){L.on("keydown",function(t){var e=t.keyCode||t.which;38===e?("up"!==V&&(x(),E()),t.preventDefault()):40===e&&("down"!==V&&(w(),S()),t.preventDefault())}),L.on("keyup",function(t){var e=t.keyCode||t.which;38===e?C():40===e&&C()}),L.on("blur",function(){b()}),I.down.on("keydown",function(t){var e=t.keyCode||t.which;32!==e&&13!==e||("down"!==V&&(w(),S()),t.preventDefault())}),I.down.on("keyup",function(t){var e=t.keyCode||t.which;32!==e&&13!==e||C()}),I.up.on("keydown",function(t){var e=t.keyCode||t.which;32!==e&&13!==e||("up"!==V&&(x(),E()),t.preventDefault())}),I.up.on("keyup",function(t){var e=t.keyCode||t.which;32!==e&&13!==e||C()}),I.down.on("mousedown.touchspin",function(t){I.down.off("touchstart.touchspin"),L.is(":disabled")||(w(),S(),t.preventDefault(),t.stopPropagation())}),I.down.on("touchstart.touchspin",function(t){I.down.off("mousedown.touchspin"),L.is(":disabled")||(w(),S(),t.preventDefault(),t.stopPropagation())}),I.up.on("mousedown.touchspin",function(t){I.up.off("touchstart.touchspin"),L.is(":disabled")||(x(),E(),t.preventDefault(),t.stopPropagation())}),I.up.on("touchstart.touchspin",function(t){I.up.off("mousedown.touchspin"),L.is(":disabled")||(x(),E(),t.preventDefault(),t.stopPropagation())}),I.up.on("mouseout touchleave touchend touchcancel",function(t){V&&(t.stopPropagation(),C())}),I.down.on("mouseout touchleave touchend touchcancel",function(t){V&&(t.stopPropagation(),C())}),I.down.on("mousemove touchmove",function(t){V&&(t.stopPropagation(),t.preventDefault())}),I.up.on("mousemove touchmove",function(t){V&&(t.stopPropagation(),t.preventDefault())}),t(document).on(n(["mouseup","touchend","touchcancel"],i).join(" "),function(t){V&&(t.preventDefault(),C())}),t(document).on(n(["mousemove","touchmove","scroll","scrollstart"],i).join(" "),function(t){V&&(t.preventDefault(),C())}),L.on("mousewheel DOMMouseScroll",function(t){if(T.mousewheel&&L.is(":focus")){var e=t.originalEvent.wheelDelta||-t.originalEvent.deltaY||-t.originalEvent.detail;t.stopPropagation(),t.preventDefault(),e<0?w():x()}})}function v(){L.on("touchspin.uponce",function(){C(),x()}),L.on("touchspin.downonce",function(){C(),w()}),L.on("touchspin.startupspin",function(){E()}),L.on("touchspin.startdownspin",function(){S()}),L.on("touchspin.stopspin",function(){C()}),L.on("touchspin.updatesettings",function(t,e){s(e)})}function y(t){switch(T.forcestepdivisibility){case"round":return(Math.round(t/T.step)*T.step).toFixed(T.decimals);case"floor":return(Math.floor(t/T.step)*T.step).toFixed(T.decimals);case"ceil":return(Math.ceil(t/T.step)*T.step).toFixed(T.decimals);default:return t}}function b(){var t,e,n;if(""===(t=L.val()))return void(""!==T.replacementval&&(L.val(T.replacementval),L.trigger("change")));T.decimals>0&&"."===t||(e=parseFloat(t),isNaN(e)&&(e=""!==T.replacementval?T.replacementval:0),n=e,e.toString()!==t&&(n=e),eT.max&&(n=T.max),n=y(n),Number(t).toString()!==n.toString()&&(L.val(n),L.trigger("change")))}function _(){if(T.booster){var t=Math.pow(2,Math.floor(B/T.boostat))*T.step;return T.maxboostedstep&&t>T.maxboostedstep&&(t=T.maxboostedstep,O=Math.round(O/t)*t),Math.max(T.step,t)}return T.step}function x(){b(),O=parseFloat(I.input.val()),isNaN(O)&&(O=0);var t=O,e=_();O+=e,O>T.max&&(O=T.max,L.trigger("touchspin.on.max"),C()),I.input.val(Number(O).toFixed(T.decimals)),t!==O&&L.trigger("change")}function w(){b(),O=parseFloat(I.input.val()),isNaN(O)&&(O=0);var t=O,e=_();O-=e,O=4)throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}(jQuery),function(){function t(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function e(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){for(var n=0;nthis._items.length-1||e<0)){if(this._isSliding)return void t(this._element).one(p.SLID,function(){return n.to(e)});if(i===e)return this.pause(),void this.cycle();var r=e>i?d.NEXT:d.PREVIOUS;this._slide(r,this._items[e])}},l.prototype.dispose=function(){t(this._element).off(s),t.removeData(this._element,a),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},l.prototype._getConfig=function(n){return n=t.extend({},c,n),o.typeCheckConfig(e,n,f),n},l.prototype._addEventListeners=function(){this._config.keyboard&&t(this._element).on(p.KEYDOWN,t.proxy(this._keydown,this)),"hover"!==this._config.pause||"ontouchstart"in document.documentElement||t(this._element).on(p.MOUSEENTER,t.proxy(this.pause,this)).on(p.MOUSELEAVE,t.proxy(this.cycle,this))},l.prototype._keydown=function(t){if(t.preventDefault(),!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:this.prev();break;case 39:this.next();break;default:return}},l.prototype._getItemIndex=function(e){return this._items=t.makeArray(t(e).parent().find(m.ITEM)),this._items.indexOf(e)},l.prototype._getItemByDirection=function(t,e){var n=t===d.NEXT,i=t===d.PREVIOUS,r=this._getItemIndex(e),o=this._items.length-1;if((i&&0===r||n&&r===o)&&!this._config.wrap)return e;var a=t===d.PREVIOUS?-1:1,s=(r+a)%this._items.length;return-1===s?this._items[this._items.length-1]:this._items[s]},l.prototype._triggerSlideEvent=function(e,n){var i=t.Event(p.SLIDE,{relatedTarget:e,direction:n});return t(this._element).trigger(i),i},l.prototype._setActiveIndicatorElement=function(e){if(this._indicatorsElement){t(this._indicatorsElement).find(m.ACTIVE).removeClass(h.ACTIVE);var n=this._indicatorsElement.children[this._getItemIndex(e)];n&&t(n).addClass(h.ACTIVE)}},l.prototype._slide=function(e,n){var i=this,r=t(this._element).find(m.ACTIVE_ITEM)[0],a=n||r&&this._getItemByDirection(e,r),s=Boolean(this._interval),l=e===d.NEXT?h.LEFT:h.RIGHT;if(a&&t(a).hasClass(h.ACTIVE))return void(this._isSliding=!1);if(!this._triggerSlideEvent(a,l).isDefaultPrevented()&&r&&a){this._isSliding=!0,s&&this.pause(),this._setActiveIndicatorElement(a);var u=t.Event(p.SLID,{relatedTarget:a,direction:l});o.supportsTransitionEnd()&&t(this._element).hasClass(h.SLIDE)?(t(a).addClass(e),o.reflow(a),t(r).addClass(l),t(a).addClass(l),t(r).one(o.TRANSITION_END,function(){t(a).removeClass(l).removeClass(e),t(a).addClass(h.ACTIVE),t(r).removeClass(h.ACTIVE).removeClass(e).removeClass(l),i._isSliding=!1,setTimeout(function(){return t(i._element).trigger(u)},0)}).emulateTransitionEnd(600)):(t(r).removeClass(h.ACTIVE),t(a).addClass(h.ACTIVE),this._isSliding=!1,t(this._element).trigger(u)),s&&this.cycle()}},l._jQueryInterface=function(e){return this.each(function(){var n=t(this).data(a),r=t.extend({},c,t(this).data());"object"===(void 0===e?"undefined":i(e))&&t.extend(r,e);var o="string"==typeof e?e:r.slide;if(n||(n=new l(this,r),t(this).data(a,n)),"number"==typeof e)n.to(e);else if("string"==typeof o){if(void 0===n[o])throw new Error('No method named "'+o+'"');n[o]()}else r.interval&&(n.pause(),n.cycle())})},l._dataApiClickHandler=function(e){var n=o.getSelectorFromElement(this);if(n){var i=t(n)[0];if(i&&t(i).hasClass(h.CAROUSEL)){var r=t.extend({},t(i).data(),t(this).data()),s=this.getAttribute("data-slide-to");s&&(r.interval=!1),l._jQueryInterface.call(t(i),r),s&&t(i).data(a).to(s),e.preventDefault()}}},r(l,null,[{key:"VERSION",get:function(){return"4.0.0-alpha.5"}},{key:"Default",get:function(){return c}}]),l}();t(document).on(p.CLICK_DATA_API,m.DATA_SLIDE,g._dataApiClickHandler),t(window).on(p.LOAD_DATA_API,function(){t(m.DATA_RIDE).each(function(){var e=t(this);g._jQueryInterface.call(e,e.data())})}),t.fn[e]=g._jQueryInterface,t.fn[e].Constructor=g,t.fn[e].noConflict=function(){return t.fn[e]=u,g._jQueryInterface}}(jQuery),function(t){var e="collapse",a="bs.collapse",s="."+a,l=t.fn[e],u={toggle:!0,parent:""},c={toggle:"boolean",parent:"string"},f={SHOW:"show"+s,SHOWN:"shown"+s,HIDE:"hide"+s,HIDDEN:"hidden"+s,CLICK_DATA_API:"click"+s+".data-api"},d={IN:"in",COLLAPSE:"collapse",COLLAPSING:"collapsing",COLLAPSED:"collapsed"},p={WIDTH:"width",HEIGHT:"height"},h={ACTIVES:".card > .in, .card > .collapsing",DATA_TOGGLE:'[data-toggle="collapse"]'},m=function(){function s(e,i){n(this,s),this._isTransitioning=!1,this._element=e,this._config=this._getConfig(i),this._triggerArray=t.makeArray(t('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]')),this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}return s.prototype.toggle=function(){t(this._element).hasClass(d.IN)?this.hide():this.show()},s.prototype.show=function(){var e=this;if(!this._isTransitioning&&!t(this._element).hasClass(d.IN)){var n=void 0,i=void 0;if(this._parent&&(n=t.makeArray(t(h.ACTIVES)),n.length||(n=null)),!(n&&(i=t(n).data(a))&&i._isTransitioning)){var r=t.Event(f.SHOW);if(t(this._element).trigger(r),!r.isDefaultPrevented()){n&&(s._jQueryInterface.call(t(n),"hide"),i||t(n).data(a,null));var l=this._getDimension();t(this._element).removeClass(d.COLLAPSE).addClass(d.COLLAPSING),this._element.style[l]=0,this._element.setAttribute("aria-expanded",!0),this._triggerArray.length&&t(this._triggerArray).removeClass(d.COLLAPSED).attr("aria-expanded",!0),this.setTransitioning(!0);var u=function(){t(e._element).removeClass(d.COLLAPSING).addClass(d.COLLAPSE).addClass(d.IN),e._element.style[l]="",e.setTransitioning(!1),t(e._element).trigger(f.SHOWN)};if(!o.supportsTransitionEnd())return void u();var c=l[0].toUpperCase()+l.slice(1),p="scroll"+c;t(this._element).one(o.TRANSITION_END,u).emulateTransitionEnd(600),this._element.style[l]=this._element[p]+"px"}}}},s.prototype.hide=function(){var e=this;if(!this._isTransitioning&&t(this._element).hasClass(d.IN)){var n=t.Event(f.HIDE);if(t(this._element).trigger(n),!n.isDefaultPrevented()){var i=this._getDimension(),r=i===p.WIDTH?"offsetWidth":"offsetHeight";this._element.style[i]=this._element[r]+"px",o.reflow(this._element),t(this._element).addClass(d.COLLAPSING).removeClass(d.COLLAPSE).removeClass(d.IN),this._element.setAttribute("aria-expanded",!1),this._triggerArray.length&&t(this._triggerArray).addClass(d.COLLAPSED).attr("aria-expanded",!1),this.setTransitioning(!0);var a=function(){e.setTransitioning(!1),t(e._element).removeClass(d.COLLAPSING).addClass(d.COLLAPSE).trigger(f.HIDDEN)};return this._element.style[i]="",o.supportsTransitionEnd()?void t(this._element).one(o.TRANSITION_END,a).emulateTransitionEnd(600):void a()}}},s.prototype.setTransitioning=function(t){this._isTransitioning=t},s.prototype.dispose=function(){t.removeData(this._element,a),this._config=null,this._parent=null,this._element=null,this._triggerArray=null,this._isTransitioning=null},s.prototype._getConfig=function(n){return n=t.extend({},u,n),n.toggle=Boolean(n.toggle),o.typeCheckConfig(e,n,c),n},s.prototype._getDimension=function(){return t(this._element).hasClass(p.WIDTH)?p.WIDTH:p.HEIGHT},s.prototype._getParent=function(){var e=this,n=t(this._config.parent)[0],i='[data-toggle="collapse"][data-parent="'+this._config.parent+'"]';return t(n).find(i).each(function(t,n){e._addAriaAndCollapsedClass(s._getTargetFromElement(n),[n])}),n},s.prototype._addAriaAndCollapsedClass=function(e,n){if(e){var i=t(e).hasClass(d.IN);e.setAttribute("aria-expanded",i),n.length&&t(n).toggleClass(d.COLLAPSED,!i).attr("aria-expanded",i)}},s._getTargetFromElement=function(e){var n=o.getSelectorFromElement(e);return n?t(n)[0]:null},s._jQueryInterface=function(e){return this.each(function(){var n=t(this),r=n.data(a),o=t.extend({},u,n.data(),"object"===(void 0===e?"undefined":i(e))&&e);if(!r&&o.toggle&&/show|hide/.test(e)&&(o.toggle=!1),r||(r=new s(this,o),n.data(a,r)),"string"==typeof e){if(void 0===r[e])throw new Error('No method named "'+e+'"');r[e]()}})},r(s,null,[{key:"VERSION",get:function(){return"4.0.0-alpha.5"}},{key:"Default",get:function(){return u}}]),s}();t(document).on(f.CLICK_DATA_API,h.DATA_TOGGLE,function(e){e.preventDefault();var n=m._getTargetFromElement(this),i=t(n).data(a),r=i?"toggle":t(this).data();m._jQueryInterface.call(t(n),r)}),t.fn[e]=m._jQueryInterface,t.fn[e].Constructor=m,t.fn[e].noConflict=function(){return t.fn[e]=l,m._jQueryInterface}}(jQuery),function(t){var e="dropdown",i="bs.dropdown",a="."+i,s=".data-api",l=t.fn[e],u={HIDE:"hide"+a,HIDDEN:"hidden"+a,SHOW:"show"+a,SHOWN:"shown"+a,CLICK:"click"+a,CLICK_DATA_API:"click"+a+s,KEYDOWN_DATA_API:"keydown"+a+s},c={BACKDROP:"dropdown-backdrop",DISABLED:"disabled",OPEN:"open"},f={BACKDROP:".dropdown-backdrop",DATA_TOGGLE:'[data-toggle="dropdown"]',FORM_CHILD:".dropdown form",ROLE_MENU:'[role="menu"]',ROLE_LISTBOX:'[role="listbox"]',NAVBAR_NAV:".navbar-nav",VISIBLE_ITEMS:'[role="menu"] li:not(.disabled) a, [role="listbox"] li:not(.disabled) a'},d=function(){function e(t){n(this,e),this._element=t,this._addEventListeners()}return e.prototype.toggle=function(){if(this.disabled||t(this).hasClass(c.DISABLED))return!1;var n=e._getParentFromElement(this),i=t(n).hasClass(c.OPEN);if(e._clearMenus(),i)return!1;if("ontouchstart"in document.documentElement&&!t(n).closest(f.NAVBAR_NAV).length){var r=document.createElement("div");r.className=c.BACKDROP,t(r).insertBefore(this),t(r).on("click",e._clearMenus)}var o={relatedTarget:this},a=t.Event(u.SHOW,o);return t(n).trigger(a),!a.isDefaultPrevented()&&(this.focus(),this.setAttribute("aria-expanded","true"),t(n).toggleClass(c.OPEN),t(n).trigger(t.Event(u.SHOWN,o)),!1)},e.prototype.dispose=function(){t.removeData(this._element,i),t(this._element).off(a),this._element=null},e.prototype._addEventListeners=function(){t(this._element).on(u.CLICK,this.toggle)},e._jQueryInterface=function(n){return this.each(function(){var r=t(this).data(i);if(r||t(this).data(i,r=new e(this)),"string"==typeof n){if(void 0===r[n])throw new Error('No method named "'+n+'"');r[n].call(this)}})},e._clearMenus=function(n){if(!n||3!==n.which){var i=t(f.BACKDROP)[0];i&&i.parentNode.removeChild(i);for(var r=t.makeArray(t(f.DATA_TOGGLE)),o=0;o0&&s--,40===n.which&&sdocument.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},l.prototype._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},l.prototype._checkScrollbar=function(){this._isBodyOverflowing=document.body.clientWidth=n){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}if(this._activeTarget&&t=this._offsets[r]&&(void 0===this._offsets[r+1]||t .nav-item .fade, > .fade",ACTIVE:".active",ACTIVE_CHILD:"> .nav-item > .active, > .active",DATA_TOGGLE:'[data-toggle="tab"], [data-toggle="pill"]',DROPDOWN_TOGGLE:".dropdown-toggle",DROPDOWN_ACTIVE_CHILD:"> .dropdown-menu .active"},f=function(){function e(t){n(this,e),this._element=t}return e.prototype.show=function(){var e=this;if(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE||!t(this._element).hasClass(u.ACTIVE)){var n=void 0,i=void 0,r=t(this._element).closest(c.UL)[0],a=o.getSelectorFromElement(this._element);r&&(i=t.makeArray(t(r).find(c.ACTIVE)),i=i[i.length-1]);var s=t.Event(l.HIDE,{relatedTarget:this._element}),f=t.Event(l.SHOW,{relatedTarget:i});if(i&&t(i).trigger(s),t(this._element).trigger(f),!f.isDefaultPrevented()&&!s.isDefaultPrevented()){a&&(n=t(a)[0]),this._activate(this._element,r);var d=function(){var n=t.Event(l.HIDDEN,{relatedTarget:e._element}),r=t.Event(l.SHOWN,{relatedTarget:i});t(i).trigger(n),t(e._element).trigger(r)};n?this._activate(n,n.parentNode,d):d()}}},e.prototype.dispose=function(){t.removeClass(this._element,i),this._element=null},e.prototype._activate=function(e,n,i){var r=t(n).find(c.ACTIVE_CHILD)[0],a=i&&o.supportsTransitionEnd()&&(r&&t(r).hasClass(u.FADE)||Boolean(t(n).find(c.FADE_CHILD)[0])),s=t.proxy(this._transitionComplete,this,e,r,a,i);r&&a?t(r).one(o.TRANSITION_END,s).emulateTransitionEnd(150):s(),r&&t(r).removeClass(u.IN)},e.prototype._transitionComplete=function(e,n,i,r){if(n){t(n).removeClass(u.ACTIVE);var a=t(n).find(c.DROPDOWN_ACTIVE_CHILD)[0];a&&t(a).removeClass(u.ACTIVE),n.setAttribute("aria-expanded",!1)}if(t(e).addClass(u.ACTIVE),e.setAttribute("aria-expanded",!0),i?(o.reflow(e),t(e).addClass(u.IN)):t(e).removeClass(u.FADE),e.parentNode&&t(e.parentNode).hasClass(u.DROPDOWN_MENU)){var s=t(e).closest(c.DROPDOWN)[0];s&&t(s).find(c.DROPDOWN_TOGGLE).addClass(u.ACTIVE),e.setAttribute("aria-expanded",!0)}r&&r()},e._jQueryInterface=function(n){return this.each(function(){var r=t(this),o=r.data(i);if(o||(o=o=new e(this),r.data(i,o)),"string"==typeof n){if(void 0===o[n])throw new Error('No method named "'+n+'"');o[n]()}})},r(e,null,[{key:"VERSION",get:function(){return"4.0.0-alpha.5"}}]),e}();t(document).on(l.CLICK_DATA_API,c.DATA_TOGGLE,function(e){e.preventDefault(),f._jQueryInterface.call(t(this),"show")}),t.fn[e]=f._jQueryInterface,t.fn[e].Constructor=f,t.fn[e].noConflict=function(){return t.fn[e]=s,f._jQueryInterface}}(jQuery),function(t){if(void 0===window.Tether)throw new Error("Bootstrap tooltips require Tether (http://tether.io/)");var e="tooltip",a="bs.tooltip",s="."+a,l=t.fn[e],u={animation:!0,template:'',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:"0 0",constraints:[]},c={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"string",constraints:"array"},f={TOP:"bottom center",RIGHT:"middle left",BOTTOM:"top center",LEFT:"middle right"},d={IN:"in",OUT:"out"},p={HIDE:"hide"+s,HIDDEN:"hidden"+s,SHOW:"show"+s,SHOWN:"shown"+s,INSERTED:"inserted"+s,CLICK:"click"+s,FOCUSIN:"focusin"+s,FOCUSOUT:"focusout"+s,MOUSEENTER:"mouseenter"+s,MOUSELEAVE:"mouseleave"+s},h={FADE:"fade",IN:"in"},m={TOOLTIP:".tooltip",TOOLTIP_INNER:".tooltip-inner"},g={element:!1,enabled:!1},v={HOVER:"hover",FOCUS:"focus",CLICK:"click",MANUAL:"manual"},y=function(){function l(t,e){n(this,l),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._tether=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}return l.prototype.enable=function(){this._isEnabled=!0},l.prototype.disable=function(){this._isEnabled=!1},l.prototype.toggleEnabled=function(){this._isEnabled=!this._isEnabled},l.prototype.toggle=function(e){if(e){var n=this.constructor.DATA_KEY,i=t(e.currentTarget).data(n);i||(i=new this.constructor(e.currentTarget,this._getDelegateConfig()),t(e.currentTarget).data(n,i)),i._activeTrigger.click=!i._activeTrigger.click,i._isWithActiveTrigger()?i._enter(null,i):i._leave(null,i)}else{if(t(this.getTipElement()).hasClass(h.IN))return void this._leave(null,this);this._enter(null,this)}},l.prototype.dispose=function(){clearTimeout(this._timeout),this.cleanupTether(),t.removeData(this.element,this.constructor.DATA_KEY),t(this.element).off(this.constructor.EVENT_KEY),this.tip&&t(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._tether=null,this.element=null,this.config=null,this.tip=null},l.prototype.show=function(){var e=this,n=t.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){t(this.element).trigger(n);var i=t.contains(this.element.ownerDocument.documentElement,this.element);if(n.isDefaultPrevented()||!i)return;var r=this.getTipElement(),a=o.getUID(this.constructor.NAME);r.setAttribute("id",a),this.element.setAttribute("aria-describedby",a),this.setContent(),this.config.animation&&t(r).addClass(h.FADE);var s="function"==typeof this.config.placement?this.config.placement.call(this,r,this.element):this.config.placement,u=this._getAttachment(s);t(r).data(this.constructor.DATA_KEY,this).appendTo(document.body),t(this.element).trigger(this.constructor.Event.INSERTED),this._tether=new Tether({attachment:u,element:r,target:this.element,classes:g,classPrefix:"bs-tether",offset:this.config.offset,constraints:this.config.constraints,addTargetClasses:!1}),o.reflow(r),this._tether.position(),t(r).addClass(h.IN);var c=function(){var n=e._hoverState;e._hoverState=null,t(e.element).trigger(e.constructor.Event.SHOWN),n===d.OUT&&e._leave(null,e)};if(o.supportsTransitionEnd()&&t(this.tip).hasClass(h.FADE))return void t(this.tip).one(o.TRANSITION_END,c).emulateTransitionEnd(l._TRANSITION_DURATION);c()}},l.prototype.hide=function(e){var n=this,i=this.getTipElement(),r=t.Event(this.constructor.Event.HIDE),a=function(){n._hoverState!==d.IN&&i.parentNode&&i.parentNode.removeChild(i),n.element.removeAttribute("aria-describedby"),t(n.element).trigger(n.constructor.Event.HIDDEN),n.cleanupTether(),e&&e()};t(this.element).trigger(r),r.isDefaultPrevented()||(t(i).removeClass(h.IN),o.supportsTransitionEnd()&&t(this.tip).hasClass(h.FADE)?t(i).one(o.TRANSITION_END,a).emulateTransitionEnd(150):a(),this._hoverState="")},l.prototype.isWithContent=function(){return Boolean(this.getTitle())},l.prototype.getTipElement=function(){return this.tip=this.tip||t(this.config.template)[0]},l.prototype.setContent=function(){var e=t(this.getTipElement());this.setElementContent(e.find(m.TOOLTIP_INNER),this.getTitle()),e.removeClass(h.FADE).removeClass(h.IN),this.cleanupTether()},l.prototype.setElementContent=function(e,n){var r=this.config.html;"object"===(void 0===n?"undefined":i(n))&&(n.nodeType||n.jquery)?r?t(n).parent().is(e)||e.empty().append(n):e.text(t(n).text()):e[r?"html":"text"](n)},l.prototype.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},l.prototype.cleanupTether=function(){this._tether&&this._tether.destroy()},l.prototype._getAttachment=function(t){return f[t.toUpperCase()]},l.prototype._setListeners=function(){var e=this;this.config.trigger.split(" ").forEach(function(n){if("click"===n)t(e.element).on(e.constructor.Event.CLICK,e.config.selector,t.proxy(e.toggle,e));else if(n!==v.MANUAL){var i=n===v.HOVER?e.constructor.Event.MOUSEENTER:e.constructor.Event.FOCUSIN,r=n===v.HOVER?e.constructor.Event.MOUSELEAVE:e.constructor.Event.FOCUSOUT;t(e.element).on(i,e.config.selector,t.proxy(e._enter,e)).on(r,e.config.selector,t.proxy(e._leave,e))}}),this.config.selector?this.config=t.extend({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},l.prototype._fixTitle=function(){var t=i(this.element.getAttribute("data-original-title"));(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},l.prototype._enter=function(e,n){var i=this.constructor.DATA_KEY;return n=n||t(e.currentTarget).data(i),n||(n=new this.constructor(e.currentTarget,this._getDelegateConfig()),t(e.currentTarget).data(i,n)),e&&(n._activeTrigger["focusin"===e.type?v.FOCUS:v.HOVER]=!0),t(n.getTipElement()).hasClass(h.IN)||n._hoverState===d.IN?void(n._hoverState=d.IN):(clearTimeout(n._timeout),n._hoverState=d.IN,n.config.delay&&n.config.delay.show?void(n._timeout=setTimeout(function(){n._hoverState===d.IN&&n.show()},n.config.delay.show)):void n.show())},l.prototype._leave=function(e,n){var i=this.constructor.DATA_KEY;if(n=n||t(e.currentTarget).data(i),n||(n=new this.constructor(e.currentTarget,this._getDelegateConfig()),t(e.currentTarget).data(i,n)),e&&(n._activeTrigger["focusout"===e.type?v.FOCUS:v.HOVER]=!1),!n._isWithActiveTrigger())return clearTimeout(n._timeout),n._hoverState=d.OUT,n.config.delay&&n.config.delay.hide?void(n._timeout=setTimeout(function(){n._hoverState===d.OUT&&n.hide()},n.config.delay.hide)):void n.hide()},l.prototype._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},l.prototype._getConfig=function(n){return n=t.extend({},this.constructor.Default,t(this.element).data(),n),n.delay&&"number"==typeof n.delay&&(n.delay={show:n.delay,hide:n.delay}),o.typeCheckConfig(e,n,this.constructor.DefaultType),n},l.prototype._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},l._jQueryInterface=function(e){return this.each(function(){var n=t(this).data(a),r="object"===(void 0===e?"undefined":i(e))?e:null;if((n||!/dispose|hide/.test(e))&&(n||(n=new l(this,r),t(this).data(a,n)),"string"==typeof e)){if(void 0===n[e])throw new Error('No method named "'+e+'"');n[e]()}})},r(l,null,[{key:"VERSION",get:function(){return"4.0.0-alpha.5"}},{key:"Default",get:function(){return u}},{key:"NAME",get:function(){return e}},{key:"DATA_KEY",get:function(){return a}},{key:"Event",get:function(){return p}},{key:"EVENT_KEY",get:function(){return s}},{key:"DefaultType",get:function(){return c}}]),l}();return t.fn[e]=y._jQueryInterface,t.fn[e].Constructor=y,t.fn[e].noConflict=function(){return t.fn[e]=l,y._jQueryInterface},y}(jQuery));!function(o){var s="popover",l="bs.popover",u="."+l,c=o.fn[s],f=o.extend({},a.Default,{placement:"right",trigger:"click",content:"",template:''}),d=o.extend({},a.DefaultType,{content:"(string|element|function)"}),p={FADE:"fade",IN:"in"},h={TITLE:".popover-title",CONTENT:".popover-content"},m={HIDE:"hide"+u,HIDDEN:"hidden"+u,SHOW:"show"+u,SHOWN:"shown"+u,INSERTED:"inserted"+u,CLICK:"click"+u,FOCUSIN:"focusin"+u,FOCUSOUT:"focusout"+u,MOUSEENTER:"mouseenter"+u,MOUSELEAVE:"mouseleave"+u},g=function(a){function c(){return n(this,c),t(this,a.apply(this,arguments))}return e(c,a),c.prototype.isWithContent=function(){return this.getTitle()||this._getContent()},c.prototype.getTipElement=function(){return this.tip=this.tip||o(this.config.template)[0]},c.prototype.setContent=function(){var t=o(this.getTipElement());this.setElementContent(t.find(h.TITLE),this.getTitle()),this.setElementContent(t.find(h.CONTENT),this._getContent()),t.removeClass(p.FADE).removeClass(p.IN),this.cleanupTether()},c.prototype._getContent=function(){return this.element.getAttribute("data-content")||("function"==typeof this.config.content?this.config.content.call(this.element):this.config.content)},c._jQueryInterface=function(t){return this.each(function(){var e=o(this).data(l),n="object"===(void 0===t?"undefined":i(t))?t:null;if((e||!/destroy|hide/.test(t))&&(e||(e=new c(this,n),o(this).data(l,e)),"string"==typeof t)){if(void 0===e[t])throw new Error('No method named "'+t+'"');e[t]()}})},r(c,null,[{key:"VERSION",get:function(){return"4.0.0-alpha.5"}},{key:"Default",get:function(){return f}},{key:"NAME",get:function(){return s}},{key:"DATA_KEY",get:function(){return l}},{key:"Event",get:function(){return m}},{key:"EVENT_KEY",get:function(){return u}},{key:"DefaultType",get:function(){return d}}]),c}(a);o.fn[s]=g._jQueryInterface,o.fn[s].Constructor=g,o.fn[s].noConflict=function(){return o.fn[s]=c,g._jQueryInterface}}(jQuery)}()},function(t,e,n){"use strict";function i(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function r(t){return"function"==typeof t}function o(t){return"number"==typeof t}function a(t){return"object"==typeof t&&null!==t}function s(t){return void 0===t}t.exports=i,i.EventEmitter=i,i.prototype._events=void 0,i.prototype._maxListeners=void 0,i.defaultMaxListeners=10,i.prototype.setMaxListeners=function(t){if(!o(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},i.prototype.emit=function(t){var e,n,i,o,l,u;if(this._events||(this._events={}),"error"===t&&(!this._events.error||a(this._events.error)&&!this._events.error.length)){if((e=arguments[1])instanceof Error)throw e;var c=new Error('Uncaught, unspecified "error" event. ('+e+")");throw c.context=e,c}if(n=this._events[t],s(n))return!1;if(r(n))switch(arguments.length){case 1:n.call(this);break;case 2:n.call(this,arguments[1]);break;case 3:n.call(this,arguments[1],arguments[2]);break;default:o=Array.prototype.slice.call(arguments,1),n.apply(this,o)}else if(a(n))for(o=Array.prototype.slice.call(arguments,1),u=n.slice(),i=u.length,l=0;l0&&this._events[t].length>n&&(this._events[t].warned=!0,console.trace),this},i.prototype.on=i.prototype.addListener,i.prototype.once=function(t,e){function n(){this.removeListener(t,n),i||(i=!0,e.apply(this,arguments))}if(!r(e))throw TypeError("listener must be a function");var i=!1;return n.listener=e,this.on(t,n),this},i.prototype.removeListener=function(t,e){var n,i,o,s;if(!r(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(n=this._events[t],o=n.length,i=-1,n===e||r(n.listener)&&n.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(a(n)){for(s=o;s-- >0;)if(n[s]===e||n[s].listener&&n[s].listener===e){i=s;break}if(i<0)return this;1===n.length?(n.length=0,delete this._events[t]):n.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},i.prototype.removeAllListeners=function(t){var e,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[t]&&delete this._events[t],this;if(0===arguments.length){for(e in this._events)"removeListener"!==e&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(n=this._events[t],r(n))this.removeListener(t,n);else if(n)for(;n.length;)this.removeListener(t,n[n.length-1]);return delete this._events[t],this},i.prototype.listeners=function(t){return this._events&&this._events[t]?r(this._events[t])?[this._events[t]]:this._events[t].slice():[]},i.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(r(e))return 1;if(e)return e.length}return 0},i.listenerCount=function(t,e){return t.listenerCount(e)}},function(t,e,n){"use strict";var i,i;!function(e){t.exports=e()}(function(){return function t(e,n,r){function o(s,l){if(!n[s]){if(!e[s]){var u="function"==typeof i&&i;if(!l&&u)return i(s,!0);if(a)return a(s,!0);var c=new Error("Cannot find module '"+s+"'");throw c.code="MODULE_NOT_FOUND",c}var f=n[s]={exports:{}};e[s][0].call(f.exports,function(t){var n=e[s][1][t];return o(n||t)},f,f.exports,t,e,n,r)}return n[s].exports}for(var a="function"==typeof i&&i,s=0;s1&&"flex-start"===t.style.alignContent)for(e=0;i=t.lines[++r];)i.crossStart=e,e+=i.cross;else if(t.lines.length>1&&"flex-end"===t.style.alignContent)for(e=t.flexStyle.crossSpace;i=t.lines[++r];)i.crossStart=e,e+=i.cross;else if(t.lines.length>1&&"center"===t.style.alignContent)for(e=t.flexStyle.crossSpace/2;i=t.lines[++r];)i.crossStart=e,e+=i.cross;else if(t.lines.length>1&&"space-between"===t.style.alignContent)for(n=t.flexStyle.crossSpace/(t.lines.length-1),e=0;i=t.lines[++r];)i.crossStart=e,e+=i.cross+n;else if(t.lines.length>1&&"space-around"===t.style.alignContent)for(n=2*t.flexStyle.crossSpace/(2*t.lines.length),e=n/2;i=t.lines[++r];)i.crossStart=e,e+=i.cross+n;else for(n=t.flexStyle.crossSpace/t.lines.length,e=t.flexStyle.crossInnerBefore;i=t.lines[++r];)i.crossStart=e,i.cross+=n,e+=i.cross}},{}],2:[function(t,e,n){e.exports=function(t){for(var e,n=-1;line=t.lines[++n];)for(e=-1;child=line.children[++e];){var i=child.style.alignSelf;"auto"===i&&(i=t.style.alignItems),"flex-start"===i?child.flexStyle.crossStart=line.crossStart:"flex-end"===i?child.flexStyle.crossStart=line.crossStart+line.cross-child.flexStyle.crossOuter:"center"===i?child.flexStyle.crossStart=line.crossStart+(line.cross-child.flexStyle.crossOuter)/2:(child.flexStyle.crossStart=line.crossStart,child.flexStyle.crossOuter=line.cross,child.flexStyle.cross=child.flexStyle.crossOuter-child.flexStyle.crossBefore-child.flexStyle.crossAfter)}}},{}],3:[function(t,e,n){e.exports=function(t,e){var n="row"===e||"row-reverse"===e,i=t.mainAxis;if(i){n&&"inline"===i||!n&&"block"===i||(t.flexStyle={main:t.flexStyle.cross,cross:t.flexStyle.main,mainOffset:t.flexStyle.crossOffset,crossOffset:t.flexStyle.mainOffset,mainBefore:t.flexStyle.crossBefore,mainAfter:t.flexStyle.crossAfter,crossBefore:t.flexStyle.mainBefore,crossAfter:t.flexStyle.mainAfter,mainInnerBefore:t.flexStyle.crossInnerBefore,mainInnerAfter:t.flexStyle.crossInnerAfter,crossInnerBefore:t.flexStyle.mainInnerBefore,crossInnerAfter:t.flexStyle.mainInnerAfter,mainBorderBefore:t.flexStyle.crossBorderBefore,mainBorderAfter:t.flexStyle.crossBorderAfter,crossBorderBefore:t.flexStyle.mainBorderBefore,crossBorderAfter:t.flexStyle.mainBorderAfter})}else t.flexStyle=n?{main:t.style.width,cross:t.style.height,mainOffset:t.style.offsetWidth,crossOffset:t.style.offsetHeight,mainBefore:t.style.marginLeft,mainAfter:t.style.marginRight,crossBefore:t.style.marginTop,crossAfter:t.style.marginBottom,mainInnerBefore:t.style.paddingLeft,mainInnerAfter:t.style.paddingRight,crossInnerBefore:t.style.paddingTop,crossInnerAfter:t.style.paddingBottom,mainBorderBefore:t.style.borderLeftWidth,mainBorderAfter:t.style.borderRightWidth,crossBorderBefore:t.style.borderTopWidth,crossBorderAfter:t.style.borderBottomWidth}:{main:t.style.height,cross:t.style.width,mainOffset:t.style.offsetHeight,crossOffset:t.style.offsetWidth,mainBefore:t.style.marginTop,mainAfter:t.style.marginBottom,crossBefore:t.style.marginLeft,crossAfter:t.style.marginRight,mainInnerBefore:t.style.paddingTop,mainInnerAfter:t.style.paddingBottom,crossInnerBefore:t.style.paddingLeft,crossInnerAfter:t.style.paddingRight,mainBorderBefore:t.style.borderTopWidth,mainBorderAfter:t.style.borderBottomWidth,crossBorderBefore:t.style.borderLeftWidth,crossBorderAfter:t.style.borderRightWidth},"content-box"===t.style.boxSizing&&("number"==typeof t.flexStyle.main&&(t.flexStyle.main+=t.flexStyle.mainInnerBefore+t.flexStyle.mainInnerAfter+t.flexStyle.mainBorderBefore+t.flexStyle.mainBorderAfter),"number"==typeof t.flexStyle.cross&&(t.flexStyle.cross+=t.flexStyle.crossInnerBefore+t.flexStyle.crossInnerAfter+t.flexStyle.crossBorderBefore+t.flexStyle.crossBorderAfter));t.mainAxis=n?"inline":"block",t.crossAxis=n?"block":"inline","number"==typeof t.style.flexBasis&&(t.flexStyle.main=t.style.flexBasis+t.flexStyle.mainInnerBefore+t.flexStyle.mainInnerAfter+t.flexStyle.mainBorderBefore+t.flexStyle.mainBorderAfter),t.flexStyle.mainOuter=t.flexStyle.main,t.flexStyle.crossOuter=t.flexStyle.cross,"auto"===t.flexStyle.mainOuter&&(t.flexStyle.mainOuter=t.flexStyle.mainOffset),"auto"===t.flexStyle.crossOuter&&(t.flexStyle.crossOuter=t.flexStyle.crossOffset),"number"==typeof t.flexStyle.mainBefore&&(t.flexStyle.mainOuter+=t.flexStyle.mainBefore),"number"==typeof t.flexStyle.mainAfter&&(t.flexStyle.mainOuter+=t.flexStyle.mainAfter),"number"==typeof t.flexStyle.crossBefore&&(t.flexStyle.crossOuter+=t.flexStyle.crossBefore),"number"==typeof t.flexStyle.crossAfter&&(t.flexStyle.crossOuter+=t.flexStyle.crossAfter)}},{}],4:[function(t,e,n){var i=t("../reduce");e.exports=function(t){if(t.mainSpace>0){var e=i(t.children,function(t,e){return t+parseFloat(e.style.flexGrow)},0);e>0&&(t.main=i(t.children,function(n,i){return"auto"===i.flexStyle.main?i.flexStyle.main=i.flexStyle.mainOffset+parseFloat(i.style.flexGrow)/e*t.mainSpace:i.flexStyle.main+=parseFloat(i.style.flexGrow)/e*t.mainSpace,i.flexStyle.mainOuter=i.flexStyle.main+i.flexStyle.mainBefore+i.flexStyle.mainAfter,n+i.flexStyle.mainOuter},0),t.mainSpace=0)}}},{"../reduce":12}],5:[function(t,e,n){var i=t("../reduce");e.exports=function(t){if(t.mainSpace<0){var e=i(t.children,function(t,e){return t+parseFloat(e.style.flexShrink)},0);e>0&&(t.main=i(t.children,function(n,i){return i.flexStyle.main+=parseFloat(i.style.flexShrink)/e*t.mainSpace,i.flexStyle.mainOuter=i.flexStyle.main+i.flexStyle.mainBefore+i.flexStyle.mainAfter,n+i.flexStyle.mainOuter},0),t.mainSpace=0)}}},{"../reduce":12}],6:[function(t,e,n){var i=t("../reduce");e.exports=function(t){var e;t.lines=[e={main:0,cross:0,children:[]}];for(var n,r=-1;n=t.children[++r];)"nowrap"===t.style.flexWrap||0===e.children.length||"auto"===t.flexStyle.main||t.flexStyle.main-t.flexStyle.mainInnerBefore-t.flexStyle.mainInnerAfter-t.flexStyle.mainBorderBefore-t.flexStyle.mainBorderAfter>=e.main+n.flexStyle.mainOuter?(e.main+=n.flexStyle.mainOuter,e.cross=Math.max(e.cross,n.flexStyle.crossOuter)):t.lines.push(e={main:n.flexStyle.mainOuter,cross:n.flexStyle.crossOuter,children:[]}),e.children.push(n);t.flexStyle.mainLines=i(t.lines,function(t,e){return Math.max(t,e.main)},0),t.flexStyle.crossLines=i(t.lines,function(t,e){return t+e.cross},0),"auto"===t.flexStyle.main&&(t.flexStyle.main=Math.max(t.flexStyle.mainOffset,t.flexStyle.mainLines+t.flexStyle.mainInnerBefore+t.flexStyle.mainInnerAfter+t.flexStyle.mainBorderBefore+t.flexStyle.mainBorderAfter)),"auto"===t.flexStyle.cross&&(t.flexStyle.cross=Math.max(t.flexStyle.crossOffset,t.flexStyle.crossLines+t.flexStyle.crossInnerBefore+t.flexStyle.crossInnerAfter+t.flexStyle.crossBorderBefore+t.flexStyle.crossBorderAfter)),t.flexStyle.crossSpace=t.flexStyle.cross-t.flexStyle.crossInnerBefore-t.flexStyle.crossInnerAfter-t.flexStyle.crossBorderBefore-t.flexStyle.crossBorderAfter-t.flexStyle.crossLines,t.flexStyle.mainOuter=t.flexStyle.main+t.flexStyle.mainBefore+t.flexStyle.mainAfter,t.flexStyle.crossOuter=t.flexStyle.cross+t.flexStyle.crossBefore+t.flexStyle.crossAfter}},{"../reduce":12}],7:[function(t,e,n){function i(e){for(var n,i=-1;n=e.children[++i];)t("./flex-direction")(n,e.style.flexDirection);t("./flex-direction")(e,e.style.flexDirection),t("./order")(e),t("./flexbox-lines")(e),t("./align-content")(e),i=-1;for(var r;r=e.lines[++i];)r.mainSpace=e.flexStyle.main-e.flexStyle.mainInnerBefore-e.flexStyle.mainInnerAfter-e.flexStyle.mainBorderBefore-e.flexStyle.mainBorderAfter-r.main,t("./flex-grow")(r),t("./flex-shrink")(r),t("./margin-main")(r),t("./margin-cross")(r),t("./justify-content")(r,e.style.justifyContent,e);t("./align-items")(e)}e.exports=i},{"./align-content":1,"./align-items":2,"./flex-direction":3,"./flex-grow":4,"./flex-shrink":5,"./flexbox-lines":6,"./justify-content":8,"./margin-cross":9,"./margin-main":10,"./order":11}],8:[function(t,e,n){e.exports=function(t,e,n){var i,r,o,a=n.flexStyle.mainInnerBefore,s=-1;if("flex-end"===e)for(i=t.mainSpace,i+=a;o=t.children[++s];)o.flexStyle.mainStart=i,i+=o.flexStyle.mainOuter;else if("center"===e)for(i=t.mainSpace/2,i+=a;o=t.children[++s];)o.flexStyle.mainStart=i,i+=o.flexStyle.mainOuter;else if("space-between"===e)for(r=t.mainSpace/(t.children.length-1),i=0,i+=a;o=t.children[++s];)o.flexStyle.mainStart=i,i+=o.flexStyle.mainOuter+r;else if("space-around"===e)for(r=2*t.mainSpace/(2*t.children.length),i=r/2,i+=a;o=t.children[++s];)o.flexStyle.mainStart=i,i+=o.flexStyle.mainOuter+r;else for(i=0,i+=a;o=t.children[++s];)o.flexStyle.mainStart=i,i+=o.flexStyle.mainOuter}},{}],9:[function(t,e,n){e.exports=function(t){for(var e,n=-1;e=t.children[++n];){var i=0;"auto"===e.flexStyle.crossBefore&&++i,"auto"===e.flexStyle.crossAfter&&++i;var r=t.cross-e.flexStyle.crossOuter;"auto"===e.flexStyle.crossBefore&&(e.flexStyle.crossBefore=r/i),"auto"===e.flexStyle.crossAfter&&(e.flexStyle.crossAfter=r/i),"auto"===e.flexStyle.cross?e.flexStyle.crossOuter=e.flexStyle.crossOffset+e.flexStyle.crossBefore+e.flexStyle.crossAfter:e.flexStyle.crossOuter=e.flexStyle.cross+e.flexStyle.crossBefore+e.flexStyle.crossAfter}}},{}],10:[function(t,e,n){e.exports=function(t){for(var e,n=0,i=-1;e=t.children[++i];)"auto"===e.flexStyle.mainBefore&&++n,"auto"===e.flexStyle.mainAfter&&++n;if(n>0){for(i=-1;e=t.children[++i];)"auto"===e.flexStyle.mainBefore&&(e.flexStyle.mainBefore=t.mainSpace/n),"auto"===e.flexStyle.mainAfter&&(e.flexStyle.mainAfter=t.mainSpace/n),"auto"===e.flexStyle.main?e.flexStyle.mainOuter=e.flexStyle.mainOffset+e.flexStyle.mainBefore+e.flexStyle.mainAfter:e.flexStyle.mainOuter=e.flexStyle.main+e.flexStyle.mainBefore+e.flexStyle.mainAfter;t.mainSpace=0}}},{}],11:[function(t,e,n){var i=/^(column|row)-reverse$/;e.exports=function(t){t.children.sort(function(t,e){return t.style.order-e.style.order||t.index-e.index}),i.test(t.style.flexDirection)&&t.children.reverse()}},{}],12:[function(t,e,n){function i(t,e,n){for(var i=t.length,r=-1;++r=0)&&i.push(r)}return i.push(t.ownerDocument.body),t.ownerDocument!==document&&i.push(t.ownerDocument.defaultView),i}function a(){C&&document.body.removeChild(C),C=null}function s(t){var e=void 0;t===document?(e=document,t=document.documentElement):e=t.ownerDocument;var n=e.documentElement,i=r(t),o=I();return i.top-=o.top,i.left-=o.left,void 0===i.width&&(i.width=document.body.scrollWidth-i.left-i.right),void 0===i.height&&(i.height=document.body.scrollHeight-i.top-i.bottom),i.top=i.top-n.clientTop,i.left=i.left-n.clientLeft,i.right=e.body.clientWidth-i.width-i.left,i.bottom=e.body.clientHeight-i.height-i.top,i}function l(t){return t.offsetParent||document.documentElement}function u(){if(O)return O;var t=document.createElement("div");t.style.width="100%",t.style.height="200px";var e=document.createElement("div");c(e.style,{position:"absolute",top:0,left:0,pointerEvents:"none",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),e.appendChild(t),document.body.appendChild(e);var n=t.offsetWidth;e.style.overflow="scroll";var i=t.offsetWidth;n===i&&(i=e.clientWidth),document.body.removeChild(e);var r=n-i;return O={width:r,height:r}}function c(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],e=[];return Array.prototype.push.apply(e,arguments),e.slice(1).forEach(function(e){if(e)for(var n in e)({}).hasOwnProperty.call(e,n)&&(t[n]=e[n])}),t}function f(t,e){if(void 0!==t.classList)e.split(" ").forEach(function(e){e.trim()&&t.classList.remove(e)});else{var n=new RegExp("(^| )"+e.split(" ").join("|")+"( |$)","gi"),i=h(t).replace(n," ");m(t,i)}}function d(t,e){if(void 0!==t.classList)e.split(" ").forEach(function(e){e.trim()&&t.classList.add(e)});else{f(t,e);var n=h(t)+" "+e;m(t,n)}}function p(t,e){if(void 0!==t.classList)return t.classList.contains(e);var n=h(t);return new RegExp("(^| )"+e+"( |$)","gi").test(n)}function h(t){return t.className instanceof t.ownerDocument.defaultView.SVGAnimatedString?t.className.baseVal:t.className}function m(t,e){t.setAttribute("class",e)}function g(t,e,n){n.forEach(function(n){-1===e.indexOf(n)&&p(t,n)&&f(t,n)}),e.forEach(function(e){p(t,e)||d(t,e)})}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function v(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function y(t,e){var n=arguments.length<=2||void 0===arguments[2]?1:arguments[2];return t+n>=e&&e>=t-n}function b(){return"undefined"!=typeof performance&&void 0!==performance.now?performance.now():+new Date}function _(){for(var t={top:0,left:0},e=arguments.length,n=Array(e),i=0;i1?n-1:0),r=1;r16)return e=Math.min(e-16,250),void(n=setTimeout(i,250));void 0!==t&&b()-t<10||(null!=n&&(clearTimeout(n),n=null),t=b(),R(),e=b()-t)};"undefined"!=typeof window&&void 0!==window.addEventListener&&["resize","scroll","touchmove"].forEach(function(t){window.addEventListener(t,i)})}();var M={center:"center",left:"right",right:"left"},H={middle:"middle",top:"bottom",bottom:"top"},W={top:0,left:0,middle:"50%",center:"50%",bottom:"100%",right:"100%"},U=function(t,e){var n=t.left,i=t.top;return"auto"===n&&(n=M[e.left]),"auto"===i&&(i=H[e.top]),{left:n,top:i}},q=function(t){var e=t.left,n=t.top;return void 0!==W[t.left]&&(e=W[t.left]),void 0!==W[t.top]&&(n=W[t.top]),{left:e,top:n}},z=function(t){var e=t.split(" "),n=L(e,2);return{top:n[0],left:n[1]}},$=z,Q=function(t){function e(t){var n=this;i(this,e),j(Object.getPrototypeOf(e.prototype),"constructor",this).call(this),this.position=this.position.bind(this),F.push(this),this.history=[],this.setOptions(t,!1),E.modules.forEach(function(t){void 0!==t.initialize&&t.initialize.call(n)}),this.position()}return v(e,t),S(e,[{key:"getClass",value:function(){var t=arguments.length<=0||void 0===arguments[0]?"":arguments[0],e=this.options.classes;return void 0!==e&&e[t]?this.options.classes[t]:this.options.classPrefix?this.options.classPrefix+"-"+t:t}},{key:"setOptions",value:function(t){var e=this,n=arguments.length<=1||void 0===arguments[1]||arguments[1],i={offset:"0 0",targetOffset:"0 0",targetAttachment:"auto auto",classPrefix:"tether"};this.options=c(i,t);var r=this.options,a=r.element,s=r.target,l=r.targetModifier;if(this.element=a,this.target=s,this.targetModifier=l,"viewport"===this.target?(this.target=document.body,this.targetModifier="visible"):"scroll-handle"===this.target&&(this.target=document.body,this.targetModifier="scroll-handle"),["element","target"].forEach(function(t){if(void 0===e[t])throw new Error("Tether Error: Both element and target must be defined");void 0!==e[t].jquery?e[t]=e[t][0]:"string"==typeof e[t]&&(e[t]=document.querySelector(e[t]))}),d(this.element,this.getClass("element")),!1!==this.options.addTargetClasses&&d(this.target,this.getClass("target")),!this.options.attachment)throw new Error("Tether Error: You must provide an attachment");this.targetAttachment=$(this.options.targetAttachment),this.attachment=$(this.options.attachment),this.offset=z(this.options.offset),this.targetOffset=z(this.options.targetOffset),void 0!==this.scrollParents&&this.disable(),"scroll-handle"===this.targetModifier?this.scrollParents=[this.target]:this.scrollParents=o(this.target),!1!==this.options.enabled&&this.enable(n)}},{key:"getTargetBounds",value:function(){if(void 0===this.targetModifier)return s(this.target);if("visible"===this.targetModifier){if(this.target===document.body)return{top:pageYOffset,left:pageXOffset,height:innerHeight,width:innerWidth};var t=s(this.target),e={height:t.height,width:t.width,top:t.top,left:t.left};return e.height=Math.min(e.height,t.height-(pageYOffset-t.top)),e.height=Math.min(e.height,t.height-(t.top+t.height-(pageYOffset+innerHeight))),e.height=Math.min(innerHeight,e.height),e.height-=2,e.width=Math.min(e.width,t.width-(pageXOffset-t.left)),e.width=Math.min(e.width,t.width-(t.left+t.width-(pageXOffset+innerWidth))),e.width=Math.min(innerWidth,e.width),e.width-=2,e.topn.clientWidth||[i.overflow,i.overflowX].indexOf("scroll")>=0||this.target!==document.body,o=0;r&&(o=15);var a=t.height-parseFloat(i.borderTopWidth)-parseFloat(i.borderBottomWidth)-o,e={width:15,height:.975*a*(a/n.scrollHeight),left:t.left+t.width-parseFloat(i.borderLeftWidth)-15},l=0;a<408&&this.target===document.body&&(l=-11e-5*Math.pow(a,2)-.00727*a+22.58),this.target!==document.body&&(e.height=Math.max(e.height,24));var u=this.target.scrollTop/(n.scrollHeight-a);return e.top=u*(a-e.height-l)+t.top+parseFloat(i.borderTopWidth),this.target===document.body&&(e.height=Math.max(e.height,24)),e}}},{key:"clearCache",value:function(){this._cache={}}},{key:"cache",value:function(t,e){return void 0===this._cache&&(this._cache={}),void 0===this._cache[t]&&(this._cache[t]=e.call(this)),this._cache[t]}},{key:"enable",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]||arguments[0];!1!==this.options.addTargetClasses&&d(this.target,this.getClass("enabled")),d(this.element,this.getClass("enabled")),this.enabled=!0,this.scrollParents.forEach(function(e){e!==t.target.ownerDocument&&e.addEventListener("scroll",t.position)}),e&&this.position()}},{key:"disable",value:function(){var t=this;f(this.target,this.getClass("enabled")),f(this.element,this.getClass("enabled")),this.enabled=!1,void 0!==this.scrollParents&&this.scrollParents.forEach(function(e){e.removeEventListener("scroll",t.position)})}},{key:"destroy",value:function(){var t=this;this.disable(),F.forEach(function(e,n){e===t&&F.splice(n,1)}),0===F.length&&a()}},{key:"updateAttachClasses",value:function(t,e){var n=this;t=t||this.attachment,e=e||this.targetAttachment;var i=["left","top","bottom","right","middle","center"];void 0!==this._addAttachClasses&&this._addAttachClasses.length&&this._addAttachClasses.splice(0,this._addAttachClasses.length),void 0===this._addAttachClasses&&(this._addAttachClasses=[]);var r=this._addAttachClasses;t.top&&r.push(this.getClass("element-attached")+"-"+t.top),t.left&&r.push(this.getClass("element-attached")+"-"+t.left),e.top&&r.push(this.getClass("target-attached")+"-"+e.top),e.left&&r.push(this.getClass("target-attached")+"-"+e.left);var o=[];i.forEach(function(t){o.push(n.getClass("element-attached")+"-"+t),o.push(n.getClass("target-attached")+"-"+t)}),D(function(){void 0!==n._addAttachClasses&&(g(n.element,n._addAttachClasses,o),!1!==n.options.addTargetClasses&&g(n.target,n._addAttachClasses,o),delete n._addAttachClasses)})}},{key:"position",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]||arguments[0];if(this.enabled){this.clearCache();var n=U(this.targetAttachment,this.attachment);this.updateAttachClasses(this.attachment,n);var i=this.cache("element-bounds",function(){return s(t.element)}),r=i.width,o=i.height;if(0===r&&0===o&&void 0!==this.lastSize){var a=this.lastSize;r=a.width,o=a.height}else this.lastSize={width:r,height:o};var c=this.cache("target-bounds",function(){return t.getTargetBounds()}),f=c,d=x(q(this.attachment),{width:r,height:o}),p=x(q(n),f),h=x(this.offset,{width:r,height:o}),m=x(this.targetOffset,f);d=_(d,h),p=_(p,m);for(var g=c.left+p.left-d.left,v=c.top+p.top-d.top,y=0;yC.documentElement.clientHeight&&(A=this.cache("scrollbar-size",u),S.viewport.bottom-=A.height),T.innerWidth>C.documentElement.clientWidth&&(A=this.cache("scrollbar-size",u),S.viewport.right-=A.width),-1!==["","static"].indexOf(C.body.style.position)&&-1!==["","static"].indexOf(C.body.parentElement.style.position)||(S.page.bottom=C.body.scrollHeight-v-o,S.page.right=C.body.scrollWidth-g-r),void 0!==this.options.optimizations&&!1!==this.options.optimizations.moveElement&&void 0===this.targetModifier&&function(){var e=t.cache("target-offsetparent",function(){return l(t.target)}),n=t.cache("target-offsetparent-bounds",function(){return s(e)}),i=getComputedStyle(e),r=n,o={};if(["Top","Left","Bottom","Right"].forEach(function(t){o[t.toLowerCase()]=parseFloat(i["border"+t+"Width"])}),n.right=C.body.scrollWidth-n.left-r.width+o.right,n.bottom=C.body.scrollHeight-n.top-r.height+o.bottom,S.page.top>=n.top+o.top&&S.page.bottom>=n.bottom&&S.page.left>=n.left+o.left&&S.page.right>=n.right){var a=e.scrollTop,u=e.scrollLeft;S.offset={top:S.page.top-n.top+a-o.top,left:S.page.left-n.left+u-o.left}}}(),this.move(S),this.history.unshift(S),this.history.length>3&&this.history.pop(),e&&N(),!0}}},{key:"move",value:function(t){var e=this;if(void 0!==this.element.parentNode){var n={};for(var i in t){n[i]={};for(var r in t[i]){for(var o=!1,a=0;a=0){var h=s.split(" "),g=L(h,2);f=g[0],c=g[1]}else c=f=s;var b=w(e,o);"target"!==f&&"both"!==f||(nb[3]&&"bottom"===v.top&&(n-=d,v.top="top")),"together"===f&&("top"===v.top&&("bottom"===y.top&&nb[3]&&n-(a-d)>=b[1]&&(n-=a-d,v.top="bottom",y.top="bottom")),"bottom"===v.top&&("top"===y.top&&n+a>b[3]?(n-=d,v.top="top",n-=a,y.top="bottom"):"bottom"===y.top&&nb[3]&&"top"===y.top?(n-=a,y.top="bottom"):nb[2]&&"right"===v.left&&(i-=p,v.left="left")),"together"===c&&(ib[2]&&"right"===v.left?"left"===y.left?(i-=p,v.left="left",i-=l,y.left="right"):"right"===y.left&&(i-=p,v.left="left",i+=l,y.left="left"):"center"===v.left&&(i+l>b[2]&&"left"===y.left?(i-=l,y.left="right"):ib[3]&&"top"===y.top&&(n-=a,y.top="bottom")),"element"!==c&&"both"!==c||(ib[2]&&("left"===y.left?(i-=l,y.left="right"):"center"===y.left&&(i-=l/2,y.left="right"))),"string"==typeof u?u=u.split(",").map(function(t){return t.trim()}):!0===u&&(u=["top","left","right","bottom"]),u=u||[];var _=[],x=[];n=0?(n=b[1],_.push("top")):x.push("top")),n+a>b[3]&&(u.indexOf("bottom")>=0?(n=b[3]-a,_.push("bottom")):x.push("bottom")),i=0?(i=b[0],_.push("left")):x.push("left")),i+l>b[2]&&(u.indexOf("right")>=0?(i=b[2]-l,_.push("right")):x.push("right")),_.length&&function(){var t=void 0;t=void 0!==e.options.pinnedClass?e.options.pinnedClass:e.getClass("pinned"),m.push(t),_.forEach(function(e){m.push(t+"-"+e)})}(),x.length&&function(){var t=void 0;t=void 0!==e.options.outOfBoundsClass?e.options.outOfBoundsClass:e.getClass("out-of-bounds"),m.push(t),x.forEach(function(e){m.push(t+"-"+e)})}(),(_.indexOf("left")>=0||_.indexOf("right")>=0)&&(y.left=v.left=!1),(_.indexOf("top")>=0||_.indexOf("bottom")>=0)&&(y.top=v.top=!1),v.top===r.top&&v.left===r.left&&y.top===e.attachment.top&&y.left===e.attachment.left||(e.updateAttachClasses(y,v),e.trigger("update",{attachment:y,targetAttachment:v}))}),D(function(){!1!==e.options.addTargetClasses&&g(e.target,m,h),g(e.element,m,h)}),{top:n,left:i}}});var B=E.Utils,s=B.getBounds,g=B.updateClasses,D=B.defer;E.modules.push({position:function(t){var e=this,n=t.top,i=t.left,r=this.cache("element-bounds",function(){return s(e.element)}),o=r.height,a=r.width,l=this.getTargetBounds(),u=n+o,c=i+a,f=[];n<=l.bottom&&u>=l.top&&["left","right"].forEach(function(t){var e=l[t];e!==i&&e!==c||f.push(t)}),i<=l.right&&c>=l.left&&["top","bottom"].forEach(function(t){var e=l[t];e!==n&&e!==u||f.push(t)});var d=[],p=[],h=["left","top","right","bottom"];return d.push(this.getClass("abutted")),h.forEach(function(t){d.push(e.getClass("abutted")+"-"+t)}),f.length&&p.push(this.getClass("abutted")),f.forEach(function(t){p.push(e.getClass("abutted")+"-"+t)}),D(function(){!1!==e.options.addTargetClasses&&g(e.target,p,d),g(e.element,p,d)}),!0}});var L=function(){function t(t,e){var n=[],i=!0,r=!1,o=void 0;try{for(var a,s=t[Symbol.iterator]();!(i=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);i=!0);}catch(t){r=!0,o=t}finally{try{!i&&s.return&&s.return()}finally{if(r)throw o}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}();return E.modules.push({position:function(t){var e=t.top,n=t.left;if(this.options.shift){var i=this.options.shift;"function"==typeof this.options.shift&&(i=this.options.shift.call(this,{top:e,left:n}));var r=void 0,o=void 0;if("string"==typeof i){i=i.split(" "),i[1]=i[1]||i[0];var a=i,s=L(a,2);r=s[0],o=s[1],r=parseFloat(r,10),o=parseFloat(o,10)}else r=i.top,o=i.left;return e+=r,n+=o,{top:e,left:n}}}}),G})},function(t,e,n){"use strict";var i;i=function(){return this}();try{i=i||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(i=window)}t.exports=i},function(t,e,n){(function(e){t.exports=e.Tether=n(23)}).call(e,n(24))},function(t,e,n){n(5),t.exports=n(6)}]); \ No newline at end of file diff --git a/config/.htaccess b/config/.htaccess new file mode 100644 index 0000000..3de9e40 --- /dev/null +++ b/config/.htaccess @@ -0,0 +1,10 @@ +# Apache 2.2 + + Order deny,allow + Deny from all + + +# Apache 2.4 + + Require all denied + diff --git a/config/theme.yml b/config/theme.yml new file mode 100644 index 0000000..89b27d4 --- /dev/null +++ b/config/theme.yml @@ -0,0 +1,120 @@ +name: elegance +display_name: Elegance +version: 1.0.0 +author: + name: "Thob team" + email: "tech@thob.studio" + url: "http://thob.studio" + +meta: + compatibility: + from: 1.7.0.0 + to: ~ + + available_layouts: + layout-full-width: + name: Full Width + description: No side columns, ideal for distraction-free pages such as product pages. + +assets: +# If you're using this theme as child and you want to load +# the parent theme assets, uncomment this line. +# use_parent_assets: true + +# The following lines are showing how to load assets in your page +# Uncomment and change value to start loading css or js files +# css: +# all: +# - id: custom-lib-style +# path: assets/css/custom-lib.css +# product: +# - id: product-style +# path: assets/css/product.css +# media: all +# priority: 200 +# js: +# cart: +# - id: cat-extra-lib +# path: assets/js/cart-lib.js + + +global_settings: + configuration: + PS_IMAGE_QUALITY: png + modules: + to_enable: + - ps_linklist + hooks: + custom_hooks: + - name: displayMainMenu + title: Display main menu + description: Display main menu + modules_to_hook: + displayNav1: + - ps_contactinfo + displayNav2: + - ps_languageselector + - ps_currencyselector + - ps_customersignin + - ps_shoppingcart + displayTop: + - ps_mainmenu + - ps_searchbar + displayHome: + - ps_imageslider + - ps_featuredproducts + - ps_banner + - ps_customtext + displayFooterBefore: + - ps_emailsubscription + - ps_socialfollow + displayFooter: + - ps_linklist + - ps_customeraccountlinks + - ps_contactinfo + displayLeftColumn: + - ps_categorytree + - ps_facetedsearch + displaySearch: + - ps_searchbar + displayProductAdditionalInfo: + - ps_sharebuttons + displayReassurance: + - blockreassurance + displayOrderConfirmation2: + - ps_featuredproducts + displayCrossSellingShoppingCart: + - ps_featuredproducts + + image_types: + cart_default: + width: 125 + height: 125 + scope: [products] + small_default: + width: 98 + height: 98 + scope: [products, categories, manufacturers, suppliers] + medium_default: + width: 452 + height: 452 + scope: [products, manufacturers, suppliers] + home_default: + width: 250 + height: 250 + scope: [products] + large_default: + width: 800 + height: 800 + scope: [products, manufacturers, suppliers] + category_default: + width: 141 + height: 180 + scope: [categories] + stores_default: + width: 170 + height: 115 + scope: [stores] + +theme_settings: + default_layout: layout-full-width diff --git a/modules/blockreassurance/views/templates/hook/blockreassurance.tpl b/modules/blockreassurance/views/templates/hook/blockreassurance.tpl new file mode 100644 index 0000000..196ea01 --- /dev/null +++ b/modules/blockreassurance/views/templates/hook/blockreassurance.tpl @@ -0,0 +1,38 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if $elements} +
+
    + {foreach from=$elements item=element} +
  • +
    + {$element.text} + {$element.text} +
    +
  • + {/foreach} +
+
+{/if} diff --git a/modules/contactform/views/templates/widget/contactform.tpl b/modules/contactform/views/templates/widget/contactform.tpl new file mode 100644 index 0000000..18849f0 --- /dev/null +++ b/modules/contactform/views/templates/widget/contactform.tpl @@ -0,0 +1,135 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
+
+ + {if $notifications} +
+
    + {foreach $notifications.messages as $notif} +
  • {$notif}
  • + {/foreach} +
+
+ {/if} + + {if !$notifications || $notifications.nw_error} +
+ +
+
+

{l s='Contact us' d='Shop.Theme.Global'}

+
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ + {if $contact.orders} +
+ +
+ +
+ + {l s='optional' d='Shop.Forms.Help'} + +
+ {/if} + + {if $contact.allow_file_upload} +
+ +
+ +
+ + {l s='optional' d='Shop.Forms.Help'} + +
+ {/if} + +
+ +
+ +
+
+ + {if isset($id_module)} +
+
+ {hook h='displayGDPRConsent' id_module=$id_module} +
+
+ {/if} + +
+ +
+ + + + +
+ {/if} + +
+
diff --git a/modules/ps_advertising/index.php b/modules/ps_advertising/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_advertising/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_advertising/ps_advertising.tpl b/modules/ps_advertising/ps_advertising.tpl new file mode 100644 index 0000000..8853778 --- /dev/null +++ b/modules/ps_advertising/ps_advertising.tpl @@ -0,0 +1,28 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
+ {$adv_title} +
diff --git a/modules/ps_banner/ps_banner.tpl b/modules/ps_banner/ps_banner.tpl new file mode 100644 index 0000000..5a289ad --- /dev/null +++ b/modules/ps_banner/ps_banner.tpl @@ -0,0 +1,31 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_bestsellers/views/index.php b/modules/ps_bestsellers/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_bestsellers/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_bestsellers/views/templates/hook/index.php b/modules/ps_bestsellers/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_bestsellers/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_bestsellers/views/templates/hook/ps_bestsellers.tpl b/modules/ps_bestsellers/views/templates/hook/ps_bestsellers.tpl new file mode 100644 index 0000000..66f1286 --- /dev/null +++ b/modules/ps_bestsellers/views/templates/hook/ps_bestsellers.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_bestsellers/views/templates/index.php b/modules/ps_bestsellers/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_bestsellers/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_brandlist/views/index.php b/modules/ps_brandlist/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_brandlist/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_brandlist/views/templates/_partials/brand_form.tpl b/modules/ps_brandlist/views/templates/_partials/brand_form.tpl new file mode 100644 index 0000000..cbd1fb5 --- /dev/null +++ b/modules/ps_brandlist/views/templates/_partials/brand_form.tpl @@ -0,0 +1,33 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
+ +
diff --git a/modules/ps_brandlist/views/templates/_partials/brand_text.tpl b/modules/ps_brandlist/views/templates/_partials/brand_text.tpl new file mode 100644 index 0000000..2399630 --- /dev/null +++ b/modules/ps_brandlist/views/templates/_partials/brand_text.tpl @@ -0,0 +1,36 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
    + {foreach from=$brands item=brand name=brand_list} + {if $smarty.foreach.brand_list.iteration <= $text_list_nb} +
  • + + {$brand['name']} + +
  • + {/if} + {/foreach} +
diff --git a/modules/ps_brandlist/views/templates/_partials/index.php b/modules/ps_brandlist/views/templates/_partials/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_brandlist/views/templates/_partials/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_brandlist/views/templates/hook/index.php b/modules/ps_brandlist/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_brandlist/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_brandlist/views/templates/hook/ps_brandlist.tpl b/modules/ps_brandlist/views/templates/hook/ps_brandlist.tpl new file mode 100644 index 0000000..624a174 --- /dev/null +++ b/modules/ps_brandlist/views/templates/hook/ps_brandlist.tpl @@ -0,0 +1,41 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
+
+

+ {if $display_link_brand}{/if} + {l s='Brands' d='Shop.Theme.Catalog'} + {if $display_link_brand}{/if} +

+
+ {if $brands} + {include file="module:ps_brandlist/views/templates/_partials/$brand_display_type.tpl" brands=$brands} + {else} +

{l s='No brand' d='Shop.Theme.Catalog'}

+ {/if} +
+
+
diff --git a/modules/ps_brandlist/views/templates/index.php b/modules/ps_brandlist/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_brandlist/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_categoryproducts/views/index.php b/modules/ps_categoryproducts/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_categoryproducts/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_categoryproducts/views/templates/hook/index.php b/modules/ps_categoryproducts/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_categoryproducts/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_categoryproducts/views/templates/hook/ps_categoryproducts.tpl b/modules/ps_categoryproducts/views/templates/hook/ps_categoryproducts.tpl new file mode 100644 index 0000000..3139444 --- /dev/null +++ b/modules/ps_categoryproducts/views/templates/hook/ps_categoryproducts.tpl @@ -0,0 +1,38 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_categoryproducts/views/templates/index.php b/modules/ps_categoryproducts/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_categoryproducts/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_categorytree/views/templates/hook/ps_categorytree.tpl b/modules/ps_categorytree/views/templates/hook/ps_categorytree.tpl new file mode 100644 index 0000000..90e78c7 --- /dev/null +++ b/modules/ps_categorytree/views/templates/hook/ps_categorytree.tpl @@ -0,0 +1,67 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +{function name="categories" nodes=[] depth=0} + {strip} + {if $nodes|count} +
    + {foreach from=$nodes item=node} +
  • + {if $depth===0} + {$node.name} + {if $node.children} + +
    + {categories nodes=$node.children depth=$depth+1} +
    + {/if} + {else} + {$node.name} + {if $node.children} + + + + +
    + {categories nodes=$node.children depth=$depth+1} +
    + {/if} + {/if} +
  • + {/foreach} +
+ {/if} + {/strip} +{/function} + +
+ +
diff --git a/modules/ps_contactinfo/nav.tpl b/modules/ps_contactinfo/nav.tpl new file mode 100644 index 0000000..c325517 --- /dev/null +++ b/modules/ps_contactinfo/nav.tpl @@ -0,0 +1,42 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_contactinfo/ps_contactinfo-rich.tpl b/modules/ps_contactinfo/ps_contactinfo-rich.tpl new file mode 100644 index 0000000..ae79bc0 --- /dev/null +++ b/modules/ps_contactinfo/ps_contactinfo-rich.tpl @@ -0,0 +1,62 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
+

{l s='Store information' d='Shop.Theme.Global'}

+
+
+
{$contact_infos.address.formatted nofilter}
+
+ {if $contact_infos.phone} +
+
+
+
+ {l s='Call us:' d='Shop.Theme.Global'}
+ {$contact_infos.phone} +
+
+ {/if} + {if $contact_infos.fax} +
+
+
+
+ {l s='Fax:' d='Shop.Theme.Global'}
+ {$contact_infos.fax} +
+
+ {/if} + {if $contact_infos.email} +
+
+
+ + {$contact_infos.email} +
+ {/if} +
diff --git a/modules/ps_contactinfo/ps_contactinfo.tpl b/modules/ps_contactinfo/ps_contactinfo.tpl new file mode 100644 index 0000000..e7bda1b --- /dev/null +++ b/modules/ps_contactinfo/ps_contactinfo.tpl @@ -0,0 +1,74 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + diff --git a/modules/ps_crossselling/views/index.php b/modules/ps_crossselling/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_crossselling/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_crossselling/views/templates/hook/index.php b/modules/ps_crossselling/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_crossselling/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_crossselling/views/templates/hook/ps_crossselling.tpl b/modules/ps_crossselling/views/templates/hook/ps_crossselling.tpl new file mode 100644 index 0000000..020b16d --- /dev/null +++ b/modules/ps_crossselling/views/templates/hook/ps_crossselling.tpl @@ -0,0 +1,33 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + diff --git a/modules/ps_crossselling/views/templates/index.php b/modules/ps_crossselling/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_crossselling/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_currencyselector/ps_currencyselector.tpl b/modules/ps_currencyselector/ps_currencyselector.tpl new file mode 100644 index 0000000..aaf9c7b --- /dev/null +++ b/modules/ps_currencyselector/ps_currencyselector.tpl @@ -0,0 +1,46 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
+ +
diff --git a/modules/ps_customeraccountlinks/ps_customeraccountlinks.tpl b/modules/ps_customeraccountlinks/ps_customeraccountlinks.tpl new file mode 100644 index 0000000..ee8832e --- /dev/null +++ b/modules/ps_customeraccountlinks/ps_customeraccountlinks.tpl @@ -0,0 +1,51 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + diff --git a/modules/ps_customersignin/ps_customersignin.tpl b/modules/ps_customersignin/ps_customersignin.tpl new file mode 100644 index 0000000..db1cacc --- /dev/null +++ b/modules/ps_customersignin/ps_customersignin.tpl @@ -0,0 +1,58 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_emailalerts/views/index.php b/modules/ps_emailalerts/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_emailalerts/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_emailalerts/views/templates/hook/index.php b/modules/ps_emailalerts/views/templates/hook/index.php new file mode 100644 index 0000000..96ed9b8 --- /dev/null +++ b/modules/ps_emailalerts/views/templates/hook/index.php @@ -0,0 +1,34 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_emailalerts/views/templates/hook/my-account-footer.tpl b/modules/ps_emailalerts/views/templates/hook/my-account-footer.tpl new file mode 100644 index 0000000..1296834 --- /dev/null +++ b/modules/ps_emailalerts/views/templates/hook/my-account-footer.tpl @@ -0,0 +1,30 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
  • + + {l s='My alerts' d='Shop.Theme.Catalog'} + +
  • diff --git a/modules/ps_emailalerts/views/templates/hook/my-account.tpl b/modules/ps_emailalerts/views/templates/hook/my-account.tpl new file mode 100644 index 0000000..d0dd4e7 --- /dev/null +++ b/modules/ps_emailalerts/views/templates/hook/my-account.tpl @@ -0,0 +1,32 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + + + + {l s='My alerts' d='Shop.Theme.Catalog'} + + diff --git a/modules/ps_emailalerts/views/templates/index.php b/modules/ps_emailalerts/views/templates/index.php new file mode 100644 index 0000000..96ed9b8 --- /dev/null +++ b/modules/ps_emailalerts/views/templates/index.php @@ -0,0 +1,34 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_emailsubscription/views/templates/hook/ps_emailsubscription.tpl b/modules/ps_emailsubscription/views/templates/hook/ps_emailsubscription.tpl new file mode 100644 index 0000000..f304091 --- /dev/null +++ b/modules/ps_emailsubscription/views/templates/hook/ps_emailsubscription.tpl @@ -0,0 +1,74 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
    +
    +

    {l s='Get our latest news and special sales' d='Shop.Theme.Global'}

    +
    +
    +
    +
    + + +
    + +
    + +
    +
    +
    + {if $conditions} +

    {$conditions}

    + {/if} + {if $msg} +

    + {$msg} +

    + {/if} + {if isset($id_module)} + {hook h='displayGDPRConsent' id_module=$id_module} + {/if} +
    +
    +
    +
    +
    +
    diff --git a/modules/ps_facetedsearch/ps_facetedsearch.tpl b/modules/ps_facetedsearch/ps_facetedsearch.tpl new file mode 100644 index 0000000..f429528 --- /dev/null +++ b/modules/ps_facetedsearch/ps_facetedsearch.tpl @@ -0,0 +1,36 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if isset($listing.rendered_facets)} +
    +
    + + +
    + {$listing.rendered_facets nofilter} +
    +{/if} diff --git a/modules/ps_featuredproducts/views/templates/hook/ps_featuredproducts.tpl b/modules/ps_featuredproducts/views/templates/hook/ps_featuredproducts.tpl new file mode 100644 index 0000000..544d208 --- /dev/null +++ b/modules/ps_featuredproducts/views/templates/hook/ps_featuredproducts.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_imageslider/views/templates/hook/slider.tpl b/modules/ps_imageslider/views/templates/hook/slider.tpl new file mode 100644 index 0000000..c670467 --- /dev/null +++ b/modules/ps_imageslider/views/templates/hook/slider.tpl @@ -0,0 +1,60 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +{if $homeslider.slides} + +{/if} diff --git a/modules/ps_languageselector/ps_languageselector.tpl b/modules/ps_languageselector/ps_languageselector.tpl new file mode 100644 index 0000000..d016e39 --- /dev/null +++ b/modules/ps_languageselector/ps_languageselector.tpl @@ -0,0 +1,49 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    +
    + {l s='Language:' d='Shop.Theme.Global'} + +
    +
    diff --git a/modules/ps_legalcompliance/views/templates/hook/hookDisplayFooter.tpl b/modules/ps_legalcompliance/views/templates/hook/hookDisplayFooter.tpl new file mode 100644 index 0000000..6f4ca3a --- /dev/null +++ b/modules/ps_legalcompliance/views/templates/hook/hookDisplayFooter.tpl @@ -0,0 +1,44 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + diff --git a/modules/ps_linklist/views/templates/hook/linkblock.tpl b/modules/ps_linklist/views/templates/hook/linkblock.tpl new file mode 100644 index 0000000..61a1bbb --- /dev/null +++ b/modules/ps_linklist/views/templates/hook/linkblock.tpl @@ -0,0 +1,42 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    +{foreach $linkBlocks as $linkBlock} +
    +
    + {$linkBlock.title} +
    + +
    +{/foreach} +
    diff --git a/modules/ps_mainmenu/ps_mainmenu.tpl b/modules/ps_mainmenu/ps_mainmenu.tpl new file mode 100644 index 0000000..3e3d300 --- /dev/null +++ b/modules/ps_mainmenu/ps_mainmenu.tpl @@ -0,0 +1,23 @@ +{assign var=_counter value=0} +{function name="menu" nodes=[] depth=0 parent=null} + {if $nodes|count} +
      + {foreach from=$nodes item=node} +
    • + {assign var=_counter value=$_counter+1} + + {$node.label} + +
    • + {/foreach} +
    + {/if} +{/function} + + diff --git a/modules/ps_newproducts/views/index.php b/modules/ps_newproducts/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_newproducts/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_newproducts/views/templates/hook/index.php b/modules/ps_newproducts/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_newproducts/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_newproducts/views/templates/hook/ps_newproducts.tpl b/modules/ps_newproducts/views/templates/hook/ps_newproducts.tpl new file mode 100644 index 0000000..0bb9779 --- /dev/null +++ b/modules/ps_newproducts/views/templates/hook/ps_newproducts.tpl @@ -0,0 +1,39 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + + diff --git a/modules/ps_newproducts/views/templates/index.php b/modules/ps_newproducts/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_newproducts/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_productinfo/views/index.php b/modules/ps_productinfo/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_productinfo/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_productinfo/views/templates/hook/index.php b/modules/ps_productinfo/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_productinfo/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_productinfo/views/templates/hook/ps_productinfo.tpl b/modules/ps_productinfo/views/templates/hook/ps_productinfo.tpl new file mode 100644 index 0000000..471f3bb --- /dev/null +++ b/modules/ps_productinfo/views/templates/hook/ps_productinfo.tpl @@ -0,0 +1,43 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {if isset($vars_nb_people)} +

    + {if $vars_nb_people['%nb_people%'] == 1} + {l s='1 person is currently watching this product.' d='Shop.Theme.Catalog'} + {else} + {l s='%nb_people% people are currently watching this product.' sprintf=$vars_nb_people d='Shop.Theme.Catalog'} + {/if} +

    + {/if} + + {if isset($vars_date_last_order)} +

    {l s='Last time this product was bought: %date_last_order%' sprintf=$vars_date_last_order d='Shop.Theme.Catalog'}

    + {/if} + + {if isset($vars_date_last_cart)} +

    {l s='Last time this product was added to a cart: %date_last_cart%' sprintf=$vars_date_last_cart d='Shop.Theme.Catalog'}

    + {/if} +
    diff --git a/modules/ps_productinfo/views/templates/index.php b/modules/ps_productinfo/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_productinfo/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_rssfeed/views/index.php b/modules/ps_rssfeed/views/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_rssfeed/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_rssfeed/views/templates/hook/index.php b/modules/ps_rssfeed/views/templates/hook/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_rssfeed/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_rssfeed/views/templates/hook/ps_rssfeed.tpl b/modules/ps_rssfeed/views/templates/hook/ps_rssfeed.tpl new file mode 100644 index 0000000..54dfe8e --- /dev/null +++ b/modules/ps_rssfeed/views/templates/hook/ps_rssfeed.tpl @@ -0,0 +1,39 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + diff --git a/modules/ps_rssfeed/views/templates/index.php b/modules/ps_rssfeed/views/templates/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_rssfeed/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_searchbar/ps_searchbar.tpl b/modules/ps_searchbar/ps_searchbar.tpl new file mode 100644 index 0000000..a713cbf --- /dev/null +++ b/modules/ps_searchbar/ps_searchbar.tpl @@ -0,0 +1,35 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
    +
    + + + +
    +
    + diff --git a/modules/ps_sharebuttons/views/templates/hook/ps_sharebuttons.tpl b/modules/ps_sharebuttons/views/templates/hook/ps_sharebuttons.tpl new file mode 100644 index 0000000..7d2127a --- /dev/null +++ b/modules/ps_sharebuttons/views/templates/hook/ps_sharebuttons.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +{block name='social_sharing'} + {if $social_share_links} + + {/if} +{/block} diff --git a/modules/ps_shoppingcart/modal.tpl b/modules/ps_shoppingcart/modal.tpl new file mode 100644 index 0000000..8145ec1 --- /dev/null +++ b/modules/ps_shoppingcart/modal.tpl @@ -0,0 +1,83 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_shoppingcart/ps_shoppingcart-product-line.tpl b/modules/ps_shoppingcart/ps_shoppingcart-product-line.tpl new file mode 100644 index 0000000..49db671 --- /dev/null +++ b/modules/ps_shoppingcart/ps_shoppingcart-product-line.tpl @@ -0,0 +1,59 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{$product.quantity} +{$product.name} +{$product.price} + + {l s='Remove' d='Shop.Theme.Actions'} + +{if $product.customizations|count} +
    +
      + {foreach from=$product.customizations item='customization'} +
    • + {$customization.quantity} + {l s='Remove' d='Shop.Theme.Actions'} +
        + {foreach from=$customization.fields item='field'} +
      • + {$field.label} + {if $field.type == 'text'} + {$field.text nofilter} + {elseif $field.type == 'image'} + + {/if} +
      • + {/foreach} +
      +
    • + {/foreach} +
    +
    +{/if} diff --git a/modules/ps_shoppingcart/ps_shoppingcart.tpl b/modules/ps_shoppingcart/ps_shoppingcart.tpl new file mode 100644 index 0000000..16186fa --- /dev/null +++ b/modules/ps_shoppingcart/ps_shoppingcart.tpl @@ -0,0 +1,44 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_socialfollow/ps_socialfollow.tpl b/modules/ps_socialfollow/ps_socialfollow.tpl new file mode 100644 index 0000000..5379ffd --- /dev/null +++ b/modules/ps_socialfollow/ps_socialfollow.tpl @@ -0,0 +1,34 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +{block name='block_social'} +
    + +
    +{/block} diff --git a/modules/ps_specials/views/index.php b/modules/ps_specials/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_specials/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_specials/views/templates/hook/index.php b/modules/ps_specials/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_specials/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_specials/views/templates/hook/ps_specials.tpl b/modules/ps_specials/views/templates/hook/ps_specials.tpl new file mode 100644 index 0000000..0671ada --- /dev/null +++ b/modules/ps_specials/views/templates/hook/ps_specials.tpl @@ -0,0 +1,38 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + diff --git a/modules/ps_specials/views/templates/index.php b/modules/ps_specials/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_specials/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_supplierlist/views/index.php b/modules/ps_supplierlist/views/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_supplierlist/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_supplierlist/views/templates/_partials/index.php b/modules/ps_supplierlist/views/templates/_partials/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_supplierlist/views/templates/_partials/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_supplierlist/views/templates/_partials/supplier_form.tpl b/modules/ps_supplierlist/views/templates/_partials/supplier_form.tpl new file mode 100644 index 0000000..a1e3da5 --- /dev/null +++ b/modules/ps_supplierlist/views/templates/_partials/supplier_form.tpl @@ -0,0 +1,33 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
    + +
    diff --git a/modules/ps_supplierlist/views/templates/_partials/supplier_text.tpl b/modules/ps_supplierlist/views/templates/_partials/supplier_text.tpl new file mode 100644 index 0000000..9df7c8b --- /dev/null +++ b/modules/ps_supplierlist/views/templates/_partials/supplier_text.tpl @@ -0,0 +1,36 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
      + {foreach from=$suppliers item=supplier name=supplier_list} + {if $smarty.foreach.supplier_list.iteration <= $text_list_nb} +
    • + + {$supplier['name']} + +
    • + {/if} + {/foreach} +
    diff --git a/modules/ps_supplierlist/views/templates/hook/index.php b/modules/ps_supplierlist/views/templates/hook/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_supplierlist/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_supplierlist/views/templates/hook/ps_supplierlist.tpl b/modules/ps_supplierlist/views/templates/hook/ps_supplierlist.tpl new file mode 100644 index 0000000..26aabff --- /dev/null +++ b/modules/ps_supplierlist/views/templates/hook/ps_supplierlist.tpl @@ -0,0 +1,41 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
    +
    +

    + {if $display_link_supplier}{/if} + {l s='Suppliers' d='Shop.Theme.Catalog'} + {if $display_link_supplier}{/if} +

    +
    + {if $suppliers} + {include file="module:ps_supplierlist/views/templates/_partials/$supplier_display_type.tpl" suppliers=$suppliers} + {else} +

    {l s='No supplier' d='Shop.Theme.Catalog'}

    + {/if} +
    +
    +
    diff --git a/modules/ps_supplierlist/views/templates/index.php b/modules/ps_supplierlist/views/templates/index.php new file mode 100644 index 0000000..99e1f25 --- /dev/null +++ b/modules/ps_supplierlist/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/modules/ps_viewedproduct/views/index.php b/modules/ps_viewedproduct/views/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_viewedproduct/views/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_viewedproduct/views/templates/hook/index.php b/modules/ps_viewedproduct/views/templates/hook/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_viewedproduct/views/templates/hook/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/modules/ps_viewedproduct/views/templates/hook/ps_viewedproduct.tpl b/modules/ps_viewedproduct/views/templates/hook/ps_viewedproduct.tpl new file mode 100644 index 0000000..a8be2f3 --- /dev/null +++ b/modules/ps_viewedproduct/views/templates/hook/ps_viewedproduct.tpl @@ -0,0 +1,32 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/modules/ps_viewedproduct/views/templates/index.php b/modules/ps_viewedproduct/views/templates/index.php new file mode 100644 index 0000000..e261c47 --- /dev/null +++ b/modules/ps_viewedproduct/views/templates/index.php @@ -0,0 +1,35 @@ + + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + */ + +header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); +header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); + +header('Cache-Control: no-store, no-cache, must-revalidate'); +header('Cache-Control: post-check=0, pre-check=0', false); +header('Pragma: no-cache'); + +header('Location: ../'); +exit; diff --git a/preview.png b/preview.png new file mode 100644 index 0000000000000000000000000000000000000000..b439058c85eb1f9f38526d9123623dea8e2a544a GIT binary patch literal 141698 zcmV)KK)Sz)P)00Qa=0ssI2On@<~00JpVNklq|N}*6F@(IysbZu>IJ)2;BpU;rINcs zp-^O%bI&^Ktn<%5|D1EqIeQa!w6?T$D!K0qvqNqXDinLv;B!19{4021S3-9<-Rt!> zG&F?6;Y1=4i^bv_kddWiUa1?Qz>Hu96c6Eo4X)&#Zg!b(b|MG=OXx;#uW-M?r&({B z4O{BFn{jn@^}vAxgM)*c2SJ{;zbuP!oSN2w zkw`>HTq1f(>gS$&uCO^DoT8jeCeh?`)KDmd5Pc>0J#Xlgot>Ta_4URY3}^}j0;0TG z$m2J{G#gbY^4#EuhleXFDi#(NjP)8ozB4m3n71_b^z=ZB)YHP6T@YVMNy#ObTvA?M zE`!SmV`F2@&CN?2K$r#;d_Ldu^0HZ{C3t`4GoN|!#TPdC@OSyou$XIB{Zretu$N;@GiceSLk{FqS+yIays@Jw85;CgC>BNH6G*`uD!~ zJ(_m0%h)6T`q#gzs;Z0}s=e{X8}TL3H%?`0YKk@V_V%);SQQm?;9o8~Iyz3BI)#GV zLgs&kq{23&*FXRHPr~-Q?z)RHp>H-d{;934jS6beHw)0Lic7^g(5!aGQ=O|Lt#ogY{&n?a#Nmg(8s^Sp#!w)A>;{{o4u~}{LF@)9$7HcNECw^Z z<(6A0^Pk)mO70joVG4!~i$Qj<9#K42E#!{zLw49agiFi|U1IHN<7|IAw#l!5{p-Vr z592e~Utj(Yq)alC|@rpnk z#*MIMiK+bQkROScdmt-hCli!X`@gj>utBCSnTKz#b&DhwE9AOezdcg>@n^ z4#qKZXG;?7b0gdWjsZu4z69U^?naYKQ8r!J-8d3>9|fUuUK&^xLN1lu-C*%K=%`TS zt+n$q%JBtk_lTBSrniO?tuzXNII(zH_1Gj~^6JdkK2 z=>$gw>6j)_DDoL;Mw`a7BD5&%4rWYKI&%^OVvc!@)ZHVS`Lb+6a!qH2J2|8JYT~Vo}@v3LS4>VE>(@4dSR{S%$ze ztYep*-ml{#?So`aYSFYzWH*4!UiMbIWo|L41>1OD7V|Kz_Q$bJ+qRFeO*;hkE{=C+ zUxVE?90%OyHk8j}p=dP9SDddXHo#ZC^F7`$fRekbLhq!L=^Ob>Am%wUJsXPK2SP^290yrQ zcGuTV@!QvTs3`Ubxl1}a6VvQx2&cpEI6NiyJsGou_LXpT-_q)-f%T5L@@fB(!POwr z$?;@&S1=MOt*Tk~`tE1y#l?7Yb82CBW-<8Czc)<{EhC@xM@QGfDG-h&LUC_2fi0k% z@OpE`ZhpU?YzCw$FmuUQl_Fug27^IK4UD~_h7J5om+qEi*H%=hJXIovQx*~hkdc9)h@3eJe<1f-%FwJlVARt@v$+~ z;$x%H55GV1oo}V8D`xz$r=J{O@kifZHhpHyJ0FO83Z|NR7GL%B8;gckE;=Z4Nd-S~^UXKo^KcbVxhOLW$#m|y=N`$@NlHxeiIcny zzd~Al=8{yje2psk#~HyfM?Ri_RJ06BUPA~SqQ`S^?#WQOJmJyE-Tv9*mLIfOE;q~b z;DZ+1C%}}LtGgq2my`S0#EQpr&C*KXn?Ef$aG<4kE$XRQSZ``cz3H{HfBOA{UjM$a zrL`2woO|4OefXglr9Sz=xmCaCY&U6?hO@Bo`%@qzR@@a1HJ9b_rLK9}-&MbiL_ydNbJ0*4WSt{~elDm?-JQ~R|YVU{@iSGxy zNUv(@9J>*MQ@YGM&W3O;WTp_02x40_!gI#Jjc3`Of(CI*KVmLiGM6W#<3&2`KF z{O1$zXdLy$xk`k>v1_l6{^$qE+8SD~=vcaIaBVFT|6bkPtBR-kR>A>){>P00=W?`>-}?QgYwZu(58}a=3UQG9F2JPEU_}BS;dcVxau{FXGadCMgri<<(#` z8oyt-vJwx6llixSP2HlFyY(pYmE4g)*>Ew`%;zrnS|M(Z&L$=%U_DAaG5m`UMh9m= zFIrK<{i6xFBZoA3p`-~-gyI13@ze<*&|xT89zTIH64T0nOp$GJXF84+MM7-By(qc6 z@O(y|C?rmOXf^CPG3Gfs`p1?98o?%B1nItkUTN()faToN@^=|da_3=z{eabeV49}6 zoq26DDsoHikQ#4S@GS3w5HutR^YXd|;UXat=Mw&f{VCCu100071QY~tJ#5?E|@X*kR@f;u|MGfMbGd8&Z zXfN%#uxVsnrdV~Le8Uf$xET6D* z$*^xf^}`*2ZUUg3ZXWgU0HB0KdV;;{`+fwVkOX@-48sUOAqn>T4S;flJ3uur_O2ke zK^O>@|G%ey=&`4$Q34p_b$ZJ-FX+H%6;?*FPzdE5Zt($CbGTT(1cZzCsnEI-stdoIo%wFaYH|bp0&d7A+BLu* zgvMWw}rZ zC|Estn*LDuzgdLZz+kMGX#0>vrU$l4-n^b*f_e?PbU=zKXGqS_aU7EfREBMih%f*I z=pzt77=4od=zYc`I3lF?YnK$pfmHxJ+vu#@_pKTP+DjiE_+qOR2 zSmBSg@idw4OVagHd!I_5@OpZ)-M>aAJyo6AtfuFSafC#oMfUS6OZqI%*i8J zW^VTje{xrl1q5S2$-%+yb$bCjFv6zbehZT&q#W&)=ZJ+uVQ_G`cSCP`dxv)>snpo; zncfZEX}M%_V`G$3L=;A#fLPy)yzV3P>vpBCmiuBaP)O@9OV9)k?y%9wb2v1U)YPG+AbpO%)fT*-)9Esvc z_YVvuot;~HI!J&7;F_pNFHTRNotQg(;*j#Sl1f#VS4Jmi4<6bhOfDn{3U#*^YXJzQ zcG-aO^-q)t?Rbml!m&O8NT9a?abgJqn-h|jIy0-2Gs8bT?;HEKJ)%wNublU_*}VF+ z?T>xx(I+3=d90(oE0S7)@RbC_+&yAM8;rs-l7)yY7=!HV>;?d-q+7@Rj-sl*VN512M@C;6rp4}k45QtrZv#`YO-kVYO@EJXY z7#0|2QA!>K`3NaEheeG5l8RAFL2w=xw}_HXvZJztl5QHQ*d&?2`wK%Py>s|*4ALM4 zS@Qil83;)L-$_`BlTiR7k(W7#i93*PH+Nt|OZt_Nixo@?9@{-;*Btv`xL6@~pA2I5ReR=7y0QZyvj8 zd~UK*uaYHyGf0HIp;!Tt{{ifMud}zBI}u3@(q0ddrP?IU2#CuMV>kkT=T&}D!-j+7AGJW5SdKsbiLNt})C;Bh6D zSBZ0mjf9$00S|s2V$p_(a5<9xlTykV*EMU8T6ZDVH+(iq&`N2g!;Z)we(?JaNGEtG z#M%f8hZ4wuYXwSjp-{LgBDu~ETu!U==OzipnaBr-;OSMzEQP1cl2cGnvpPPSYl|ZH z^Ae#1CEO}>Woi0H|NO%DhQIr-Gk;EX@8K!$a;cI^T_n-dl zzrP(lbMxfvL_Mo38>6*BtecF8q(C>36D(Vi5b=KeZP@$qu?!Onf<%k%HADi5`p-`8 z-L?e)hy++_wgL#RgidcN0M5)Bfz!k~GXOhVFr?r-7Kae)9hxoO30CC<5*#cA@GCfX zA}OV|YJf;s5iJgq_ZEKPCJuLrd}rm>>(e%;re=fp&H}iTOOHw-_G}tF`9QENLUZRi ztv^U|dec)lWL=yU!;(4HyApSOm&1l2ayz#&C?!zFYXh~1Akb>P8$ojo8m<+*T)M2!!TL6c z2iLK3}7-5;3 zRtZ8$@K%Aqn?SP)fB>_>LpL2hZ|u)Yq+W91g%95U;Qo>RD@HH9{M>ohtX%Y@ z?iWAh=+pOX-QTEHF1+IWG)eaFIkc&JGjM&H&mQ@%{ObHB-D>VFYSEoaL=-DEyHYtf zJ=?W+mk~MRz%SsTFMyNQy~p07sjnwuuUo(%fNlxhA_y#@K<6rDtzH`*>hCC(bEKSH z%RMuCdSzuPjtfXAfwWR6WURIQQIa$%%uJO{o&!M~S&NLL=-k zt{g(O*-oyqbn(vk1eB(<8Go?5P(Ms*ns>Ns}Ud`0tmZEW<6p-d7erCoX=BoRv( z9Ujre^73SN4$j#!3Ir*ui}PovW|a21Q6!OCnp-IKZVbC6ml1_Oh9ZHvnVCFY?%P^S zl03_l))D}bl#(~yc-b#6{O22A{$~4q>PD6slVNxc#G7(+GxI+IVRDn129U!D05G4O z8@h4+H>-{9o6k%f+_?<^Lepn~kwDy{xv$*fjh-O@ zAn(9Bu(*E1xJ?4f#JTw#LkifjeaFU4n-I~VR@d>?t(yvI0Zq=|zqBT;l#1eVTe-Kp zJu}8;(ozwUj9&o1cIr5ac*%C6Qku-KR`>4Rk!L1~ zV&dKj(5SA}>iMo+JGGKpYVM^-LP>#H2IaP0TQ(vRgrgjQ)%gyJ(*yhWN}nT+qcej; zi#ZDLkrD)2+=a|eo=wUfUG3dTL0@&_d8dv%HU=>@b@uv^e$dgWLnqD+-&DzTF^Mj} z^5Ruv4(!@rE|mb99bNKMB_+TR)=b?Pqd=~#oV#S~qQl!Cb70e+<&}kH(OIpU|4jbn zP}k#L`?%LfNRu<;Pdxdot($iBboN9_^N+-k5OG>+_nC<>Hw_dBRtARr-E&o}Ajk`M zDz(0$+M*UAQ5r{sld}uUD_SWcx}(!I63ziEhkkBF?#-dUhlnuvs5>AE2RFp$5J_4{ z3TckWU$(o^pR7x;mt(1vWfetIyD^Fr%W+bOk|atCu@6s+o=e4Ixs;ZeEtT6!<+NNb zShhl`R45g#Yz6CGYAajkqQ`Au>M)E5slXyx}8{N(R{|HY4f{n=0d=54S0%&R{4?Jr$5GV++i$Ikm7 zdtU(`$&K_YXd3j`9y5Erj7c`UVTNOd9KZXRnVFfHkKxNvh%Q8%WSQ5nYo-|wLxbR{ zB~N?e&A#uuJj&%a<+fTXmDDrqq@=F;SLx{ozx4PwyE?jrX2)`YR6177fjEbp70Q`> zC655a@v3={Y8RH6cJx@wyT9)srO*B@PCvV%Dq7i;sEFv6{^npg%m_^ zz57&Aup1Bjqcvq+8^G&i>!H+;*S`U%avdpQRRkAcgcAS8Sq*H%YW_VgE~ZFA<2j>( z{3`LAM2wUbaZ}`}QraSX8A5%Y=NHVErqu5uR0{bVRTq3I>3VC^(7GvuCooD~aZ>|5 z|6+0~>dA+y4o{HlS3Qr59!gyK3H(R9o=as#RMjW*{7bM!DJ|cWtbS8QJlEI3fQyDG zeZEBQG`IHd+H(0*$G-5=*ukjL`cEf+_DE%6-`;z7w`{m()2{LHZ=B3dA3gERWNPK( z@A_ao5_TNBP%24ll5!Ss&+}}@DVA5BIQ@<1#-Cm(tze`jBFRo`*J$})UO4-_0gZA2 zv^NcY@`j(dar;dpgBu5W`eqi!zVi5I?tkjbXJf-5UqxZjM8^%3n{b=66^FxCB~1pbNs86b0t{ z_42Aq&7)w7FjzCxUCoBq(DWd{DyptEth^*79dwLy7!0W)5&a?nt^~a`kc=9j+>NW> z56T{lYIE1)h1SqO%1W-(Re&i}^MEx{(0DZrs3|gk{i(Q;_PaUt zTMA3V{Q|P_nd1e(oose|bn3*!slPk-;0t+w$~ne;+m|JLQD^E-B3yJcX+^W3UuXLDJ@427*&v(82{FCLtK<}KUr+tD%9 z9Uge1$e%s;>|3{Azas%0&)u})l86;QdiL;{i6gOCa^ujR{*L}wD1sqotG-#rC9p?< z_qnLlzL)&$kSo6e15B|RW|{9&;-Eoqc*~5gO{KG`Y+l1SfKJy%9l-#J&evcwJm^)D z>-Bgbaq-Q2y~JABlv0AQriBAtE=2-fJ9~&J%IC1QE=DrNf#LPtL=v3xu zW9qW4JM)VZFC2a4^z5nopa0U~lP`VGU;Xm=)B>d>lSxrdDRnWlHg@iaX~?E4fAY#7 zPUMz0_go5GFqa$u`uI0I3&c=3lUaKC;8QlCw_o?JdvAQ__Mz<&E6fOWiMRHGLOehj ztc9o5kg;`e=+$VZTC1Vl8`Plx8-x(7y5!v4;zg4X1fUB4f@=F1s2e4@wowhVRILoU zc(9?alc?v&3YS=L9N1}tkD?kuMUaYuRR&yHRdt`x+C$*0zmq>;{l`?ZDDA991Qmry zR|^P&!779iMi8lK)T4v<0~8=8>tkAFmy*HqTIJz2c`oOYlc)zFCOQ~{T+%9{lM(qj zCq@td)SrAhN0OiU;8#Dr^G82)^)I~R`)|DW?(6o&Z~5?@_c|-Izom1_hc@UVPC1eT zIP%=`sh<9AZ@v9(@4D;5H*VWo)r{>;)?+U`wVaurS(<`aGc+V@?o(4Mvn!+Na(Ts> z`1^zZq?^$z&~?Y{u?m>AAs9#uCz?91z50%uFTb&~wZmVD63MBy_fNbu79B$8Y=@V2@ea6c z@Dj{(c(D*}L&b2F0us-HIj`^!haULQAN}O-{M%n2JU_i_=kB4Fwx^zZ@Y~OS{coT6 z!fbkWa_a0)|IzoInp(QN?=2Tr|%Q9nW zcs5&DNM|rc{5AiMd_BM=urR=N+00eH%Aj(Q{}7<0we7Sj11Kcq<#KspVR>mOy}X=G zrB?FUTq>Orm!BUulh0-g*_?lsisfRyl+70e+9zKqiOc7d%9V1tB(7qmT&l`erBtfq zOXX6fQY;IOplZ2NtyJx5)u~hk*{)|-s!p}yH!HSN6<1YoY{zqL$FZw^Q(TH)780)i zBbtu1L`Y96@he`fyL3^e(=ltCrAI`{=ff?FaFu3m)x*nL+8%^ ztFLQ&_sR6Zp33ImKK|!cyz`efef+_~isQHsJ@w7ced|A#^O=^WR)IP)G$UU~pPD>6 zmzv?6Q&@|Tf`My1cGJ)-^-ZDJ2+TfFKoo z$d~5kgvKr83!dj9gjL=ZjN$a$f??>TV$P!sBPfP&4#X{+%@&IeWR6hGQ1dta>Xlgx zpPpSZ5CD{l@jy%^y_^uib5m2UW1FT9p_*Q>#hg5yPIJx7T-nvAcxaT;iu#^(KECWQ+ea}9cZfOqZe+|pI$ax5Gsl){Tz*C3Z1D6cyB zM__oZQQ&_4U!P30TGl4#+zLnf`+J0PXOuG83pGRJ-3^(RM~F%b=_`GVLb}!3k&Gu| zp66)@D-$rr*a$~0%k1fHb6iiy82Iu`)3l|fm29!Rd8E&FT$#oTDpR)WIJy4Qw8cm}cvIJwE%x+fXcjeMD*>3r4IsinDb7VB-!&K0vs0(595 zBDpx&)V$@kEti_K3NSrXoZ7eHEnAwx|M=ABKl-*$ef{{~6ms4W>pn17=Qdo zhC{VM%EeVjph2&5jWjS`DwJlHSLC*JJwblab-O+v0j%$b>uUi8?BK>~kVpu8?JSx# zl(-KGr-XCD{f5kr%P6bm2M0bw{Q5tl$0vo07p0n7tvL#z=r*QfVL8 z&^0v+x$5Pzq;ge5%A~J+0@61i8=4{NhOX&~48LvY9AjObhhN9{2SSWAQ85IWzMxEm zju3}PbRYl-aRi4!U_~MT0M~OF@;_t9b$Kq|m+0FO8=Ct1f$68yZHLO%By3J`uu@6H zTiaWkwYl>0*}|98-+pQ4e3PfUVNe3Oc4%E`c8whv^SE|oW_oDb3junn&=OD6xXLv*Q5J-VPdHX+&^z|2u1+^T4y0n*oGfIhHSN8Q9UZ|Ey-fttO z*s2ZwYk+%0xi_+-G{>Udtu0+G;%XL^L?qHU59D=wzcGYkvx}6{02El)8vye7g!Av zNRY`}kTYJf8H8#D2(p zHRmQz5*)d5*N%M~Hbo7zXQ1yxyS9$>My+|aNUA|jytcuJ!}{Qps1U9;NVqPqjBv z5oD|O^imo@RF^qGRRV+qU!$}P9;EG5fHVYS6&FOg@`JK zFV3Xa2ok1)0G{dh%7*F!>IWhDb|N`o?d?Q1u(U>@;4{`mPhIHE5j7-bC7LgoMXh;| z)u&zv0N^SdRo2%`MJoNRiem~$;cH|*1kDUJwygNgy_YVGo}8OI z&sk|MwKA|}-tA6s9ANjd=`~;gi|ACG7eQMJ^ zyW#`CaQF9*pFQ}ipZ&x`uRQd#fA-U#{HI?#bABva$dvP`YNaGDh;c2%YR#$cS5)?S zi0Z(!!7(tf{?yina&ORUhP}XODAe83($m^v=(?%vy-DBxF0STC2>vdG`OhAi%@YX+qWlf(mt-7u7oka$wkw@F{MjuN6z`OfJ?qIj&RXe zpKzYnUJ8`XN7!F~ls8qyJ_*9Q&-4p%6QmoOs2PUOFbwHI6%}1G4N;1A?N>!+sUaHj z9jXv(NX#c@W|Zoo*uHz-CXyawOwPUX*wpmQt}E_7b?gx5G&6I4IbUrG8@grm_4f>K z9@%rn&X#1$>Cy2=pM3d|LzCkrkg>}rX(@b3TXu z^#`B(y>A_OEK|vbBTYI||Ebi1Q`c5}1&`&yVIb5#Rv4oI@f_DM4Ucim0fr1hI5sw! zDdppl2&!3ysC4b5=NA~(in*+^EdZsnG?ZOVxZjT&ygWQN0>gIqpqVry}3=E(R|ES?-qdppH?5CMy>*P3QLT`gF^@f_m8*yd(E z%z?&oQL_xa>HN}xnOP7*on71h@WJ0Bb0oi;|N87NKQM9sgA?~(a{h+zzu{9?Z@m)x`kf-Mmc;=D>2v(6e%sDunzS|T z{^rKGHE`~)Kl-a=JDl61P8sWJ(L`mXSW-uF3+>Lo^AFIl%$OQJJG*e%mSIEJ8Dnco znk&n@sw-6;bgnz0PgO6LSF*k*FUtVpXv3x}Q)|VM;lY0W%(BhK@DU2t`6&?Mct`Fvc7}A+PB;wUjPZ+`)lv;`256eJOy* zt=hU3*|>2KFpe-*`5JvCjv(=PM_*@CG{S&nQ${)S%|;L~to8SHQjdxb<>CbhTB6G; zc6E0MNhX&rCJ6(U&g9!Wl3`twVFZxM6uyRzGpPhItoCG!>v{+wz?kDyJw}|eRdjhW z*+d+@QmsJ5vA@%gY~MC)v+6g$@z4E}mxm1vlZvK?Yn{JfzzksE$y)uV~>@r z+TMvu4(nRDU)NnyT4C7#NZ4!+Y5wOax1;urTl$ynG|*u?*B1qy8wbQ5=(z0re(y)- z&z(8&^64A5?HoPx+=u_>%b)(~pSZ-ddOG`m;_d%%)idAtr2~I@c;)H;@$l2XwEUaz zy8b;OB#kpcVokN=)hB@Vdwmg=G7S0Li!1hqS*Ae$S|7I-boG zmNR(`qu@+^Sa*INRHdq}->t)oThO4|#RX!j2nN?WxoPPbVQEugobn(qm?CknSx1nL zu#Pd5X7V6~jLJb{>ZYzKe7PafvD5QQZQ11X%j&k7MMx&;NkOvWqn9M26 z%uJne9n#yq<=YQFaN_teSjv?$S?W2XD`(H9=eG=P>}*LS^wv;LYmG+YF#|YW=xnt( z=b{jVO)%WTEW~w;qMAN3+yyak7b@nAs~5mk(Jk9scMcBieed;m^(0&K`Qqf$N1mRX zyXVG_-uZzm{{HA6ee2jmZOP8QOLz_H|vC{l?K>d}Zuqr0EK?R3FiX z)Ex$%hI)KEM51We+#6<@i&Fqo^9#!`#DCeHEzJ=t1RC^u*GrGl@wr8n6}=wz5+vGP zm#>_IHSWcz9@t!;>6Kq#cU2~FRp-#}rJRXU@M~FPMcXH;Dhhip>&%yB{;!m$+;52= z)h|dzLdl;sc)E~r1z#|I;zThe2^mj}@CPbbx=+-XAf79l;uf67;fjK~9&sH{6h8S( zaS_4vJV!9Zub-A?m6V9>xr|Zb*Bqx}S1T1Uq*O>RFN`iPj~zd8aB_C4Qe}+rOgcN4 z&QHxPz5LRlq7%Ag`;LL$!R82>o0*?U&mGPkHLw*mLdkeb%(DEn1eoi3Xm_+@Q)@@c zWx8d!Ik#}W$`K{NgC2ErGv#xmGYc6lj*B@)n()coD_#i}vYBJA9Gop@uX*1sKl`5h z-hTUgfA$l<@$qZ#exUH>XHPzzPR*a6KeubkwQs%pgTHw5uYaubw!hl{8%u>19qXL4 z+G`#6Z~mQ$YJGB1t_leoh2qwTP;HoH{!0^0)p4ti!z9_RQ?Z@K4*qoz;~=E#B1vSq zVz195rqD>LS`SrJjR5&Ang5L?IRI1!73I>bf!Sq;%0nV+JTTO<`p6{((NxEADmbGw zvNQF8>OM6B0COQ+;|HdH4lwddc7er6nUP`eT_veCj&K$LJte7ZDo6~dN6!Q}P!;^7 zJ~ZX4Ey-X^iAZcE6?{r9Gv1OMY;7AzCfmc&m}TIV)ZBq%FTZ@`3;=9oWADI7SF$Ss zt*{nui5X}mpNSX%L&Nq+ZY8^rPAviALe|YgF&ra+4YpcUmm&wU9Lu`IM%0RHq)g%_ zzP3NMtusC{2ug+0?L+UpqH}21maD$+V?VUH$9?N<@3~~_jzTUQiL~6i^S(d6{&yZ< z{Oac)`+U4-vv@~wU9zEj=MUcV>pNZZ`C~6a4b?lJaDtujwOCy@e)bL`yG@DvM2n9*F*BQ?*hI9nAjoCWLV-4rbl`xXG zAQ!y46a_pbRwKaGP5xjhk2Hj2-T)z1zo@9Z07|{8Qq{OGid0_u^(ShG4*58~wt8_@ z4<-?$2C4g6WRoPn5d_dmuBs@WufQ2obybjBD69hNBaFqbOlhDVfqdH%GFsZYhBj>J z=;}^3$D5*YLkmG{xy;O_z3JI}D)06U?ZANM7UvR`4ZKXxO)ZTrpTGaqv$jn`1jZ`- z)S z!Pg%x6!d@#j$~RtW9^V8s3r;$L#lylv&+OCsW{czAV3+HpFyn%b;r(8UY}O5rnJ?X zP(!fP9c1K7_+vS$MY=+tft1^m2VqNc&Or04&l^0N*OnOsxCErDUI-Y2YTmUu>fdm9 z?PI9zs{cqp31A4S6~Gr@+&9m-@*@++E|-d#^vdGOk~29!;X`Y}I1$Z1_4uD$e(779 z+uCDcGiKskv2ggr*`}smvRpWNV$5lwUNi4-6H6ykS_!afHMLUd9BG=?rm?4c^*}ZUd65?lKppGd1twhvy$y_b(v#G)4X!wGhg_drhzT*xb3Z+ zkW_kMZfSZZvs`paEwMyfyjA!wdXhcgWt*_Z&i%VRLZOi)a@@~vSjHH0enFx~cmdW$ zbp?^1_4Hb&rv_G*bscKUFCCxaR~5RcsuCnFNS)asc)Er)L-Tot7U0DF4spXsc1SR~ z?(+p1buAnm?xFcLXx zAvh7%=Mc_#E%Q5LtLbWpQ!SQ@W!GNGrIwcFFu;(&_CzN%BDdc8gKbSMp^$|T$fV|; zc;f3FeI0{c?WY%W7@#QAV|l$;HJZB<6DMX5PtIpT?*5s{w$9FtiDr9)mG02q(SLbQ zB&@|Wof;FawpekSpyjQUT^O^PI{P}?yIa~noBGl%m*1cR!~v}2GgFy!&CSV7`rIG? z`=>9z^2TgxVRm^QYnTCK8YUrLbN67fHHiUI`GhFo2=GHMKlVG{{A=N5UYtGuz@uOJ z%p;$9;p|I}ogHlN**dtjyR{1fCdLBT*ts_h?hX2Xn2KPfRGnT*wKT=n1KMjSNR{GM zscv337}hsc=lZQZUuWW}KaH&m)X8wZBd+rvx-bbm<5SDasfG{sNH6WK2`9 zghDEwlu2`lreVRiZ3jqAi7--oZ>-~d-p^8z$%dfdAo;l^_R* zGKuSosqCsvC=(qj_oPXv?;NFE@I8;HKmf+5N2w$DjxB~T&qERq;%jQasTjJNMhr`k zq%SN=!l3BTm|q7H)Q^DRaLouM5{Z^*Q*TGVg;74c3^mQGl=kmG>2Zq^XL@eg3Y$|C z%X;e$GaNm9;$)ba;Xb|WdG1NCd3%U>4sXMI28TPFk~!dnLQS)UJSOahrJ*g`HWVFU zq_-mgcjm&2Gk%ttjzoBR^!!&QPu_V=s;{;A%8vJN*IUVEo0?me&o5NXSj^NOf9&fo zOoQn!{Q4|zy6=kHZoBrLT^lydF3$<|Jvx1ExsdDZ?Ab7|0WxlwAzI2l@%%U5{6j?uK%2pk*5L{|@l3V>CLuxP7=EAy}V= zfWtLoh^)aiGt2*a&bs`O^)o6~V6v}P%C75*I`ODrQs!&Sitj-Iu1tEv7!~rmj;p1z z@Bzw%R{m!slp?{`w3S?;;u6T1a*#60WO^Dcvy!da4h0mhes*61V#GXmVSdpz0KA$nFX?|GKVkV;@FLE%wIYPwa>)vX zT+enY)j#-!KfL*!*Y!19N1l7>@O6Czj4H<|=2FXE%3lOvc(DIr8^? zeeYgcm>WI#OuTEvD@@0tt@AU-{&oK!0nfPY>W|*{?hlN=^z=vm_E-P#-uHd}p)Y^> zJ^$mWhrjUo|9I}o?|H}H{`Bv~4YQa}A3O2VN?hR_t|Jx*yx^`}9C7mk@bg4&(ul0hxxhU2SQd%D?#xHjCQh=Zg zpw7V@Yh#%JhWGaOsxTjfpu{h-jT?u9jQuKeuZ}gxqrH9I0(Gt||3Y5$8oJI6Jrap@ zw>Nu~AqW*xQrEQ1QYKq04{zvYgh2$kGUX%WRBf(@w{6>ip-ND@>H^d>Y-mQbt)(NG zAcXplmVCp|7n@=Qk8R#Cpw=MFjJO+|qi>V8`tEST>dH*}OfR$WKqFfq`8>FTM1Nn{J3qi|zel_E>!8lH{HpG}={8 zy)>VBQYyW4 z=83P*e)}D}Ke)4dgnE1~J$roO`GdLV??3qk(A@XljW;FDc#{@u?daS#u(dtW)==&Z zYS90?S1t|tNg}5fmb+S;>vZJiK%Vt^=!RPKsT0U(qJt^~L<$XAbBLJG>k1W|~P z@&>44^>eCwjU-zgO~JTImZ?CHs-nIfg0PmSED*uEPo`6NWTHkcmwz5{_sH zb4Cbco~7BIXK36q^mucNMyusg2IyGm`&`9|*-pH-zpJ%_IRy(-ml!SaaIV6d+nbLa zpNd7JC7YxdGM1$QMi<@e0O}qFNweZqhyy<8HNV{JA^;v!$^Q-S)}S!ssP$fA96% zHvjP-{opB#x_ZKg#*W=`)$I#s5B=%`kG${ae(>PaPaVt@V@qcaoH*I$ZF%<(+_XG> z;vfF)D~QH8@IT{LTY8cscQfMDtxM8D~us#oHZP(|4*r5c5mo+Q^RLw7pso1 zSovCHDhvdI6fx_^)~mt`NFiBZAP~p|kof?AC`+VRe%oiMJ6kjJzzg%q1!`C25LX{n zF#}TSTNShhrT67ko4xR^BTygzd?|N^O1y<%~C(n$66KA&cZU3=%-#2||`teuJeDIy`y7`97Hgtz= z45{r_4rK;L`rCWjyAzQIpL%k+Df2^5efo3LFAR7_YkLzl1irqQ&89xF^}Zk9`=dAX z?wl4!5vHeKKK=H9@} zSh_a7k`=~`!R`*nWiqSs8pbe4TDv}BSdi28BE;)8I$z%-S+aj^=M0s!8l|2I{RUG~ z^{a^Nf}$A=2_&FOp{|;0(%S0kM@ZK&({#ac5eAwCxveo5Q9HXb@8p&_)=kUYzI(TBMVm#s0>+S` zrzjmiH##+AyZ+`T3+;d5M5w80_xAW)OBit{yD+&h%khqw9@R&>I;yF%tD|r@ z1oC8hJ`YB~*z|Z(XT&DCV&%jcAgF(2z_I7Y4xbvndDqd?FO5F+)Wp~l=m)PHUGkb+ ztuQYxE%w^rNsH^<7a8U#l0%zS3QgAI#t-L8= zE@cqpOo7zbQqeQ1?kVGI=SfKcRv*hGDL9%>w4sWdUF{;W^uMr%rIANmQtb(jTF;OX z!WfwtclHi-w=|2mp-Xn|pkj;_k0#=U<@x&`{Q7>Df7c!N{@ANmZ|cyk&;9$~I|j~XG5~z|uvM$fa_niXrAoMJe3~Uo((FsoRShWP<$Y>(Yk>`kF(o;ot}jpC#)` zm8(|3_Ib#kU@ZrZDipLl_-sh^_+p3#xeQ)y1k!4b)U|W^I6$k8RVGK*x+I?|Sy?J2 z9=vO)G&bwZO=@XSdK)qZxj!dD5KG^MM;RsJ$MYyf2(#ekvDd_TreP!8 zd(*vFT{g6V7t`f9n|Jd4(cbrb>OK$yv4M_zF5AkgMXhW;_}t@Pd+Pb{P|wPI=7Gac zmKJI6p7zcrYxKaW)60{|%S@3JbI-;uULi%V@Y%!nAIz>q2@F9PryQN3?fQo0+#-*l zT&nP&-*}~`^X89!;3xk0?Z1EO@X7v;ZObzczW0`Uo;vuPjCQ8#FQoq4U;w^}Pt|E8 z4r|aGKNW!{QV}eyWHCm{m$)wUavf+rIBRW92VaDgaBxzGGG{R6EBC-VszOl_K(**m zB!3b1ODuRuozEm_HHJwOOFoiFK>pf%bFqhDuJXRqeiA_nT9VQ zsnu-khYgoEJr4W;XqEtaxG7F`pTZZM|1%KSI z(!%12a=g>@bds2fpEeWRg+oTN zE0)fUZ|&Oq$*n(-TUZ|4+X1>=9XA<9^pY#Dx$m0yn9-rX{Dp7*@~`~(r~dYXqqFD5 zw_=X=$;+eR*x56O&mJAmrM&K;Xr9wpe`xC2nXiB4 z>n@70`h{pm??*oQ zLwm2j{?L(^`r3PRj3}iNyu{T`fW7H+%e?NllLldgM5&a8+VSyMTa5(;83*fC5K;qc z_~`l};^J})l|!I>3a=Z>>Sh!3V_%-r`X|?S)w7h?#lMS~oW7CHfMv{2MKHFIy1G;r zujho)wbU@+B3PMq+8^?IE6p0nkjowj*A@W3lf|18-Tgg`P{HLYZ7&A{Lw%a2DVVw7 zi&EFHONcoBA{LAI`a1hJne+=H<)Wn$E(2r+0mQk)!VuebIU(Giiq>4e zq*`@~r4r!Gbv-dTp%nVVNj_W1RJ>@&l#qE|tyEl3RBeF3Ql>zStYzwAA`I!uLbkcN zt-q_wg&LL!{aiL5ZtWUsZ)=_vX~oPheeIt%ZoBu#eq*P{j;5#B*AG0`9Pb^zDoFrq zohE!3dF|xo$0ib+!XX@r#}R18nYoHxWKC^aWs!O=0|{hCcuU_(3m~PA%{s%UA3w%% zYnqd5-aVM?FwY(ttxm+qU??2bOMr!={blz>nAmpBzU1QQD=jwIG`MN^w#z)vvoPA( zwIP?wCZmZhTlbJkE}cyYtc^!$U=ve`Bj4o8{dFHn(#UU>tyBqRN;_x>h5d{pC=e)A z9Y^jIqW&8*=6sd!QC6r_m6xn3WY#<1%C1*&Jt#x)W0ol@E~UkCRrCc94e46M)G6bl zX?vvTCs#so%c%c5$}X?ucnH?cljA&i+&beGmI`R4ToH3dP2JKo{su}#fHS4a%yPOp z9^-^UX&G02fd&1dCOD{m>XbXIojeze1ofGOp>NF4b&7lf+$X^Zg?xJlm$dq~)-<7Z zW6^LT9#ctKR9uo6o6DCqU2APlxE@h|Q^ChrLmX6G*4EPOQ3Ckd>cc3HHD}w~T6B4G ztlB70N=?&r%T+5D?e1##H81qV31$B0G4OJ}Iy^MsxGq!QhcoerN-jgRkRNhI8D%v@ zrTWGm?;h@Njl~?#lORcor2#&>xVThuwrt)&98a*FO3@>}dPlmZL)0?%I5DMD1?jpmIw~f;$kITLVU)t3=MIhVQLJAJeMJ-VjI;c-edq{W-8~Mm>(S2 zWrnNib4x8PR$*?%(p_`IxyN2~Hr~)_Mzt(GA7z=@(Z1U+`}o#@;#a@*Yn-_L8ti!l znaQ?3j4|NABeb)7$i*6C9IE4K)xQddsBwmB!=ZZN%!Dz*_)P-w+udOqdZApMT1t=2 zFO_UZX-}Kbd-m=S0hSzqBjb}tr{*JuF6xd)2HKkUZXT9eo<4o-Y@urF7>QY{u6Ox{ z{*j(e4!DSBeCEVx)gvRF$;&nkQO4ANrp0RY{6gx?LaI4zm0fRVU)S!D0rB)_PMobe z9!8MM?SIAfb`A7w8|)#3s=X^jP}HA0IhHF|^}1B)IzmDiLiqM8cDKZ%$Is84n3}f? zUzfdcU^8cD7PpG1MGWiIv2%3g5m5@MqK>jwfH{T8R0nBL zMAZyj<&1rQ00e@{(p`7{()#J>kAQBZq z=y^mFLtLNyi5QoAe(t)ST-w+cb316%B_DoSX5tp%7L* zBCuuG?%JkCrLu)5j-PFfgo!li+fTZGh;n?YK zzI3$YxFbCsmv7r-yWT6K=ZaNFliL%7VbO6n^>$vhV+(jSot&IqE|d%n^BNE^Q>lul zf8@4(8~b|%$MwidV^a~+Ae_H(QW2bATFDlQZOw6y(0b*qv~ysnsW*`Y{!+gyFuNxkAMR(}@PJVQ`c=M>LrF1U?_CB?fV*Ch-LVFs52{MNrP=Ka$t-^3= znY2o&l3gat>2l1%tqE=H`DK5o7-NVzk;HN`&bXMRR3LW2)4Oy}$H{c)_;XVg1X`0V z*sXr+3y;|=)z}rC2}3XHg^7jO)odW|j2{`BzO`?V+BCaNuiWuly5^28&A#XQpEz^) z*~R7g4Ff~KBcVtfFcnhF5z<7Ba;i*u(C5L%F?)@j`)k;y^Ht}n%|k-7bIy;Po%q&s zue@?udLqRLr3X%rJ$K}!c#5uRH(a{&lHuN*?Q%Jl>v_Q*Ex=h5x%aF(?*8Lv zo;`d*tOrjYI-V_84P4Xga@yVf-9P&7yM$&}+s0KZ(;F%k0mcQ}nOs~(5C!Mr1xguS z?2j(xlmLYFY`!MP*B{2DVvT|c;F^^luDABozd~Ga%o9`{Yf`GgReykc^f^!+;=vWw z&mx*@cy_g7sIH(AOebq9G)lG9Otl4oLkyUDWH6iPsVzAaFv^JkG{6a?>Ld#dA}-U! zV+_?o#DygF1aYT|nHx2=c-R!PwY7CbH7%E3&ZZZ~XYz&-i2_!2m}$nkI^t!H&5&*- zu->HUaSg{XCrn{FfdMr_=bp)RZgsjkXfC2b0I-2uo3&_&N8+v?b6FoA>5EP-6}~k$ z1)SWI2Tny`|9kpwY2qzkJpP%5RAukheOGL{Wmo&g$%UCcdvEDZCaHWAW$I`|>F!4A z@RFK62EyQ9qM_Uy^lF^6$5?xFlc?rO<-dOD>CZlY@ZZ1v;vatLfzxw~QOh8dX$WnW z8{y*6iZUk!Sz@(dYj4$^C_@tzo2guY@s6*WZ8Z zb*)YD6BAS7yQoLKF^^{&n_aX$5BVRyUircx5Hm2UuN};^o&te@xZ>29L1ir@mB~sF z8>C9*sF2KB5uBVCG#P)D7FJBrU%v{;CQ~EpPwQ7z2vGf+RA-W6fsII!|1>6_&gzb@ z;vClIfq()jR{P2|@I9cMDHcKqAjA=b7#UdRF;g20d6biy79(UKAXize32A^mWohD| zRLN)Z`7+@lGaNB>gHuk4VL;#!O@qL1$?xeKS zzf?VMxV@#nvt0-rotTRSeSDPxlh z%de?qHH<9{=POlZ4u%(MFaFx^8JoM>FYW8v)z`VXGl?J!G^UPmu42D%?3CEo|NG<5 z*VN)0G!?;AI=j4*4S+*|!drKGhayy~A{fXA8ckKy{<}s1);y)AApz&2P?sg!S`CC= zgQIJPs`y24*K}2`Lfo<~Zlf(ZC` z41KDZe^4#d60I&U36Kd(-|R{Q;uLNy)59N#e6AOb^+w3q1!g8REV{jr3_*n`=8QdClQy35_}Vaw2^1y|?Tb=-Sq`-CHP)^!9JxGH~tC?)J{u zOVhKJm98zZ-l4%{fA@x6n=aeBVds{?EtalxN_ov-Rl9KxRdzL`5^plKW^?|gj}+0q zqX7+~j3q+WbEhYE2-{wF=iY6bgiYh+lcSFwIYkHw8%Ejjb`JKMhMvh6&n~1aUB78B z=<8@3Zf~8>p6p96iaVa11JWnkiVxXpL)l$W&R;%SIA%q7Bhn1zt zBaUqYUHVHPR6+6tV?qfegi7xyl$&$q8l{|wh7b$RVpX;VjIau+#d1q7NVJ6z!bmp^ z4Ix9NH?s&}+$4GCpK5ZxG;l@Rp|R(dmnwU9ZTrmAUmW|=+4tXi_paTSkMwL1 zDGE9hovG;wE17JHHiwK5gpd*s))G~ye|Grlu;k!CaOw-G1fTrPeYSH$xqoNG<#yO1 z^j{u+=AGAGwtd5(fMDNtYyZ`0krz?&dF^$awzD-8#* zX+=X2)^_4&XBTh10*DA5Q`5HgbqVI_sacOu^_Y4cjS+g!E!Tn?ojN!D%J@`k*m~9O zgRhnKJlFFiph8s0g}OUxnU=0eHTXtPMKC(IblH|+%P=To>y&cGYP$+8}rv6iXK`N7~=ko=Cq3wFEM-c=_Mi}X)vADdV z6t2HQK!_z$5o~)VVo%J>14K=L2+qyS;)R9G ze6!~g|9eQ6CVn;e#)~n9f|^KhhR4Cv(M<=Q1tr5uMZdxpI4}RV=%(JzT1|OovQ^P=nlI zFpfNn>z!t#9hbje(mS#3f@%q}Fyb~Z+qPcObY||lcCcd51vbBo(r@d%@85p@U11{} z2}Q$^Fb3Szt!N|`#+nsv*0Dx71rQ>YjTzQ5%BdrA*P~szQvVQeg?4SAWg2Lib(?o? z$}pCHc;wkF-DhswyGvw19qj73`|@3X`oL2+Y#J1Ma3LmC{O^AJJph7;Whu+dV~0)gPX#-<4d!ab1CV7Yo2Mr^Z9NrcORq zB;V5etIp-% zwR^y+k8=t*bpZ1q#bj{iwO_WkwRQJ)QA*LOw-!;thBovWx?T^3)I}TXt-}4Ch!c+} zokA$J3^N*u0*v~5JAFu^oSiYM=~^LMSXj)AY#sJoSFI_OQ3w&@3<5kbGGJ;bNCD3| zH%##m0~-2Je|NR&DDb69cC#X~k}sz>Z{6rr9U)37QRo@ZwQUB6hldS`lqZ}aASxb4 z7%eag9zK@P@aK~&Q9Vw6}v(OxgJ7VG!|W1N@=l3Q*)CQcI3gT z6(hC600J1hmHgA+e)J2Uf8yQ`zx@ZVxtWx*r_Y=jonLNlZ{53N=-km!+8&8F8`-6N zri5Ci@TtRSls5Q7(T7}(T_@Nf)n8yv3YD-)B;rIcCdFh|miP^>HCuV;8!*3hz>FR84p&V=*?A0V9B@zlnLTk%RXKVAu&bH@9 zCn18$99*>B$+;z=+;7~ywWqyR7-UW^q%PUee_@0TrA)X|PtPss7%|4tAJzvroCBqo+?Kr+(ylGpS~x+Yv9|ucrc)E= zBQYzpm@%4+d9T_I!Y96Y;_`v(AAk0nm27$Qz_vt7dtcu`A|6%l2bGPTDHLc8Sqk`? zR)^3p1u?(_6Fg(VQ7Ec-(@`UFmaNN<<2$^6NezV&xsf8;N}`ryAk`0Y}qs$sl+sJG~P!ATJYMyIFeM1AMTpk)}N zQ*+s>9h{OJLM~=P-Z#XEZdcs=hL9$VaF_!>Dyf%p8f{ z@s4-WBAK5`8+xRI*ue0R2nm))lTf(&4~&8{Qy^EWJpc=>0-KOrIF*|n1$i=6f5R;E zCL_+}j)t+7LMdeEVbl1I{>BmyLwehj8+yC0*uL2#MAtO+Kkze0PhU0Mr=pNfPtNY2 znCWSXGR`vo4SUTw!u=@8@i^B ziVmzODwayaaz7rjK62MhphjoTPd{?zyci3R;sq+MB|B)Q-12j=WpD1cXw+`xm+z(+^A`Cy9zK0 znTSyqvW&7z6Je`mXB@YIidK}<4G8@ZHvj{ReAzxA4p{kd`lBlI1u4KY)H@x5D6wvoi~QiCEaw;~_I{87I$8i!CRkY(slXpQ&yE-u~HS&rgQmhz9?ci z#i(+nDiHKBnGr!WR&sg4&*Tf@qY4S(zx-3)EgPAY5&$ zQWA&as>#)Iu?H_CY*lV;Lcu|DNg&F~!^B0!RXfC$$;4zq-eZ8UUe2vpmZ6(reTI!Ka4Om7IEg(Io z-`V0+%O(btdXcbUa4Kew85;Mf8PNSN{34 z|Nh_uM^2t<+0?&Gs)O4*!qe>d=Z;Tj=Gxj@7U$=G;HSU$i386~PMte?9mYB(JsfAtf6=p^d9qQ?2gxH=d*DbCFF!#Y_KJeE5 z&W>-t_=@0&p6?WP{nFT^IHflc4vD($dbz5NAna+1J$3x-<3~?3xvkJJB9tjh_j9Mm z#f2ck2ny7}Z~VvoN>#-z^FLoW^tJtm8RMc$fGl4;Gx5Ud2>@kp$UHtZe{6D9*wnRP z$4wX$CYonYjSJ^00PAW$Ih(lLI~AQqV%JNP}TMR>Kl)%6;XU7%J>`9 zGNWq~eky`eG7)nLg%=*6Du04{5YR6xuYst62&sP{g^t6zrW*!ANDfjuP7!8|!A%>vZVv7offFY!ew!+XIF%4x6~*0S#in z(JFE@NP{o^@`%HVI|Ig4GPs#B@+Ysp>7WXI-r+<4>j4}3kR(}mNE z*`=AjeK-B!JKpisQxD(u&bM#v9{lld{Ok7N?L+;;$R*>aPIUGU#-b6%7_7Z1@!AQC zvc@HponZ(wxm-`OZTptZ2aX+A89J#5Gqui>BSU;|22+H>1#o2S(k$m z^?JXyZ{?5|vbjtuonA_(meQHjinwyQTqd2#u4MDsTrQg{WW`HRp_ngJ3i(o@SS*$+ z<%(UdNF7)amtC#e727YXwqx5))pi|6T%O}7J2&zCLi|#hpOH}t)R2YN)r8eox zf4hq7Sq)*5H(kX!`4udxelG$LGAKBj&+^ackm)T=%R-D{;KhX=q!c0*_2jQ5(U5NG zx)lx?mM`lc-Vq52G9~GTsSXhlUC2MQ!!kp{D;mXev#*ZlmKiOKz?FXVHD%XjUfuIqUYShKu0aPDskQmGsfqrdo}cXYHi|N3A3 z!&HTeC?wbOUWZ0gn_r9}mT&ff;s_Kde=U=O;;*Z#CclW}`sPKZttTER>x*>#FXrKI z_!lxABM~1UBFI#h-3z{B5X^MpPMs^Rx?MO-aBYVO!<5j>jB$xxhsAtRXm|yMlsjA| z=GF{-IlbaCS}Iql#4oDEzd|F<%`ZZXT+g)~PvufZfMX383PrI%nErd7i#TM`{;pwN zRL)P&P}k9Q&DXyicz{b|ILa)gTxsw2TneN~NZfqyscTQpr);}SMb)WN;!*?%rD4OG zon0*2#dtKToQF`;N}2RXZ*#~pJdZ-Gt5uD07!4Vf>FN1Qaeh{S?@bI5qXcW%wksU@ zXq<)lg*@fdDTw7w$3{35%4G80vACug6jcBLnx?gPc4aatmk>%gq%I~j7Ksqz*^G&9 z$N>U877B|P)8(a1g_c^Ht?8*^YcjkzQ@HbO*O!);o|~TkzHQg73o}!tIB=E= z>GBx5_ljGux|TcDf(_bZ!kS;X?&f>Ge1GDf9{bFe!4Z*9czE*`3IFGHiQf2y+KnQv;U`~s?)odQx_tK~hfW-$(yXVfZf_E5;M^gEuH$e@L|wBYAx{4H{=8~5|8FT! zh1pss^SYYR9k0qmhUJtJux$?a4$!!S*%7pv7#wsY&fq5kNjyIVKQnZi;6erkfTv zO~^TwmMFp?S7sp1pq|6I7P8_9V}Ff;%oD!|>6!s3#TZfIaZ0I7jO;O>iy4r{5YsT# z5U|BmSbPL4*3`6f*WR&HhaMT7-FE3nVPOe)*=;-buuST?$_mV_jP(uu+3j~7efWWy zBDiumx?BLi^}bKHCt94;e3XMi(Q8h$lq>e0%l5s$Tu5cp+crX%kZ>qMIpwwV&#)Hf zfNCIj!B8oeb<=1~Cb5P+&np#6p;$!ryjf0SYT(?NLZ0a6Pyf}w{Py?U_Y0rC@6SK? zpC=Yp+M8kuIQShAhOh>_;s`*>xtLr*p`qe)jufbo2bo&^y4oWv->R4K`vC72j4}hviFf@$R;j0*}9ULVZhG}As!j|a@evJqr6vMD-3h+4B z#l((55hDa@C=xLv5kpv_+ge+sa|dY%kwmzqwTa8WHK;*^6xc@`7X?Dme8C>*>%-7D z)(aWiaWvhhn2DG3m5sywj$>0!#aQfAGK6E9GY2xmNAy#!%WvsXhZ4p$%o#6MZP#|0 zOUi_DsIBn4>++D%gt!*c!(l^9IYbPZIzO$uWni-QiG(0(kYcw}0dD&sQBUX2x7b5JEwgI8g*!s34R;Fe#^{ zV)4p7mtY7VeB!Z0YpbSdp8OLd@TQ=~&Ryl&4O?b+Z{IKc{bzpXd+z&@55Dv7zVfY; z3+bq3vhPs0<*JTLsikWgf-Yfk%Se~1!oyi|+=@p8Gin&6sz*5!6##hA@c`#B%XA5K zC5$g(8Xlz%p&?z-FP9|HiIR}Z5nXB5Ka`_tmJl`docVKCnNJX%7 z!+;^3!w@Q`n#!VB7j_tAxs`XNbyXY^4B&(zCvf|s#hwObGZs}#AtsVq+$|h&aJuxJODtfdn7q= zX2SD8dspvQ|MfEfS#4d-Kpax zXP^3ZdrNCL9`Eev-nDTDp|%P~!YDAqsrQZG&5gs_tDfh$mu%ezIDhEz$67j)@p#;G z90*nZw1#qjvk;V7&V_#O?CJfDfBoW*zwfP4Q*#M{(E5(-GahB{y803kQ#!Mh5(?DR zwQn6b@v&R3e)`y%q4w6BF5Mw;htD2Ad)>~>!jW}s?7ZWVE4OXT70WN28oO%iNHlCg z2#=0Ww#H*aUG3)=mZz7~108K&e&Ntt_wFoKt3v*o9h(LI{i&m;Q-u-)Flrj_-nX|U z9ut_$hYz0?&f8DidX0!8dHK|s!0mke=BwLU5=X|)KX~}mhp)dPY#IOh#EaW|+Hcsi zUBl>=)8pbCs88N{ZEGTS@XWbKj-C0~O;;fZ|MSJe_uX`LEM!3hPoAH7{`5p0{{4-e zia^Kn*+MEWG6i;fghITEZCCmfL#*CKWHK0^0xTheocSapisZ`;Mhw*jB8g#v=2jDO zAspoSTFb|)5Hf+B(k{VjfTWP5dnpB)Uz2YXh)Y{gA=(tvG+oFe#QiS;acu(+FxFz0j$|5l6y(N4Q02Dc z2tb4p7B`NN>I2mC-NDsLk;wl_3*}O3alV|&xE1ITEtj@SHX|j}@LjL=Zr@=^}fVAsGPBMc@mb}4l@H6k6+kmqsTYhGE*?*H1q0Y$A{{af(&eB|Sz zx?#u8J-c`J^fX<6<82*@4vcaAu_{4?K#=ENEt;O|q|@n>XV12_w>QP(w&w~dSWCL` z=Aj189YW|48Zyo1wvONW!Z)8gJJ}qKP{zKaISFIJp=Uep*z8iKP};q5=u>xGmu!mb z7{B|btLK(iCgztCk+4WOBkCgO#w8mEA%u~zb?-Ho9vVA8+~a$3#pyzOHVv1mjyN5u zH`%g%xIa~~H}`iBbR;+Rb_w}JH1dvpm*;J_Yg$vtwgZXU~jI zjgQXHq*e;3P$Y!vv9?wtq(>65rskNSa5Q52P+^TT>PI&@j$3d_!Vz80JLybrZXrE4 zCuYlMX3CY7N>$+3&rL3z8y!D8wtqq?rnY#Kv9h#sHr2JIdt}p=NIW`M&ZV>N^Uv-- zH#4V+nE|g$8Kh|K#4EXgA>A-fjgK|8wutNt9wDk5NdeGssJ{93@03zq*N1w0R}pgm zZ3=)Ww(BOFn+Chu{_61;#DR9#U%K<>|M3f#4);}T_b(rP4gql0a4%!LzoYHc^jxW8 zCt@*O*A`NlFCRJk)@%2Q_|?O+iyk2zt%=^Y7Tfcxj%yPtO6uz!(j1Fc9p~uSq>lWA zA#I7K$6q=6kq4eVGSnvyO-;n2PaZn)*_V%RXpVp2)@vW$f9T)#A8Rp7q9KS>s_cyAJ!Q|n9}Z)FFM1f1*s_Z15%2!Md@ZS3vd+p~xf6lsUWu}XxHcqFuvD>|;b z|Kyn1xx0jH?CrXAep$z8V_#Q1;=io4HpTX|B~1BYVy3RVjBj)bQW0o4Q?4E#9T)l9 zAi|bqU`^98Mv?;KiMm#mKLVT~fJFuR6(A#93^!cm%L~0OC*90k1ByH}>>nVTA{FMViW78B?KY~Kd&znw#|Zgw2%Fy5HQDcT$kurC!RYrGSJi6&KO&D zqC$?=ZQo^+tCMjkBNEmiTQwQ3aPX+1+#4x>*Dns`N_ER%FJ~NMB;x!3{<#A`@{T)B zoS!{2IrE`gubWM+>_0W;dE~m?+Ykg5+c`Tm^MwN^F6(KpdZ1LP+O8+2DOc@nL;bp@ zJ$C5C)`8xid+)tf*L~{v=$(6aoH{=>o66p@cjvLGxkA->;^476uDImq-*<1eSP~Ji zVsC!Om6v?)y|+Aj^wfj<55MDvE5GO7o6k(n=@@_I$rn~i<@euojo9iCN^ie>_ftns zif#K_uD$%z_q2}9%mDzu_{8&N$NAu``!=?>=87ftVZOUa9dtLdl5b5U0E8hz3_t2d z(7RgV5lI*l+2>(HZ2fnlI@JNinpSSZP?66%3Sp3N^htL1XFSk{0- z6*9pWb0Q5ncExdQG0=4!^?Kony6Zqr7w~8 z!_6H#E*U>FE>4C4o(JpRN*LqGw&uc8p+YFem~nH;jQPn7Y{#SQZ@=+4 zLhv(BzBHIjI36k5&fkCY@o2~_+wRfHISrvpyV@vamZtsNqt6h=+9IKUfAraS$P|;5 z9q%6=db+ozX)#~)2z~Ux2?$}yapqRCNP1I`P0dd%rjxPA)Jo38`0(VMXf}ndY`Idj z-M{|Yqlri;U$OU}85gRWasF?QJk0?(Fg6*rjAGRhaGII)V?tiYJb!XbJdOkY_uqPg zbN-cQ|0jEI9oWc`cZ(Kuw}>oTW*VksCdnqtME7H&$ISfSV`gS%W`++oAHza6o0;G+ znc1>f-Cg*OswA!7RF^_tlp6~Q{HDh#p|1i;}1oMcJ zj_1lODg?CMY8^GYR>?TVXuxqjaDq(}lstLzw9z;sNdoNmp_&+Hx&48PP`%#SsZQhz z#jHxc`nA_7p&QROTU~LyfA33Q{B*$hkiX+#5iK)eXgiHNA3cGQ+$y7#;Nifg(m6R^ zTVLzJCf;rUZjX+dHnP25BO8~Ms9^V9ts4GM6P9^A19xjS{LzgDlX95h;`q!V(iOMvO^~_VUF} zx}DC=&8#fUT4OvbW~kmiKD>5!!$Xl_srxZzDu&KhK!sBHl^lj@S-$mZmosfDKcOe#8RRnHlnRK z3EaNV^CnRNTJ7khzz22OCn=U0K!2*#)=4Yk%vutbTv3S0wO*kJt}%T*K$a5@V-jlIag0k7bj!k^!R=wW_h+ zOMn74Ww!^r8xMlfYT?zmSd!|Q`KeO50Bjxe9(lm?*&JYdVPQr|X-@?V5lPB3xl5N< zh;_-0XtW6e7VvO(VYX7r3#t4z6qw67Kfz*f*m&vcIS1|WzRHkoz?lZsk@BfRin4eo&5>j)|)^W2i zl+`A2h?C>+Q&pCzz+eWjD}hFp1@aT!I^5abZmO_ctzvP3$1Gw~#bLHwtWZiLXYZGZ zNTn85Q-F664THCiBHJ;`{4(ck@c|4l!0CvGVT4Nt^>aMX)==~mgid#P5V~Dj<4;Pw zjf!)xsmYd?7YpDnEA1fMMfr9QMxt>(<8Is>++4=mJaj~VV$?HMUr1+cnX?peUU1y- z$f2*X78n|^K_>4E1gL{6Ksj_VkG(dpPbl$V8v0H~G!;~4t_O69Iw(XB-ge*%QNfPF zpZd0b=zufiQ2}$Xqu|%L&G-p02JFM5ysyK5SjVqS{LfNxA-5*&owTHqKmlz5iDNp9 z9S83~fqk*z_>skB47M>!J)#>+E$JQ`t++}gk^J5n1m8Za7ClHnv6V6y@4=Am2XK0gCR zm@oso_24!eO_oZLwSa7VeuT7PHV38kR$r|@dEyl%Jq^ZVqt?1wo45!K>q=>6raC`U zgY44M{LJD!+;yks;U>#uaUxsFMM*d2j8daTilr*;4rCgHKc{vaAp&?-fM%=7&?+)M zKz0lzR8;Q2jMa|h>1m+WfAI-5sZEXDIZ~M-8ca`QFBnfZVO?e|+mI z_?i2>uSq{~tue1>$=OM_2M#Ev$lHqAB_2|gQ9C>#di{!5;8mE!8`e}FB;jO=5cwgf*m&PYe zyz7$D`0*=-(NapIq-9(a=E8MoB%!Txzttd#*74y)rN{^qh6!zwR9^esm!Cg+jQ>_V z;NFwg&jWqaAgJbo#_?en%Fyk4>*TQAYR2in%w4b7_f8tAP|!z9VFT;+mB8p4kSv52 zLK5S`hG<1mq*SUj4*+&RiN6ECWDYr~4zSS#^`uZ#;{g!c3a$H?Rw@S*AeveC#)MQ- z8f~Q3$f6skmxe~j0hR6C%rxS4pf4|=O#Ev^dL0{TkbL?0*5}Enw)X}gA5UlCewK!g z9@ci9D=9D~kG#|3{%-v6?SuE;s^7cQeRj_rZ!@C_ zWn&Y~kb3fhI{wEF>&D)aqft*ew!WZ~a7u3;SM3L~L!YdnrNjLX;?dw^#pn=386(v3 z;L#UOAB||2Dn&F&-6E%CI<>SK@(^-h0~3?CLA$AXtMyE+MnQ||wUZd8{(3A@j5z>t z0xDrHpj<2KIF=Z}NU6NrsY3mVCqkx5h*Zfqj!$6b?{=Ea)^W2Z+^&fE|CJG6o}bRRgI_UbaX zV%!cp&H&!^_~9A2pQZ7h8b_(0y10rAXY9t}EPxy6yF57ooL!!*7;6`*W!&Ng!FRx7 ztz4)U^C(=cO=x3QrmB;mOgat*t`N6bsZ~+A3J*O8nwREkpS^Z50!5X=Q36aRXr#bg?u!ffu?hWJ1OWj%snT`n8uX zL;t|>yA5LXU7ep{jAH%~=U_l!EY29pQ5ij~PFF1mccMS!se6Cz^loZ$Evw(Jn2VD89Yl*k0d${6G8$$M5|i zMK^#OVt#1d@xOc)eY^V?pv58)gUtBZDfgS9Tahms=bQpClE#ZzKXGk5qsH-B0v>Rn zJhhy;+SYgzRMPDfi&3sn0H~%?6BH{Q1kvod3lHwyLs#^a-3qv=v?^9AGo>tGUACL) z$)4!COBL^T4kQRwCLg`d%sRr{(lw#VjFmmhe@U3X=1dWv> zQW%k@VxWzT3zdSTLZ>Ni+t5+&C!jhBAv2}Yl`H3qncU3c+*iKv+Cr@=62H=@@>FGI zX~9L)r5Z0f68XgS1^l+|GQK_i|A|nSrH0Zo;jl9*K0c}wD=DYVxAdOYacq)}TH#dWw_>-NzsZtRP^mDVdJm|luYz&AW zzy03*n-`YnCMN(@FRw15Tevt$rO(gRK%f>latch5Ssl z0;&cfbh2E;(A!5RSTL@wF7DTxl+k*tGe1>@METOp6y7X&obF_p9yVK8vEW^0to@_A zkLf2zi0nzZy?cmtlw+}sLa)CCbM)KqesKHIlkeVr^0Te(kN?=0v)POj@*M!?*dApy zC@3-BU3~jn+i4igU73_8#j<1?zLa+A^E26n+H@&rdXY)G-F`Jw|A?or+srgY2Mj;s zxTzj6kr?NL0!vTJp7?6?lm)@xj6%aXbRWW@86`5fao}haAQczfDFpxzcnDypni0ae z6Fy|bI0}eDFCeAQPFDc>u~4Z*l|cs}*32!f-g)zX>~wz&fbGA-F^_Qo%P6z3u=sd$ zLo$~3I$4!MwuoT;$QGdaPB}nZyKf$h8^3E;X@VI6+(on3ld%L)$0AO&1WD4>bbbXR zT9Q_pQO3|PO$4Ei;K(VaD`L$-bPr0#KHWdOeDkHh?3aE5(GgDS9nHx^Ilunk*?)Ea zdA^j1yS>+5y^esCsgTwwP6XrcM`PB^sKgF`je?f>JD;`wu*TRkZJD$5VsZv<9APb0 z%RojzA+XgLbANO1o3FjJ2ah4Ch3si#l2iZ|b5Q^|E@rdGtqymwnOe5LGE+m7rCJr< zMreXgf&0K#pgaH+WOlgKO_qx52gh@h6-F6Q9*_;}M&|ve8>v!JVr^-bL55O@BqdSzaMYooK?e=iz;2XEDq2|i$6dv5&+_}6k zyS{&fIpb&!G57FCyF63--u`o6I`XK zr(#nwj{3&jlEa6J!pvC1m_H+A0b>}HkMs(tCctPk<^c9jU;(HbLZgdfHkmOYKNe|jd!QJPwfliqkJaG>1sL^P#ACJRLMixAZru3VXI`1B zR%DVEO8GbyjYh9JJ^jYZ*Bt>`Vw!Vp}77~ zIKqzngekMAeCEV7PG?j|M@<299CYKG=a%ko>|9-*f3m&j?d;HvnV+m|AD?)xi_{t~ z>KGkCz#&DjeR#ZnP`|V=v$lT(9t-4Xp6=|&sq`nbvEwh^Tin0#_(I=)$Ln$%F)bO7&TLI=2VD5_O%civbxODOL$@zKkjuL6?OeJ^x zUVQMMb}#?Uy~??WXo#L~HrUK!F7C9~wodkU4^p8K=3;PJT>9Rm1_V?&J9 zz|K@CNr>Is-7lBQCXEmGw{+b0YQvcld`1xs+ZkTbkvqcjNj7ouAE_7=S9p? z(djW`P7;X^vofAZB$-NikRwdfreq9vv8BH9wa>nu+zOE+7N7Qj2O>?eyctccmSa#KO8^bA z-skNpC7<#6g|FgE&cOXFou*d#UAjt9oO~93@}l(O$ESZ8@$O4o}yQP8g~gJ5;D?i)a#AL$ z=H`5Bp9Lw0=Ug0%M$e`q)@j_r!jkm!%Qvjy3E>%Q5g7xZpDku4YOh?Lo(nl^C8;_& ztgk)DWb>&^L=>t0!^xYkyngcrm7*uoD8$w!0F=WOmO3^hX9L2$a&~?a1ls6Mw?imJ zSU_U~V-y`ZDp~4{@IxG@L$BhI{?9lZI;D(gMhtRi;C_}~JXVEmm%4A?n%i-}hm50{ zyYc{q?rSuaT4OT^`9?_8R$;y*NG4(-YG#L@I>5SX<+lI8=t71&Lyh*@btv&XdLLJF zELDnfj3$(Fx+qke0ma@Txx+)W^bSyFM5Dy^s-H?v&O=R4-te7!M|`wG-alflNyG;b zGk#xm#OUYlDQ=as#Ri;yvLcbGHpN2l)lXd~qMj@izW&9RA@c|Y!{%(|Uij$ghZ}Rt zWthw<9UZB;i?IgNXNFm=V#x`zTGPNuO%4((W=SS;%P;34=bTU@L=dnH&xIh76maa9 z;aWSQx3Ss;A%~p-@LL4vb532-&V4i_v{=Z)j)x&e{{Mh|8w4Dpa+4EfNGN)LdS_(U z0T}C;oMnsivk+-ln5vR^4T=cSie0&QK_uOoJngrSHRX6vE)O_=0~ou%>G~*EUZjV4nBff3#DNsDdjTAgaJ#W0>Z*Q1cperM>Hs*03)T42W|o@ zTmAIf!tAB_X~+Z2R*D{o@#Kxmt6#r$ZN6Fth0%Xq0FnZW!JLVO^u$NhoUN1xM9D-z z$pDWqB|trnI$@y4xT(^ZEr#=Ih@Mf0gdRf9=Bj1S&h(vE3;9Ye>pCYWPn5!2SU_B3 z7e@kDJi?fG??P*2`a+iTS=joK|71lXqcGSwY`*>0`!m(rtyf=b9i4O={eDLqlAD}d zdG+R}vc;1BIyKf1bPbV+Lt82%yv>nF3H90|8sHuUf!5leYvKtDa`NtXTHkw9Kf2wy z_k;f959HQk(mXU$YFEdF$|K0Ry!J?~kuw8GGOiFWSLX8W9+i~z(X)L9NhKmlq!cNB zgcJhh)=dHZ4|Wjf8$787#KkUmzI{|P77mDC(9LvQ4vbJ1K%jJI8(A^v61iF{pPd%d-rGSorU&6 z?dj@_ia)&l=;2-3?U|$}dL10#ug))Cy?z~EajxHb<&~SS&d$zQ=V-k+QJ$$y&dx8# ztrNyWZ7r)#ZXee{iPTyPnJOdwq32i)88ZxdkR7PBdFQ-<2ZI-$bKFD`K+KZU!8eAg znsjWCq2oX=V|8WvA{Fv%=YEzbC9zO%TwDR0aee>z#_B>oo83G(Dg&CUl_Zr1jTXo! zpSpAo7Wtd26ClaJMSh`LnW>iR?Jfj(u^3QBzjN;iI{V7aE3lG#MOTnmAoc#+cRqr7 z1RO*V1FW^LUR=GpG>79*+`=Hf;mqPMtu8ReKYYFkb%C$Fdj0wKK5WhKOxM<4Us>Ea zu3uc36;f>-pG*}C%QI83#lzXB(dpI7Ma~%*J9i#GKWudoykKE+0t}zc!}@m~KL6=Y z-$EzH?Jf>xA8+m9V3rWOG(C0a@!HDFlu+uh**-Trjav-#)t9eGjg>5y2=T3V@8wxw zKiTsY&fb2uHxcIGOCJ>q5C$N|He;npc4{&daT1Os1jh2|68I+-H=Hm=^JT9LIg(eT zLQ_8Xd2ZtskcMzkBJI|60Cyb!6)?Lyx7g zw--Z~&M(aU_-Cj&W||Lol}L7Yj|;ATz2SaMV$7X^Qf{@6Hsx43%(Y_?3j#*LQeR%4 z9~g_I!I|s1tdGQFs~6`k9~~cxQtm>|b_6YQPK~Ue>{lme zCu%sq%@*^8smann0x}4Qwo)qulR2DQAP$<9Q9(Z2-#fuhT-sPlC9pj61sRwuA3EYH>k(TlVO(FIt8t{^guB?^p2D5L}Z z!5POA^=NY!K|gYt=*iB(?(qp$oqi%xAzwbff@S8>!SUt!>Dj5O-+Qj@9r<{$pZNKC zbqc(W0MxyyiDG%6TNsveVG(|&oaVy-aNx1PyJz}5ajK0dDu$LitpG}gNC03I*_qDz zN9^(U&F&+0v>nP$#`ZKcX)oQ#FD)-%-J6}5TY+^UdGH(m4eZMp!tpTJXi8(MwZkBv z8T&7dk{=EQ!;1qj|Bq@j#(qq6=*a3VN>(f55lmYGkd&A`aP$1R^X_B@xSA{GGbMZ* zE0?Mh6SKA2RHagztSv4qOjWCt2iEcay-$x(3DH`_{mMjPX?{LQrLkVt-DHB$GG5M+ zG>NxKrx+Bc7b+Bj%Nwod&Gz!#%+zva`lZ>qV&)`H21NEwyLnQVDhXk6DwfK*LImp9 zMCIHf^r{h)2_Vn2`EazWcJE6FlcvNNtF@K_NxNu*NKTe*7z7x+GyD&(AP{)IfIk+_ zJ;E~|iJ04QfW2WdegQqrl_X|V@FK3Cf%{pa?%0!06bhaGAWSp%#jpv0jEIOF_+v+Y z>+l$ll+u6`!2K7lU5teUTO6-H%a-Bi#Ly zCe{NWL9^R^>D)5t@CXeEmN1>2&|jBi@cgh zi4!d>KhJjdad?0ztULAQNvnh5@OI{=D&BDaNy|h!{Y7e0ktR~$M=1fYV3Yu52qTCzs*WhbuuODYn%>A>LXE!5f$$=0n?ZJWX#C5N#kOCOD{EptnbIM z%eB?Gr9)!{MUSY3dKyjfvYKc~C{VGFC2e+g)(~#fq`kM+++A<)t+#icH}TqAJK1^G zKGh(X zv568XM)RRU>?!4)@mDQmyabO=DD?ryhjDB@$sI43@yQbveETs^)kz{4l(I9)-!mts z7Xx@=2i@-e?tAyF^YY&~ssmx+Uw3nPK9%zA$7_sI?|ORDje+m5V#8nG@8gs)(4l_) z$~i>X0OI$B`27#=;{X#8tBL#UMu*4Xr>8Cs{SO|kVXVH8??2x{!|y+Q7IF?oIgpgN zw0lCpE{Co!hVxeVJI^-ZJ9=+(S6horKb1nMm1gVw?DTujx1R4EbrNB%g@3Ge@*TII zZ2Ap1So1g{ezdcX-95SjQxl|}$VrU7{b&tM91DnaQvoUiddBIE3KWU|y13@Us<~m!HKD8%z;>&+MxqgWNxCnXH$bat2xyedi0tUl@8G{F- z$lcE9!5HJ5d)~VB))-8Q>Y-2%<9Lo5Y;40ZbdYfgg$zK%T#n+Gk6~@xo}My{M2OZ3 zJ&Int0t0!e2!K1>KY0J)^IW+S7_DRi51@mCgXxuJRp0I%u6O$7R*O<|YAX$&JhH#*Js*U!C z-DBw@ugx?3@wdZgF7J?Aj~tZD5ZBSC|Mg<@G*t0JTL1OOSjz05%hWz=&v@>C+-pYY zm}ht~N}Ig|5DdKAt~ap14jA)Nv_O1dE~*11z5Aj+3^LY&SB|jSfL*{kaQ~pyg*E`} zD$Fu%Ea1{B2BYR!Bn&vKw3S+BhpJ2j$-74ycg_iT@SF!Iw&NNy3J)d>2e962w85Lq zICUD&dW0Fr&lAa;CcOHJG8T&mhQJl|F-YL#7BB}~Q>AedfD9lJ-D2F6ULOk9W> zjsNyW)`ro}in>|<$deaO*KTX)_PT~MCW)e6eFcTXNm4vj#scj_Y68)=s+TIW0}tLx zfkoN=!9kiNEF`SoXzlN6L!u~@NrDq+#H_# z9G{)@z;9GxiHN%p-s;4i4&c&blt!mc{ZJ=8*h82Kjn$Z6Dif4PVQ553jWR-5Edl<< zddDah5W|QK+{zGf&WTY zI!;-zcK5pvA3prbm%oJh5TKqCvbopU|LAD_+1A7N?Tu?ToV3O;YkVjWrHztWOT-~4 z)pr`L@7}M?oEL@o?ccg{dAfQhITAGBQhO&|<7^~CYwtYdmDe$Iud%Bvk!FbP)KixX z6UzNT;f{M6i!+$vXN2O&ag=yeA16B~!4I>Z9OKB!Be};h#M@zpdgF`}*7WqEoEC!aefEm*w)ppc7^TBA=8C{q`{0X?(PM>=u4O^>ahK6owoSSrtpMHqY+|1O* z(ZK$Wz#wafC#abj3@tGdI_XM*BQx#56Qc;F(LY|X7ww{^L){q|e$G!20pYk+RGkfOh{d%#qZHh1@)@5I_Py7c~gcRur( zH_)qbmi}(z+4H-)jk^X;cU z_fxgZL}n{#*FQQeGqur>fG$q?I#;h6aeC&XHYpG?HqpN+64&6Jl#9?(dxeX>Px@&y*r2o4*eO};?W60 z0A6351Nx(@uU|cnIQY3Jf_dkt)j_yUjJwxpedgRMoN^(KMhN_#4$;q#`n#Gmnq$6} z0LZ-$k#@#xfQnK|8XL8aGyR=TalT=rq_Dy&Q@Xy(ryc-(0=NxNP0=ts5Muo>jU*|S z3JY`77T_KPYZFzgx}3xjt1K)nO-|Q1BU+nW04<@+#Ok>j7U85ilh4&4cO@lvK2t6t zM}W|A<#KcN!lKg3OEhbvfj!(s##mZez)EQxBQi||${6R(`f<75x`_YFQkkKiGc#Hz zN!&@2^H(nsqnh=p=1!Q17-=e>o2-Df#eQ64f%(=^t-D9ZP9`C{D33dU6` z%C*&J_r7y<^vmTrOTKmT{vZAU6*yfUyJYMml$oE*U* zC%tE>btl5c3Dkw$y9hEiR!MdVWyF5Y}eI88xNIc|2QV0_O+tlb4KB@8&F zOlt$36BuxgyFCalN~QkwKYZsO_^~g%dinfY_Z~w>%trvlhaJEToedapZe3W}Z!~e* zd2MMvj6zh{I&J{s0kVjJ_Qzg(2~0^n zQo?cQXQrp%!;Sg;)WR&7Frf5+P=OO#ysuQM*(wfui>VL`wJ9jlTwIug@72I?l!>E;$$%gDy-@g0zD{-?(-WPtVOww|X&-mw~D?)ro4UXsyMngDd$_ zg1hxZRbaT|<-0RCHaxhL5*XKy6GfQbebQdLBNlF^3gF6Vz$2^LoqlG*M7=syCtM~| zt=+HvrN5#NZ+&+&mQoQ1#D)PJbi`5;gaCDv+kk4NL!M^xp^_3646Z8FgDZw&{@~P7 zCwp!N{h*=O)S{!nZ`_ywMXo0GmJmt;$^%M6YBQJ~`temML${nrEWlvm5~~7{CxxsG zRY$fioWEAc7p%58RxeK!;Z9{($QcnLNOCmkl$PdZDz>egxo%fyqwMyB-+lD(!Q6Ds zBz>)tUb_|d63X-1hNO4@jaP5#PV%q+?{EI*?eCLO+N?h&$K>YE+@$*G&hP%<%8z~a zt&hH4YzGVHfBbL$d;j5Y{TKg*2{MTASDBc#Q9jW_9Zmo$(7ckzy`|HO)KNgS178q}w@rCA8jBNLCe5Edn>zQ!a*@5bd_zn;U!n$p^ z(Rev7BP9gzhaK_Nl?9;Z#{Tj3)y0q2wk|IYwz@EYfLkJ@mRdtB3@%H-0Rv?P%3puq zANxEO0FWTBuPng&fwsU$U^I9*z)cs0HHFM1gdU|*l(GGK14f(4QXcY?Fz5qeF?hgv zBIWww@nW?Cn-2&uSQs!{P-@oj-J(*$ZW`r6Y4Gu}k;lw|{xJ0uN_%m-iEk3daL&Ao z4LC5^j~B98sq~VgJmL)=JCs>OBBa0nxzG4;C8;&iGrnP~qFgRJn8m8`3BQ z2!clswabUwyX`m)f0SAUj8LhS(9)9JP^jHg#GMomz$S>Ijjj6r@BQw~&s{dHI+HzS zQ_??~uT@s^o2)w**l7~w=)~O7-Sy~XD~zsNN1@Ti0L+0=`Fs&Dul<<<%C!NahuP>9 zufxH~=-&7|(uhez9Zv)ey>qgU#6gwDb179Sr3({8h4Q{j5{-vZoe9xOroiC12c=w2 zO#&lM+Sf1)wHmd>)gTzGE6qkLjT5Ssaf_)EsfxSsU}}RE)x+mY#7QEhVcC~Iy7Tty zpL#VkeVH7kX){*B+K{qb+$0a~eE&;7@r!@|zx8kY4F^Yv^15?yaCm%jT(9@Ej!NY4 zuzlmwFJG$EWcY>beCCbMfBwQ`<(+@`zuuV4&XlW}e4Y#_kJR9YG0)1k+FI{5rN>71 z!4D&z|2cy45mY1Nv&3IdWrk-(KJNhC@A^GA$^Y_Yqy2=JsC31ylu}poO!D{aK=rgU zWDaD|yttZNS;;^wiCZtB<#KAMYLlIB!2%Q)VET{?4O;_RG`ly?VFDDKn!$ z0XOl4va#bKG0XCNpUp`SS{{t>_TV^d-Lyn^bogq*LSpmRky!+cnq&sgt5k)-+A~P1O4exp`o-L$HiR1 z9}|1L(3a%~DW@rCL6}*-RsPhM>jwv@5oR-oPwvk?{nw`FE2csiz{gHi>-5$Kc2T zVQ@R-2pS5ES5l-h4c)=JN>fK(*N#-8{8}ZXqk2kVgkX$V=iw^iewZyyPuI}v0Nk4= zL~EG{?-GQKxk|9g1Jb)P#hXA|nGhWoryqXs2U}}jTrQj4yT5&~yT&tBrV>N6jmYk^ zr*JIF6$|IerHfau5XLEG!vIchMnS{_OM`GAF$$TNcYf_R-fcg>QM<09ERa2He{{)}Kap)AWO<>(3946Zfa+k1kKTeZS4$F$Ngz_YnSE z)Yt)qhP#u`UMha=_D8ejBG!y|*S15>&}X9`ZyYzXQJ?|(51!%-bFbL}76bHw={`($ zoXQ>%{@m%o_5pRrm8n!1#hb_vrPi>3KiNGzZucNpaA$2B!+8ZU zRBQEP^s`xS0(Wv@c<1>RYy$pWpbtDXqx}>pJ<6a?068;t-0+pNj{mn+Z-%Z*>!>LR z7mgt?9GYS6`O~BD4sf4TiZL%EFcxYiN@>F>5Rt1sob1zX8|-~XGk~bH{e%XqQVBpR zsGU0LLk6pK>uRn^Tx?vUEWQ(*i(4Kp|0%;Ewhf%E$4-HEy5G zU%pkTOjtW`H9`<05=4pDOCUz|JLt)zu}%{uW05MfR)9ptIw}3&tvBgBe|rB-$(KXI z0qx2t9+JlHhDiEYw3Jj~h}CPLrxXkl=Zrgcl>amvWd~aKci;VxcxT!H@ry-_YvWyQ znZf)$UB-P?QPyf}ysg}LTBxfzB(;yl2S(|196gWVxO?%b|Ade0xk_X4JWG8wYFw6* zv0v~RxS#FZKb8hmW*1{RmJ(RW7{hQd!E49%5?TY@0?xECc}IHjToC}G)CP!&D>`v} zN(+cQ>hw?zq;;hS6@cadQ>k=YC9#lzY?!=$opjBOrcx|6xl_Xks}X$J{BevoSA*eJp|!J@wm+vPn`-^J^u)FFk-8gByFf$bk0iV>li4y28ITwu{_HH2+cG)1X@3%VOJ8ENbf?9~8 ziHRJHIWv`FFGV*7Ch|nefOEJJC34U$@CG(|n5|)NfeH=e*U^I=<03L2dxO60;})ck zKf*0A+CLp%$LWP3KK}IML)sTApK3BDEqo&0-Y`!UqrBfO`l&GQtY|ztQB!RID*!*- z1w1nH$QS|42Yfxa_aIZLE?&8wjZX5k`Q0CUFjvF5a2eY5J4Z2FQ>#zxsJOhCBzE2y*fP_4pDp`0sKd?39jTLc^v zI)Jmd41l*hR{$=eJ}2CT5G1gK6e_ji)J$MWm@oBHxpe8}E9Wn0DQU!`C_{4v1>6d= zk|_-+)OpG?Bs4ZGWF{7-E`$SGJ>!O8UKHk+y+&twI-kVShsO)iHpq$g5e{Zw{9iu| z0?x+P5r@p|eobzV4w=!G9L1-B8{gW0rh3#$+@*AJNb`d9~I2y&t>PEf!$6mRf2pNUJ z8&@xY7VXF_Ss*(yP#FX0f92*?#^_Ro6Vemgw%B%pxf4h?AI=->fqFW&gc#n~kz;{Dy-D#VMd zcDPHuDGI&fpSP27kH8*rwNU{NnEzrp3@zZfkf);NG2)Xev?xKs9LC{Mha^YKJUeF8 z%-{H4@YD>w+=%viG-ts&#_4S5?tL{8?4pp%e)N13AP(`CK_H~sWGo~&V}D$q!n5R6)Dt;i8R5=&M^I-a2Xp{xM(&o@@*p7rLpX`a3qUl%vrU?- zO!N0{f4^OC{*|9uF~pECnygLd!CwFQxu|<+H`ip+eD?Us#B6W*+zO5&(o~?QM!T0{ z)F?_V0i($&zgUMS4oxtewTShql=4yElvbV;nHstFd}Bx(w8S`p1b}Hjj-gp(A3rl` zYE&wuklK36_{QdL#&)k=zm(7MLJ9V~EO2`8CLQf^b#ZQb3So6)#AVuEUw`uGF|%^( z*_KS;cua{B*eS1GzPhwrgNl6Z>tE4F_da;@UnRU`jRHmjW%&TgNwd{3)=+1v_AlnG zUPAVT!pS`69I)FsI)4Ad`&WMXubVGq*WS4;!1T%lTBcNMt~DF9^5T?!eWC&RA?D(d z!urG`V7sN3GT=X_6r+p<2Tt=JPZ{HfPN?JCVIAfPmSf?tQ|{8#b7`EO`^bChR5}Cq zGqwzj<2dcCZSDq)zWZbyDvzMFfA{X=3v<)`B!vwctaE5@O%(G&$o=}s?nx73jrc2N zPWKgcp6(rj3Mr&|zIOm_#baburvM6 zP7+TPikwmI{IrB$l#^W5$!6osJZjZ@y*?(}V$e=FVSVojbp|vHrcczSHju zVs+Z7i*&DYez9E4OTtp!VVQ~zD-$c{fkzpgmIAU)1PODq%ge^=E%@_0hfc_N?@NzL zLvH5K>^l~yWFvBo^%+Y%nv%hfr`~Ao4sH|C@26Jha(uR=m**-bjR_01i(G9TJKV7| z2cBqfPhFayU74CnOcrnR#>BEny6w0Ny1&@n{pG*tub8h*870spHoZ#qd~;`e&;d6= zKp7{|1VNlXt#!adh62in^@K*l1DL3izgc|G5Ii*&K79(#_sWz$}i%6~g2hRWP z28_aMU+Mw31mW%;?H%F~TsI>gIAtqT8-fv*4Me|-T*Rdv7gTTkxPj(q_{Y0*KTE)) zM5c)pFmzA?aAKg59PG3xXYEe2fB3r}{_pec1S@MRBKF+PH&`ZXSozA;>mtlNdeE;w z-yoJ#Yh>E}!*BhMtCIzK;i?WZqH$!pC*joVuiU!%{OQyG;Gg*?JDudSmrM}mj8@Ko z3~a(^$eiM3d&%Fyqmj0wB`!<+R-K~>ic!Q-lcU)0Jb~)I3zPx`(}ebo%37^L8j&;r z;A_F$V&dv(I!I%_pXQd8N~P;Bz0^ySPN$i6;KbI7yTwBRGHwQLp^1@%k#cQ*`RZqn zkJbe%5}Ot^Nm5drAl;+=M2KQO9L$|)FAU)K?-6H>lauEUpFZ6_+hkmJ>lqTIiTd#2TJGi7_xGD&smTb%ivZLeL(u&`Mf&jW zJB%YON0S{9vaLlWGmfZ1Ipx`0iLeM>OZoE5-3PbVpZ(8)hd&xH z>JiW~?kyRNa!A{k7OuV?9Ut_LaGE0F-gx96%5T!)dF#l5)p0nD|8B(3gu~9#sq}Gz ziU<1fy>*YrnNj^0pVCpG{aCmD-&y*TmLj0tB!;`BB{twx3lZe9LB4nt@}NNejw_ej zn$+vfN86iFQvBSN8Vw42+nWy_Z-(_pf7RDszPhqx+MD|iKlsKffByFGgsM+VGxB(& zIJp{#qxE;cJJ;U)@=H_E&2sKY?QS*c4CSN18^*fT-2?kry2{fgJDx zL?X?^RBe7`VfFg<{=xH3N2;XL@9mu&pEMVe#lI?PAE!xdGZrshzPerqQJ}|XsnSD7 zTgSwg4MbYn+l}D~&~COnji@xSGLc=LuR-&2h;x)npL*qnr8LZC7`2tz=>XvFT|tJ)Wr!E&Wv2|SW2hfz$1It%1JyH|`~Nr4pQS$|t!F~(!)7C|Wo;r;u2un{_01>8-T3n_ z-6-Y$hh|@r>8cGbQMz5uylTOJx%c0`mNdTl#XOEEOEXj7e|z)WZ{PXK4B7hjojbq% zt3i=0UL>2J`$o~$Z)M)eE<~c!Y@8g(?6jJ{mIEA{q3PwctQEDRtaZgBlWH94~c#Ycm=pOzn!c?V<=vreVzDw5MjxEu~IC(P9Nzpzq2FtQ+E|;5`o%NO? z0Jc;rO+fC4M`|lU?3U(<=rmeMd~|fkwXi+}pO)6*qS}zDY~x{Xe{Z|pZE9lH@4oxL zcI(%!TxJ}RYFc0X!k3q-Q;1cTV!kw(o1H92S*2tYg^5rE@GjC`(kqrTU=2q>7*d<` z`WS^e!l)Mo7&992d%Sf&eYon%s6U+OCrKs~pt;o=B|{wd+QkyUzOmdpG4x~<0HzD-07EFVU-bS=mRnA`u!-c>L+)8k-E zwl`d&OFw328oHrl`VWUc^q85MuMA1^cH1Vq*2(*foiFeGg3hf<-q_M6?u_IWJaUdh z5VakMCr@UxzyI^^G2KR7Ilb;Ux3#&^>Dc3=e?GFaR}6a2J8rtf0HcTF@4%8O2FQdD z1xbNQb9!=OJdbzxlvV1yeJjNw1WSPZfpnGB7BRKd(mnRPGym)GKmYvIkJcZ1;-%N$ zefQ0`HIbvk_v$*5bsN6fjZh5*jI`&je&`%W4&l{$e2jq!13IahN{^H7_>G znNeC#`UQ+E66k(zMsP6;dRRb32DFOJXWxva24rLepb{Q_vyT^MkJI^*ZsOz5skX z9slPvX0+2{ur+vX_k*5gg~ApN)8oVP;6J~doRsGmFTL=}&Un1Bseq$vOw^>-+c;o0 z$f0Qn&UEaJI(dxc+2mXil3#iCRg}W!$0AvAfv!T0A!YJDQmfosYTfSMS_QKlZ)|$#nYBKVC1CdE z>_#I_`G^AvH(Y225$7`mZ9cVUXHClK!-c?Yu%h%c;H^lA+L! z9}Y&3J^IY6FTb(1zSA8Hceb{>!;zN!c8iX)j+hbC09=p8drwY|r{@R%_}wr3=Famk zzwEKSA#ES_C6zEmN;|}4+9IZwTDq?Un6}N`-PaV?u)*#Eu$t%uacFb^9`s$)Q?Rza zmI&`dMjUa`oEVjjB%u%nu~Hi=L1&;Oa$zJCZcf|aa zrw2thnT-O@?73GF#ABSJ@-QDv2!}#C6K6Yv7a2{k^Rx zNa(MB{OwJ7dGTO&d3o6z6xuxHW3RuX1|U>5iv)yDn~zO7RVETa-nOtqI4UHjYgfr1MmJxWfDSZV2I-->#_T09UBDdH^N|hnSp#u%aOK3z4XR2^V(=FL_*u9N9xc}1?D zO~d5s`j-3s!OT;4Z||j7Ufx>Y+}qXA@^~o?3f~iyq56<|DO{1%Y@G3#YL%`DZKp%s^nA=grxqRCsJTc()m8XF$BUSnk zaCaGkDRrBMJ;A*&*7e@`^)$nv1JVnf{6yONd{Eb&u_jAA4jUaQSoniFm)YpbY>~QFw1HknM@d3Yppn<6SleO@smxeJFn} zw$2jnrNsH+2~EP6aHIjy@FI<6EQ(^&dxb>PK2-|%)9d!UFRXP7x6nv9-vz;48(zBC zn2_zsy``2yff5ViH5p2FDGme0%dA+_`;Tezx4;S}V(vOi-oZ%(0d)g=k39f*4t7HaAy*qQ zLLo{F=ReGyQZ2%i6NZ{!sr(yCJ#Vm50}N++3b|Yq+A(}Gnfi_&4hGJ7Ywf~$_3-GL zxJ4O-?4DA4awi-g7}ma}|5LJ-C*|$m4vxm#TatjAgJHZ79Oqy6-ErbF7V36Svvu7wTf|kdXWH-)IU|vXqCD7XG zZDI-^I;}O>!hoPKlIY_w1qVWMEhTg1A(4o5HQs>o;O-$!F|E`oEMH-$yB50)&fi64{-iF)o8_Y1f0146)>j_C z9`A{zot^%II1T?ioroBL@egb<<}YVJY^QIVhBEhB_Y zL{FUC8JmHxNt?u`;nDczdv%3&%N%w>{Pg7r=kxi5YX~P`!^3;O__+|nU=$619vcM5 z5h{HWOi~OF1@NCn7|2-MoCMjraGXcW*tss9P(lwsl^ps!J0X4){RxU626y&;V(&aW z>I=g-p55Mqlu80=l8Tg&C?r7%q@_hdp{=0>Ei_1lNFr%SLs2M|>fVdX-HU6x_re8z zc)9?{=e+NEo)>(c@A>wg-{nLaUl_qhg>s+I$6+DIS5Xe!rhf ze)x^YLv4Udej|}VpWtvh#l@T=0tqxalQf}TObfn zl&3ChxJg~F*UM>QR;nFxx{hr8uO=!_n1qBj;VvNoE}`Vt*H=eJ$K2f9)zuXsetCHr zA0J;^Tie;$0m`4BpS``kGcz+!Pfx&fYHA9qg82FQc`&-WyQ|mhfi--G-90@$dwY9a z@>)7JHnz01w7IznqZPhyZf=H#h9)N`bvm8RW+UzL^78TVF+1UMVq#)rV}tzk6=2=p z-@m@TzPPyPcDvce^z=0Mfj$GOdpsUiE-WmtXEru6GBPkQaDIMnG#aT$-PhMw)s4a= zB(w>43GrkgX1*|zaIjo@vzDTIQ1qu3MDFbDY;0^iJUm2b7Zw&mWHKYPPft%vOG|-r zc6Ro~#RdI?grlRQ1qB7$+uK|!F-}F2Fdzf#S65f7tE-!unwp!Nb8~Y^WwBV;GYz1k zqC&k=gh@zf5bhEZa5*|U`tkAc=;&y8co-sQW@hH)eZq@yN(X#>zTJECbxc#6)P$3jsFE%F0SfNeMS;04yNq+1c6UEL1UHRfxt}^H<}ux z;?l52IVa)a;mpzxl(K$!cql3=a=Bc<7aa|S>+9>EpP$vAPYGTENYdWko|TpL_Vxz% z5%0VK&_6OVGSK)m6*>gn1zscnDa7NXii?ZGx1l19^U<#JE+KH2kU-(0cJuS|5y*&ZWG}Wg0IjX9EiNv;zrV-&U>1&} zrg6-1+j$C4JR%|@EiLWjE+K($j!X`n4M&ONYh%bjbK;-9JIX;A1cESp|D$>fzhunB z#MoC;ng4+-3#^pVE!Hhsq+773)Kc0Fz;k&&a;m1XhGeU6DLZLGsfjcO6{RgDYf*Cg zX1>Y6CpJ0|C2PK6WP#6Y1h*DO^e5dLJ19``r{N18W%dU8P)@ORocIOK2Rpu$n(&>wq)VM!3@;~1QDu3&$&_doa_ z+(f)3814idsY};&+o>!i(6e{?788cHV%0=BCk7aKll6d zWbYgl9EO4@Iun-v|7XkCwfVHuzP0UBMmn)>l$4CQuG4HZ9NVtB?$hrdj!rwN*X!%` zS_lD}ec;xvEY;vR&ye7LM2~&42Z|Q3EQ>ryDfKO*TuAzDG@H~fj_dyFY2nI4yWIu= zN_x;9)Xsx2OtaZ++K%(v=ZULnk32BOIOpWxKRE2iqb!FRCRomNwLT6bFUh1QH{<)hcMV$D>p3=^WQtHA3 zn24?k7D@!@m0242c^qU9ys1(e1-}3?zgR4U5R5UsP_qqm5NrfcvWUYh^0P-hB)`H# z6h#y-!HNHc`)@!g=;c_3Eb~PX)CalSPu+g@(7V=4jM+#kKmdFvU=My4ut)z9LP#m8 z062pxf->CZAy!dskUN71JZL|?1Xl|QfC#Vd4Rs$MY6JG%`Xe<;nFdTZ{II_`>d#NR zM1)_JBO}rbnIe&cKY*@IK_>c*1%s z4vIYBFF?-}e_`Q%#@aO-ijc9%{}2bLc}ZimoyJsi<>Y!bKd>Kk2`=Aq=D2! z1^__{-1oLB1p$C4YaZM2A@RChbxUxmW|)WRM5Kzpw^CVJDNS7(VXi40;j0s~4?Z_m z4@`?EfDix?7y;@CDL^71#Ve74j3Az7_zahQ{u++z^{ZfIc5fL0umt~jeDX66PuBv| z76BqG>K#Cc5DTPGz8xJqDs#d8-G8$i&DVK0O|LIDei zt&52mNK^@W#5Tm$#nrS@TyL7^aS{v2lB{=_Yin`r-RCRz$n${S*GbTTpn+kZmW-AG z#WjQi)m2eD6h=_X)YwK^6DLWUrT{VzsY`v4u&*lQNK0G?GGx#Q$8m?5;c5}z|5*fZbc;o`!)!Z29c}D4lCgPo-P7Xe7qP(1EZ34Kr(6!sv@m(lD1R< z&i(PiEG%%jB8b>(wc4GQ04JReVjbp^{$b48jQoJSCSb~J7lq> zZ2-AoHa~R5ZrohtyCEW3Axe4c>bSZ_?klgnQf`FZ4d|t^Og2!F;=dfAX6UqtL2yLQ z(8E394K)`7BmgNw2GC=P0a%1tu0AaDe+w#sp;Ih1B0(6o=DmBvt)XoJqyRC1O2d$r ze6={dSjfsGrmI7+C{XegnkVfIAL@49njL)!0NmCC$+Q2e(8kl_kjzTjk*U+D;!nCv zDFBerx+rvk>9jg&20=(7`8(R7qQp(e8 ziQ}LUkN)sW_jE+Wle|Qvn641NZ{I#mLDL|ouBcuT*}hydm#S>Dn}{z0l+s#!v- zH`9g#*-L+~_+{2?kStB#e9rB@1A|c7O>RzPZ#*d=rGs~wfZ-)a_2fE}s=)W^1ix z-D;`(&ndneV-)B$w^}n4nfaZ8OMyKWW0sx6JrA)ob6yp>eoJpmciwx$z(8n+YQaOJ z{j+fjxln*m+@y03-pzyyxpbFDV3nbm<$(=@hnt9uyXix*)|nR%5ckkXEhM|8O7ihMs z@$%q>Zf2pT1WJ)X!d905KAW{70>-@5n%{>^JCBE zFCGsb{5-G$t=^iQc+Ks&DSqrPWo9fp{u&r(H|&;p7RX&*)JVKn#K<7VQHW`rHz(16 zn7-TuoTC#ipdaU*vg{&)u8}_fx2i=4KOe&eMtwYSmR4;@{`>c6U_<))Q)bmhj2e)q zfCM1jfw+pu?Yw&L-=%4)8{qk!iFEo@Nz|0YeOY#6bVVi%bcw&*;-az`3!HDIe{gzw zS8o)j`Jqm_d9?pvf26RUD$1Xk-qja9H5-G$OauXSGUreJ)KBR=&L9XXI=Q(IUeV2X zrQ4Vlw>|G%y$#)2@SDErn+_g4m}S`|IISW8h*KF)w3DAca(>@Hy_w|4r`sEQqHWf^ zFg7#MNhi|Wiu_lSgL64Ep*?i?(2xG`4-X6uGIMqRTK-F2w0^1VV6D}?ZGYege&E1? z14)v=id=Kx?ul08U|?(Ve}4eN=<1TTvRD2Y$YRjQ-uzz>)~{geXhRXXWLOs<07g*7 zT9aoJuV!bTY{0R6`jw=9Q@Hg5CE6?!Gx-w)08t1~;0lNzS%LCnl%VP4?4$5s`@I zUaMQF!1M|fTVw~26j@B_vHJVDbXMBn;W+!+H^zqvZvDT*I}H8knQ662o$$k7J~NCE zAf7rgb#Gw)LqJ6@cYb1Ww$%!vNSKW=h;q;57GeftL{Q`kP==Vc5J^-)B=Yn;$!(JX-=CYeEB-fGE9<023s6@gq%7&sx22ySwALc}7z z3J@@?x0DMAz&eY^8B}9KS(<9FBnm@ktpcl3A{tFG#>}&Wf6|NE!QXJT9ZG9d*dfcZ zp`jt&0A1~%O2u^36h(-ru<3*LVZ<6{aqG~(_L-?1d($idYSnsgi<&RCPX4Ri`Tmq9BuH!lK_~-31YABl zAm>u=oxbbSW~Qfldi!*1(dP72VFxJkmKEg+T^he)t!wrc)vFlDMEK_lBrBw4^M5NdKjouOcd-*X#ek%3xp-P*n+jfRJYk7C?zw}?ztb`(;ag@fXT*seZ{Rg90$xSL?$*V{M~eAIzHGN)>hxq;{MTdN%-d zc}1nUZ@>L^&-gEg9ZLVb`_C*4Lrtjt!5{oVzZ%+#T)UjR18F$h8-)Qve-sp%8;kJz z-=-K2m@ zf2Lih^N`&u70^(DDGRYTDgp>LaK^b>!|Dgf7!s-KvpMdR zHrYSS~$m&9&-KCmi+zsx2X%t_=We6i-5V|l_JGgqoKTG#z=it4hdF~Go5kH3T zPIQG4md_5JbN4O+tjM(+P(>_10{U4F3dCfT<&yW9#`z%K-kbj?&#SG``ZD=|7aIB2c)e!B9-TB8fBYyONb(Kk9esv3!7Zx=tbTt zS(bS>N{KIBSXFUc!+l$}Y|-eSi1?L<{mZFGYN@}~5Ub{&oGe6jb>xjP9x||y%V$f= zzGq3MyvhaXj^)mc56=q;F0y5>ceh`5nH48qVVM^!Ei0*z3UbMRT}nHw$O^cJ7MU=z zgc*ehmOwlSNyE)s6S(u0fm*s^d#K;gDG=@S00kT73WB^=XB^t~;iP4qQ zQYL<=qL{9fx?;L9MhQ@L)iq>FL|R{B`dly1E8g)`=3P%wh}YG|mABckV~27${#Wy| zBf3$b8!4)fStg3W(*jCBm#%aLV_wZoFLYKEMZS+*g05~Uq#JolmZsHeslH5hXfzt0 z3WH0Km28=-QbgqGGqdMr+XGEb((LSHW{A7J_EK12TOIpDBS=`;FmnzfwJ2&tHRl2} zHUmR6YoMORX`013lSo#yV+j1Zs;H7s#sLMj0JuX87z6{sP(6y9t(L-ME=-6^>ac?$ zY^C}0V>6vN8Jxw*nVHF%%o@2kWL$_U?`%-$48Z&a;=MDT70U$bD{YL?X-a;>Bh?k( znOUbSDd+B~n1!+@J$bFjr9_QJSry;)bnPk>Bee1EKf={j`qJwC6fh;S6xY-sOXA6j$a1W@MMO%qDbMCpT^E1pMW)%Pu6=(wv3apiw301z z6|*shKq2-A-#Gt=vl&nm5P-^wmkZ1fW%$FvcJE*aE<#+WWl?MkomIy(a1OC(S8_su zG(uy8AYvlOGJ^)d>?e;V;@v)aXCrrcIkF!2QyY-S??oZu>P&*Q|K%0)Qg2 z+S0m!HWQBLGHhUmB}6!q%Q=xh=~5v@N@m?lYdV}d>t1VETd8_5w{K+BQ=K%nT>+fUSN zwq_A=X$^6kBSeggEA=2WMI690IrkuLBCI2-W%>x4%xGvGK$66H9$EVqAX9H$Bcz#rdn(IatUDE3^z<<%|6au)s-{enb0e?qn`o zLK_l&SbyzHha3BAt_`p`u#BMPpfQKp&$*ZGKbSdNPe4y^Z;p}ym&pV&;R!yJpUhm`qF>?$)TtIDsP=KE?}WFjYWVVW8k6`LC_Caa)BeF zCGY5Bf%7bzLp$nB6F`+-Yrb%(@yP@Aje$)7wnbL0v8U!NVl1LEFVj&`TVdT(s|vn; zUQd~^K6m6^Zb4OMzL!pxisxi>Ag|axGBTo0nYP@WBhgn##SC?os@*x3PD(D=O9eo% zV9p?dK8&wLE-X-d0WC0R$+=vXQ5cwoMKxjHDs%CptNCsuy|l3Kl2FwZYq!litfF&z z%aP#CAsGlUpa?^GjRo^xs}qM-gs%EkWefqNeE(46=kD3@etpp=Y##cEk-jfJuzv4A z{d0G&`Ox9UcU`~XlScYJf5+;ZdjiNWPI;H~f_j>WP^;I)m>f~aFra>r4Qh!-0PHuS!bDLR!Nf-q@YJh%J2P85^@ovcz zcx#BSC;6vr8UEQjw%$~Cs(j-5fzQ}Gy1PI6irs79f2jTgH*fmDq52o>T3aVfrA)Dr zxufH>5MzvTOR@f&w&525EOpQCKMwN`5`I^x!YJ?B&Y zwgT3dn_6Y&#V`!kTBU~lH$Pg@uYR7CsIWK}I%~@ooC~z349^ppFpLmMK&sbT$n*RP zuX|q6y{Ue=k%j`zjUg-2v62yz&$3_mlyYH%OEJO2>CbW(G*8iPV)yw`?cnQ z(Sc5y|971AQ0aTl-&V=5((as7Qz+1PCog(Cco7frL1&`$KX?I(n99Vf%4)R zXFXo8RgoA|L3&*A?Kj03J3c<9aYX^~&VH6=ufO(Y94ByLYUrD9zA-sDL4+cr#~(j_ z^7N_G9;b@6?$KLE zSrg3jfytjv!UQM?ojh)4vz?@!rdgKel8ea=2+UhJ7O|XMqXI<6IVU1ZZik-0{MF&{ zt^Kt<1ND?eKa+8GwAs03WZ)l;P24!re|V+?EQIA$7c5<*GW&&y)FDMgZw-8_lrU6K zIk|pBgbcaB`HUJw^n(D8{__}{k^|9WY$4SXl)A60vP_^>u_*+zSZj|RJNAv=_)WSv zuUKV5J1TjMf<6uVmPT4N4Yw%J>m z!~}+pG&=#&Kc1ZYM3&cPI>#nkd;4pDb*}YaN6-EHSTiC#;n(j5fQ8w1#WIcZ8DoSC z1P4MvEk!_(5fOaS9)gen2ny+kP)ryIW1a&b=a>i(g3l%|Cs46h5QT_*nuNk1ES)d_ z5WP9oer~#xBxiQ^*PfefT|ZE}YpDJ=?^&8YOub-(dO={Mqa6oaL#qVFRUDpAd+9Pj6Wmh~u=G3UTIT@z5Pt2M6I&ep($mL*aG#|QeE!r{N5A^oI1t_z z*vI(dTW4^QB-5I0by{uml&A)g?R3J>z!6uQkfDtVCgGPOl~LqRdvr#O^+J-(XpdoXdB`0Jb!AB zGavB$sqKz-Tk3EwT~6z~75IW6(5_DF=Om;vp#I>=~pfWj#bpho7naJG%B?2Q386amK5kOEu zQDu(P%0+(nY_nOwt^oif@YxOqQ3P2KAR{s7Qs_4(0!a-sKxo~`$*FJuzkmJqhYud8 z_ely_fT84Vg446jRW)b42L=KH<=f)v=B14+4cNt6t?lg!7Gl8uEX~`fXYKOua zEHKF&g3tx3ND3*zUBwTp3*R%DsLHVCUhc*taUN_L2Fq<358qb|k)W!^WIb0X9eoKt!Ga(}bLIwX7~6yV7)oSE?4REI9Pn-+1%L z;Ui%bdBRDJGdw&PhS6{R*6-eb|Gk4lLu=NoJ%04a#MIQwuf6d>?|ZObi(Yv7wOSN1 zv+ot6D7^88>*kVj3y{?Bdo*}n6HMjMWva=k&{ zP_GD6CL{Ien?LT8vQ9ow3sP>gAtPALn3n<76}h&+9T8Z-5`FQuzK=bBUMJNgX>$7P zm^G&Q)fk8@82c7vXZFjdC@rHv=B)Eq@aPVt8i5d+PQv(Sk3D_M_HDO}tQE-(APGnm z9_U$ZXH)6H3{saF!Ku8Et#QZ;dR{`BtvSh2e`+?9h$dV~w zI}Q(pGtBwS%*@Qp%tN11QQi)Vedvedv(5hI7O7wsrZ~z04=ss0F zh1ZAE;T{TLkrVlRiL`$o*Yv=|m|+pZG)+elg~FBfjkPsZjZLdt&bIvX);mf|qJ#h< zl$MqIo*N8DOvBJq9x0?{nfVNLZhNlK&5|#u7WSFSfEj_m?th>>656q9E$80po~~rP zs;;Kikg$9A?vcUq$6kBob=O|u8H9Su_niPD30UB}l+1Es%AqJfkcXn4d$J@LCL$J# zxvm%Bj%NJ|rMQGr%5YXos;&a$el!}TEdQp>aL|Y{>#Y}0lj$^8rJ;m_>u1M>6Im6k9%MmWB&C0XOCS{mqcWM zKBMLXogI^|+Ynz#q@X}RNyO}^0-)Dv_1c3D?m~#A%G@>PT}9NEiRn}-Q@?N7){KR$ zCxtK!5{`y!%cP8K-@Y|t>im$3jsnMZB+{pfLjm8lSC^tEXjS)mp1RB zD?#*x|BVB8KXu&&JJxNG9^8HU*sfs2w#^WuS6y~_&&253HEV{`&f)Hkt#yr*AOe#L zJVuyAB2l88cU`pLgHeG5rl~oFqPZd+@7e@{~Vf|_&5+Od9mUXJH=hl{v4_>mvq`-Z^nH}N` zGy(F6>4?HtL?|_FW@SDD4}G7n8VBdBCrc@3@gzEP*ZV<0&ayPAuWF;g5L5p+()^N( zw*n~i{K|02*6QUU!}38fq+Xi;;^6-6%U8xtGYy`pLL4PgiXv(~vdkcwFT40?pjMSq zh3}ORyu2c|j;>;aO3?K}!Z4Ze-ODfC83|eI*ER+N;mOH*$MuJYM=U~o#84n$F+=Y~ z2w_=}ub(_WVd7qLk`)Q^XD=qowg^ND6=J_N{23N!i}h zE#JHEuBykC)h8-bQ;tL)GAR-w#2kT)0*>27{QnH@nD+^fTu(Q@Khx(PH3%W7W?s*U z(@-FSs5Ezyfs(pl^lwLwZMvq$q{zKASf_x99p=PqDwoyN zODd@3TyRcML1t4dTUPH&hz7&1^pe4ZVr+T+3Q$NqUR_nK7~=#`2%?xk!97O-AQqzj zg%C?(99p;ySc0yPl8AKD7l*q#FRx#J{N#~|Y5$wI{dHAkRsY0j&*W(PP!E%2V?$GG zS4Y$?dFGBwEyFs{*4j5ZYB9R4VZ)#Az4h|V+scALBC@;8aint&I#S{S`t|1-YTNSUg4LUkK zUT%j45{4MD5R_|jOA#ZL9?L}kWH{_PX{rbiL8Vd%nsCs}Pmb`(F-S{@!sCih1(C!; z``*)M9&G6XTV1z$!^T*}xN!b{^vGb!a}{wscWYhp%GImK)9&sQhxc@L*HuNIuyz## z^QZfc5K2pkHRPm|A@ix{Z!mHzLkrZIiHM6m;OR^U6}Sv+X8+}$+xHB1NW&N!8$LeN zPh%CKaLLVg|FyPi#fkRTRn>L3-nBbGjM|b|JQV)Xox9_8%TuZ8smbx)N%xoSr)%m~ zTv%HZpr*`E;LoM={-2+Gv5Bb&nFY^+QaZaeP9cC2C{a=>nWLO)11~CzPrDOTfgz9z z5f56zlmetF$cQ(+EE;SyO<$z4VKN&y<}6I<)Ocy9-g60ey(*APuC@4=5JKs-2ZBhD zDxd(wbrNKk^P^|6xrXxOq%1I-88TYh);%q6SW3=d9s z4|)~})r4$c`2Xl=i`q0E2mnCtemn|uodUwk3MD9MgV`}Yd~&$&9alg38RuGLied=g1hH=fk1!}st5|A3{DMd zPNN(c9VSA$GJUkaM;eArOp^k&NOeg?g%wLrjVnZp8B*it^k&Xizsa5trU~M2~kS!Z9eeC zi?&yV!vf`|h9+~UXJ=U^M~{R6iOF2Y8<-mZ%;TOuIx$ghg#;r*6Qg6(lUth_Cr3t- zmtQ}WNr1{?6bV;C*UMv`r|V*LAQyvsk(rTM!ac7+E(<{Y*m0mThW5A*{lh&`D{z{N z_L2U9{uUzL>Z%%_MgkC6S6Lo1krN1`=@3s!LG&Ky&>*I15<-@Qf0*l9nR{K6MVg<9 zMx#SRL$2$FLLovaDj6WmA*y#W)jc$PrlspdTWeXVbNP8y=hv-7L#6@7roA(LV~0jz zL!`8_+8Q4kw8A0a0-2!{KlYF`=Ytf@%tgmDNfrPLU+4 z2sH%vs*=ejy21f&3&DL(5Ji5QG^ja4OA*E3z98#J0E8MsoMT$b5g9W_rbbWpjC;iI z@kGb?>FukGE%nxfHK~}9tRjXf9%$b8_22Y8cI~AXZCO8js?Dm26Pp0nJA!=PBZK@Z zz{PB~%%}V3Z(YfMUqvDjtuQn5A{m@WcMMNWx~YJTWB%moF+K>oEOM@qR_~^K? zzS?YBE^fd3!RAF!6UwhBAT)px9Dd9bD^~#Iu8-*|9L6%mcIuv`$l@~vKa{9~nJ-`khecrY$ z6ggEgC>5fRC{Y3Y8ySqHlu4N@`!#0*D?m{|pYx1Jj%0{{hGGhpLdgXuz$lS-?;c!Q^2bxAN;78py55n`S=OAdD18&(B3R3s)k_IKK+V`F|e9xAuO zK2P}wN~&Bq%h_V+ptj)ADnCFMPVSUO9w&o{`nwQ9JA9g^sWp2EAre3WRF{QAk;>is z_tuwh~1|86_xk$Am2M zGxxbuiiiK}BKcJ0m4PavB#~5c2r?R=5#J{qxXXN3g5%kaZ%le=OnDX2$ghs>v!u1D zaqY@*Y}lC=K#4?`;5ho~p=~NappIwrax6DYMXf*ZeqTtTK^glyTt-DM10F zgiu3B$%V%#LqL!F2*jX-3qSkLG69ea50oTm5{jPZ5<+GNb3`TOe{xYpvyLJPH%%CZ zF+DvE0J-EE5cG5IGb0kSuG_d_=Z41SzGGLdQqf@aV5@oCgYwWn94eESY}_DIrJcX( zt~^UNobDSO>{jbmAn`>u*UTsPb$^QMx|mf1U+mt(xuJZn@?Q>wko;9vt>5dqZmxAR z84fNlH_!I=Raz6ZQTz7?$0uZ>`uJq!j}OKNCe3tueft#r`1tvB4-6P~ z2zg3!0AzY6v&0uk77sI0FLFbqXi$SyAn z?dxpcRLyNLe*D1nG>@;JFk|o7U4FcKsH0=!ncmRf4&C{O8(T_7Yag3E(40P^!_nT6iYFf*EhM+72KDsS8~Iz|VZDyio9Z6n|M%kWozdf+#=_rEwt7- zcFWhk$ z5Cqp;bC&Rd%$SimL}q(*bTm_oLI_!s1=VwB?pfrQMQU$;T?MZYfY5Q52g$S%u!QTy zU_wDp*_Lt^4z%9e-1~z&hVPv8->`1i>#j^ouW!tpNT-!_nP~|r^s)7Q$Ul=D2{wO5 zwkWCD{IdZB0iYxp1{Wog$C%}(rqaUod>JyCAp~_(LBS^{MyB0q>82)z2WZNl9v<%O z>QDkrBRDZSI^Ex+fSA-&QtHDLh_H{Qn#g=8eR}Pk9pC%W&+oqX!Hj#!$&<|tj5GKC z^TG?yfAE0^!zHoDKk*3{}gw_8YfQ;x_lfu%Ls^bZxwxxpKyM29-q5^D_D*x*R2Q z#Kl`4)X1k$XNAq)y+eZ$BW9R1_}|Bp-1*EcbwB5V>f%*UAQo~3%ATlD5||Y{ zdHkXI+|bZSJQ3fqb<3as@Fz)#FQxBz=U;ICAOG;%m%QMGB*Z@QfluAN|7cmjTEC&` z(X@6AC;>`jUYeMkpg@R(>guYhssu9(sek|hDCojk zL@{&!pD#a}rfJ)DI2_I}GnwG4pKk@a!$%P*75XlBgJwW*5YmUTP;5m=47;a4{nw-Q z!=cr6qjhBKr=CbllXsnv6Vr7Kku`l216?C2hbzgLB1GHn8HTBp%FrE#Vf=5l)EBl! z%P}N#c@NL?vN8z@6bd8?83&M_!#!USDYzq<5(dBW(j7a#@{FBdzn;a&sZJvt30vM! zU7{i!E$bN^INj3fq|!LkAvG&E%=L5O3<|_JrPLzbtGUjlIipz#fT&PO#Z@>MXgz(# zH0@||eBaN|?xtz#%3D+l zKqw#-5D4+zwBpQEl>5pz3|=cQsoJ#bQ_tM~z;hE9B@eWC3gb)-*Hzdn5_JoI%FCjM5AJ*08(uG!{N^{m`kd!I@6drm<6~p_bn~MsT}8x#W*s8?Mo__E@Y~=1 z4i}=dEJi4N@iR9cJ9eBgLq9V|j~iORDK#ttf-664 z7>Ec8@-2rn<~FI$qK^vn*XWIfB9{yLHG>|RGOQh?1QGV_+eax?pa@~6VV*sE7L*_a zV66Ev{FJ8%DfP&xd$fh%;ZX3GKl}b;AN#o1 zz5b1q5~UR89W?hH|6?73Vku-1`H!rw*3h&}28LmZ3@k>s2@gsea zLw%J8&jyEujGb3==J-j^O@l|30nG4BcT7oV*uhxH=B^uN%r+=RB|!NIkZtQHgeb#gb*2JV?yYK7oL|%;ice!sFaMyE5qT4Qi=f1 z2#zU2NGhGGs!rZ{&;4(C&j;_l=PpW_lu|A1RTN7hi^w4t+zrF9vS3+gO+=N;F@ZF< zwV&u32pg4sL!t80`r68*U{xJstgJeI1|GQgFGnrcPy{$p28|r-n2MU^)#1<-fJCVj z2LclGI01%X5JHx)+i-5>UrtyiKV#CtJy(P-6=o0w+_-#2Wku!b&Ql=TmzO)H#Z`dS z?yBwj!aY;NKD9VwxTkw?(hYiCj!$zi17v2mdUm`0D6sf4Isauw;UAZh#m8{9!g?M>IO}wtYHnF@W6S+(a6j44G*IjqzzAw2g<+l12`}z3DR9BJ=FAIB?NzX7`f5obm3I5RVmhuvdvo?+ak5BrlxI5^m|>kbzY*>v6)eqws$@2xK~?{# z_}P6Em#w^j*lcgt=$YQWl$Rnn<42L*|Ewb}t>mwqfmR{T@iV%O)^QvyaHjRsgix*$ z9Hc4ns`EEpv-A2>>9W18@?>ZFSOfr=#NKJC9yTn-?VMxvYO57R@c`gqTvuF zEaw3-*MtEP_3MvLKPHaKAt0$qQsZZD{>I+=XWqYdOWz-UMJ1W)>^%JDcOH7e^Y=8Y zIrXD&Gs4`KGpBC2MNXut9p)Ln=8In@6a8mzxMlw(Pu}<1m$m%#Cq#l;gwtN|#?-m1 z@k(##Ft60iHe{Jg4oV_wdR+mc9t-qNbsW!tGMXu%^nG6nQQ#aFrfR4d+>5{*@>l}H zF!EkSDyZZ7Q_4?sQO4}YZ`?RJmi*QJ^u3*9z2nZ=2iuLOZDADa$Ua@+^MTt_wFbzfw5DZn&wh)QR!Z3_k9-;bhxdM{8 zr=8naJc3n9Ss-p2Qc)=lW)9u;uip2+=feBHb7AwnB|ElJpLBfddn93Bbn9O)x_eLG z>t8>1aIYP(dq4BhGdJAi@7;6kS&y0g$Aii+yvebZ?|b6~U-*3e)1RRT0mxfOERa4w z@_+h*+=pDP>c90qBgD3C%eItMpp^ZPu0W7bDul?qXxX-o-I0K)&x&NZPXJU>vTQ>M z=1Ur6u`phPMb5p5e9R4nrfE`2^StFipg^F2mOudMg%w`2cHNHJi-gZt7uIfi^7idjHI=r(gh(5vs)_^xmNo1BgELsdy8c;VT|=*(=K4i5owTzx5->aK zRv>iKW||ue8Y@Fv*4ABe>DKeA6HVojkThkA2;xfu3c>Ro!F?t4aTH@LXSSE0CsIn6 z@O@i2m`Xqj3PAQhuy6TIHv}(OuWBlww#FSFox10)RnL2opNyKD*HztkOaH$8$|n`O zo?=;Y|CN^|p8dMe#zyH25-sVt`TKj{|M5%*6f+H-_ZF_+S#mx10y3Gt=N~_Q?8M2F z217*HclhYhV<)DjA2RLAY&ADG+kt=r)z-Wx`^OIrK5rigQgjNH1SP9*chP9-X7C?HZQ0v?iSo=OCbt;<(DaoeTOdEwKpTEFJ%nw869 zC5Fc#?NN^*nhLm3jsmK~<*eYoDA8*EyzksLm9s3o_3N47ehx`51xjW=vLq8H=sG0j zGhevVeA?k|8hqDO1OW*JBvMEzg;G*wp_eywaL+&IJZ;GNFD)O7&1oQjBGM(q5*Vtj z9C_dXj!g$VVo!1w2-BJsLx+w9xUWVAMt9#`T33zAk+E?7OJ924zQc(p@8apSA#FA7 zuXx)_wtfCXk(G76@9Tp;3Nz68?yAlJVBOl)-?-)LPk#JkDk~DJnpQ7Q#Gmu57aTr# zc+-~6<>j%qv!`}$-)R%$c`tsksUV)HEG;d`G_F$05{cx~9((N%zV)rAJn8X_5?OGN zgCdH-ePN$$-OHodgBdOYP=X==Oi3jXC@Mu1^`vy%wDLVQ-Lu>(QG}u(fQkT9lt=?5 z5G4>Oh3r&ZUo}c8bwCG_Mg9>VX69Z%Y-nV)l9?C+e5oM%zVtu%*-e_W)R~sGcz+Y<1jN5 zb=MU5p7L~0QCy0m?o4VW<##J`IgTs-{#QN_W54Js)tt`#kKS4_>oo4d&5{ zU-bO%e&^fUwr;`u934!P^%??Y;GR)?4_}f5Nm*Gr5t$zmq@B`$eEu;<2t;UxuXYF< z3-p1JaU?;d#4;|A|__mMR##wVQ8>J6*@{vxnxr?=3ke*SdDi9T^&X_iG#7Lo=WL^chcjN@@8W-DB_)aiecza(?a!awcT_ z2*?B;ekha?3eweGK^@~jplR#v>#9~t@UJSC3U$x<_z+nZS5qzXWB&v+(U|MvWT)o-) z!e4*8V)j^9&EH-SL2RzUS-1%WldxL)N$VRkN*vrX$z1^&IweexBURC07}`%x`!2C2 z<(!uhiy84$1B4$7H6+|!kATY>J4>)$*Fj-k`6oGQ_K71;+4;Mzbtvuz)+sO(UzszE zwrQTcc5$%OhrLIz3+VWz@k&p{gGdu#op7AbRx>_t$ zs%2BVIezgU|8y^$FW$DeGJh6Ae#pf{#PAf&HZ3s0^YBwPckS9^{Po@S*cSRq@XD;d zbLAg*{Ad5Qn?K$E??)_KxA$LrP2O|3xgh>s{^;)F#fuRGu8Cx?E+|Y@LzRJhMiR6^ zEHFBp;I2x36g&li#)dp~7(yjgcAV@z_9(M+izsfBjiYk!*rP)sA|;4~aS#*rDDeOa zAy}6pKE7nin@IuJ09g$OX~9~#g8B4&KQlIZ+oK=;puAW7V=@dD@4QbR=Yw* zJBF)X$PSX@IR}mcbyEy1vh%I$su0=ePYpiaguo50n&=q?z`fcF-_sYwY z8%}gfEjC134W#Z9w|KR)iSa58DkQe6jpq}uC7`2Eb&g0D^%-=biLY)-lY6Mem~OxQ zb~J!v6l#_%S3F_<*jDw_0eWJ{jMJbPTS`??rhWZTWTwDF466iSoFweDF}wsMlJK z$+`Ig#$HDb{3aGkPe5tiL&rDB4!(HVCrKd{nQDOM(7rUWF%@DR{Cs(+&HM2It^r4I zNqbo;vD|Q(D`ZB|L~y49K~_GNgG!aQY8iQ(gutEYWKqMMS?R=}#$3vna4}=>B(143Aj?CMAA^fQ z5MFJR2gx2Q?s5B2fV;h61?po;rnfXoz)rW)&e2}Ctx8LYVO-RCP4J?5BM(Uyu7Cx{ znaQXd3*Rre|6nPGa;PnBYJylWX9#0Y$tm*>--NO^g+p zS|-DH=D7uhlHzjSllZZ%n>jVhtdybht~UQTA`XPM1R}4%okoI!Pqxmzt;oq!YNK@d zIO1)9mGsF0)+@(@6kj$Q+wQ@Xc*{w7B>Y&RE@e#!}YVt|J|s z683sVd4+q7$mV2|;h*84nyN>sVR$k;z~HZ$Imu+;o|1Q9Nc$NyDiWTgSP!9$42b|r ziTPG|P8y?#gX}>sAVRrTCb>Uym~5$!943yTK5f4sN$$9cM3~SvYi8`+ z4A@Y2$&w}3N|2cOjy#X}?K+F{nj0fNMWiR1dfL8FCt^!R8Mr6BOEQrQs1(webQaEe0k>Hl;n&ZZc8q#F(NDZRDv4ei@5>V_@F<%hl%=3`HRvPPf2JRWS6S#5I zM{11~=_4mx<7e1lV_qen6Us6;D>VfJHABueoh2<-92ZfW%5mW=YUn;hC=WW%*vpAJ zQDdGGe-ze){;yxZZtq_jA^E1S)KWo5QOp{f0t&G(S%PrdiNnNv-T=#?LIfqkhsnt7 zSw8oS;y)e`Dmm@yK83^?mVtm!FI389%JrV><$dBZAY_zmQufKx5qD;f?4Uyehsiin zMy2xT`9x60pm_iABciz##LXOcqHtulToHpLah@NMPdJoRBotU6iWZ`sM5*8t ze@9S0NUEGH@mjkF)!?hi-i{;=6Iby&;!g1PsqrSr2VSUxP5cQaufET`Wiqm-h2$pS z4zODeGni@+UFACgYTT@!K6z@_sZ-TT1;IEIK91omFdj+EUC*mjD~Q09?gB*MNOST< zdk_YVrGRx<4ug&^7`t9psA<812cBHHa^>>n%g2r#gWQb)YC~-V)z$>s0{qQVr01q(wzjWymYN*){TCFAEM+_?QCz&f8m~iOOq2K)GH{eNx1(lVF zJ7Q!0;D-Q*`}+EjZ`tVtaX!qOH*e?8om{`g2d1RDKG&ylYr!&fqO>5 zh)O!`0le_AVV>bhlcEN&g~@mF#EC-(4;?sg;LMpbciwsDs#U9C8$5IR^xyvecU*#` zut<70JUk4@BY5F*fTP^xQ_c!$yFln8$BRMX-f-s-%yAYN$4#+87#B`qm_%okQ8{bY ztY88)pgEsOoC2VupY!L>V*x-7H~^JB@Phk(0O*PA;O&VMC(sh;Po4x5(ZuV&W(4M9jD%qA!K7hwZrJ^3! zj*gB(;*;tIs~XziEBIY_GTiEf=mKd-m@&Et3Zo3#c!c0_G*2(x3kHr+@zQ zpJ(_qd-iPfBV}U8i6g}=vkU_M3YA2*YhavsbgE*AP$BQqix)2vNvBVrj^%{zq{^{u z?WCF#_4M@6v_K9_0>x~v{D@%A2*l*#$~PhY7HLii%u=codH>N69Gw{=dZf|*NO(-} z1Yv&4x|`8d!97EEJW&+SIk7bDLKZ?aro0J48PI@AI*Nd(!zuVg#WXs>Qh{;`Gc|b6 zwi1SV6Ll%Fl+38Hj)!1^VK<|*og=h;v+H=7l;5gwMQqXLdRv`k z;V|+)^uTY|!$1iZ(PY#MrDZQ&)T4pUCZySUa*gobYRf< zjEgbJ`;hIBAPnwgSNhk1Wql5NvZQ^9*Pv#LC8fg8+o5(VA!)Xj=Z8>ksuI2BlfsbW z=Xq2IQU(*`IJ(B&{@80{fUS8_m3UPM8OXwsN?j9V*a(CxbkO2M` zs=-nfFVw@G6gOMuWa>*RjPva%NbG_P$;<5QeL2y?&osahk)h`&h4@tfh(%ejc?BpU z17zkf(d=OCLz)%0VmHV$PHdku^LKBa`=xg=Nl1;{LLC7dV!~ zFc`;|&M?9u63zXOG4pttnGUf(=`UrOyS$ZDxryW0Uu>s(uXX+1#50^fn+;VgdZ*&6 zOXb6Q+{NqigHv5YlKu95>((tLQ!u-HvskOHA;+P}t;3@W_?09hE%^wwClR`owb59` zm1#jRHObV2z^4Pg+FtM6iZV7R;4?U>O;3jcnJ-?vs8Pk3k0D@e|9?Jv_Ds>i_mkrX z2d2Q}g#goEg*ck1`1a0j{qp5Y<$uBTW@8VZp!G7O%mpicrJdoiQNHudn>X*>yT>cu zL_j04@53IQ@FZmQvuH5L;$}q`G5RR?r%A?h~l-v)mh|lDd}~!T5UEP9>d+2%O(23g9jWMk1p*J z)?%?hXuo>(s$dYtLo0F9GA5MZx%M!9q_9KS7! z@+32vnWPa895F1m4L8MnK36Unup|HzAcUt3^QF{~!70f?05T+)%cPP^;OnB#w8<_} zJ!IlcTlzDEhRwx5ic#KKuSV9f3u1j^i^*;342j34SS3+Hm_{s5^FKf97@{}BJt(sQB@Z@EbAgJyLNf+X`dusG@~r#23{*?Gl5?#N6Y<6)PXFuzKK3 zn$ThvQy>gi_>cz^j^?sTAa#dQ#SEfICIOE!=o&=`TH-K}glS*eG!fmJPX2{}OOMJi z1VKslv--v!RbBSU2q7mK8KT$2NHSn$9TNx~ws$KB0nzLIbr_OBf97m$Z9$_@cZL9d zV^2;_;4I*!a;bsX?)5ZQ3tkbcXv1l1q92j$SVUnD7n#oLpPrstL{^MmNl>EUDh};5 zWRWh+Mp-HRE-fGE5FDlte>+?%Wr2< zeRM@%5pt7!=aMJsiW#RAv%9;C!KK*aa~cbBc@4jqvd?GP|s87C1DEy{(MHsFcymYQ2I`WNOD;Ni}%~h8YDt zu}Z^o-0|@-X~NGrh!AY7ZhHtwj%MH9-ZmpN*h>z>O$sjja6?mxs&EKHboam0etd`I z#!|I!j9B#j{e4QZq6}zWI)DN*2AAkIw%&b(7_8a`I2aS0?Gx5cas(imEvrn&d2n(P zsS{go*d87p0-;*aR;SF~FBl|bwVi(Qyim1g8uspwrG#@^m+5S}{lEwiG|j8Q+u2y0 zhQkUbY~c(Q?SKFx#K4F-Hz35=ZiX=HWqZ(J<5UpCz$-xNz!@gMX(K_{KhXC3?yfKp z{!jnKDl*$J|JH+b4_~o&hN%w1KoGwF-Fl3k2r4ZQvyCKfJ9T6HXH6-KMaiN3B=;-^ z7{E-oxx+OB6c}e9*ZRBEv&$1Vb4gLRXB-At4B@sB9>^<+0#$w#)DtLMvD8GrZ27KR zs=k{Ewl3!sa_|~M*2FT`frl)1jkmh{Gn)2}u>NfXy+UTpOo?z)Thmm_U0D8ulJcRB{a{c^vfRG7=d9o&C>&3)ab0tM~&o;)-o@9C%ns~WzZ2aO}VKxu4X)6&Z6 zJe0rIV$1J9xrH-7z;X@``+oP+=Y(~H(|EYILf*msLx1(39V7c&LJc`1PlvdjW?wK_ zB!?-3hFL`l^Qd;kV5Y*Yna+bUdNqMAfCrwikyE7kBx@YLZ=Vk#WL4|D|IgkTa4-x5 zQTXSVqG&-|ZM7|6s6s;mL5TdSefAj4fHjN`bGwnbcW>9`^3r76>LL{^In_<#JH^5W z1E=Cu;P`VEcYVxrc~jn@JyA>QE~;ZQm(od!+ToEEhr77n_5G8t5D{G(E$oyMltmar z14N=UNxb!}ooM1CpgxRYl(U z*AzwZWbY0%6o{fQ0KZJAlv1Ipga83mLN5^zKzfPZAw(z&Bt&nuABO|NM96{CCdh^ABeyG55sW9sC~AVA=6_1VhpLENX=&D91hkJt#Lo1MlPUi03=6 z*Xu%|P_NfLWZ4)y%}%G&*ijvKi@Qla1?FO9n)$XNuh(oDnIFI3?{%}W`gA(Q2Jz4; zDxBp=C{0vBgQ5R?K5w;J)oNAeoc=;*Z@1g4W$SP_=w{=zU~n1!VBhnX+%24A-nZMW z9zG^}lC}0e*SH~C?8nJcjFr0tPpwwd{plcQkCF&|sYF;VmyJflyo-G8i6R8b>tc-N z$PhM*lf`1;et_Em-}XbI?Mb1URnWwa04{5#M?=l%e86%C0#i9cr zL0cT_|Hb1*qfvA^cRHOAH)8S6=M%JjN|G~BSwh$`Qza?{ivHymcPv8)2EuqII=*|o z9zOtmz2THEGF)K*{YF{<8KXd|69DmYx%l#r20I{LDwWu4TB9i*Aqc4_ywldrc79+l zIO8|fE|-jo;ltt36pI91=Q0J6M~TdMh?Zr9)Ci%egHR`>zyH}dENw0ZohOq??EONz zLR2C%oqCCtLVO6MyaW0-n+?>qBnRc*aUG*lsmOE7cFG-Jh|!}qG92NR0Pna-5U<(# zf$g)|44Nxc3=a zJwnCIcDr3T9$Qd=a#Cc`Bm~9^-rO3R zE1y#cXGn;2lfhf5=bDewMWQ(epwM5jy*p*hZ;`9&wV~l5lQxF_Fog1)u6eWgxj_OW zplbsb^PEH;f2)aUOF3>TU&2nNmu2L|_g^uv5`_)MxGW=Qd)0Vg0xnBUwR4$d{Hq7{ zx7qWEWf=$|EXV^S^s>x4V2e+;Kp^n58c?6j4(I4DQAb5&o>7MfIypA(wvNlnjdL9y z5LO;K$Hu@03_7mPOTo{Lun3MJW}8ATvP6!8lVM^V(3$b-%5^Xd1P>T&RO10vj&ctk z6k#TZjV9mL;X&S~g9kps3?zU$Bp|H38N)*_%d7wdWTd9~_^S=B9pB*C0jQC-h6v z%QCA$8)&6W-;fk}^F|`ON!55@8*Su4CjV@#)iD7C2#d(Ep(;QN8Qk0m#ok<5deN6F1a{gS35GiH9jCWbuvEJu5 zZ{NLq^@{uFzkd4;59Hg&LlP(IV=Lw>X(&o?M43m8JYd&P9M`gpTQwnmTsDypZaRrMz`GBVH>CABKN#o@BAmU#IK_wvN}$iQjQ zad~2F*S0PDcfGW4=Z^EdcD;0IlP#5Qi=^8UfW=}lEk9t(X_v-FM+Q%e$k3@1lfhx< zrH_Lxs_gbQi$j$eEli9TMu*3T&xpv;gZuaF*tYMyIPBfIe!hR~b9+yH z;n477WBAB0KRP0hR9}zQy}mgjqY3+pJpWQ9uSzcekS&Q2LLt^)Iy~~l{;@CYIq{X_ z#VQW&kiRd#2hriT6`o+B`zA+d-Itq{4`Osi8 zd}CO)jtc^~ukzh^X%Z2!BLGFXYpD2{L!)0fc;@qaPgN0sMw8*O5&7D%94fL$=s5%~ zrVBj}$(L4_+)1v6oUJH(C zw%NPX385;;=lHZFpc?}Wc=O6>cal&tW;B#AZ#FAoST z0g7crt`F3W0d4SU1;Gtf9IhY%WAbcPRdH}=tOVYmV3UF*iJ2KL4?+Y45%4UZQFjDt zsYe?Lu2Hg%WDN)y(<{6It8)POT4nL!r9QR+$8jtomsvN0tU?Ism4UJ%+dk|@5<3|d z3WG88ge?f`N!FoUq2vnS9-kDOI7t95D;%1_{SqgEMBspt8NRx|J=BUfytXqJBiIMGli}`;>~G9zf1oqh?x{tgwJj22= zZ3KIhnr4}FGI|7{`P$Ch2iMQbJ$vxlnQbSF@!bo$zjbW*mcI5Sr^g>y)brT!(Ip+( zuO1uuTq$wZ7!d&xK)i?@LjM0Buml%MdBp9pe*L_zD`&R->WfG2ozpQE>FfI1zj9>w zp1GZmoEUw}@>&16_w;SE+qdsH$pQd)S)S$qVXNkUTRpoR>reC#t?SBLSvE5tyf`>< zXJ7l_@yac8IzM~(%%&MF|FHSE7s6#phyWrX;m=;V@Y+LzL)rvH8+%%Y%JH(qTxYl= z@LGIzaH5hW{FhyWDoAZKmqV`}xD2RimPxIsB5-iD^qPe|fg%?10V=WCH(I)7c1Kb3 z%Iu|88t-m<8tVweCz zgd>H@a5=ekcE@m(+&sHuw30j<=@vqO%Symw%86|9sDGm3DY|n`=R|CLgb-l!a4A%@ zsykoQ<_0U}$I2jph?k`m0;@R8@@U^kaamV>MMus)wU6Klyf9Q)(3b7U`ktp&cIJ1C z6hR?~G_5gB;XW;wHA{EsZ67L3M9KAi9TgTt^Z{NNDXr~o+dMEnw>6uvJX=my5V|&a z$BrF;@x>Qy*Y<67wDtc;TefU*V=YrpoBx+mKE1T$ZYGXnXEVJ(>BiC-`c_q+nG4o- zwIm_{C`OJIqxHRQUq3dowzsvv5P?X#1OzSKWuLPeiCeCCSYw!Wevb&F%6CiBKUtIaaaLLs;xKKesLWFT*A9 zh@nZB9(f{id7EWioW$<2azOamVqA>%jyBsUvl?$YMr-YPo{d|->86|h z@DKkm48sd;f-D)2ww;;SQ;0^(@$$CJ^CP9DxnNCO__;HM?tQ1fai%zL->K(^i=Ia; z0+%fz32Yr0|LSmQ_RizunoEZ7=xe{KCH&mc;WcBWuMZYFyi^pI-aw&aosyF|D*J)+?(}ZNJL7hzP`TB&dwxBF6`_n00$UmEBd8V6YYd!#RLY6 z;L+c1J_d?rdi1HigYyIR*1czD1gcNbI2&=lcX^R>43-gp^4RDSUw!Y9(dsn8Up+An zz5+|b)3<5IlmR5}2W`(EHcIxQj1> zGv!U8H^|7%Ael?>NjNlp$N=_oZHTcL&qo1CSYHe1 z5ynYkg}YR>X4juANs_efdZV$C@}6Q{*ZBW@{!*81K}1?>mw}Qb$pyzID#RN+tT3++ zDPk58jBvSRY zKq4lvIIzh8w-OT}Ty~UGw1i|8$;wa_jb5I?L_{f20ae)e)#bodGz{xiKpC7ie#oYL zZ$`@?f(R&5-@ml|O+&-^d_GQM+aOmd1p)%jTZopy+7U79dzG?>Ag--;Z*T7p{J;<7 zayh5JH?n)UciaailPfV9)47NQLGa|0PyYCi|M*o`T_qwHhJ$A5%=&+{vdxy6=;&x4 z91@r@-ad{%(A>Q`;is-O1aYB-hSfbiAp6RBB)7gb8|q% z;Q*c@Kg=M~Wn*(kfP~?;*)1OrW6Ni5eR>DI3pUp5+$l7@#2Ts>zV$B9dS)`} zxuaU^{I^HZ5Oj}_g795Q2p~06;=2cm`l*O1=L|649SD3knq``lx;hZp;0z5ZivoIVhx#}LP*5lD^J4rZ@l!*2bAg9SD=(-4XF3gV1>XT>L#u z9FqnfUC3l`{I>^(X0%L`8Y>qf;(1!O2 z0g;fZgjBsEN}Z6k!TYs|xb-=@#+a1nDiP5%pB_Ynh$#*Z0wlB?ASfbgfP;HR$Dj44 zrCQ$o?zB}`-Tk|$Dggl&0!(KE5CVcy$^n&vFnJu@coA_Bk)~Ousk}ElIWn`ZlGCyq zOLibY0Acq%A`C(RjD#YS7w)x$Rhq(uEh0ALpNNXZVkL?|1OX7qsq9!4Zs|%+nN$}` zSF-ylIGC&NI6M(ClgVVWS$kQjR1k66?)t5*t;QH@pi7d(X{dxKH8?0zc68JT2M3Ym z+=Ovc%LU+C96Zm9qR1uCT{PRs#UrQa*!f^@(#{8C47%XaDh`AQ>8_v7hZ+#1O0_to z>%pb$x$n1=frxC-YE3Ni1yj@J-lWEL0vdRz>MSq>8KFdst~Mt#ajYot6(zb%fbJvi z^Oun7;TEAW_Gw~IsrI%uQVMIHf{5zVanF;)3oNe2y8ER2aw{op!%xdtsWFYiYsrFO zj0wZg=Eo6Hy+hvd4Ub>-IEb(kB69M*R4Tdr1}o*KtwjP6?H9|Qq3>7onwrsW;#sZl^A00C$t197n<%u=CT8XU?ko;O%1 zpBf!rIlGToyL8a{|8e>sClS%EG%I&}-?u82k0=06E~g7S@yWhC#+T5YhiBCS#^P_Jct3)5!yXBW=%py;; z00K_FP{H)Exg(;glDjKoOuYg9JZ3Jg3U;x?;$$1ULAZ9cBckv7wOfT{QadbGY3i#o zd7ksAJDbv3eg!xexkqzPE>&U{C*p<0j)pn)tGl3Eivs}EShZ za<(ZkY~20(`PwJ-sw5({wjHk0c_u^C=1$P0#`3hGnY&h!2}o6BrSm4%dPX+? z`bAeNZK4G|Gr#}!1xyxpcKyuF_mdbhNP@M}aPrXzj-NuUtsan6HFKx(dK)X$5IN^7 zk|j4P`%>wzU~2ra7H!MhkfiP!vTCfe_)mu=dKL&N4vx-=gEK}0i1WH4Ai3Wn_j%{;7Lh58a~F}9!J%e8xW9O<`vC>q8*Wx8R76w@9aPB~ z=qwbT=h+F+T|;ecZNBd}2BB$lZ_)*|OK0ag6On3p0~ZUZqu7qhQ{rJ5X<$sU850Ud zF+q|eK_3%?o}iE<%swd*F=7y~{=i#r9lFFk6OL-VXJ?t+-Am5lrsFDE#w~A4PEWML zPAQeT*QO^FwK&+(J!P5{YV7D->#3CnghA32;*{*;y9ZZF)gEi?`_|C!aF{}kwITkg z=3X7$+;)$b-iFJQrmBS3z*2oRiVby#q}0@7dG~%$Ee>IgHc=Ec<$F_ezc|Ut0^6v3c~dXO$K*F#46JWXm2>7?h2i7^blTdI~_qB+;Sco#6=C+zrL+#n&M!2`@X7@ zh(ME?!u^7+5GkR6$G`}J04#c7to-38GugbSh)d;MU+?(WwSRuFu)^KW2g|rmGV_J+NloG2G{`s-gjj(m;3cd( za^cm>f}2)mu2_`>H1W)Ke_n6)<~5~V2iXUIL3htR*H#|eVOX2d@o?`@TqKMvvkOsoxr=-SjU59nAytuBuQKx?aMEmrdg&*FOwH1 zpj`T?h)RqxT71vMjO7Rp9`(ozGC4U@2!wQ!(84~G@ylZqJUBssx)O2VXKq{<{oRxK zrE{au69Iub+j;}T7P|Hv}*`%?aOK8jODFpv*sGt+t%$IFvXObm8*1C z(?o>o78O^bNSt-T>E?Pb#0wTqpDkp&AqmU-U#I=8Yz_b0p z%+KHiT_J5bOq@`V$;;E}5D;1Wop#ABUcB(lZ+Y0+ zSb`vU@WBV?&6|f+vNGtNyYIG277~KU;>C;axZ@7b_muMNDt-9jhi!XUr+GmQr3p=E zg@xERec!ht-pcpsv!2Dd5Ln#A@Rdi1EUXk&CW;^Z=tsWw&2R19y{A|#WwSX%Ab~_D zeXU)8cjv=f_w6=;M=sP4fX?N9&|23cOigVf1_m*9@QA`741FZ3 zcwjFV=DTj1ztSWLt(@C=)B2=bS-)`Jwe$N#N5)eD`bsk@Qc5uhxa{s4a*k8W_`ZJ@ z4sP#vCp_nKh9yA(AdUi1LCbhL`}=-BAk_?Xquts2$SGXnrd zM@9?d6IKSTUcE{{3dQ2Y__&Q`v#W8$(&&h_rEAT`aDB3p3-Pv;1~}J7i(8@Qq@MkN zi=CL7N{5aBoLg843kndOoR}yZ?GtOjmbUgyS6wl8?(DXf)@?g??%KUOP7)umFLxJ4;w&Rh}hoMT%gR90Kln&x$^B^4(>A+0QuTeF|{^aI;uER4_E2>^WH4 zwo@ibK2o&zAdeORNEsmptxyP!Hae~-op7Yf#|DCs^qHaL)SwC!10q+ys|E+9l*Qq! z$V>MDR|4Uz&Aute2%6M*;x^WIs_&;F8NsXQSQ$nkg-Rh8qp-V86M9IMt$WqtzKTLJ z(y?i|j>>{8ECG4wsp^+VBZJH|_5#(~lxb{iV(ZqIo_lWdbI)(yyk*TWIk*k7#@G|)X^C;`@&p)aD40|pZMh0 zzV%2PYXs$k0u&vUlBl3{#h?KI#fXfxPwI-;ICZri2WRPW5hG6APi;MS1aJ-mGF<%X zmho+ejqiC0$ESx!zVNtLuJBl~@QKGtPwh}FUf@>_9v^vfYtHw_zxBL7T8g(F_Debt zg}_X5){|Ns>{yRO8a*s5}w0kiB64i25vNn$knY9uNZM#fsh+^p`-6)Tqh)ryZcl#w zqM0{b+0x!t+O|KxW^rbIPrSEZiGZQu`>K{eQl$%82u@xs0MZ6irumm3D^Qch;nYNXSkA3u;*w;x*XNQ6? zw>A6V4RLEgb9!LiViWk1$w;vRp`YEfT09S3tw@o{B!*1>w!ee38AUjs3m43r-P)1^ z;iyzD7mK2kzTRFDwnmB9y!utWGrE^9Su{2}9LE)t#N|?rR`S;)>8BB!WO1v43>r^*6kdwYFBMC--ihJ!7V7$znDf)zO0G%i8Dm6{4tE zEJF~M84isO?>>DpR>7_#{bgZ9C3O};$DF4wW17~>%u^OuR=qGNhQK$VjWPM4ETVNh zzW*?4%Jg=P7bgIr*crB7yBd$4QKQAmXn}yF6y??|9XokC(~`k#fCdDiHVCIScDB(y zxWi2vuho?7lgdzSnywmjo)jmR!5C=Ig|E6^D+MvDRSRa!p9MMJ0Ag#l`zIb^w=6xe4uSlXVKJm@B-G1+i_8!Gx06-@Dha)1VvpaM1)Rtig4OBcpgp6gzN`6Z_ z=tLBFxx4_xKs&!48O8BZpn(V_inYSZcp=}>8CS}sC=N4W>$)Y_*`f>t2I5K2-rDAu zmQPP|&Q;SaKhUJfIxuUystN$6U4=bQwfm?UL=q8d&5ALkIc6<{83CP`1O*i_0=8sb zVU1Xfv+B4GKIiGGIz4;TIYTpu_#SOOa{SY~U%GncoL8(^i5aoMea8zWk2DxrJ8yPh zN7w0z!nT8ZMFkt@&fy^Z#*SUe&{&d;L}PDQyS^>(k}9I^F( ze&N9GH(hyk8wOw4xn+!`yQSmlgS!Wk!u*!5l?xZ|JaYICw>|wsS6n-xqtbZE5BxdZ zU0tnhpW6KF{5f+K5+E?JGt||V)tn3tZf1VxZSGQ~>SRDeoYhn&w0tr=PIG1iOhL9) zJZ3TMDJ#jtm@C7hDif$EDr`TbTYaAsf{+uF1SANI?)fKq=kzU<{RJo*0B@EgCHP85>!Z*d>~7coNLpnRF+#s z0)j#U3KR{EkFK8CH(n}#ea|69ZC^XE_mM*fip6OEnbERNOu`>}@~NF?Dw~fSd$Iq3 z7fB^fzIyV=sWU?xXU$U{F^KC_S6>yqo~AnLzh0V%0A$fS+<$oa+y!grEbN=r+t<}O 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 literal 0 HcmV?d00001 diff --git a/templates/_partials/breadcrumb.tpl b/templates/_partials/breadcrumb.tpl new file mode 100644 index 0000000..d66e36b --- /dev/null +++ b/templates/_partials/breadcrumb.tpl @@ -0,0 +1,40 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/templates/_partials/footer.tpl b/templates/_partials/footer.tpl new file mode 100644 index 0000000..e8f1b01 --- /dev/null +++ b/templates/_partials/footer.tpl @@ -0,0 +1,54 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {block name='hook_footer_before'} + {hook h='displayFooterBefore'} + {/block} +
    +
    +
    +
    + + + +
    +
    +
    +
    +
    + {block name='hook_footer_after'} + {hook h='displayFooterAfter'} + {/block} +
    + +
    diff --git a/templates/_partials/form-errors.tpl b/templates/_partials/form-errors.tpl new file mode 100644 index 0000000..73e3948 --- /dev/null +++ b/templates/_partials/form-errors.tpl @@ -0,0 +1,35 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if $errors|count} +
    + {block name='form_errors'} +
      + {foreach $errors as $error} +
    • {$error|nl2br nofilter}
    • + {/foreach} +
    + {/block} +
    +{/if} diff --git a/templates/_partials/form-fields.tpl b/templates/_partials/form-fields.tpl new file mode 100644 index 0000000..32ffe5a --- /dev/null +++ b/templates/_partials/form-fields.tpl @@ -0,0 +1,195 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if $field.type == 'hidden'} + + {block name='form_field_item_hidden'} + + {/block} + +{else} + +
    + +
    + + {if $field.type === 'select'} + + {block name='form_field_item_select'} + + {/block} + + {elseif $field.type === 'countrySelect'} + + {block name='form_field_item_country'} + + {/block} + + {elseif $field.type === 'radio-buttons'} + + {block name='form_field_item_radio'} + {foreach from=$field.availableValues item="label" key="value"} + + {/foreach} + {/block} + + {elseif $field.type === 'checkbox'} + + {block name='form_field_item_checkbox'} + + + + {/block} + + {elseif $field.type === 'date'} + + {block name='form_field_item_date'} + + {if isset($field.availableValues.comment)} + + {$field.availableValues.comment} + + {/if} + {/block} + + {elseif $field.type === 'birthday'} + + {block name='form_field_item_birthday'} +
    + {html_select_date + field_order=DMY + time={$field.value} + field_array={$field.name} + prefix=false + reverse_years=true + field_separator='
    ' + day_extra='class="form-control form-control-select"' + month_extra='class="form-control form-control-select"' + year_extra='class="form-control form-control-select"' + day_empty={l s='-- day --' d='Shop.Forms.Labels'} + month_empty={l s='-- month --' d='Shop.Forms.Labels'} + year_empty={l s='-- year --' d='Shop.Forms.Labels'} + start_year={'Y'|date}-100 end_year={'Y'|date} + } +
    + {/block} + + {elseif $field.type === 'password'} + + {block name='form_field_item_password'} +
    + + + + +
    + {/block} + + {else} + + {block name='form_field_item_other'} + + {if isset($field.availableValues.comment)} + + {$field.availableValues.comment} + + {/if} + {/block} + + {/if} + + {block name='form_field_errors'} + {include file='_partials/form-errors.tpl' errors=$field.errors} + {/block} + +
    + +
    + {block name='form_field_comment'} + {if (!$field.required && !in_array($field.type, ['radio-buttons', 'checkbox']))} + {l s='Optional' d='Shop.Forms.Labels'} + {/if} + {/block} +
    +
    + +{/if} diff --git a/templates/_partials/head.tpl b/templates/_partials/head.tpl new file mode 100644 index 0000000..ceb262a --- /dev/null +++ b/templates/_partials/head.tpl @@ -0,0 +1,70 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='head_charset'} + +{/block} +{block name='head_ie_compatibility'} + +{/block} + +{block name='head_seo'} + {block name='head_seo_title'}{$page.meta.title}{/block} + + + {if $page.meta.robots !== 'index'} + + {/if} + {if $page.canonical} + + {/if} + {block name='head_hreflang'} + {foreach from=$urls.alternative_langs item=pageUrl key=code} + + {/foreach} + {/block} +{/block} + +{block name='head_viewport'} + +{/block} + +{block name='head_icons'} + + +{/block} + +{block name='stylesheets'} + {include file="_partials/stylesheets.tpl" stylesheets=$stylesheets} +{/block} + +{block name='javascript_head'} + {include file="_partials/javascript.tpl" javascript=$javascript.head vars=$js_custom_vars} +{/block} + +{block name='hook_header'} + {$HOOK_HEADER nofilter} +{/block} + +{block name='hook_extra'}{/block} diff --git a/templates/_partials/header.tpl b/templates/_partials/header.tpl new file mode 100644 index 0000000..0b78a79 --- /dev/null +++ b/templates/_partials/header.tpl @@ -0,0 +1,41 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +{block name='header_top'} +
    +
    + + + +
    + {hook h='displayMainMenu'} +
    +
    + {hook h='displayTop'} +
    +
    +
    + {hook h='displayNavFullWidth'} +{/block} diff --git a/templates/_partials/javascript.tpl b/templates/_partials/javascript.tpl new file mode 100644 index 0000000..ce08144 --- /dev/null +++ b/templates/_partials/javascript.tpl @@ -0,0 +1,52 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + +{foreach $javascript.external as $js} + +{/foreach} + +{foreach $javascript.inline as $js} + +{/foreach} + +{if isset($vars) && $vars|@count} + +{/if} diff --git a/templates/_partials/notifications.tpl b/templates/_partials/notifications.tpl new file mode 100644 index 0000000..10392bf --- /dev/null +++ b/templates/_partials/notifications.tpl @@ -0,0 +1,78 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +{if isset($notifications)} + +{/if} diff --git a/templates/_partials/pagination.tpl b/templates/_partials/pagination.tpl new file mode 100644 index 0000000..717115e --- /dev/null +++ b/templates/_partials/pagination.tpl @@ -0,0 +1,64 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/templates/_partials/stylesheets.tpl b/templates/_partials/stylesheets.tpl new file mode 100644 index 0000000..d8b838f --- /dev/null +++ b/templates/_partials/stylesheets.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + + + +{foreach $stylesheets.external as $stylesheet} + +{/foreach} + +{foreach $stylesheets.inline as $stylesheet} + +{/foreach} diff --git a/templates/catalog/_partials/active_filters.tpl b/templates/catalog/_partials/active_filters.tpl new file mode 100644 index 0000000..40dd553 --- /dev/null +++ b/templates/catalog/_partials/active_filters.tpl @@ -0,0 +1,43 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {block name='active_filters_title'} +

    {l s='Active filters' d='Shop.Theme.Global'}

    + {/block} + + {if $activeFilters|count} +
      + {foreach from=$activeFilters item="filter"} + {block name='active_filters_item'} +
    • + {l s='%1$s: ' d='Shop.Theme.Catalog' sprintf=[$filter.facetLabel]} + {$filter.label} + +
    • + {/block} + {/foreach} +
    + {/if} +
    diff --git a/templates/catalog/_partials/category-header.tpl b/templates/catalog/_partials/category-header.tpl new file mode 100644 index 0000000..554b82c --- /dev/null +++ b/templates/catalog/_partials/category-header.tpl @@ -0,0 +1,41 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {if $listing.pagination.items_shown_from == 1} +
    +

    {$category.name}

    +
    + {if $category.description} +
    {$category.description nofilter}
    + {/if} + {if $category.image.large.url} +
    + {if !empty($category.image.legend)}{$category.image.legend}{else}{$category.name}{/if} +
    + {/if} +
    +
    + {/if} +
    diff --git a/templates/catalog/_partials/facets.tpl b/templates/catalog/_partials/facets.tpl new file mode 100644 index 0000000..eec820b --- /dev/null +++ b/templates/catalog/_partials/facets.tpl @@ -0,0 +1,168 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if $facets|count} +
    + {block name='facets_title'} +

    {l s='Filter By' d='Shop.Theme.Actions'}

    + {/block} + + {block name='facets_clearall_button'} + {if $activeFilters|count} +
    + +
    + {/if} + {/block} + + {foreach from=$facets item="facet"} + {if !$facet.displayed} + {continue} + {/if} + +
    +

    {$facet.label}

    + {assign var=_expand_id value=10|mt_rand:100000} + {assign var=_collapse value=true} + {foreach from=$facet.filters item="filter"} + {if $filter.active}{assign var=_collapse value=false}{/if} + {/foreach} + +
    +

    {$facet.label}

    + + + + + + +
    + + {if $facet.widgetType !== 'dropdown'} + {block name='facet_item_other'} +
      + {foreach from=$facet.filters key=filter_key item="filter"} + {if !$filter.displayed} + {continue} + {/if} + +
    • + +
    • + {/foreach} +
    + {/block} + + {else} + + {block name='facet_item_dropdown'} + + {/block} + {/if} +
    + {/foreach} +
    +{/if} diff --git a/templates/catalog/_partials/miniatures/brand.tpl b/templates/catalog/_partials/miniatures/brand.tpl new file mode 100644 index 0000000..ff272fd --- /dev/null +++ b/templates/catalog/_partials/miniatures/brand.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='brand_miniature_item'} +
  • +
    {$brand.name}
    +
    +

    {$brand.name}

    + {$brand.text nofilter} +
    + +
  • +{/block} diff --git a/templates/catalog/_partials/miniatures/category.tpl b/templates/catalog/_partials/miniatures/category.tpl new file mode 100644 index 0000000..e925ad0 --- /dev/null +++ b/templates/catalog/_partials/miniatures/category.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='category_miniature_item'} +
    + + {$category.image.legend} + + +

    + {$category.name} +

    + +
    {$category.description nofilter}
    +
    +{/block} diff --git a/templates/catalog/_partials/miniatures/pack-product.tpl b/templates/catalog/_partials/miniatures/pack-product.tpl new file mode 100644 index 0000000..854c47e --- /dev/null +++ b/templates/catalog/_partials/miniatures/pack-product.tpl @@ -0,0 +1,54 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='pack_miniature_item'} + +{/block} diff --git a/templates/catalog/_partials/miniatures/product.tpl b/templates/catalog/_partials/miniatures/product.tpl new file mode 100644 index 0000000..99b82ad --- /dev/null +++ b/templates/catalog/_partials/miniatures/product.tpl @@ -0,0 +1,92 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='product_miniature_item'} +
    +
    + {block name='product_thumbnail'} + {if $product.cover} + + {if !empty($product.cover.legend)}{$product.cover.legend}{else}{$product.name|truncate:30:'...'}{/if} + + {else} + + + + {/if} + {/block} + +
    + {block name='product_name'} +

    {$product.name|truncate:30:'...'}

    + {/block} + + {block name='product_price_and_shipping'} + {if $product.show_price} +
    + {if $product.has_discount} + {hook h='displayProductPriceBlock' product=$product type="old_price"} + + {$product.regular_price} + {if $product.discount_type === 'percentage'} + {$product.discount_percentage} + {elseif $product.discount_type === 'amount'} + {$product.discount_amount_to_display} + {/if} + {/if} + + {hook h='displayProductPriceBlock' product=$product type="before_price"} + + {$product.price} + + {hook h='displayProductPriceBlock' product=$product type='unit_price'} + + {hook h='displayProductPriceBlock' product=$product type='weight'} +
    + {/if} + {/block} + + {block name='product_reviews'} + {hook h='displayProductListReviews' product=$product} + {/block} +
    + + + +
    + + {block name='product_variants'} + {if $product.main_variants} + {include file='catalog/_partials/variant-links.tpl' variants=$product.main_variants} + {/if} + {/block} +
    +
    +
    +{/block} diff --git a/templates/catalog/_partials/product-activation.tpl b/templates/catalog/_partials/product-activation.tpl new file mode 100644 index 0000000..0732958 --- /dev/null +++ b/templates/catalog/_partials/product-activation.tpl @@ -0,0 +1,38 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if $page.admin_notifications} + +{/if} diff --git a/templates/catalog/_partials/product-add-to-cart.tpl b/templates/catalog/_partials/product-add-to-cart.tpl new file mode 100644 index 0000000..279e700 --- /dev/null +++ b/templates/catalog/_partials/product-add-to-cart.tpl @@ -0,0 +1,88 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {if !$configuration.is_catalog} + {l s='Quantity' d='Shop.Theme.Catalog'} + + {block name='product_quantity'} +
    +
    + +
    + +
    + +
    + + {hook h='displayProductActions' product=$product} +
    + {/block} + + {block name='product_availability'} + + {if $product.show_availability && $product.availability_message} + {if $product.availability == 'available'} + + {elseif $product.availability == 'last_remaining_items'} + + {else} + + {/if} + {$product.availability_message} + {/if} + + {/block} + + {block name='product_minimal_quantity'} +

    + {if $product.minimal_quantity > 1} + {l + s='The minimum purchase order quantity for the product is %quantity%.' + d='Shop.Theme.Checkout' + sprintf=['%quantity%' => $product.minimal_quantity] + } + {/if} +

    + {/block} + {/if} +
    diff --git a/templates/catalog/_partials/product-additional-info.tpl b/templates/catalog/_partials/product-additional-info.tpl new file mode 100644 index 0000000..f4fd6b5 --- /dev/null +++ b/templates/catalog/_partials/product-additional-info.tpl @@ -0,0 +1,27 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {hook h='displayProductAdditionalInfo' product=$product} +
    diff --git a/templates/catalog/_partials/product-cover-thumbnails.tpl b/templates/catalog/_partials/product-cover-thumbnails.tpl new file mode 100644 index 0000000..b6553cd --- /dev/null +++ b/templates/catalog/_partials/product-cover-thumbnails.tpl @@ -0,0 +1,60 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {block name='product_cover'} +
    + {if $product.cover} + {$product.cover.legend} +
    + +
    + {else} + + {/if} +
    + {/block} + + {block name='product_images'} +
    +
      + {foreach from=$product.images item=image} +
    • + {$image.legend} +
    • + {/foreach} +
    +
    + {/block} +
    +{hook h='displayAfterProductThumbs'} diff --git a/templates/catalog/_partials/product-customization.tpl b/templates/catalog/_partials/product-customization.tpl new file mode 100644 index 0000000..efda2b5 --- /dev/null +++ b/templates/catalog/_partials/product-customization.tpl @@ -0,0 +1,69 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {if !$configuration.is_catalog} +
    +

    {l s='Product customization' d='Shop.Theme.Catalog'}

    + {l s='Don\'t forget to save your customization to be able to add to cart' d='Shop.Forms.Help'} + + {block name='product_customization_form'} +
    +
      + {foreach from=$customizations.fields item="field"} +
    • + + {if $field.type == 'text'} + + {l s='250 char. max' d='Shop.Forms.Help'} + {if $field.text !== ''} +
      {l s='Your customization:' d='Shop.Theme.Catalog'} + +
      + {/if} + {elseif $field.type == 'image'} + {if $field.is_customized} +
      + + {l s='Remove Image' d='Shop.Theme.Actions'} + {/if} + + {l s='No selected file' d='Shop.Forms.Help'} + + + + {l s='.png .jpg .gif' d='Shop.Forms.Help'} + {/if} +
    • + {/foreach} +
    +
    + +
    +
    + {/block} + +
    + {/if} +
    diff --git a/templates/catalog/_partials/product-details.tpl b/templates/catalog/_partials/product-details.tpl new file mode 100644 index 0000000..0e5b62d --- /dev/null +++ b/templates/catalog/_partials/product-details.tpl @@ -0,0 +1,91 @@ +
    + {block name='product_reference'} + {if isset($product_manufacturer->id)} +
    + {if isset($manufacturer_image_url)} + + + + {else} + + + {$product_manufacturer->name} + + {/if} +
    + {/if} + {if isset($product.reference_to_display) && $product.reference_to_display neq ''} +
    + + {$product.reference_to_display} +
    + {/if} + {/block} + + {block name='product_quantities'} + {if $product.show_quantities} +
    + + {$product.quantity} {$product.quantity_label} +
    + {/if} + {/block} + + {block name='product_availability_date'} + {if $product.availability_date} +
    + + {$product.availability_date} +
    + {/if} + {/block} + + {block name='product_out_of_stock'} +
    + {hook h='actionProductOutOfStock' product=$product} +
    + {/block} + + {block name='product_features'} + {if $product.grouped_features} +
    +

    {l s='Data sheet' d='Shop.Theme.Catalog'}

    +
    + {foreach from=$product.grouped_features item=feature} +
    {$feature.name}
    +
    {$feature.value|escape:'htmlall'|nl2br nofilter}
    + {/foreach} +
    +
    + {/if} + {/block} + + {* if product have specific references, a table will be added to product details section *} + {block name='product_specific_references'} + {if !empty($product.specific_references)} +
    +

    {l s='Specific References' d='Shop.Theme.Catalog'}

    +
    + {foreach from=$product.specific_references item=reference key=key} +
    {$key}
    +
    {$reference}
    + {/foreach} +
    +
    + {/if} + {/block} + + {block name='product_condition'} + {if $product.condition} +
    + + + {$product.condition.label} +
    + {/if} + {/block} +
    diff --git a/templates/catalog/_partials/product-discounts.tpl b/templates/catalog/_partials/product-discounts.tpl new file mode 100644 index 0000000..4e5153e --- /dev/null +++ b/templates/catalog/_partials/product-discounts.tpl @@ -0,0 +1,49 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {if $product.quantity_discounts} +

    {l s='Volume discounts' d='Shop.Theme.Catalog'}

    + {block name='product_discount_table'} + + + + + + + + + + {foreach from=$product.quantity_discounts item='quantity_discount' name='quantity_discounts'} + + + + + + {/foreach} + +
    {l s='Quantity' d='Shop.Theme.Catalog'}{$configuration.quantity_discount.label}{l s='You Save' d='Shop.Theme.Catalog'}
    {$quantity_discount.quantity}{$quantity_discount.discount}{l s='Up to %discount%' d='Shop.Theme.Catalog' sprintf=['%discount%' => $quantity_discount.save]}
    + {/block} + {/if} +
    diff --git a/templates/catalog/_partials/product-flags.tpl b/templates/catalog/_partials/product-flags.tpl new file mode 100644 index 0000000..2f5b14c --- /dev/null +++ b/templates/catalog/_partials/product-flags.tpl @@ -0,0 +1,31 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='product_flags'} +
      + {foreach from=$product.flags item=flag} +
    • {$flag.label}
    • + {/foreach} +
    +{/block} diff --git a/templates/catalog/_partials/product-images-modal.tpl b/templates/catalog/_partials/product-images-modal.tpl new file mode 100644 index 0000000..2500cc7 --- /dev/null +++ b/templates/catalog/_partials/product-images-modal.tpl @@ -0,0 +1,60 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/templates/catalog/_partials/product-prices.tpl b/templates/catalog/_partials/product-prices.tpl new file mode 100644 index 0000000..7b6c0b5 --- /dev/null +++ b/templates/catalog/_partials/product-prices.tpl @@ -0,0 +1,114 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if $product.show_price} +
    + {block name='product_discount'} + {if $product.has_discount} +
    + {hook h='displayProductPriceBlock' product=$product type="old_price"} + {$product.regular_price} +
    + {/if} + {/block} + + {block name='product_price'} +
    + + + +
    + {$product.price} + + {if $product.has_discount} + {if $product.discount_type === 'percentage'} + {l s='Save %percentage%' d='Shop.Theme.Catalog' sprintf=['%percentage%' => $product.discount_percentage_absolute]} + {else} + + {l s='Save %amount%' d='Shop.Theme.Catalog' sprintf=['%amount%' => $product.discount_to_display]} + + {/if} + {/if} +
    + + {block name='product_unit_price'} + {if $displayUnitPrice} +

    {l s='(%unit_price%)' d='Shop.Theme.Catalog' sprintf=['%unit_price%' => $product.unit_price_full]}

    + {/if} + {/block} +
    + {/block} + + {block name='product_without_taxes'} + {if $priceDisplay == 2} +

    {l s='%price% tax excl.' d='Shop.Theme.Catalog' sprintf=['%price%' => $product.price_tax_exc]}

    + {/if} + {/block} + + {block name='product_pack_price'} + {if $displayPackPrice} +

    {l s='Instead of %price%' d='Shop.Theme.Catalog' sprintf=['%price%' => $noPackPrice]}

    + {/if} + {/block} + + {block name='product_ecotax'} + {if $product.ecotax.amount > 0} +

    {l s='Including %amount% for ecotax' d='Shop.Theme.Catalog' sprintf=['%amount%' => $product.ecotax.value]} + {if $product.has_discount} + {l s='(not impacted by the discount)' d='Shop.Theme.Catalog'} + {/if} +

    + {/if} + {/block} + + {hook h='displayProductPriceBlock' product=$product type="weight" hook_origin='product_sheet'} + +
    + {if !$configuration.taxes_enabled} + {l s='No tax' d='Shop.Theme.Catalog'} + {elseif $configuration.display_taxes_label} + {$product.labels.tax_long} + {/if} + {hook h='displayProductPriceBlock' product=$product type="price"} + {hook h='displayProductPriceBlock' product=$product type="after_price"} + {if $product.additional_delivery_times == 1} + {if $product.delivery_information} + {$product.delivery_information} + {/if} + {elseif $product.additional_delivery_times == 2} + {if $product.quantity > 0} + {$product.delivery_in_stock} + {* Out of stock message should not be displayed if customer can't order the product. *} + {elseif $product.quantity <= 0 && $product.add_to_cart_url} + {$product.delivery_out_stock} + {/if} + {/if} +
    +
    +{/if} diff --git a/templates/catalog/_partials/product-variants.tpl b/templates/catalog/_partials/product-variants.tpl new file mode 100644 index 0000000..fd0bdad --- /dev/null +++ b/templates/catalog/_partials/product-variants.tpl @@ -0,0 +1,69 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {foreach from=$groups key=id_attribute_group item=group} + {if !empty($group.attributes)} +
    + {$group.name} + {if $group.group_type == 'select'} + + {elseif $group.group_type == 'color'} +
      + {foreach from=$group.attributes key=id_attribute item=group_attribute} +
    • + +
    • + {/foreach} +
    + {elseif $group.group_type == 'radio'} +
      + {foreach from=$group.attributes key=id_attribute item=group_attribute} +
    • + +
    • + {/foreach} +
    + {/if} +
    + {/if} + {/foreach} +
    diff --git a/templates/catalog/_partials/products-bottom.tpl b/templates/catalog/_partials/products-bottom.tpl new file mode 100644 index 0000000..9188f7f --- /dev/null +++ b/templates/catalog/_partials/products-bottom.tpl @@ -0,0 +1,6 @@ +{* + * Classic theme doesn't use this subtemplate, feel free to do whatever you need here. + * This template is generated at each ajax calls. + * See ProductListingFrontController::getAjaxProductSearchVariables() + *} +
    diff --git a/templates/catalog/_partials/products-top.tpl b/templates/catalog/_partials/products-top.tpl new file mode 100644 index 0000000..6ef7067 --- /dev/null +++ b/templates/catalog/_partials/products-top.tpl @@ -0,0 +1,56 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    +
    + {if $listing.pagination.total_items > 1} +

    {l s='There are %product_count% products.' d='Shop.Theme.Catalog' sprintf=['%product_count%' => $listing.pagination.total_items]}

    + {elseif $listing.pagination.total_items > 0} +

    {l s='There is 1 product.' d='Shop.Theme.Catalog'}

    + {/if} +
    +
    +
    + + {block name='sort_by'} + {include file='catalog/_partials/sort-orders.tpl' sort_orders=$listing.sort_orders} + {/block} + + {if !empty($listing.rendered_facets)} +
    + +
    + {/if} +
    +
    +
    + {l s='Showing %from%-%to% of %total% item(s)' d='Shop.Theme.Catalog' sprintf=[ + '%from%' => $listing.pagination.items_shown_from , + '%to%' => $listing.pagination.items_shown_to, + '%total%' => $listing.pagination.total_items + ]} +
    +
    diff --git a/templates/catalog/_partials/products.tpl b/templates/catalog/_partials/products.tpl new file mode 100644 index 0000000..6089cf7 --- /dev/null +++ b/templates/catalog/_partials/products.tpl @@ -0,0 +1,44 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    +
    + {foreach from=$listing.products item="product"} + {block name='product_miniature'} + {include file='catalog/_partials/miniatures/product.tpl' product=$product} + {/block} + {/foreach} +
    + + {block name='pagination'} + {include file='_partials/pagination.tpl' pagination=$listing.pagination} + {/block} + + +
    diff --git a/templates/catalog/_partials/quickview.tpl b/templates/catalog/_partials/quickview.tpl new file mode 100644 index 0000000..43fbb8e --- /dev/null +++ b/templates/catalog/_partials/quickview.tpl @@ -0,0 +1,79 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + diff --git a/templates/catalog/_partials/sort-orders.tpl b/templates/catalog/_partials/sort-orders.tpl new file mode 100644 index 0000000..b9c40e8 --- /dev/null +++ b/templates/catalog/_partials/sort-orders.tpl @@ -0,0 +1,47 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{l s='Sort by:' d='Shop.Theme.Global'} + diff --git a/templates/catalog/_partials/variant-links.tpl b/templates/catalog/_partials/variant-links.tpl new file mode 100644 index 0000000..54f5263 --- /dev/null +++ b/templates/catalog/_partials/variant-links.tpl @@ -0,0 +1,16 @@ + diff --git a/templates/catalog/brands.tpl b/templates/catalog/brands.tpl new file mode 100644 index 0000000..6278334 --- /dev/null +++ b/templates/catalog/brands.tpl @@ -0,0 +1,44 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file=$layout} + +{block name='content'} +
    + + {block name='brand_header'} +

    {l s='Brands' d='Shop.Theme.Catalog'}

    + {/block} + + {block name='brand_miniature'} +
      + {foreach from=$brands item=brand} + {include file='catalog/_partials/miniatures/brand.tpl' brand=$brand} + {/foreach} +
    + {/block} + +
    + +{/block} diff --git a/templates/catalog/listing/best-sales.tpl b/templates/catalog/listing/best-sales.tpl new file mode 100644 index 0000000..3b34af8 --- /dev/null +++ b/templates/catalog/listing/best-sales.tpl @@ -0,0 +1,5 @@ +{* + * This file allows you to customize your best-sales page. + * You can safely remove it if you want it to appear exactly like all other product listing pages + *} +{extends file='catalog/listing/product-list.tpl'} diff --git a/templates/catalog/listing/category.tpl b/templates/catalog/listing/category.tpl new file mode 100644 index 0000000..37eb25b --- /dev/null +++ b/templates/catalog/listing/category.tpl @@ -0,0 +1,29 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='catalog/listing/product-list.tpl'} + +{block name='product_list_header'} + {include file='catalog/_partials/category-header.tpl' listing=$listing category=$category} +{/block} diff --git a/templates/catalog/listing/manufacturer.tpl b/templates/catalog/listing/manufacturer.tpl new file mode 100644 index 0000000..acfa00c --- /dev/null +++ b/templates/catalog/listing/manufacturer.tpl @@ -0,0 +1,31 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='catalog/listing/product-list.tpl'} + +{block name='product_list_header'} +

    {l s='List of products by brand %brand_name%' sprintf=['%brand_name%' => $manufacturer.name] d='Shop.Theme.Catalog'}

    +
    {$manufacturer.short_description nofilter}
    +
    {$manufacturer.description nofilter}
    +{/block} diff --git a/templates/catalog/listing/new-products.tpl b/templates/catalog/listing/new-products.tpl new file mode 100644 index 0000000..b42d05c --- /dev/null +++ b/templates/catalog/listing/new-products.tpl @@ -0,0 +1,5 @@ +{* + * This file allows you to customize your new-product page. + * You can safely remove it if you want it to appear exactly like all other product listing pages + *} +{extends file='catalog/listing/product-list.tpl'} diff --git a/templates/catalog/listing/prices-drop.tpl b/templates/catalog/listing/prices-drop.tpl new file mode 100644 index 0000000..2163940 --- /dev/null +++ b/templates/catalog/listing/prices-drop.tpl @@ -0,0 +1,5 @@ +{* + * This file allows you to customize your price-drop page. + * You can safely remove it if you want it to appear exactly like all other product listing pages + *} +{extends file='catalog/listing/product-list.tpl'} diff --git a/templates/catalog/listing/product-list.tpl b/templates/catalog/listing/product-list.tpl new file mode 100644 index 0000000..4ebfbf6 --- /dev/null +++ b/templates/catalog/listing/product-list.tpl @@ -0,0 +1,73 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file=$layout} + +{block name='content'} +
    + + {block name='product_list_header'} +

    {$listing.label}

    + {/block} + +
    + {if $listing.products|count} + +
    + {block name='product_list_top'} + {include file='catalog/_partials/products-top.tpl' listing=$listing} + {/block} +
    + + {block name='product_list_active_filters'} +
    + {$listing.rendered_active_filters nofilter} +
    + {/block} + +
    + {block name='product_list'} + {include file='catalog/_partials/products.tpl' listing=$listing} + {/block} +
    + +
    + {block name='product_list_bottom'} + {include file='catalog/_partials/products-bottom.tpl' listing=$listing} + {/block} +
    + + {else} +
    + +
    + {include file='errors/not-found.tpl'} +
    + +
    + {/if} +
    + +
    +{/block} diff --git a/templates/catalog/listing/search.tpl b/templates/catalog/listing/search.tpl new file mode 100644 index 0000000..d745e42 --- /dev/null +++ b/templates/catalog/listing/search.tpl @@ -0,0 +1,5 @@ +{* + * This file allows you to customize your search page. + * You can safely remove it if you want it to appear exactly like all other product listing pages + *} +{extends file='catalog/listing/product-list.tpl'} diff --git a/templates/catalog/listing/supplier.tpl b/templates/catalog/listing/supplier.tpl new file mode 100644 index 0000000..ec63ada --- /dev/null +++ b/templates/catalog/listing/supplier.tpl @@ -0,0 +1,30 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='catalog/listing/product-list.tpl'} + +{block name='product_list_header'} +

    {l s='List of products by supplier %s' sprintf=[$supplier.name] d='Shop.Theme.Catalog'}

    +
    {$supplier.description nofilter}
    +{/block} diff --git a/templates/catalog/manufacturers.tpl b/templates/catalog/manufacturers.tpl new file mode 100644 index 0000000..c85bab0 --- /dev/null +++ b/templates/catalog/manufacturers.tpl @@ -0,0 +1,25 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='catalog/brands.tpl'} diff --git a/templates/catalog/product.tpl b/templates/catalog/product.tpl new file mode 100644 index 0000000..7d374a4 --- /dev/null +++ b/templates/catalog/product.tpl @@ -0,0 +1,268 @@ +{** + * 2007-2020 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2020 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file=$layout} + +{block name='head_seo' prepend} + +{/block} + +{block name='head' append} + + + + + + + {if $product.show_price} + + + + + {/if} + {if isset($product.weight) && ($product.weight != 0)} + + + {/if} +{/block} + +{block name='content'} + +
    + + +
    +
    + {block name='page_content_container'} +
    + {block name='page_content'} + + {block name='product_flags'} +
      + {foreach from=$product.flags item=flag} +
    • {$flag.label}
    • + {/foreach} +
    + {/block} + + {block name='product_cover_thumbnails'} + {include file='catalog/_partials/product-cover-thumbnails.tpl'} + {/block} +
    + + +
    + + {/block} +
    + {/block} +
    +
    + {block name='page_header_container'} + {block name='page_header'} +

    {block name='page_title'}{$product.name}{/block}

    + {/block} + {/block} + {block name='product_prices'} + {include file='catalog/_partials/product-prices.tpl'} + {/block} + +
    + {block name='product_description_short'} +
    {$product.description_short nofilter}
    + {/block} + + {if $product.is_customizable && count($product.customizations.fields)} + {block name='product_customization'} + {include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations} + {/block} + {/if} + +
    + {block name='product_buy'} +
    + + + + + {block name='product_variants'} + {include file='catalog/_partials/product-variants.tpl'} + {/block} + + {block name='product_pack'} + {if $packItems} +
    +

    {l s='This pack contains' d='Shop.Theme.Catalog'}

    + {foreach from=$packItems item="product_pack"} + {block name='product_miniature'} + {include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack} + {/block} + {/foreach} +
    + {/if} + {/block} + + {block name='product_discounts'} + {include file='catalog/_partials/product-discounts.tpl'} + {/block} + + {block name='product_add_to_cart'} + {include file='catalog/_partials/product-add-to-cart.tpl'} + {/block} + + {block name='product_additional_info'} + {include file='catalog/_partials/product-additional-info.tpl'} + {/block} + + {* Input to refresh product HTML removed, block kept for compatibility with themes *} + {block name='product_refresh'}{/block} +
    + {/block} + +
    + + {block name='hook_display_reassurance'} + {hook h='displayReassurance'} + {/block} + + {block name='product_tabs'} +
    + + +
    +
    + {block name='product_description'} +
    {$product.description nofilter}
    + {/block} +
    + + {block name='product_details'} + {include file='catalog/_partials/product-details.tpl'} + {/block} + + {block name='product_attachments'} + {if $product.attachments} +
    +
    +

    {l s='Download' d='Shop.Theme.Actions'}

    + {foreach from=$product.attachments item=attachment} +
    +

    {$attachment.name}

    +

    {$attachment.description}

    + {l s='Download' d='Shop.Theme.Actions'} ({$attachment.file_size_formatted}) + +
    + {/foreach} +
    +
    + {/if} + {/block} + + {foreach from=$product.extraContent item=extra key=extraKey} +
    $val} {$key}="{$val}"{/foreach}> + {$extra.content nofilter} +
    + {/foreach} +
    +
    + {/block} +
    +
    +
    + + {block name='product_accessories'} + {if $accessories} +
    +

    {l s='You might also like' d='Shop.Theme.Catalog'}

    +
    + {foreach from=$accessories item="product_accessory"} + {block name='product_miniature'} + {include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory} + {/block} + {/foreach} +
    +
    + {/if} + {/block} + + {block name='product_footer'} + {hook h='displayFooterProduct' product=$product category=$category} + {/block} + + {block name='product_images_modal'} + {include file='catalog/_partials/product-images-modal.tpl'} + {/block} + + {block name='page_footer_container'} +
    + {block name='page_footer'} + + {/block} +
    + {/block} +
    + +{/block} diff --git a/templates/catalog/suppliers.tpl b/templates/catalog/suppliers.tpl new file mode 100644 index 0000000..84992fc --- /dev/null +++ b/templates/catalog/suppliers.tpl @@ -0,0 +1,29 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='catalog/brands.tpl'} + +{block name='brand_header'} +

    {l s='Suppliers' d='Shop.Theme.Catalog'}

    +{/block} diff --git a/templates/checkout/_partials/address-form.tpl b/templates/checkout/_partials/address-form.tpl new file mode 100644 index 0000000..435d5f4 --- /dev/null +++ b/templates/checkout/_partials/address-form.tpl @@ -0,0 +1,46 @@ +{extends file='customer/_partials/address-form.tpl'} + +{block name='form_field'} + {if $field.name eq "alias"} + {* we don't ask for alias here *} + {else} + {$smarty.block.parent} + {/if} +{/block} + +{block name="address_form_url"} +
    +{/block} + +{block name='form_fields' append} + + {if $type === "delivery"} +
    +
    + + +
    +
    + {/if} +{/block} + +{block name='form_buttons'} + {if !$form_has_continue_button} + + {l s='Cancel' d='Shop.Theme.Actions'} + {else} + + + {if $customer.addresses|count > 0} + {l s='Cancel' d='Shop.Theme.Actions'} + {/if} +
    + {/if} +{/block} diff --git a/templates/checkout/_partials/address-selector-block.tpl b/templates/checkout/_partials/address-selector-block.tpl new file mode 100644 index 0000000..d46347e --- /dev/null +++ b/templates/checkout/_partials/address-selector-block.tpl @@ -0,0 +1,72 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='address_selector_blocks'} + {foreach $addresses as $address} + + {/foreach} + {if $interactive} +

    + +

    + {/if} +{/block} diff --git a/templates/checkout/_partials/cart-detailed-actions.tpl b/templates/checkout/_partials/cart-detailed-actions.tpl new file mode 100644 index 0000000..130410c --- /dev/null +++ b/templates/checkout/_partials/cart-detailed-actions.tpl @@ -0,0 +1,45 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='cart_detailed_actions'} +
    + {if $cart.minimalPurchaseRequired} + +
    + +
    + {elseif empty($cart.products) } +
    + +
    + {else} +
    + {l s='Proceed to checkout' d='Shop.Theme.Actions'} + {hook h='displayExpressCheckout'} +
    + {/if} +
    +{/block} diff --git a/templates/checkout/_partials/cart-detailed-product-line.tpl b/templates/checkout/_partials/cart-detailed-product-line.tpl new file mode 100644 index 0000000..2761364 --- /dev/null +++ b/templates/checkout/_partials/cart-detailed-product-line.tpl @@ -0,0 +1,175 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + +
    + + {$product.name|escape:'quotes'} + +
    + + +
    + + +
    + {if $product.has_discount} +
    + {$product.regular_price} + {if $product.discount_type === 'percentage'} + + -{$product.discount_percentage_absolute} + + {else} + + -{$product.discount_to_display} + + {/if} +
    + {/if} +
    + {$product.price} + {if $product.unit_price_full} +
    {$product.unit_price_full}
    + {/if} +
    +
    + +
    + + {foreach from=$product.attributes key="attribute" item="value"} +
    + {$attribute}: + {$value} +
    + {/foreach} + + {if is_array($product.customizations) && $product.customizations|count} +
    + {block name='cart_detailed_product_line_customization'} + {foreach from=$product.customizations item="customization"} + {l s='Product customization' d='Shop.Theme.Catalog'} + + {/foreach} + {/block} + {/if} +
    + + +
    +
    +
    +
    +
    +
    + {if isset($product.is_gift) && $product.is_gift} + {$product.quantity} + {else} + + {/if} +
    +
    + + + {if isset($product.is_gift) && $product.is_gift} + {l s='Gift' d='Shop.Theme.Checkout'} + {else} + {$product.total} + {/if} + + +
    +
    +
    +
    +
    + + {if !isset($product.is_gift) || !$product.is_gift} + delete + {/if} + + + {block name='hook_cart_extra_product_actions'} + {hook h='displayCartExtraProductActions' product=$product} + {/block} + +
    +
    +
    +
    + +
    +
    diff --git a/templates/checkout/_partials/cart-detailed-totals.tpl b/templates/checkout/_partials/cart-detailed-totals.tpl new file mode 100644 index 0000000..b15aaae --- /dev/null +++ b/templates/checkout/_partials/cart-detailed-totals.tpl @@ -0,0 +1,58 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='cart_detailed_totals'} +
    + +
    + {foreach from=$cart.subtotals item="subtotal"} + {if $subtotal.value && $subtotal.type !== 'tax'} +
    + + {if 'products' == $subtotal.type} + {$cart.summary_string} + {else} + {$subtotal.label} + {/if} + + + {if 'discount' == $subtotal.type}- {/if}{$subtotal.value} + + {if $subtotal.type === 'shipping'} +
    {hook h='displayCheckoutSubtotalDetails' subtotal=$subtotal}
    + {/if} +
    + {/if} + {/foreach} +
    + + {block name='cart_summary_totals'} + {include file='checkout/_partials/cart-summary-totals.tpl' cart=$cart} + {/block} + + {block name='cart_voucher'} + {include file='checkout/_partials/cart-voucher.tpl'} + {/block} +
    +{/block} diff --git a/templates/checkout/_partials/cart-detailed.tpl b/templates/checkout/_partials/cart-detailed.tpl new file mode 100644 index 0000000..f04ca4b --- /dev/null +++ b/templates/checkout/_partials/cart-detailed.tpl @@ -0,0 +1,42 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='cart_detailed_product'} +
    + {if $cart.products} +
      + {foreach from=$cart.products item=product} +
    • + {block name='cart_detailed_product_line'} + {include file='checkout/_partials/cart-detailed-product-line.tpl' product=$product} + {/block} +
    • + {if is_array($product.customizations) && $product.customizations|count >1}
      {/if} + {/foreach} +
    + {else} + {l s='There are no more items in your cart' d='Shop.Theme.Checkout'} + {/if} +
    +{/block} diff --git a/templates/checkout/_partials/cart-summary-items-subtotal.tpl b/templates/checkout/_partials/cart-summary-items-subtotal.tpl new file mode 100644 index 0000000..4f3d99d --- /dev/null +++ b/templates/checkout/_partials/cart-summary-items-subtotal.tpl @@ -0,0 +1,30 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='cart_summary_items_subtotal'} +
    + {$cart.summary_string} + {$cart.subtotals.products.amount} +
    +{/block} diff --git a/templates/checkout/_partials/cart-summary-product-line.tpl b/templates/checkout/_partials/cart-summary-product-line.tpl new file mode 100644 index 0000000..bea5fa0 --- /dev/null +++ b/templates/checkout/_partials/cart-summary-product-line.tpl @@ -0,0 +1,44 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='cart_summary_product_line'} +
    + + {$product.name} + +
    +
    + {$product.name} + x{$product.quantity} + {$product.price} + {hook h='displayProductPriceBlock' product=$product type="unit_price"} + {foreach from=$product.attributes key="attribute" item="value"} +
    + {$attribute}: + {$value} +
    + {/foreach} +
    +
    +{/block} diff --git a/templates/checkout/_partials/cart-summary-subtotals.tpl b/templates/checkout/_partials/cart-summary-subtotals.tpl new file mode 100644 index 0000000..f1fab19 --- /dev/null +++ b/templates/checkout/_partials/cart-summary-subtotals.tpl @@ -0,0 +1,44 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + +
    + + {foreach from=$cart.subtotals item="subtotal"} + {if $subtotal.value && $subtotal.type !== 'tax'} +
    + + + {$subtotal.label} + + + + {$subtotal.value} + +
    + {/if} + {/foreach} + +
    + diff --git a/templates/checkout/_partials/cart-summary-totals.tpl b/templates/checkout/_partials/cart-summary-totals.tpl new file mode 100644 index 0000000..903817c --- /dev/null +++ b/templates/checkout/_partials/cart-summary-totals.tpl @@ -0,0 +1,54 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + + {block name='cart_summary_total'} + {if !$configuration.display_prices_tax_incl && $configuration.taxes_enabled} +
    + {$cart.totals.total.label} {$cart.labels.tax_short} + {$cart.totals.total.value} +
    +
    + {$cart.totals.total_including_tax.label} + {$cart.totals.total_including_tax.value} +
    + {else} +
    + {$cart.totals.total.label} {if $configuration.taxes_enabled}{$cart.labels.tax_short}{/if} + {$cart.totals.total.value} +
    + {/if} + {/block} + + {block name='cart_summary_tax'} + {if $cart.subtotals.tax} +
    + {l s='%label%:' sprintf=['%label%' => $cart.subtotals.tax.label] d='Shop.Theme.Global'} + {$cart.subtotals.tax.value} +
    + {/if} + {/block} + +
    diff --git a/templates/checkout/_partials/cart-summary.tpl b/templates/checkout/_partials/cart-summary.tpl new file mode 100644 index 0000000..6c07ff6 --- /dev/null +++ b/templates/checkout/_partials/cart-summary.tpl @@ -0,0 +1,69 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    +
    + {block name='hook_checkout_summary_top'} + {hook h='displayCheckoutSummaryTop'} + {/block} + + {block name='cart_summary_products'} +
    + +

    {$cart.summary_string}

    + +

    + + {l s='show details' d='Shop.Theme.Actions'} + expand_more + +

    + + {block name='cart_summary_product_list'} +
    +
      + {foreach from=$cart.products item=product} +
    • {include file='checkout/_partials/cart-summary-product-line.tpl' product=$product}
    • + {/foreach} +
    +
    + {/block} +
    + {/block} + + {block name='cart_summary_subtotals'} + {include file='checkout/_partials/cart-summary-subtotals.tpl' cart=$cart} + {/block} + +
    + + {block name='cart_summary_totals'} + {include file='checkout/_partials/cart-summary-totals.tpl' cart=$cart} + {/block} + + {block name='cart_summary_voucher'} + {include file='checkout/_partials/cart-voucher.tpl'} + {/block} + +
    diff --git a/templates/checkout/_partials/cart-voucher.tpl b/templates/checkout/_partials/cart-voucher.tpl new file mode 100644 index 0000000..f1f95ad --- /dev/null +++ b/templates/checkout/_partials/cart-voucher.tpl @@ -0,0 +1,91 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{if $cart.vouchers.allowed} + {block name='cart_voucher'} +
    +
    + {if $cart.vouchers.added} + {block name='cart_voucher_list'} +
      + {foreach from=$cart.vouchers.added item=voucher} +
    • + {$voucher.name} +
      + {$voucher.reduction_formatted} + +
      +
    • + {/foreach} +
    + {/block} + {/if} + +

    + + {l s='Have a promo code?' d='Shop.Theme.Checkout'} + +

    + +
    +
    + {block name='cart_voucher_form'} +
    + + + + +
    + {/block} + + {block name='cart_voucher_notifications'} + + {/block} + + + {l s='Close' d='Shop.Theme.Checkout'} + +
    +
    + + {if $cart.discounts|count > 0} +

    + {l s='Take advantage of our exclusive offers:' d='Shop.Theme.Actions'} +

    +
      + {foreach from=$cart.discounts item=discount} +
    • + + {$discount.code} - {$discount.name} + +
    • + {/foreach} +
    + {/if} +
    +
    + {/block} +{/if} diff --git a/templates/checkout/_partials/customer-form.tpl b/templates/checkout/_partials/customer-form.tpl new file mode 100644 index 0000000..cbd7b4f --- /dev/null +++ b/templates/checkout/_partials/customer-form.tpl @@ -0,0 +1,50 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends "customer/_partials/customer-form.tpl"} + +{block "form_field"} + {if $field.name === 'password' and $guest_allowed} +

    + {l s='Create an account' d='Shop.Theme.Checkout'} {l s='(optional)' d='Shop.Theme.Checkout'} +
    + {l s='And save time on your next order!' d='Shop.Theme.Checkout'} +

    + {$smarty.block.parent} + {else} + {$smarty.block.parent} + {/if} +{/block} + +{block "form_buttons"} + +{/block} diff --git a/templates/checkout/_partials/footer.tpl b/templates/checkout/_partials/footer.tpl new file mode 100644 index 0000000..853c4d1 --- /dev/null +++ b/templates/checkout/_partials/footer.tpl @@ -0,0 +1,29 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='footer'} +
    + {l s='%copyright% %year% - Ecommerce software by %prestashop%' sprintf=['%prestashop%' => 'PrestaShop™', '%year%' => 'Y'|date, '%copyright%' => '©'] d='Shop.Theme.Global'} +
    +{/block} diff --git a/templates/checkout/_partials/header.tpl b/templates/checkout/_partials/header.tpl new file mode 100644 index 0000000..54df9a1 --- /dev/null +++ b/templates/checkout/_partials/header.tpl @@ -0,0 +1,76 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='header'} + {block name='header_nav'} + + {/block} + + {block name='header_top'} +
    +
    +
    +
    +
    + {hook h='displayTop'} +
    +
    +
    +
    + +
    +
    + {hook h='displayNavFullWidth'} + {/block} +{/block} diff --git a/templates/checkout/_partials/login-form.tpl b/templates/checkout/_partials/login-form.tpl new file mode 100644 index 0000000..45b49d6 --- /dev/null +++ b/templates/checkout/_partials/login-form.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/_partials/login-form.tpl'} + +{block name='form_buttons'} + +{/block} diff --git a/templates/checkout/_partials/order-confirmation-table.tpl b/templates/checkout/_partials/order-confirmation-table.tpl new file mode 100644 index 0000000..8708cea --- /dev/null +++ b/templates/checkout/_partials/order-confirmation-table.tpl @@ -0,0 +1,136 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    +
    + {block name='order_items_table_head'} +

    {l s='Order items' d='Shop.Theme.Checkout'}

    +

    {l s='Unit price' d='Shop.Theme.Checkout'}

    +

    {l s='Quantity' d='Shop.Theme.Checkout'}

    +

    {l s='Total products' d='Shop.Theme.Checkout'}

    + {/block} +
    + +
    + + {block name='order_confirmation_table'} + {foreach from=$products item=product} +
    +
    + + + +
    +
    + {if $add_product_link}{/if} + {$product.name} + {if $add_product_link}{/if} + {if is_array($product.customizations) && $product.customizations|count} + {foreach from=$product.customizations item="customization"} + + + {/foreach} + {/if} + {hook h='displayProductPriceBlock' product=$product type="unit_price"} +
    +
    +
    +
    {$product.price}
    +
    {$product.quantity}
    +
    {$product.total}
    +
    +
    +
    + {/foreach} + +
    + + + {foreach $subtotals as $subtotal} + {if $subtotal.type !== 'tax' && $subtotal.label !== null} + + + + + {/if} + {/foreach} + + {if !$configuration.display_prices_tax_incl && $configuration.taxes_enabled} + + + + + + + + + {else} + + + + + {/if} + {if $subtotals.tax.label !== null} + + + + {/if} +
    {$subtotal.label}{if 'discount' == $subtotal.type}- {/if}{$subtotal.value}
    {$totals.total.label} {$labels.tax_short}{$totals.total.value}
    {$totals.total_including_tax.label}{$totals.total_including_tax.value}
    {$totals.total.label} {if $configuration.taxes_enabled}{$labels.tax_short}{/if}{$totals.total.value}
    {l s='%label%:' sprintf=['%label%' => $subtotals.tax.label] d='Shop.Theme.Global'} {$subtotals.tax.value}
    + {/block} + +
    +
    diff --git a/templates/checkout/_partials/order-final-summary-table.tpl b/templates/checkout/_partials/order-final-summary-table.tpl new file mode 100755 index 0000000..a1cf318 --- /dev/null +++ b/templates/checkout/_partials/order-final-summary-table.tpl @@ -0,0 +1,38 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='checkout/_partials/order-confirmation-table.tpl'} + +{block name='order-items-table-head'} +
    +

    + {if $products_count == 1} + {l s='%product_count% item in your cart' sprintf=['%product_count%' => $products_count] d='Shop.Theme.Checkout'} + {else} + {l s='%products_count% items in your cart' sprintf=['%products_count%' => $products_count] d='Shop.Theme.Checkout'} + {/if} + mode_edit {l s='edit' d='Shop.Theme.Actions'} +

    +
    +{/block} diff --git a/templates/checkout/_partials/order-final-summary.tpl b/templates/checkout/_partials/order-final-summary.tpl new file mode 100755 index 0000000..e67a4a5 --- /dev/null +++ b/templates/checkout/_partials/order-final-summary.tpl @@ -0,0 +1,103 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    +
    +
    +

    {l s='Please check your order before payment' d='Shop.Theme.Checkout'}

    +
    +
    + +
    +
    +

    + {l s='Addresses' d='Shop.Theme.Checkout'} + mode_edit {l s='edit' d='Shop.Theme.Actions'} +

    +
    +
    +
    +
    +
    +
    +

    {l s='Your Delivery Address' d='Shop.Theme.Checkout'}

    + {$customer.addresses[$cart.id_address_delivery]['formatted'] nofilter} +
    +
    +
    +
    +
    +
    +

    {l s='Your Invoice Address' d='Shop.Theme.Checkout'}

    + {$customer.addresses[$cart.id_address_invoice]['formatted'] nofilter} +
    +
    +
    +
    + +
    +
    +

    + {l s='Shipping Method' d='Shop.Theme.Checkout'} + mode_edit {l s='edit' d='Shop.Theme.Actions'} +

    + +
    +
    +
    +
    + {if $selected_delivery_option.logo} + {$selected_delivery_option.name} + {else} +   + {/if} +
    +
    +
    + {$selected_delivery_option.name} +
    +
    + {$selected_delivery_option.delay} +
    +
    + {$selected_delivery_option.price} +
    +
    +
    +
    +
    + +
    + {block name='order_confirmation_table'} + {include file='checkout/_partials/order-final-summary-table.tpl' + products=$cart.products + products_count=$cart.products_count + subtotals=$cart.subtotals + totals=$cart.totals + labels=$cart.labels + add_product_link=true + } + {/block} +
    +
    diff --git a/templates/checkout/_partials/steps/addresses.tpl b/templates/checkout/_partials/steps/addresses.tpl new file mode 100644 index 0000000..2dc14b6 --- /dev/null +++ b/templates/checkout/_partials/steps/addresses.tpl @@ -0,0 +1,137 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='checkout/_partials/steps/checkout-step.tpl'} + +{block name='step_content'} +
    +
    + + {if !$use_same_address} +

    {l s='Shipping Address' d='Shop.Theme.Checkout'}

    + {/if} + + {if $use_same_address && !$cart.is_virtual} +

    + {l s='The selected address will be used both as your personal address (for invoice) and as your delivery address.' d='Shop.Theme.Checkout'} +

    + {elseif $use_same_address && $cart.is_virtual} +

    + {l s='The selected address will be used as your personal address (for invoice).' d='Shop.Theme.Checkout'} +

    + {/if} + + {if $show_delivery_address_form} +
    + {render file = 'checkout/_partials/address-form.tpl' + ui = $address_form + use_same_address = $use_same_address + type = "delivery" + form_has_continue_button = $form_has_continue_button + } +
    + {elseif $customer.addresses|count > 0} +
    + {include file = 'checkout/_partials/address-selector-block.tpl' + addresses = $customer.addresses + name = "id_address_delivery" + selected = $id_address_delivery + type = "delivery" + interactive = !$show_delivery_address_form and !$show_invoice_address_form + } +
    + + {if isset($delivery_address_error)} +

    {$delivery_address_error.exception}

    + {else} + + {/if} + +

    + {l s='add new address' d='Shop.Theme.Actions'} +

    + + {if $use_same_address && !$cart.is_virtual} +

    + + {l s='Billing address differs from shipping address' d='Shop.Theme.Checkout'} + +

    + {/if} + + {/if} + + {if !$use_same_address} + +

    {l s='Your Invoice Address' d='Shop.Theme.Checkout'}

    + + {if $show_invoice_address_form} +
    + {render file = 'checkout/_partials/address-form.tpl' + ui = $address_form + use_same_address = $use_same_address + type = "invoice" + form_has_continue_button = $form_has_continue_button + } +
    + {else} +
    + {include file = 'checkout/_partials/address-selector-block.tpl' + addresses = $customer.addresses + name = "id_address_invoice" + selected = $id_address_invoice + type = "invoice" + interactive = !$show_delivery_address_form and !$show_invoice_address_form + } +
    + + {if isset($invoice_address_error)} +

    {$invoice_address_error.exception}

    + {else} + + {/if} + +

    + {l s='add new address' d='Shop.Theme.Actions'} +

    + {/if} + + {/if} + + {if !$form_has_continue_button} +
    + + +
    + {/if} + +
    +
    +{/block} diff --git a/templates/checkout/_partials/steps/checkout-step.tpl b/templates/checkout/_partials/steps/checkout-step.tpl new file mode 100644 index 0000000..47773c8 --- /dev/null +++ b/templates/checkout/_partials/steps/checkout-step.tpl @@ -0,0 +1,46 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='step'} +
    +

    + + {$position} + {$title} + mode_edit {l s='Edit' d='Shop.Theme.Actions'} +

    + +
    + {block name='step_content'}DUMMY STEP CONTENT{/block} +
    +
    +{/block} diff --git a/templates/checkout/_partials/steps/payment.tpl b/templates/checkout/_partials/steps/payment.tpl new file mode 100644 index 0000000..2f14dfd --- /dev/null +++ b/templates/checkout/_partials/steps/payment.tpl @@ -0,0 +1,167 @@ +{extends file='checkout/_partials/steps/checkout-step.tpl'} + +{block name='step_content'} + + {hook h='displayPaymentTop'} + + {* used by javascript to correctly handle cart updates when we are on payment step (eg vouchers added) *} + + + {if !empty($display_transaction_updated_info)} +

    + {l s='Transaction amount has been correctly updated' d='Shop.Theme.Checkout'} +

    + {/if} + + {if $is_free} +

    {l s='No payment needed for this order' d='Shop.Theme.Checkout'}

    + {/if} +
    + {foreach from=$payment_options item="module_options"} + {foreach from=$module_options item="option"} +
    +
    + {* This is the way an option should be selected when Javascript is enabled *} + + + + + {* This is the way an option should be selected when Javascript is disabled *} +
    + {if $option.id === $selected_payment_option} + {l s='Selected' d='Shop.Theme.Checkout'} + {else} + + {/if} +
    + + + +
    +
    + + {if $option.additionalInformation} +
    + {$option.additionalInformation nofilter} +
    + {/if} + +
    + {if $option.form} + {$option.form nofilter} + {else} +
    + {foreach from=$option.inputs item=input} + + {/foreach} + +
    + {/if} +
    + {/foreach} + {foreachelse} +

    {l s='Unfortunately, there are no payment method available.' d='Shop.Theme.Checkout'}

    + {/foreach} +
    + + {if $conditions_to_approve|count} +

    + {* At the moment, we're not showing the checkboxes when JS is disabled + because it makes ensuring they were checked very tricky and overcomplicates + the template. Might change later. + *} + {l s='By confirming the order, you certify that you have read and agree with all of the conditions below:' d='Shop.Theme.Checkout'} +

    + +
    +
      + {foreach from=$conditions_to_approve item="condition" key="condition_name"} +
    • +
      + + + + +
      +
      + +
      +
    • + {/foreach} +
    +
    + {/if} + + {if $show_final_summary} + {include file='checkout/_partials/order-final-summary.tpl'} + {/if} + +
    +
    + + {if $show_final_summary} + + {/if} +
    +
    + {if $selected_payment_option and $all_conditions_approved} + + {/if} +
    +
    + + {hook h='displayPaymentByBinaries'} + + +{/block} diff --git a/templates/checkout/_partials/steps/personal-information.tpl b/templates/checkout/_partials/steps/personal-information.tpl new file mode 100644 index 0000000..13b6b10 --- /dev/null +++ b/templates/checkout/_partials/steps/personal-information.tpl @@ -0,0 +1,98 @@ +{extends file='checkout/_partials/steps/checkout-step.tpl'} + +{block name='step_content'} + {hook h='displayPersonalInformationTop' customer=$customer} + + {if $customer.is_logged && !$customer.is_guest} + +

    + {* [1][/1] is for a HTML tag. *} + {l s='Connected as [1]%firstname% %lastname%[/1].' + d='Shop.Theme.Customeraccount' + sprintf=[ + '[1]' => "", + '[/1]' => "", + '%firstname%' => $customer.firstname, + '%lastname%' => $customer.lastname + ] + } +

    +

    + {* [1][/1] is for a HTML tag. *} + {l + s='Not you? [1]Log out[/1]' + d='Shop.Theme.Customeraccount' + sprintf=[ + '[1]' => "", + '[/1]' => "" + ] + } +

    + {if !isset($empty_cart_on_logout) || $empty_cart_on_logout} +

    {l s='If you sign out now, your cart will be emptied.' d='Shop.Theme.Checkout'}

    + {/if} + +
    +
    + +
    + +
    + + {else} + + +
    + + +
    + + + {/if} +{/block} diff --git a/templates/checkout/_partials/steps/shipping.tpl b/templates/checkout/_partials/steps/shipping.tpl new file mode 100644 index 0000000..d6b5182 --- /dev/null +++ b/templates/checkout/_partials/steps/shipping.tpl @@ -0,0 +1,124 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='checkout/_partials/steps/checkout-step.tpl'} + +{block name='step_content'} +
    + {$hookDisplayBeforeCarrier nofilter} +
    + +
    + {if $delivery_options|count} +
    +
    + {block name='delivery_options'} +
    + {foreach from=$delivery_options item=carrier key=carrier_id} +
    +
    + + + + +
    + +
    + +
    + {/foreach} +
    + {/block} +
    +
    + + +
    + + {if $recyclablePackAllowed} + + + + + + {/if} + + {if $gift.allowed} + + + + + + +
    + + +
    + {/if} + +
    +
    + +
    + {else} +

    {l s='Unfortunately, there are no carriers available for your delivery address.' d='Shop.Theme.Checkout'}

    + {/if} +
    + +
    + {$hookDisplayAfterCarrier nofilter} +
    + +
    +{/block} diff --git a/templates/checkout/_partials/steps/unreachable.tpl b/templates/checkout/_partials/steps/unreachable.tpl new file mode 100644 index 0000000..158efa3 --- /dev/null +++ b/templates/checkout/_partials/steps/unreachable.tpl @@ -0,0 +1,31 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='step'} +
    +

    + {$position} {$title} +

    +
    +{/block} diff --git a/templates/checkout/cart-empty.tpl b/templates/checkout/cart-empty.tpl new file mode 100644 index 0000000..70d0d7d --- /dev/null +++ b/templates/checkout/cart-empty.tpl @@ -0,0 +1,45 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='checkout/cart.tpl'} + +{block name='content' append} + {hook h='displayCrossSellingShoppingCart'} +{/block} + +{block name='continue_shopping' append} + + chevron_left{l s='Continue shopping' d='Shop.Theme.Actions'} + +{/block} + +{block name='cart_actions'} +
    + +
    +{/block} + +{block name='continue_shopping'}{/block} +{block name='cart_voucher'}{/block} +{block name='display_reassurance'}{/block} diff --git a/templates/checkout/cart.tpl b/templates/checkout/cart.tpl new file mode 100644 index 0000000..fb0a4d5 --- /dev/null +++ b/templates/checkout/cart.tpl @@ -0,0 +1,87 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file=$layout} + +{block name='content'} + +
    +
    + + +
    + + +
    +
    +

    {l s='Shopping Cart' d='Shop.Theme.Checkout'}

    +
    +
    + {block name='cart_overview'} + {include file='checkout/_partials/cart-detailed.tpl' cart=$cart} + {/block} +
    + + {block name='continue_shopping'} + + chevron_left{l s='Continue shopping' d='Shop.Theme.Actions'} + + {/block} + + + {block name='hook_shopping_cart_footer'} + {hook h='displayShoppingCartFooter'} + {/block} +
    + + +
    + + {block name='cart_summary'} +
    + + {block name='hook_shopping_cart'} + {hook h='displayShoppingCart'} + {/block} + + {block name='cart_totals'} + {include file='checkout/_partials/cart-detailed-totals.tpl' cart=$cart} + {/block} + + {block name='cart_actions'} + {include file='checkout/_partials/cart-detailed-actions.tpl' cart=$cart} + {/block} + +
    + {/block} + + {block name='hook_reassurance'} + {hook h='displayReassurance'} + {/block} + +
    + +
    +
    +{/block} diff --git a/templates/checkout/checkout-process.tpl b/templates/checkout/checkout-process.tpl new file mode 100644 index 0000000..98065b2 --- /dev/null +++ b/templates/checkout/checkout-process.tpl @@ -0,0 +1,30 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{foreach from=$steps item="step" key="index"} + {render identifier = $step.identifier + position = ($index + 1) + ui = $step.ui + } +{/foreach} diff --git a/templates/checkout/checkout.tpl b/templates/checkout/checkout.tpl new file mode 100644 index 0000000..ed0134a --- /dev/null +++ b/templates/checkout/checkout.tpl @@ -0,0 +1,94 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + + + + {block name='head'} + {include file='_partials/head.tpl'} + {/block} + + + + + {block name='hook_after_body_opening_tag'} + {hook h='displayAfterBodyOpeningTag'} + {/block} + + + + {block name='notifications'} + {include file='_partials/notifications.tpl'} + {/block} + +
    + {hook h="displayWrapperTop"} +
    + + {block name='content'} +
    +
    +
    + {block name='cart_summary'} + {render file='checkout/checkout-process.tpl' ui=$checkout_process} + {/block} +
    + +
    + + {block name='cart_summary'} + {include file='checkout/_partials/cart-summary.tpl' cart = $cart} + {/block} + + {hook h='displayReassurance'} +
    +
    +
    + {/block} +
    + {hook h="displayWrapperBottom"} +
    + +
    + {block name='footer'} + {include file='checkout/_partials/footer.tpl'} + {/block} +
    + + {block name='javascript_bottom'} + {include file="_partials/javascript.tpl" javascript=$javascript.bottom} + {/block} + + {block name='hook_before_body_closing_tag'} + {hook h='displayBeforeBodyClosingTag'} + {/block} + + + + diff --git a/templates/checkout/order-confirmation.tpl b/templates/checkout/order-confirmation.tpl new file mode 100644 index 0000000..d73a970 --- /dev/null +++ b/templates/checkout/order-confirmation.tpl @@ -0,0 +1,110 @@ +{extends file='page.tpl'} + +{block name='page_content_container' prepend} +
    +
    +
    +
    + + {block name='order_confirmation_header'} +

    + {l s='Your order is confirmed' d='Shop.Theme.Checkout'} +

    + {/block} + +

    + {l s='An email has been sent to your mail address %email%.' d='Shop.Theme.Checkout' sprintf=['%email%' => $customer.email]} + {if $order.details.invoice_url} + {* [1][/1] is for a HTML tag. *} + {l + s='You can also [1]download your invoice[/1]' + d='Shop.Theme.Checkout' + sprintf=[ + '[1]' => "", + '[/1]' => "" + ] + } + {/if} +

    + + {block name='hook_order_confirmation'} + {$HOOK_ORDER_CONFIRMATION nofilter} + {/block} + +
    +
    +
    +
    +{/block} + +{block name='page_content_container'} +
    +
    +
    + + {block name='order_confirmation_table'} + {include + file='checkout/_partials/order-confirmation-table.tpl' + products=$order.products + subtotals=$order.subtotals + totals=$order.totals + labels=$order.labels + add_product_link=false + } + {/block} + + {block name='order_details'} +
    +

    {l s='Order details' d='Shop.Theme.Checkout'}:

    +
      +
    • {l s='Order reference: %reference%' d='Shop.Theme.Checkout' sprintf=['%reference%' => $order.details.reference]}
    • +
    • {l s='Payment method: %method%' d='Shop.Theme.Checkout' sprintf=['%method%' => $order.details.payment]}
    • + {if !$order.details.is_virtual} +
    • + {l s='Shipping method: %method%' d='Shop.Theme.Checkout' sprintf=['%method%' => $order.carrier.name]}
      + {$order.carrier.delay} +
    • + {/if} +
    +
    + {/block} + +
    +
    +
    + + {block name='hook_payment_return'} + {if ! empty($HOOK_PAYMENT_RETURN)} +
    +
    +
    +
    + {$HOOK_PAYMENT_RETURN nofilter} +
    +
    +
    +
    + {/if} + {/block} + + {block name='customer_registration_form'} + {if $customer.is_guest} +
    +
    +

    {l s='Save time on your next order, sign up now' d='Shop.Theme.Checkout'}

    + {render file='customer/_partials/customer-form.tpl' ui=$register_form} +
    +
    + {/if} + {/block} + + {block name='hook_order_confirmation_1'} + {hook h='displayOrderConfirmation1'} + {/block} + + {block name='hook_order_confirmation_2'} + + {/block} +{/block} diff --git a/templates/cms/_partials/sitemap-nested-list.tpl b/templates/cms/_partials/sitemap-nested-list.tpl new file mode 100644 index 0000000..cf6044f --- /dev/null +++ b/templates/cms/_partials/sitemap-nested-list.tpl @@ -0,0 +1,38 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='sitemap_item'} + + {foreach $links as $link} +
  • + + {$link.label} + + {if isset($link.children) && $link.children|@count > 0} + {include file='cms/_partials/sitemap-nested-list.tpl' links=$link.children is_nested=true} + {/if} +
  • + {/foreach} + +{/block} diff --git a/templates/cms/category.tpl b/templates/cms/category.tpl new file mode 100644 index 0000000..d62e1b2 --- /dev/null +++ b/templates/cms/category.tpl @@ -0,0 +1,53 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {$cms_category.name} +{/block} + +{block name='page_content'} + {block name='cms_sub_categories'} + {if $sub_categories} +

    {l s='List of sub categories in %name%:' d='Shop.Theme.Global' sprintf=['%name%' => $cms_category.name]}

    + + {/if} + {/block} + + {block name='cms_sub_pages'} + {if $cms_pages} +

    {l s='List of pages in %category_name%:' d='Shop.Theme.Global' sprintf=['%category_name%' => $cms_category.name]}

    + + {/if} + {/block} +{/block} diff --git a/templates/cms/page.tpl b/templates/cms/page.tpl new file mode 100644 index 0000000..4839ab7 --- /dev/null +++ b/templates/cms/page.tpl @@ -0,0 +1,47 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {$cms.meta_title} +{/block} + +{block name='page_content_container'} +
    + + {block name='cms_content'} + {$cms.content nofilter} + {/block} + + {block name='hook_cms_dispute_information'} + {hook h='displayCMSDisputeInformation'} + {/block} + + {block name='hook_cms_print_button'} + {hook h='displayCMSPrintButton'} + {/block} + +
    +{/block} diff --git a/templates/cms/sitemap.tpl b/templates/cms/sitemap.tpl new file mode 100644 index 0000000..1a92472 --- /dev/null +++ b/templates/cms/sitemap.tpl @@ -0,0 +1,52 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Sitemap' d='Shop.Theme.Global'} +{/block} + +{block name='page_content_container'} +
    +
    +
    +

    {$our_offers}

    + {include file='cms/_partials/sitemap-nested-list.tpl' links=$links.offers} +
    +
    +

    {$categories}

    + {include file='cms/_partials/sitemap-nested-list.tpl' links=$links.categories} +
    +
    +

    {$your_account}

    + {include file='cms/_partials/sitemap-nested-list.tpl' links=$links.user_account} +
    +
    +

    {$pages}

    + {include file='cms/_partials/sitemap-nested-list.tpl' links=$links.pages} +
    +
    +
    +{/block} diff --git a/templates/cms/stores.tpl b/templates/cms/stores.tpl new file mode 100644 index 0000000..bb3c992 --- /dev/null +++ b/templates/cms/stores.tpl @@ -0,0 +1,88 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Our stores' d='Shop.Theme.Global'} +{/block} + +{block name='page_content_container'} +
    + + {foreach $stores as $store} +
    +
    +
    + {$store.image.legend} +
    +
    +

    {$store.name}

    +
    {$store.address.formatted nofilter}
    + {if $store.note || $store.phone || $store.fax || $store.email} + + {/if} +
    +
    + + {foreach $store.business_hours as $day} + + + + + {/foreach} +
    {$day.day|truncate:4:'.'} +
      + {foreach $day.hours as $h} +
    • {$h}
    • + {/foreach} +
    +
    +
    +
    +
    + +
    +
    + {/foreach} + +
    +{/block} diff --git a/templates/contact.tpl b/templates/contact.tpl new file mode 100644 index 0000000..fc228c0 --- /dev/null +++ b/templates/contact.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_header_container'}{/block} + +{block name='left_column'} +
    + {widget name="ps_contactinfo" hook='displayLeftColumn'} +
    +{/block} + +{block name='page_content'} + {widget name="contactform"} +{/block} diff --git a/templates/customer/_partials/address-form.tpl b/templates/customer/_partials/address-form.tpl new file mode 100644 index 0000000..3f30e0f --- /dev/null +++ b/templates/customer/_partials/address-form.tpl @@ -0,0 +1,63 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name="address_form"} +
    + {include file='_partials/form-errors.tpl' errors=$errors['']} + + {block name="address_form_url"} +
    + {/block} + + {block name="address_form_fields"} +
    + {block name='form_fields'} + {foreach from=$formFields item="field"} + {block name='form_field'} + {form_field field=$field} + {/block} + {/foreach} + {/block} +
    + {/block} + + {block name="address_form_footer"} +
    + + {block name='form_buttons'} + + {/block} +
    + {/block} + +
    +
    +{/block} diff --git a/templates/customer/_partials/block-address.tpl b/templates/customer/_partials/block-address.tpl new file mode 100644 index 0000000..433672d --- /dev/null +++ b/templates/customer/_partials/block-address.tpl @@ -0,0 +1,45 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='address_block_item'} + +{/block} diff --git a/templates/customer/_partials/customer-form.tpl b/templates/customer/_partials/customer-form.tpl new file mode 100644 index 0000000..dba04d0 --- /dev/null +++ b/templates/customer/_partials/customer-form.tpl @@ -0,0 +1,54 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='customer_form'} + {block name='customer_form_errors'} + {include file='_partials/form-errors.tpl' errors=$errors['']} + {/block} + +
    +
    + {block "form_fields"} + {foreach from=$formFields item="field"} + {block "form_field"} + {form_field field=$field} + {/block} + {/foreach} + {$hook_create_account_form nofilter} + {/block} +
    + + {block name='customer_form_footer'} +
    + + {block "form_buttons"} + + {/block} +
    + {/block} + +
    +{/block} diff --git a/templates/customer/_partials/login-form.tpl b/templates/customer/_partials/login-form.tpl new file mode 100644 index 0000000..932480e --- /dev/null +++ b/templates/customer/_partials/login-form.tpl @@ -0,0 +1,60 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='login_form'} + + {block name='login_form_errors'} + {include file='_partials/form-errors.tpl' errors=$errors['']} + {/block} + +
    + +
    + {block name='login_form_fields'} + {foreach from=$formFields item="field"} + {block name='form_field'} + {form_field field=$field} + {/block} + {/foreach} + {/block} + +
    + + {block name='login_form_footer'} +
    + + {block name='form_buttons'} + + {/block} +
    + {/block} + +
    +{/block} diff --git a/templates/customer/_partials/my-account-links.tpl b/templates/customer/_partials/my-account-links.tpl new file mode 100644 index 0000000..1892017 --- /dev/null +++ b/templates/customer/_partials/my-account-links.tpl @@ -0,0 +1,34 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='my_account_links'} + + +{/block} diff --git a/templates/customer/_partials/order-detail-no-return.tpl b/templates/customer/_partials/order-detail-no-return.tpl new file mode 100644 index 0000000..005af9b --- /dev/null +++ b/templates/customer/_partials/order-detail-no-return.tpl @@ -0,0 +1,175 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='order_products_table'} +
    + + + + + + + + + + {foreach from=$order.products item=product} + + + + + + + {/foreach} + + {foreach $order.subtotals as $line} + {if $line.value} + + + + + {/if} + {/foreach} + + + + + +
    {l s='Product' d='Shop.Theme.Catalog'}{l s='Quantity' d='Shop.Theme.Catalog'}{l s='Unit price' d='Shop.Theme.Catalog'}{l s='Total price' d='Shop.Theme.Catalog'}
    + + + {$product.name} + +
    + {if $product.reference} + {l s='Reference' d='Shop.Theme.Catalog'}: {$product.reference}
    + {/if} + {if $product.customizations} + {foreach from=$product.customizations item="customization"} + +
    + +
    + {/foreach} + {/if} +
    + {if $product.customizations} + {foreach $product.customizations as $customization} + {$customization.quantity} + {/foreach} + {else} + {$product.quantity} + {/if} + {$product.price}{$product.total}
    {$line.label}{$line.value}
    {$order.totals.total.label}{$order.totals.total.value}
    +
    + +
    + {foreach from=$order.products item=product} +
    +
    +
    +
    {$product.name}
    + {if $product.reference} +
    {l s='Reference' d='Shop.Theme.Catalog'}: {$product.reference}
    + {/if} + {if $product.customizations} + {foreach $product.customizations as $customization} + +
    +
    + {/foreach} + {/if} +
    +
    +
    +
    + {$product.price} +
    +
    + {if $product.customizations} + {foreach $product.customizations as $customization} + {$customization.quantity} + {/foreach} + {else} + {$product.quantity} + {/if} +
    +
    + {$product.total} +
    +
    +
    +
    +
    + {/foreach} +
    +
    + {foreach $order.subtotals as $line} + {if $line.value} +
    +
    {$line.label}
    +
    {$line.value}
    +
    + {/if} + {/foreach} +
    +
    {$order.totals.total.label}
    +
    {$order.totals.total.value}
    +
    +
    +{/block} diff --git a/templates/customer/_partials/order-detail-return.tpl b/templates/customer/_partials/order-detail-return.tpl new file mode 100644 index 0000000..1156ec3 --- /dev/null +++ b/templates/customer/_partials/order-detail-return.tpl @@ -0,0 +1,253 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='order_products_table'} +
    + +
    + + + + + + + + + + + + {foreach from=$order.products item=product name=products} + + + + + + + + + {/foreach} + + {foreach $order.subtotals as $line} + {if $line.value} + + + + + {/if} + {/foreach} + + + + + +
    {l s='Product' d='Shop.Theme.Catalog'}{l s='Quantity' d='Shop.Theme.Catalog'}{l s='Returned' d='Shop.Theme.Customeraccount'}{l s='Unit price' d='Shop.Theme.Catalog'}{l s='Total price' d='Shop.Theme.Catalog'}
    + {if !$product.customizations} + + + + {else} + {foreach $product.customizations as $customization} + + + + {/foreach} + {/if} + + {$product.name}
    + {if $product.reference} + {l s='Reference' d='Shop.Theme.Catalog'}: {$product.reference}
    + {/if} + {if $product.customizations} + {foreach from=$product.customizations item="customization"} + +
    + +
    + {/foreach} + {/if} +
    + {if !$product.customizations} +
    + {$product.quantity} +
    + {if $product.quantity > $product.qty_returned} +
    + +
    + {/if} + {else} + {foreach $product.customizations as $customization} +
    + {$customization.quantity} +
    +
    + +
    + {/foreach} +
    + {/if} +
    {$product.qty_returned}{$product.price}{$product.total}
    {$line.label}{$line.value}
    {$order.totals.total.label}{$order.totals.total.value}
    +
    + +
    + {foreach from=$order.products item=product} +
    +
    +
    + {if !$product.customizations} + + {else} + {foreach $product.customizations as $customization} + + {/foreach} + {/if} +
    +
    +
    +
    +
    {$product.name}
    + {if $product.reference} +
    {l s='Reference' d='Shop.Theme.Catalog'}: {$product.reference}
    + {/if} + {if $product.customizations} + {foreach $product.customizations as $customization} + +
    +
    + {/foreach} + {/if} +
    +
    +
    +
    + {$product.price} +
    +
    + {if $product.customizations} + {foreach $product.customizations as $customization} +
    {l s='Quantity' d='Shop.Theme.Catalog'}: {$customization.quantity}
    +
    + {/foreach} + {else} +
    {l s='Quantity' d='Shop.Theme.Catalog'}: {$product.quantity}
    + {if $product.quantity > $product.qty_returned} +
    + {/if} + {/if} + {if $product.qty_returned > 0} +
    {l s='Returned' d='Shop.Theme.Customeraccount'}: {$product.qty_returned}
    + {/if} +
    +
    + {$product.total} +
    +
    +
    +
    +
    +
    +
    + {/foreach} +
    +
    + {foreach $order.subtotals as $line} + {if $line.value} +
    +
    {$line.label}
    +
    {$line.value}
    +
    + {/if} + {/foreach} +
    +
    {$order.totals.total.label}
    +
    {$order.totals.total.value}
    +
    +
    + +
    +
    +

    {l s='Merchandise return' d='Shop.Theme.Customeraccount'}

    +

    {l s='If you wish to return one or more products, please mark the corresponding boxes and provide an explanation for the return. When complete, click the button below.' d='Shop.Theme.Customeraccount'}

    +
    +
    +
    + +
    +
    +
    + + +
    +
    + +
    +{/block} diff --git a/templates/customer/_partials/order-messages.tpl b/templates/customer/_partials/order-messages.tpl new file mode 100644 index 0000000..daf71a5 --- /dev/null +++ b/templates/customer/_partials/order-messages.tpl @@ -0,0 +1,85 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{block name='order_messages_table'} + {if $order.messages} +
    +

    {l s='Messages' d='Shop.Theme.Customeraccount'}

    + {foreach from=$order.messages item=message} +
    +
    + {$message.name}
    + {$message.message_date} +
    +
    + {$message.message nofilter} +
    +
    + {/foreach} +
    + {/if} +{/block} + +{block name='order_message_form'} +
    +
    + +
    +

    {l s='Add a message' d='Shop.Theme.Customeraccount'}

    +

    {l s='If you would like to add a comment about your order, please write it in the field below.' d='Shop.Theme.Customeraccount'}

    +
    + +
    + +
    + +
    + +
    +
    + +
    + +
    + +
    +
    + +
    + +
    + + +
    + +
    +
    +{/block} diff --git a/templates/customer/address.tpl b/templates/customer/address.tpl new file mode 100644 index 0000000..c97eb94 --- /dev/null +++ b/templates/customer/address.tpl @@ -0,0 +1,39 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {if $editing} + {l s='Update your address' d='Shop.Theme.Customeraccount'} + {else} + {l s='New address' d='Shop.Theme.Customeraccount'} + {/if} +{/block} + +{block name='page_content'} +
    + {render template="customer/_partials/address-form.tpl" ui=$address_form} +
    +{/block} diff --git a/templates/customer/addresses.tpl b/templates/customer/addresses.tpl new file mode 100644 index 0000000..8d59bc7 --- /dev/null +++ b/templates/customer/addresses.tpl @@ -0,0 +1,46 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {l s='Your addresses' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} + {foreach $customer.addresses as $address} +
    + {block name='customer_address'} + {include file='customer/_partials/block-address.tpl' address=$address} + {/block} +
    + {/foreach} +
    + +{/block} diff --git a/templates/customer/authentication.tpl b/templates/customer/authentication.tpl new file mode 100644 index 0000000..3d940b9 --- /dev/null +++ b/templates/customer/authentication.tpl @@ -0,0 +1,46 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Log in to your account' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} + {block name='login_form_container'} + +
    + {block name='display_after_login_form'} + {hook h='displayCustomerLoginFormAfter'} + {/block} + + {/block} +{/block} diff --git a/templates/customer/discount.tpl b/templates/customer/discount.tpl new file mode 100644 index 0000000..c434a52 --- /dev/null +++ b/templates/customer/discount.tpl @@ -0,0 +1,96 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {l s='Your vouchers' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} + {if $cart_rules} + + + + + + + + + + + + + + {foreach from=$cart_rules item=cart_rule} + + + + + + + + + + {/foreach} + +
    {l s='Code' d='Shop.Theme.Checkout'}{l s='Description' d='Shop.Theme.Checkout'}{l s='Quantity' d='Shop.Theme.Checkout'}{l s='Value' d='Shop.Theme.Checkout'}{l s='Minimum' d='Shop.Theme.Checkout'}{l s='Cumulative' d='Shop.Theme.Checkout'}{l s='Expiration date' d='Shop.Theme.Checkout'}
    {$cart_rule.code}{$cart_rule.name}{$cart_rule.quantity_for_user}{$cart_rule.value}{$cart_rule.voucher_minimal}{$cart_rule.voucher_cumulable}{$cart_rule.voucher_date}
    +
    + {foreach from=$cart_rules item=cart_rule} +
    +
      +
    • + {l s='Code' d='Shop.Theme.Checkout'} + {$cart_rule.code} +
    • +
    • + {l s='Description' d='Shop.Theme.Checkout'} + {$cart_rule.name} +
    • +
    • + {l s='Quantity' d='Shop.Theme.Checkout'} + {$cart_rule.quantity_for_user} +
    • +
    • + {l s='Value' d='Shop.Theme.Checkout'} + {$cart_rule.value} +
    • +
    • + {l s='Minimum' d='Shop.Theme.Checkout'} + {$cart_rule.voucher_minimal} +
    • +
    • + {l s='Cumulative' d='Shop.Theme.Checkout'} + {$cart_rule.voucher_cumulable} +
    • +
    • + {l s='Expiration date' d='Shop.Theme.Checkout'} + {$cart_rule.voucher_date} +
    • +
    +
    + {/foreach} +
    + {/if} +{/block} diff --git a/templates/customer/guest-login.tpl b/templates/customer/guest-login.tpl new file mode 100644 index 0000000..356e81b --- /dev/null +++ b/templates/customer/guest-login.tpl @@ -0,0 +1,79 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Guest Order Tracking' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} +
    +
    +

    {l s='To track your order, please enter the following information:' d='Shop.Theme.Customeraccount'}

    +
    + +
    + +
    + +
    + +
    + {l s='For example: QIIXJXNUI or QIIXJXNUI#1' d='Shop.Theme.Customeraccount'} +
    +
    +
    + +
    + +
    + +
    +
    + +
    + +
    + +
    +
    +{/block} diff --git a/templates/customer/guest-tracking.tpl b/templates/customer/guest-tracking.tpl new file mode 100644 index 0000000..52a149b --- /dev/null +++ b/templates/customer/guest-tracking.tpl @@ -0,0 +1,70 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/order-detail.tpl'} + +{block name='page_title'} + {l s='Guest Tracking' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='order_detail'} + {include file='customer/_partials/order-detail-no-return.tpl'} +{/block} + +{block name='order_messages'} +{/block} + +{block name='page_content' append} + {block name='guest_to_customer'} +
    +
    +

    {l s='Transform your guest account into a customer account and enjoy:' d='Shop.Theme.Customeraccount'}

    +
      +
    • -{l s='Personalized and secure access' d='Shop.Theme.Customeraccount'}
    • +
    • -{l s='Fast and easy checkout' d='Shop.Theme.Customeraccount'}
    • +
    • -{l s='Easier merchandise return' d='Shop.Theme.Customeraccount'}
    • +
    +
    + +
    + + + +
    + +
    + + + + + + +
    + +
    + {/block} +{/block} diff --git a/templates/customer/history.tpl b/templates/customer/history.tpl new file mode 100644 index 0000000..422757f --- /dev/null +++ b/templates/customer/history.tpl @@ -0,0 +1,119 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {l s='Order history' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} +
    {l s='Here are the orders you\'ve placed since your account was created.' d='Shop.Theme.Customeraccount'}
    + + {if $orders} + + + + + + + + + + + + + + {foreach from=$orders item=order} + + + + + + + + + + {/foreach} + +
    {l s='Order reference' d='Shop.Theme.Checkout'}{l s='Date' d='Shop.Theme.Checkout'}{l s='Total price' d='Shop.Theme.Checkout'}{l s='Payment' d='Shop.Theme.Checkout'}{l s='Status' d='Shop.Theme.Checkout'}{l s='Invoice' d='Shop.Theme.Checkout'} 
    {$order.details.reference}{$order.details.order_date}{$order.totals.total.value}{$order.details.payment} + + {$order.history.current.ostate_name} + + + {if $order.details.invoice_url} + + {else} + - + {/if} + + + {l s='Details' d='Shop.Theme.Customeraccount'} + + {if $order.details.reorder_url} + {l s='Reorder' d='Shop.Theme.Actions'} + {/if} +
    + +
    + {foreach from=$orders item=order} +
    +
    +
    +

    {$order.details.reference}

    +
    {$order.details.order_date}
    +
    {$order.totals.total.value}
    +
    + + {$order.history.current.ostate_name} + +
    +
    +
    + + {if $order.details.reorder_url} + + {/if} +
    +
    +
    + {/foreach} +
    + + {/if} +{/block} diff --git a/templates/customer/identity.tpl b/templates/customer/identity.tpl new file mode 100644 index 0000000..646668b --- /dev/null +++ b/templates/customer/identity.tpl @@ -0,0 +1,33 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends 'customer/page.tpl'} + +{block name='page_title'} + {l s='Your personal information' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} + {render file='customer/_partials/customer-form.tpl' ui=$customer_form} +{/block} diff --git a/templates/customer/my-account.tpl b/templates/customer/my-account.tpl new file mode 100644 index 0000000..27e9a0b --- /dev/null +++ b/templates/customer/my-account.tpl @@ -0,0 +1,111 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {l s='Your account' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} +
    + +
    +{/block} + + +{block name='page_footer'} + {block name='my_account_links'} + + {/block} +{/block} diff --git a/templates/customer/order-detail.tpl b/templates/customer/order-detail.tpl new file mode 100644 index 0000000..44b9afc --- /dev/null +++ b/templates/customer/order-detail.tpl @@ -0,0 +1,213 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {l s='Order details' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} + {block name='order_infos'} +
    +
    +
    +
    + + {l + s='Order Reference %reference% - placed on %date%' + d='Shop.Theme.Customeraccount' + sprintf=['%reference%' => $order.details.reference, '%date%' => $order.details.order_date] + } + +
    + {if $order.details.reorder_url} + + {/if} +
    +
    +
    + +
    +
      +
    • {l s='Carrier' d='Shop.Theme.Checkout'} {$order.carrier.name}
    • +
    • {l s='Payment method' d='Shop.Theme.Checkout'} {$order.details.payment}
    • + + {if $order.details.invoice_url} +
    • + + {l s='Download your invoice as a PDF file.' d='Shop.Theme.Customeraccount'} + +
    • + {/if} + + {if $order.details.recyclable} +
    • + {l s='You have given permission to receive your order in recycled packaging.' d='Shop.Theme.Customeraccount'} +
    • + {/if} + + {if $order.details.gift_message} +
    • {l s='You have requested gift wrapping for this order.' d='Shop.Theme.Customeraccount'}
    • +
    • {l s='Message' d='Shop.Theme.Customeraccount'} {$order.details.gift_message nofilter}
    • + {/if} +
    +
    +
    + {/block} + + {block name='order_history'} +
    +

    {l s='Follow your order\'s status step-by-step' d='Shop.Theme.Customeraccount'}

    + + + + + + + + + {foreach from=$order.history item=state} + + + + + {/foreach} + +
    {l s='Date' d='Shop.Theme.Global'}{l s='Status' d='Shop.Theme.Global'}
    {$state.history_date} + + {$state.ostate_name} + +
    +
    + {foreach from=$order.history item=state} +
    +
    {$state.history_date}
    +
    + + {$state.ostate_name} + +
    +
    + {/foreach} +
    +
    + {/block} + + {if $order.follow_up} +
    +

    {l s='Click the following link to track the delivery of your order' d='Shop.Theme.Customeraccount'}

    + {$order.follow_up} +
    + {/if} + + {block name='addresses'} +
    + {if $order.addresses.delivery} +
    +
    +

    {l s='Delivery address %alias%' d='Shop.Theme.Checkout' sprintf=['%alias%' => $order.addresses.delivery.alias]}

    +
    {$order.addresses.delivery.formatted nofilter}
    +
    +
    + {/if} + +
    +
    +

    {l s='Invoice address %alias%' d='Shop.Theme.Checkout' sprintf=['%alias%' => $order.addresses.invoice.alias]}

    +
    {$order.addresses.invoice.formatted nofilter}
    +
    +
    +
    +
    + {/block} + + {$HOOK_DISPLAYORDERDETAIL nofilter} + + {block name='order_detail'} + {if $order.details.is_returnable} + {include file='customer/_partials/order-detail-return.tpl'} + {else} + {include file='customer/_partials/order-detail-no-return.tpl'} + {/if} + {/block} + + {block name='order_carriers'} + {if $order.shipping} +
    + + + + + + + + + + + + {foreach from=$order.shipping item=line} + + + + + + + + {/foreach} + +
    {l s='Date' d='Shop.Theme.Global'}{l s='Carrier' d='Shop.Theme.Checkout'}{l s='Weight' d='Shop.Theme.Checkout'}{l s='Shipping cost' d='Shop.Theme.Checkout'}{l s='Tracking number' d='Shop.Theme.Checkout'}
    {$line.shipping_date}{$line.carrier_name}{$line.shipping_weight}{$line.shipping_cost}{$line.tracking nofilter}
    +
    + {foreach from=$order.shipping item=line} +
    +
      +
    • + {l s='Date' d='Shop.Theme.Global'} {$line.shipping_date} +
    • +
    • + {l s='Carrier' d='Shop.Theme.Checkout'} {$line.carrier_name} +
    • +
    • + {l s='Weight' d='Shop.Theme.Checkout'} {$line.shipping_weight} +
    • +
    • + {l s='Shipping cost' d='Shop.Theme.Checkout'} {$line.shipping_cost} +
    • +
    • + {l s='Tracking number' d='Shop.Theme.Checkout'} {$line.tracking nofilter} +
    • +
    +
    + {/foreach} +
    +
    + {/if} + {/block} + + {block name='order_messages'} + {include file='customer/_partials/order-messages.tpl'} + {/block} +{/block} diff --git a/templates/customer/order-follow.tpl b/templates/customer/order-follow.tpl new file mode 100644 index 0000000..9006b89 --- /dev/null +++ b/templates/customer/order-follow.tpl @@ -0,0 +1,98 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {l s='Merchandise returns' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} + + {if $ordersReturn && count($ordersReturn)} + +
    {l s='Here is a list of pending merchandise returns' d='Shop.Theme.Customeraccount'}
    + + + + + + + + + + + + + {foreach from=$ordersReturn item=return} + + + + + + + + {/foreach} + +
    {l s='Order' d='Shop.Theme.Customeraccount'}{l s='Return' d='Shop.Theme.Customeraccount'}{l s='Package status' d='Shop.Theme.Customeraccount'}{l s='Date issued' d='Shop.Theme.Customeraccount'}{l s='Returns form' d='Shop.Theme.Customeraccount'}
    {$return.reference}{$return.return_number}{$return.state_name}{$return.return_date} + {if $return.print_url} + {l s='Print out' d='Shop.Theme.Actions'} + {else} + - + {/if} +
    +
    + {foreach from=$ordersReturn item=return} +
    +
      +
    • + {l s='Order' d='Shop.Theme.Customeraccount'} + {$return.reference} +
    • +
    • + {l s='Return' d='Shop.Theme.Customeraccount'} + {$return.return_number} +
    • +
    • + {l s='Package status' d='Shop.Theme.Customeraccount'} + {$return.state_name} +
    • +
    • + {l s='Date issued' d='Shop.Theme.Customeraccount'} + {$return.return_date} +
    • + {if $return.print_url} +
    • + {l s='Returns form' d='Shop.Theme.Customeraccount'} + {l s='Print out' d='Shop.Theme.Actions'} +
    • + {/if} +
    +
    + {/foreach} +
    + + {/if} + +{/block} diff --git a/templates/customer/order-return.tpl b/templates/customer/order-return.tpl new file mode 100644 index 0000000..6aa2365 --- /dev/null +++ b/templates/customer/order-return.tpl @@ -0,0 +1,151 @@ +{extends file='customer/page.tpl'} + +{block name='page_title'} +

    {l s='Return details' d='Shop.Theme.Customeraccount'}

    +{/block} + +{block name='page_content'} + {block name='order_return_infos'} +
    +
    +

    + {l + s='%number% on %date%' + d='Shop.Theme.Customeraccount' + sprintf=['%number%' => $return.return_number, '%date%' => $return.return_date]} + +

    +

    {l s='We have logged your return request.' d='Shop.Theme.Customeraccount'}

    +

    {l + s='Your package must be returned to us within %number% days of receiving your order.' + d='Shop.Theme.Customeraccount' + sprintf=['%number%' => $configuration.number_of_days_for_return]}

    +

    + {* [1][/1] is for a HTML tag. *} + {l + s='The current status of your merchandise return is: [1] %status% [/1]' + d='Shop.Theme.Customeraccount' + sprintf=[ + '[1]' => '', + '[/1]' => '', + '%status%' => $return.state_name + ] + } +

    +

    {l s='List of items to be returned:' d='Shop.Theme.Customeraccount'}

    + + + + + + + + + {foreach from=$products item=product} + + + + + {/foreach} + +
    {l s='Product' d='Shop.Theme.Catalog'}{l s='Quantity' d='Shop.Theme.Checkout'}
    + {$product.product_name} + {if $product.product_reference} +
    + {l s='Reference' d='Shop.Theme.Catalog'}: {$product.product_reference} + {/if} + {if $product.customizations} + {foreach from=$product.customizations item="customization"} + + + {/foreach} + {/if} +
    + {$product.product_quantity} +
    +
    +
    + {/block} + + {if $return.state == 2} +
    +
    +

    {l s='Reminder' d='Shop.Theme.Customeraccount'}

    +

    + {l + s='All merchandise must be returned in its original packaging and in its original state.' + d='Shop.Theme.Customeraccount' + }
    + {* [1][/1] is for a HTML tag. *} + {l + s='Please print out the [1]returns form[/1] and include it with your package.' + d='Shop.Theme.Customeraccount' + sprintf=[ + '[1]' => '', + '[/1]' => '' + ] + } +
    + {* [1][/1] is for a HTML tag. *} + {l + s='Please check the [1]returns form[/1] for the correct address.' + d='Shop.Theme.Customeraccount' + sprintf=[ + '[1]' => '', + '[/1]' => '' + ] + } +

    +

    + {l + s='When we receive your package, we will notify you by email. We will then begin processing order reimbursement.' + d='Shop.Theme.Customeraccount' + }
    + + {l + s='Please let us know if you have any questions.' + d='Shop.Theme.Customeraccount' + } +
    + {l + s='If the conditions of return listed above are not respected, we reserve the right to refuse your package and/or reimbursement.' + d='Shop.Theme.Customeraccount' + } +

    +
    +
    + {/if} +{/block} diff --git a/templates/customer/order-slip.tpl b/templates/customer/order-slip.tpl new file mode 100644 index 0000000..feb5662 --- /dev/null +++ b/templates/customer/order-slip.tpl @@ -0,0 +1,80 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='customer/page.tpl'} + +{block name='page_title'} + {l s='Credit slips' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} +
    {l s='Credit slips you have received after canceled orders.' d='Shop.Theme.Customeraccount'}
    + {if $credit_slips} + + + + + + + + + + + {foreach from=$credit_slips item=slip} + + + + + + + {/foreach} + +
    {l s='Order' d='Shop.Theme.Customeraccount'}{l s='Credit slip' d='Shop.Theme.Customeraccount'}{l s='Date issued' d='Shop.Theme.Customeraccount'}{l s='View credit slip' d='Shop.Theme.Customeraccount'}
    {$slip.order_reference}{$slip.credit_slip_number}{$slip.credit_slip_date} + +
    +
    + {foreach from=$credit_slips item=slip} +
    + +
    + {/foreach} +
    + {/if} +{/block} diff --git a/templates/customer/page.tpl b/templates/customer/page.tpl new file mode 100644 index 0000000..099c1f8 --- /dev/null +++ b/templates/customer/page.tpl @@ -0,0 +1,46 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='notifications'}{/block} + +{block name='page_content_container'} +
    + {block name='page_content_top'} + {block name='customer_notifications'} + {include file='_partials/notifications.tpl'} + {/block} + {/block} + {block name='page_content'} + + {/block} +
    +{/block} + +{block name='page_footer'} + {block name='my_account_links'} + {include file='customer/_partials/my-account-links.tpl'} + {/block} +{/block} diff --git a/templates/customer/password-email.tpl b/templates/customer/password-email.tpl new file mode 100644 index 0000000..dcfbc60 --- /dev/null +++ b/templates/customer/password-email.tpl @@ -0,0 +1,74 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Forgot your password?' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} +
    + +
      + {foreach $errors as $error} +
    • + + + + + +

      {$error}

      +
    • + {/foreach} +
    + +
    + +
    + +
    +
    + + + + +
    +
    + +
    +{/block} + +{block name='page_footer'} + +{/block} diff --git a/templates/customer/password-infos.tpl b/templates/customer/password-infos.tpl new file mode 100644 index 0000000..d829349 --- /dev/null +++ b/templates/customer/password-infos.tpl @@ -0,0 +1,50 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Forgot your password?' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} +
      + {foreach $successes as $success} +
    • + + + + + +

      {$success}

      +
    • + {/foreach} +
    +{/block} + +{block name='page_footer'} + +{/block} diff --git a/templates/customer/password-new.tpl b/templates/customer/password-new.tpl new file mode 100644 index 0000000..fc37640 --- /dev/null +++ b/templates/customer/password-new.tpl @@ -0,0 +1,90 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Reset your password' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} +
    +
      + {foreach $errors as $error} +
    • + + + + + +

      {$error}

      +
    • + {/foreach} +
    +
    + + + +
    +
    + +
    + +
    +
    + +
    + +
    + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    +
    +{/block} + +{block name='page_footer'} + +{/block} diff --git a/templates/customer/registration.tpl b/templates/customer/registration.tpl new file mode 100644 index 0000000..9f71703 --- /dev/null +++ b/templates/customer/registration.tpl @@ -0,0 +1,39 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {l s='Create an account' d='Shop.Theme.Customeraccount'} +{/block} + +{block name='page_content'} + {block name='register_form_container'} + {$hook_create_account_top nofilter} +
    +

    {l s='Already have an account?' d='Shop.Theme.Customeraccount'} {l s='Log in instead!' d='Shop.Theme.Customeraccount'}

    + {render file='customer/_partials/customer-form.tpl' ui=$register_form} +
    + {/block} +{/block} diff --git a/templates/errors/404.tpl b/templates/errors/404.tpl new file mode 100644 index 0000000..022157f --- /dev/null +++ b/templates/errors/404.tpl @@ -0,0 +1,33 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='page.tpl'} + +{block name='page_title'} + {$page.title} +{/block} + +{block name='page_content_container'} + {include file='errors/not-found.tpl'} +{/block} diff --git a/templates/errors/forbidden.tpl b/templates/errors/forbidden.tpl new file mode 100644 index 0000000..90dacff --- /dev/null +++ b/templates/errors/forbidden.tpl @@ -0,0 +1,30 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file=$layout} + +{block name='content'} +
    +
    +{/block} diff --git a/templates/errors/maintenance.tpl b/templates/errors/maintenance.tpl new file mode 100644 index 0000000..de7bea8 --- /dev/null +++ b/templates/errors/maintenance.tpl @@ -0,0 +1,61 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='layouts/layout-error.tpl'} + +{block name='content'} + +
    + + {block name='page_header_container'} + + {/block} + + {block name='page_content_container'} +
    + {block name='page_content'} + {$maintenance_text nofilter} + {/block} +
    + {/block} + + {block name='page_footer_container'} + + {/block} + +
    + +{/block} diff --git a/templates/errors/not-found.tpl b/templates/errors/not-found.tpl new file mode 100644 index 0000000..8a932e8 --- /dev/null +++ b/templates/errors/not-found.tpl @@ -0,0 +1,40 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +
    + {block name='page_content'} + +

    {l s='Sorry for the inconvenience.' d='Shop.Theme.Global'}

    +

    {l s='Search again what you are looking for' d='Shop.Theme.Global'}

    + + {block name='search'} + {hook h='displaySearch'} + {/block} + + {block name='hook_not_found'} + {hook h='displayNotFound'} + {/block} + + {/block} +
    diff --git a/templates/errors/restricted-country.tpl b/templates/errors/restricted-country.tpl new file mode 100644 index 0000000..beb1095 --- /dev/null +++ b/templates/errors/restricted-country.tpl @@ -0,0 +1,55 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='layouts/layout-error.tpl'} + +{block name='content'} + +
    + + {block name='page_header_container'} + + {/block} + + {block name='page_content_container'} +
    + {block name='page_content'} +

    {l s='403 Forbidden' d='Shop.Theme.Global'}

    +

    {l s='You cannot access this store from your country. We apologize for the inconvenience.' d='Shop.Theme.Global'}

    + {/block} +
    + {/block} + + {block name='page_footer_container'} + + {/block} + +
    + +{/block} diff --git a/templates/errors/static/500.html b/templates/errors/static/500.html new file mode 100644 index 0000000..e69de29 diff --git a/templates/errors/static/503.html b/templates/errors/static/503.html new file mode 100644 index 0000000..e69de29 diff --git a/templates/index.tpl b/templates/index.tpl new file mode 100644 index 0000000..c92f8e6 --- /dev/null +++ b/templates/index.tpl @@ -0,0 +1,90 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + + + + {block name='head'} + {include file='_partials/head.tpl'} + {/block} + + + + + {block name='hook_after_body_opening_tag'} + {hook h='displayAfterBodyOpeningTag'} + {/block} + +
    + {block name='product_activation'} + {include file='catalog/_partials/product-activation.tpl'} + {/block} + + + + {block name='notifications'} + {include file='_partials/notifications.tpl'} + {/block} + +
    + {$homeslider} +
    + +
    + {hook h="displayWrapperTop"} +
    + {block name="content_wrapper"} +
    + {hook h="displayContentWrapperTop"} + {$HOOK_HOME nofilter} + {hook h="displayContentWrapperBottom"} +
    + {/block} +
    + {hook h="displayWrapperBottom"} +
    + +
    + {block name="footer"} + {include file="_partials/footer.tpl"} + {/block} +
    + +
    + + {block name='javascript_bottom'} + {include file="_partials/javascript.tpl" javascript=$javascript.bottom} + {/block} + + {block name='hook_before_body_closing_tag'} + {hook h='displayBeforeBodyClosingTag'} + {/block} + + + diff --git a/templates/layouts/layout-both-columns.tpl b/templates/layouts/layout-both-columns.tpl new file mode 100644 index 0000000..c8ba6da --- /dev/null +++ b/templates/layouts/layout-both-columns.tpl @@ -0,0 +1,114 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + + + + {block name='head'} + {include file='_partials/head.tpl'} + {/block} + + + + + {block name='hook_after_body_opening_tag'} + {hook h='displayAfterBodyOpeningTag'} + {/block} + +
    + {block name='product_activation'} + {include file='catalog/_partials/product-activation.tpl'} + {/block} + + + + {block name='notifications'} + {include file='_partials/notifications.tpl'} + {/block} + +
    + {hook h="displayWrapperTop"} +
    + {if $page.page_name !== 'index'} + {block name='breadcrumb'} + {include file='_partials/breadcrumb.tpl'} + {/block} + {/if} + + {block name="left_column"} +
    + {if $page.page_name == 'product'} + {hook h='displayLeftColumnProduct'} + {else} + {hook h="displayLeftColumn"} + {/if} +
    + {/block} + + {block name="content_wrapper"} +
    + {hook h="displayContentWrapperTop"} + {block name="content"} +

    Hello world! This is HTML5 Boilerplate.

    + {/block} + {hook h="displayContentWrapperBottom"} +
    + {/block} + + {block name="right_column"} +
    + {if $page.page_name == 'product'} + {hook h='displayRightColumnProduct'} + {else} + {hook h="displayRightColumn"} + {/if} +
    + {/block} +
    + {hook h="displayWrapperBottom"} +
    + +
    + {block name="footer"} + {include file="_partials/footer.tpl"} + {/block} +
    + +
    + + {block name='javascript_bottom'} + {include file="_partials/javascript.tpl" javascript=$javascript.bottom} + {/block} + + {block name='hook_before_body_closing_tag'} + {hook h='displayBeforeBodyClosingTag'} + {/block} + + + diff --git a/templates/layouts/layout-content-only.tpl b/templates/layouts/layout-content-only.tpl new file mode 100644 index 0000000..a3f38dc --- /dev/null +++ b/templates/layouts/layout-content-only.tpl @@ -0,0 +1,41 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='layouts/layout-both-columns.tpl'} + +{block name='header'}{/block} +{block name='left_column'}{/block} +{block name='right_column'}{/block} + +{block name='content_wrapper'} +
    + {hook h="displayContentWrapperTop"} + {block name='content'} +

    Hello world! This is HTML5 Boilerplate.

    + {/block} + {hook h="displayContentWrapperBottom"} +
    +{/block} + +{block name='footer'}{/block} diff --git a/templates/layouts/layout-error.tpl b/templates/layouts/layout-error.tpl new file mode 100644 index 0000000..35f221e --- /dev/null +++ b/templates/layouts/layout-error.tpl @@ -0,0 +1,55 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} + + + + + + + + {block name='head_seo'} + {block name='head_seo_title'}{/block} + + + {/block} + + + {block name='stylesheets'} + {include file="_partials/stylesheets.tpl" stylesheets=$stylesheets} + {/block} + + + + + +
    + {block name='content'} +

    Hello world! This is HTML5 Boilerplate.

    + {/block} +
    + + + + diff --git a/templates/layouts/layout-full-width.tpl b/templates/layouts/layout-full-width.tpl new file mode 100644 index 0000000..bb0d027 --- /dev/null +++ b/templates/layouts/layout-full-width.tpl @@ -0,0 +1,38 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='layouts/layout-both-columns.tpl'} + +{block name='left_column'}{/block} +{block name='right_column'}{/block} + +{block name='content_wrapper'} +
    + {hook h="displayContentWrapperTop"} + {block name='content'} +

    Hello world! This is HTML5 Boilerplate.

    + {/block} + {hook h="displayContentWrapperBottom"} +
    +{/block} diff --git a/templates/layouts/layout-left-column.tpl b/templates/layouts/layout-left-column.tpl new file mode 100644 index 0000000..242d95c --- /dev/null +++ b/templates/layouts/layout-left-column.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='layouts/layout-both-columns.tpl'} + +{block name='right_column'}{/block} + +{block name='content_wrapper'} +
    + {hook h="displayContentWrapperTop"} + {block name='content'} +

    Hello world! This is HTML5 Boilerplate.

    + {/block} + {hook h="displayContentWrapperBottom"} +
    +{/block} diff --git a/templates/layouts/layout-right-column.tpl b/templates/layouts/layout-right-column.tpl new file mode 100644 index 0000000..e1fdb52 --- /dev/null +++ b/templates/layouts/layout-right-column.tpl @@ -0,0 +1,37 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file='layouts/layout-both-columns.tpl'} + +{block name='left_column'}{/block} + +{block name='content_wrapper'} +
    + {hook h="displayContentWrapperTop"} + {block name='content'} +

    Hello world! This is HTML5 Boilerplate.

    + {/block} + {hook h="displayContentWrapperBottom"} +
    +{/block} diff --git a/templates/page.tpl b/templates/page.tpl new file mode 100644 index 0000000..0438a39 --- /dev/null +++ b/templates/page.tpl @@ -0,0 +1,58 @@ +{** + * 2007-2019 PrestaShop and Contributors + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License 3.0 (AFL-3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * https://opensource.org/licenses/AFL-3.0 + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@prestashop.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade PrestaShop to newer + * versions in the future. If you wish to customize PrestaShop for your + * needs please refer to https://www.prestashop.com for more information. + * + * @author PrestaShop SA + * @copyright 2007-2019 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + * International Registered Trademark & Property of PrestaShop SA + *} +{extends file=$layout} + +{block name='content'} + +
    + + {block name='page_header_container'} + {block name='page_title' hide} + + {/block} + {/block} + + {block name='page_content_container'} +
    + {block name='page_content_top'}{/block} + {block name='page_content'} + + {/block} +
    + {/block} + + {block name='page_footer_container'} + + {/block} + +
    + +{/block}