Mon, 25 Mar 2024 17:14:56 +0100
Brought the retry attempts to read the DHT11 sensors to the main devices loop. The actual read function is now very simple. Called every 30 seconds when all is well, or 2 seconds if something is wrong.
117 | 1 | .jqx-rc-tl-ui-sunny{border-top-left-radius:8px; moz-border-radius-topleft:8px; webkit-border-top-left-radius:8px} |
2 | .jqx-rc-tr-ui-sunny{border-top-right-radius:8px; moz-border-radius-topright:8px; webkit-border-top-right-radius:8px} | |
3 | .jqx-rc-bl-ui-sunny{border-bottom-left-radius:8px; moz-border-radius-bottomleft:8px; webkit-border-bottom-left-radius:8px} | |
4 | .jqx-rc-br-ui-sunny{border-bottom-right-radius:8px; moz-border-radius-bottomright:8px; webkit-border-bottom-right-radius:8px} | |
5 | .jqx-rc-t-ui-sunny{border-top-left-radius:8px; border-top-right-radius:8px; moz-border-radius-topleft:8px; moz-border-radius-topright:8px; webkit-border-top-left-radius:8px; webkit-border-top-right-radius:8px} | |
6 | .jqx-rc-b-ui-sunny{border-bottom-left-radius:8px; border-bottom-right-radius:8px; moz-border-radius-bottomleft:8px; moz-border-radius-bottomright:8px; webkit-border-bottom-left-radius:8px; webkit-border-bottom-right-radius:8px} | |
7 | .jqx-rc-r-ui-sunny{border-bottom-right-radius:8px; border-top-right-radius:8px; moz-border-radius-bottomright:8px; moz-border-radius-topright:8px; webkit-border-bottom-right-radius:8px; webkit-border-top-right-radius:8px} | |
8 | .jqx-rc-l-ui-sunny{border-bottom-left-radius:8px; border-top-left-radius:8px; moz-border-radius-bottomleft:8px; moz-border-radius-topleft:8px; webkit-border-bottom-left-radius:8px; webkit-border-top-left-radius:8px} | |
9 | .jqx-rc-all-ui-sunny{border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px} | |
10 | /*Grid*/ | |
617 | 11 | .jqx-grid-column-sortascbutton-ui-sunny{background-position:-96px -192px; background-image:url(./images/sunny/ui-icons_fadc7a_256x240.png); position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;} |
12 | .jqx-grid-column-sortdescbutton-ui-sunny{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -192px; background-image:url(./images/sunny/ui-icons_fadc7a_256x240.png)} | |
13 | .jqx-grid-column-menubutton-ui-sunny{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -192px; background-image:url(./images/sunny/ui-icons_ffe180_256x240.png); border-width:0px} | |
117 | 14 | /*Tree*/ |
617 | 15 | .jqx-tree-item-arrow-expand-ui-sunny, .jqx-tree-item-arrow-expand-hover-ui-sunny{background-position:-65px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} |
16 | .jqx-tree-item-arrow-collapse-ui-sunny, .jqx-tree-item-arrow-collapse-hover-ui-sunny{background-position:-32px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
17 | .jqx-menu-item-arrow-right-ui-sunny, .jqx-menu-item-arrow-right-selected-ui-sunny{background-position:-32px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
18 | .jqx-menu-item-arrow-left-ui-sunny, .jqx-menu-item-arrow-left-selected-ui-sunny, .jqx-tree-item-arrow-collapse-rtl-ui-sunny, .jqx-tree-item-arrow-collapse-hover-rtl-ui-sunny{background-position:-96px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
117 | 19 | /*Tabs*/ |
617 | 20 | .jqx-tabs-title-ui-sunny{font-weight: bold; border-color: #d19405; border-bottom-color: transparent; background: #fece2f url(./images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x;color: #4c3000; } |
117 | 21 | .jqx-tabs-title-bottom-ui-sunny{border-bottom-color:#d19405; border-top-color: transparent;} |
22 | .jqx-tabs-header-ui-sunny{border-width: 1px; margin:2px; border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px} | |
23 | .jqx-tabs-header-bottom-ui-sunny{margin-top:-2px !important; padding-bottom: 3px; padding-top:1px} | |
24 | /*Radio Button*/ | |
25 | .jqx-radiobutton-ui-sunny .jqx-fill-state-pressed-ui-sunny{background:#222; border:1px solid #000} | |
26 | /*Calendar*/ | |
617 | 27 | .jqx-calendar-cell-ui-sunny{font-size: 11px; border-color: #d19405; background: #fece2f url(./images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x; color: #4c3000; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important} |
117 | 28 | .jqx-calendar-cell-today-ui-sunny{background:#ffe45c; border:1px solid #fed22f; color:#363636} |
29 | .jqx-calendar-title-container-ui-sunny{border: 1px solid #aaa; border-bottom-width: 0px; border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px; font-weight: bold;} | |
30 | .jqx-calendar-month-container-ui-sunny{border:none !important} | |
31 | .jqx-calendar-ui-sunny{padding:2px} | |
32 | .jqx-calendar-column-cell-ui-sunny{font-size: 11px; font-weight: bold;} | |
617 | 33 | .jqx-calendar-ui-sunny .jqx-icon-arrow-left-ui-sunny{background-image:url(./images/sunny/ui-icons_fadc7a_256x240.png); background-position: -80px -192px; width:16px; height:16px; left:5px; position:relative} |
34 | .jqx-calendar-ui-sunny .jqx-icon-arrow-right-ui-sunny{background-image:url(./images/sunny/ui-icons_fadc7a_256x240.png); background-position: -48px -192px; width:16px; height:16px; right:5px; position:relative} | |
117 | 35 | |
36 | /*Icons*/ | |
617 | 37 | .jqx-icon-arrow-up-ui-sunny{background-position:0 -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} |
38 | .jqx-icon-arrow-down-ui-sunny{background-position:-65px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
39 | .jqx-icon-arrow-left-ui-sunny{background-position:-96px -17px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
40 | .jqx-icon-arrow-right-ui-sunny{background-position:-32px -17px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
41 | .jqx-icon-arrow-up-hover-ui-sunny{background-position:0 -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
42 | .jqx-icon-arrow-down-hover-ui-sunny{background-position:-65px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
43 | .jqx-icon-arrow-left-selected-ui-sunny{background-position:-96px -17px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
44 | .jqx-icon-arrow-right-selected-ui-sunny{background-position:-32px -17px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
45 | .jqx-icon-arrow-up-selected-ui-sunny{background-position:0 -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
46 | .jqx-icon-arrow-down-selected-ui-sunny{background-position:-65px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
47 | .jqx-icon-arrow-left-selected-ui-sunny{background-position:-96px -17px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
48 | .jqx-icon-arrow-right-selected-ui-sunny{background-position:-32px -17px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
49 | .jqx-icon-close-ui-sunny{background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png); background-position:-80px -128px; cursor:pointer} | |
50 | .jqx-icon-close-hover-ui-sunny{background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png); background-position:-80px -128px; cursor:pointer} | |
117 | 51 | /*Window*/ |
52 | .jqx-window-ui-sunny{padding: 2px;} | |
53 | .jqx-window-header-ui-sunny{border: 1px solid #aaa; font-weight: bold; font-size: 11px; moz-border-radius:8px; border-radius:8px; webkit-border-radius:8px} | |
54 | .jqx-window-content-ui-sunny{border-width:0px !important} | |
617 | 55 | .jqx-window-close-button-ui-sunny{background-position:-96px -128px; background-image:url(./images/sunny/ui-icons_fadc7a_256x240.png);moz-border-radius:8px; border-radius:8px; webkit-border-radius:8px} |
56 | .jqx-window-collapse-button-ui-sunny{background-position:0 -16px; background-image:url(./images/sunny/ui-icons_fadc7a_256x240.png)} | |
57 | .jqx-window-collapse-button-hover-ui-sunny{background-image:url(./images/sunny/ui-icons_bd7b00_256x240.png); background-color:#fff; border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px} | |
117 | 58 | .jqx-window-collapse-button-collapsed-ui-sunny, .jqx-window-collapse-button-collapsed-hover-ui-sunny{background-position:-65px -16px} |
617 | 59 | .jqx-window-close-button-hover-ui-sunny{background-color:#fff; background-position:-96px -128px; background-image:url(./images/sunny/ui-icons_bd7b00_256x240.png); cursor:pointer; width:16px; height:16px} |
117 | 60 | |
61 | /*Common Settings*/ | |
62 | .jqx-widget-ui-sunny{font-family: Segoe UI, Arial, sans-serif; font-size:12px; font-style:normal;} | |
617 | 63 | .jqx-widget-content-ui-sunny{font-family: Segoe UI, Arial, sans-serif; background: #feeebd url(./images/sunny/ui-bg_highlight-soft_100_feeebd_1x100.png) 50% top repeat-x; color: #383838; font-size:12px} |
117 | 64 | .jqx-widget-content-ui-sunny a{color:#383838} |
617 | 65 | .jqx-widget-header-ui-sunny{font-family: Segoe UI, Arial, sans-serif; border-color: #494437; background: #817865 url(./images/sunny/ui-bg_gloss-wave_45_817865_500x100.png) 50% 50% repeat-x; color: #ffffff; font-size:12px} |
117 | 66 | .jqx-widget-header-ui-sunny a{color:#fff} |
617 | 67 | .jqx-fill-state-normal-ui-sunny{border-color: #d19405; background: #fece2f url(./images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x;color: #4c3000;} |
117 | 68 | .jqx-fill-state-normal-ui-sunny a, .jqx-fill-state-normal-ui-sunny a:link, .jqx-fill-state-normal-ui-sunny a:visited{color:#4c3000; text-decoration:none} |
617 | 69 | .jqx-fill-state-hover-ui-sunny{border-color: #a45b13; background: #ffdd57 url(./images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png) 50% 50% repeat-x; color: #381f00; } |
117 | 70 | .jqx-fill-state-hover-ui-sunny a, .jqx-fill-state-hover-ui-sunny a:hover{color:#381f00; text-decoration:none} |
71 | .jqx-fill-state-focus-ui-sunny {border-color: #494437;} | |
617 | 72 | .jqx-fill-state-pressed-ui-sunny{ border-color:#655e4e; background: #ffffff url(./images/sunny/ui-bg_inset-soft_30_ffffff_1x100.png) 50% 50% repeat-x; color: #0074c7;} |
117 | 73 | .jqx-fill-state-pressed-ui-sunny a, .jqx-fill-state-pressed-ui-sunny a:link, .jqx-fill-state-pressed-ui-sunny a:visited{color:#0074c7; text-decoration:none} |
74 | .jqx-fill-state-disabled-ui-sunny {cursor: default; color: #000; opacity: .55; filter:Alpha(Opacity=45);} | |
75 | ||
76 | .jqx-input-button-content-ui-sunny{font-size:10px} | |
77 | .jqx-input-icon-ui-sunny{margin-left:2px; margin-top:-1px} | |
617 | 78 | .jqx-checkbox-check-checked-ui-sunny{margin-top:0px; background-position:-65px -147px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} |
117 | 79 | /*Progress Bar*/ |
80 | .jqx-progressbar-ui-sunny .jqx-fill-state-pressed-ui-sunny{background: #9f998a; border-bottom: none;} | |
81 | .jqx-progressbar-value-vertical-ui-sunny{background: #9f998a; border-right: none; border-bottom: 1px solid #8e846b;} | |
82 | /*ScrollBar */ | |
83 | .jqx-scrollbar-thumb-state-normal-ui-sunny, .jqx-scrollbar-thumb-state-normal-horizontal-ui-sunny{ border: 1px solid #8e846b; background: #9f998a;} | |
84 | .jqx-scrollbar-thumb-state-hover-ui-sunny, .jqx-scrollbar-thumb-state-hover-horizontal-ui-sunny{ background: #dadada;} | |
85 | .jqx-scrollbar-thumb-state-pressed-ui-sunny, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-sunny{ background: #ffffff;} | |
86 | ||
87 | .jqx-tabs-title-selected-top-ui-sunny | |
88 | { | |
89 | border-color: #aaa; | |
90 | border-bottom: 1px solid #fff; | |
91 | background-color: #fff; | |
92 | } | |
93 | /*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/ | |
94 | .jqx-tabs-title-selected-bottom-ui-sunny | |
95 | { | |
96 | border-color: #aaa; | |
97 | border-top: 1px solid #fff; | |
98 | background-color: #fff; | |
99 | } | |
100 | /*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/ | |
101 | .jqx-tabs-selection-tracker-top-ui-sunny | |
102 | { | |
103 | border-color: #aaa; | |
104 | border-bottom: 1px solid #fff; | |
105 | } | |
106 | /*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/ | |
107 | .jqx-tabs-selection-tracker-bottom-ui-sunny | |
108 | { | |
109 | border-color: #aaa; | |
110 | border-top: 1px solid #fff; | |
111 | } | |
112 | /*Slider*/ | |
113 | .jqx-slider-ui-sunny .jqx-fill-state-pressed-ui-sunny{background:#9f998a;} | |
114 | .jqx-slider-track-ui-sunny{border: 1px solid #8e846b; background: #fef8e4;} | |
115 | /*Grid*/ | |
116 | .jqx-grid-cell-sort-ui-sunny, .jqx-grid-cell-filter-ui-sunny, .jqx-grid-cell-pinned-ui-sunny, .jqx-grid-cell-selected-ui-sunny{background:#fef8e4;} | |
117 | .jqx-grid-bottomright-ui-sunny, .jqx-panel-bottomright-ui-sunny, .jqx-listbox-bottomright-ui-sunny, .jqx-scrollbar-state-normal-ui-sunny{background: #fef8e4;} | |
617 | 118 | .jqx-grid-group-expand-ui-sunny{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(./images/icon-down.png);} |
119 | .jqx-grid-group-collapse-ui-sunny{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(./images/icon-right.png);} | |
117 | 120 | /*Menu*/ |
121 | .jqx-menu-dropdown-ui-sunny | |
122 | { | |
123 | -moz-border-radius-bottomleft: 8px; | |
124 | -webkit-border-bottom-left-radius: 8px; | |
125 | border-bottom-left-radius: 8px; | |
126 | -moz-border-radius-topright: 8px; | |
127 | -webkit-border-top-right-radius: 8px; | |
128 | border-top-right-radius: 8px; | |
129 | -moz-border-radius-bottomright: 8px; | |
130 | -webkit-border-bottom-right-radius: 8px; | |
131 | border-bottom-right-radius: 8px; | |
132 | right: -1px; | |
133 | } | |
134 | /*Navigation Bar*/ | |
135 | .jqx-navigationbar-ui-sunny{overflow: inherit;} | |
136 | .jqx-expander-header-ui-sunny{font-weight: bold; margin-bottom:2px; margin-top:2px} | |
617 | 137 | .jqx-expander-header-ui-sunny{background: #fece2f url(./images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x;color: #4c3000; border:1px solid #d19405; border-radius:8px !important; moz-border-radius:8px !important; webkit-border-radius:8px !important} |
138 | .jqx-expander-header-hover-ui-sunny{border:1px solid #a45b13; background: #ffdd57 url(./images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png) 50% 50% repeat-x; color: #381f00;} | |
139 | .jqx-expander-header-expanded-ui-sunny{color: #0074c7; background:#fff; border:1px solid #aaa; border-bottom-width:0px; border-top-left-radius:8px !important; border-top-right-radius:8px !important; moz-border-radius-topleft:8px !important; moz-border-radius-topright:8px !important; webkit-border-top-left-radius:8px !important; webkit-border-top-right-radius:8px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important; margin-bottom:0px} | |
117 | 140 | .jqx-expander-content-bottom-ui-sunny{border-bottom-left-radius:8px !important; border-bottom-right-radius:8px !important; moz-border-radius-bottomleft:8px !important; moz-border-radius-bottomright:8px !important; webkit-border-bottom-left-radius:8px !important; webkit-border-bottom-right-radius:8px !important; border-top-width:0px !important} |
617 | 141 | .jqx-expander-arrow-top-ui-sunny{background-position:-65px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} |
142 | .jqx-expander-arrow-bottom-ui-sunny{background-position:0 -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
143 | .jqx-tabs-arrow-right-ui-sunny{background-position:-32px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
144 | .jqx-tabs-arrow-left-ui-sunny{background-position:-96px -16px; background-image:url(./images/sunny/ui-icons_3d3d3d_256x240.png)} | |
117 | 145 | /*Scroll Bar*/ |
146 | .jqx-scrollbar-ui-sunny .jqx-icon-arrow-up-ui-sunny{width: 16px; height: 16px; margin-left: auto;} | |
147 | .jqx-scrollbar-ui-sunny .jqx-icon-arrow-down-ui-sunny{width: 16px; height: 16px; margin-left: auto;} | |
148 | .jqx-scrollbar-ui-sunny .jqx-icon-arrow-left-ui-sunny{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;} | |
149 | .jqx-scrollbar-ui-sunny .jqx-icon-arrow-right-ui-sunny{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;} | |
511
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
150 | .jqx-layout-ui-sunny |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
151 | { |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
152 | background-color: #494437; |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
153 | background-image: none; |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
154 | } |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
155 | .jqx-layout-pseudo-window-pin-icon-ui-sunny |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
156 | { |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
157 | background-image: url("images/pin-yellow.png"); |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
158 | } |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
159 | .jqx-layout-pseudo-window-pinned-icon-ui-sunny |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
160 | { |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
161 | background-image: url("images/pinned-yellow.png"); |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
162 | } |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
163 | .jqx-docking-layout-group-floating .jqx-window-header-ui-sunny |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
164 | { |
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
165 | background-image: none; |
617 | 166 | } |
167 | /*applied to the timepicker*/ | |
168 | .jqx-time-picker .jqx-header .jqx-selected-ui-sunny:focus { | |
169 | outline: 1px solid rgb(254, 238, 189); | |
170 | } | |
171 | .jqx-svg-picker-ui-sunny:focus { | |
172 | border: 1px solid rgb(73, 68, 55) !important; | |
173 | } | |
174 | .jqx-main-container-ui-sunny { | |
175 | background: none; | |
511
2d1d43c3a2c2
Upgraded jqwidgets to version 4.5.2
Michiel Broek <mbroek@mbse.eu>
parents:
117
diff
changeset
|
176 | } |