Dashticz v3.7.6 beta

Dashticz, alternative dashboard based on HTML, CSS, jQuery

Moderators: leecollings, htilburgs, robgeerts

Lokonli
Posts: 2290
Joined: Monday 29 August 2016 22:40
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Dashticz v3.7.6 beta

Post by Lokonli »

pvklink wrote: Tuesday 16 March 2021 13:32 lokonli is great... :-)
Problem solved and you also solved a problem i wanted to adress after this:
- when you change a value in domoticz, this dashticz dial does not refresh, this also solved :-)

for me last questions are:
Last? :)

0. how do i get rid of "0 level" in the dial , see attachment.
hide_data: true, does not help
@update: solved, by removing the values part and add isSetpoint: true in the main part of the block
Removing the values part would be sufficient.

In fact you added a value below the main value. You did not provide a value field, so by default the 'Data' device field is used.
For dimmer devices this looks like : 'Set Level: 84%'

Dashticz tries to interpret 'Set' as a number, which will give 0.
As unit 'Level:' will be used.

Very logical :)

1. what does "fixed" do?
It removes the needle and numbers around the dial.

3. Does setpoint: 60 has any use ? i thougt you could influence the colors of the ring when below or above this point
It was not implemented yet for dimmer devices. I just did in latest beta.

4. what does layout do
Not relevant anymore, You can remove it.
pvklink
Posts: 822
Joined: Wednesday 12 November 2014 15:01
Target OS: Raspberry Pi / ODroid
Domoticz version: latest b
Contact:

Re: Dashticz v3.7.6 beta

Post by pvklink »

thanks, going to cleanup...
Raspberry (raspbian on rpi 3) , Domoticz Beta, dzVents , RFXtrx433e, P1, Hue, Yeelight, Zwave+, X10, ESP(easy), MQTT,Weather Underground, System Alive Checker, Domoticz Remote Server to RPI with Google Assistant,
Jablotron connection, Ikea
Chris12
Posts: 238
Joined: Tuesday 18 August 2020 8:41
Target OS: NAS (Synology & others)
Domoticz version: 2021.1
Location: NL
Contact:

Re: Dashticz v3.7.6 beta

Post by Chris12 »

Lokonli wrote: Tuesday 16 March 2021 19:06
The data of your text device is already a string, so you have to remove parseFloat, otherwise it will be interpreted as a number. Like this:

Code: Select all

function deviceHook(device) {
    if (device.idx==1032) {  //Domoticz device ID 
        var rpiactive = device.Data;
        device.deviceStatus = rpiactive=='Active' ? 'good':'bad';
    }
}
Formatting the main value of a dial is also slightly different. You can use the following:

Code: Select all

.good .value {
    color: green;
}

.bad .value {
    color: red;
}
Thanks this now works!
What are the options to get the circle of the dial use the color green/red when OK/Not OK?
I can see for other dials I use for representing values(numbers) there's a blue circle (not the outer circle, but the inner circle part).

And can the 'Active' text be bold without that the name of the dial will be moved out of the dial?
I added this to my custom.css, the text is now bold. But the name of every dial is now moved a little bit up, and crosses the circle part of the dial when a longer name is used.

Code: Select all

.dial.text .value-unit {
	font-weight: bold; !important
}
Can I add the bold part for only specific dials or is the setting for every dial?
I can see when using element inspect that the specific dial is named: dial_RPi-Status, but I'm not able to fit that into my css code.
Domoticz beta | Dashticz beta | Synology DS415+ | Wall tablet Teclast 11.6inch (Android) | TADO v3 controlled heating
pvklink
Posts: 822
Joined: Wednesday 12 November 2014 15:01
Target OS: Raspberry Pi / ODroid
Domoticz version: latest b
Contact:

Re: Dashticz v3.7.6 beta

Post by pvklink »

div[data-id='2269'] .dial.text .value-unit {font-weight: bold; !important; font-size: 6px!important}
and change the idx 2269 to your idx
Raspberry (raspbian on rpi 3) , Domoticz Beta, dzVents , RFXtrx433e, P1, Hue, Yeelight, Zwave+, X10, ESP(easy), MQTT,Weather Underground, System Alive Checker, Domoticz Remote Server to RPI with Google Assistant,
Jablotron connection, Ikea
Chris12
Posts: 238
Joined: Tuesday 18 August 2020 8:41
Target OS: NAS (Synology & others)
Domoticz version: 2021.1
Location: NL
Contact:

Re: Dashticz v3.7.6 beta

Post by Chris12 »

@lokonli, another question (or maybe a feature request).

Is is possible that different times can be configured per screen?
I've got 6 screens which currently rotates every 30secs.
But some screens contain more info then others (like news overview etc.) which I would like to be displayed for example 45secs. and other screens (showing system info of for example pihole/dns/server etc.) can be shown for 15secs.

Is this already configurable in dashticz? I could not see a 'timer' parameter or something mentioned in the docs.
Domoticz beta | Dashticz beta | Synology DS415+ | Wall tablet Teclast 11.6inch (Android) | TADO v3 controlled heating
Chris12
Posts: 238
Joined: Tuesday 18 August 2020 8:41
Target OS: NAS (Synology & others)
Domoticz version: 2021.1
Location: NL
Contact:

Re: Dashticz v3.7.6 beta

Post by Chris12 »

pvklink wrote: Wednesday 17 March 2021 11:26 div[data-id='2269'] .dial.text .value-unit {font-weight: bold; !important; font-size: 6px!important}
and change the idx 2269 to your idx
thanks, I do not see any change in the font (also neither with my previous css adaption...)

Solved, I had a typo in my data ID (I use the name instead of idx, this works)
Last edited by Chris12 on Wednesday 17 March 2021 12:35, edited 1 time in total.
Domoticz beta | Dashticz beta | Synology DS415+ | Wall tablet Teclast 11.6inch (Android) | TADO v3 controlled heating
pvklink
Posts: 822
Joined: Wednesday 12 November 2014 15:01
Target OS: Raspberry Pi / ODroid
Domoticz version: latest b
Contact:

Re: Dashticz v3.7.6 beta

Post by pvklink »

it works for me...

1. refreshed the cache ?
2. !important defined ?
3. put the lines at the backed of your css
Raspberry (raspbian on rpi 3) , Domoticz Beta, dzVents , RFXtrx433e, P1, Hue, Yeelight, Zwave+, X10, ESP(easy), MQTT,Weather Underground, System Alive Checker, Domoticz Remote Server to RPI with Google Assistant,
Jablotron connection, Ikea
Chris12
Posts: 238
Joined: Tuesday 18 August 2020 8:41
Target OS: NAS (Synology & others)
Domoticz version: 2021.1
Location: NL
Contact:

Re: Dashticz v3.7.6 beta

Post by Chris12 »

pvklink wrote: Wednesday 17 March 2021 12:32 it works for me...

1. refreshed the cache ?
2. !important defined ?
3. put the lines at the backed of your css
Hi, I just editted my post above that it is solved.
my code:

Code: Select all

div[data-id='RPi-status'] .dial.text .value-unit {font-weight: bold !important; }
Domoticz beta | Dashticz beta | Synology DS415+ | Wall tablet Teclast 11.6inch (Android) | TADO v3 controlled heating
pvklink
Posts: 822
Joined: Wednesday 12 November 2014 15:01
Target OS: Raspberry Pi / ODroid
Domoticz version: latest b
Contact:

Re: Dashticz v3.7.6 beta

Post by pvklink »

yep, idx or blockname...great!
Raspberry (raspbian on rpi 3) , Domoticz Beta, dzVents , RFXtrx433e, P1, Hue, Yeelight, Zwave+, X10, ESP(easy), MQTT,Weather Underground, System Alive Checker, Domoticz Remote Server to RPI with Google Assistant,
Jablotron connection, Ikea
pvklink
Posts: 822
Joined: Wednesday 12 November 2014 15:01
Target OS: Raspberry Pi / ODroid
Domoticz version: latest b
Contact:

Re: Dashticz v3.7.6 beta

Post by pvklink »

I also started with styling my dials.
Text block is done, On/off buttons done and now the dials with a selector.
I like to change the 2e outer ring when the dial selected item is off or on, just like the on/off dial switches

