├── CONTRIBUTING.md ├── LICENSE.txt ├── README.md ├── css ├── animate.css ├── center_popups.css ├── dark_theme.css ├── dashboard_camera.css ├── dashboard_columns.css ├── dashboard_mobile.css ├── dashboard_show_last_update.css ├── floorplan.css ├── footer.css ├── icons_on_tabs.css ├── iconsupload.css ├── ionicons.min.css ├── navbar_icons.css ├── settings.css ├── sidemenu.css └── switch.css ├── custom.css ├── custom.js ├── fonts ├── ionicons.eot ├── ionicons.svg ├── ionicons.ttf ├── ionicons.woff ├── ionicons.woff2 ├── open-sans-v16-latin_latin-ext-600.woff ├── open-sans-v16-latin_latin-ext-600.woff2 ├── open-sans-v16-latin_latin-ext-regular.woff ├── open-sans-v16-latin_latin-ext-regular.woff2 └── read.me ├── images ├── Alarm48_Off.png ├── Alarm48_On.png ├── Alert.png ├── Alert48_0.png ├── Alert48_1.png ├── Alert48_2.png ├── Alert48_3.png ├── Alert48_4.png ├── Amplifier48_Off.png ├── Amplifier48_On.png ├── Aquarium16_Off.png ├── Aquarium16_On.png ├── Aquarium48_Off.png ├── Aquarium48_On.png ├── ChristmasTree48_Off.png ├── ChristmasTree48_On.png ├── Close.png ├── Computer48_Off.png ├── Computer48_On.png ├── ComputerPC48_Off.png ├── ComputerPC48_On.png ├── Contact48_Off.png ├── Contact48_On.png ├── Cooling48_Off.png ├── Cooling48_On.png ├── Counter48.png ├── Custom.png ├── Custom48.png ├── Custom48_On.png ├── Data48.png ├── Dimmer48_Off.png ├── Dimmer48_On.png ├── DomeCamera16_Off.png ├── DomeCamera16_On.png ├── DomeCamera48_Off.png ├── DomeCamera48_On.png ├── Door48_Off.png ├── Door48_On.png ├── Down48.png ├── Duck16_Off.png ├── Duck16_On.png ├── Duck48_Off.png ├── Duck48_On.png ├── Fan48_Off.png ├── Fan48_On.png ├── Fireplace48_Off.png ├── Fireplace48_On.png ├── Gas48.png ├── Generic48_Off.png ├── Generic48_On.png ├── Harddisk48_Off.png ├── Harddisk48_On.png ├── Heating48_Off.png ├── Heating48_On.png ├── HotWater16.png ├── HotWater48.png ├── Jacuzzi16_Off.png ├── Jacuzzi16_On.png ├── Jacuzzi48_Off.png ├── Jacuzzi48_On.png ├── Light48_Off.png ├── Light48_On.png ├── Media48_Off.png ├── Media48_On.png ├── OilTank16.png ├── OilTank48.png ├── OutdoorCamera16.png ├── OutdoorCamera48.png ├── PV48.png ├── PV48_Off.png ├── PV48_On.png ├── Percentage48.png ├── Phone48_Off.png ├── Phone48_On.png ├── Printer48_Off.png ├── Printer48_On.png ├── Push48_Off.png ├── Push48_On.png ├── RGB48_Off.png ├── RGB48_On.png ├── Speaker48_Off.png ├── Speaker48_On.png ├── TV48_Off.png ├── TV48_On.png ├── Trigger48_Off.png ├── Trigger48_On.png ├── Up48.png ├── WallSocket48.png ├── WallSocket48_Off.png ├── WallSocket48_On.png ├── Water48_Off.png ├── Water48_On.png ├── WindE.png ├── WindENE.png ├── WindESE.png ├── WindN.png ├── WindNE.png ├── WindNNE.png ├── WindNNW.png ├── WindNW.png ├── WindS.png ├── WindSE.png ├── WindSSE.png ├── WindSSW.png ├── WindSW.png ├── WindW.png ├── WindWNW.png ├── WindWSW.png ├── add.png ├── air.png ├── air48.png ├── air_signal.png ├── baro48.png ├── battery.png ├── bed16_Off.png ├── bed16_On.png ├── bed48_Off.png ├── bed48_On.png ├── bell_off.png ├── bell_on.png ├── blinds48.png ├── blinds48sel.png ├── blindsopen48.png ├── blindsopen48sel.png ├── blindsstop.png ├── blindsstop2.png ├── camera-web.png ├── capture.png ├── contact48.png ├── contact48_open.png ├── counter.png ├── current48.png ├── current48_On.png ├── custompage.png ├── delete.png ├── desktop.png ├── devices.png ├── door48.png ├── door48open.png ├── doorbell48.png ├── favorite.png ├── house.png ├── houseEnergy16.png ├── houseEnergy48.png ├── ice.png ├── icon.png ├── lightbulb.png ├── log.png ├── logo.png ├── logout.png ├── lux48.png ├── moisture48.png ├── motdec48_Off.png ├── motdec48_On.png ├── motion48-off.png ├── motion48-on.png ├── next.png ├── nofavorite.png ├── override.png ├── proxy.png ├── push48.png ├── pushoff48.png ├── pushon48.png ├── radiation48.png ├── rain.png ├── rain48.png ├── remote.png ├── remote48.png ├── remove.png ├── rename.png ├── scenes.png ├── security48.png ├── settings │ ├── about.png │ ├── cam.png │ ├── datapush.png │ ├── devices.png │ ├── events.png │ ├── hardware.png │ ├── icons.png │ ├── lock.png │ ├── log.png │ ├── mobile.png │ ├── notification.png │ ├── plan.png │ ├── readme.me │ ├── setup.png │ ├── update.png │ ├── users.png │ └── uservariables.png ├── setup.png ├── siren-off.png ├── siren-on.png ├── smoke48_Off.png ├── smoke48_On.png ├── smoke48off.png ├── smoke48on.png ├── switch.png ├── switches │ └── groups │ │ ├── group-active.png │ │ └── group.png ├── tabs │ ├── backup.png │ ├── dashboard.png │ ├── hardwares.png │ ├── icons8-bell-16.png │ ├── icons8-camera-16.png │ ├── icons8-cloud-storage-16.png │ ├── icons8-code-file-16.png │ ├── icons8-color-palette-16.png │ ├── icons8-counter-16.png │ ├── icons8-display-16.png │ ├── icons8-doorbell-16.png │ ├── icons8-edit-property-16.png │ ├── icons8-events-16.png │ ├── icons8-kodi-16.png │ ├── icons8-low-battery-16.png │ ├── icons8-menu-16.png │ ├── icons8-meter-16.png │ ├── icons8-new-post-16.png │ ├── icons8-push-notifications-16.png │ ├── icons8-schedule-16.png │ ├── icons8-sms-16.png │ ├── icons8-temperature-16.png │ ├── icons8-time-16.png │ ├── icons8-website-16.png │ ├── icons8-weight-16.png │ ├── icons8-wind-gauge-16.png │ ├── lights.png │ ├── location.png │ ├── lock.png │ ├── mobile.png │ ├── network.png │ ├── other.png │ ├── protection.png │ ├── readme.txt │ ├── remote.png │ ├── software_update.png │ └── user.png ├── temp-0-5.png ├── temp-10-15.png ├── temp-15-20.png ├── temp-20-25.png ├── temp-25-30.png ├── temp-35-40.png ├── temp-5-10.png ├── temp-gt-30.png ├── temp48.png ├── temperature.png ├── text48.png ├── utility.png ├── utility48.png ├── uv48.png ├── uvdark.png ├── uvsunny.png ├── visibility48.png ├── webcam.png ├── webcam48_Off.png ├── webcam48_On.png └── wind-direction │ ├── WindE.png │ ├── WindENE.png │ ├── WindESE.png │ ├── WindN.png │ ├── WindNE.png │ ├── WindNNE.png │ ├── WindNNW.png │ ├── WindNW.png │ ├── WindS.png │ ├── WindSE.png │ ├── WindSSE.png │ ├── WindSSW.png │ ├── WindSW.png │ ├── WindW.png │ ├── WindWNW.png │ └── WindWSW.png ├── js ├── camera.worker.js ├── check_update.js ├── custom_page.js ├── dashboard_camera.js ├── devices.js ├── functions.js ├── livestamp.js ├── moment.js ├── notify.js ├── settings_page.js ├── standby.js ├── switch.js └── themesettings.js ├── lang ├── machinon.de.js ├── machinon.en.js ├── machinon.fr.js ├── machinon.nl.js ├── machinon.pl.js └── machinon.sv.js ├── theme.json └── themesettings.html /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | Machinon issue and contributing Guidelines 2 | ========================================== 3 | 4 | ### Issue Guidelines 5 | 6 | Before opening a new issue, please review the following: 7 | * The Github Issues is for Domoticz CODE Bugs only. Please do not use this for general questions, howto, or this is not working conversations. If you have a question, please post to our forum at https://www.domoticz.com/forum/viewtopic.php?f=8&t=24084 8 | * Please use the search feature to see if your issues have been raised or addressed first. 9 | * First try to update to the latest beta version. 10 | * Always state your version when reporting code related issues 11 | * Often we will require Log Files and Screenshots to help diagnose the issue. 12 | 13 | ### Contributing to Machinon 14 | 15 | Please base your bug fixes against the beta branch. The master branch is considered the stable and is used for our releases. 16 | All changes should be based against the beta branch, unless advised by a Maintainer to use a different branch. 17 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # NEW GITHUB REPO 2 | 3 | :warning: Moved to https://github.com/domoticz/Machinon 4 | -------------------------------------------------------------------------------- /css/center_popups.css: -------------------------------------------------------------------------------- 1 | /**** ./center_popups.css ***/ 2 | /* force popups to be centered on the screen. */ 3 | 4 | .ui-dialog, 5 | .ui-popup { 6 | height: auto!important; 7 | width: auto!important; 8 | position: fixed!important; 9 | top: 50vh!important; 10 | left: 50%!important; 11 | transform: translate(-50%, -50%)!important; 12 | min-width: 200px!important; 13 | } 14 | -------------------------------------------------------------------------------- /css/dark_theme.css: -------------------------------------------------------------------------------- 1 | /**** ./dark_theme.css ***/ 2 | /* Dark theme */ 3 | 4 | :root { 5 | /*use with var(--main-blue-color)*/ 6 | --main-bg-color: #333639; 7 | --main-blue-color: #0b96cd; 8 | --main-navbar-bg-color: #232324; 9 | --main-item-bg-color: #515558; 10 | --main-disabled-color: #808080; 11 | --main-text-color: white; 12 | --main-border-color: black; 13 | } 14 | 15 | header.logo { 16 | background-image: linear-gradient(275deg, #103c68, #0073a7); 17 | } 18 | 19 | .dropdown-content, 20 | .mHeaderBtn li, 21 | .rectangle-8, 22 | .rectangle-8-dropdown { 23 | background-color: #515558; 24 | } 25 | 26 | @media screen and (max-width: 992px) { 27 | .navbar-inverse .navbar-inner, 28 | .navbar .nav li a, 29 | .navbar .nav li a:hover { 30 | background-color: var(--main-blue-color); 31 | } 32 | } 33 | 34 | .slider { 35 | background-color: #ccc; 36 | } 37 | 38 | .slider:before { 39 | background-color: #5A5A5A; 40 | } 41 | 42 | .slider.round { 43 | background-color: #393B3E; 44 | } 45 | 46 | .ui-corner-all, 47 | .display .ui-widget-content, 48 | .ui-widget-content { 49 | color: var(--main-text-color); 50 | background-color: var(--main-bg-color) !important; 51 | } 52 | 53 | .ui-dialog .ui-dialog-buttonpane { 54 | background: var(--main-bg-color); 55 | } 56 | 57 | .mDropdown-Text, 58 | .machinoSettings h2, 59 | .machinoText { 60 | color: var(--main-text-color) 61 | } 62 | 63 | .machinoHeader { 64 | color: #000; 65 | } 66 | 67 | .mDropdown-Text:hover { 68 | color: rgba(255,255,255,0.5); 69 | } 70 | 71 | #settingscontent input.parentrequired:not(:checked) ~ input.parentrequiredchild + label { 72 | color: #696969; 73 | } 74 | 75 | #login:before { 76 | background-image: linear-gradient(275deg, #103c68, #0073a7); 77 | } 78 | 79 | @media (max-width: 767px) { 80 | #searchInput:read-write:focus { 81 | background: linear-gradient(275deg, #103c68, #0073a7); 82 | } 83 | } 84 | 85 | .scroll:before { 86 | top: 0; 87 | background-image: linear-gradient(to top, rgba(81,85,88, 0), rgba(81,85,88, 1) 90%); 88 | } 89 | 90 | #bigtext, .switch-cell { 91 | background: linear-gradient(to right, rgba(81,85,88, 0), rgba(81,85,88, 1) 15px) !important; 92 | } 93 | 94 | #holder .row .item table[id^="item"] > tbody > tr.with-cam-preview > #name { 95 | background: rgba(0,0, 0, 0.2) !important; 96 | } 97 | 98 | -------------------------------------------------------------------------------- /css/dashboard_camera.css: -------------------------------------------------------------------------------- 1 | /**** ./dashboard_camera.css ***/ 2 | #holder .row .item table[id^="item"] > tbody > tr.with-cam-preview { 3 | background-size: cover; 4 | background-position: center; 5 | cursor: zoom-in; 6 | } 7 | 8 | #holder .row .item table[id^="item"] > tbody > tr.with-cam-preview > #name { 9 | background: rgba(255,255, 255, 0.2); 10 | border-bottom-right-radius: 5px; 11 | width: 100%; 12 | } 13 | 14 | #holder .row .item table[id^="item"] > tbody > tr.with-cam-preview td:not(#name) { 15 | display: none; 16 | } 17 | -------------------------------------------------------------------------------- /css/dashboard_columns.css: -------------------------------------------------------------------------------- 1 | /**** ./dashboard_columns.css ***/ 2 | @media (min-width: 1200px) { 3 | #dashcontent { 4 | padding: 0; 5 | } 6 | 7 | #dashcontent > section > h2 { 8 | text-align: center; 9 | height: 50px; 10 | } 11 | 12 | #dashcontent > section { 13 | width: calc(100% / 6 - 20px); 14 | float: left; 15 | margin-left: 10px; 16 | margin-right: 10px; 17 | } 18 | 19 | #dashcontent > section:not(.compact) > div.row.divider { 20 | grid-template-columns: none !important; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /css/dashboard_mobile.css: -------------------------------------------------------------------------------- 1 | /**** ./dashboard_mobile.css ***/ 2 | /***** MOBILE *****/ 3 | body.dashMobile { 4 | padding-left: 10px !important; 5 | padding-right: 10px !important; 6 | } 7 | 8 | body.dashMobile .navbar-fixed-top { 9 | margin-left: -10px; 10 | margin-right: -10px; 11 | } 12 | 13 | body.dashMobile section.dashCategory div.row.divider:first-of-type { 14 | display: none; 15 | } 16 | 17 | body.dashMobile section:first-of-type table.mobileitem { 18 | margin-top: 20px; 19 | } 20 | 21 | body.dashMobile table.mobileitem { 22 | width: 100%; 23 | padding: 0; 24 | margin-top: 10px; 25 | box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.2); 26 | } 27 | 28 | body.dashMobile table.mobileitem > thead > tr { 29 | background: none; 30 | } 31 | 32 | body.dashMobile table.mobileitem > thead > tr > th:first-of-type { 33 | font-family: main-font-bold; 34 | flex-grow: 1; 35 | } 36 | 37 | body.dashMobile table.mobileitem th { 38 | box-shadow: none; 39 | display: inline; 40 | text-shadow: none; 41 | background: var(--main-border-color); 42 | color: var(--main-text-color); 43 | } 44 | 45 | body.dashMobile table.mobileitem th:last-child a { 46 | color: var(--main-border-color) !important; 47 | } 48 | 49 | body.dashMobile table.mobileitem tr { 50 | background: var(--main-item-bg-color); 51 | display: flex; 52 | flex-grow: 1; 53 | flex-direction: row; 54 | justify-content: space-between; 55 | width: 100%; 56 | } 57 | 58 | body.dashMobile table.mobileitem tr:hover { 59 | background: var(--main-item-bg-color); 60 | } 61 | 62 | body.dashMobile table.mobileitem td { 63 | display: inline-flex; 64 | color: var(--main-text-color); 65 | flex-grow: 1; 66 | flex-shrink: 1; 67 | align-items: center; 68 | padding: 5px!important; 69 | border-color: var(--main-bg-color); 70 | } 71 | 72 | body.dashMobile table.mobileitem td:last-child { 73 | font-family: main-font-bold; 74 | min-height: 25px; 75 | } 76 | 77 | body.dashMobile table.mobileitem td[colspan="2"]:last-child { 78 | padding-bottom: 0 !important; 79 | padding-top: 0 !important; 80 | } 81 | 82 | body.dashMobile table.mobileitem td[colspan="2"]:last-child > div { 83 | width: 100%; 84 | } 85 | 86 | body.dashMobile table.mobileitem td label { 87 | white-space: nowrap; 88 | height: 50%; 89 | } 90 | 91 | body.dashMobile table.mobileitem th img, 92 | body.dashMobile table.mobileitem td#name img, 93 | body.dashMobile table.mobileitem td.name img { 94 | display: none; 95 | } 96 | 97 | body.dashMobile table.mobileitem th a, 98 | body.dashMobile table.mobileitem td#name a, 99 | body.dashMobile table.mobileitem td.name a { 100 | color: var(--main-item-bg-color); 101 | background: var(--main-blue-color); 102 | text-decoration: none; 103 | border-radius: 50%; 104 | display: block; 105 | height: 18px; 106 | width: 18px; 107 | margin-right: 5px; 108 | } 109 | 110 | body.dashMobile table.mobileitem th a:after, 111 | body.dashMobile table.mobileitem td#name a:after, 112 | body.dashMobile table.mobileitem td.name a:after { 113 | content: "\2794"; 114 | display: block; 115 | color: inherit; 116 | font-size: 12px; 117 | text-align: center; 118 | } 119 | 120 | body.dashMobile table.mobileitem td#status, 121 | body.dashMobile table.mobileitem td.status { 122 | max-width: 60%; 123 | justify-content: flex-end; 124 | flex-grow: 1; 125 | flex-shrink: 1; 126 | text-align: end; 127 | } 128 | 129 | body.dashMobile table.mobileitem .status > span > span { 130 | margin-right: 7px; 131 | } 132 | 133 | body.dashMobile table.mobileitem .btn-group { 134 | white-space: normal; 135 | padding: 10px 5px; 136 | margin-top: 15px !important; 137 | } 138 | 139 | body.dashMobile table.mobileitem .btn-group .btn { 140 | padding-top: 0 !important; 141 | padding-bottom: 0 !important; 142 | font-family: main-font-bold; 143 | font-size: 10pt; 144 | margin-left: 2px !important; 145 | margin-bottom: 2px !important; 146 | border-radius: 1px !important; 147 | } 148 | 149 | body.dashMobile table.mobileitem .btn-mini { 150 | margin-left: 2px; 151 | font-family: main-font-bold; 152 | text-shadow: none; 153 | } 154 | 155 | body.dashMobile table.mobileitem .dimslider { 156 | border: none; 157 | border-radius: 3px; 158 | box-shadow: none; 159 | height: 5px; 160 | margin-top: unset !important; 161 | } 162 | 163 | body.dashMobile table.mobileitem .dimslider .ui-slider-range { 164 | background: rgba(11, 151, 205, 0.5); 165 | } 166 | 167 | body.dashMobile table.mobileitem .dimslider .ui-slider-handle { 168 | width: 15px; 169 | height: 15px; 170 | background: var(--main-blue-color); 171 | border-radius: 50%; 172 | top: -6px; 173 | } 174 | 175 | body.dashMobile table.mobileitem .selectorlevels .ui-selectmenu-button { 176 | display: none; 177 | } 178 | 179 | body.dashMobile table.mobileitem .selectorlevels { 180 | margin-top: -30px !important; 181 | width: 100%; 182 | } 183 | 184 | body.dashMobile table.mobileitem .selectorlevels > select { 185 | padding: 0; 186 | } 187 | -------------------------------------------------------------------------------- /css/dashboard_show_last_update.css: -------------------------------------------------------------------------------- 1 | /**** ./dashboard_show_last_update.css ***/ 2 | /* Shows last Seen on dashboard */ 3 | #holder #dashcontent .row .item table[id^="item"] > tbody > tr { 4 | grid-template-rows: 40px minmax(58px,1fr) 20px !important; 5 | } 6 | 7 | #holder #dashcontent .row .span3 .item table[id^="item"] > tbody > tr { 8 | grid-template-rows: 20px 58px 20px !important; 9 | } 10 | 11 | #dashcontent .lastupdate, 12 | #dashcontent #lastupdate, 13 | #dashcontent #timeago { 14 | display: block; 15 | white-space: nowrap; 16 | } 17 | 18 | #dashcontent #lastupdate { 19 | right: 20px; 20 | bottom: 15px; 21 | } 22 | -------------------------------------------------------------------------------- /css/floorplan.css: -------------------------------------------------------------------------------- 1 | /**** ./floorplan.css ***/ 2 | /* Floorplan */ 3 | rect#shadow { 4 | rx: 5; 5 | ry: 5; 6 | } 7 | 8 | rect.popup { 9 | rx: 5; 10 | ry: 5; 11 | fill: var(--main-item-bg-color) !important; 12 | } 13 | 14 | rect.header { 15 | rx: 5; 16 | ry: 5; 17 | fill: var(--main-item-bg-color) !important; 18 | stroke-width: 0 !important; 19 | } 20 | 21 | .DeviceDetails text { 22 | font-family: main-font !important; 23 | fill: var(--main-text-color) !important; 24 | } 25 | 26 | .DeviceDetails text#name { 27 | font-weight: bold !important; 28 | } 29 | 30 | .DeviceDetails text#status { 31 | font-size: 100% !important; 32 | fill: var(--main-blue-color) !important; 33 | } 34 | 35 | .DeviceDetails text#bigtext { 36 | display: none; 37 | } 38 | 39 | g text { 40 | fill: var(--main-text-color) !important; 41 | } 42 | 43 | image#twisty { 44 | display: none; 45 | } 46 | 47 | .bullet { 48 | border: 1px solid var(--main-blue-color) !important; 49 | } 50 | 51 | .bulletSelected { 52 | border: 1px solid var(--main-blue-color) !important; 53 | background: var(--main-blue-color) !important; 54 | } 55 | -------------------------------------------------------------------------------- /css/footer.css: -------------------------------------------------------------------------------- 1 | #copyright { 2 | display: none !important; 3 | } 4 | -------------------------------------------------------------------------------- /css/icons_on_tabs.css: -------------------------------------------------------------------------------- 1 | /**** ./icons_on_tabs.css ***/ 2 | /* css file for custom tabs */ 3 | 4 | /* Add icons on headers */ 5 | .span6 H2 [data-i18n="User Interface"]::before { 6 | content: url(../images/tabs/user.png); 7 | margin-right: 10px; 8 | vertical-align: middle; 9 | } 10 | 11 | .span6 H2 [data-i18n="Location"]::before { 12 | content: url(../images/tabs/location.png); 13 | margin-right: 10px; 14 | vertical-align: middle; 15 | } 16 | 17 | .span6 H2 [data-i18n="Dashboard"]::before { 18 | content: url(../images/tabs/dashboard.png); 19 | margin-right: 10px; 20 | vertical-align: middle; 21 | } 22 | 23 | .span6 H2 [data-i18n="Mobile"]::before { 24 | content: url(../images/tabs/mobile.png); 25 | margin-right: 10px; 26 | vertical-align: middle; 27 | } 28 | 29 | .span6 H2 [data-i18n="WebsiteProtection"]::before { 30 | content: url(../images/tabs/lock.png); 31 | margin-right: 10px; 32 | vertical-align: middle; 33 | } 34 | 35 | .span6 H2 [data-i18n="SecurityPanel"]::before { 36 | content: url(../images/tabs/protection.png); 37 | margin-right: 10px; 38 | vertical-align: middle; 39 | } 40 | 41 | .span12 H2 [data-i18n="Light/Switch Protection"]::before { 42 | content: url(../images/tabs/lights.png); 43 | margin-right: 10px; 44 | vertical-align: middle; 45 | } 46 | 47 | .span6 H2 [data-i18n="LocalNetworks(no_username/password)"]::before { 48 | content: url(../images/tabs/network.png); 49 | margin-right: 10px; 50 | vertical-align: middle; 51 | } 52 | 53 | .span6 H2 [data-i18n="RemoteSharedPortForDomoticzClients"]::before { 54 | content: url(../images/tabs/remote.png); 55 | margin-right: 10px; 56 | vertical-align: middle; 57 | } 58 | 59 | .span6 H2 [data-i18n="SoftwareUpdates"]::before { 60 | content: url(../images/tabs/software_update.png); 61 | margin-right: 10px; 62 | vertical-align: middle; 63 | } 64 | 65 | .span6 H2 [data-i18n="AutoBackup"]::before { 66 | content: url(../images/tabs/backup.png); 67 | margin-right: 10px; 68 | vertical-align: middle; 69 | } 70 | 71 | .span12 H2 [data-i18n="RemoteProxyIPs"]::before { 72 | content: url(../images/tabs/remote.png); 73 | margin-right: 10px; 74 | vertical-align: middle; 75 | } 76 | 77 | .span6 H2 [data-i18n="AcceptNewHardware"]::before { 78 | content: url(../images/tabs/hardwares.png); 79 | margin-right: 10px; 80 | vertical-align: middle; 81 | } 82 | 83 | .span6 H2 [data-i18n="MyDomoticzSettings"]::before { 84 | content: url(../images/tabs/other.png); 85 | margin-right: 10px; 86 | vertical-align: middle; 87 | } 88 | 89 | .span12 H2 [data-i18n="ActiveMenus"]::before { 90 | content: url(../images/tabs/icons8-menu-16.png); 91 | margin-right: 10px; 92 | vertical-align: middle; 93 | } 94 | 95 | .span12 H2 [data-i18n="General"]::before { 96 | content: url(../images/tabs/other.png); 97 | margin-right: 10px; 98 | vertical-align: middle; 99 | } 100 | 101 | .span6 H2 [data-i18n="General"]::before { 102 | content: url(../images/tabs/other.png); 103 | margin-right: 10px; 104 | vertical-align: middle; 105 | } 106 | 107 | .span6 H2 [data-i18n="Menu"]::before { 108 | content: url(../images/tabs/icons8-menu-16.png); 109 | margin-right: 10px; 110 | vertical-align: middle; 111 | } 112 | 113 | .span6 H2 [data-i18n="Devices"]::before { 114 | content: url(../images/tabs/icons8-meter-16.png); 115 | margin-right: 10px; 116 | vertical-align: middle; 117 | } 118 | 119 | .span12 H2 [data-i18n="Image instead of icons"]::before { 120 | content: url(../images/tabs/icons8-color-palette-16.png); 121 | margin-right: 10px; 122 | vertical-align: middle; 123 | } 124 | 125 | .span6 H2 [data-i18n="Background"]::before { 126 | content: url(../images/tabs/icons8-camera-16.png); 127 | margin-right: 10px; 128 | vertical-align: middle; 129 | } 130 | 131 | .span6 H2 [data-i18n="Logo"]::before { 132 | content: url(../images/tabs/icons8-display-16.png); 133 | margin-right: 10px; 134 | vertical-align: middle; 135 | } 136 | 137 | .span12 H2 [data-i18n="Light/Switches"]::before { 138 | content: url(../images/tabs/lights.png); 139 | margin-right: 10px; 140 | vertical-align: middle; 141 | } 142 | 143 | .span12 H2 [data-i18n="Short Log Sensors"]::before { 144 | content: url(../images/tabs/icons8-edit-property-16.png); 145 | margin-right: 10px; 146 | vertical-align: middle; 147 | } 148 | 149 | .span6 H2 [data-i18n="Prowl (iPhone/iPad)"]::before { 150 | content: url(../images/tabs/icons8-push-notifications-16.png); 151 | margin-right: 10px; 152 | vertical-align: middle; 153 | } 154 | 155 | .span6 H2 [data-i18n="Pushover (Android/iOs)"]::before { 156 | content: url(../images/tabs/icons8-push-notifications-16.png); 157 | margin-right: 10px; 158 | vertical-align: middle; 159 | } 160 | 161 | .span6 H2 [data-i18n="Pushalot (Windows/Windows Phone)"]::before { 162 | content: url(../images/tabs/icons8-push-notifications-16.png); 163 | margin-right: 10px; 164 | vertical-align: middle; 165 | } 166 | 167 | .span6 H2 [data-i18n="Clickatell SMS"]::before { 168 | content: url(../images/tabs/icons8-sms-16.png); 169 | margin-right: 10px; 170 | vertical-align: middle; 171 | } 172 | 173 | .span6 H2 [data-i18n="Custom HTTP"]::before { 174 | content: url(../images/tabs/icons8-website-16.png); 175 | margin-right: 10px; 176 | vertical-align: middle; 177 | } 178 | 179 | .span6 H2 [data-i18n="Kodi Media Player"]::before { 180 | content: url(../images/tabs/icons8-kodi-16.png); 181 | margin-right: 10px; 182 | vertical-align: middle; 183 | } 184 | 185 | .span6 H2 [data-i18n="Logitech Media Server"]::before { 186 | content: url(../images/tabs/icons8-cloud-storage-16.png); 187 | margin-right: 10px; 188 | vertical-align: middle; 189 | } 190 | 191 | .span6 H2 [data-i18n="Google Cloud Messaging"]::before { 192 | content: url(../images/tabs/icons8-cloud-storage-16.png); 193 | margin-right: 10px; 194 | vertical-align: middle; 195 | } 196 | 197 | .span12 H2 [data-i18n="Notification Intervals"]::before { 198 | content: url(../images/tabs/other.png); 199 | margin-right: 10px; 200 | vertical-align: middle; 201 | } 202 | 203 | .span6 H2 [data-i18n="Notification Intervals"]::before { 204 | content: url(../images/tabs/other.png); 205 | margin-right: 10px; 206 | vertical-align: middle; 207 | } 208 | 209 | .span12 H2 [data-i18n="Email Setup"]::before { 210 | content: url(../images/tabs/icons8-new-post-16.png); 211 | margin-right: 10px; 212 | vertical-align: middle; 213 | } 214 | 215 | .span4 H2 [data-i18n="Temperature"]::before { 216 | content: url(../images/tabs/icons8-temperature-16.png); 217 | margin-right: 10px; 218 | vertical-align: middle; 219 | } 220 | 221 | .span4 H2 [data-i18n="Wind Meter"]::before { 222 | content: url(../images/tabs/icons8-wind-gauge-16.png); 223 | margin-right: 10px; 224 | vertical-align: middle; 225 | } 226 | 227 | .span4 H2 [data-i18n="Weight"]::before { 228 | content: url(../images/tabs/icons8-weight-16.png); 229 | margin-right: 10px; 230 | vertical-align: middle; 231 | } 232 | 233 | .span12 H2 [data-i18n="RFXMeter/Counter Dividers"]::before { 234 | content: url(../images/tabs/icons8-counter-16.png); 235 | margin-right: 10px; 236 | vertical-align: middle; 237 | } 238 | 239 | .span12 H2 [data-i18n="P1 Smart Meter Type"]::before { 240 | content: url(../images/tabs/icons8-meter-16.png); 241 | margin-right: 10px; 242 | vertical-align: middle; 243 | } 244 | 245 | .span12 H2 [data-i18n="Display Values"]::before { 246 | content: url(../images/tabs/icons8-display-16.png); 247 | margin-right: 10px; 248 | vertical-align: middle; 249 | } 250 | 251 | .span12 H2 [data-i18n="Colour Options"]::before { 252 | content: url(../images/tabs/icons8-color-palette-16.png); 253 | margin-right: 10px; 254 | vertical-align: middle; 255 | } 256 | 257 | .span12 H2 [data-i18n="Random Timer"]::before { 258 | content: url(../images/tabs/icons8-time-16.png); 259 | margin-right: 10px; 260 | vertical-align: middle; 261 | } 262 | 263 | .span12 H2 [data-i18n="Sensor Timeout"]::before { 264 | content: url(../images/tabs/icons8-time-16.png); 265 | margin-right: 10px; 266 | vertical-align: middle; 267 | } 268 | 269 | .span12 H2 [data-i18n="Timer Plan"]::before { 270 | content: url(../images/tabs/icons8-schedule-16.png); 271 | margin-right: 10px; 272 | vertical-align: middle; 273 | } 274 | 275 | .span12 H2 [data-i18n="Battery Low Level"]::before { 276 | content: url(../images/tabs/icons8-low-battery-16.png); 277 | margin-right: 10px; 278 | vertical-align: middle; 279 | } 280 | 281 | .span12 H2 [data-i18n="Doorbell Command"]::before { 282 | content: url(../images/tabs/icons8-doorbell-16.png); 283 | margin-right: 10px; 284 | vertical-align: middle; 285 | } 286 | 287 | .span12 H2 [data-i18n="Raspberry Pi Camera Parameters"]::before { 288 | content: url(../images/tabs/icons8-camera-16.png); 289 | margin-right: 10px; 290 | vertical-align: middle; 291 | } 292 | 293 | .span12 H2 [data-i18n="UVC Parameters"]::before { 294 | content: url(../images/tabs/other.png); 295 | margin-right: 10px; 296 | vertical-align: middle; 297 | } 298 | 299 | .span12 H2 [data-i18n="EventSystem (Lua/Blockly/Scripts)"]::before { 300 | content: url(../images/tabs/icons8-events-16.png); 301 | margin-right: 10px; 302 | vertical-align: middle; 303 | } 304 | 305 | .span12 H2 [data-i18n="dzVents"]::before { 306 | content: url(../images/tabs/icons8-code-file-16.png); 307 | margin-right: 10px; 308 | vertical-align: middle; 309 | } 310 | -------------------------------------------------------------------------------- /css/iconsupload.css: -------------------------------------------------------------------------------- 1 | /**** ./iconsupload.css ***/ 2 | /* Icon Page */ 3 | #iconsmain h3 { 4 | font-family: main-font !important; 5 | font-size: 150% !important; 6 | } 7 | 8 | #iconsmain .iconlist .iconlistitem p { 9 | font-family: main-font !important; 10 | color: var(--secondary-text-color) !important; 11 | } 12 | 13 | #iconsmain > div > div > div > h3 { 14 | color: var(--main-text-color) !important; 15 | } 16 | 17 | #iconsmain > div > img { 18 | position: relative; 19 | left: 8%; 20 | } 21 | 22 | #iconsmain > div { 23 | margin-top: 2% !important; 24 | } 25 | 26 | #iconsmain > div > div { 27 | background-color: var(--main-bg-color) !important; 28 | color: var(--main-text-color) !important; 29 | border: none; 30 | } 31 | 32 | 33 | #iconsmain > div > table tr:last-child td:last-child { 34 | padding-top: 20px; 35 | } 36 | 37 | #iconsmain > table > tbody { 38 | position: absolute; 39 | top: 140px; 40 | right: 40px; 41 | } 42 | 43 | #iconsmain input[type=file] { 44 | display: none; 45 | } 46 | 47 | #iconsmain input + button { 48 | display: none; 49 | } 50 | 51 | #iconsmain button:disabled { 52 | display: none; 53 | } 54 | 55 | @media screen and (max-width: 992px) { 56 | #iconsmain > table > tbody { 57 | top: 1%; 58 | right: 10px; 59 | } 60 | } 61 | 62 | #iconsmain .iconlist .iconlistitem:hover, 63 | #iconsmain .iconlist .iconlistitemselected { 64 | border-radius: 2px; 65 | background-color: var(--main-bg-color) !important; 66 | box-shadow: 0px 0px 0px 2px rgb(11, 150, 205); 67 | } 68 | 69 | #iconsmain .iconcell { 70 | margin: 20px 0; 71 | } 72 | 73 | #iconsmain .iconlist .iconlistitem { 74 | padding: 0px; 75 | width: 180px; 76 | overflow: auto; 77 | margin: 2px 0px 0px 15px; 78 | height: 52px; 79 | } 80 | -------------------------------------------------------------------------------- /css/navbar_icons.css: -------------------------------------------------------------------------------- 1 | /**** ./navbar_icons.css ***/ 2 | .navbar .nav li a img { 3 | display: inline; 4 | width: 24px; 5 | height: 24px; 6 | } 7 | 8 | .navbar .nav li a span { 9 | display: block; 10 | } 11 | 12 | .navbar.notext .nav li a span { 13 | display: none !important; 14 | } 15 | 16 | @media screen and (max-width: 992px) { 17 | .navbar .nav li a img { 18 | width: 24px; 19 | height: 24px; 20 | } 21 | 22 | .navbar.notext .navbar-inner { 23 | width: 60px; 24 | } 25 | 26 | .navbar.notext .nav li a img { 27 | width: 32px; 28 | height: 32px; 29 | } 30 | 31 | .navbar.notext .nav > li { 32 | width: 60px; 33 | } 34 | 35 | .navbar.notext .hidden-tablet, 36 | .navbar.notext .hidden-phone { 37 | display: none !important; 38 | } 39 | } 40 | 41 | @media screen and (min-width: 992px) { 42 | .events-editor { 43 | margin-top: 90px; 44 | } 45 | 46 | #timesun { 47 | margin-top: 10px; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /css/settings.css: -------------------------------------------------------------------------------- 1 | /**** ./settings.css ***/ 2 | /* Setup */ 3 | input#AcceptNewHardware:checked ~ button { 4 | display: none 5 | } 6 | 7 | .allow5min, 8 | .allow5min:hover { 9 | background: none; 10 | background-color: var(--main-blue-color); 11 | color: #fff; 12 | border-radius: 2px; 13 | border: none; 14 | } 15 | 16 | /* =Setup */ 17 | /* Footer */ 18 | /* =Footer */ 19 | /* Popups */ 20 | 21 | /* Theme tab in Settings */ 22 | input.parentrequiredchild { 23 | margin-left: 16px; 24 | } 25 | 26 | input.parentunrequiredchild { 27 | margin-left: 16px; 28 | } 29 | /* if a sub-setting needs the parent settings to be checked. */ 30 | #settingscontent input.parentrequired:not(:checked) ~ input.parentrequiredchild, 31 | #settingscontent input.parentrequired:not(:checked) ~ textarea.parentrequiredchild, 32 | #settingscontent input.parentrequired:not(:checked) ~ input.parentrequiredchild + label { 33 | color: var(--main-disabled-color); 34 | } 35 | 36 | #settingscontent input.parentrequired:checked ~ input.parentrequiredchild, 37 | #settingscontent input.parentrequired:checked ~ input.parentrequiredchild + label { 38 | display: inline-block; 39 | margin-right: 5px; 40 | } 41 | 42 | #settingscontent input.parentrequired:not(:checked) ~ .parentrequiredchild { 43 | display: inline-block; 44 | } 45 | 46 | /* if a sub-setting needs the parent settings to be UNchecked. */ 47 | #settingscontent input.parentunrequired:checked ~ input.parentunrequiredchild, 48 | #settingscontent input.parentunrequired:checked ~ input.parentunrequiredchild + label { 49 | display: inline-block; 50 | } 51 | 52 | #settingscontent input.parentunrequired:not(:checked) ~ input.parentunrequiredchild, 53 | #settingscontent input.parentunrequired:not(:checked) ~ input.parentunrequiredchild + label { 54 | display: inline-block; 55 | } 56 | 57 | /*System page*/ 58 | #settings .row-fluid { 59 | height: auto; 60 | border-radius: 6px; 61 | display: flex; 62 | justify-content: center; 63 | } 64 | 65 | #settings .row-fluid > div { 66 | background: var(--main-item-bg-color); 67 | border: 1px solid var(--main-item-bg-color); 68 | } 69 | 70 | #settings .row-fluid > div:hover { 71 | border-color: var(--main-blue-color); 72 | } 73 | 74 | #settings .row-fluid > .span4, #settings .row-fluid > .span6, #settings .row-fluid > .span12 { 75 | height: auto; 76 | box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.2); 77 | border-radius: 6px; 78 | margin: 20px; 79 | padding: 20px; 80 | flex-basis: 500px; 81 | width: auto; 82 | flex-grow: 1; 83 | } 84 | 85 | #settings input, #settings select, #settings textarea { 86 | width: auto !important; 87 | } 88 | 89 | #settings textarea { 90 | width: 100% !important; 91 | } 92 | 93 | #textareaIcons { 94 | resize: none; 95 | width: 100%; 96 | } 97 | 98 | .blocklyText { 99 | color: #fff !important; 100 | fill: #fff !important; 101 | } 102 | 103 | .blocklyNonEditableText>text, .blocklyEditableText>text { 104 | fill: #000 !important; 105 | } 106 | 107 | /* Settings page CSS */ 108 | #machinoSettings { 109 | padding: 0 20px; 110 | } 111 | 112 | .mHeaderBtn { 113 | margin-left: calc(100% - 660px); 114 | margin-top: -1.8%; 115 | margin-bottom: 20px; 116 | display: flex; 117 | justify-content: space-around; 118 | } 119 | 120 | .mHeaderBtn li { 121 | padding: 5px 20px; 122 | margin: 0 0 3px 0; 123 | height: 30px; 124 | border-radius: 2px; 125 | background-color: var(--main-border-color); 126 | cursor: pointer; 127 | display: flex; 128 | justify-content: flex-start; 129 | align-items: center; 130 | } 131 | 132 | .mHeaderBtn li:hover { 133 | background-color: rgba(169,169,169,0.5); 134 | } 135 | 136 | .mHeaderBtn li i { 137 | font-size: 22px; 138 | } 139 | 140 | .mHeaderBtn li div { 141 | font-size: 14px; 142 | letter-spacing: -0.5px; 143 | margin-left: 10px; 144 | ; 145 | } 146 | 147 | .rectangle-8, .rectangle-8-dropdown { 148 | border: 1.5px solid; 149 | border-color: transparent; 150 | border-radius: 6px; 151 | background-color: #ffffff; 152 | cursor: pointer; 153 | box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2); 154 | list-style-type: none; 155 | height: 75px; 156 | margin-left: 20px; 157 | margin-bottom: 20px; 158 | flex: 1 0 15%; 159 | display: flex; 160 | padding: 20px; 161 | justify-content: flex-start; 162 | align-items: center; 163 | } 164 | 165 | .machinoText { 166 | font-size: 16px; 167 | font-weight: 300; 168 | letter-spacing: -0.5px; 169 | color: var(--main-text-color); 170 | margin-left: 20px; 171 | } 172 | 173 | .mDropdown-Text { 174 | font-size: 14px; 175 | font-weight: 300; 176 | letter-spacing: -0.5px; 177 | text-align: left; 178 | vertical-align: middle; 179 | color: var(--secondary-text-color); 180 | text-decoration: none; 181 | } 182 | 183 | .mDropdown-Text:hover { 184 | color: rgba(0,0,0,0.5); 185 | cursor: pointer; 186 | } 187 | 188 | .machinon_ul { 189 | margin: 0; 190 | display: grid; 191 | grid-template-columns: repeat(auto-fill, 250px); 192 | grid-auto-flow: row dense; 193 | justify-content: space-evenly; 194 | column-gap: 20px; 195 | } 196 | 197 | ul.machinon_ul li { 198 | padding: 5px 15px; 199 | margin: 15px 0; 200 | } 201 | 202 | .machinon_ul li:hover { 203 | border-color: var(--main-blue-color); 204 | } 205 | 206 | .dropdown-content { 207 | display: none; 208 | background-color: #fff; 209 | min-width: 160px; 210 | border: 1px solid var(--main-blue-color); 211 | box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); 212 | padding: 12px 16px; 213 | z-index: 1; 214 | position: absolute; 215 | } 216 | 217 | .dropdown-content a { 218 | color: inherit; 219 | } 220 | 221 | .rectangle-8-dropdown:hover .dropdown-content { 222 | display: block; 223 | } 224 | 225 | .forkme { 226 | margin: -21px -21px 0 0; 227 | } 228 | 229 | #themesettings h1 { 230 | display: inline 231 | } 232 | 233 | #themesettings p { 234 | margin: 2px 0; 235 | } 236 | 237 | #themesettings h3 { 238 | margin-top: 20px; 239 | } 240 | 241 | #themesettings h4 { 242 | margin-top: 10px; 243 | } 244 | 245 | #themesettings a { 246 | color: inherit 247 | } 248 | 249 | @media all and (max-width: 767px) { 250 | #machinoSettings { 251 | padding: 0; 252 | } 253 | 254 | ul.mHeaderBtn { 255 | display: flex; 256 | margin-left: 0; 257 | margin-top: 10px; 258 | } 259 | 260 | ul.mHeaderBtn li div { 261 | display: none; 262 | } 263 | 264 | ul.machinon_ul { 265 | margin: 0 0 10px 5px; 266 | display: block; 267 | } 268 | 269 | ul.machinon_ul li { 270 | padding-left: 40px; 271 | } 272 | 273 | code { 274 | white-space: normal; 275 | } 276 | 277 | #settings section:last-child { 278 | margin-bottom: 50px; 279 | } 280 | 281 | #settings li.pull-right { 282 | position: fixed; 283 | left: 0; 284 | bottom: 5px; 285 | width: 100%; 286 | } 287 | 288 | #settings li.pull-right a { 289 | margin: 0 20px; 290 | box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.2); 291 | } 292 | } 293 | 294 | @media screen and (max-width: 992px) { 295 | #settings .row-fluid { 296 | flex-wrap: wrap; 297 | font-size: 0.9em; 298 | } 299 | 300 | #settings .row-fluid > .span4, #settings .row-fluid > .span6, #settings .row-fluid > .span12 { 301 | min-height: unset; 302 | margin: 10px; 303 | } 304 | 305 | #settings section > br { 306 | display: none; 307 | } 308 | } 309 | -------------------------------------------------------------------------------- /css/sidemenu.css: -------------------------------------------------------------------------------- 1 | /**** ./sidemenu.css ***/ 2 | img.header__icon { 3 | left: 50%; 4 | transform: translate(-50%, -50%); 5 | } 6 | 7 | .bannercontent { 8 | padding: 0px 2% 0 2%; 9 | } 10 | 11 | .navbar-inverse .navbar-inner { 12 | background-color: var(--main-blue-color); 13 | width: 300px; 14 | height: calc(100% - 20px); 15 | transform: translateX(-150%); 16 | transition: transform 0.5s; 17 | margin-top: -40px; 18 | padding: 10px; 19 | border: none; 20 | border-radius: 1px; 21 | box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.2); 22 | position: fixed; 23 | z-index: 2; 24 | } 25 | 26 | .navbar.notext .navbar-inner { 27 | width: 60px; 28 | } 29 | 30 | .navbar-inverse .navbar-inner.slide { 31 | transform: translateX(0); 32 | overflow-x: hidden; 33 | overflow-y: auto; 34 | scrollbar-width: thin; 35 | scrollbar-color: #fff var(--main-blue-color); 36 | } 37 | 38 | .navbar-inverse .navbar-inner.slide::-webkit-scrollbar { 39 | width: 6px; 40 | border-radius: 5px; 41 | } 42 | 43 | .navbar-inverse .navbar-inner.slide::-webkit-scrollbar-thumb { 44 | background: rgba(0,0,0, 0.4); 45 | border-radius: 5px; 46 | } 47 | 48 | .navbar-inverse .navbar-inner > div.container { 49 | max-width: 100%; 50 | } 51 | 52 | .menu-toggle { 53 | display: block !important; 54 | cursor: pointer; 55 | } 56 | 57 | .navbar .nav { 58 | margin: 0 !important; 59 | margin-top: 35px !important; 60 | float: none; 61 | } 62 | 63 | .navbar .nav > li { 64 | border-bottom: 1px solid #fff; 65 | float: none; 66 | } 67 | 68 | .navbar.notext .nav > li { 69 | width: 60px; 70 | } 71 | 72 | .navbar .nav > li > .dropdown-menu.pull-right li { 73 | margin: 0; 74 | } 75 | 76 | .navbar .nav .dropdown-menu { 77 | padding: 0; 78 | box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.2); 79 | } 80 | 81 | .navbar .nav li a { 82 | color: #fff; 83 | font-size: 20px; 84 | text-align: left; 85 | } 86 | 87 | .navbar .nav li a:hover { 88 | background-color: transparent !important; 89 | color: #000 !important; 90 | } 91 | 92 | .nav li a img { 93 | padding-right: 10px; 94 | } 95 | 96 | .navbar .nav .current_page_item > a { 97 | text-align: left; 98 | } 99 | 100 | .navbar .nav li ul li ul { 101 | right: 0 !important; 102 | left: 0 !important; 103 | top: 245% !important; 104 | width: 100% !important; 105 | padding: 0 !important; 106 | margin: 0 !important; 107 | } 108 | 109 | .navbar .nav li ul li ul li ul { 110 | top: 345% !important; 111 | width: 100% !important; 112 | padding: 0 !important; 113 | margin: 0 !important; 114 | } 115 | 116 | .navbar .divider-vertical { 117 | display: none !important; 118 | } 119 | 120 | .hidden-tablet, 121 | .hidden-phone { 122 | display: inline !important; 123 | } 124 | 125 | .navbar-inverse .nav li.dropdown.open > .dropdown-toggle, 126 | .navbar-inverse .nav li.dropdown.open > .dropdown-toggle:before { 127 | background: rgba(0,0,0,0.2); 128 | color: var(--main-text-color); 129 | } 130 | 131 | .navbar-inverse .nav li.dropdown > .dropdown-toggle .caret { 132 | border-top-color: #fff; 133 | border-bottom-color: #fff; 134 | } 135 | 136 | .navbar .pull-right > li > .dropdown-menu, .navbar .nav > li > .dropdown-menu.pull-right { 137 | left: 0; 138 | width: 100%; 139 | } 140 | 141 | .navbar .nav ul.dropdown-menu li { 142 | line-height: 16px; 143 | } 144 | 145 | .navbar .nav ul.dropdown-menu li a { 146 | font-size: 16px; 147 | } 148 | 149 | .navbar .nav ul.dropdown-menu li a span { 150 | display: inline; 151 | } 152 | 153 | .navbar .pull-right > li > .dropdown-menu:after, 154 | .navbar .nav > li > .dropdown-menu.pull-right:after, 155 | .navbar .pull-right > li > .dropdown-menu:after, 156 | .navbar .nav > li > .dropdown-menu.pull-right:before { 157 | display: none !important; 158 | } 159 | 160 | .navbar .nav .dropdown-menu, 161 | .navbar .pull-right > li > .dropdown-menu .dropdown-menu, 162 | .navbar .nav > li > .dropdown-menu.pull-right .dropdown-menu, 163 | .navbar .pull-right > li > .dropdown-menu .dropdown-menu, 164 | .navbar .nav > li > .dropdown-menu.pull-right .dropdown-menu { 165 | background: rgba(0,0,0,0.4) !important; 166 | position: relative; 167 | font-size: 16px; 168 | } 169 | 170 | .dropdown-submenu > a:after { 171 | background: transparent !important; 172 | position: absolute; 173 | right: 50px; 174 | bottom: 10px; 175 | transform: rotate(90deg); 176 | border-left-color: #fff; 177 | border-width: 4px; 178 | } 179 | 180 | .dropdown-submenu:hover > a:after { 181 | border-left-color: #000; 182 | } 183 | 184 | .navbar-fixed-top { 185 | margin-bottom: 20px; 186 | position: static !important; 187 | } 188 | 189 | #iconsmain > div > tbody { 190 | top: 1%; 191 | } 192 | 193 | .events-editor { 194 | margin-top: -40px; 195 | } 196 | 197 | #holder > .container-fluid { 198 | padding-top: 0; 199 | } 200 | -------------------------------------------------------------------------------- /css/switch.css: -------------------------------------------------------------------------------- 1 | /**** ./switch.css ***/ 2 | .switch-cell { 3 | grid-area: bigtext; 4 | justify-self: right; 5 | background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1) 15px); 6 | line-height: 20px; 7 | padding: 10px 0 0 30px; 8 | } 9 | 10 | .switch { 11 | position: relative; 12 | display: inline-block; 13 | margin-right: 10px; 14 | width: 40px; 15 | height: 15px; 16 | } 17 | 18 | .switch input { 19 | display: none; 20 | } 21 | 22 | /* The slider */ 23 | .slider { 24 | position: absolute; 25 | cursor: pointer; 26 | top: 0; 27 | left: 0; 28 | right: 0; 29 | bottom: 0; 30 | background-color: #ccc; 31 | transition: 0.4s; 32 | } 33 | 34 | .slider:before { 35 | position: absolute; 36 | content: ""; 37 | height: 20px; 38 | width: 20px; 39 | left: -10px; 40 | bottom: -2px; 41 | transition: 0.4s; 42 | background-color: #fafafa; 43 | box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.7); 44 | } 45 | 46 | .slider.round { 47 | border-radius: 34px; 48 | } 49 | 50 | .slider.round:before { 51 | border-radius: 50%; 52 | } 53 | 54 | input:checked + .slider { 55 | background-color: rgba(11, 151, 205, 0.5); 56 | } 57 | 58 | input:checked + .slider:before { 59 | transform: translateX(34px); 60 | background-color: var(--main-blue-color); 61 | } 62 | 63 | input:focus + .slider { 64 | box-shadow: 0 0 1px rgba(11, 151, 205, 0.5); 65 | } 66 | -------------------------------------------------------------------------------- /custom.js: -------------------------------------------------------------------------------- 1 | var theme = {}, themeName = "", baseURL = "", switchState = {}, isMobile, newVersionText = "", gitVersion, lang, user, themeFolder, checkUpdate, userVariableThemeLoaded = false; 2 | generate_noty = void 0; 3 | isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); 4 | var msgCount = 0; 5 | var supported_lang = "en fr de sv nl pl"; 6 | 7 | $.ajax({ 8 | url: "acttheme/js/moment.js", 9 | async: false, 10 | dataType: "script", 11 | }); 12 | 13 | $.ajax({ 14 | url: "acttheme/js/livestamp.js", 15 | async: false, 16 | dataType: "script" 17 | }); 18 | 19 | $.ajax({ 20 | url: "acttheme/js/notify.js", 21 | async: false, 22 | dataType: "script" 23 | }); 24 | 25 | fetch('json.htm?type=settings', { 26 | method: 'GET', 27 | headers: { 28 | Accept: 'application/json', 29 | 'Content-Type': 'application/json', 30 | }, 31 | credentials: 'include' 32 | }).then(response => { 33 | return response.json(); 34 | }).then(data => { 35 | lang = (0 <= supported_lang.split(" ").indexOf(data.Language)) ?data.Language : 'en'; 36 | themeFolder = data.WebTheme; 37 | user = data.WebUserName; 38 | checkUpdate = data.UseAutoUpdate; 39 | 40 | /* Load required script files and then init the theme */ 41 | $.when( 42 | $.getScript("acttheme/js/themesettings.js"), 43 | $.getScript("acttheme/js/functions.js"), 44 | $.getScript("acttheme/js/devices.js"), 45 | $.getScript("acttheme/lang/machinon." + lang + ".js"), 46 | $.Deferred(function(deferred) { 47 | $(deferred.resolve); 48 | }) 49 | ).done(function() { 50 | moment.locale(lang); 51 | init_theme(); 52 | }); 53 | }).catch(error => { 54 | console.error(error); 55 | }); 56 | 57 | function init_theme() { 58 | checkUserVariableThemeSettings(); 59 | loadSettings(); 60 | 61 | window.onhashchange = locationHashChanged; 62 | 63 | /* Set $scope variable when angular is available */ 64 | var $scope = null; 65 | checkAngular = setInterval(function() { 66 | if (($scope === null) && (typeof angular !== "undefined") && (typeof angular.element(document.body).injector() !== "undefined")) { 67 | clearInterval(checkAngular); 68 | $scope = angular.element(document.body).injector().get('$rootScope'); 69 | 70 | $scope.$on('device_update', function (event, data) { 71 | if (theme.features.notification.enabled === true && $("#msg").length == 0) { 72 | displayNotifications(); 73 | } 74 | if (data.Type === "Light/Switch") { 75 | setDeviceOpacity(data.idx, data.Status); 76 | if (theme.features.icon_image.enabled === true) { 77 | /* We have to delay it a few otherwise it's get overwritten by standard icon */ 78 | setTimeout(setDeviceCustomIcon, 10, data.idx, data.Status); 79 | } 80 | if (theme.features.switch_instead_of_bigtext.enabled === true && data.SwitchType === "On/Off") { 81 | setDeviceSwitch(data.idx, data.Status); 82 | } 83 | } 84 | if (data.Type.startsWith("Temp") || (data.Type === "Wind")) { 85 | /* Temp/Wind widgets are all refreshed, we need to format them again after a delay */ 86 | setTimeout(function() { 87 | $("dzweatherwidget[id='" + data.idx + "']").find("tbody > tr").each(function() { 88 | $(this).attr("data-idx", data.idx); 89 | }); 90 | $("dztemperaturewidget[id='" + data.idx + "']").find("tbody > tr").each(function() { 91 | $(this).attr("data-idx", data.idx); 92 | }); 93 | setDeviceOptions(data.idx); 94 | let lastupd = moment(data.LastUpdate, ["YYYY-MM-DD HH:mm:ss", "L LT"]).format(); 95 | setDeviceLastUpdate(data.idx, lastupd); 96 | }, 10); 97 | } 98 | if (data.Type === "Wind") { 99 | if (theme.features.wind_direction.enabled === true) { 100 | /* We have to delay it a few otherwise it's get overwritten by standard icon */ 101 | setTimeout(setDeviceWindDirectionIcon, 10, data.idx, data.DirectionStr); 102 | } 103 | } 104 | setTimeout(function() { 105 | let lastupd = moment(data.LastUpdate, ["YYYY-MM-DD HH:mm:ss", "L LT"]).format(); 106 | setDeviceLastUpdate(data.idx, lastupd); 107 | setAllDevicesIconsStatus(); 108 | }, 10); 109 | }, function errorCallback(response) { 110 | console.error("Cannot connect to websocket"); 111 | }); 112 | 113 | $scope.$on('scene_update', function (event, data) { 114 | if (theme.features.switch_instead_of_bigtext_scenes.enabled === true) { 115 | setDeviceSwitch(data.idx, data.Status); 116 | } 117 | let lastupd = moment(data.LastUpdate, ["YYYY-MM-DD HH:mm:ss", "L LT"]).format(); 118 | setDeviceLastUpdate(data.idx, lastupd); 119 | setDeviceOpacity(data.idx, data.Status); 120 | }, function errorCallback(response) { 121 | console.error("Cannot connect to websocket"); 122 | }); 123 | } 124 | }, 100); 125 | 126 | $(document).ready(function() { 127 | if (!isMobile) { 128 | MutationObserver = window.MutationObserver || window.WebKitMutationObserver; 129 | var observer = new MutationObserver(function(mutations) { 130 | mutations.forEach(function(mutation) { 131 | $("#main-view").children("div.container").removeClass("container").addClass("container-fluid"); 132 | removeRowDivider(); 133 | }); 134 | }); 135 | var targetNode = document.getElementById("holder"); 136 | observer.observe(targetNode, { 137 | childList: true, 138 | subtree: true 139 | }); 140 | } 141 | enableThemeFeatures(); 142 | setLogo(); 143 | setSearch(); 144 | setDevicesNativeSelectorForMobile(); 145 | $(document).ajaxSuccess(ajaxSuccessCallback); 146 | 147 | if (checkUpdate != 0) checkDomoticzUpdate(true); 148 | 149 | if (theme.background_img && theme.background_img.length) { 150 | if (theme.background_img.startsWith("http")) { 151 | bg_url = theme.background_img; 152 | } else { 153 | bg_url = "../images/" + theme.background_img; 154 | } 155 | $("html").addClass(theme.background_type); 156 | $("html").css("background-image", "url(" + bg_url + ")"); 157 | $("body").css("cssText", "background: transparent !important"); 158 | } 159 | $("#cSetup").click(function() { 160 | showThemeSettings(); 161 | }); 162 | 163 | $(".navbar").append('') 164 | var navBarInner = $(".navbar-inner"), navBarToggle = $(".menu-toggle"); 165 | $(".menu-toggle").prop("title", language.mainmenu); 166 | navBarToggle.click(function() { 167 | navBarInner.toggleClass("slide"); 168 | }); 169 | navBarInner.find(".container li").not(".dropdown").not(".dropdown-submenu").click(function() { 170 | navBarInner.removeClass("slide"); 171 | }); 172 | $("#holder").click(function() { 173 | navBarInner.removeClass("slide"); 174 | }); 175 | $(window).scroll(function() { 176 | 50 < $(this).scrollTop() ? $("div.menu-toggle").addClass("scrolled") : $("div.menu-toggle").removeClass("scrolled"); 177 | }); 178 | if (theme.features.navbar_icons_text.enabled !== false) { 179 | $(".navbar").addClass("notext"); 180 | } 181 | 182 | if (theme.features.notification.enabled === true) { 183 | $('
').appendTo(".container-logo"); 184 | $('').appendTo("#notify").hide(); 185 | var existingNotes = localStorage.getItem(themeFolder + ".notify"); 186 | existingNotes && $("#notyIcon").show(); 187 | var state = false; 188 | $("#notify").click(function() { 189 | if (!state) { 190 | $("#msg").show(); 191 | } else { 192 | $("#msg").remove(); 193 | msgCount = 0; 194 | } 195 | state = !state; 196 | }); 197 | } 198 | }); 199 | } 200 | -------------------------------------------------------------------------------- /fonts/ionicons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/ionicons.eot -------------------------------------------------------------------------------- /fonts/ionicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/ionicons.ttf -------------------------------------------------------------------------------- /fonts/ionicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/ionicons.woff -------------------------------------------------------------------------------- /fonts/ionicons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/ionicons.woff2 -------------------------------------------------------------------------------- /fonts/open-sans-v16-latin_latin-ext-600.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/open-sans-v16-latin_latin-ext-600.woff -------------------------------------------------------------------------------- /fonts/open-sans-v16-latin_latin-ext-600.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/open-sans-v16-latin_latin-ext-600.woff2 -------------------------------------------------------------------------------- /fonts/open-sans-v16-latin_latin-ext-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/open-sans-v16-latin_latin-ext-regular.woff -------------------------------------------------------------------------------- /fonts/open-sans-v16-latin_latin-ext-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/fonts/open-sans-v16-latin_latin-ext-regular.woff2 -------------------------------------------------------------------------------- /fonts/read.me: -------------------------------------------------------------------------------- 1 | /* Font folder */ 2 | -------------------------------------------------------------------------------- /images/Alarm48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alarm48_Off.png -------------------------------------------------------------------------------- /images/Alarm48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alarm48_On.png -------------------------------------------------------------------------------- /images/Alert.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alert.png -------------------------------------------------------------------------------- /images/Alert48_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alert48_0.png -------------------------------------------------------------------------------- /images/Alert48_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alert48_1.png -------------------------------------------------------------------------------- /images/Alert48_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alert48_2.png -------------------------------------------------------------------------------- /images/Alert48_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alert48_3.png -------------------------------------------------------------------------------- /images/Alert48_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Alert48_4.png -------------------------------------------------------------------------------- /images/Amplifier48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Amplifier48_Off.png -------------------------------------------------------------------------------- /images/Amplifier48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Amplifier48_On.png -------------------------------------------------------------------------------- /images/Aquarium16_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Aquarium16_Off.png -------------------------------------------------------------------------------- /images/Aquarium16_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Aquarium16_On.png -------------------------------------------------------------------------------- /images/Aquarium48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Aquarium48_Off.png -------------------------------------------------------------------------------- /images/Aquarium48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Aquarium48_On.png -------------------------------------------------------------------------------- /images/ChristmasTree48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/ChristmasTree48_Off.png -------------------------------------------------------------------------------- /images/ChristmasTree48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/ChristmasTree48_On.png -------------------------------------------------------------------------------- /images/Close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Close.png -------------------------------------------------------------------------------- /images/Computer48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Computer48_Off.png -------------------------------------------------------------------------------- /images/Computer48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Computer48_On.png -------------------------------------------------------------------------------- /images/ComputerPC48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/ComputerPC48_Off.png -------------------------------------------------------------------------------- /images/ComputerPC48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/ComputerPC48_On.png -------------------------------------------------------------------------------- /images/Contact48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Contact48_Off.png -------------------------------------------------------------------------------- /images/Contact48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Contact48_On.png -------------------------------------------------------------------------------- /images/Cooling48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Cooling48_Off.png -------------------------------------------------------------------------------- /images/Cooling48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Cooling48_On.png -------------------------------------------------------------------------------- /images/Counter48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Counter48.png -------------------------------------------------------------------------------- /images/Custom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Custom.png -------------------------------------------------------------------------------- /images/Custom48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Custom48.png -------------------------------------------------------------------------------- /images/Custom48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Custom48_On.png -------------------------------------------------------------------------------- /images/Data48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Data48.png -------------------------------------------------------------------------------- /images/Dimmer48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Dimmer48_Off.png -------------------------------------------------------------------------------- /images/Dimmer48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Dimmer48_On.png -------------------------------------------------------------------------------- /images/DomeCamera16_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/DomeCamera16_Off.png -------------------------------------------------------------------------------- /images/DomeCamera16_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/DomeCamera16_On.png -------------------------------------------------------------------------------- /images/DomeCamera48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/DomeCamera48_Off.png -------------------------------------------------------------------------------- /images/DomeCamera48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/DomeCamera48_On.png -------------------------------------------------------------------------------- /images/Door48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Door48_Off.png -------------------------------------------------------------------------------- /images/Door48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Door48_On.png -------------------------------------------------------------------------------- /images/Down48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Down48.png -------------------------------------------------------------------------------- /images/Duck16_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Duck16_Off.png -------------------------------------------------------------------------------- /images/Duck16_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Duck16_On.png -------------------------------------------------------------------------------- /images/Duck48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Duck48_Off.png -------------------------------------------------------------------------------- /images/Duck48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Duck48_On.png -------------------------------------------------------------------------------- /images/Fan48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Fan48_Off.png -------------------------------------------------------------------------------- /images/Fan48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Fan48_On.png -------------------------------------------------------------------------------- /images/Fireplace48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Fireplace48_Off.png -------------------------------------------------------------------------------- /images/Fireplace48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Fireplace48_On.png -------------------------------------------------------------------------------- /images/Gas48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Gas48.png -------------------------------------------------------------------------------- /images/Generic48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Generic48_Off.png -------------------------------------------------------------------------------- /images/Generic48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Generic48_On.png -------------------------------------------------------------------------------- /images/Harddisk48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Harddisk48_Off.png -------------------------------------------------------------------------------- /images/Harddisk48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Harddisk48_On.png -------------------------------------------------------------------------------- /images/Heating48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Heating48_Off.png -------------------------------------------------------------------------------- /images/Heating48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Heating48_On.png -------------------------------------------------------------------------------- /images/HotWater16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/HotWater16.png -------------------------------------------------------------------------------- /images/HotWater48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/HotWater48.png -------------------------------------------------------------------------------- /images/Jacuzzi16_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Jacuzzi16_Off.png -------------------------------------------------------------------------------- /images/Jacuzzi16_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Jacuzzi16_On.png -------------------------------------------------------------------------------- /images/Jacuzzi48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Jacuzzi48_Off.png -------------------------------------------------------------------------------- /images/Jacuzzi48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Jacuzzi48_On.png -------------------------------------------------------------------------------- /images/Light48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Light48_Off.png -------------------------------------------------------------------------------- /images/Light48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Light48_On.png -------------------------------------------------------------------------------- /images/Media48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Media48_Off.png -------------------------------------------------------------------------------- /images/Media48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Media48_On.png -------------------------------------------------------------------------------- /images/OilTank16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/OilTank16.png -------------------------------------------------------------------------------- /images/OilTank48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/OilTank48.png -------------------------------------------------------------------------------- /images/OutdoorCamera16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/OutdoorCamera16.png -------------------------------------------------------------------------------- /images/OutdoorCamera48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/OutdoorCamera48.png -------------------------------------------------------------------------------- /images/PV48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/PV48.png -------------------------------------------------------------------------------- /images/PV48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/PV48_Off.png -------------------------------------------------------------------------------- /images/PV48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/PV48_On.png -------------------------------------------------------------------------------- /images/Percentage48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Percentage48.png -------------------------------------------------------------------------------- /images/Phone48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Phone48_Off.png -------------------------------------------------------------------------------- /images/Phone48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Phone48_On.png -------------------------------------------------------------------------------- /images/Printer48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Printer48_Off.png -------------------------------------------------------------------------------- /images/Printer48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Printer48_On.png -------------------------------------------------------------------------------- /images/Push48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Push48_Off.png -------------------------------------------------------------------------------- /images/Push48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Push48_On.png -------------------------------------------------------------------------------- /images/RGB48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/RGB48_Off.png -------------------------------------------------------------------------------- /images/RGB48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/RGB48_On.png -------------------------------------------------------------------------------- /images/Speaker48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Speaker48_Off.png -------------------------------------------------------------------------------- /images/Speaker48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Speaker48_On.png -------------------------------------------------------------------------------- /images/TV48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/TV48_Off.png -------------------------------------------------------------------------------- /images/TV48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/TV48_On.png -------------------------------------------------------------------------------- /images/Trigger48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Trigger48_Off.png -------------------------------------------------------------------------------- /images/Trigger48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Trigger48_On.png -------------------------------------------------------------------------------- /images/Up48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Up48.png -------------------------------------------------------------------------------- /images/WallSocket48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WallSocket48.png -------------------------------------------------------------------------------- /images/WallSocket48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WallSocket48_Off.png -------------------------------------------------------------------------------- /images/WallSocket48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WallSocket48_On.png -------------------------------------------------------------------------------- /images/Water48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Water48_Off.png -------------------------------------------------------------------------------- /images/Water48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/Water48_On.png -------------------------------------------------------------------------------- /images/WindE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindE.png -------------------------------------------------------------------------------- /images/WindENE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindENE.png -------------------------------------------------------------------------------- /images/WindESE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindESE.png -------------------------------------------------------------------------------- /images/WindN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindN.png -------------------------------------------------------------------------------- /images/WindNE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindNE.png -------------------------------------------------------------------------------- /images/WindNNE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindNNE.png -------------------------------------------------------------------------------- /images/WindNNW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindNNW.png -------------------------------------------------------------------------------- /images/WindNW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindNW.png -------------------------------------------------------------------------------- /images/WindS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindS.png -------------------------------------------------------------------------------- /images/WindSE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindSE.png -------------------------------------------------------------------------------- /images/WindSSE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindSSE.png -------------------------------------------------------------------------------- /images/WindSSW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindSSW.png -------------------------------------------------------------------------------- /images/WindSW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindSW.png -------------------------------------------------------------------------------- /images/WindW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindW.png -------------------------------------------------------------------------------- /images/WindWNW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindWNW.png -------------------------------------------------------------------------------- /images/WindWSW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/WindWSW.png -------------------------------------------------------------------------------- /images/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/add.png -------------------------------------------------------------------------------- /images/air.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/air.png -------------------------------------------------------------------------------- /images/air48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/air48.png -------------------------------------------------------------------------------- /images/air_signal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/air_signal.png -------------------------------------------------------------------------------- /images/baro48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/baro48.png -------------------------------------------------------------------------------- /images/battery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/battery.png -------------------------------------------------------------------------------- /images/bed16_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/bed16_Off.png -------------------------------------------------------------------------------- /images/bed16_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/bed16_On.png -------------------------------------------------------------------------------- /images/bed48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/bed48_Off.png -------------------------------------------------------------------------------- /images/bed48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/bed48_On.png -------------------------------------------------------------------------------- /images/bell_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/bell_off.png -------------------------------------------------------------------------------- /images/bell_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/bell_on.png -------------------------------------------------------------------------------- /images/blinds48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/blinds48.png -------------------------------------------------------------------------------- /images/blinds48sel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/blinds48sel.png -------------------------------------------------------------------------------- /images/blindsopen48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/blindsopen48.png -------------------------------------------------------------------------------- /images/blindsopen48sel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/blindsopen48sel.png -------------------------------------------------------------------------------- /images/blindsstop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/blindsstop.png -------------------------------------------------------------------------------- /images/blindsstop2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/blindsstop2.png -------------------------------------------------------------------------------- /images/camera-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/camera-web.png -------------------------------------------------------------------------------- /images/capture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/capture.png -------------------------------------------------------------------------------- /images/contact48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/contact48.png -------------------------------------------------------------------------------- /images/contact48_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/contact48_open.png -------------------------------------------------------------------------------- /images/counter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/counter.png -------------------------------------------------------------------------------- /images/current48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/current48.png -------------------------------------------------------------------------------- /images/current48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/current48_On.png -------------------------------------------------------------------------------- /images/custompage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/custompage.png -------------------------------------------------------------------------------- /images/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/delete.png -------------------------------------------------------------------------------- /images/desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/desktop.png -------------------------------------------------------------------------------- /images/devices.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/devices.png -------------------------------------------------------------------------------- /images/door48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/door48.png -------------------------------------------------------------------------------- /images/door48open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/door48open.png -------------------------------------------------------------------------------- /images/doorbell48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/doorbell48.png -------------------------------------------------------------------------------- /images/favorite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/favorite.png -------------------------------------------------------------------------------- /images/house.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/house.png -------------------------------------------------------------------------------- /images/houseEnergy16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/houseEnergy16.png -------------------------------------------------------------------------------- /images/houseEnergy48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/houseEnergy48.png -------------------------------------------------------------------------------- /images/ice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/ice.png -------------------------------------------------------------------------------- /images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/icon.png -------------------------------------------------------------------------------- /images/lightbulb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/lightbulb.png -------------------------------------------------------------------------------- /images/log.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/log.png -------------------------------------------------------------------------------- /images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/logo.png -------------------------------------------------------------------------------- /images/logout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/logout.png -------------------------------------------------------------------------------- /images/lux48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/lux48.png -------------------------------------------------------------------------------- /images/moisture48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/moisture48.png -------------------------------------------------------------------------------- /images/motdec48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/motdec48_Off.png -------------------------------------------------------------------------------- /images/motdec48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/motdec48_On.png -------------------------------------------------------------------------------- /images/motion48-off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/motion48-off.png -------------------------------------------------------------------------------- /images/motion48-on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/motion48-on.png -------------------------------------------------------------------------------- /images/next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/next.png -------------------------------------------------------------------------------- /images/nofavorite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/nofavorite.png -------------------------------------------------------------------------------- /images/override.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/override.png -------------------------------------------------------------------------------- /images/proxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/proxy.png -------------------------------------------------------------------------------- /images/push48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/push48.png -------------------------------------------------------------------------------- /images/pushoff48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/pushoff48.png -------------------------------------------------------------------------------- /images/pushon48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/pushon48.png -------------------------------------------------------------------------------- /images/radiation48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/radiation48.png -------------------------------------------------------------------------------- /images/rain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/rain.png -------------------------------------------------------------------------------- /images/rain48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/rain48.png -------------------------------------------------------------------------------- /images/remote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/remote.png -------------------------------------------------------------------------------- /images/remote48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/remote48.png -------------------------------------------------------------------------------- /images/remove.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/remove.png -------------------------------------------------------------------------------- /images/rename.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/rename.png -------------------------------------------------------------------------------- /images/scenes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/scenes.png -------------------------------------------------------------------------------- /images/security48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/security48.png -------------------------------------------------------------------------------- /images/settings/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/about.png -------------------------------------------------------------------------------- /images/settings/cam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/cam.png -------------------------------------------------------------------------------- /images/settings/datapush.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/datapush.png -------------------------------------------------------------------------------- /images/settings/devices.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/devices.png -------------------------------------------------------------------------------- /images/settings/events.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/events.png -------------------------------------------------------------------------------- /images/settings/hardware.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/hardware.png -------------------------------------------------------------------------------- /images/settings/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/icons.png -------------------------------------------------------------------------------- /images/settings/lock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/lock.png -------------------------------------------------------------------------------- /images/settings/log.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/log.png -------------------------------------------------------------------------------- /images/settings/mobile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/mobile.png -------------------------------------------------------------------------------- /images/settings/notification.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/notification.png -------------------------------------------------------------------------------- /images/settings/plan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/plan.png -------------------------------------------------------------------------------- /images/settings/readme.me: -------------------------------------------------------------------------------- 1 | Settings images 2 | -------------------------------------------------------------------------------- /images/settings/setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/setup.png -------------------------------------------------------------------------------- /images/settings/update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/update.png -------------------------------------------------------------------------------- /images/settings/users.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/users.png -------------------------------------------------------------------------------- /images/settings/uservariables.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/settings/uservariables.png -------------------------------------------------------------------------------- /images/setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/setup.png -------------------------------------------------------------------------------- /images/siren-off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/siren-off.png -------------------------------------------------------------------------------- /images/siren-on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/siren-on.png -------------------------------------------------------------------------------- /images/smoke48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/smoke48_Off.png -------------------------------------------------------------------------------- /images/smoke48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/smoke48_On.png -------------------------------------------------------------------------------- /images/smoke48off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/smoke48off.png -------------------------------------------------------------------------------- /images/smoke48on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/smoke48on.png -------------------------------------------------------------------------------- /images/switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/switch.png -------------------------------------------------------------------------------- /images/switches/groups/group-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/switches/groups/group-active.png -------------------------------------------------------------------------------- /images/switches/groups/group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/switches/groups/group.png -------------------------------------------------------------------------------- /images/tabs/backup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/backup.png -------------------------------------------------------------------------------- /images/tabs/dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/dashboard.png -------------------------------------------------------------------------------- /images/tabs/hardwares.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/hardwares.png -------------------------------------------------------------------------------- /images/tabs/icons8-bell-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-bell-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-camera-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-camera-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-cloud-storage-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-cloud-storage-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-code-file-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-code-file-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-color-palette-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-color-palette-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-counter-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-counter-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-display-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-display-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-doorbell-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-doorbell-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-edit-property-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-edit-property-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-events-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-events-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-kodi-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-kodi-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-low-battery-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-low-battery-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-menu-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-menu-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-meter-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-meter-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-new-post-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-new-post-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-push-notifications-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-push-notifications-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-schedule-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-schedule-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-sms-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-sms-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-temperature-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-temperature-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-time-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-time-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-website-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-website-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-weight-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-weight-16.png -------------------------------------------------------------------------------- /images/tabs/icons8-wind-gauge-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/icons8-wind-gauge-16.png -------------------------------------------------------------------------------- /images/tabs/lights.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/lights.png -------------------------------------------------------------------------------- /images/tabs/location.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/location.png -------------------------------------------------------------------------------- /images/tabs/lock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/lock.png -------------------------------------------------------------------------------- /images/tabs/mobile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/mobile.png -------------------------------------------------------------------------------- /images/tabs/network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/network.png -------------------------------------------------------------------------------- /images/tabs/other.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/other.png -------------------------------------------------------------------------------- /images/tabs/protection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/protection.png -------------------------------------------------------------------------------- /images/tabs/readme.txt: -------------------------------------------------------------------------------- 1 | Icons files 2 | -------------------------------------------------------------------------------- /images/tabs/remote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/remote.png -------------------------------------------------------------------------------- /images/tabs/software_update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/software_update.png -------------------------------------------------------------------------------- /images/tabs/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/tabs/user.png -------------------------------------------------------------------------------- /images/temp-0-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-0-5.png -------------------------------------------------------------------------------- /images/temp-10-15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-10-15.png -------------------------------------------------------------------------------- /images/temp-15-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-15-20.png -------------------------------------------------------------------------------- /images/temp-20-25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-20-25.png -------------------------------------------------------------------------------- /images/temp-25-30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-25-30.png -------------------------------------------------------------------------------- /images/temp-35-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-35-40.png -------------------------------------------------------------------------------- /images/temp-5-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-5-10.png -------------------------------------------------------------------------------- /images/temp-gt-30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp-gt-30.png -------------------------------------------------------------------------------- /images/temp48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temp48.png -------------------------------------------------------------------------------- /images/temperature.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/temperature.png -------------------------------------------------------------------------------- /images/text48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/text48.png -------------------------------------------------------------------------------- /images/utility.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/utility.png -------------------------------------------------------------------------------- /images/utility48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/utility48.png -------------------------------------------------------------------------------- /images/uv48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/uv48.png -------------------------------------------------------------------------------- /images/uvdark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/uvdark.png -------------------------------------------------------------------------------- /images/uvsunny.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/uvsunny.png -------------------------------------------------------------------------------- /images/visibility48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/visibility48.png -------------------------------------------------------------------------------- /images/webcam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/webcam.png -------------------------------------------------------------------------------- /images/webcam48_Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/webcam48_Off.png -------------------------------------------------------------------------------- /images/webcam48_On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/webcam48_On.png -------------------------------------------------------------------------------- /images/wind-direction/WindE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindE.png -------------------------------------------------------------------------------- /images/wind-direction/WindENE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindENE.png -------------------------------------------------------------------------------- /images/wind-direction/WindESE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindESE.png -------------------------------------------------------------------------------- /images/wind-direction/WindN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindN.png -------------------------------------------------------------------------------- /images/wind-direction/WindNE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindNE.png -------------------------------------------------------------------------------- /images/wind-direction/WindNNE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindNNE.png -------------------------------------------------------------------------------- /images/wind-direction/WindNNW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindNNW.png -------------------------------------------------------------------------------- /images/wind-direction/WindNW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindNW.png -------------------------------------------------------------------------------- /images/wind-direction/WindS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindS.png -------------------------------------------------------------------------------- /images/wind-direction/WindSE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindSE.png -------------------------------------------------------------------------------- /images/wind-direction/WindSSE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindSSE.png -------------------------------------------------------------------------------- /images/wind-direction/WindSSW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindSSW.png -------------------------------------------------------------------------------- /images/wind-direction/WindSW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindSW.png -------------------------------------------------------------------------------- /images/wind-direction/WindW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindW.png -------------------------------------------------------------------------------- /images/wind-direction/WindWNW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindWNW.png -------------------------------------------------------------------------------- /images/wind-direction/WindWSW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/d8d59bf47d7691aabb4942b8c3443e84d34d665f/images/wind-direction/WindWSW.png -------------------------------------------------------------------------------- /js/camera.worker.js: -------------------------------------------------------------------------------- 1 | self.addEventListener('message', async event => { 2 | const cameraURL = "/camsnapshot.jpg?idx=" + event.data + "&t=" + Date.now(); 3 | 4 | fetch(cameraURL) 5 | .then(function(response) { 6 | if(response.ok) { 7 | response.blob().then(function(blob) { 8 | // Send the image data to the main thread! 9 | self.postMessage({ 10 | cameraId: event.data, 11 | blob: blob, 12 | }) 13 | }) 14 | } 15 | }) 16 | .catch(function(error) { 17 | console.log("Error fetching " + cameraURL + " --> " + error.message); 18 | }); 19 | }) 20 | -------------------------------------------------------------------------------- /js/check_update.js: -------------------------------------------------------------------------------- 1 | var branch = "master"; 2 | 3 | setTimeout(update, 5000); 4 | function update() { 5 | $.ajax({ 6 | url: "https://raw.githubusercontent.com/EdddieN/machinon-domoticz_theme/" + branch + "/theme.json", 7 | async: false, 8 | dataType: "json", 9 | success: function(data) { 10 | gitVersion = data.version; 11 | if (theme.version !== gitVersion) { 12 | newVersionText = "Machinon version " + data.version + " " + language.is_available + '! ' + language.click_here + ""; 13 | notify(newVersionText, 0); 14 | } 15 | } 16 | }); 17 | } 18 | -------------------------------------------------------------------------------- /js/custom_page.js: -------------------------------------------------------------------------------- 1 | var customMenu = $("#appnavbar"); 2 | 3 | var customPage = customMenu.find("#customPage"); 4 | 5 | if (customMenu.length && customPage.length == 0) { 6 | customMenu.append('
  • ' + theme.button_name + "
  • "); 7 | } 8 | 9 | $("#customPage").click(function() { 10 | var htmlcontent = ""; 11 | htmlcontent += ''; 12 | $("#main-view").html(htmlcontent); 13 | $(".navbar-inner").removeClass("slide"); 14 | }); 15 | -------------------------------------------------------------------------------- /js/dashboard_camera.js: -------------------------------------------------------------------------------- 1 | /* Feature - Display camera preview on dashboard */ 2 | theme.features.dashboard_camera_section && cameraPreview(theme.features.dashboard_camera_section.enabled); 3 | var workers = []; 4 | 5 | function cameraPreview(section) { 6 | if ($("#dashcontent").length == 0) { 7 | if($('body.onMobile').length > 0) return; 8 | setTimeout(cameraPreview, 50, section); 9 | return; 10 | } 11 | 12 | if (section === true) { 13 | if ($("#dashCameras").length == 0) { 14 | $.ajax({ 15 | url: "json.htm?type=cameras", 16 | async: false, 17 | dataType: "json", 18 | success: function(data) { 19 | var compact = false; 20 | if ($("section.compact").length > 0) { 21 | compact = true; 22 | } 23 | var html = "

    Cameras:

    "; 24 | var activeCam = false; 25 | data.result && data.result.forEach(function(cam){ 26 | if (cam.Enabled === "true") { 27 | activeCam = true; 28 | var camId = cam.idx; 29 | html += "
    "; 30 | html += ""; 31 | html += ""; 32 | html += "
    " + cam.Name + "
    "; 33 | html += "
    "; 34 | refreshCamera(camId); 35 | 36 | } 37 | }); 38 | if (activeCam) { 39 | html += "
    "; 40 | $("#dashcontent section:first").before(html); 41 | $("tr.with-cam-preview").on("click", function(e) { 42 | ShowCameraLiveStream($(this).children("td#name").text(), $(this).attr("data-cam")); 43 | }); 44 | } 45 | } 46 | }); 47 | } 48 | } else { 49 | $("#bigtext > span > a").each(function() { 50 | camId = $(this).attr("href").split(/\'/)[3]; 51 | if ($(this).parents("tr.with-cam-preview").length == 0) { 52 | $(this).parents("tr").attr("data-cam", camId).addClass("with-cam-preview").on("click", function(e) { 53 | ShowCameraLiveStream($(this).children("td#name").text(), $(this).attr("data-cam"), $(this).attr("data-cam")); 54 | }); 55 | } 56 | refreshCamera(camId); 57 | }); 58 | } 59 | } 60 | 61 | function refreshCamera(camId) { 62 | let workerId = workers[camId]; 63 | if (typeof workerId === "undefined") { 64 | workerId = new Worker('acttheme/js/camera.worker.js'); 65 | workers[camId] = workerId; 66 | 67 | workerId.addEventListener('message', event => { 68 | const camera = event.data; 69 | const background = URL.createObjectURL(camera.blob); 70 | $("tr[data-cam='" + camera.cameraId + "']").css("background-image", "url(" + background + ")"); 71 | if (location.hash == "#/Dashboard") { 72 | setTimeout(refreshCamera, theme.dashboard_camera_refresh*1000, camId); 73 | } 74 | }); 75 | } 76 | workerId.postMessage(camId); 77 | } 78 | -------------------------------------------------------------------------------- /js/devices.js: -------------------------------------------------------------------------------- 1 | function setDevicesNativeSelectorForMobile() { 2 | if (!isMobile) return; 3 | $(".selectorlevels span.ui-selectmenu-button").each(function() { 4 | $(this).hide(); 5 | var selectorId = $(this).attr("id").split("-", 1)[0]; 6 | $("#" + selectorId + ":not(.ui-widget").on("change", function(e) { 7 | var selected = $(this).children("option:selected"); 8 | SwitchSelectorLevel($(this).attr("data-idx"), selected.text(), selected.val()); 9 | }); 10 | $("#" + selectorId).addClass("ui-widget ui-corner-all").show(); 11 | }); 12 | } 13 | 14 | function setAllDevicesFeatures() { 15 | switchState = { 16 | on: $.t("On"), 17 | off: $.t("Off"), 18 | open: $.t("Open"), 19 | closed: $.t("Closed") 20 | }; 21 | 22 | /* Browse all items to apply themes features and styles */ 23 | $("#main-view .item").each(function() { 24 | /* Set idx on tr, for easy retrieval */ 25 | let idx = $(this).parent().attr('id'); 26 | if (typeof idx === "undefined") { 27 | idx = $(this).attr('id'); 28 | } else { 29 | idx = idx.replace( /^\D+/g, ''); 30 | } 31 | $(this).find("tr").attr('data-idx', idx); 32 | 33 | let bigText = $(this).find("#bigtext"); 34 | let status = bigText.text(); 35 | if (status.length == 0) { 36 | status = bigText.attr("data-status"); 37 | } 38 | 39 | /* Apply style and redefine options */ 40 | setDeviceOptions(idx); 41 | 42 | /* Feature - Fade off items */ 43 | setDeviceOpacity(idx, status); 44 | 45 | /* Feature - Show timeago for last update */ 46 | var lastupd; 47 | if (theme.features.time_ago.enabled === true) { 48 | lastupd = $(this).find("#lastupdate").text(); 49 | } else { 50 | lastupd = moment($(this).find("#lastupdate").text(), [ "YYYY-MM-DD HH:mm:ss", "L LT" ]).format(); 51 | } 52 | setDeviceLastUpdate(idx , lastupd); 53 | 54 | /* Feature - Switch instead of text */ 55 | if (((location.hash === "#/Dashboard") && $(this).parent().attr("id").startsWith("light")) || (location.hash === "#/LightSwitches")) { 56 | if (bigText.siblings("#img").find("img").hasClass("lcursor") && 57 | ($(this).find(".dimslider").length == 0) && 58 | ($(this).find(".selectorlevels").length == 0) && 59 | ($(this).find(".btn-group").length == 0) 60 | ) { 61 | if (theme.features.switch_instead_of_bigtext.enabled && $(this).find("#img2").length == 0) { 62 | setDeviceSwitch(idx, status); 63 | } else { 64 | bigText.show(); 65 | } 66 | } 67 | } 68 | 69 | /* Feature - Switch instead of text for scenes */ 70 | if (theme.features.switch_instead_of_bigtext_scenes.enabled === true) { 71 | if (($(this).parents("#scenecontent").length > 0) || ($(this).parents("#dashScenes").length > 0 && $(this).find("#itemtablesmalldoubleicon").length > 0)) { 72 | setDeviceSwitch(idx, status); 73 | bigText.hide(); 74 | } 75 | 76 | } 77 | 78 | /* Feature - Set custom icons */ 79 | if (theme.features.icon_image.enabled === true) { 80 | setDeviceCustomIcon(idx, status); 81 | } 82 | 83 | /* Feature - Show wind direction */ 84 | if (theme.features.wind_direction.enabled === true) { 85 | setDeviceWindDirectionIcon(idx); 86 | } 87 | }); 88 | } 89 | 90 | function setAllDevicesIconsStatus() { 91 | $("div.item.statusProtected").each(function() { 92 | if ($(this).find("#name > i.ion-ios-lock").length === 0) { 93 | $(this).find("#name").prepend(" "); 94 | } 95 | }); 96 | $("div.item.statusTimeout").each(function() { 97 | if ($(this).find("#name > i.ion-ios-wifi").length === 0) { 98 | $(this).find("#name").prepend(" "); 99 | } 100 | }); 101 | $("div.item.statusLowBattery").each(function() { 102 | if ($(this).find("#name > i.ion-ios-battery-dead").length === 0) { 103 | $(this).find("#name").prepend(" "); 104 | } 105 | }); 106 | } 107 | 108 | function setDeviceOptions(idx) { 109 | let tr = "tr[data-idx='" + idx + "']"; 110 | $(tr).each(function() { 111 | /* Create options menu */ 112 | let subnav = $(this).find(".options"); 113 | let subnavButton = $(this).find(".options-cell"); 114 | if (subnav.length && subnavButton.length == 0) { 115 | /* Display idx in the options */ 116 | $(subnav).append('Idx: ' + idx + ""); 117 | $(this).append(''); 118 | $(this).on("click", "td.options-cell", function(e) { 119 | e.preventDefault(); 120 | $(this).siblings("td.options").slideToggle(400); 121 | $(this).siblings("td.options").unbind("mouseleave"); 122 | $(this).siblings("td.options").mouseleave(function() { 123 | $(this).slideToggle(400); 124 | $(this).unbind("mouseleave"); 125 | }); 126 | }); 127 | $(this).append(''); 128 | timers = $(this).find(".timers_log"); 129 | $(timers).append($(this).find('.options .btnsmall[data-i18n="Log"]').html("")); 130 | $(timers).append($(this).find('.options .btnsmall[href*="Log"]:not(.btnsmall[data-i18n="Log"])').html("")); 131 | $(timers).append($(this).find('.options .btnsmall[data-i18n="Timers"]').html("")); 132 | $(timers).append($(this).find('.options .btnsmall-sel[data-i18n="Timers"]').html("")); 133 | if ($(this).find('.options > img[src*="nofavorite"]:not(".ng-hide")').length === 0) { 134 | icon = ''; 135 | } else { 136 | icon = ''; 137 | } 138 | $(this).append('' + icon + ""); 139 | } 140 | }); 141 | } 142 | 143 | function setDeviceCustomIcon(idx, status) { 144 | switchState = { 145 | on: $.t("On"), 146 | off: $.t("Off"), 147 | }; 148 | 149 | var icons = theme.icons; 150 | for (var i = 0; i < icons.length; i++) { 151 | if (icons[i].idx == idx) { 152 | let tr = "tr[data-idx='" + idx + "']"; 153 | $(tr).find("#img img").attr("src", "images/" + icons[i].img); 154 | if (status == switchState.on || status == 'On') { 155 | $(tr).find("#img img").addClass("userOn"); 156 | } else { 157 | $(tr).find("#img img").addClass("user"); 158 | } 159 | } 160 | } 161 | } 162 | 163 | function setDeviceWindDirectionIcon(idx, direction) { 164 | let tr = "tr[data-idx='" + idx + "']"; 165 | $(tr).find("#img img[src*='Wind']").each(function() { 166 | if (direction === undefined) { 167 | let src = $(this).attr("src").split('/Wind'); 168 | direction = src[1]; 169 | } else { 170 | direction += '.png'; 171 | } 172 | $(this).attr("src", 'images/wind-direction/Wind' + direction); 173 | }); 174 | } 175 | 176 | function setDeviceLastUpdate(idx, lastupdate) { 177 | let tr = "tr[data-idx='" + idx + "']"; 178 | 179 | /* If browser is a bit late, avoid future date */ 180 | if (moment(lastupdate).isAfter(moment())) 181 | lastupdate = moment(); 182 | 183 | $(tr).each(function() { 184 | if (theme.features.time_ago.enabled === true) { 185 | let lastupdated = $(this).find("#timeago"); 186 | if (lastupdated.length == 0) { 187 | $(this).append(' '); 188 | $(this).find("#lastupdate").hide(); 189 | } else { 190 | $(this).find("#timeago > span").attr("title", moment(lastupdate).format("L LT")); 191 | $(this).find("#timeago > span").livestamp( moment(lastupdate).format()); 192 | } 193 | } else { 194 | $(this).find("#lastupdate").attr("title", $.t("Last Seen")); 195 | $(this).find("#lastupdate").text(moment(lastupdate).format("L LT")); 196 | if ($(this).find("#lastSeen").length == 0) { 197 | $(this).find("#lastupdate").prepend(" "); 198 | } 199 | } 200 | }); 201 | } 202 | 203 | function setDeviceOpacity(idx, status) { 204 | switchState = { 205 | on: $.t("On"), 206 | off: $.t("Off"), 207 | open: $.t("Open"), 208 | closed: $.t("Closed") 209 | }; 210 | 211 | if (theme.features.fade_off_items.enabled === true) { 212 | let tr = "tr[data-idx='" + idx + "']"; 213 | if (status === switchState.off || status === 'Off' || status === switchState.closed || status === 'Closed') { 214 | $(tr).parents(".item").addClass("fadeOff"); 215 | } else { 216 | $(tr).parents(".item").removeClass("fadeOff"); 217 | } 218 | } 219 | } 220 | 221 | var timeOut = []; 222 | function timedOut(idx, value, device) { 223 | let textmsg = "Sensor " + device.Name + " " + language.is + " " + language.timedout; 224 | if (typeof timeOut[idx] !== "undefined" && value !== timeOut[idx]) { 225 | if (device.HaveTimeout) { 226 | notify(textmsg, 2); 227 | } 228 | } 229 | timeOut[idx] = value; 230 | } 231 | 232 | var oldstates = []; 233 | function triggerChange(idx, value, device) { 234 | let textLowBattery = device.Name + " " + $.t("Battery Level") + " " + $.t("Low") + " " + device.BatteryLevel + "%"; 235 | if (typeof oldstates[idx] !== "undefined" && value !== oldstates[idx]) { 236 | getNotifications(idx, device.Data); 237 | if (device.BatteryLevel < 11) { 238 | notify(textLowBattery, 2); 239 | } 240 | } 241 | oldstates[idx] = value; 242 | } 243 | -------------------------------------------------------------------------------- /js/functions.js: -------------------------------------------------------------------------------- 1 | function removeRowDivider() { 2 | if ($("#dashcontent").length) { 3 | $("#dashcontent > section").each(function() { 4 | $("div.row.divider:not(:first)", this).children().appendTo($(this).find("div.row.divider:first")); 5 | if ($("div.row.divider:first > div:first", this).hasClass("span3")) { 6 | $("div.row.divider:first", this).parent().addClass("compact"); 7 | } 8 | $("div.row.divider:not(:first)", this).hide(); 9 | }); 10 | } else { 11 | $("div.row.divider:not(:first)").children().appendTo("div.row.divider:first"); 12 | $("div.row.divider:not(:first)").hide(); 13 | } 14 | } 15 | 16 | function setLogo() { 17 | let containerLogo = '"; 26 | $(containerLogo).insertBefore(".navbar-inner"); 27 | } 28 | 29 | function setSearch() { 30 | $('').appendTo(".container-logo"); 31 | window.addEventListener("keydown",function (e) { 32 | if (e.keyCode === 114 || (e.ctrlKey && e.keyCode === 70)) { 33 | $("#searchInput").focus(); 34 | e.preventDefault(); 35 | } 36 | }) 37 | $("#search").click(function() { 38 | $("#searchInput").focus(); 39 | }); 40 | $("#searchInput").keyup(function(event) { 41 | if (event.keyCode === 13) { 42 | $("#searchInput").blur(); 43 | } 44 | if (event.keyCode === 27) { 45 | $("#searchInput").val(""); 46 | $("#searchInput").keyup(); 47 | } 48 | }); 49 | 50 | } 51 | 52 | function searchFunction() { 53 | var value = $("#searchInput").val().toLowerCase(); 54 | $("div .item").filter(function() { 55 | var element = $(this); 56 | if ($("#dashcontent").length || $("#weatherwidgets").length || $("#tempwidgets").length) { 57 | element = $(this).parent(); 58 | } 59 | element.toggle($(this).find("#name").html().toLowerCase().indexOf(value) > -1); 60 | }); 61 | $(".mobileitem tr").filter(function() { 62 | $(this).toggle($(this).html().toLowerCase().indexOf(value) > -1); 63 | }); 64 | removeEmptySectionDashboard(); 65 | } 66 | 67 | function locationHashChanged() { 68 | setPageTitle(); 69 | $(".current_page_item:not(:first)").removeClass("current_page_item"); 70 | $("#searchInput").val(""); 71 | 72 | if (location.hash == "#/Dashboard" && !isMobile || location.hash == "#/LightSwitches" || location.hash == "#/Scenes" || location.hash == "#/Temperature" || location.hash == "#/Weather" || location.hash == "#/Utility") { 73 | $("#search").removeClass("readonly"); 74 | } else { 75 | $("#search").addClass("readonly"); 76 | } 77 | if ((location.hash == "#/Dashboard") && theme.features.dashboard_camera.enabled) { 78 | theme.features.dashboard_camera_section && cameraPreview(theme.features.dashboard_camera_section.enabled); 79 | } 80 | if (location.hash == "#/CustomIcons") { 81 | setCustomIconsPage(); 82 | } 83 | } 84 | 85 | function notify(key, type) { 86 | if (theme.features.notification.enabled === true) { 87 | if (type == 0 || type == 2) { 88 | var existing = localStorage.getItem(themeFolder + ".notify"); 89 | existing = existing ? JSON.parse(existing) : {}; 90 | let d = new Date(); 91 | dd = d.getTime(); 92 | existing[key] = dd; 93 | localStorage.setItem(themeFolder + ".notify", JSON.stringify(existing)); 94 | $("#notyIcon").show(); 95 | } 96 | if (type == 1 || type == 2) { 97 | if (type == 1) $("#notyIcon").show(); 98 | let width = window.innerWidth; 99 | if (width > 767) { 100 | $("#notyIcon").notify(key); 101 | } else { 102 | $("#notyIcon").notify(key, { 103 | position: "right", 104 | className: "info" 105 | }); 106 | } 107 | if (type == 1) $("#notyIcon").hide(); 108 | } 109 | } 110 | } 111 | 112 | function clearNotify() { 113 | if (typeof Storage !== "undefined") { 114 | localStorage.removeItem(themeFolder + ".notify"); 115 | $("#notyIcon").hide(); 116 | } 117 | } 118 | 119 | function checkDomoticzUpdate(showdialog) { 120 | $.ajax({ 121 | url: "json.htm?type=command¶m=checkforupdate&forced=" + showdialog, 122 | dataType: "json", 123 | success: function(data) { 124 | if (data.HaveUpdate == true) { 125 | msgtxt = "Domoticz version #" + data.Revision + " " + language.is_available + "!"; 126 | msgtxt += ' ' + language.update_now + ""; 127 | notify(msgtxt, 0); 128 | } 129 | } 130 | }); 131 | return false; 132 | } 133 | 134 | function getNotifications(idx, state) { 135 | var msg; 136 | $.ajax({ 137 | url: "json.htm?type=notifications&idx=" + idx + "", 138 | cache: false, 139 | async: false, 140 | dataType: "json", 141 | success: function(data) { 142 | var message = data.result; 143 | for (let r in data.result) { 144 | if (typeof message !== "undefined") { 145 | var system = message[r].ActiveSystems; 146 | if (system.includes("browser")) { 147 | if (state == "On" || state == "Open" || state == "Locked") { 148 | if (message[r].Params == "S") { 149 | msg = message[r].CustomMessage; 150 | notify(msg, 1); 151 | } 152 | } 153 | if (state == "Off" || state == "Closed" || state == "Unlocked") { 154 | if (message[r].Params == "O") { 155 | msg = message[r].CustomMessage; 156 | notify(msg, 1); 157 | } 158 | } 159 | } 160 | } 161 | } 162 | } 163 | }); 164 | } 165 | 166 | function displayNotifications() { 167 | var msg = localStorage.getItem(themeFolder + ".notify"); 168 | msg = JSON.parse(msg); 169 | var myObj = msg; 170 | msgCount = 0; 171 | $("#notify").append('
    ' + (typeof $.t === "undefined" ? "Clear" : $.t("Clear")) + "
    "); 172 | for (let x in myObj) { 173 | $("#msg ul").append("
  • " + x + " -- " + moment(myObj[x]).fromNow() + "
  • "); 174 | msgCount++; 175 | $("#notyIcon").prop("title", language.you_have + " " + msgCount + " " + language.messages); 176 | $("#notyIcon").attr("data-msg", msgCount); 177 | } 178 | $("#msg").hide(); 179 | } 180 | 181 | function setPageTitle() { 182 | var pagedetect = window.location.href.split("#/")[1]; 183 | var title = (typeof $.t !== "undefined" ? $.t(pagedetect) : pagedetect ); 184 | document.title = 'Domoticz - ' + title; 185 | } 186 | 187 | function isAdmin() { 188 | if (typeof angular !== "undefined") { 189 | var injector = angular.element($("html")).injector(); 190 | var permissions = injector.get("permissions"); 191 | return permissions.hasPermission("Admin"); 192 | } else return false; 193 | } 194 | 195 | function removeEmptySectionDashboard() { 196 | $("#dashcontent section").each(function() { 197 | $(this).show(); 198 | if (!$(this).children("div.row").children(":visible").length) { 199 | $(this).hide(); 200 | } 201 | }); 202 | } 203 | 204 | function setCustomIconsPage() { 205 | checkIconsmain = setInterval(function() { 206 | if ($("#iconsmain #fileupload").length && $("#iconsmain label.fileupload").length === 0) { 207 | clearInterval(checkIconsmain); 208 | 209 | $("#iconsmain #fileupload").parent().prepend('"); 210 | $("#iconsmain > div table:first").find("td:last").append($("#iconsmain > table td:last").children()); 211 | $("#iconsmain #fileupload").on("change", function() { 212 | $(this).next().click(); 213 | $(this).val(""); 214 | }); 215 | } 216 | }, 100); 217 | } 218 | 219 | function ajaxSuccessCallback(event, xhr, settings) { 220 | setPageTitle(); 221 | if (theme.features.notification.enabled === true && $("#msg").length == 0) { 222 | displayNotifications(); 223 | } 224 | if (settings.url.startsWith("json.htm?type=devices") || settings.url.startsWith("json.htm?type=scenes")) { 225 | let counter = 0; 226 | let intervalId = setInterval(function() { 227 | if ($("#main-view").find(".item").length > 0) { 228 | setAllDevicesFeatures(); 229 | setAllDevicesIconsStatus(); 230 | clearInterval(intervalId); 231 | } else { 232 | counter++; 233 | if (counter >= 5) { 234 | clearInterval(intervalId); 235 | } 236 | } 237 | setDevicesNativeSelectorForMobile(); 238 | }, 100); 239 | } else if (settings.url.startsWith("json.htm?type=command¶m=switchscene")) { 240 | let id = settings.url.split("&")[2]; 241 | id = id.substr(4); 242 | let scene = $(".item#" + id); 243 | let statusElem = scene.find("#status .wrapper"); 244 | statusElem.hide(); 245 | let switcher = statusElem.parent().siblings(".switch").find("input"); 246 | if (switcher.length) { 247 | let statusText = settings.url.split("&")[3]; 248 | statusText = statusText.substr(10); 249 | switcher.attr("checked", statusText == "On"); 250 | } 251 | } 252 | } 253 | -------------------------------------------------------------------------------- /js/livestamp.js: -------------------------------------------------------------------------------- 1 | // Livestamp.js / v2.0.0 / (c) 2015 Matt Bradley / MIT License 2 | (function (plugin) { 3 | if (typeof define === 'function' && define.amd) { 4 | // AMD. Register as an anonymous module. 5 | define(['jquery', 'moment'], plugin); 6 | } else { 7 | // Browser globals 8 | plugin(jQuery, moment); 9 | } 10 | }(function($, moment) { 11 | var updateInterval = 1e3, 12 | paused = false, 13 | $livestamps = $([]), 14 | 15 | init = function() { 16 | livestampGlobal.resume(); 17 | }, 18 | 19 | prep = function($el, timestamp) { 20 | var oldData = $el.data('livestampdata'); 21 | if (typeof timestamp == 'number') 22 | timestamp *= 1e3; 23 | 24 | $el.removeAttr('data-livestamp') 25 | .removeData('livestamp'); 26 | 27 | timestamp = moment(timestamp); 28 | if (moment.isMoment(timestamp) && !isNaN(+timestamp)) { 29 | var newData = $.extend({ }, { 'original': $el.contents() }, oldData); 30 | newData.moment = moment(timestamp); 31 | 32 | $el.data('livestampdata', newData).empty(); 33 | $livestamps.push($el[0]); 34 | } 35 | }, 36 | 37 | run = function() { 38 | if (paused) return; 39 | livestampGlobal.update(); 40 | setTimeout(run, updateInterval); 41 | }, 42 | 43 | livestampGlobal = { 44 | update: function() { 45 | $('[data-livestamp]').each(function() { 46 | var $this = $(this); 47 | prep($this, $this.data('livestamp')); 48 | }); 49 | 50 | var toRemove = []; 51 | $livestamps.each(function() { 52 | var $this = $(this), 53 | data = $this.data('livestampdata'); 54 | 55 | if (data === undefined) 56 | toRemove.push(this); 57 | else if (moment.isMoment(data.moment)) { 58 | var from = $this.html(), 59 | to = data.moment.fromNow(); 60 | 61 | if (from != to) { 62 | var e = $.Event('change.livestamp'); 63 | $this.trigger(e, [from, to]); 64 | if (!e.isDefaultPrevented()) 65 | $this.html(to); 66 | } 67 | } 68 | }); 69 | 70 | $livestamps = $livestamps.not(toRemove); 71 | delete $livestamps.prevObject 72 | }, 73 | 74 | pause: function() { 75 | paused = true; 76 | }, 77 | 78 | resume: function() { 79 | paused = false; 80 | run(); 81 | }, 82 | 83 | interval: function(interval) { 84 | if (interval === undefined) 85 | return updateInterval; 86 | updateInterval = interval; 87 | } 88 | }, 89 | 90 | livestampLocal = { 91 | add: function($el, timestamp) { 92 | if (typeof timestamp == 'number') 93 | timestamp *= 1e3; 94 | timestamp = moment(timestamp); 95 | 96 | if (moment.isMoment(timestamp) && !isNaN(+timestamp)) { 97 | $el.each(function() { 98 | prep($(this), timestamp); 99 | }); 100 | livestampGlobal.update(); 101 | } 102 | 103 | return $el; 104 | }, 105 | 106 | destroy: function($el) { 107 | $livestamps = $livestamps.not($el); 108 | $el.each(function() { 109 | var $this = $(this), 110 | data = $this.data('livestampdata'); 111 | 112 | if (data === undefined) 113 | return $el; 114 | 115 | $this 116 | .html(data.original ? data.original : '') 117 | .removeData('livestampdata'); 118 | }); 119 | 120 | return $el; 121 | }, 122 | 123 | isLivestamp: function($el) { 124 | return $el.data('livestampdata') !== undefined; 125 | } 126 | }; 127 | 128 | $.livestamp = livestampGlobal; 129 | $(init); 130 | $.fn.livestamp = function(method, options) { 131 | if (!livestampLocal[method]) { 132 | options = method; 133 | method = 'add'; 134 | } 135 | 136 | return livestampLocal[method](this, options); 137 | }; 138 | })); 139 | -------------------------------------------------------------------------------- /js/settings_page.js: -------------------------------------------------------------------------------- 1 | let mSettings = $("#appnavbar").find("li[has-permission='Admin']"); 2 | if (mSettings && mSettings.length > 0) { 3 | mSettings.removeClass("dropdown"); 4 | mSettings.children("a").removeClass("dropdown-toggle"); 5 | mSettings.find("a > b").remove(); 6 | mSettings.children("ul").remove(); 7 | 8 | mSettings.click(function() { 9 | $("#machinoSettings").remove(); 10 | $("#appnavbar li").removeClass("current_page_item"); 11 | $("#mSettings").addClass("current_page_item"); 12 | $("#search").addClass("readonly"); 13 | $(".navbar-inner").removeClass("slide"); 14 | $("body").css("overflow", "auto"); 15 | if ($("#holder #main-view #machinoSettings").length === 0) { 16 | $("#holder #main-view").empty(); 17 | $("#holder #main-view").append('
    '); 18 | $("#machinoSettings").append("
    ").append('').append('