diff --git a/frappe/public/scss/website/web_form.scss b/frappe/public/scss/website/web_form.scss index a106fa8f92..88237e3282 100644 --- a/frappe/public/scss/website/web_form.scss +++ b/frappe/public/scss/website/web_form.scss @@ -1,380 +1,387 @@ @import "../common/form"; [data-doctype="Web Form"] { - .page_content { - max-width: 800px; - margin: auto; - - h1 { - font-size: 2.25rem; - margin-top: 0; - margin-bottom: 0; - } - - .web-form-banner-image { - margin: -4rem -14rem 5rem; - padding-top: 3rem; - position: relative; - - img { - position: absolute; - object-fit: cover; + .page-content-wrapper { + .container { + .page-header { width: 100%; - height: 250px; - z-index: -1; - } - } - - .web-form-header { - border: 1px solid var(--dark-border-color); - border-bottom: none; - border-top-left-radius: var(--border-radius-md); - border-top-right-radius: var(--border-radius-md); - background-color: var(--fg-color); - padding: 2rem 2rem 0; - .breadcrumb-container { - padding: 0px; - margin: 0 0 2rem; - - ol.breadcrumb { - padding: 0px; + img { + margin: -1rem 0rem -10.5rem; + object-fit: cover; + width: 100%; + height: 250px; + z-index: -1; } } - .web-form-head { - border-bottom: 1px solid var(--dark-border-color); - padding-bottom: 1.25rem; + .page_content { + max-width: 800px; + margin: auto; - .title { - display: flex; - justify-content: space-between; + h1 { + font-size: 2.25rem; + margin-top: 0; + margin-bottom: 0; } - .web-form-introduction { - color: var(--text-muted); - margin-top: 1.25rem; + .web-form-header { + border: 1px solid var(--dark-border-color); + border-bottom: none; + border-top-left-radius: var(--border-radius-md); + border-top-right-radius: var(--border-radius-md); + background-color: var(--fg-color); + padding: 2rem 2rem 0; - p { - color: var(--text-muted); - } - } - } - } + .breadcrumb-container { + padding: 0px; + margin: 0 0 2rem; - .web-form { - background-color: var(--fg-color); - padding: 1.25rem 2rem 2rem; - border: 1px solid var(--dark-border-color); - border-top: none; - border-bottom-left-radius: var(--border-radius); - border-bottom-right-radius: var(--border-radius); - - .web-form-wrapper { - .form-control { - color: var(--text-color); - background-color: var(--control-bg); - } - - .form-section { - .section-head { - font-weight: bold; - font-size: var(--text-xl); - padding: var(--padding-md) 0; + ol.breadcrumb { + padding: 0px; + } } - } - .form-column { - padding: 0 var(--padding-sm); + .web-form-head { + border-bottom: 1px solid var(--dark-border-color); + padding-bottom: 1.25rem; - &:first-child { - padding-left: 0; - } + .title { + display: flex; + justify-content: space-between; + } - &:last-child { - padding-right: 0; - } + .web-form-introduction { + color: var(--text-muted); + margin-top: 1.25rem; - @include media-breakpoint-down(sm) { - padding: 0; + p { + color: var(--text-muted); + } + } } } - .web-form-skeleton { - .box-group { - display: flex; - gap: 20px; - margin-bottom: 15px; + .web-form { + background-color: var(--fg-color); + padding: 1.25rem 2rem 2rem; + border: 1px solid var(--dark-border-color); + border-top: none; + border-bottom-left-radius: var(--border-radius); + border-bottom-right-radius: var(--border-radius); + + .web-form-wrapper { + .form-control { + color: var(--text-color); + background-color: var(--control-bg); + } - .box-container { - width: 100%; + .form-section { + .section-head { + font-weight: bold; + font-size: var(--text-xl); + padding: var(--padding-md) 0; + } + } + + .form-column { + padding: 0 var(--padding-sm); - .box { - background-color: var(--control-bg); - border-radius: var(--border-radius); + &:first-child { + padding-left: 0; } - .box-label { - height: 20px; - width: 100px; - margin-bottom: 0.5rem; + &:last-child { + padding-right: 0; } - .box-area { - height: 34px; - width: 100%; + @include media-breakpoint-down(sm) { + padding: 0; } } - } - } - } - .web-form-footer { - margin-top: 1rem; + .web-form-skeleton { + .box-group { + display: flex; + gap: 20px; + margin-bottom: 15px; - .web-form-actions { - display: flex; - justify-content: space-between; + .box-container { + width: 100%; - .btn { - font-size: var(--text-base); - } + .box { + background-color: var(--control-bg); + border-radius: var(--border-radius); + } - .btn-link { - padding-left: 0px; - color: var(--text-color); + .box-label { + height: 20px; + width: 100px; + margin-bottom: 0.5rem; + } - &:hover { - color: var(--text-on-light-blue); + .box-area { + height: 34px; + width: 100%; + } + } + } } } - .left-area { - display: flex; - flex: 1; - } + .web-form-footer { + margin-top: 1rem; - .center-area { - display: flex; - align-items: center; - font-size: var(--text-base); - - .slides-progress { + .web-form-actions { display: flex; + justify-content: space-between; - .slide-step { - @include flex(flex, center, center, null); - - height: 18px; - width: 18px; - border-radius: var(--border-radius-full); - border: 1px solid var(--gray-300); - margin: 0 var(--margin-xs); - background-color: var(--card-bg); - - .slide-step-indicator { - height: 6px; - width: 6px; - background-color: var(--gray-300); - border-radius: var(--border-radius-full); - } + .btn { + font-size: var(--text-base); + } - .slide-step-complete { - display: none; + .btn-link { + padding-left: 0px; + color: var(--text-color); - .icon-xs { - height: 10px; - width: 10px; - } + &:hover { + color: var(--text-on-light-blue); } + } - &.active { - border: 1px solid var(--primary); + .left-area { + display: flex; + flex: 1; + } - .slide-step-indicator { - display: block; - background-color: var(--primary); - } - } + .center-area { + display: flex; + align-items: center; + font-size: var(--text-base); + + .slides-progress { + display: flex; + + .slide-step { + @include flex(flex, center, center, null); + + height: 18px; + width: 18px; + border-radius: var(--border-radius-full); + border: 1px solid var(--gray-300); + margin: 0 var(--margin-xs); + background-color: var(--card-bg); + + .slide-step-indicator { + height: 6px; + width: 6px; + background-color: var(--gray-300); + border-radius: var(--border-radius-full); + } - &.step-success:not(.active) { - background-color: var(--primary); - border: 1px solid var(--primary); + .slide-step-complete { + display: none; - .slide-step-indicator { - display: none; - } + .icon-xs { + height: 10px; + width: 10px; + } + } - .slide-step-complete { - display: flex; + &.active { + border: 1px solid var(--primary); - .icon use { - stroke-width: 2; - stroke: var(--white); + .slide-step-indicator { + display: block; + background-color: var(--primary); + } + } + + &.step-success:not(.active) { + background-color: var(--primary); + border: 1px solid var(--primary); + + .slide-step-indicator { + display: none; + } + + .slide-step-complete { + display: flex; + + .icon use { + stroke-width: 2; + stroke: var(--white); + } + } } } } } + + .right-area { + display: flex; + justify-content: flex-end; + flex: 1; + } } } + } - .right-area { + .attachments { + margin-top: 2rem; + padding: 2rem; + border-radius: var(--border-radius); + border: 1px solid var(--dark-border-color); + + .attachment { display: flex; - justify-content: flex-end; - flex: 1; + justify-content: space-between; + gap: 6px; + color: var(--text-muted); + font-size: var(--text-md); + + &:hover { + text-decoration: none; + .file-name span { + text-decoration: underline; + } + } } } - } - } - .attachments { - margin-top: 2rem; - padding: 2rem; - border-radius: var(--border-radius); - border: 1px solid var(--dark-border-color); - - .attachment { - display: flex; - justify-content: space-between; - gap: 6px; - color: var(--text-muted); - font-size: var(--text-md); - - &:hover { - text-decoration: none; - .file-name span { - text-decoration: underline; + .success-page { + background-color: var(--fg-color); + padding: 2rem; + border: 1px solid var(--dark-border-color); + border-radius: var(--border-radius); + text-align: center; + + svg.icon { + width: 5rem; + height: 5rem; + margin: 1rem; } - } - } - } - .success-page { - background-color: var(--fg-color); - padding: 2rem; - border: 1px solid var(--dark-border-color); - border-radius: var(--border-radius); - text-align: center; - - svg.icon { - width: 5rem; - height: 5rem; - margin: 1rem; - } + h2 { + margin-top: 0; + margin-bottom: 0; + } - h2 { - margin-top: 0; - margin-bottom: 0; - } + .success-message { + margin-bottom: 1.6rem; + } + } - .success-message { - margin-bottom: 1.6rem; - } - } + .web-list-container { + min-height: 470px; + border: 1px solid var(--dark-border-color); + border-radius: var(--border-radius-md); + padding: 2rem; - .web-list-container { - min-height: 470px; - border: 1px solid var(--dark-border-color); - border-radius: var(--border-radius-md); - padding: 2rem; + .web-list-header { + display: flex; + justify-content: space-between; + border-bottom: 1px solid var(--dark-border-color); + padding-bottom: 1.25rem; - .web-list-header { - display: flex; - justify-content: space-between; - border-bottom: 1px solid var(--dark-border-color); - padding-bottom: 1.25rem; + .web-list-actions { + align-self: center; + } + } - .web-list-actions { - align-self: center; - } - } + .web-list-filters { + display: flex; + flex-wrap: wrap; + margin: 1.25rem 0; + gap: 10px; + + .form-group.frappe-control { + min-width: 145px; + padding: 0px; + margin: 0px; + align-self: center; + + .checkbox { + .input-xs { + height: var(--checkbox-size); + } - .web-list-filters { - display: flex; - flex-wrap: wrap; - margin: 1.25rem 0; - gap: 10px; - - .form-group.frappe-control { - min-width: 145px; - padding: 0px; - margin: 0px; - align-self: center; - - .checkbox { - .input-xs { - height: var(--checkbox-size); - } + .help-box { + display: none; + } + } - .help-box { - display: none; + .input-xs { + height: 28px; + line-height: 1.2; + } } } - .input-xs { - height: 28px; - line-height: 1.2; - } - } - } + .web-list-table { + overflow: auto; - .web-list-table { - overflow: auto; + .table { + border-bottom: 1px solid var(--border-color); + border-top: 1px solid var(--border-color); - .table { - border-bottom: 1px solid var(--border-color); - border-top: 1px solid var(--border-color); + thead tr { + th { + border: 0; + font-size: 13px; + font-weight: normal; + color: var(--text-muted); - thead tr { - th { - border: 0; - font-size: 13px; - font-weight: normal; - color: var(--text-muted); + input[type="checkbox"] { + margin-bottom: -2px; + } + } + } + + tbody tr { + color: var(--text-color); + cursor: pointer; + + td { + font-size: 13px; + border-top: 1px solid var(--border-color); + } + } input[type="checkbox"] { - margin-bottom: -2px; + margin-top: 2px; } - } - } - tbody tr { - color: var(--text-color); - cursor: pointer; + .list-col-checkbox { + width: 1rem; + } - td { - font-size: 13px; - border-top: 1px solid var(--border-color); + .list-col-serial { + width: 1.5rem; + } } - } - - input[type="checkbox"] { - margin-top: 2px; - } - .list-col-checkbox { - width: 1rem; + .no-result { + min-height: 330px; + border-top: 1px solid var(--border-color); + } } - .list-col-serial { - width: 1.5rem; + .web-list-footer { + text-align: right; } } - .no-result { - min-height: 330px; - border-top: 1px solid var(--border-color); + .breadcrumb-container.container { + @include media-breakpoint-up(sm) { + padding-left: 0; + } } } - .web-list-footer { - text-align: right; - } - } - - .breadcrumb-container.container { - @include media-breakpoint-up(sm) { + @include media-breakpoint-down(lg) { padding-left: 0; + padding-right: 0; } } } diff --git a/frappe/website/doctype/web_form/templates/web_form.html b/frappe/website/doctype/web_form/templates/web_form.html index 7c4dc6d94d..a3ebc35e69 100644 --- a/frappe/website/doctype/web_form/templates/web_form.html +++ b/frappe/website/doctype/web_form/templates/web_form.html @@ -2,6 +2,13 @@ {% block breadcrumbs %}{% endblock %} +{% block header %} + {% if banner_image %} + + Banner Image + {% endif %} +{% endblock %} + {% macro header_buttons() %} {% if allow_edit and in_view_mode %} @@ -40,13 +47,6 @@ {% endmacro %} {% block page_content %} - - {% if banner_image %} -
- Banner Image -
- {% endif %} -