I tried:
div[data-id='985'] .dial-center.off {background: #FFC300!important;}
div[data-id='985'] .dial-center.on {background: #FFC300!important;}
but this construct is for on/off switches and not for selector although these devices also are on or off....

also tried:
div[data-id='985'] .dial-center .selected.10 {background: #E41C0C!important;}
div[data-id='985'] .dial-center .selected.20 {background: #25663E!important;}
Last edited by pvklink on Friday 19 March 2021 13:06, edited 3 times in total.
Raspberry (raspbian on rpi 3) , Domoticz Beta, dzVents , RFXtrx433e, P1, Hue, Yeelight, Zwave+, X10, ESP(easy), MQTT,Weather Underground, System Alive Checker, Domoticz Remote Server to RPI with Google Assistant,
Jablotron connection, Ikea
Lokonli
Posts: 2290
Joined: Monday 29 August 2016 22:40
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Dashticz v3.7.6 beta

Post by Lokonli »

Chris12 wrote: Wednesday 17 March 2021 11:29 @lokonli, another question (or maybe a feature request).

Is is possible that different times can be configured per screen?
I've got 6 screens which currently rotates every 30secs.
But some screens contain more info then others (like news overview etc.) which I would like to be displayed for example 45secs. and other screens (showing system info of for example pihole/dns/server etc.) can be shown for 15secs.

Is this already configurable in dashticz? I could not see a 'timer' parameter or something mentioned in the docs.
This is a feature request. Theoretically is not so difficult to set parameters per screen.

I'll add it to the feature request list.
Chris12
Posts: 238
Joined: Tuesday 18 August 2020 8:41
Target OS: NAS (Synology & others)
Domoticz version: 2021.1
Location: NL
Contact:

Re: Dashticz v3.7.6 beta

Post by Chris12 »

@lokonli,

Thanks for adding it to the request list.

What about my other question about the coloring of the dial:

What are the options to get the circle of the dial use the color green/red when OK/Not OK?
I can see for other dials I use for representing values(numbers) there's a blue/orange circle (not the outer circle, but the inner circle part).

Can that somehow be done by adding some code into the custom.js file?
Domoticz beta | Dashticz beta | Synology DS415+ | Wall tablet Teclast 11.6inch (Android) | TADO v3 controlled heating
pvklink
Posts: 822
Joined: Wednesday 12 November 2014 15:01
Target OS: Raspberry Pi / ODroid
Domoticz version: latest b
Contact:

Re: Dashticz v3.7.6 beta

Post by pvklink »

setpoint=xx not working in the configuration below. So colors do not adjust up or below 16 in this case
I inspect the code and data-setpoint is empty, and should be 16
2115 is a setpoint device
2125 is the measured temp of the device
2242 is a rfxcom device

Code: Select all

blocks['mytherm'] = {
        idx: 2115,
	showvalue:false,
        title: 'Temp niels',
        type: 'dial',
        width: 4,
        color: 'white',
	setpoint: 16, 			// werkt niet, kleur veranderd niet
	//isSetpoint: true,	
	flash: true,
	showring: true,
        showunit: true,
        shownumbers: true,
        last_update: false,
        min: 5,
        max: 30,
        values : [
                {
                        value: 'Temp',
                        idx: 2125,
			//label: 'Radiator ',
			unit: 'C',
                        decimals: 1,
			addClass:'nielstemp',
                },
                {
                        value: 'Temp',
                        idx: 2242,
			label: 'Zolder ',
			unit: 'C',
                        decimals: 1,
			addClass:'nielstemp2',
                },
        ]
}
niels2.jpg
niels2.jpg (6.6 KiB) Viewed 979 times
css

Code: Select all

dial .bar.primary,.dial .fill.primary {border-color: #25663E;}		
.dial .bar.secondary, .dial .fill.secondary {border-color: #E41C0C;}

.nielstemp  {white-space: pre;font-size: 30px!important;color: lightgrey;}
.nielstemp2 {white-space: pre;font-size: 12px!important;color: grey;}

Raspberry (raspbian on rpi 3) , Domoticz Beta, dzVents , RFXtrx433e, P1, Hue, Yeelight, Zwave+, X10, ESP(easy), MQTT,Weather Underground, System Alive Checker, Domoticz Remote Server to RPI with Google Assistant,
Jablotron connection, Ikea
User avatar
Sjonnie2017
Posts: 365
Joined: Wednesday 02 August 2017 19:43
Target OS: Linux
Domoticz version: Latest ß
Location: The Netherlands
Contact:

Maybe I inadvertently upgraded 3.7.4>3.7.6 and now layout is wrong

Post by Sjonnie2017 »

I migrated my Domoticz/Dashticz environment Friday March 12th. I believe I installed Dashticz 3.7.4. My dashboard was working flawlessly. Last week I did not update the software.

Today I was forced to re-install my Pi and subsequently installed 3.7.6. When I restored my config.js the resulting screen was missing all modifications I had made but did show all devices configured in my config.js. So in effect all devices are shown on one page and the background does not show. I have checked the IP in my config.js (you never know ;) ) and it was configured correctly. Checked if the background image was available (bg9) and it was. I also checked these in the second config.tablet.js that I use as an alternative dash for my tablet. No problems there either.

The buttons are working though :?

Has there been a change since 3.7.4 I am not aware of? If so, how can I fix the problem?

Any help greatly appreciated!

TIA

Greetz,

Sjonnie

EDIT: My config.js:
Spoiler: show
// --------------------------------------------------------------------------------------------
// Algemene configuratie
// --------------------------------------------------------------------------------------------

var config = {}
config['domoticz_ip'] = 'http://192.168.16.165:2080';
config['login_timeout'] = '60';
config['user_name'] = '0';
config['pass_word'] = '0';
config['app_title'] = '@Home';

config['room_plan'] = '0';

config['domoticz_refresh'] = '5';
config['dashticz_refresh'] = '60';

config['default_news_url'] = 'https://www.nu.nl/rss/algemeen';
config['news_scroll_after'] = '7';
config['default_cors_url'] = '';

config['dashticz_php_path'] = './vendor/dashticz/';
config['standby_call_url'] = '0';
config['standby_call_url_on_end'] = '0';
config['theme'] = 'default';
config['background_image'] = 'bg9.jpg';
config['standby_after'] = '0';
config['start_page'] = '1';
config['enable_swiper'] = '2';
config['vertical_scroll'] = '2';
config['auto_swipe_back_to'] = '1';
config['auto_swipe_back_after'] = '0';
config['auto_slide_pages'] = '0';
config['slide_effect'] = 'slide';

config['standard_graph'] = 'month';
config['blink_color'] = '255, 255, 255, 1';

config['language'] = 'nl_NL';
config['timeformat'] = 'DD-MM-YY HH:mm';
config['calendarformat'] = 'dd DD.MM HH:mm';
config['calendarlanguage'] = 'nl_NL';
config['calendarurl'] = '0';

config['boss_stationclock'] = 'RedBoss';

config['gm_api'] = '0';
config['gm_zoomlevel'] = '0';
config['gm_latitude'] = '0';
config['gm_longitude'] = '0';

config['speak_lang'] = 'nl-NL';

config['wu_api'] = '';
config['wu_city'] = '';
config['wu_name'] = '0';
config['wu_country'] = 'NL';
config['owm_api'] = 'snip';
config['owm_city'] = 'snip';
config['owm_name'] = 'snip';
config['owm_country'] = 'nl';
config['owm_lang'] = 'nl';
config['owm_cnt'] = '5';
config['idx_moonpicture'] = '0';
config['owm_days'] = true;
config['owm_cnt'] = 5
config['owm_min'] = true;
config['use_fahrenheit'] = 0;
config['use_beaufort'] = 0;
config['translate_windspeed'] = 1;
config['static_weathericons'] = 0;

config['longfonds_zipcode'] = '';
config['longfonds_housenumber'] = '';

config['switch_horizon'] = '0';
config['host_nzbget'] = '0';
config['spot_clientid'] = '0';
config['sonarr_url'] = '0';
config['sonarr_apikey'] = '0';
config['sonarr_maxitems'] = '0';

config['garbage_company'] = '';
config['garbage_icalurl'] = '0';
config['google_api_key'] = '0';
config['garbage_calendar_id'] = '0';
config['garbage_zipcode'] = '0';
config['garbage_street'] = '0';
config['garbage_housenumber'] = '0';
config['garbage_housenumberadd'] = '0';
config['garbage_maxitems'] = '0';
config['garbage_width'] = '0';
config['garbage_hideicon'] = 0;
config['garbage_icon_use_colors'] = 1;
config['garbage_use_colors'] = 0;
config['garbage_use_names'] = 0;
config['garbage_use_cors_prefix'] = 1;

config['setpoint_min'] = '5';
config['setpoint_max'] = '40';
config['loginEnabled'] = 0;
config['disable_update_check'] = 0;

config['no_rgb'] = 0;
config['hide_off_button'] = 0;

config['auto_positioning'] = 1;
config['use_favorites'] = 0;

config['disable_googleanalytics'] = 1;

config['last_update'] = 1;
config['hide_topbar'] = 0;
config['security_button_icons'] = 1;
config['edit_mode'] = 0;

config['hide_seconds'] = 0;
config['hide_seconds_stationclock'] = 0;

config['hide_mediaplayer'] = 0;

// Graph settings
config['graph_zoom'] = 1;

// --------------------------------------------------------------------------------------------
// Scherm configuratie
// --------------------------------------------------------------------------------------------

var max_resolution_desktop = 'default';
var max_resolution_tablet = 'tablet';
var max_resolution_phone = 'phone';

// --------------------------------------------------------------------------------------------
// Title configuratie
// --------------------------------------------------------------------------------------------

var title_lampen = 'title_lampen';
var title_dimmers = 'title_dimmers';
var title_lampen_2200 = 'title_lampen_2200';
var title_vochtsensors = 'title_vochtsensors';
var title_ventilatoren = 'title_ventilatoren'
var title_ventilator1 = 'title_ventilator1';
var title_ventilator2 = 'title_ventilator2';
var title_rookmelders = 'title_rookmelders';
var title_gas_en_elektra = 'title_gas_en_elektra';
var title_elektra = 'title_elektra';
var title_gas = 'title_gas';
var title_luikensets = 'title_luikensets';
var title_luiken = 'title_luiken';
var title_datum_tijd = 'title_datum_tijd'
var title_weer = 'title_weer';
var title_klimaatsensors = 'title_klimaatsensors';
var title_binnenklimaat = 'title_binnenklimaat';
var title_deurbel = 'title_deurbel';
var title_raspberry = 'title_raspberry';
var title_alle_schakelaars = 'title_alle_schakelaars';
var title_domoticz = 'title_domoticz';
var title_uptime = 'title_uptime';
var title_hobby_verlichting = 'title_hobby_verlichting';
var title_settings = 'title_settings';
var title_sensoren = 'title_sensoren';
var title_sensoren_per_ruimte = 'title_sensoren_per_ruimte';

// --------------------------------------------------------------------------------------------
// Apparaat definities
// --------------------------------------------------------------------------------------------

// Verlichting
var simon_levelt = 150;//ZigBee (group)
var wandbord = 259;//ZigBee
var cd_rek = 260;//ZigBee
var eettafel = 262;//ZigBee (group)
var plafondspot_tv = 191;//ZigBee (group)
var secretaire = 117;//ZigBee
var buffetkast = 255;//ZigBee
var dressoir = 257;//ZiBee
var traplicht = 75; //KaKu
var plafondspot_haard = 193;//ZigBee (group)
var hobby_haar = 78; //KaKu
var hobby_algemeen = 79; //KaKu
var slaapkamer_bed = 229;//ZigBee
var slaapkamer_plafond = 230;//ZigBee
var hobby_hem = 85; //KaKu
var theaterspot = 136;//ZigBee
var mondriaan_tv = 139;//ZigBee (group)
var mondriaan_dressoir = 263;//ZigBee (group)

// Overige schakelaars
var schakelaar_voorraad = 197;//ZigBee (group)

// Luiken
var luik_keuken = 274; //ZigBee
var luik_dressoir = 273; //ZigBee
var luik_haard = 272; //ZigBee
var luik_kop_tuin = 271; //ZigBee
var luik_tuindeur = 270; //ZigBee
var luik_tuinraam = 269; //ZigBee
var luik_secretaire = 250; //ZigBee
var luik_eettafel = 268; //ZigBee
var luik_hobby_waterzijde = 275; //ZigBee
var luik_hobby_kop = 276; //ZigBee

// Luikensets (Scenes)
var luiken_waterzijde = 's1';
var luiken_tuinzijde = 's2';
var luiken_hobby = 's3';

// Experiment met individuele scenes voor openen en sluiten
var luiken_hobby_open = 's7';
var luiken_hobby_dicht = 's8';
var luiken_water_open = 's9';
var luiken_water_dicht = 's10';
var luiken_tuin_open = 's11';
var luiken_tuin_dicht = 's12';

// Lampenset
var lampen_2200 = 's4';
var alle_lampen_uit = 's13';

// Weer
var tuinvilla_buiten = 89; //KaKu
var schuur = 90; //KaKu
var tuinvilla = 91; //KaKu
var kelder_achter = 92; //KaKu
var regen = 111;//KaKu
var grafiek_regen = 'graph_111';
var grafiek_tuinvilla_buiten = 'graph_89';
var grafiek_schuur = 'graph_90';
var grafiek_tuinvilla = 'graph_91';
var grafiek_kelder_achter = 'graph_92';

// Temperatuur, Vochtigheid en Luchtdruk (binnen!)
var temp_woonkamer = 145; //ZigBee Xiaomi
var hum_woonkamer = 146; //ZigBee Xiaomi
var druk_woonkamer = 147; //ZigBee Xiaomi
var temp_kelder_achter = 144; //ZigBee Xiaomi
var hum_kelder_achter = 148; //ZigBee Xiaomi
var druk_kelder_achter = 149; //ZigBee Xiaomi
var temp_badkamer = 152; //ZigBee Xiaomi
var hum_badkamer = 153; //ZigBee Xiaomi
var druk_badkamer = 154; //ZigBee Xiaomi
var temp_slaapkamer = 158; //ZigBee Xiaomi
var hum_slaapkamer = 159; //ZigBee Xiaomi
var druk_slaapkamer = 160; //ZigBee Xiaomi
var temp_voorraad = 214; //ZigBee Heiman
var hum_voorraad = 215; //ZigBee Heiman

// Sensoren
var vochtsensor_ontvochtiger = 100; //KaKu
var vochtsensor_cv_ketel = 101; //KaKu
var vochtsensor_wasmachine = 102; //KaKu
var vochtsensor_waterontharder = 103; //KaKu
var rookmelder_woonkamer = 212; //ZigBee
var rookmelder_gang = 211; //ZigBee
var rookmelder_slaapkamer = 216; //ZigBee
var rookmelder_kelder = 247; //ZigBee

// Gas en elektra
var elektra = 199;
var gas = 200;
var elektra_nu = '199_1';
var elektra_vandaag = '199_2';
var elektra_totaal = '199_3';
var grafiek_gas = 'graph_200';
var grafiek_elektra = 'graph_199';

// Deurbel
var deurbel = 104; //KaKu

// Ventilator (1 en 2)
var ventilator1_lamp = 175; //infra-rood On/Off
var ventilator1_stand_0 = 174; //infra-rood
var ventilator1_stand_1 = 172; //infra-rood
var ventilator1_stand_2 = 166; //infra-rood
var ventilator1_stand_3 = 171; //infra-rood

var ventilator2_lamp_aan = 183; //infra-rood On
var ventilator2_lamp_uit = 177; //infra-rood Off
var ventilator2_stand_0 = 184; //infra-rood
var ventilator2_stand_1 = 169; //infra-rood
var ventilator2_stand_2 = 187; //infra-rood
var ventilator2_stand_3 = 170; //infra-rood

// Sensoren RPi
var rpi_cpu_load = 125;
var rpi_temp = 126;
var rpi_mem_usage = 127;

// Variabelen uit Domoticz
var uptime = 'v5';

// Dummy blocks
var dummy9 = 'dummy9'

// --------------------------------------------------------------------------------------------
// Buttons
// --------------------------------------------------------------------------------------------

var buttons = {}

// --------------------------------------------------------------------------------------------
// Blocks
// --------------------------------------------------------------------------------------------

var blocks = {}

// --------------------------------------------------------------------------------------------
// Lampen
// --------------------------------------------------------------------------------------------

// Lampen uit om 22.00 uur
blocks[lampen_2200] = {}
blocks[lampen_2200]['title'] = 'Lampen uit om 22.00';
blocks[lampen_2200]['width'] = 3;
blocks[lampen_2200]['hide_data'] = true;

blocks[alle_lampen_uit] = {}
blocks[alle_lampen_uit]['title'] = 'Alles uit';
blocks[alle_lampen_uit]['width'] = 3;

// Title: Lampen
blocks[title_lampen] = {}
blocks[title_lampen]['type'] = 'blocktitle'
blocks[title_lampen]['title'] = 'Lampen'
blocks[title_lampen]['image'] = 'lights.png'

// Title: Alle_Schakelaars
blocks[title_alle_schakelaars] = {}
blocks[title_alle_schakelaars]['type'] = 'blocktitle'
blocks[title_alle_schakelaars]['title'] = 'Alle Schakelaars'
blocks[title_alle_schakelaars]['image'] = 'lights.png'

// Title: Hobby Verlichting
blocks[title_hobby_verlichting] = {}
blocks[title_hobby_verlichting]['type'] = 'blocktitle'
blocks[title_hobby_verlichting]['title'] = 'Verlichting Hobby'
blocks[title_hobby_verlichting]['image'] = 'lights.png'

// Lampen - Simon Lévelt
blocks[simon_levelt] = {}
blocks[simon_levelt]['title'] = 'Simon Lévelt';
blocks[simon_levelt]['width'] = 6;
blocks[simon_levelt]['hide_data'] = false;

// Lampen - Wandbord
blocks[wandbord] = {}
blocks[wandbord]['title'] = 'Wandbord';
blocks[wandbord]['width'] = 6;
blocks[wandbord]['hide_data'] = false;

// Lampen - CD Rek
blocks[cd_rek] = {}
blocks[cd_rek]['title'] = 'CD Rek';
blocks[cd_rek]['width'] = 6;
blocks[cd_rek]['hide_data'] = false;

// Lampen - Theaterspot
blocks[theaterspot] = {}
blocks[theaterspot]['title'] = 'Theaterspot';
blocks[theaterspot]['width'] = 6;
blocks[theaterspot]['hide_data'] = false;

// Lampen - Secretaire
blocks[secretaire] = {}
blocks[secretaire]['title'] = 'Secretaire';
blocks[secretaire]['width'] = 4;
blocks[secretaire]['hide_data'] = false;

// Lampen - Buffetkast
blocks[buffetkast] = {}
blocks[buffetkast]['title'] = 'Buffetkast';
blocks[buffetkast]['width'] = 4;
blocks[buffetkast]['hide_data'] = false;

// Lampen - Dressoir
blocks[dressoir] = {}
blocks[dressoir]['title'] = 'Dressoir';
blocks[dressoir]['width'] = 4;
blocks[dressoir]['hide_data'] = false;

// Lampen - Traplicht
blocks[traplicht] = {}
blocks[traplicht]['title'] = 'Traplicht';
blocks[traplicht]['width'] = 4;
blocks[traplicht]['hide_data'] = false;

// Lampen - Lamp Ventilator 1
blocks[ventilator1_lamp] = {}
blocks[ventilator1_lamp]['title'] = 'Ventilatorlamp';
blocks[ventilator1_lamp]['width'] = 4;

// Title Dimmers
blocks[title_dimmers] = {}
blocks[title_dimmers]['type'] = 'blocktitle'
blocks[title_dimmers]['title'] = 'Dimmers'
blocks[title_dimmers]['image'] = 'dimmer2.png'

// Dimmers - Eettafel
blocks[eettafel] = {}
blocks[eettafel]['title'] = 'Eettafel';
blocks[eettafel]['width'] = 6;
//blocks[eettafel]['hide_data'] = false;

// Lampen - Mondriaan TV
blocks[mondriaan_tv] = {}
blocks[mondriaan_tv]['title'] = 'Mondriaan TV';
blocks[mondriaan_tv]['width'] = 6;
blocks[mondriaan_tv]['hide_data'] = false;

// Lampen - Mondriaan Dressoir
blocks[mondriaan_dressoir] = {}
blocks[mondriaan_dressoir]['title'] = 'Mondriaan Dressoir';
blocks[mondriaan_dressoir]['width'] = 6;
blocks[mondriaan_dressoir]['hide_data'] = false;

// Dimmers - Plafondspots TV Dimmer
blocks[plafondspot_tv] = {}
blocks[plafondspot_tv]['title'] = 'Plafondspots TV';
blocks[plafondspot_tv]['width'] = 6;
blocks[plafondspot_tv]['hide_data'] = false;

// Dimmers - Plafondspot Haard Dimmer
blocks[plafondspot_haard] = {}
blocks[plafondspot_haard]['title'] = 'Plafondspots Haard';
blocks[plafondspot_haard]['width'] = 6;
blocks[plafondspot_haard]['hide_data'] = false;

// Lampen - Hobby hem Dimmer
blocks[hobby_hem] = {}
blocks[hobby_hem]['title'] = 'Hobby hem';
blocks[hobby_hem]['width'] = 4;
blocks[hobby_hem]['hide_data'] = false;

// Lampen - Hobby haar Dimmer
blocks[hobby_haar] = {}
blocks[hobby_haar]['title'] = 'Hobby haar';
blocks[hobby_haar]['width'] = 4;
blocks[hobby_haar]['hide_data'] = false;

// Lampen - Hobby Voorraad Dimmer
blocks[hobby_algemeen] = {}
blocks[hobby_algemeen]['title'] = 'Hobby Voorraad';
blocks[hobby_algemeen]['width'] = 4;
blocks[hobby_algemeen]['hide_data'] = false;

// --------------------------------------------------------------------------------------------
// Sensors
// --------------------------------------------------------------------------------------------

// Title Vochtsensors
blocks[title_vochtsensors] = {}
blocks[title_vochtsensors]['type'] = 'blocktitle'
blocks[title_vochtsensors]['title'] = 'Vochtsensors'
blocks[title_vochtsensors]['image'] = 'water_set.png'

// Title Vochtsensors
blocks[title_sensoren] = {}
blocks[title_sensoren]['type'] = 'blocktitle'
blocks[title_sensoren]['title'] = 'Sensoren'
blocks[title_sensoren]['image'] = 'sensors.png'

// Vochtsensors - Ontvochtiger
blocks[vochtsensor_ontvochtiger] = {};
blocks[vochtsensor_ontvochtiger]['title'] = 'Ontvochtiger';
blocks[vochtsensor_ontvochtiger]['width'] = 12;
blocks[vochtsensor_ontvochtiger]['image'] = 'water.png';
blocks[vochtsensor_ontvochtiger]['protected'] = true;
blocks[vochtsensor_ontvochtiger]['hide_data'] = false;

// Vochtsensors - CV ketel
blocks[vochtsensor_cv_ketel] = {};
blocks[vochtsensor_cv_ketel]['title'] = 'CV ketel';
blocks[vochtsensor_cv_ketel]['width'] = 12;
blocks[vochtsensor_cv_ketel]['image'] = 'water.png';
blocks[vochtsensor_cv_ketel]['protected'] = true;
blocks[vochtsensor_cv_ketel]['hide_data'] = false;

// Vochtsensors - Wasmachine
blocks[vochtsensor_wasmachine] = {};
blocks[vochtsensor_wasmachine]['title'] = 'Wasmachine';
blocks[vochtsensor_wasmachine]['width'] = 12;
blocks[vochtsensor_wasmachine]['image'] = 'water.png';
blocks[vochtsensor_wasmachine]['protected'] = true;
blocks[vochtsensor_wasmachine]['hide_data'] = false;

// Vochtsensors - Waterontharder
blocks[vochtsensor_waterontharder] = {};
blocks[vochtsensor_waterontharder]['title'] = 'Waterontharder';
blocks[vochtsensor_waterontharder]['width'] = 12;
blocks[vochtsensor_waterontharder]['image'] = 'water.png';
blocks[vochtsensor_waterontharder]['protected'] = true;
blocks[vochtsensor_waterontharder]['hide_data'] = false;


// --------------------------------------------------------------------------------------------
// Rookmelders
// --------------------------------------------------------------------------------------------

// Title rookmelders
blocks[title_rookmelders] = {}
blocks[title_rookmelders]['type'] = 'blocktitle'
blocks[title_rookmelders]['title'] = 'Rookmelders'
blocks[title_rookmelders]['image'] = 'smoke_set.png'

// Rookmelder Woonkamer
blocks[rookmelder_woonkamer] = {};
blocks[rookmelder_woonkamer]['title'] = 'Woonkamer';
blocks[rookmelder_woonkamer]['width'] = 3;
blocks[rookmelder_woonkamer]['image'] = 'smoke.png'
blocks[rookmelder_woonkamer]['hide_data'] = false;

// Rookmelder Gang
blocks[rookmelder_gang] = {};
blocks[rookmelder_gang]['title'] = 'Gang';
blocks[rookmelder_gang]['width'] = 3;
blocks[rookmelder_gang]['image'] = 'smoke.png'
blocks[rookmelder_gang]['hide_data'] = false;

// Rookmelder Slaapkamer
blocks[rookmelder_slaapkamer] = {};
blocks[rookmelder_slaapkamer]['title'] = 'Slaapkamer';
blocks[rookmelder_slaapkamer]['width'] = 3;
blocks[rookmelder_slaapkamer]['image'] = 'smoke.png'
blocks[rookmelder_slaapkamer]['hide_data'] = false;

// Rookmelder Slaapkamer
blocks[rookmelder_kelder] = {};
blocks[rookmelder_kelder]['title'] = 'Kelder';
blocks[rookmelder_kelder]['width'] = 3;
blocks[rookmelder_kelder]['image'] = 'smoke.png'
blocks[rookmelder_kelder]['hide_data'] = false;


// --------------------------------------------------------------------------------------------
// "Slimme" meter
// --------------------------------------------------------------------------------------------

//Meetgegevens Elektra:
// c1_199 = Totaal Nachttarief
// c2_199 = Totaal Retour Nacht
// c3_199 = Totaal Dagtarief
// c4_199 = Totaal Retour Dag
// r1_199 = Retour Nacht
// r2_199 = Retour Dag
// v_199 = Verbruik Nacht
// v2_199 = Verbruik Dag


// Title Gas en Elektra
blocks[title_gas_en_elektra] = {}
blocks[title_gas_en_elektra]['type'] = 'blocktitle'
blocks[title_gas_en_elektra]['title'] = 'Gas en Elektra'
blocks[title_gas_en_elektra]['image'] = 'gas_electricity.png'

blocks[title_elektra] = {}
blocks[title_elektra]['type'] = 'blocktitle'
blocks[title_elektra]['title'] = 'Elektra'

blocks[title_gas] = {}
blocks[title_gas]['type'] = 'blocktitle'
blocks[title_gas]['title'] = 'Gas'

// componenten gas en elektra
blocks[elektra] = {}
blocks[elektra]['width'] = 3;
blocks[elektra]['popup'] = 'popup_elektra';
blocks[elektra]['show_lastupdate'] = false;
blocks[elektra]['protected'] = true;

blocks[gas] = {}
blocks[gas]['width'] = 6;
blocks[gas]['show_lastupdate'] = false;
blocks[gas]['popup'] = 'popup_gas';
blocks[gas]['protected'] = true;

blocks[grafiek_elektra] = {}
blocks[grafiek_elektra]['title'] = 'Elektriciteit';
blocks[grafiek_elektra]['devices'] = [199];
blocks[grafiek_elektra]['width'] = 12;
blocks[grafiek_elektra]['height'] = '400px';
blocks[grafiek_elektra]['interval'] = 2;
blocks[grafiek_elektra]['graphTypes'] = ['v', 'v2', 'r2', 'r1'];
blocks[grafiek_elektra]['graph'] = 'line';
blocks[grafiek_elektra]['zoom'] = 'xy';
blocks[grafiek_elektra]['sortDevices'] = true;
blocks[grafiek_elektra]['toolTipStyle'] = true;
blocks[grafiek_elektra]['debugButton'] = true;
blocks[grafiek_elektra]['datasetColors'] = ['red', 'yellow', 'blue', 'green'];
blocks[grafiek_elektra]['legend'] = {'v2_199': 'Hoog', 'v_199': 'Laag', 'r2_199': 'Retour Hoog', 'r1_199': 'Retour Laag'}

blocks[grafiek_gas] = {}
blocks[grafiek_gas]['title'] = 'Gas';
blocks[grafiek_gas]['devices'] = [200];
blocks[grafiek_gas]['width'] = 12;
blocks[grafiek_gas]['height'] = '400px';
blocks[grafiek_gas]['interval'] = 2;
blocks[grafiek_gas]['graphTypes'] = ['v', 'c'];
blocks[grafiek_gas]['zoom'] = 'xy';
blocks[grafiek_gas]['toolTipStyle'] = true;
blocks[grafiek_gas]['debugButton'] = true;
blocks[grafiek_gas]['datasetColors'] = ['yellow', 'red'];
blocks[grafiek_gas]['legend'] = {'v_200': 'Verbruik', 'c_200': 'Totaal'};
blocks[grafiek_gas]['custom'] = {
"Laatste uren": {range: 'day',filter: '4 hours',data: {Verbruik: 'd.v_200', Totaal: 'd.c_200'}},
"Vandaag": {range: 'day',filter: '24 hours',data: {Verbruik: 'd.v_200', Totaal: 'd.c_200'}},
"Afgelopen maand": {ylabels: ['M³', 'Ʃ M³'],range: 'year',filter: '1 months',data: {Verbruik: 'd.v_200', Totaal: 'd.c_200'}}
}

//popup Graphs voor gas en elektra

blocks['popup_elektra'] = {
title: 'Elektriciteit',
devices: [199],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue', 'green', 'yellow', 'aqua', 'red', 'yellow'],
graph: 'line',
zoom: 'xy',
legend: {
'v2_199': 'Hoog',
'v_199' : 'Laag',
'r2_199': 'Retour Hoog',
'r1_199': 'Retour Laag',
'c_199' : 'Totaal'
}
}

blocks['popup_gas'] = {
title: 'Gas',
devices: [200],
interval: 2,
graphTypes: ['v', 'c'],
zoom: 'xy',
toolTipStyle: true,
debugButton: true,
datasetColors: ['yellow', 'red'],
legend: {
'v_200': 'Verbruik',
'c_200': 'Totaal'
},
custom : {
"Laatste uren": {
range: 'day',
filter: '4 hours',
data: {
Verbruik: 'd.v_200',
Totaal: 'd.c_200'
}
},
"Vandaag": {
range: 'day',
filter: '24 hours',
data: {
Verbruik: 'd.v_200',
Totaal: 'd.c_200'
}
},
"Afgelopen maand": {
ylabels: ['M³', 'Ʃ M³'],
range: 'year',
filter: '1 months',
data: {
Verbruik: 'd.v_200',
Totaal: 'd.c_200'
}
}
}
}

// --------------------------------------------------------------------------------------------
//Rolluiken
// --------------------------------------------------------------------------------------------

// Title Luikensets
blocks[title_luikensets] = {}
blocks[title_luikensets]['type'] = 'blocktitle'
blocks[title_luikensets]['title'] = 'Luikensets'
blocks[title_luikensets]['image'] = 'shutter_set.png'

// Luikenset Waterzijde Open
blocks[luiken_water_open] = {}
blocks[luiken_water_open]['title'] = 'Water Open';
blocks[luiken_water_open]['width'] = 3;
blocks[luiken_water_open]['image'] = 'blinds_set_open.png'
blocks[luiken_water_open]['hide_data'] = false;

// Luikenset Waterzijde Dicht
blocks[luiken_water_dicht] = {}
blocks[luiken_water_dicht]['title'] = 'Water Dicht';
blocks[luiken_water_dicht]['width'] = 3;
blocks[luiken_water_dicht]['image'] = 'blinds_set_closed.png'
blocks[luiken_water_dicht]['hide_data'] = false;

// Luikenset Hobby Open
blocks[luiken_tuin_open] = {}
blocks[luiken_tuin_open]['title'] = 'Tuin Open';
blocks[luiken_tuin_open]['width'] = 3;
blocks[luiken_tuin_open]['image'] = 'blinds_set_open.png'
blocks[luiken_tuin_open]['hide_data'] = false;

// Luikenset Hobby Dicht
blocks[luiken_tuin_dicht] = {}
blocks[luiken_tuin_dicht]['title'] = 'Tuin Dicht';
blocks[luiken_tuin_dicht]['width'] = 3;
blocks[luiken_tuin_dicht]['image'] = 'blinds_set_closed.png'
blocks[luiken_tuin_dicht]['hide_data'] = false;

// Luikenset Hobby Open
blocks[luiken_hobby_open] = {}
blocks[luiken_hobby_open]['title'] = 'Hobby Open';
blocks[luiken_hobby_open]['width'] = 3;
blocks[luiken_hobby_open]['image'] = 'blinds_set_open.png'
blocks[luiken_hobby_open]['hide_data'] = false;

// Luikenset Hobby Dicht
blocks[luiken_hobby_dicht] = {}
blocks[luiken_hobby_dicht]['title'] = 'Hobby Dicht';
blocks[luiken_hobby_dicht]['width'] = 3;
blocks[luiken_hobby_dicht]['image'] = 'blinds_set_closed.png'
blocks[luiken_hobby_dicht]['hide_data'] = false;

// Title Luiken
blocks[title_luiken] = {}
blocks[title_luiken]['type'] = 'blocktitle'
blocks[title_luiken]['title'] = 'Luiken'
blocks[title_luiken]['image'] = 'shutters.png'

// Luiken - Secretaire
blocks[luik_secretaire] = {}
blocks[luik_secretaire]['width'] = 6;
blocks[luik_secretaire]['title'] = 'Secretaire'
blocks[luik_secretaire]['hide_data'] = false;
blocks[luik_secretaire]['protected'] = false;

// Luiken - Eettafel
blocks[luik_eettafel] = {}
blocks[luik_eettafel]['width'] = 6;
blocks[luik_eettafel]['title'] = 'Eettafel'
blocks[luik_eettafel]['protected'] = false;

// Luiken - Tuin Raam
blocks[luik_tuinraam] = {}
blocks[luik_tuinraam]['width'] = 6;
blocks[luik_tuinraam]['title'] = 'Tuinraam'
blocks[luik_tuinraam]['protected'] = false;

// Luiken - Tuin Deur
blocks[luik_tuindeur] = {}
blocks[luik_tuindeur]['width'] = 6;
blocks[luik_tuindeur]['title'] = 'Tuindeur'
blocks[luik_tuindeur]['protected'] = false;

// Luiken - Kop Tuin
blocks[luik_kop_tuin] = {}
blocks[luik_kop_tuin]['width'] = 6;
blocks[luik_kop_tuin]['title'] = 'Kop Tuin'
blocks[luik_kop_tuin]['protected'] = false;

// Luiken - Haard
blocks[luik_haard] = {}
blocks[luik_haard]['width'] = 6;
blocks[luik_haard]['title'] = 'Haard'
blocks[luik_haard]['protected'] = false;

// Luiken - Dressoir
blocks[luik_dressoir] = {}
blocks[luik_dressoir]['width'] = 6;
blocks[luik_dressoir]['title'] = 'Dressoir'
blocks[luik_dressoir]['protected'] = false;

// Luiken - Keuken
blocks[luik_keuken] = {}
blocks[luik_keuken]['width'] = 6;
blocks[luik_keuken]['title'] = 'Keuken'
blocks[luik_keuken]['protected'] = false;

// Luiken - Hobby Waterzijde
blocks[luik_hobby_waterzijde] = {}
blocks[luik_hobby_waterzijde]['width'] = 6;
blocks[luik_hobby_waterzijde]['title'] = 'Hobby W'
blocks[luik_hobby_waterzijde]['protected'] = false;

// Luiken - Hobby Kop
blocks[luik_hobby_kop] = {}
blocks[luik_hobby_kop]['width'] = 6;
blocks[luik_hobby_kop]['title'] = 'Hobby K'
blocks[luik_hobby_kop]['protected'] = false;

// --------------------------------------------------------------------------------------------
// Datum / Tijd / Weer (inclusief sensors)
// --------------------------------------------------------------------------------------------

// Title Datum & Tijd
blocks[title_datum_tijd] = {}
blocks[title_datum_tijd]['type'] = 'blocktitle'
blocks[title_datum_tijd]['title'] = 'Datum & Tijd'

// Title Weer
blocks[title_weer] = {}
blocks[title_weer]['type'] = 'blocktitle'
blocks[title_weer]['title'] = 'Weer'

// Title Klimaatsensors
blocks[title_klimaatsensors] = {}
blocks[title_klimaatsensors]['type'] = 'blocktitle'
blocks[title_klimaatsensors]['title'] = 'Klimaatsensors'
blocks[title_klimaatsensors]['image'] = 'climate.png'

//// Open Weather Maps actueel weer
//blocks['currentweather_big_owm'] = {}
//blocks['currentweather_big_owm']['width'] = 8;

// Open Weather Maps 5 daagse voorspelling
blocks['weather_owm'] = {}
blocks['weather_owm']['width'] = 12;

// regensensor
blocks[regen] = {}
blocks[regen]['width'] = 12;
blocks[regen]['popup'] = 'popup_regen';
blocks[regen]['show_lastupdate'] = true;

// Popup graph regensensor

blocks['popup_regen'] = {
title: 'Regen',
devices: [111],
debugButton: true,
toolTipStyle: true,
graph: 'line',
zoom: 'xy',
legend: {
'mm_111' : 'Neerslag'
}
}

// Grafiek regen
blocks[grafiek_regen] = {}
blocks[grafiek_regen]['devices'] = [111];
blocks[grafiek_regen]['graphtypes'] = ['mm'];
blocks[grafiek_regen]['width'] = 4;
blocks[grafiek_regen]['height'] = '400px';
blocks[grafiek_regen]['legend'] = {'mm_111': 'Totaal'}
blocks[grafiek_regen]['zoom'] = 'xy';
blocks[grafiek_regen]['show_lastupdate'] = true;
blocks[grafiek_regen]['toolTipStyle'] = true;
blocks[grafiek_regen]['buttonsSize'] = 12;

// tuinvilla buiten temperatuur en vochtigheid
blocks[tuinvilla_buiten] = {}
blocks[tuinvilla_buiten]['width'] = 6;
blocks[tuinvilla_buiten]['popup'] = 'popup_tuinvilla_buiten';
blocks[tuinvilla_buiten]['show_lastupdate'] = true;
//blocks[tuinvilla_buiten]['protected'] = true;

// Grafiek tuinvilla buiten
blocks[grafiek_tuinvilla_buiten] = {}
blocks[grafiek_tuinvilla_buiten]['devices'] = [89];
blocks[grafiek_tuinvilla_buiten]['width'] = 4;
blocks[grafiek_tuinvilla_buiten]['graphTypes'] = ['hu', 'te'];
blocks[grafiek_tuinvilla_buiten]['legend'] = {'te_89': '℃', 'hu_89': '%'}
blocks[grafiek_tuinvilla_buiten]['zoom'] = 'xy';
blocks[grafiek_tuinvilla_buiten]['show_lastupdate'] = true;
blocks[grafiek_tuinvilla_buiten]['toolTipStyle'] = true;
blocks[grafiek_tuinvilla_buiten]['buttonsSize'] = 12;

// tuinvilla temperatuur en vochtigheid
blocks[tuinvilla] = {}
blocks[tuinvilla]['width'] = 6;
blocks[tuinvilla]['popup'] = 'popup_tuinvilla';
blocks[tuinvilla]['show_lastupdate'] = true;
//blocks[tuinvilla]['protected'] = true;

// Grafiek tuinvilla
blocks[grafiek_tuinvilla] = {}
blocks[grafiek_tuinvilla]['devices'] = [91];
blocks[grafiek_tuinvilla]['width'] = 4;
blocks[grafiek_tuinvilla]['graphTypes'] = ['hu', 'te'];
blocks[grafiek_tuinvilla]['legend'] = {'te_91': '℃', 'hu_91': '%'}
blocks[grafiek_tuinvilla]['zoom'] = 'xy';
blocks[grafiek_tuinvilla]['show_lastupdate'] = true;
blocks[grafiek_tuinvilla]['toolTipStyle'] = true;
blocks[grafiek_tuinvilla]['buttonsSize'] = 12;

// schuur temperatuur en vochtigheid
blocks[schuur] = {}
blocks[schuur]['width'] = 6;
blocks[schuur]['popup'] = 'popup_schuur';
blocks[schuur]['show_lastupdate'] = true;

// Grafiek schuur
blocks[grafiek_schuur] = {}
blocks[grafiek_schuur]['devices'] = [90];
blocks[grafiek_schuur]['width'] = 4;
blocks[grafiek_schuur]['graphTypes'] = ['hu', 'te'];
blocks[grafiek_schuur]['legend'] = {'te_90': '℃', 'hu_90': '%'}
blocks[grafiek_schuur]['zoom'] = 'xy';
blocks[grafiek_schuur]['show_lastupdate'] = true;
blocks[grafiek_schuur]['toolTipStyle'] = true;
blocks[grafiek_schuur]['buttonsSize'] = 12;

// kelder achter temperatuur en vochtigheid
blocks[kelder_achter] = {}
blocks[kelder_achter]['width'] = 6;
blocks[kelder_achter]['popup'] = 'popup_ka';
blocks[kelder_achter]['show_lastupdate'] = true;

// Grafiek kelder achter
blocks[grafiek_kelder_achter] = {}
blocks[grafiek_kelder_achter]['devices'] = [92];
blocks[grafiek_kelder_achter]['width'] = 4;
blocks[grafiek_kelder_achter]['graphTypes'] = ['hu', 'te'];
blocks[grafiek_kelder_achter]['legend'] = {'te_92': '℃', 'hu_92': '%'}
blocks[grafiek_kelder_achter]['zoom'] = 'xy';
blocks[grafiek_kelder_achter]['show_lastupdate'] = true;
blocks[grafiek_kelder_achter]['toolTipStyle'] = true;
blocks[grafiek_kelder_achter]['buttonsSize'] = 12;

// Multigraphs voor buitensensoren

blocks['multigraph_temp_buiten'] = {}
blocks['multigraph_temp_buiten']['title'] = 'Temperatuur Buiten';
blocks['multigraph_temp_buiten']['width'] = 4;
blocks['multigraph_temp_buiten']['height'] = '400px';
blocks['multigraph_temp_buiten']['devices'] = [ 89, 91, 90, 92];
blocks['multigraph_temp_buiten']['sortDevices'] = true;
blocks['multigraph_temp_buiten']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'orange'];
blocks['multigraph_temp_buiten']['spanGaps'] = true;
blocks['multigraph_temp_buiten']['graphTypes'] = [ 'te'];
blocks['multigraph_temp_buiten']['graph'] = 'line';
blocks['multigraph_temp_buiten']['toolTipStyle'] = true;
blocks['multigraph_temp_buiten']['legend'] = {'te_89': '℃ TB', 'te_91': '℃ T', 'te_90': '℃ S', 'te_92': '℃ KA'}
blocks['multigraph_temp_buiten']['zoom'] = 'xy';

blocks['multigraph_hum_buiten'] = {}
blocks['multigraph_hum_buiten']['title'] = 'Vochtigheid Buiten';
blocks['multigraph_hum_buiten']['width'] = 4;
blocks['multigraph_hum_buiten']['height'] = '400px';
blocks['multigraph_hum_buiten']['devices'] = [ 89, 91, 90, 92];
blocks['multigraph_hum_buiten']['sortDevices'] = true;
blocks['multigraph_hum_buiten']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'orange'];
blocks['multigraph_hum_buiten']['spanGaps'] = true;
blocks['multigraph_hum_buiten']['graphTypes'] = [ 'hu'];
blocks['multigraph_hum_buiten']['graph'] = 'line';
blocks['multigraph_hum_buiten']['toolTipStyle'] = true;
blocks['multigraph_hum_buiten']['legend'] = {'hu_89': '% TB', 'hu_91': '% T', 'hu_90': '% S', 'hu_92': '% KA'}
blocks['multigraph_hum_buiten']['zoom'] = 'xy';


// Popup graphs voor KaKu sensors

blocks['popup_tuinvilla_buiten'] = {
title: 'Tuinvilla Buiten',
devices: [89],
debugButton: true,
toolTipStyle: true,
datasetColors: ['green', 'yellow', 'blue', 'red'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_89': 'Min.',
'ta_89': 'Gem.',
'te_89': 'Max.',
'hu_89': '%'
}
}

blocks['popup_tuinvilla'] = {
title: 'Tuinvilla',
devices: [91],
debugButton: true,
toolTipStyle: true,
datasetColors: ['green', 'yellow', 'blue', 'red'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_91': 'Min.',
'ta_91': 'Gem.',
'te_91': 'Max.',
'hu_91': '%'
}
}

blocks['popup_schuur'] = {
title: 'Schuur',
devices: [90],
debugButton: true,
toolTipStyle: true,
datasetColors: ['green', 'yellow', 'blue', 'red'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_90': 'Min.',
'ta_90': 'Gem.',
'te_90': 'Max.',
'hu_90': '%'
}
}

blocks['popup_ka'] = {
title: 'Kelder achter',
devices: [92],
debugButton: true,
toolTipStyle: true,
datasetColors: ['green', 'yellow', 'blue', 'red'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_92': 'Min.',
'ta_92': 'Gem.',
'te_92': 'Max.',
'hu_92': '%'
}
}

// Binnenklimaat

// Temperatuur
blocks[temp_woonkamer] = {}
blocks[temp_woonkamer]['width'] = 2;
blocks[temp_woonkamer]['popup'] = 'popup_temp_woonkamer'
blocks[temp_woonkamer]['show_lastupdate'] = true;

blocks[temp_kelder_achter] = {}
blocks[temp_kelder_achter]['width'] = 2;
blocks[temp_kelder_achter]['popup'] = 'popup_temp_kelder_achter'
blocks[temp_kelder_achter]['show_lastupdate'] = true;

blocks[temp_badkamer] = {}
blocks[temp_badkamer]['width'] = 2;
blocks[temp_badkamer]['popup'] = 'popup_temp_badkamer'
blocks[temp_badkamer]['show_lastupdate'] = true;

blocks[temp_slaapkamer] = {}
blocks[temp_slaapkamer]['width'] = 2;
blocks[temp_slaapkamer]['popup'] = 'popup_temp_slaapkamer'
blocks[temp_slaapkamer]['show_lastupdate'] = true;

blocks[temp_voorraad] = {}
blocks[temp_voorraad]['width'] = 2;
blocks[temp_voorraad]['popup'] = 'popup_temp_voorraad'
blocks[temp_voorraad]['show_lastupdate'] = true;

//Popuup Graphs voor temperatuur
blocks['popup_temp_woonkamer'] = {
title: 'Woonkamer ℃',
devices: [145],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_145' : 'Min',
'ta_145' : 'Gem.',
'te_145' : 'Max'

}
}

blocks['popup_temp_slaapkamer'] = {
title: 'Slaapkamer ℃',
devices: [158],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_158' : 'Min',
'ta_158' : 'Gem.',
'te_158' : 'Max'

}
}

blocks['popup_temp_badkamer'] = {
title: 'Badkamer ℃',
devices: [152],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_152' : 'Min',
'ta_152' : 'Gem.',
'te_152' : 'Max'

}
}

