From 0344418dd3b9e002f4d63436938e5baec53ea021 Mon Sep 17 00:00:00 2001 From: simatec Date: Sun, 25 Aug 2024 22:42:08 +0200 Subject: [PATCH] (simatec) Responsive Design added --- .github/workflows/sync-readme-to-wiki.yml | 42 ++++ README.md | 2 + admin/index_m.html | 218 ++++++++++---------- admin/style.css | 237 +++++++++++++++++++--- docs/de/shuttercontrol.md | 1 + 5 files changed, 358 insertions(+), 142 deletions(-) create mode 100644 .github/workflows/sync-readme-to-wiki.yml diff --git a/.github/workflows/sync-readme-to-wiki.yml b/.github/workflows/sync-readme-to-wiki.yml new file mode 100644 index 0000000..a660981 --- /dev/null +++ b/.github/workflows/sync-readme-to-wiki.yml @@ -0,0 +1,42 @@ +name: Sync Docu to Wiki + +on: + push: + paths: + - 'docs/de/shuttercontrol.md' + - 'docs/en/shuttercontrol.md' + - 'docs/de/img/*' + +jobs: + sync-wiki: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup Git + run: | + git config --global user.name "github-actions[bot]" + git config --global user.email "github-actions[bot]@users.noreply.github.com" + + - name: Clone wiki repository + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + git clone https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}.wiki.git ./wiki + + - name: Copy Docu to Wiki + run: | + cp docs/de/shuttercontrol.md ./wiki/Shuttercontrol-Wiki-Deutsch.md + cp docs/en/shuttercontrol.md ./wiki/Shuttercontrol-Wiki-English.md + cp docs/en/img/* ./wiki/img/ + + - name: Commit and push changes + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + cd wiki + git add . + git commit -m "Sync Docu to Wiki" + git push https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}.wiki.git \ No newline at end of file diff --git a/README.md b/README.md index 2440d21..1b5328a 100644 --- a/README.md +++ b/README.md @@ -57,6 +57,8 @@ When the adapter crashes or an other Code error happens, this error message that * (simatec) Fix Shutter up when open the Window * (simatec) Test & Release updated * (simatec) Fix Trigger +* (simatec) Responsive Design added +* (simatec) Docu Sync2Wiki added ### 1.7.3 (2024-06-20) * (simatec) Fix Sunprotect End-Delay diff --git a/admin/index_m.html b/admin/index_m.html index 64c0f74..0d7b7de 100644 --- a/admin/index_m.html +++ b/admin/index_m.html @@ -31,7 +31,7 @@
-
+

Shuttercontrol
@@ -62,7 +62,7 @@

Shutter config
add
-
+
@@ -75,12 +75,12 @@
Shutter config
- Nr - active - Name - Object-ID shutter - - + Nr + active + Name + Object-ID shutter + + Trigger ID type up @@ -171,22 +171,22 @@
Time Settings
-
+
Shut down on the week
-
+
Min Time for Driving up on the week
-
+
Max Time for Driving up on the week
-
+
Time delay for driving the shutters (seconds) @@ -194,17 +194,17 @@
Time Settings
-
+
Shut down on the weekend
-
+
Min Time for Driving up on the weekend
-
+
Max Time for Driving up on the weekend @@ -230,22 +230,22 @@
Time Settings
-
+
Shut down on the week
-
+
Min Time for Driving up on the week
-
+
Max Time for Driving up on the week
-
+
Time delay for driving the shutters (seconds) @@ -253,17 +253,17 @@
Time Settings
-
+
Shut down on the weekend
-
+
Min Time for Driving up on the weekend
-
+
Max Time for Driving up on the weekend @@ -289,22 +289,22 @@
Time Settings
-
+
Shut down on the week
-
+
Min Time for Driving up on the week
-
+
Max Time for Driving up on the week
-
+
Time delay for driving the shutters (seconds) @@ -312,17 +312,17 @@
Time Settings
-
+
Shut down on the weekend
-
+
Min Time for Driving up on the weekend
-
+
Max Time for Driving up on the weekend @@ -348,34 +348,34 @@
Extra Settings
-
+
latitude
-
+
longitude
-
+
Sun Protect End with Elevation
-
+
Time delay for Driving up (minutes)
-
+
Time delay for Driving down (minutes)
-
+
Time delay for driving the shutters (seconds) @@ -389,12 +389,12 @@
Extra Settings
-
+
SummerStart
-
+
SummerEnd @@ -409,12 +409,12 @@
Extra Settings
-
+
XMasStart
-
+
XMasEnd @@ -429,7 +429,7 @@
Extra Settings
-
+
Use public holidays
@@ -442,7 +442,7 @@
Extra Settings
-
+
Object ID for holiday today @@ -460,31 +460,31 @@
Extra Settings
-
+
Brightness value for down with lightsensor
-
+
Brightness value for up with lightsensor
-
+
earliest time for opening with light sensor
-
+
earliest time for closing with light sensor
-
+
Object ID for Lightsensor @@ -502,7 +502,7 @@
Extra Settings
-
+
Use the Schoolfree adapter
@@ -511,7 +511,7 @@
Extra Settings
schoolfree Instance
-
+
Object ID to activate / deactivate the school holidays @@ -521,15 +521,15 @@
Extra Settings
-
+
Use schoolfree for Children Area
-
+
Use schoolfree for Sleep Area
-
+
Use schoolfree for Living Area
@@ -543,30 +543,30 @@
Extra Settings
-
+
close certain shutters later (the individual shutters must be activated in the shutter settings)
-
+
Time at which the roller shutters configured for this should close late
-
+
Time to completely close the shutters from the intermediate position
-
+
Time left to detect second sleep (minutes)
-
+
Saturday is working week
@@ -579,18 +579,18 @@
Extra Settings
-
+
check current Shutter State
-
+
Waiting time for checking the shutter status (seconds)
-
+
Blocking the Manu mode for known shutter heights
@@ -607,7 +607,7 @@
Extra Settings
-
+
Object ID of trigger for Auto Sleep @@ -615,7 +615,7 @@
Extra Settings
add
-
+
Object ID of trigger for Auto Living @@ -623,7 +623,7 @@
Extra Settings
add
-
+
Object ID of trigger for Auto Children @@ -640,12 +640,12 @@
Extra Settings
-
+
Alarm Wind 1 Level
-
+
Object ID of alarm wind 1 @@ -655,12 +655,12 @@
Extra Settings
-
+
Alarm Wind 2 Level
-
+
Object ID of alarm wind 2 @@ -670,12 +670,12 @@
Extra Settings
-
+
Alarm Rain Level
-
+
Object ID of alarm Rain @@ -685,12 +685,12 @@
Extra Settings
-
+
Alarm Frost Level
-
+
Object ID of alarm Frost @@ -700,12 +700,12 @@
Extra Settings
-
+
Alarm Fire Level
-
+
Object ID of alarm Fire @@ -753,12 +753,12 @@
Edit
-
+
height down
-
+
direction @@ -776,24 +776,24 @@
Edit Type of control
-
+
+/- range direction
-
+
setpoint of the sun protection temperature
-
+
hysteresis Outsidetemperature (percent)
-
+
Object ID Actual value of the sun protection temperature @@ -803,17 +803,17 @@
Edit
-
+
setpoint of the sun protection Lightsensor
-
+
hysteresis Lightsensor (percent)
-
+
Object ID of the sun protection Lightsensor @@ -823,17 +823,17 @@
Edit
-
+
Temp Inside
-
+
hysteresis Insidetemperature (percent)
-
+
Object ID of the Inside Temperature @@ -916,12 +916,12 @@
Edit Drive by Trigger
-
+
height for trigger
-
+
height for trigger tildet @@ -938,24 +938,24 @@
Edit
-
+
height down
-
+
height up
-
+
Elevation
-
+
Trigger ID @@ -973,15 +973,15 @@
Edit
-
+
-
+
-
+
@@ -995,11 +995,11 @@
Edit
-
+
-
+
XmasLevel @@ -1014,22 +1014,22 @@
Edit
-
+
-
+
-
+
sunProtectEndDely
-
+
Outdoor temperature upper limit for activating thermal protection @@ -1044,29 +1044,29 @@
Edit
-
+
-
+
-
+
shutter height in the intermediate position
-
+
trigDelyUp
-
+
trigDelyDown @@ -1081,23 +1081,23 @@
Edit
-
+
-
+
-
+
-
+
-
+
diff --git a/admin/style.css b/admin/style.css index 4ae8c0c..9c54d54 100644 --- a/admin/style.css +++ b/admin/style.css @@ -2,6 +2,7 @@ * { box-sizing: border-box } + .m { /* Don't cut off dropdowns! overflow: initial;*/ @@ -10,31 +11,98 @@ /* Add your styles here */ /* Header section*/ -#header-area {margin-top: 2px; margin-bottom: 1px; background-color:#174475;} -#header-area #header-logo-title .logo {float:left; margin-right: 10px;} -#header-area #header-logo-title p {line-height: normal !important; margin: 0 !important; padding: 8px 0 0 8px;} -#header-area #header-logo-title p>span.h-title {font-size: 2em !important; color:white; } -#header-area #header-logo-title p>span.h-sub-title {font-size: 1.1em !important; color:white; font-style: italic; } +#header-area { + margin-top: 2px; + margin-bottom: 1px; + background-color: #174475; +} + +#header-area #header-logo-title .logo { + float: left; + margin-right: 10px; +} + +#header-area #header-logo-title p { + line-height: normal !important; + margin: 0 !important; + padding: 8px 0 0 8px; +} + +#header-area #header-logo-title p>span.h-title { + font-size: 2em !important; + color: white; +} + +#header-area #header-logo-title p>span.h-sub-title { + font-size: 1.1em !important; + color: white; + font-style: italic; +} /* Tabs menu */ -.m .tabs .tab a { color: rgba(13, 134, 231, 0.7); } /* Color */ -.m .tabs .tab a { padding: 0 5px; } /* space of x px at beginning and end of text */ -.m .tabs { background-color: rgb(255, 255, 255) !important;} -.m .tabs .active { border-bottom: 2px solid #0d47a1; font-weight: bold;} -.m .tabs .tab a.active, .m .tabs .tab a:hover { color:#0d47a1; } -.m .tabs .tab a:hover { border-bottom: 2px solid #46a0e9 !important; } -.m .row .col.m1 { width: 14%;} -#tab-area { padding-left:0;padding-right:0; margin-top: 0px; margin-bottom: 1px; background-color:#174475; box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2) } +.m .tabs .tab a { + color: rgba(13, 134, 231, 0.7); +} + +/* Color */ +.m .tabs .tab a { + padding: 0 5px; +} + +/* space of x px at beginning and end of text */ +.m .tabs { + background-color: rgb(255, 255, 255) !important; + scrollbar-width: none; +} + +.m .tabs .active { + border-bottom: 2px solid #0d47a1; + font-weight: bold; +} + +.m .tabs .tab a.active, +.m .tabs .tab a:hover { + color: #0d47a1; +} + +.m .tabs .tab a:hover { + border-bottom: 2px solid #46a0e9 !important; +} + +.m .row .col.m1 { + width: 14%; +} + +#tab-area { + padding-left: 0; + padding-right: 0; + margin-top: 0px; + margin-bottom: 1px; + background-color: #174475; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2) +} /* Tabs menu react-dark */ -.m.react-dark .tabs .tab a.active, .m .tabs .tab a:hover { color: #2196f3; } -.m.react-dark .tabs { background-color: #272727 !important;} +.m.react-dark .tabs .tab a.active, +.m .tabs .tab a:hover { + color: #2196f3; +} + +.m.react-dark .tabs { + background-color: #272727 !important; +} /* Tabs menu react-blue */ -.m.react-blue .tabs .tab a.active, .m .tabs .tab a:hover { color: #2196f3; } -.m.react-blue .tabs { background-color: #272727 !important;} +.m.react-blue .tabs .tab a.active, +.m .tabs .tab a:hover { + color: #2196f3; +} + +.m.react-blue .tabs { + background-color: #272727 !important; +} -.m .col .select-wrapper + label { +.m .col .select-wrapper+label { top: -26px; } @@ -118,6 +186,7 @@ margin-top: -25px; height: auto !important; } + #dialog-shutter-edit .titlePopUp { width: 100% !important; background: #174475; @@ -127,9 +196,10 @@ #dialog-shutter-edit .page { width: calc(100% - 10px) !important; - padding-left:20; + padding-left: 20; height: calc(100% - 100px); } + /* #dialog-shutter-edit .btn { margin-right: 1.5rem; @@ -140,6 +210,7 @@ visibility: hidden !important; display: none !important; } + /* hidden table column */ #events th:nth-of-type(n+7) { visibility: hidden !important; @@ -162,13 +233,16 @@ overflow: visible !important; top: 10px !important; } + .m .collapsible-header { padding: 0.5rem; } + .trigger-add { margin-top: 1.3rem; margin-left: -0.5rem; } + .m .modal .modal-footer { padding-right: 2rem; } @@ -178,51 +252,148 @@ background-color: #3399cc; min-height: 48px; } -.m .btn.disabled, .m .btn-small.disabled { + +.m .btn.disabled, +.m .btn-small.disabled { background-color: rgba(0, 0, 0, 0.12) !important; color: rgba(0, 0, 0, 0.26) !important; font-family: Roboto, Helvetica, Arial, sans-serif; font-weight: 500; font-size: 0.875rem; } -.m .btn-save, .m .btn-save-close, .m .btn-cancel { + +.m .btn-save, +.m .btn-save-close, +.m .btn-cancel { background-color: #e0e0e0; color: #000000; font-family: Roboto, Helvetica, Arial, sans-serif; font-weight: 500; font-size: 0.875rem; } -.m .btn-save:hover, .m .btn-save-close:hover, .m .btn-cancel:hover { - background-color: #e0e0e0!important; + +.m .btn-save:hover, +.m .btn-save-close:hover, +.m .btn-cancel:hover { + background-color: #e0e0e0 !important; filter: brightness(105%); box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); } /* Help Buttons */ -.m .btn-floating i.material-icons, .m.react-blue .btn-floating i.material-icons, .m.react-dark .btn-floating i.material-icons { - color: rgba(0, 0, 0, 0.87)!important; - background-color: rgb(224, 224, 224)!important; +.m .btn-floating i.material-icons, +.m.react-blue .btn-floating i.material-icons, +.m.react-dark .btn-floating i.material-icons { + color: rgba(0, 0, 0, 0.87) !important; + background-color: rgb(224, 224, 224) !important; line-height: 36px; } + .m .btn-floating i.material-icons:hover { - background-color: #e0e0e0!important; + background-color: #e0e0e0 !important; filter: brightness(105%); } + .m .btn-floating { transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, border-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px; - height: 36px!important; - width: 36px!important; + height: 36px !important; + width: 36px !important; } + .m .btn-floating:hover { box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); } /* Table Button*/ .m .values-buttons.btn-floating.btn-small { - width: 32.4px!important; - height: 32.4px!important; + width: 32.4px !important; + height: 32.4px !important; } -.m .values-buttons.btn-floating.btn-small i.material-icons, .m.react-blue .values-buttons.btn-floating.btn-small i.material-icons, .m.react-dark .values-buttons.btn-floating.btn-small i.material-icons { - line-height: 32.4px!important; + +.m .values-buttons.btn-floating.btn-small i.material-icons, +.m.react-blue .values-buttons.btn-floating.btn-small i.material-icons, +.m.react-dark .values-buttons.btn-floating.btn-small i.material-icons { + line-height: 32.4px !important; +} + +/* Styling for small Screen (Responsive) */ +@media screen and (max-width: 768px) { + + #events, + #events thead, + #events tbody, + #events th, + #events td, + #events tr { + display: block; + width: 100%; + } + + #events thead tr { + display: none; + } + + #events tr { + margin-bottom: 15px; + border: 1px solid #ddd; + padding: 10px; + background: #f9f9f9; + } + + #events td { + display: block; + text-align: left; + padding: 10px; + box-sizing: border-box; + position: relative; + } + + #events td:before { + content: attr(data-name); + font-weight: bold; + display: block; + margin-bottom: 5px; + color: #333; + } + + /* hidden table column */ + #events td:nth-of-type(1) { + visibility: hidden !important; + display: none !important; + } + + /* hidden table column */ + #events th:nth-of-type(1) { + visibility: hidden !important; + display: none !important; + } + + #events td:nth-of-type(2) { + text-align: center !important; + } + + .adapter-body { + overflow: hidden; + } + + .help-link { + display: none; + } + + #dialog-shutter-edit { + max-height: 98% !important; + max-width: 98% !important; + width: 100% !important; + height: 100% !important; + overflow: visible !important; + top: 7px !important; + } + + .m #dialog-select-member { + width: calc(100% - 0.3rem) !important; + height: calc(100% - 0.3rem) !important; + left: 0px; + box-sizing: border-box; + } } \ No newline at end of file diff --git a/docs/de/shuttercontrol.md b/docs/de/shuttercontrol.md index fee4111..81bad4a 100644 --- a/docs/de/shuttercontrol.md +++ b/docs/de/shuttercontrol.md @@ -1,5 +1,6 @@ ![Logo](img/shuttercontrol.png) + # Dokumentation und Anleitung für Shuttercontrol ![Number of Installations](http://iobroker.live/badges/shuttercontrol-installed.svg)