fiche produit libelles

This commit is contained in:
Nolwenn 2017-08-22 17:33:26 +02:00
parent ee8f23aaef
commit 26da659055
24 changed files with 387 additions and 220 deletions

View File

@ -20,10 +20,8 @@ class ConfiguratorOptGroup extends ObjectModel
/* Lang fields */
'name' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'required' => true, 'size' => 255),
'description' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => '', 'required' => false),
'separator' => array('type' => self::TYPE_HTML, 'lang' => true, 'validate' => '', 'required' => false),
'description' => array('type' => self::TYPE_HTML, 'lang' => true, 'validate' => '', 'required' => false)
),
'associations' => array(
'options' => array('type' => self::HAS_MANY, 'field' => 'id_configurator_opt_group', 'object' => 'ConfiguratorOpt', 'association' => 'configurator_opt'),
),

View File

@ -324,15 +324,6 @@ class AdminAntadisConfiguratorController extends ModuleAdminController
'required' => false,
'lang' => true,
),
array(
'type' => 'textarea',
'autoload_rte' => true,
'label' => $this->l('Separator'),
'desc' => $this->l("Titre de groupe"),
'name' => 'separator',
'required' => false,
'lang' => true,
),
),
'submit' => array('title' => $this->l('Save'))
);

View File