blocks['popup_temp_kelder_achter'] = {
title: 'Kelder ℃',
devices: [144],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_144' : 'Min',
'ta_144' : 'Gem.',
'te_144' : 'Max'

}
}

blocks['popup_temp_voorraad'] = {
title: 'Voorraadkast ℃',
devices: [214],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_214' : 'Min',
'ta_214' : 'Gem.',
'te_214' : 'Max'

}
}


// Luchtvochtigheid
blocks[hum_woonkamer] = {}
blocks[hum_woonkamer]['width'] = 2;
blocks[hum_woonkamer]['popup'] = 'popup_hum_woonkamer'
blocks[hum_woonkamer]['show_lastupdate'] = true;

blocks[hum_kelder_achter] = {}
blocks[hum_kelder_achter]['width'] = 2;
blocks[hum_kelder_achter]['popup'] = 'popup_hum_kelder_achter'
blocks[hum_kelder_achter]['show_lastupdate'] = true;

blocks[hum_badkamer] = {}
blocks[hum_badkamer]['width'] = 2;
blocks[hum_badkamer]['popup'] = 'popup_hum_badkamer'
blocks[hum_badkamer]['show_lastupdate'] = true;

blocks[hum_slaapkamer] = {}
blocks[hum_slaapkamer]['width'] = 2;
blocks[hum_slaapkamer]['popup'] = 'popup_hum_slaapkamer'
blocks[hum_slaapkamer]['show_lastupdate'] = true;

