From ad1167c798f93d3d1021045a9bbf32ccaac05e66 Mon Sep 17 00:00:00 2001 From: Florian Eisenmenger Date: Wed, 5 Jul 2023 10:56:26 +0200 Subject: [PATCH] css --- .../public/assets/scss/components/_basic.scss | 218 +++++++- httpdocs/public/assets/scss/styles.css | 116 ++++- httpdocs/public/assets/scss/styles.css.map | 2 +- httpdocs/src/Controller/AdminController.php | 2 +- httpdocs/src/Controller/UserController.php | 2 +- httpdocs/src/Repository/UserRepository.php | 4 +- .../templates/pages/risk_analysis.html.twig | 2 +- httpdocs/templates/pages/start.html.twig | 18 +- httpdocs/templates/pages/worksheet.html.twig | 84 +--- httpdocs/templates/pdf/pdf.html.twig | 473 +----------------- .../templates/snippets/listing-form.html.twig | 6 +- .../snippets/worksheet-result.html.twig | 209 ++++++++ 12 files changed, 586 insertions(+), 550 deletions(-) create mode 100644 httpdocs/templates/snippets/worksheet-result.html.twig diff --git a/httpdocs/public/assets/scss/components/_basic.scss b/httpdocs/public/assets/scss/components/_basic.scss index a38fb5f..b063cee 100644 --- a/httpdocs/public/assets/scss/components/_basic.scss +++ b/httpdocs/public/assets/scss/components/_basic.scss @@ -40,6 +40,7 @@ textarea:-ms-input-placeholder { padding: 3rem 0; min-height: 600px; } + h1 { font-size: 2rem; line-height: 2.5rem; @@ -48,7 +49,15 @@ textarea:-ms-input-placeholder { font-size: 1.25rem; line-height: 1.5rem; } + + span { + font-size: 1rem; + @media (max-width: 767px) { + font-size: 0.875rem; + } + } } + h2, h3 { font-size: 1.5rem; line-height: 2rem; @@ -58,11 +67,20 @@ textarea:-ms-input-placeholder { line-height: 1.25rem; } } + h3 { font-weight: bold; text-transform: uppercase; } - h4, h5, h6 { + + h4 { + font-size: 1.25rem; + line-height: 1.5rem; + padding: 0 0 0.5rem 0; + font-weight: bold; + } + + h5, h6 { font-size: 1rem; line-height: 1.25rem; padding: 0 0 0.5rem 0; @@ -71,9 +89,11 @@ textarea:-ms-input-placeholder { line-height: 1rem; } } + p, ul, ol, table { margin: 0 0 1.5rem 0; } + p { &.img { img { @@ -84,27 +104,34 @@ textarea:-ms-input-placeholder { } } } + .mini-nav { padding: 0 0 1.5rem 0; + a { color: $color-bim-100; + &:before { content: "<< "; } + &:hover { text-decoration: none; } } } + .container { padding: 0 0 1.5rem 0; } + .logo-bar { li { overflow: hidden; padding: 0 0 10px 0; display: flex; align-items: center; + img { //width: 120px; float: left; @@ -115,6 +142,7 @@ textarea:-ms-input-placeholder { margin-bottom: 20px; } } + p { //margin-left: 150px; @media (max-width: 767px) { @@ -137,25 +165,30 @@ textarea:-ms-input-placeholder { text-decoration: none; display: inline-block; @include transition; + &:hover { background: $color-bim-80; border-color: $color-bim-80; color: $color-white; } + &[disabled] { opacity: 0.5; background: $color-black; border-color: $color-black; cursor: default; } + &--inverse { background: $color-white; color: $color-bim-100; } + &--correct { border-color: $color-bim-green; background: $color-bim-green; color: $color-white; + &:hover { background: $color-white; border-color: $color-bim-green; @@ -169,31 +202,37 @@ textarea:-ms-input-placeholder { display: flex; justify-content: flex-start; flex-wrap: wrap; + #header & { @media (max-width: 500px) { padding-top: 20px; } } + &.form--row-right { justify-content: flex-end; margin-right: 5%; } } + &--wrapper { width: 270px; padding: 0 0 1.5rem 0; display: flex; flex-wrap: wrap; align-items: flex-end; + #header & { padding-bottom: 0; width: 200px; + &.fw--no-width { width: auto; @media (max-width: 412px) { margin-top: 10px; } } + @media (max-width: 768px) { width: 120px; } @@ -201,11 +240,13 @@ textarea:-ms-input-placeholder { width: 110px; } } + &.mandatory { label { font-weight: 700; } } + label { display: block; padding: 0 0 0.25rem 0; @@ -213,15 +254,18 @@ textarea:-ms-input-placeholder { line-height: 1.5rem; width: 100%; } + input { display: block; font-size: 1rem; line-height: 1.5rem; width: 90%; + &[type='checkbox'] { width: auto; } } + textarea { display: block; font-size: 1rem; @@ -237,15 +281,18 @@ textarea:-ms-input-placeholder { } } } + &--legal { padding: 0 0 1.5rem 0; - .form--wrapper { + + .form--wrapper { width: auto; max-width: 80%; @media (max-width: 1048px) { max-width: none; } } + .form-wrapper--container { display: flex; flex-wrap: nowrap; @@ -255,6 +302,7 @@ textarea:-ms-input-placeholder { display: block; } } + .form--checkbox { input { float: left; @@ -262,9 +310,11 @@ textarea:-ms-input-placeholder { } } } + &--catalogue { border-top: 2px solid $color-black; padding: 0 0 1.5rem 0; + .form-wrapper--container { display: flex; flex-wrap: nowrap; @@ -274,16 +324,20 @@ textarea:-ms-input-placeholder { display: block; } } + h3 { text-align: center; width: 100%; } + .question-count { padding: 1.5rem 0; position: relative; + p { padding: 0; } + .progressbar { position: absolute; left: 0; @@ -291,16 +345,18 @@ textarea:-ms-input-placeholder { height: 12px; width: 100%; background: #ddd; + div { position: absolute; left: 0; bottom: 0; height: 12px; width: 0; - background: green; + background: green; } } } + .catalogue-nav { display: flex; justify-content: space-between; @@ -317,30 +373,36 @@ textarea:-ms-input-placeholder { justify-content: center; display: flex; flex-wrap: wrap; + &:first-of-type { order: 2; } } - .btn { + .btn { order: 1; margin: 10px 10px 0 10px; } } } + .form--wrapper { width: auto; justify-content: center; + .btn { float: right; } + &.left { justify-content: flex-start; } } + h2 { font-size: 2rem; line-height: 3rem; } + label { font-size: 1.5rem; line-height: 2rem; @@ -349,9 +411,11 @@ textarea:-ms-input-placeholder { line-height: 1.25rem; } } + .form--checkbox { label { - display: flex; + display: flex; + input { display: inline; width: auto; @@ -363,10 +427,12 @@ textarea:-ms-input-placeholder { } } } + &--question { border-top: 2px solid $color-black; padding-top: 1.5rem; } + .alert { font-size: 0.75rem; line-height: 1rem; @@ -387,12 +453,15 @@ textarea:-ms-input-placeholder { display: none; color: $color-white; font-size: 1.5rem; + &.success { background: green; } + &.failure { background: $color-bim-100; } + p { padding: 1.5rem; } @@ -404,11 +473,14 @@ textarea:-ms-input-placeholder { display: flex; justify-content: space-between; flex-wrap: wrap; + .col-box { width: 60%; + &:nth-child(2) { width: 30%; } + .col-box { width: 48%; } @@ -418,6 +490,7 @@ textarea:-ms-input-placeholder { #main { .form--catalogue { padding-top: 20px; + h2 { padding-bottom: 10px; } @@ -426,10 +499,12 @@ textarea:-ms-input-placeholder { .form-fields { padding: 0 0 30px 0; + label { display: block; font-size: 16px; } + input, select { display: block; width: 100%; @@ -441,49 +516,180 @@ textarea:-ms-input-placeholder { } .result-box { - background: rgba(118,127,134,.3); + background: rgba(118, 127, 134, .3); padding: 30px 20px; + dl { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 0 0 20px 0; + dt, dd { padding: 0 0 10px 0; margin: 0 0 10px 0; border-bottom: 1px solid #000; + &:last-of-type { border-bottom: none; } } + dt { flex-basis: 75%; font-weight: normal; } + dd { flex-basis: 25%; font-weight: bold; text-align: right; } } + h3 { text-align: left; } + .btn { margin: 0 auto; } + .result-existing { display: none; } + .result-not-existing { display: block; } + &.result-existing { .result-existing { display: block; } + .result-not-existing { display: none; } } } + +ol.worksheets { + padding-left: 26px; + + li { + padding-bottom: 10px; + list-style: decimal-leading-zero; + + } + + a { + text-decoration: none; + + &:hover { + color: #e2003c; + text-decoration: underline; + } + } +} + +#main { + table.mini-table { + width: 50%; + margin: 0 0 4rem 0; + border-collapse: collapse; + @media (max-width: 1200px) { + width: 75%; + } + @media (max-width: 768px) { + width: 100%; + } + + td { + vertical-align: top; + padding: 10px 0; + border-bottom: 1px solid #000; + + &:last-child { + text-align: right; + font-weight: bold; + } + span { + display: block; + padding: 0 10px 0 0; + } + } + + &.fifty-fifty { + td { + width: 50%; + } + } + } + + .worksheet-table { + overflow: auto; + height: 500px; + margin-bottom: 30px; + + table { + width: 100%; + min-width: 1200px; + padding: 0; + margin: 0 0 4rem 0; + border-collapse: collapse; + } + + th { + padding: 0 0 20px 0; + background: #d5d8da; + vertical-align: bottom; + font-weight: bold; + height: 200px; + position: sticky; + top: 0; + + span { + display: block; + transform: rotate(-90deg); + transform-origin: left center; + position: absolute; + left: 50%; + bottom: 0; + } + + &:last-child, + &:nth-child(2), + &:nth-child(3) { + span { + transform: none; + transform-origin: inherit; + position: static; + left: auto; + bottom: auto; + } + } + } + + td { + vertical-align: top; + border-bottom: 1px solid rgba(118, 127, 134, .3); + padding: 15px 0; + text-align: center; + + &:nth-child(2) { + width: 30%; + } + + &:last-child { + width: 20%; + } + + &:last-child, + &:nth-child(2), + &:nth-child(3) { + text-align: left; + } + } + } +} diff --git a/httpdocs/public/assets/scss/styles.css b/httpdocs/public/assets/scss/styles.css index d2c73cd..66041d5 100644 --- a/httpdocs/public/assets/scss/styles.css +++ b/httpdocs/public/assets/scss/styles.css @@ -242,6 +242,14 @@ textarea:-ms-input-placeholder { line-height: 1.5rem; } } +#main h1 span { + font-size: 1rem; +} +@media (max-width: 767px) { + #main h1 span { + font-size: 0.875rem; + } +} #main h2, #main h3 { font-size: 1.5rem; line-height: 2rem; @@ -257,13 +265,19 @@ textarea:-ms-input-placeholder { font-weight: bold; text-transform: uppercase; } -#main h4, #main h5, #main h6 { +#main h4 { + font-size: 1.25rem; + line-height: 1.5rem; + padding: 0 0 0.5rem 0; + font-weight: bold; +} +#main h5, #main h6 { font-size: 1rem; line-height: 1.25rem; padding: 0 0 0.5rem 0; } @media (max-width: 767px) { - #main h4, #main h5, #main h6 { + #main h5, #main h6 { font-size: 0.875rem; line-height: 1rem; } @@ -687,6 +701,104 @@ textarea:-ms-input-placeholder { display: none; } +ol.worksheets { + padding-left: 26px; +} +ol.worksheets li { + padding-bottom: 10px; + list-style: decimal-leading-zero; +} +ol.worksheets a { + text-decoration: none; +} +ol.worksheets a:hover { + color: #e2003c; + text-decoration: underline; +} + +#main table.mini-table { + width: 50%; + margin: 0 0 4rem 0; + border-collapse: collapse; +} +@media (max-width: 1200px) { + #main table.mini-table { + width: 75%; + } +} +@media (max-width: 768px) { + #main table.mini-table { + width: 100%; + } +} +#main table.mini-table td { + vertical-align: top; + padding: 10px 0; + border-bottom: 1px solid #000; +} +#main table.mini-table td:last-child { + text-align: right; + font-weight: bold; +} +#main table.mini-table td span { + display: block; + padding: 0 10px 0 0; +} +#main table.mini-table.fifty-fifty td { + width: 50%; +} +#main .worksheet-table { + overflow: auto; + height: 500px; + margin-bottom: 30px; +} +#main .worksheet-table table { + width: 100%; + min-width: 1200px; + padding: 0; + margin: 0 0 4rem 0; + border-collapse: collapse; +} +#main .worksheet-table th { + padding: 0 0 20px 0; + background: #d5d8da; + vertical-align: bottom; + font-weight: bold; + height: 200px; + position: sticky; + top: 0; +} +#main .worksheet-table th span { + display: block; + transform: rotate(-90deg); + transform-origin: left center; + position: absolute; + left: 50%; + bottom: 0; +} +#main .worksheet-table th:last-child span, #main .worksheet-table th:nth-child(2) span, #main .worksheet-table th:nth-child(3) span { + transform: none; + transform-origin: inherit; + position: static; + left: auto; + bottom: auto; +} +#main .worksheet-table td { + vertical-align: top; + border-bottom: 1px solid rgba(118, 127, 134, 0.3); + padding: 15px 0; + text-align: center; +} +#main .worksheet-table td:nth-child(2) { + width: 30%; +} +#main .worksheet-table td:last-child { + width: 20%; +} +#main .worksheet-table td:last-child, #main .worksheet-table td:nth-child(2), #main .worksheet-table td:nth-child(3) { + text-align: left; +} + header { box-shadow: 0 1px 10px -6px rgba(0, 0, 0, 0.42), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 4px 5px -2px rgba(0, 0, 0, 0.1); position: fixed; diff --git a/httpdocs/public/assets/scss/styles.css.map b/httpdocs/public/assets/scss/styles.css.map index 27300fb..898582e 100644 --- a/httpdocs/public/assets/scss/styles.css.map +++ b/httpdocs/public/assets/scss/styles.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["components/_reset.scss","_variables.scss","components/_basic.scss","_mixins.scss","components/_header.scss","components/_footer.scss","components/_listing.scss"],"names":[],"mappings":"AAAA;AACA;EACE;EACA;EACA;EACA;EACA,mWAKmE;;AAGrE;AACA;EACE;EACA;EACA;EACA;EACA,+UAK+D;;AAIjE;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EAME;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;EAIE;;;AAIF;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;AAEA;AAAA;AAAA;AAAA;EAIE;;;AAGF;EACE;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAyBE;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EAME;;;AAGF;AAAA;EAEE;;;AAIA;AAAA;AAAA;AAAA;EAIE;EACA;;;AAIJ;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE,YCzKY;ED0KZ;EACA;;AACA;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AE3MF;EACE;;AACA;EAFF;IAGI;;;AAEF;EALF;IAMI;;;;AAIJ;AAAA;EAEE,ODTmB;ECUnB;;;AAGF;AAAA;EAEE,ODfmB;ECgBnB;;;AAGF;AAAA;EAEE,ODrBmB;ECsBnB;;;AAGF;AAAA;EAEE,OD3BmB;EC4BnB;;;AAIA;EACE;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;;AACA;EAJF;IAKI;IACA;;;AAGJ;EACE;EACA;EACA;;AACA;EAJF;IAKI;IACA;;;AAGJ;EACE;EACA;;AAEF;EACE;EACA;EACA;;AACA;EAJF;IAKI;IACA;;;AAGJ;EACE;;AAIE;EACE;EACA;EACA;EACA;;AAIN;EACE;;AACA;EACE,ODrFU;;ACsFV;EACE;;AAEF;EACE;;AAIN;EACE;;AAGA;EACE;EACA;EACA;EACA;;AACA;EAEE;EACA;EACA;;AACA;EALF;IAMI;IACA;;;AAKF;EAFF;IAGI;;;;AAOV;EACE;EACA,YD7Hc;EC8Hd,ODlIY;ECmIZ;EACA;EACA;EACA;EACA;EACA;EACA;ECxIA;;AD0IA;EACE,YDtIW;ECuIX,cDvIW;ECwIX,OD9IU;;ACgJZ;EACE;EACA,YDjJU;ECkJV,cDlJU;ECmJV;;AAEF;EACE,YDvJU;ECwJV,ODpJY;;ACsJd;EACE,cD7Ic;EC8Id,YD9Ic;EC+Id,OD7JU;;AC8JV;EACE,YD/JQ;ECgKR,cDlJY;ECmJZ,ODnJY;;;ACyJhB;EACE;EACA;EACA;;AAEE;EADF;IAEI;;;AAGJ;EACE;EACA;;AAGJ;EACE;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;;AACA;EACE;;AACA;EAFF;IAGI;;;AAGJ;EATF;IAUI;;;AAEF;EAZF;IAaI;;;AAIF;EACE;;AAGJ;EACE;EACA;EACA;EACA;EACA;;AAEF;EACE;EACA;EACA;EACA;;AACA;EACE;;AAGJ;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EAPF;IAQI;;;AAEF;EAVF;IAWI;;;AAIN;EACE;;AACA;EACE;EACA;;AACA;EAHF;IAII;;;AAGJ;EACE;EACA;EACA;EACA;;AACA;EALF;IAMI;;;AAIF;EACE;EACA;;AAIN;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;AACA;EALF;IAMI;;;AAGJ;EACE;EACA;;AAEF;EACE;EACA;;AACA;EACE;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AAIN;EACE;EACA;EACA;;AACA;EAJF;IAKI;IACA;;EACA;IACE;IACA;;EAEF;IACE;IACA;IACA;IACA;;EACA;IACE;;EAGJ;IACE;IACA;;;AAIN;EACE;EACA;;AACA;EACE;;AAEF;EACE;;AAGJ;EACE;EACA;;AAEF;EACE;EACA;;AACA;EAHF;IAII;IACA;;;AAIF;EACE;;AACA;EACE;EACA;EACA;;AACA;EAJF;IAKI;;;AAMV;EACE;EACA;;AAEF;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,ODnYY;ECoYZ;;AACA;EACE;;AAEF;EACE,YDrYY;;ACuYd;EACE;;;AAIJ;AAEA;EACE;EACA;EACA;;AACA;EACE;;AACA;EACE;;AAEF;EACE;;;AAMJ;EACE;;AACA;EACE;;;AAKN;EACE;;AACA;EACE;EACA;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;AACA;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;;AAGJ;EACE;EACA;;AAEF;EACE;EACA;EACA;;AAGJ;EACE;;AAEF;EACE;;AAEF;EACE;;AAEF;EACE;;AAGA;EACE;;AAEF;EACE;;;AEreN;EACE;EACA;EACA;EACA;EACA;EACA;EACA,YHPY;;AGQZ;EACE;EACA;EACA;EACA;;AACA;EALF;IAMI;IACA;;;AAEF;EATF;IAUI;IACA;;;AAEF;EAbF;IAcI;;;AAEF;EACE;;AACA;EAFF;IAGI;;;AAEF;EACE;EACA;EACA;EACA;EACA;;AACA;EANF;IAOI;IACA;;;AAEF;EACE;EACA;EACA;;AACA;EAJF;IAKI;IACA;;;AAGJ;EACE;;AAKJ;EADF;IAEI;;;AAIN;EACE;;AACA;EAFF;IAGI;;;AAGJ;EACE;;AClEJ;EACE;EACA,OJFY;;AIGZ;EACE;;AAEF;EACE;EACA;;AAEF;EACE;;AACA;EACE;;AAEF;EACE;;;AChBN;EACE;;;AAOA;EACE,YLIW;EKHX;EACA;;AACA;EACE,YLDS;;AKGX;EACE;;AAGJ;EACE;EACA;EACA;EACA;;AACA;EALF;IAMI;;;AAEF;EACE;;AAEF;EACE;EACA;EACA;EACA;;AACA;EACE;;AACA;EAFF;IAGI;IACA;IACA;;;AAGJ;EACE;;AACA;EAFF;IAGI;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAOZ;EACE;;AAKF;EACE","file":"styles.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["components/_reset.scss","_variables.scss","components/_basic.scss","_mixins.scss","components/_header.scss","components/_footer.scss","components/_listing.scss"],"names":[],"mappings":"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EACA;;AACA;EAHF;IAII;IACA;;;AAKF;EACE;;AAEA;EACE;EACA;EACA;;AACA;EAJF;IAKI;;;AAOV;EACE;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,ODrcY;ECscZ;;AAEA;EACE;;AAGF;EACE,YDzcY;;AC4cd;EACE;;;AAIJ;AAEA;EACE;EACA;EACA;;AAEA;EACE;;AAEA;EACE;;AAGF;EACE;;;AAMJ;EACE;;AAEA;EACE;;;AAKN;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAIJ;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAIA;EACE;;AAGF;EACE;;;AAKN;EACE;;AAEA;EACE;EACA;;AAIF;EACE;;AAEA;EACE;EACA;;;AAMJ;EACE;EACA;EACA;;AACA;EAJF;IAKI;;;AAEF;EAPF;IAQI;;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAEF;EACE;EACA;;AAKF;EACE;;AAKN;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AAMA;EACE;EACA;EACA;EACA;EACA;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EAGE;;;AElrBR;EACE;EACA;EACA;EACA;EACA;EACA;EACA,YHPY;;AGQZ;EACE;EACA;EACA;EACA;;AACA;EALF;IAMI;IACA;;;AAEF;EATF;IAUI;IACA;;;AAEF;EAbF;IAcI;;;AAEF;EACE;;AACA;EAFF;IAGI;;;AAEF;EACE;EACA;EACA;EACA;EACA;;AACA;EANF;IAOI;IACA;;;AAEF;EACE;EACA;EACA;;AACA;EAJF;IAKI;IACA;;;AAGJ;EACE;;AAKJ;EADF;IAEI;;;AAIN;EACE;;AACA;EAFF;IAGI;;;AAGJ;EACE;;AClEJ;EACE;EACA,OJFY;;AIGZ;EACE;;AAEF;EACE;EACA;;AAEF;EACE;;AACA;EACE;;AAEF;EACE;;;AChBN;EACE;;;AAOA;EACE,YLIW;EKHX;EACA;;AACA;EACE,YLDS;;AKGX;EACE;;AAGJ;EACE;EACA;EACA;EACA;;AACA;EALF;IAMI;;;AAEF;EACE;;AAEF;EACE;EACA;EACA;EACA;;AACA;EACE;;AACA;EAFF;IAGI;IACA;IACA;;;AAGJ;EACE;;AACA;EAFF;IAGI;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEE;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAOZ;EACE;;AAKF;EACE","file":"styles.css"} \ No newline at end of file diff --git a/httpdocs/src/Controller/AdminController.php b/httpdocs/src/Controller/AdminController.php index 8c3363a..a627bd9 100644 --- a/httpdocs/src/Controller/AdminController.php +++ b/httpdocs/src/Controller/AdminController.php @@ -230,7 +230,7 @@ class AdminController extends AbstractController if ($worksheet === null) { return $this->json('Katalog exitiert nicht', 409); } - $dompdf = UserRepository::renderCatalogue($twig, $worksheet); + $dompdf = UserRepository::renderWorksheetPDF($twig, $worksheet); // Output the generated PDF to Browser (force download) $fileName = "Arbeitsblatt_".$worksheet->getUser()->getId()."_".$worksheet->getCreationDate()->format('Y-m-d_H-i'); $dompdf->stream($fileName, [ diff --git a/httpdocs/src/Controller/UserController.php b/httpdocs/src/Controller/UserController.php index d4b06de..3ce2534 100644 --- a/httpdocs/src/Controller/UserController.php +++ b/httpdocs/src/Controller/UserController.php @@ -221,7 +221,7 @@ class UserController extends AbstractController throw new \Exception('not allowed or not exists'); } - $dompdf = UserRepository::renderCatalogue($twig, $worksheet); + $dompdf = UserRepository::renderWorksheetPDF($twig, $worksheet); // Output the generated PDF to Browser (force download) $fileName = "Arbeitskarte_".$worksheet->getCreationDate()->format('Y-m-d_H-i'); diff --git a/httpdocs/src/Repository/UserRepository.php b/httpdocs/src/Repository/UserRepository.php index 7a3433a..ec660fe 100644 --- a/httpdocs/src/Repository/UserRepository.php +++ b/httpdocs/src/Repository/UserRepository.php @@ -49,7 +49,7 @@ class UserRepository extends ServiceEntityRepository /** * Renders user catalogue */ - public static function renderCatalogue(Environment $twig, UserWorksheet $worksheet) + public static function renderWorksheetPDF(Environment $twig, UserWorksheet $worksheet) { // Configure Dompdf according to your needs $pdfOptions = new Options(); @@ -62,7 +62,7 @@ class UserRepository extends ServiceEntityRepository // Retrieve the HTML generated in our twig file - $html = $twig->render('pages/worksheet.html.twig', + $html = $twig->render('pdf/pdf.html.twig', [ 'worksheet' => $worksheet, 'isPdf' => true diff --git a/httpdocs/templates/pages/risk_analysis.html.twig b/httpdocs/templates/pages/risk_analysis.html.twig index a24612d..8b9e7ad 100644 --- a/httpdocs/templates/pages/risk_analysis.html.twig +++ b/httpdocs/templates/pages/risk_analysis.html.twig @@ -71,7 +71,7 @@ -

Weitere Angaben

+

Zyklus und Bandbreite

diff --git a/httpdocs/templates/pages/start.html.twig b/httpdocs/templates/pages/start.html.twig index c189ca2..bcc3e4d 100644 --- a/httpdocs/templates/pages/start.html.twig +++ b/httpdocs/templates/pages/start.html.twig @@ -20,13 +20,15 @@
-

Ihre bisher abgeschlossenen Arbeitskarten:

- + {% if (worksheets | length > 0) %} +

Ihre bisher abgeschlossenen Arbeitskarten:

+
    + {% for worksheet in worksheets %} +
  1. + {{ worksheet.creationDate|date("d.m.Y H:i") }} | {{ worksheet.dinNumber }} - {{ worksheet.dinAssetName }} +
  2. + {% endfor %} +
+ {% endif %} {% endblock %} diff --git a/httpdocs/templates/pages/worksheet.html.twig b/httpdocs/templates/pages/worksheet.html.twig index 3bcfe79..902be8f 100644 --- a/httpdocs/templates/pages/worksheet.html.twig +++ b/httpdocs/templates/pages/worksheet.html.twig @@ -3,77 +3,17 @@ {% block title %}MPP-Tool{% endblock %} {% block body %} -

Arbeitsblatt (erstellt am: {{ worksheet.creationDate|date("d.m.Y H:i") }})

- -
-
DIN
-
{{ worksheet.dinNumber }}
-
Anlage
-
{{ worksheet.dinAssetName }}
-
- -

Risikoanalyse

-
-
Wie hoch ist die Ausfallwahrscheinlichkeit?
-
{{ worksheet.failureProbability }}
-
Wie hoch ist der Schaden bei Ausfall?
-
{{ worksheet.failureDamage }}
-
- -

Optimierungsckeck

-
-
Wird durch die Wartung der Abnutzungsvorrat positiv beeinflusst?
-
{% if worksheet.maintenanceAdvantage == 1 %}Ja{% else %}nein{% endif %}
-
Kann durch eine Inspektion der Zustand der Anlage erkannt werden?
-
{% if worksheet.inspectionAdvantage == 1 %}Ja{% else %}nein{% endif %}
-
Genügt eine einfache Sichtkontrolle im Rahmen des regelmäßigen Rundgangs?
-
{% if worksheet.checkAdvantage == 1 %}Ja{% else %}nein{% endif %}
-
-
-
Aktueller Zyklus (in Monaten)
-
{{ worksheet.userCycleMonths }}
-
Bandbreite Anlage
-
{% if worksheet.bandwidth is not null %}{{ worksheet.bandwidth }}{% else %}-{% endif %}
-
- -

Ergebnis

-
-
Empfehlung Wartung (in Monaten)
-
{{ worksheet.recMaintenanceCycleMonths }}
-
Empfehlung Inspektion (in Monaten)
-
{{ worksheet.recInspectionCycleMonths }}
-
Einsparpotential p.a. (%)
-
{{ worksheet.deviationPercentage }}
-
Einsparpotential p.a. (€)
-
{{ worksheet.deviationCosts }}
-
- -

Tätigkeiten

-
- {% for task in worksheet.userWorkSheetTasks %} -
Abgrenzung
-
{% if task.delimitation is not null %}{{ task.delimitation }}{% else %}-{% endif %}
-
Tätigkeit
-
{{ task.task }}
-
Inspektion
-
{{ task.inspection }}
-
Wartung
-
{{ task.maintenance }}
-
Instandsetzung
-
{{ task.service }}
-
Sachverständiger
-
{{ task.expert }}
-
Sachkundige
-
{{ task.specialist }}
-
Fachkraft
-
{{ task.skilledPersonnel }}
-
Normative Grundlage
-
{{ task.norm }}
- {% endfor %} -
- - {% if isPdf == false %} - Arbeitskarte als PDF herunterladen - {% endif %} + +

Arbeitsblatt (erstellt am: {{ worksheet.creationDate|date("d.m.Y H:i") }})

+ {% include 'snippets/worksheet-result.html.twig' with { + data: { + 'worksheet': worksheet, + 'isPdf': isPdf + } + } %} + + Arbeitskarte als PDF herunterladen {% endblock %} diff --git a/httpdocs/templates/pdf/pdf.html.twig b/httpdocs/templates/pdf/pdf.html.twig index 1acf935..2bbc45b 100644 --- a/httpdocs/templates/pdf/pdf.html.twig +++ b/httpdocs/templates/pdf/pdf.html.twig @@ -4,44 +4,20 @@ MPPTool @@ -50,424 +26,15 @@
-

MPPTool
- Ergebnis je Handlungsfeld und gesamt

- Canzler GmbH +

MPP Tool - Arbeitsblatt (erstellt am: {{ worksheet.creationDate|date("d.m.Y H:i") }})

+ RealFM e.V. - -
- - - - - - - - - - - - - - - - - - - - - - - - -
Dieses Dokument enthält die Bewertung des BIM-Reifegrades Ihrer FM- bzw. CREM-Organisation und erste Handlungsempfehlungen auf Basis des von Ihnen online ausgefüllten Fragenkataloges sowie eine Zusammenfassung der von Ihnen gegebenen Antworten.

- Mit dem Ergebnis sollen ggf. fehlende Voraussetzungen identifiziert und damit notwendige Maßnahmen zur Erreichung eines höheren BIM-Reifegrades abgeleitet werden können.

- In Anlehnung an die Handlungsfelder der VDI Agenda BIM war der Fragenkatalog in „Rahmenbedingungen“, „Prozesse“, „Menschen“ und „Technologien“ unterteilt.
- Die Abstufung bei den Antworten reichte dabei von "nicht erfüllt" bis zu "umfassend erfüllt", soweit die Fragestellung derzeit überhaupt relevant für die zu bewertende Organisation ist.
-
- -
-
In die Bewertung gingen alle Fragen (bzw. Anforderungen) ein, die der Nutzer des Fragebogens für seine individuelle Organisation als relevant eingestuft hat, das heißt, für die nicht Antwort (A) ausgewählt wurde.

- Die einzelnen Fragen wurden für die Ermittlung der Prozentsätze von den an der Entwicklung Beteiligten auf Basis ihrer Expertise gewichtet.

- Das Ergebnis der Selbsteinschätzung wird als Prozentsatz des erreichbaren Wertes ausgegeben, und zwar gesamt sowie bezogen auf das jeweilige Handlungsfeld.
-
- -
-

- {% for cat, res in result %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
{{ cat }}
Anzahl relevanter/beantworteter Fragen:{{ res.count }}
Anzahl Fragen Handlungsfeld gesamt:{{ res.countAll }}
Maximal erreichbare Punkte:{{ res.maxPoints }}
Erreichte Punktzahl:{{ res.points | round | replace({'.': ','}) }}
Erreichte Prozentzahl:{{ res.percentage | round(1) | replace({'.': ','}) }}%

- - - - - - - - - - - - - - - -
Einstufung:
{{ res.txtResult }}

- - - - - - - - - - - - - - - - - - - -
Handlungsempfehlung:
{{ res.txtAction }}
-
- -
-

- {% endfor %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Gesamt
Anzahl relevanter/beantworteter Fragen:{{ total.count }}
Anzahl Fragen Handlungsfeld gesamt:{{ total.countAll }}
Maximal erreichbare Punkte:{{ total.maxPoints }}
Erreichte Punktzahl:{{ total.points | round | replace({'.': ','}) }}
Erreichte Prozentzahl:{{ total.percentage | round(1) | replace({'.': ','}) }}%

- - - - - - - - - - - - - - - -
Einstufung:
{{ total.txtResult }}

- - - - - - - - - - - - - - - -
Handlungsempfehlung:
{{ total.txtAction }}


-
- - - - - - - - - - -

MPPTool
- Ergebnisübersicht


- - - - - - - - - - - {# #} - - - {% for cat, res in result %} - - - - - - - {# #} - - - {% endfor %} - - - - - - - {# #} - - - - - -

Anforderungskategorie
- (Handlungsfelder)
Anzahl beantworteter / relevanter FragenMaximal erreichbare PunktzahlErreichte PunktzahlErreichte ProzentzahlErgebnisErgebnis
{{ cat }}{{ res.count }}{{ res.maxPoints }}{{ res.points | round | replace({'.': ','}) }}{{ res.percentage | round(1) | replace({'.': ','}) }}%#} - {# {% if res.percentage | round(1) > 67 %}#} - {# #} - {# {% elseif res.percentage | round(1) > 50 %}#} - {# #} - {# {% else %}#} - {# #} - {# {% endif %}#} - {# -
-
Gesamt{{ total.count }}{{ total.maxPoints }}{{ total.points | round | replace({'.': ','}) }}{{ total.percentage | round(1) | replace({'.': ','}) }}%#} - {# {% if total.percentage | round(1) > 67 %}#} - {# #} - {# {% elseif total.percentage | round(1) > 50 %}#} - {# #} - {# {% else %}#} - {# #} - {# {% endif %}#} - {# -
-


-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Beteiligte Beratungsunternehmen


Für weiterführende Erläuterungen/ Interpretationen Ihrer Ergebnisse, detailliertere Analysen, externe Audits, Projektunterstützung, Implementierungs-Beratung oder Unterstützung bei der Verbesserung Ihres BIM-Reifegrades stehen Ihnen folgende Ansprechpartner der beteiligten Beratungsunternehmen zur Verfügung:

 Dr. Odin GmbH Ulrich Pieper // Dr. Odin GmbH (ulrich.pieper@dr-odin.de), https://www.dr-odin.de
TÜV SÜD Advimo GmbHMatthias Mosig // TÜV SÜD Advimo GmbH (matthias.mosig@tuvsud.com), https://www.tuvsud.com/de-de/branchen/real-estate/immobilien/bauphysik-und-bautechnik/was-ist-bim/bim-beratung
Canzler GmbHAndreas Rausch // Canzler GmbH (andreas.rausch@canzler.de), https://www.canzler.de


Verband und Arbeitskreis danken den oben genannten Unternehmen, die nicht nur ihr Know-How in die Entwicklung des Online-Tools „MPPTool“ eingebracht haben, sondern diese auch als Sponsoren unterstützt haben.

- -
-
Canzler GmbHRealFM e.V. | Schiffbauerdamm 40 / Büro 5407 | 10117 Berlin
- T +49 (0)30 20 65 39 81 | E office@RealFM.de | W www.RealFM.de


- - - - - - - - - - - - - - - - - -

BIM-Selbstbewertung

{{ user.firstname }} {{ user.lastname }}
{{ user.email }}
{{ user.company }}
-
-
-
- {% set i = 1 %} - {% set qType = "" %} - - {% for catalogueDetail in catalogue.catalogueDetails %} - {% if i != 1 %} - - - - - - {% endif %} - {% if catalogueDetail.question.questionType.type != qType %} - {% set qType = catalogueDetail.question.questionType.type %} - - - - - - - - - - - {% endif %} - - - - - - - - - - - - - - - - {% if catalogueDetail.note is not null and catalogueDetail.note != "" %} - - - - - - {% endif %} - {% set i = i + 1 %} - {% endfor %}
- -
-
-

{{ catalogueDetail.question.questionType.type }}

-

{{ i }}

{{ catalogueDetail.question.questionText }}

- {% if catalogueDetail.answer == 'fulfilled' %} - (E) Umfassend erfüllt - {% elseif catalogueDetail.answer == 'widely_fulfilled' %} - (D) Weitgehend erfüllt - {% elseif catalogueDetail.answer == 'partly_fulfilled' %} - (C) Teilweise erfüllt - {% elseif catalogueDetail.answer == 'not_fulfilled' %} - (B) Nicht erfüllt - {% else %} - (A) Derzeit für meine Organisation nicht relevant - {% endif %} -
-
- {% if catalogueDetail.answer == 'fulfilled' %} - 100% von erreichbaren {{ catalogueDetail.question.weight }} Punkten = {{ catalogueDetail.question.weight }} Punkte - {% elseif catalogueDetail.answer == 'widely_fulfilled' %} - 66,67% von erreichbaren {{ catalogueDetail.question.weight }} Punkten = {{ catalogueDetail.question.weight * 0.6667 | round(1) }} Punkte - {% elseif catalogueDetail.answer == 'partly_fulfilled' %} - 33,33% von erreichbaren {{ catalogueDetail.question.weight }} Punkten = {{ catalogueDetail.question.weight * 0.3333 | round(1) }} Punkte - {% elseif catalogueDetail.answer == 'not_fulfilled' %} - 0% von erreichbaren {{ catalogueDetail.question.weight }} Punkten = 0 Punkte - {% endif %} -

-
- Feststellung/Anmerkung:
- {{ catalogueDetail.note | raw }} -

-
+ {% include 'snippets/worksheet-result.html.twig' with { + data: { + 'worksheet': worksheet, + 'isPdf': isPdf + } + } %} \ No newline at end of file diff --git a/httpdocs/templates/snippets/listing-form.html.twig b/httpdocs/templates/snippets/listing-form.html.twig index 1f8ea73..c7ad4b5 100644 --- a/httpdocs/templates/snippets/listing-form.html.twig +++ b/httpdocs/templates/snippets/listing-form.html.twig @@ -7,7 +7,7 @@ firstname: "", lastname: "", phoneNo: "", - maxCatalogues: "3", + maxWorksheets: "5", company: "", department: "", occupation: "", @@ -43,8 +43,8 @@
- - + +
diff --git a/httpdocs/templates/snippets/worksheet-result.html.twig b/httpdocs/templates/snippets/worksheet-result.html.twig new file mode 100644 index 0000000..68d6b97 --- /dev/null +++ b/httpdocs/templates/snippets/worksheet-result.html.twig @@ -0,0 +1,209 @@ +

DIN {{ worksheet.dinNumber }} | {{ worksheet.dinAssetName }}

+ +

Risikoanalyse

+ + + + + + + + + +
Wie hoch ist die Ausfallwahrscheinlichkeit?{{ worksheet.failureProbability }}
Wie hoch ist der Schaden bei Ausfall?{{ worksheet.failureDamage }}
+ +

Optimierungsckeck

+ + + + + + + + + + + + + +
Wird durch die Wartung der Abnutzungsvorrat positiv beeinflusst?{% if worksheet.maintenanceAdvantage == 1 %}Ja{% else %}nein{% endif %}
Kann durch eine Inspektion der Zustand der Anlage erkannt werden?{% if worksheet.inspectionAdvantage == 1 %}Ja{% else %}nein{% endif %}
Genügt eine einfache Sichtkontrolle im Rahmen des regelmäßigen Rundgangs?{% if worksheet.checkAdvantage == 1 %}Ja{% else %}nein{% endif %}
+ +

Zyklus und Bandbreite

+ + + + + + + + + +
Aktueller Zyklus (in Monaten){{ worksheet.userCycleMonths }}
Bandbreite Anlage{% if worksheet.bandwidth is not null %}{{ worksheet.bandwidth }}{% else %}-{% endif %}
+ +

Ergebnis

+ + + + + + + + + + + + + + + + + +
Empfehlung Wartung (in Monaten){{ worksheet.recMaintenanceCycleMonths }}
Empfehlung Inspektion (in Monaten){{ worksheet.recInspectionCycleMonths }}
Einsparpotential p.a. (%){{ worksheet.deviationPercentage * 100 }}%
Einsparpotential p.a. (€){{ worksheet.deviationCosts | replace({'.': ','}) }} €
+ +

Tätigkeiten

+{% if isPdf == false %} +
+ + + + + + + + + + + + + + + + + {% for index, task in worksheet.userWorkSheetTasks %} + + + + + + + + + + + + + {% endfor %} + +
AufgabeAbgrenzungInspektionWartungInstandsetzungSachverständigerSachkundigeFachkraftNormative Grundlage
{{ index + 1 }}. {{ task.task }}{% if task.delimitation is not null %}{{ task.delimitation }}{% else %}-{% endif %} + {% if task.inspection == 1 %} + + {% else %} + + {% endif %} + + {% if task.maintenance == 1 %} + + {% else %} + + {% endif %} + + {% if task.service == 1 %} + + {% else %} + + {% endif %} + + {% if task.expert == 1 %} + + {% else %} + + {% endif %} + + {% if task.specialist == 1 %} + + {% else %} + + {% endif %} + + {% if task.skilledPersonnel == 1 %} + + {% else %} + + {% endif %} + {{ task.norm }}
+
+{% else %} + {% for index, task in worksheet.userWorkSheetTasks %} +

{{ index + 1 }}. {{ task.task }}

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Abgrenzung{% if task.delimitation is not null %}{{ task.delimitation }}{% else %}-{% endif %}
Inspektion + {% if task.inspection == 1 %} + + {% else %} + + {% endif %} +
Wartung + {% if task.maintenance == 1 %} + + {% else %} + + {% endif %} +
Instandsetzung + {% if task.service == 1 %} + + {% else %} + + {% endif %} +
Sachverständiger + {% if task.expert == 1 %} + + {% else %} + + {% endif %} +
Sachkundige + {% if task.specialist == 1 %} + + {% else %} + + {% endif %} +
Fachkraft + {% if task.skilledPersonnel == 1 %} + + {% else %} + + {% endif %} +
Normative Grundlage{{ task.norm }}
+ {% endfor %} +{% endif %} \ No newline at end of file