@ -97,6 +97,7 @@ body.content_only { margin: 0; }
.header-search .searchbox.open .form-group {
width: 350px;
height: 30px;
transition: 0.5s all;
-webkit-transition: 0.5s all;
}
@ -106,6 +107,7 @@ body.content_only { margin: 0; }
background-color: #f5dee9;
z-index: 1;
height: 42px;
pointer-events: none;
}
.header-search .searchbox.open .btn {
display: block;
@ -258,16 +260,19 @@ body.content_only { margin: 0; }
}
@media (max-width: 991px) {
.header-main { padding-top: 0; padding-bottom: 0; }
.header-search .searchbox.open .form-group { margin: auto; top: 0; width: auto; left: 0; right: 0; margin-top: -2px; }
.header-main .header-top-right > .header-search { width: auto; position: static; }
.header-main .header-top-right > div { padding: 0; }
.header-search .form-group .form-control { font-size: 13px; }
.header-main .header-top { margin-top: 0; }
.header-main .header-top { margin-top: 0; padding: 0; }
.header-main .header-top.search-open { margin-top: 57px; }
.header-main .header-lang { display: none; }
.header-main .header-top-left .menu-action { display: block; float: left; font-size: 18px; opacity: 1; padding-right: 20px; position: static; pointer-events: auto; margin-top: 0; }
.header-main .header-top-left .search-action { float: left; font-size: 18px; }
.header-main .header-top-left .search-action { float: left; font-size: 18px; margin-top: 8px;}
.header-main .header-top.search-open .header-search { top: -57px }
.header-search .searchbox { float: none; width: 100%; }
.header-search .searchbox input { border-color: #000; margin: 0; opacity: 1; padding: 5px 15px; width: 100% }
.header-search .searchbox input { margin: 0; opacity: 1; padding: 5px 15px; width: 100% }
.header-search .searchbox.focus input { width: 100% }
.header-search .searchbox button { position: absolute; right: 10px; top: 4px; }
.header-search .searchbox button i { font-size: 16px; }
@ -277,15 +282,18 @@ body.content_only { margin: 0; }
.header-user .sub, .header-user .overlay { display: none; }
}
@media (max-width: 767px) {
.header-main { padding-top: 10px; padding-bottom: 10px; }
}
@media (max-width: 480px) {
.header-main { padding: 0; }
.header-main { padding-right: 0; padding-left: 0; }
.header-main .header-logo { margin-top: -5px; padding: 0; }
.header-main .logo { max-width: 100%; }
.header-main .logo-fig { height: 50px; margin: -10px auto 0 auto; width:50px; }
.header-main .logo-fig img { height: 50px; width: 50px; }
}
@media (max-width: 320px) {
.header-main { padding-top: 0; padding-bottom: 0; }
}
/************************************** == ACCOUNT == ***********************************/
@ -324,6 +332,26 @@ body.content_only { margin: 0; }
@media (max-width: 990px) {
.myaccount > a:before {
content: '';
position: absolute;
display: block;
background-color: #efefef;
width: 1px;
height: 25px;
bottom: 20px;
left: 1px;
}
.myaccount > a:after {
content: '';
position: absolute;
display: block;
background-color: #efefef;
width: 1px;
height: 25px;
bottom: 20px;
right: 0;
}
.myaccount:hover .account-links {
display: none!important;
}
@ -345,24 +373,17 @@ body.content_only { margin: 0; }
position: relative;
top: 2px;
}
.myaccount > a .icon-user:after {
content: '';
display: block;
width: 25px;
height: 25px;
top: 8px;
bottom: 0;
left: 0;
right: 0;
margin: auto;
background-color: #f8e7f0;
transform: rotate(45deg);
-webkit-transform: rotate(45deg);
position: absolute;
z-index: 0;
}
.myaccount > a span { display: none; }
}
@media (max-width: 480px) {
.myaccount > a:after, .myaccount > a:before { height: 21px; bottom: 22px; }
.myaccount > a:before { left: 0; }
.myaccount > a { width: auto; padding-left: 3px; padding-right: 3px; }
.myaccount > a .icon-user { font-size: 17px; width: 18px; display: inline-block; }
}
/************************************** == STICKY MENU == ***********************************/
.header-main.sticky {
position: fixed;
@ -696,6 +717,9 @@ body.content_only { margin: 0; }
}
}
@media (max-width: 990px) {
.header-main .header-top-left > div { top: 0; }
}
@media (max-width: 767px) {
.mainmenu .menu-content { width: 60% }
.mainmenu .submenu { width: 60% }
@ -716,7 +740,7 @@ body.content_only { margin: 0; }
@media (max-width: 1500px) {
.site-content { padding: 0 20px; }
}
@media (max-width: 767px) {
@media (max-width: 990px) {
.site-content { padding: 0 0; }
}
@ -791,14 +815,16 @@ body.content_only { margin: 0; }
display: inline-block;
padding-right: 0px;
position: relative;
padding-bottom: 20px;
margin-top: 20px;
}
.header-languages .chooseLanguage {
cursor: pointer;
font-size: 12px;
letter-spacing: 0.04em;
padding: 12px 0 10px 0;
text-transform: uppercase;
}
.header-languages .chooseLanguage img {
margin-right: 3px;
}
@ -815,7 +841,7 @@ body.content_only { margin: 0; }
width: 46px;
z-index: 3;
}
.header-languages:hover .panel { display: block; }
.header-languages:hover .panel { display: block; margin-top: -9px; }
.header-languages .panel a {
color: #414042;
@ -836,22 +862,48 @@ body.content_only { margin: 0; }
.header-languages .chooseLanguage { font-size: 11px; }
}
@media (max-width: 990px) {
.header-languages, .header-main .header-top-right > div { position: static; }
.header-languages .chooseLanguage { padding: 32px 0 10px 0; }
.menu-open .header-languages { height: auto; padding-top: 30px; padding-right: 15px; }
.menu-open .header-languages .chooseLanguage { display: block!important; }
.header-languages .panel, .header-languages:hover .panel { display: none; }
.header-languages .panel.open { display: block; }
.header-languages .panel a { display: inline-block; }
.header-languages .chooseLanguage { cursor: auto; }
.header-languages .panel .overlay { background-color: rgba(0,0,0.3); position: fixed; }
.header-languages .panel .inner { background-color: #fff; max-width: 320px; padding: 20px; text-align: center; width: 100%; }
.header-languages .panel .overlay { background-color: rgba(0,0,0, 0.3); position: fixed;
top: 0; left: 0; right: 0; bottom: 0; }
.header-languages .panel .inner {
max-height: 80px;
background-color: #fff;
max-width: 320px;
padding: 20px;
text-align: center;
width: 100%;
position: fixed;
margin: auto;
max-height: 70px;
top: 0; left: 0; right: 0; bottom: 0;
}
.header-languages .panel .inner .icon-cross {
pointer-events: none;
right: -25px;
top: 0px;
font-size: 13px;
position: absolute;
color: #fff;
}
.header-languages .panel .inner li { background-color: #f7f7f7; display: inline-block; }
.header-languages .panel .inner li:not(:last-child) { margin-right: 15px; }
.header-languages .panel .inner .title { color: #333; display: block; font-size: 14px; margin-bottom: 15px; text-align: center; }
}
@media (max-width: 767px) {
.header-languages .chooseLanguage { padding: 0; }
.header-languages { height: 0; }
}
@media (max-width: 480px) {
.header-languages .chooseLanguage { font-size: 11px; }
}
/************************************** == CART LAYOUT == **********************************/
#header .cart-layout .total {
@ -1116,8 +1168,7 @@ body.content_only { margin: 0; }
/* cart */
.cart-layout .block-layout footer { padding-bottom: 5px; padding-top: 20px; background-color: #f6f6f6; padding-top: 0; }
.cart-layout:hover .block-layout { display: block; top: 49px; opacity: 1; z-index: 100; height: auto; padding-top: 15px; }
.cart-layout:hover .block-layout.emptyBlock { display: none; }
.cart-layout .total { display: none; }
.cart-layout .btn {
background-color: transparent;
@ -1133,7 +1184,10 @@ body.content_only { margin: 0; }
.cart-layout .cart-prices { font-size: 16px; }
@media (min-width: 990px) {
.cart-layout:hover .block-layout { display: block; top: 49px; opacity: 1; z-index: 100; height: auto; padding-top: 15px; }
.cart-layout:hover .block-layout.emptyBlock { display: none; }
}
@media (max-width: 1349px) {
.cart-layout .nb-total-product, .cart-layout .ajax_quote_quantity { top: -14px; }
@ -1150,7 +1204,21 @@ body.content_only { margin: 0; }
.cart-layout i { font-size: 35px; margin-right: 0; }
}
@media (max-width: 480px) {
.cart-layout i.icon-cart { width: 15px; font-size: 17px; }
.cart-layout i.icon-cart:after { left: -3px; }
#header-cart.cart-layout .nb-total-product { padding-right: 0; margin-left: 10px; margin-right: 2px; }
.ajax_cart_quantity { position: relative; display: inline-block; }
.cart-layout i.icon-cart {
width: 15px;
font-size: 17px;
line-height: 17px;
height: auto;
padding: 0;
}
.cart-layout .icon-left { padding: 0; }
.cart-layout i.icon-cart:after { width: 20px; height: 20px; }
}
/************************************* == REASSURANCE FOOTER == ****************************/
.reassurance-footer {
font-size: 14px;
@ -1308,6 +1376,17 @@ body.content_only { margin: 0; }
@media (max-width: 990px) {
.envie-de .ctn { width: 100%; }
}
@media (max-width: 767px) {
.footerconstructor-block:nth-child(2) { padding-bottom: 20px; }
.footerconstructor-block:nth-child(1) { padding-top: 20px; }
.envie-de .footerconstructor-block .inner { padding-bottom: 0; padding-top: 0; }
.envie-de .footerconstructor-block .inner { background-size: auto; }
.envie-de .content { max-width: 100%; }
.envie-de .btn { margin-bottom: 25px; }
}
@media (max-width: 480px) {
.envie-de .footerconstructor-block .inner { background: none!important; }
}
/************************************* == FOOTER MIDDLE == ***********************************/
@ -1616,6 +1695,8 @@ body.content_only { margin: 0; }
color: #fff;
}
/***************** subcategories-home ********/
.subcategories-home .inner {
position: relative;
@ -1669,9 +1750,7 @@ body.content_only { margin: 0; }
right: 14px;
top: 25px;
}
.subcategories-home .inner:hover > .icon-featured {
opacity: 0;
}
.subcategories-home .inner .content {
height: 180px;
top: 0;
@ -1682,11 +1761,7 @@ body.content_only { margin: 0; }
position: absolute;
line-height: 20px;
}
.subcategories-home .inner:hover .content {
color: #fff;
opacity: 1;
}
.subcategories-home .inner .txt .icon-featured {
position: relative;
display: block;
@ -1703,40 +1778,32 @@ body.content_only { margin: 0; }
position: relative;
z-index: 1;
}
.subcategories-home .inner:hover .txt {
opacity: 1;
transform: translateY(0);
transition: opacity .3s cubic-bezier(.4,0,.2,1) .2s,transform .3s cubic-bezier(.4,0,.2,1) .15s;
}
.subcategories-home .inner .desc {
font-family: 'caveat';
font-size: 26px;
}
.subcategories-home .inner:hover .desc {
@media (min-width: 990px) {
.subcategories-home .inner:hover > .icon-featured {
opacity: 0;
}
.subcategories-home .text-infos {
.subcategories-home .inner:hover .content {
color: #fff;
opacity: 1;
}
.subcategories-home .inner:hover .txt {
opacity: 1;
font-size:
transform: translateY(0);
transition: opacity .3s cubic-bezier(.4,0,.2,1) .2s,transform .3s cubic-bezier(.4,0,.2,1) .15s;
}
.subcategories-home .txt {
}
@media (max-width: 767px) {
.subcategories-home .inner { float: left; }
.subcategories-home > .row .item { overflow: hidden; }
.subcategories-home .inner > .icon-featured { display: none; }
.subcategories-home .inner:hover .content { color: #4f3528; }
.subcategories-home .inner { padding-bottom: 30px; background-color: #f8e7f0; width: 100%; }
.subcategories-home > .row .item img { float: none; }
.subcategories-home .inner .content { position: relative; right: auto; left: auto; }
.subcategories-home .inner .txt { opacity: 1; }
.subcategories-home .inner:before { display: none; }
.subcategories-home .inner .txt .icon-featured { margin-bottom: 0; margin-top: 5px; }
#subcat-ctn .owl-item:nth-child(5) { display: none; }
}
@media (max-width: 480px) {
.subcategories-home > .row { margin-left: -45px; margin-right: -45px; }
}
/***************** customizable ********/
.subcategories-home .customize-block {
@ -1791,12 +1858,67 @@ body.content_only { margin: 0; }
.subcategories-home .customize-block .content { line-height: 17px; font-size: 14px; }
}
@media (max-width: 990px) {
.subcategories-home .inner:before { background-color: rgba(255, 255, 255, 0.3); opacity: 1; z-index: 1; }
.subcategories-home .inner .title { font-size: 16px; line-height: 12px; }
.subcategories-home .inner .txt { opacity: 1; margin-top: 90px; }
.subcategories-home .inner .txt .icon-featured { display: none; }
.icon-aurore_chocolats:before { line-height: 55px; }
.subcategories-home .icon-doublecube:before { font-size: 21px; }
.subcategories-home .icon-pochette:before, .subcategories-home .inner .icon-aurore_chocolats:before { font-size: 16px; }
.subcategories-home .icon-aurore_chocolats:before { line-height: 55px; }
.subcategories-home .inner .icon-featured:after { font-size: 55px; }
.subcategories-home .inner .icon-featured { font-size: 25px; line-height:55px; right: 7px; width: 55px; top: 7px; height: auto; z-index: 1; }
.subcategories-home .customize-block .content { line-height: 13px; font-size: 12px; padding: 0; }
.subcategories-home .inner .desc { font-size: 20px; }
.subcategories-home .customize-block { height: 150px; }
.subcategories-home .customize-block .title { font-size: 21px; line-height: 20px; }
.subcategories-home .customize-block .title { font-size: 21px; font-size: 15px; line-height: 17px; }
}
@media (max-width: 767px) {
.subcategories-home .inner .txt .icon-featured { display: block; }
#subcat-ctn { height: 250px; }
#subcat-ctn .owl-carousel .owl-stage-outer { height: 100%; }
.subcategories-home { max-height: 250px; overflow: hidden; position: relative; margin-bottom: 15px; }
.subcategories-home .img {
max-width: none;
width: 100%;
}
.subcategories-home img {
max-width: none;
height: 100%;
left: 50%;
position: relative;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
}
.subcategories-home .inner { float: left; }
.subcategories-home > .row .item { overflow: hidden; }
.subcategories-home .inner > .icon-featured { display: none; }
.subcategories-home .inner:hover .content { color: #4f3528; }
.subcategories-home .inner { padding-bottom: 0px; background-color: #f8e7f0; width: 100%; }
.subcategories-home > .row .item img { float: none; }
.subcategories-home .inner .content { margin-top: 0; }
.subcategories-home .inner .txt { opacity: 1; }
.subcategories-home .inner .txt .icon-featured { margin-bottom: 0; margin-top: 5px; }
#subcat-ctn .owl-item:nth-child(5) { display: none; }
.subcategories-home .owl-nav .owl-prev { left: 30px; }
.subcategories-home .owl-nav .owl-next { right: 30px; }
.subcategories-home .icon-arrow-right2:before { content: "\e916"; }
.subcategories-home .icon-arrow-left2:before { content: "\e915"; }
.subcategories-home .owl-next, .subcategories-home .owl-prev { width: 50px; }
.subcategories-home .owl-nav .owl-prev { left: 0; }
.subcategories-home .owl-nav .owl-next { right: 0; }
.subcategories-home .owl-nav { display: block; max-width: 120px; margin: auto; top: auto; bottom: 10px; }
}
@media (max-width: 480px) {
.subcategories-home, #subcat-ctn { max-height: 200px; }
.subcategories-home .inner .txt { margin-top: 40px; }
.subcategories-home > .row { margin-left: -45px; margin-right: -45px; }
}
/********************* guidebook ************/
.guidebook {
margin-top: 9px;
@ -2192,6 +2314,8 @@ body.content_only { margin: 0; }
.best-chocolate li { display: none; }
}
@media (max-width: 767px) {
.best-chocolate .title span { font-size: 23px; line-height: 25px;
}
.best-chocolate { position: relative; }
.best-chocolate .abs { position: relative; z-index: 2; }
.best-chocolate > img {
@ -2206,6 +2330,7 @@ body.content_only { margin: 0; }
max-width: none;
}
}
/********************* news *********************/
.news-ctn {
margin-top: 9px;
@ -2462,6 +2587,7 @@ body.content_only { margin: 0; }
.instagram .subtitle { font-size: 11px; margin-bottom: 25px; }
}
@media (max-width: 480px) {
.homeblock { text-align: center; }
.homeblock .ctn { padding: 0 0 }
.homeblock .title { font-size: 18px; margin-bottom: 10px; }
@ -2510,9 +2636,8 @@ body.content_only { margin: 0; }
padding-right: 130px;
display: inline-block;
background-image: url('../img/ballon.png');
background-attachment: fixed;
background-repeat: no-repeat;
background-position: 40px 10px;
background-position: -223px -95px;
padding-bottom: 55px;
}
.sitereviews .customize-block .title-level2 {
@ -4680,7 +4805,7 @@ body.content_only { margin: 0; }
.order-steps .step:last-child .step-number:after { display: none; height: 0; }
}
@media(max-width: 480px){
.order-steps .step { margin: 0 8px; }
.order-steps .step { margin: 0 3px; }
}
@ -4863,6 +4988,8 @@ body.content_only { margin: 0; }
.ctn-resume-cart { padding-left: 0; }
}
@media(max-width: 991px) {
.summary-shipping + .cart_navigation { display: none; }
.summary-shipping { padding: 0 0; }
.cart-content .product-row:after { left: 15px; right: 15px; }
.shipping .resume-cart { display: none; }
.cart-content .product-row { margin-bottom: 30px; padding-top: 20px; padding-bottom: 20px; }
@ -4882,10 +5009,8 @@ body.content_only { margin: 0; }
.cart-content .product-qty .product-qty-minus { background: #f5f2f2; color: #000; height: 34px; font-size: 12px; font-weight: 500;line-height: 34px; padding: 0; text-align: center; width: 34px; }
.cart-content .product-qty .product-qty-input { height: 34px; font-size: 12px; font-weight: 500; line-height: 34px; text-align: center; width: 40px; }
.cart-content .product-qty .product-qty-input { height: 34px; font-size: 12px; font-weight: 500; line-height: 34px; text-align: center; width: 40px; }
.cart-content .product-total.price { font-size: 12px; }
.cart-content .product-total.price > span:nth-child(2) { font-size: 18px; }
.cart-content.table-div .table-row strong {
font-size: 12px;
float: left;
@ -4899,27 +5024,34 @@ body.content_only { margin: 0; }
.cart-content.table-div .table-row strong + div { float: left; }
.cart-content.table-div .table-row .product-total > div:nth-child(2) { font-size: 20px; }
.cart-content .product-total.price strong { margin: 0; }
}
@media (max-width: 767px) {
#order .section-content { margin-top: -33px; }
#order .section-content { margin-top: -33px; margin-left: 20px; margin-right: 20px; }
.cart .page-heading.order-process { margin-bottom: 5px; }
.cart-content { margin: 0 -15px; }
.cart-content.table-div .table-row > .product-image { left: 15px; width: 20% }
.cart-content.table-div .table-row > .product-details,
.cart-content.table-div .table-row > .product-price,
.cart-content.table-div .table-row > .product-qty,
.cart-content.table-div .table-row > .product-total { padding-left: 30%; width: 100% }
.cart-content .product-row { border-bottom: 1px solid #f3f2f0; margin-bottom: 0; padding: 15px }
.cart-content .product-delete { bottom: 14px; right: 15px; }
.cart-content.table-div .table-row > .product-total { padding-left: 30%; width: 100%; }
.cart-content.table-div .product-image { width: 30%; }
.cart-content .product-row { margin-bottom: 0; padding: 15px; }
.cart-content .product-delete { bottom: 14px; right: 0px; }
}
@media (max-width: 480px) {
.cart-content.table-div .table-row > .product-image { left: 15px; width: 30% }
.resume-cart { padding: 20px; }
.cart-content.table-div .table-row strong { width: 30%; }
.cart-content .product-image img { max-width: 100%; }
.cart-content.table-div .table-row > .product-image { left: 15px; width: 30%; }
.cart-content.table-div .table-row > .product-details,
.cart-content.table-div .table-row > .product-price,
.cart-content.table-div .table-row > .product-qty,
.cart-content.table-div .table-row > .product-total { padding-left: 40%; width: 100% }
.cart-content .product-row { border-bottom: 1px solid #f3f2f0; margin-bottom: 0; padding: 15px 0 }
.cart-content.table-div .table-row > .product-total { width: 100%; }
.cart-content .product-row { border-bottom: 1px solid #f3f2f0; margin-bottom: 0; padding: 15px 0; }
.cart-content .product-row .table-row { padding: 0 }
#order .cart_quantity_button { border: 0; }
}
@ -4942,6 +5074,7 @@ body.content_only { margin: 0; }
.discount-form-ctn .discount-trigger {
color: #4f3528;
padding-left: 0;
margin-bottom: 5px;
}
.resume-cart .line > div:first-child {
text-transform: uppercase;
@ -4976,6 +5109,7 @@ body.content_only { margin: 0; }
}
.discount-form-ctn .ctn-btn-text {
padding-right: 0;
padding-left: 0;
}
.discount-form-ctn .submit-discount {
background: none;
@ -4993,6 +5127,7 @@ body.content_only { margin: 0; }
height: 39px;
position: relative;
left: 2px;
width: calc(100% - 2px);
}
.discount-form .btn {
background-color: transparent;
@ -5000,6 +5135,7 @@ body.content_only { margin: 0; }
color: #f3b3d3;
font-size: 14px;
width: auto;
padding: 11px 15px;
}
.display_cart_vouchers {
font-size: 14px;
@ -5113,16 +5249,20 @@ body.content_only { margin: 0; }
.cart-summary .summary-prices .line .price { padding-right: 15px; text-align: right; }
.cart-summary .summary-prices .total-price { margin-top: 20px; }
}
@media (max-width: 991px) {
.cart-summary .discount-form { border: 0; padding: 20px 15px }
}
@media (max-width: 767px) {
.cart-summary .discount-form { padding: 20px 0 }
.cart-summary .summary-prices { padding-top: 0; }
.cart-summary .summary-prices .line { padding: 10px 0 }
.cart-summary .summary-prices .total-price .price { font-size: 22px; }
}
@media (max-width: 480px) {
.summary-shipping .discount-form-ctn { padding: 20px 15px; }
.cart-summary > .inner { border: 0; padding: 0 }
.cart-summary .discount-form-ctn { padding: 15px; }
.cart-summary .summary-prices { margin-top: 10px; }
@ -6794,6 +6934,9 @@ body[id^='module'][id$='payment'] .order-paiement.ctn {
padding-bottom: 0px;
}
.product-main.configurator h3 p {
margin-bottom: 5px;
}
.page-product-desc-group p {
margin-bottom: 0;
}
@ -6846,7 +6989,7 @@ body[id^='module'][id$='payment'] .order-paiement.ctn {
border-color: #d8d8d8;
}
.page-product-desc-group {
.page-product-title-group {
text-transform: uppercase;
color: #4f3528;
margin-bottom: 11px;
@ -6894,9 +7037,15 @@ body[id^='module'][id$='payment'] .order-paiement.ctn {
.product-main.configurator .ref-DATEMARIAGE .ctn-input {
position: relative;
}
.product-main.configurator #DATEMARIAGE {
.product-main.configurator #DATEMARIAGE,
.product-main.configurator #DATEMARIAGE:hover {
-webkit-appearance: none!important;
}
.product-main.configurator #DATEMARIAGE::-webkit-inner-spin-button,
.product-main.configurator #DATEMARIAGE::-webkit-calendar-picker-indicator {
display: none;
-webkit-appearance: none;
}
.product-main.configurator .ref-DATEMARIAGE .ctn-input:after {
content: '';
display: block;
@ -6909,6 +7058,7 @@ body[id^='module'][id$='payment'] .order-paiement.ctn {
left: auto;
z-index: 1;
background-repeat: no-repeat;
pointer-events: none;
}
.product-main.configurator #main-info {
padding-right: 30px;
@ -7058,3 +7208,23 @@ body[id^='module'][id$='payment'] .order-paiement.ctn {
opacity: 0.2!important;
}
/* datepicker override */
.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br {
border: none!important;
background: #f9f8f9!important;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
background: #f8e7f0!important;
border: 0!important;
}
#ui-datepicker-div {
border: 1px solid #efefef!important;
}
.ui-datepicker .ui-datepicker-title {
font-family: 'staat';
text-transform: uppercase;
}
.product-infos small {
display: block;
}

View File

@ -456,6 +456,7 @@ a { color: inherit; }
}
@media (max-width: 990px) {
.title-drop { font-size: 22px; }
.title-drop span { max-width: 83%; }
.title-arrow:before, .title-arrow:after { display: none; }
}
@media (max-width: 767px) {
@ -701,7 +702,12 @@ header.page-heading.category { background: none; padding: 0; }
}
@media (max-width: 1400px) {
#order .crumb { position: static; }
#order .crumb {
position: static;
background-color: #f8f7f7;
padding: 10px 0;
}
.order-steps { margin-top: 40px; }
}
@media (max-width: 767px) {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

View File

@ -41,8 +41,6 @@
</div>
</div>
</li>
<li class="layer" data-depth="0.40"><div style="background-image: url('{$img_dir}parallax/parallax4.png');"></div></li>
</ul>
</div>
<div class="ctn">

View File

@ -152,10 +152,10 @@ $(document).ready(function() {
$('#gototop').on('click', function() {
$('html, body').animate({ scrollTop: 0 }, 600);
});
$(document).mouseup(function (e) {
var container = $('.remove-opener');
if (!container.is(e.target) && container.has(e.target).length === 0)
{
if (!container.is(e.target) && container.has(e.target).length === 0) {
container.removeClass('open');
}
});

View File

@ -7,129 +7,132 @@
<input type="hidden" name="id_product" value="{$product->id}" />
{foreach item=optGroup from=$optGroupList}
{if !empty($optGroup['separator'])}
<h3 class="page-product-heading" id="antadisconfigurator-content-tab">{$optGroup['separator']}</h3>
{/if}
{if !empty($optGroup['description'])}
<h4 class="page-product-desc-group">
{$optGroup['description']}
</h4>
{/if}
<div class="form-group type-{$optGroup['type']} ref-{$optGroup['reference']}">
{if $optGroup['type'] != 'hidden'}
<label class="label {$optGroup['reference']}">{$optGroup['name']} </label>
{if $optGroup['type'] == 'label' && $optGroup['reference'] == 'BIG-TITLE'}
<h3 class="page-product-heading">{$optGroup['description']}</h3>
{elseif $optGroup['type'] == 'label'}
{if !empty($optGroup['description'])}
<h4 class="page-product-title-group">
{$optGroup['description']}
</h4>
{/if}
{if $optGroup['type'] == 'text'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{else}
<div class="form-group type-{$optGroup['type']} ref-{$optGroup['reference']}">
{if !empty($optGroup['description'])}
<label class="page-product-desc-group">
{$optGroup['description']}
</label>
{/if}
{assign var="optImpact" value=$optImpactList[$optGroup['id_product_configurator_opt_group']][0]}
<div class="ctn-input">
<input id="{$optGroup['reference']}" type="text" class="form-control configurator-opt"
name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}" placeholder="{$optImpact['name']}"
value="{if empty($optValue)}{$optImpact['name']}{else}$optValue{/if}"/>
</div>
{elseif $optGroup['type'] == 'textarea'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
{assign var="optImpact" value=$optImpactList[$optGroup['id_product_configurator_opt_group']][0]}
<div class="ctn-input">
<textarea id="{$optGroup['reference']}" class="configurator-opt form-control" name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}"
placeholder="{$optImpact['name']}" rows="3" cols="50">{$optValue}</textarea>
</div>
{elseif $optGroup['type'] == 'date'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
<div class="ctn-input">
<input id="{$optGroup['reference']}" type="date" class="form-control configurator-opt-datepicker"
name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}"
value="{if $optValue eq ''}{$smarty.now|date_format:"%d/%m/%Y"}{else}{$optValue}{/if}" />
</div>
{elseif $optGroup['type'] == 'file'}
<div class="ctn-input">
<input id="{$optGroup['reference']}" type="file" class="custom-input configurator-opt-file" name="files"
data-field="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}"
data-url="/configurator/upload/{$id_product}/{$optGroup['reference']}"/>
</div>
{addJsDefL name='filePlaceHolder'}{l s='No file selected' js=1 mod='antadisconfigurator'}{/addJsDefL}
{addJsDefL name='filePlaceHolderButton'}{l s='Choose File' js=1 mod='antadisconfigurator'}{/addJsDefL}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
<span id="response-optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}">{$optValue}</span>
<input type="hidden" name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}" value="{$optValue}"/>
{elseif $optGroup['type'] == 'radio'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
{foreach item=optImpact from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
{if $optGroup['type'] == 'text'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
{assign var="optImpact" value=$optImpactList[$optGroup['id_product_configurator_opt_group']][0]}
<div class="ctn-input">
<input type="radio" data-url="./?controller=product&impactprice=1&ajax=1" class="custom-input inline {$optGroup['reference']} configurator-opt-click"
name="optgroup-{$optGroup['id_configurator_opt_group']}"
value="{$optImpact['id_configurator_opt']}"{if in_array($optImpact['id_configurator_opt'], $optValue)} checked{/if}/>
<input id="{$optGroup['reference']}" type="text" class="form-control configurator-opt"
name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}" placeholder="{$optImpact['name']}"
value="{if empty($optValue)}{$optImpact['name']}{else}{$optValue}{/if}"/>
</div>
{elseif $optGroup['type'] == 'textarea'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
{assign var="optImpact" value=$optImpactList[$optGroup['id_product_configurator_opt_group']][0]}
<div class="ctn-input">
<textarea id="{$optGroup['reference']}" class="configurator-opt form-control" name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}"
placeholder="{$optImpact['name']}" rows="3" cols="50">{$optValue}</textarea>
</div>
{elseif $optGroup['type'] == 'date'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
<div class="ctn-input">
<input id="{$optGroup['reference']}" type="date" class="form-control configurator-opt-datepicker"
name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}"
value="{if $optValue eq ''}{$smarty.now|date_format:"%d/%m/%Y"}{else}{$optValue}{/if}" />
</div>
{elseif $optGroup['type'] == 'file'}
<div class="ctn-input">
<input id="{$optGroup['reference']}" type="file" class="custom-input configurator-opt-file" name="files"
data-field="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}"
data-url="/configurator/upload/{$id_product}/{$optGroup['reference']}"/>
</div>
{addJsDefL name='filePlaceHolder'}{l s='No file selected' js=1 mod='antadisconfigurator'}{/addJsDefL}
{addJsDefL name='filePlaceHolderButton'}{l s='Choose File' js=1 mod='antadisconfigurator'}{/addJsDefL}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
<span id="response-optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}">{$optValue}</span>
<input type="hidden" name="optgroup-{$optGroup['id_configurator_opt_group']}-{$optImpact['id_configurator_opt']}" value="{$optValue}"/>
{elseif $optGroup['type'] == 'radio'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
{foreach item=optImpact from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
<div class="ctn-input">
<input type="radio" data-url="./?controller=product&impactprice=1&ajax=1" class="custom-input inline {$optGroup['reference']} configurator-opt-click"
name="optgroup-{$optGroup['id_configurator_opt_group']}"
value="{$optImpact['id_configurator_opt']}"{if in_array($optImpact['id_configurator_opt'], $optValue)} checked{/if}/>
<label>
{$optImpact['name']}
</label>
</div>
{/foreach}
{elseif $optGroup['type'] == 'checkbox'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
{foreach item=optImpact from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
<div class="ctn-input">
<input type="checkbox" data-url="./?controller=product&impactprice=1&ajax=1" class="custom-input inline {$optGroup['reference']} configurator-opt-click"
name="optgroup-{$optGroup['id_configurator_opt_group']}[]"
value="{$optImpact['id_configurator_opt']}"{if in_array($optImpact['id_configurator_opt'], $optValue)} checked{/if}/>
<label>
{$optImpact['name']}
</label>
</div>
{/foreach}
{elseif $optGroup['type'] == 'checkbox'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
{foreach item=optImpact from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
<label>
{$optImpact['name']}
</label>
</div>
{/foreach}
{elseif $optGroup['type'] == 'select'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
<div class="ctn-input">
<input type="checkbox" data-url="./?controller=product&impactprice=1&ajax=1" class="custom-input inline {$optGroup['reference']} configurator-opt-click"
name="optgroup-{$optGroup['id_configurator_opt_group']}[]"
value="{$optImpact['id_configurator_opt']}"{if in_array($optImpact['id_configurator_opt'], $optValue)} checked{/if}/>
<label>
{$optImpact['name']}
</label>
<div>
<select id="{$optGroup['reference']}" class="custom-input form-control configurator-opt-change" data-url="./?controller=product&impactprice=1&ajax=1" name="optgroup-{$optGroup['id_configurator_opt_group']}">
{foreach item=optImpact from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
<option value="{$optImpact['id_configurator_opt']}"{if in_array($optImpact['id_configurator_opt'], $optValue)} selected{/if}>{$optImpact['name']}</option>
{/foreach}
</select>
</div>
</div>
{/foreach}
{elseif $optGroup['type'] == 'select'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
<div class="ctn-input">
<div>
<select id="{$optGroup['reference']}" class="custom-input form-control configurator-opt-change" data-url="./?controller=product&impactprice=1&ajax=1" name="optgroup-{$optGroup['id_configurator_opt_group']}">
{foreach item=optImpact from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
<option value="{$optImpact['id_configurator_opt']}"{if in_array($optImpact['id_configurator_opt'], $optValue)} selected{/if}>{$optImpact['name']}</option>
{/foreach}
</select>
{elseif $optGroup['type'] == 'hidden'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/if}
<input type="hidden" id="{$optGroup['reference']}" name="optgroup-{$optGroup['id_configurator_opt_group']}" value="{$optValue}" />
{elseif $optGroup['type'] == 'quantities'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
{foreach item=optImpact key=k from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
<div class="ctn-input">
<input type="text" name="form-control optgroup-{$optGroup['id_configurator_opt_group']}[]" value="{if array_key_exists($k, $optValue)}{$optValue[$k]}{/if}" />
</div>
</div>
{elseif $optGroup['type'] == 'hidden'}
{assign var="optValue" value=""}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']][0]}
{/foreach}
{/if}
<input type="hidden" id="{$optGroup['reference']}" name="optgroup-{$optGroup['id_configurator_opt_group']}" value="{$optValue}" />
{elseif $optGroup['type'] == 'quantities'}
{assign var="optValue" value=array()}
{if isset($optSelectedValues[$optGroup['id_configurator_opt_group']])}
{assign var="optValue" value=$optSelectedValues[$optGroup['id_configurator_opt_group']]}
{/if}
{foreach item=optImpact key=k from=$optImpactList[$optGroup['id_product_configurator_opt_group']]}
<div class="ctn-input">
<input type="text" name="form-control optgroup-{$optGroup['id_configurator_opt_group']}[]" value="{if array_key_exists($k, $optValue)}{$optValue[$k]}{/if}" />
</div>
{/foreach}
{/if}
</div>
</div>
{/if}
{/foreach}
{/if}

View File

@ -5,6 +5,7 @@
<div class="panel" id="languagePanel">
<div class="overlay"></div>
<ul class="inner">
<i class="icon icon-cross"></i>
{foreach from=$languages key=k item=language name="languages"}
{if $language.iso_code != $lang_iso}
{assign var=indice_lang value=$language.id_lang}
@ -28,10 +29,10 @@
</ul>
</div>
<a href="#languagePanel" class="hidden-xxs hidden-xs chooseLanguage">
<a href="#languagePanel" class="chooseLanguage">
{*<img src="{$img_lang_dir}{$current_id}.jpg" alt="{$language.iso_code|escape:'html':'UTF-8'}" width="16" height="11" />*}
{$current_lang|strtoupper}
<i class='icon icon-arrow-down hidden-xxs hidden-xs'></i>
<i class='icon icon-arrow-down hidden-sm hidden-xxs hidden-xs'></i>
</a>
</div>

View File

@ -1,5 +1,5 @@
<!-- Block myaccount module -->
<div id="infos-client" class="myaccount {if $logged}logged{/if} hidden-xs hidden-xxs">
<div id="infos-client" class="myaccount {if $logged}logged{/if}">
{if $logged}
<a href="{$link->getPageLink('my-account', true)|escape:'html':'UTF-8'}" title="{l s='My account' mod='blockmyaccount'}" class="valign-middle icon-right">
<i class="icon icon-big icon-user"></i><span>{l s='My account' mod='blockmyaccount'}</span><i class="icon icon-big icon-arrow-down"></i>

View File

@ -9,5 +9,6 @@
<button class="btn" type="submit" name="submit_search"><i class="icon icon-search"></i></button>
</div>
</form>
<div class="overlay"></div>
</div>
<!-- /Block search module TOP -->

View File

@ -29,9 +29,8 @@
<script>
$(document).ready(function() {
if(window.matchMedia("(max-width:767px)").matches) {
owlCarousel('#subcat-ctn',1,1,1,1);
owlCarousel('#subcat-ctn',1,1,1,1,5, 6, 30, true, 30);
}
$(window).resize(function(){
if(window.matchMedia("(max-width:767px)").matches) {
owlCarousel('#subcat-ctn');

View File

@ -1,13 +1,13 @@
<div id="product_{$product.id_product}_{$product.id_product_attribute}_{if $quantityDisplayed > 0}nocustom{else}0{/if}_{$product.id_address_delivery|intval}{if !empty($product.gift)}_gift{/if}_{$product.id_configurator|intval}" class="table-row product-row valign-middle">
<div class="product-infos lg6 md6 xs9">
<div class="product-infos lg6 md6 xs12 xxs12">
<div class="row">
<div class="product-image sm4">
<div class="product-image sm4 xxs4">
<a href="{$link->getProductLink($product.id_product, $product.link_rewrite, $product.category, null, null, $product.id_shop, $product.id_product_attribute)|escape:'html':'UTF-8'}">
<img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'small_default')|escape:'html':'UTF-8'}" alt="{$product.name|escape:'html':'UTF-8'}" />
</a>
</div>
<div class="product-name-ctn sm8">
<div class="product-name-ctn sm8 xxs8">
<a class="product-name" href="{$link->getProductLink($product.id_product, $product.link_rewrite, $product.category, null, null, $product.id_shop, $product.id_product_attribute, false, false, true, {$product.id_configurator|intval})|escape:'html':'UTF-8'}">
{$product.name|escape:'html':'UTF-8'}
</a>

View File

@ -93,7 +93,7 @@
<div id="discount-form" class="discount-form-ctn ">
<form action="{$link->getPageLink('order', true)}" method="post" class="form form-group valign-middle">
<span class="sm5 discount-trigger">{l s='Voucher'}</span>
<div class="sm5 ctn-btn-text">
<div class="sm5 xxs7 ctn-btn-text">
<input type="hidden" name="submitDiscount" class="hidden" />
<input type="text" class="discount-name form-control" id="discount_name" name="discount_name" value="{if isset($discount_name) && $discount_name}{$discount_name}{/if}" />
</div>