blocks[hum_voorraad] = {}
blocks[hum_voorraad]['width'] = 2;
blocks[hum_voorraad]['popup'] = 'popup_hum_voorraad'
blocks[hum_voorraad]['show_lastupdate'] = true;

// Popup Graphs voor luchtvochtigheid
blocks['popup_hum_woonkamer'] = {
title: 'Woonkamer %',
devices: [146],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red'],
graph: 'line',
zoom: 'xy',
legend: {
'hu_146' : '%'
}
}

blocks['popup_hum_slaapkamer'] = {
title: 'Slaapkamer %',
devices: [159],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red'],
graph: 'line',
zoom: 'xy',
legend: {
'hu_159' : '%'
}
}

blocks['popup_hum_badkamer'] = {
title: 'badkamer %',
devices: [153],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red'],
graph: 'line',
zoom: 'xy',
legend: {
'hu_153' : '%'
}
}

blocks['popup_hum_voorraad'] = {
title: 'Voorraadkast %',
devices: [215],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red'],
graph: 'line',
zoom: 'xy',
legend: {
'hu_215' : '%'
}
}

// Druk
blocks[druk_woonkamer] = {}
blocks[druk_woonkamer]['width'] = 4;
blocks[druk_woonkamer]['show_lastupdate'] = true;

blocks[druk_kelder_achter] = {}
blocks[druk_kelder_achter]['width'] = 4;
blocks[druk_kelder_achter]['show_lastupdate'] = true;

blocks[druk_badkamer] = {}
blocks[druk_badkamer]['width'] = 4;
blocks[druk_badkamer]['show_lastupdate'] = true;

blocks[druk_slaapkamer] = {}
blocks[druk_slaapkamer]['width'] = 4;
blocks[druk_slaapkamer]['show_lastupdate'] = true;

// Title Vochtsensors
blocks[title_sensoren_per_ruimte] = {}
blocks[title_sensoren_per_ruimte]['type'] = 'blocktitle'
blocks[title_sensoren_per_ruimte]['title'] = 'Sensoren per ruimte'
blocks[title_sensoren_per_ruimte]['image'] = 'sensors.png'

// Multigraphs voor binnensensoren

blocks['multigraph_144'] = {}
blocks['multigraph_144']['title'] = 'Temperatuur Binnen';
blocks['multigraph_144']['width'] = 6;
blocks['multigraph_144']['height'] = '400px';
blocks['multigraph_144']['devices'] = [ 144, 145, 152, 158, 214];
blocks['multigraph_144']['sortDevices'] = true;
blocks['multigraph_144']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'orange', 'red', 'aqua', 'blueviolet', 'blue', 'pink', 'greenyellow', 'green', 'lightgreen', 'seashell'];
blocks['multigraph_144']['spanGaps'] = true;
blocks['multigraph_144']['graphTypes'] = [ 'te'];
blocks['multigraph_144']['graph'] = 'line';
blocks['multigraph_144']['toolTipStyle'] = true;
blocks['multigraph_144']['legend'] = {'te_145': '℃ W', 'te_158': '℃ S', 'te_152': '℃ B', 'te_144': '℃ K', 'te_214': '℃ V'}
blocks['multigraph_144']['zoom'] = 'xy';

blocks['multigraph_146'] = {}
blocks['multigraph_146']['title'] = 'Vochtigheid Binnen';
blocks['multigraph_146']['width'] = 6;
blocks['multigraph_146']['height'] = '400px';
blocks['multigraph_146']['devices'] = [ 148, 146, 153, 159, 215];
blocks['multigraph_146']['sortDevices'] = true;
blocks['multigraph_146']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'orange'];
blocks['multigraph_146']['spanGaps'] = true;
blocks['multigraph_146']['graphTypes'] = [ 'hu'];
blocks['multigraph_146']['graph'] = 'line';
blocks['multigraph_146']['toolTipStyle'] = true;
blocks['multigraph_146']['legend'] = {'hu_146': '% W', 'hu_159': '% S', 'hu_153': '% B', 'hu_148': '% K', 'hu_215': '% V'}
blocks['multigraph_146']['zoom'] = 'xy';

blocks['multigraph_147'] = {}
blocks['multigraph_147']['title'] = 'Luchtdruk Binnen';
blocks['multigraph_147']['width'] = 6;
blocks['multigraph_147']['height'] = '400px';
blocks['multigraph_147']['devices'] = [ 147, 149, 154, 160];
blocks['multigraph_147']['sortDevices'] = true;
blocks['multigraph_147']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'green', 'brown', 'yellow'];
blocks['multigraph_147']['spanGaps'] = true;
blocks['multigraph_147']['graphTypes'] = [ 'ba'];
blocks['multigraph_147']['graph'] = 'line';
blocks['multigraph_147']['toolTipStyle'] = true;
blocks['multigraph_147']['legend'] = {'ba_149': 'hPa W', 'ba_160': 'hPa S', 'ba_154': 'hPa B', 'ba_147': 'hPa K'}
blocks['multigraph_147']['zoom'] = 'xy';

blocks['sensor_woonkamer'] = {}
blocks['sensor_woonkamer']['title'] = 'Woonkamer';
blocks['sensor_woonkamer']['width'] = 6;
blocks['sensor_woonkamer']['height'] = '400px';
blocks['sensor_woonkamer']['devices'] = [ 145, 146, 149];
blocks['sensor_woonkamer']['sortDevices'] = true;
blocks['sensor_woonkamer']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'red', 'aqua', 'blueviolet', 'blue', 'pink', 'greenyellow', 'green', 'lightgreen', 'seashell'];
blocks['sensor_woonkamer']['spanGaps'] = true;
blocks['sensor_woonkamer']['graphTypes'] = [ 'te', 'hu', 'ba'];
blocks['sensor_woonkamer']['graph'] = 'line';
blocks['sensor_woonkamer']['toolTipStyle'] = true;
blocks['sensor_woonkamer']['legend'] = {'te_145': '℃', 'hu_146': '%', 'ba_149': 'hPa'}
blocks['sensor_woonkamer']['zoom'] = 'xy';

blocks['sensor_slaapkamer'] = {}
blocks['sensor_slaapkamer']['title'] = 'Slaapkamer';
blocks['sensor_slaapkamer']['width'] = 6;
blocks['sensor_slaapkamer']['height'] = '400px';
blocks['sensor_slaapkamer']['devices'] = [ 158, 159, 160];
blocks['sensor_slaapkamer']['sortDevices'] = true;
blocks['sensor_slaapkamer']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'red', 'aqua', 'blueviolet', 'blue', 'pink', 'greenyellow', 'green', 'lightgreen', 'seashell'];
blocks['sensor_slaapkamer']['spanGaps'] = true;
blocks['sensor_slaapkamer']['graphTypes'] = [ 'te', 'hu', 'ba'];
blocks['sensor_slaapkamer']['graph'] = 'line';
blocks['sensor_slaapkamer']['toolTipStyle'] = true;
blocks['sensor_slaapkamer']['legend'] = {'te_158': '℃', 'hu_159': '%', 'ba_160': 'hPa'}
blocks['sensor_slaapkamer']['zoom'] = 'xy';

blocks['sensor_badkamer'] = {}
blocks['sensor_badkamer']['title'] = 'badkamer';
blocks['sensor_badkamer']['width'] = 6;
blocks['sensor_badkamer']['height'] = '400px';
blocks['sensor_badkamer']['devices'] = [ 152, 153, 154];
blocks['sensor_badkamer']['sortDevices'] = true;
blocks['sensor_badkamer']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'red', 'aqua', 'blueviolet', 'blue', 'pink', 'greenyellow', 'green', 'lightgreen', 'seashell'];
blocks['sensor_badkamer']['spanGaps'] = true;
blocks['sensor_badkamer']['graphTypes'] = [ 'te', 'hu', 'ba'];
blocks['sensor_badkamer']['graph'] = 'line';
blocks['sensor_badkamer']['toolTipStyle'] = true;
blocks['sensor_badkamer']['legend'] = {'te_152': '℃', 'hu_153': '%', 'ba_154': 'hPa'}
blocks['sensor_badkamer']['zoom'] = 'xy';

blocks['sensor_kelder_achter'] = {}
blocks['sensor_kelder_achter']['title'] = 'Kelder achter';
blocks['sensor_kelder_achter']['width'] = 6;
blocks['sensor_kelder_achter']['height'] = '400px';
blocks['sensor_kelder_achter']['devices'] = [ 144, 148, 147];
blocks['sensor_kelder_achter']['sortDevices'] = true;
blocks['sensor_kelder_achter']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'red', 'aqua', 'blueviolet', 'blue', 'pink', 'greenyellow', 'green', 'lightgreen', 'seashell'];
blocks['sensor_kelder_achter']['spanGaps'] = true;
blocks['sensor_kelder_achter']['graphTypes'] = [ 'te', 'hu', 'ba'];
blocks['sensor_kelder_achter']['graph'] = 'line';
blocks['sensor_kelder_achter']['toolTipStyle'] = true;
blocks['sensor_kelder_achter']['legend'] = {'te_144': '℃', 'hu_148': '%', 'ba_147': 'hPa'}
blocks['sensor_kelder_achter']['zoom'] = 'xy';

blocks['sensor_voorraad'] = {}
blocks['sensor_voorraad']['title'] = 'Voorraadkast';
blocks['sensor_voorraad']['width'] = 6;
blocks['sensor_voorraad']['height'] = '400px';
blocks['sensor_voorraad']['devices'] = [ 214, 215];
blocks['sensor_voorraad']['sortDevices'] = true;
blocks['sensor_voorraad']['datasetColors'] = ['red', 'yellow', 'blue', 'green', 'red', 'aqua', 'blueviolet', 'blue', 'pink', 'greenyellow', 'green', 'lightgreen', 'seashell'];
blocks['sensor_voorraad']['spanGaps'] = true;
blocks['sensor_voorraad']['graphTypes'] = [ 'te', 'hu'];
blocks['sensor_voorraad']['graph'] = 'line';
blocks['sensor_voorraad']['toolTipStyle'] = true;
blocks['sensor_voorraad']['legend'] = {'te_214': '℃', 'hu_215': '%'}
blocks['sensor_voorraad']['zoom'] = 'xy';



// --------------------------------------------------------------------------------------------
// Deurbel
// --------------------------------------------------------------------------------------------

// Title Deurbel
blocks[title_deurbel] = {}
blocks[title_deurbel]['type'] = 'blocktitle'
blocks[title_deurbel]['title'] = 'Deurbel'
blocks[title_deurbel]['show_lastupdate'] = true;
blocks[title_deurbel]['width'] = 12;

blocks[deurbel] = {}
blocks[deurbel]['width'] = 12;

// --------------------------------------------------------------------------------------------
// Systeeminformatie
// --------------------------------------------------------------------------------------------

blocks[title_domoticz] = {}
blocks[title_domoticz]['type'] = 'blocktitle'
blocks[title_domoticz]['image'] = 'domoticz.png'
blocks[title_domoticz]['title'] = 'Domoticz'
blocks[title_domoticz]['width'] = 12;

blocks[uptime] = {}
//blocks[uptime]['title'] = 'Uptime'
blocks[uptime]['image'] = 'uptime.png'
//blocks[uptime]['switch'] = true;
blocks[uptime]['width'] = 6;

blocks[title_settings] = {}
blocks[title_settings]['type'] = 'blocktitle'
blocks[title_settings]['image'] = ''
blocks[title_settings]['title'] = 'Settings'
blocks[title_settings]['width'] = 12;

blocks['settings'] = {}
blocks['settings']['width'] = 12;

blocks[title_raspberry] = {}
blocks[title_raspberry]['type'] = 'blocktitle'
blocks[title_raspberry]['image'] = 'rpi_128.png'
blocks[title_raspberry]['title'] = 'RPi & Domoticz'
blocks[title_raspberry]['width'] = 12;

blocks[rpi_cpu_load] = {}
blocks[rpi_cpu_load]['image'] = 'cpu2.png'
blocks[rpi_cpu_load]['popup'] = 'popup_rpi_cpu_load'
blocks[rpi_cpu_load]['width'] = 6;

blocks[rpi_temp] = {}
blocks[rpi_temp]['image'] = 'cpu_temp.png'
blocks[rpi_temp]['popup'] = 'popup_rpi_temp'
blocks[rpi_temp]['width'] = 6;

blocks[rpi_mem_usage] ={}
blocks[rpi_mem_usage]['image'] = 'ram2.png'
blocks[rpi_mem_usage]['popup'] = 'popup_rpi_mem'
blocks[rpi_mem_usage]['width'] = 6;

//popup Graphs voor RPi

blocks['popup_rpi_cpu_load'] = {
title: 'RPi CPU',
devices: [125],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'v_min_125' : 'Min',
'v_avg_125' : 'Gem.',
'v_max_125' : 'Max'

}
}

blocks['popup_rpi_temp'] = {
title: 'RPi Temp',
devices: [126],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'tm_126' : 'Min',
'ta_126' : 'Gem.',
'te_126' : 'max'

}
}

blocks['popup_rpi_mem'] = {
title: 'RPi Mem',
devices: [127],
debugButton: true,
toolTipStyle: true,
datasetColors: ['red', 'yellow', 'blue'],
graph: 'line',
zoom: 'xy',
legend: {
'v_min_127' : 'Min',
'v_avg_127' : 'Gem.',
'v_max_127' : 'Max'

}
}

// --------------------------------------------------------------------------------------------
// Dummyblocks
// --------------------------------------------------------------------------------------------

//blocks[dummy9] = {}
//blocks[dummy9]['type'] = 'blocktitle'
//blocks[dummy9]['title'] = ''
//blocks[dummy9]['width'] = 9;

// --------------------------------------------------------------------------------------------
// Columns
// --------------------------------------------------------------------------------------------
var columns = {}

// Aangepaste invulling voor de titelbalk

columns['bar'] = {}
columns['bar']['blocks'] = ['logo','miniclock','sunrise']

// Screen 1 voor desktop
columns[1] = {}
columns[1]['blocks'] = [title_lampen, simon_levelt, wandbord, cd_rek, theaterspot, title_dimmers, eettafel, plafondspot_tv, plafondspot_haard, title_luikensets, luiken_tuin_open, luiken_tuin_dicht, luiken_water_open, luiken_water_dicht, luiken_hobby_open, luiken_hobby_dicht, lampen_2200, alle_lampen_uit, title_luiken, luik_secretaire, luik_eettafel, luik_tuinraam, luik_tuindeur, luik_kop_tuin, luik_haard, luik_dressoir, luik_keuken, luik_hobby_waterzijde, luik_hobby_kop]
columns[1]['width'] = 4;

columns[2] = {}
columns[2]['blocks'] = [title_gas_en_elektra, grafiek_elektra, elektra, grafiek_gas, gas]
columns[2]['width'] = 5;

columns[3] = {}
columns[3]['blocks'] = [title_raspberry, rpi_cpu_load, rpi_temp, rpi_mem_usage, uptime, title_klimaatsensors, regen, tuinvilla_buiten, tuinvilla, schuur, kelder_achter, title_deurbel, deurbel, title_settings, 'settings']
columns[3]['width'] = 3;

// Screen 2 voor desktop
columns[4] = {}
columns[4]['blocks'] = [title_alle_schakelaars, simon_levelt, wandbord, cd_rek, theaterspot, secretaire, buffetkast, dressoir, ventilator1_lamp, traplicht, title_dimmers, eettafel, plafondspot_tv, plafondspot_haard, mondriaan_tv, mondriaan_dressoir, title_hobby_verlichting, hobby_hem, hobby_haar, hobby_algemeen, title_ventilatoren, title_ventilator1, ventilator1_stand_0, ventilator1_stand_1, ventilator1_stand_2, ventilator1_stand_3, title_ventilator2, ventilator2_stand_0, ventilator2_stand_1, ventilator2_stand_2, ventilator2_stand_3]
columns[4]['width'] = 12;

// Screen 3 voor desktop, screen 4 voor phone
columns[5] = {}
columns[5]['blocks'] = [title_rookmelders, rookmelder_gang, rookmelder_woonkamer, rookmelder_slaapkamer, rookmelder_kelder, title_vochtsensors, vochtsensor_ontvochtiger, vochtsensor_cv_ketel, vochtsensor_waterontharder, vochtsensor_wasmachine]
columns[5]['width'] = 12;

// Screen 4 voor desktop, screen 6 voor tablet
columns[6] = {}
//columns[6]['blocks'] = [title_weer, 'currentweather_big_owm', 'weather_owm', grafiek_regen, grafiek_tuinvilla_buiten, grafiek_tuinvilla, grafiek_schuur, grafiek_kelder_achter]
columns[6]['blocks'] = [title_weer, 'currentweather_big_owm', 'weather_owm', tuinvilla_buiten, tuinvilla, schuur, kelder_achter, grafiek_regen, 'multigraph_temp_buiten', 'multigraph_hum_buiten']
columns[6]['width'] = 12;

// Screen 5 voor desktop
columns[22] = {}
columns[22]['blocks'] = [ title_sensoren, temp_woonkamer, hum_woonkamer, temp_slaapkamer, hum_slaapkamer, temp_badkamer, hum_badkamer, temp_kelder_achter, hum_kelder_achter, temp_voorraad, hum_voorraad, 'multigraph_144', 'multigraph_146', 'multigraph_147']
columns[22]['width'] = 12;

// Screen 6 voor Desktop
columns[23] = {}
columns[23]['blocks'] = [ title_sensoren_per_ruimte, temp_woonkamer, hum_woonkamer, temp_slaapkamer, hum_slaapkamer, temp_badkamer, hum_badkamer, temp_kelder_achter, hum_kelder_achter, temp_voorraad, hum_voorraad, 'sensor_woonkamer', 'sensor_slaapkamer', 'sensor_badkamer', 'sensor_kelder_achter', 'sensor_voorraad']
columns[23]['widt'] = 6;

// Screen 1 voor tablet
columns[7] = {}
columns[7]['blocks'] = [title_lampen, simon_levelt, wandbord, cd_rek, theaterspot, title_dimmers, eettafel, plafondspot_tv, plafondspot_haard, title_luikensets, luiken_tuin_open, luiken_tuin_dicht, luiken_water_open, luiken_water_dicht, luiken_hobby_open, luiken_hobby_dicht, lampen_2200, alle_lampen_uit, title_deurbel, deurbel]
columns[7]['width'] = 6;

columns[8] = {}
columns[8]['blocks'] = [title_klimaatsensors, regen, tuinvilla_buiten, tuinvilla, schuur, kelder_achter, title_raspberry, rpi_cpu_load, rpi_temp, rpi_mem_usage, uptime]
columns[8]['width'] = 6;

// Screen 2 voor tablet, screen 2 voor phone
columns[9] = {}
columns[9]['blocks'] = [title_alle_schakelaars, simon_levelt, wandbord, cd_rek, theaterspot, secretaire, buffetkast, dressoir, ventilator1_lamp, traplicht, title_dimmers, eettafel, plafondspot_tv, plafondspot_haard, mondriaan_tv, mondriaan_dressoir]
columns[9]['width'] = 12;

// Screen 3 voor tablet
columns[10] = {}
columns[10]['blocks'] = [title_luiken, luik_secretaire, luik_eettafel, luik_tuinraam, luik_tuindeur, luik_kop_tuin, luik_haard, luik_dressoir, luik_keuken, luik_hobby_waterzijde, luik_hobby_kop]
columns[10]['width'] = 10;

columns[11] = {}
columns[11]['blocks'] = [title_vochtsensors, vochtsensor_ontvochtiger, vochtsensor_cv_ketel, vochtsensor_waterontharder, vochtsensor_wasmachine, title_rookmelders, rookmelder_gang, rookmelder_woonkamer, rookmelder_slaapkamer]
columns[11]['width'] = 2;

// Screen 4 voor tablet
columns[12] = {}
columns[12]['blocks'] = [title_hobby_verlichting, hobby_hem, hobby_haar, hobby_algemeen, title_ventilatoren, title_ventilator1, ventilator1_stand_0, ventilator1_stand_1, ventilator1_stand_2, ventilator1_stand_3, title_ventilator2, ventilator2_stand_0, ventilator2_stand_1, ventilator2_stand_2, ventilator2_stand_3]
columns[12]['width'] = 12;

// Screen 5 voor tablet
columns[13] = {}
columns[13]['blocks'] = [title_gas_en_elektra, grafiek_elektra, elektra_nu, elektra_vandaag, elektra_totaal, grafiek_gas, gas]
columns[13]['width'] = 12;

// Screen 1 voor phone
columns[14] = {}
columns[14]['blocks'] = [title_lampen, simon_levelt, wandbord, cd_rek, theaterspot, title_dimmers, eettafel, plafondspot_tv, plafondspot_haard, title_luikensets, luiken_tuin_open, luiken_tuin_dicht, luiken_water_open, luiken_water_dicht, luiken_hobby_open, luiken_hobby_dicht, lampen_2200, alle_lampen_uit, title_deurbel, deurbel]
columns[14]['width'] = 12;

// Screen 3 voor phone
columns[15] = {}
columns[15]['blocks'] = [title_luiken, luik_secretaire, luik_eettafel, luik_tuinraam, luik_tuindeur, luik_kop_tuin, luik_haard, luik_dressoir, luik_keuken, luik_hobby_waterzijde, luik_hobby_kop]
columns[15]['width'] = 12;

// Screen 5 voor phone
columns[16] = {}
columns[16]['blocks'] = [title_elektra, grafiek_elektra, elektra_nu, elektra_vandaag, elektra_totaal]
columns[16]['width'] = 12;

// Screen 6 voor phone
columns[17] = {}
columns[17]['blocks'] = [title_gas, grafiek_gas, gas]
columns[17]['width'] = 12;

// --------------------------------------------------------------------------------------------
// Screens
// --------------------------------------------------------------------------------------------
var screens = {}

// Desktop

screens[max_resolution_desktop] = {}
screens[max_resolution_desktop]['maxwidth'] = 3840;
screens[max_resolution_desktop]['maxheight'] = 2160;

screens[max_resolution_desktop][1] = {}
screens[max_resolution_desktop][1]['background'] = 'bg9.jpg';
screens[max_resolution_desktop][1]['columns'] = [1,2,3]

screens[max_resolution_desktop][2] = {}
screens[max_resolution_desktop][2]['background'] = 'bg9.jpg';
screens[max_resolution_desktop][2]['columns'] = [4]

screens[max_resolution_desktop][3] = {}
screens[max_resolution_desktop][3]['background'] = 'bg9.jpg';
screens[max_resolution_desktop][3]['columns'] = [5]

screens[max_resolution_desktop][4] = {}
screens[max_resolution_desktop][4]['background'] = 'bg9.jpg';
screens[max_resolution_desktop][4]['columns'] = [6]

screens[max_resolution_desktop][5] = {}
screens[max_resolution_desktop][5]['background'] = 'bg9.jpg';
screens[max_resolution_desktop][5]['columns'] = [22]

screens[max_resolution_desktop][6] = {}
screens[max_resolution_desktop][6]['background'] = 'bg9.jpg';
screens[max_resolution_desktop][6]['columns'] = [23]

// Tablet

screens[max_resolution_tablet] = {}
screens[max_resolution_tablet]['maxwidth'] = 1280;
screens[max_resolution_tablet]['maxheight'] = 800;

screens[max_resolution_tablet][1] = {}
screens[max_resolution_tablet][1]['background'] = 'bg9.jpg';
screens[max_resolution_tablet][1]['columns'] = [7,8]

screens[max_resolution_tablet][2] = {}
screens[max_resolution_tablet][2]['background'] = 'bg9.jpg';
screens[max_resolution_tablet][2]['columns'] = [9]

screens[max_resolution_tablet][3] = {}
screens[max_resolution_tablet][3]['background'] = 'bg9.jpg';
screens[max_resolution_tablet][3]['columns'] = [10,11]

screens[max_resolution_tablet][4] = {}
screens[max_resolution_tablet][4]['background'] = 'bg9.jpg';
screens[max_resolution_tablet][4]['columns'] = [12]

screens[max_resolution_tablet][5] = {}
screens[max_resolution_tablet][5]['background'] = 'bg9.jpg';
screens[max_resolution_tablet][5]['columns'] = [13]

screens[max_resolution_tablet][6] = {}
screens[max_resolution_tablet][6]['background'] = 'bg9.jpg';
screens[max_resolution_tablet][6]['columns'] = [6]

screens[max_resolution_tablet][7] = {}
screens[max_resolution_tablet][7]['background'] = 'bg9.jpg';
screens[max_resolution_tablet][7]['columns'] = [18,19,20,21]

// Phone

screens[max_resolution_phone] = {}
screens[max_resolution_phone]['maxwidth'] = 720;
screens[max_resolution_phone]['maxheight'] = 1520;

screens[max_resolution_phone][1] = {}
screens[max_resolution_phone][1]['background'] = 'bg9.jpg';
screens[max_resolution_phone][1]['columns'] = [14]

screens[max_resolution_phone][2] = {}
screens[max_resolution_phone][2]['background'] = 'bg9.jpg';
screens[max_resolution_phone][2]['columns'] = [9]

screens[max_resolution_phone][3] = {}
screens[max_resolution_phone][3]['background'] = 'bg9.jpg';
screens[max_resolution_phone][3]['columns'] = [15]

screens[max_resolution_phone][4] = {}
screens[max_resolution_phone][4]['background'] = 'bg9.jpg';
screens[max_resolution_phone][4]['columns'] = [5]

screens[max_resolution_phone][5] = {}
screens[max_resolution_phone][5]['background'] = 'bg9.jpg';
screens[max_resolution_phone][5]['columns'] = [16]

screens[max_resolution_phone][6] = {}
screens[max_resolution_phone][6]['background'] = 'bg9.jpg';
screens[max_resolution_phone][6]['columns'] = [17]
ConBee II - TRÅDFRI lights + switches, loads of ChingLing dimmers and switches, Heiman and Xiaomi sensors
SolarEdge SE4000H (with active modbus_tcp)
YouLess Energy meter
Shelly 2.5 in roller shutter mode
User avatar
Sjonnie2017
Posts: 365
Joined: Wednesday 02 August 2017 19:43
Target OS: Linux
Domoticz version: Latest ß
Location: The Netherlands
Contact:

Re: Dashticz v3.7.6 beta

Post by Sjonnie2017 »

And since the maximum amount of characters was exceeded in my previous post I have to include my custom.css and custom.js seperately:

Custom.css:
Spoiler: show
/*
CUSTOM CSS FILE
*/

/*
Suppress unwanted energy blocks
*/

.block_199_2,
.block_199_4,
.block_199_5,
.block_199_6 {
display: none;
}

/*
Enlarge swipe buttons
*/
.swiper-pagination-bullet {
width: 15px !important;
height: 15px !important;
}
Custom.js:
Spoiler: show
//add custom javascript in here
function afterGetDevices(){


}

function getExtendedBlockTypes(blocktypes){
//blocktypes.Type['Lighting 2'] = { icon: 'fa fa-lightbulb-o', title: '<Name>', value: 'ds' }
return blocktypes;
}
ConBee II - TRÅDFRI lights + switches, loads of ChingLing dimmers and switches, Heiman and Xiaomi sensors
SolarEdge SE4000H (with active modbus_tcp)
YouLess Energy meter
Shelly 2.5 in roller shutter mode
Lokonli
Posts: 2290
Joined: Monday 29 August 2016 22:40
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Dashticz v3.7.6 beta

Post by Lokonli »

Press F12 in Chrome to open DevTools. Refresh Dashticz. Which errors are reported on the DevTools console tab?
User avatar
Sjonnie2017
Posts: 365
Joined: Wednesday 02 August 2017 19:43
Target OS: Linux
Domoticz version: Latest ß
Location: The Netherlands
Contact:

Re: Dashticz v3.7.6 beta

Post by Sjonnie2017 »

Hi lokonli,

Thanks for your reply. I get this error:

Code: Select all

This page uses the non standard property “zoom”. Consider using calc() in the relevant property values, or using “transform” along with “transform-origin: 0 0”. 192.168.16.165:8082
XHRHEADhttp://192.168.16.165:8082/custom/custom.js?v=1616258419696
[HTTP/1.1 404 Not Found 1ms]

No custom.js file in folder custom. Skipping. js/main.js:183:21
XML Parsing Error: undefined entity
Location: http://192.168.16.165:8082/tpl/debug.tpl?14
Line Number 7, Column 38: debug.tpl:7:38
XHRGEThttp://192.168.16.165:8082/custom/custom.css?v=1616258419696
[HTTP/1.1 404 Not Found 2ms]

No valid custom css file: custom/custom.css. Skipping. js/main.js:348:15
Setting up websocket js/domoticz-api.js:122:17
[open] Connection established js/domoticz-api.js:180:15
Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user’s experience. For more help http://xhr.spec.whatwg.org/
I thought I'd rename CONFIG.js to config.js but that didn't make a difference :|

Looking forward to your reply!

Greetz,

Sjonnie
ConBee II - TRÅDFRI lights + switches, loads of ChingLing dimmers and switches, Heiman and Xiaomi sensors
SolarEdge SE4000H (with active modbus_tcp)
YouLess Energy meter
Shelly 2.5 in roller shutter mode
Lokonli
Posts: 2290
Joined: Monday 29 August 2016 22:40
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Dashticz v3.7.6 beta

Post by Lokonli »

Dashticz can't read custom.css and custom.js

Are the files still in the custom folder?
If they are, check that access rights are correct for these files: root must have read access.
User avatar
Sjonnie2017
Posts: 365
Joined: Wednesday 02 August 2017 19:43
Target OS: Linux
Domoticz version: Latest ß
Location: The Netherlands
Contact:

Re: Dashticz v3.7.6 beta

Post by Sjonnie2017 »

Thanks for your reply and support!

I checked the files and they are readable and writable to any

Image

Anything else I can try?

TIA

Greetz,

Sjonnie
ConBee II - TRÅDFRI lights + switches, loads of ChingLing dimmers and switches, Heiman and Xiaomi sensors
SolarEdge SE4000H (with active modbus_tcp)
YouLess Energy meter
Shelly 2.5 in roller shutter mode
User avatar
EdwinK
Posts: 1820
Joined: Sunday 22 January 2017 21:46
Target OS: Raspberry Pi / ODroid
Domoticz version: BETA
Location: Rhoon
Contact:

Re: Dashticz v3.7.6 beta

Post by EdwinK »

Shouldn't it be CONFIG.js instead of config.js?
Running latest BETA on a Pi-3 | Toon® Thermostat (rooted) | Hue | Tuya | IKEA tradfri | Dashticz V3 on Lenovo Huawei Tablet | Conbee
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest