yunkong2.admin
Version:
The adapter opens a webserver for the yunkong2 admin UI.
1 lines • 80.5 kB
HTML
<html><head><title>yunkong2.admin</title><link rel="stylesheet" type="text/css" href="lib/css/themes/jquery-ui/redmond/jquery-ui.min.css"><link rel="stylesheet" type="text/css" href="lib/css/themes/jquery-ui/redmond/jquery-ui.structure.min.css"><link rel="stylesheet" type="text/css" href="lib/css/themes/jquery-ui/redmond/jquery-ui.theme.min.css"><link rel="stylesheet" type="text/css" href="lib/css/jquery.multiselect-1.13.css"><link rel="stylesheet" type="text/css" href="lib/css/fancytree/ui.fancytree.min.css"><link rel="stylesheet" type="text/css" href="lib/css/cron/jquery.cron.css"><link rel="stylesheet" type="text/css" href="lib/css/materialize.css"><link rel="stylesheet" type="text/css" href="lib/css/jquery.treetable.theme.css"><link rel="stylesheet" type="text/css" href="css/app.css"><link class="favicon" href="favicon.ico" type="image/x-icon" rel="icon"><link class="favicon" href="favicon.ico" type="image/x-icon" rel="shortcut icon"><link class="favicon" href="favicon.ico" type="image/x-icon"><script type="text/javascript" src="./socket.io/socket.io.js"></script><script type="text/javascript" src="lib/js/vendor.js"></script><script type="text/javascript" src="lib/js/materialize.js"></script><script type="text/javascript" src="js/app.js"></script></head><body><div id="_toolbar-button_" class="toolbar-button" style="display: none; visibility: hidden">used to get button size</div><div id="admin_sidemenu_dialog"></div><div id="admin_sidemenu_menu" class="admin-sidemenu m"><a class="admin-sidemenu-close"><i class="material-icons">close</i> <i class="material-icons hide">dehaze</i> </a><a class="choose-tabs-config-button"><i class="material-icons">details</i></a><div class="side-nav"><div class="user-view center"><a id="current-user-icon"><i class="large material-icons">account_circle</i></a> <a><span class="white-text name" id="current-user"></span></a> <a><span class="white-text email" id="current-group"></span></a></div><ul class="admin-sidemenu-menu"></ul></div></div><div id="admin_sidemenu_main"><div class="admin-sidemenu-header m"><nav class="main-admin-buttons"><div class="nav-wrapper"><ul class="left"><li><a id="button-wizard"><i class="material-icons">visibility</i></a></li><li><a id="button-system" class="translateT" title="System"><i class="material-icons">build</i></a></li><li><a id="button-logout" class="translateT" title="Logout"><i class="material-icons">input</i></a></li><li><a class="dropdown-button btn" style="display: none" data-target="host-adapters" id="host-adapters-btn">Host:</a><ul id="host-adapters" class="dropdown-content"></ul></li></ul><a class="button-command" style="display: none"><i class="material-icons">branding_watermark</i></a> <span class="button-version"></span> <span class="button-icon"><img src="img/no-image.png"></span></div></nav></div><div class="admin-sidemenu-body"><div class="m admin-preloader" style="width: 100%"><div class="progress"><div class="indeterminate"></div></div></div></div><div class="admin-sidemenu-footer"></div></div><div id="connecting"><div class="connecting-div"><svg class="spinner" width="100%" height="100%" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"><circle class="path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle></svg></div></div><div id="events_threshold" class="translate translateT" style="display: none" title="Click do activate events again, or just wait one minute">Too many events</div><div class="materialize-dialogs m"><div id="dialog-command" class="modal modal-fixed-footer"><div class="modal-content"><div class="row"><div class="col s12"><h6 class="title"><span class="translate">command execution</span>: <span class="command"></span></h6></div></div><div class="row"><div class="col s12"><div class="progress"><div class="indeterminate"></div></div></div></div><div class="row"><div class="col s8"><span class="progress-text"></span></div><div class="col s4"><div class="switch"><label><span class="translate">less</span> <input type="checkbox" class="progress-show-more"> <span class="lever"></span> <span class="translate">more</span></label></div></div></div><div class="row textarea"><div class="col s12"><textarea id="stdout" readonly="readonly" cols="120" rows="30"></textarea></div></div></div><div class="modal-footer"><div class="progress-dont-close"><input type="checkbox" class="filled-in"><span class="translate">close on ready</span></div><a class="modal-action modal-close waves-effect waves-green btn"><i class="large material-icons">close</i><span class="translate">Close</span></a></div></div><div id="dialog-message" class="modal modal-fixed-footer"><div class="modal-content"><h4 class="dialog-title"></h4><p><i class="large material-icons dialog-icon"></i><span class="dialog-text"></span></p></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat translate">Ok</a></div></div><div id="dialog-confirm" class="modal modal-fixed-footer"><div class="modal-content"><h4 class="dialog-title"></h4><p><i class="large material-icons dialog-icon"></i><span class="dialog-text"></span></p></div><div class="modal-footer"></div></div><div id="dialog-license-main" class="modal modal-fixed-footer"><div class="modal-content"><div class="col s12 m6 l3"><h5 class="translate license_agreement_label">license agreement</h5></div><div class="row"><div class="col s12 m6 l3"><select class="license_language"><option value="cn">简体中文</option><option value="en">English</option></select> <label class="translate">Select language</label></div><div class="col s12 m6 l9 license-checkbox-box"><input class="license_diag filled-in" type="checkbox"> <span class="translate license_checkbox" for="license_diag">license_checkbox</span></div></div><div class="row license-text"><div class="col s12"><h6 class="translate license_terms">License terms</h6><div class="license_text"></div></div></div></div><div class="modal-footer"><a class="license_agree modal-action modal-close waves-effect waves-green btn"><span class="translate">agree</span></a> <a class="license_non_agree modal-action modal-close waves-effect waves-green btn-flat btn-gray"><span class="translate">not agree</span></a></div></div><div id="dialog-value-edit" class="modal modal-fixed-footer"><div class="modal-content"><div class="row"><div class="col s12"><h6 class="title"><span class="translate">edit value</span><span class="name"></span></h6></div></div><div class="row textarea"><div class="col s12"><textarea style="width: 100%; height: calc(100% - 130px); resize: none;"></textarea></div></div><div class="row ack"><div class="col s12"><input type="checkbox"><span class="translate">ack</span></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn btn-set"><i class="large material-icons">check</i><span class="translate">Set</span></a> <a class="modal-action modal-close waves-effect waves-green btn btn-close"><i class="large material-icons">close</i><span class="translate">Close</span></a></div></div><div id="dialog-enum-edit" class="modal modal-fixed-footer"><div class="modal-content"><div class="row"><div class="col s12"><h6 class="title"><span class="translate">edit enums</span><span class="name"></span></h6></div></div><div class="row dialog-enum-list-row"><div class="col s12 dialog-enum-list-col"><ul class="collection"></ul></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn btn-set"><i class="large material-icons">check</i><span class="translate">Set</span></a> <a class="modal-action modal-close waves-effect waves-green btn btn-close"><i class="large material-icons">close</i><span class="translate">Close</span></a></div></div></div><div id="tab-adapters" class="admin-tab" style="display: none" data-name="Adapters"><div class="main-toolbar-table m"><div class="row navicon"><div class="col s6 l4 main-toolbar-table-types-tools"><a class="btn-floating btn-small translateT" title="change view mode" id="btn_switch_adapters"><i class="material-icons">view_module</i></a> <a class="btn-floating btn-small translateT" title="update adapter information" id="btn_refresh_adapters"><i class="material-icons">refresh</i></a> <a class="btn-floating btn-small translateT" title="list" id="btn_list_adapters"><i class="material-icons">list</i></a> <a class="btn-floating btn-small translateT" title="collapse all" id="btn_collapse_adapters"><i class="material-icons">folder</i></a> <a class="btn-floating btn-small translateT" title="expand all" id="btn_expand_adapters"><i class="material-icons">folder_open</i></a> <a class="btn-floating btn-small translateT" title="installed adapters" id="btn_filter_adapters"><i class="material-icons">star</i></a> <a class="btn-floating btn-small translateT" title="adapter with updates" id="btn_filter_updates"><i class="material-icons">update</i></a> <a class="btn-floating btn-small translateT" title="Install from custom URL" id="btn_filter_custom_url"><i class="icon-github"></i></a> <a class="btn-floating btn-small translateT" title="_Toggle expert mode" id="btn_adapters_expert_mode"><i class="material-icons">assignment_ind</i></a> <a class="btn-floating btn-small translateT" title="Upgrade all adapters" id="btn_upgrade_all"><i class="material-icons">flag</i></a></div><div class="col l4 main-toolbar-table-types-tools main-toolbar-table-filter"><input class="filter-input translateP" placeholder="Filter"> <a class="filter-clear btn-floating btn-very-small translateT red lighten-3" title="clear"><i class="material-icons">clear</i></a></div><div class="col s6 l4 main-toolbar-table-types-tools main-toolbar-table-sort"><a id="main-toolbar-table-types-btn" class="dropdown-button btn" href="#" data-target="main-toolbar-table-types"></a><ul id="main-toolbar-table-types" class="dropdown-content"></ul><a id="main-toolbar-table-order-btn" class="dropdown-button btn" href="#" data-target="main-toolbar-table-order"></a><ul id="main-toolbar-table-order" class="dropdown-content"><li class="main-toolbar-table-order-item" data-type="a-z"><a class="translate">A-Z</a></li><li class="main-toolbar-table-order-item" data-type="popular"><a class="translate">Popular first</a></li><li class="main-toolbar-table-order-item" data-type="updated"><a class="translate">Recently updated</a></li></ul></div></div></div><div class="process-adapters" style="display: none;"><svg class="spinner" width="100%" height="100%" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"><circle class="path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle></svg></div><div class="grid-main-div m" style="width: 100%; overflow-y: auto" id="grid-adapters-div"><table id="grid-adapters" class="iob-list-font" style="margin-left: 1px; width: calc(100% - 2px); table-layout: fixed;"><colgroup><col width="320px"><col width="*"><col width="200px"><col width="100px"><col width="80px" style="min-width: 80px;"><col width="140px"><col width="140px"></colgroup><thead><tr><th class="translate ui-widget-header tab-adapters-table-name">Name</th><th class="translate ui-widget-header tab-adapters-table-description">description</th><th class="translate ui-widget-header tab-adapters-table-keywords">keywords</th><th class="translate ui-widget-header tab-adapters-table-installed">installed</th><th class="translate ui-widget-header tab-adapters-table-available">available</th><th class="translate ui-widget-header tab-adapters-table-license">license</th><th class="translate ui-widget-header tab-adapters-table-install">install</th></tr></thead><tbody></tbody></table><div class="m"><div id="grid-adapters-tiles" class="row" style="display: none"></div></div></div></div><div class="materialize-dialogs m"><div id="dialog-install-url" class="modal modal-fixed-footer"><div class="modal-content"><div id="tabs-install" class="row"><div class="col s12"><ul class="tabs"><li class="tab col s3"><a href="#tabs-install-github" class="translate">From github</a></li><li class="tab col s3"><a href="#tabs-install-custom" class="translate">Custom</a></li></ul></div><div id="tabs-install-github" class="col s12 page"><h6 class="translate">Install adapter from github</h6><div class="row"><div class="col s12 m8 l8 with-select"><select id="install-github-link"></select> <label for="install-github-link" class="translate">Select adapter:</label></div></div><div class="row"><div class="col s12 m4 l4"><input id="install-github-debug" type="checkbox" class="filled-in"> <span for="install-github-debug" class="translate">Debug outputs:</span></div></div></div><div id="tabs-install-custom" class="col s12 page"><h6 class="translate">Install adapter from URL</h6><div class="row"><div class="col s12 m8 l8 with-select-2"><input id="install-url-link" type="text" style="width: 100%"> <label for="install-url-link" class="translate">URL or file path:</label></div></div><div class="row"><div class="col s12 m8 l8"><input id="install-url-debug" type="checkbox" class="filled-in"> <span for="install-url-debug" class="translate">Debug outputs:</span></div></div></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat translate btn-install">Install</a> <a class="modal-action modal-close waves-effect waves-green btn-flat translate btn-cancel">Cancel</a></div></div><div id="dialog-license" class="modal modal-fixed-footer"><div class="modal-content"><div class="col s12 m6 l3"><h5><span class="translate license_agreement_label">license agreement</span><span class="license_agreement_name"></span></h5></div><div class="row license-text"><div class="col s12"><h6 class="license_terms translate">License terms</h6><div class="license_text"></div></div></div></div><div class="modal-footer"><a class="license_agree modal-action modal-close waves-effect waves-green btn"><span class="translate">agree</span><i class="large material-icons">check</i></a> <a class="license_non_agree modal-action modal-close waves-effect waves-green btn-flat btn-gray"><span class="translate">not agree</span><i class="large material-icons">close</i></a></div></div><div id="dialog-add-instance" class="modal modal-fixed-footer"><div class="modal-content"><div class="row"><div class="col s12"><h5><span class="translate">You are going to add new instance: </span><span class="dialog-add-instance-name"></span></h5></div></div><div class="row"><div class="col s12"><span class="translate dialog-add-description"></span></div></div><div class="row"><div class="col s12 m6 l4 input-field"><select class="dialog-add-instance-host" id="dialog-add-instance-host"></select> <label for="dialog-add-instance-host" class="translate">host</label></div></div><div class="row"><div class="col s12 m6 l4 input-field"><select class="dialog-add-instance-number" id="dialog-add-instance-number"></select> <label for="dialog-add-instance-number" class="translate">instance number</label></div></div></div><div class="modal-footer"><a class="dialog-add-install-btn modal-action modal-close waves-effect waves-green btn"><span class="translate">add</span></a> <a class="dialog-add-cancel-btn modal-action modal-close waves-effect waves-green btn-flat btn-gray"><span class="translate">cancel</span></a></div></div></div><div id="dialog-config" title="adater configuration" style="display: none" class="m"><div class="row row-title"><div class="col s12"><h6 class="title"></h6></div></div><div class="row iframe"><div class="col s12"><iframe id="config-iframe" name="config-iframe"></iframe></div></div></div><div class="materialize-dialogs m"><div id="dialog-cron" class="modal modal-fixed-footer"><div class="modal-content"><div class="row"><div class="col s12"><h6 class="title translate">CRON dialog</h6></div></div><div class="row"><div class="col s8"><input type="text" class="cron-input" value="* * * * * *"> <label class="cron-text"></label></div><div class="col s4"><input type="checkbox" class="filled-in cron-checkbox-seconds"> <span class="translate">CRON Use seconds</span></div></div><div class="row"><div class="col s12 cron-main-tab"><ul class="tabs"><li class="tab col s2 cron-tab-second"><a href="#cron-tabs-second" class="translate">CRON Second</a></li><li class="tab col s2"><a href="#cron-tabs-minute" class="translate">CRON Minute</a></li><li class="tab col s2"><a href="#cron-tabs-hour" class="translate">CRON Hour</a></li><li class="tab col s2"><a href="#cron-tabs-day" class="translate">CRON Day of Month</a></li><li class="tab col s2"><a href="#cron-tabs-month" class="translate">CRON Month</a></li><li class="tab col s2"><a href="#cron-tabs-week" class="translate">CRON Day of Week</a></li></ul></div><div id="cron-tabs-second" class="col s12 page" data-type="second"><div class="row"><div class="col s12"><select class="cron-type-selector" data-type="second"><option value="every" class="translate">CRON Every second</option><option value="n" class="translate">CRON Every n seconds</option><option value="each" class="translate">CRON Each selected second</option></select> <label class="translate">CRON Type</label></div></div><div class="row n"><div class="col s12 padding"></div><div class="col s12"><input class="cron-slider" data-type="second" data-arg="0" type="range" min="1" max="59"></div></div><div class="row each cron-preview-n"><div class="col s12 cron-tabs-format"></div></div></div><div id="cron-tabs-minute" class="col s12 page" data-type="minute"><div class="row"><div class="col s12"><select class="cron-type-selector" data-type="minute"><option value="every" class="translate">CRON Every minute</option><option value="n" class="translate">CRON Every n minutes</option><option value="each" class="translate">CRON Each selected minute</option></select></div></div><div class="row n"><div class="col s12 padding"></div><div class="col s12"><input class="cron-slider" data-type="minute" data-arg="1" type="range" min="1" max="59"></div></div><div class="row each"><div class="col s12 cron-tabs-format"></div></div></div><div id="cron-tabs-hour" class="col s12 page" data-type="hour"><div class="row"><div class="col s12"><select class="cron-type-selector" data-type="hour"><option value="every" class="translate">CRON Every hour</option><option value="n" class="translate">CRON Every n hours</option><option value="each" class="translate">CRON Each selected hour</option></select></div></div><div class="row n"><div class="col s12 padding"></div><div class="col s12"><input class="cron-slider" data-type="hour" data-arg="2" type="range" min="1" max="23"></div></div><div class="row each"><div class="col s12 cron-tabs-format"></div></div></div><div id="cron-tabs-day" class="col s12 page" data-type="day"><div class="row"><div class="col s12"><select class="cron-type-selector" data-type="day"><option value="every" class="translate">CRON Every day</option><option value="each" class="translate">CRON Each selected day</option></select></div></div><div class="row each"><div class="col s12 cron-tabs-format"></div></div></div><div id="cron-tabs-month" class="col s12 page" data-type="month"><div class="row"><div class="col s12"><select class="cron-type-selector" data-type="month"><option value="every" class="translate">CRON Every month</option><option value="each" class="translate">CRON Each selected month</option></select></div></div><div class="row each"><div class="col s12 cron-tabs-format"></div></div></div><div id="cron-tabs-week" class="col s12 page" data-type="week"><div class="row"><div class="col s12"><select class="cron-type-selector" data-type="week"><option value="every" class="translate">CRON Every week day</option><option value="each" class="translate">CRON Each selected week day</option></select></div></div><div class="row each"><div class="col s12 cron-tabs-format"></div></div></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat btn-clear"><i class="material-icons">delete_forever</i><span class="translate">CRON Clear</span> </a><a class="modal-action modal-close waves-effect waves-green btn-flat btn-apply"><i class="material-icons">check</i> <span class="translate">CRON Apply</span> </a><a class="modal-action modal-close waves-effect waves-green btn-flat btn-cancel"><i class="material-icons">close</i> <span class="translate">CRON Cancel</span></a></div></div></div><div id="dialog-customs" style="display: none" class="m"><div id="tabs-customs"><div class="row"><div class="col s12"><ul class="tabs"><li class="tab col s2 tab-settings"><a href="#tab-customs-settings" class="translate active">Settings</a></li><li class="tab col s2 tab-table"><a href="#tab-customs-table" class="translate">Table</a></li><li class="tab col s2 tab-chart"><a href="#tab-customs-chart" class="translate">Chart</a></li></ul></div><div id="tab-customs-settings" class="col s12 page"><h6 class="title"></h6><ul class="collapsible" id="customs-tabs"></ul><div style="display: none" id="customs-templates"></div></div><div id="tab-customs-table" class="col s12 page"><div class="row no-margin-below"><div class="col s12 m12 l12"><h6 class="title"></h6></div></div><div class="row sub-header"><div class="col s12 m3 l2 select-instance-div"><select class="select-instance"></select> <label class="translate">Show values of instance</label></div><div class="col s6 m3 l2"><input type="text" class="datepicker date-from"> <label class="translate">Date From</label></div><div class="col s6 m3 l2"><input type="text" class="timepicker time-from"> <label class="translate">Time From</label></div><div class="col s6 m3 l2"><input type="text" class="datepicker date-to"> <label class="translate">Date To</label></div><div class="col s6 m3 l2"><input type="text" class="timepicker time-to"> <label class="translate">Time To</label></div><div class="col s1"><a class="btn-floating btn-large waves-effect waves-light blue refresh"><i class="material-icons">refresh</i></a></div><div class="col s1"><a class="btn-floating btn-large waves-effect waves-light blue download"><i class="material-icons">file_download</i></a></div></div><div class="row body"><table id="grid-history-header" class="main-header-table"><thead><tr></tr></thead></table><div id="grid-history-inner" class="grid-main-wh-div"><table id="grid-history" class="col s12"><colgroup><col style="width: 100px"><col style="width: 100px"><col style="width: 250px"><col style="width: 250px"><col style="width: 250px"></colgroup><thead><tr class="grid-history-head"><th></th><th></th><th></th><th></th><th></th></tr></thead><tbody id="grid-history-body"></tbody></table></div></div></div><div id="tab-customs-chart" class="col s12 page"><div class="row header"><div class="col s12 m12 l6"><h6 class="title"></h6></div><div class="col s6 m6 l5 select-instance-div"><select class="select-instance"></select> <label class="translate">Show values of instance</label></div><div class="col s6 m6 l1"><a class="btn-floating btn-large waves-effect waves-light blue refresh"><i class="material-icons">refresh</i></a></div></div><div class="row body"><iframe id="iframe-history-chart"></iframe></div></div></div></div><nav class="dialog-system-buttons nav-wrapper footer"><div class="row"><div class="col s12"><a class="btn btn-active translate btn-save">Save</a> <a class="btn translate btn-cancel">Cancel</a></div></div></nav></div><div id="dialog-editobject" class="m" style="display: none"><div class="dialog-editobject-body"><div class="row"><div class="col s12"><h6 class="title"><span class="translate">Edit object</span> <span class="title-id"></span></h6></div></div><div class="row"><div class="col s6 l8"><input size="60" class="edit-object-name"> <label class="translate">name</label></div><div class="col s6 l4"><select class="edit-object-type" disabled="disabled"><option>device</option><option>channel</option><option>state</option><option>enum</option><option>host</option><option>adapter</option><option>instance</option><option>meta</option><option>config</option><option>path</option><option>file</option><option>script</option><option>group</option><option>user</option><option>chart</option></select> <label class="translate">type</label></div></div><div class="row"><div class="col s12"><ul class="tabs"><li class="tab col s2"><a href="#object-tab-common" class="translate active">common</a></li><li class="tab col s2"><a href="#object-tab-native" class="translate">native</a></li><li class="tab col s2"><a href="#object-tab-acl" class="translate">Access control</a></li><li class="tab col s2"><a href="#object-tab-rest" class="translate">rest</a></li><li class="tab col s2"><a href="#object-tab-raw" class="translate">raw</a></li></ul></div><div id="object-tab-common" class="col s12 page-noscroll"><div class="row"><div class="col s1"><a class="btn-floating waves-effect waves-light blue btn-add-common"><i class="material-icons">add</i></a></div><div class="col s11 object-tab-common-table page-scroll"></div><div class="row icon-editor" style="display: none"><div class="col s1"><label class="translate">common_icon</label></div><div class="col s10"><i class="material-icons prefix">file_upload</i><div class="btn icon-upload"><span class="translate">Icon upload</span></div><div class="icon"></div></div><div class="col s1"><a class="btn-floating waves-effect waves-light red icon-clear"><i class="material-icons">delete</i></a></div></div></div></div><div id="object-tab-native" class="col s12 page-noscroll"><div class="row"><div class="col s1"><a class="btn-floating waves-effect waves-light blue btn-add-native"><i class="material-icons">add</i></a></div><div class="col s11 object-tab-native-table page-scroll"></div></div></div><div id="object-tab-acl" class="col s12 page"><div class="row"><div class="col s12 m6"><select class="object-tab-acl-owner"></select> <label class="translate">Owner user</label></div><div class="col s12 m6"><select class="object-tab-acl-group"></select> <label class="translate">Owner group</label></div></div><div class="row object-tab-rights"><div class="col s12"><div class="row"><div class="col s12 m3"><h6 class="translate">Object rights</h6></div><div class="col s12 m9"><table style="border: none; border-collapse: collapse; padding: 0; margin: 0;"><tr><td colspan="2" class="object-tab-rights-borders object-tab-top-borders translate">Owner</td><td colspan="2" class="object-tab-rights-borders object-tab-top-borders translate">Group</td><td colspan="2" class="object-tab-rights-borders object-tab-top-borders translate">Everyone</td></tr><tr><td class="object-tab-rights-borders translate">read</td><td class="object-tab-rights-borders translate">write</td><td class="object-tab-rights-borders translate">read</td><td class="object-tab-rights-borders translate">write</td><td class="object-tab-rights-borders translate">read</td><td class="object-tab-rights-borders translate">write</td></tr><tr><td class="object-tab-rights-borders object-tab-bottom-borders"><input type="checkbox" class="filled-in" id="object-tab-acl-obj-owner-read"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input type="checkbox" class="filled-in" id="object-tab-acl-obj-owner-write"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input type="checkbox" class="filled-in" id="object-tab-acl-obj-group-read"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input type="checkbox" class="filled-in" id="object-tab-acl-obj-group-write"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input type="checkbox" class="filled-in" id="object-tab-acl-obj-every-read"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input type="checkbox" class="filled-in" id="object-tab-acl-obj-every-write"><span></span></td></tr></table></div></div><div class="row object-tab-acl-state"><div class="col s12 m3"><h6 class="translate">States rights</h6></div><div class="col s12 m9"><table style="border: none; border-collapse: collapse; padding: 0; margin: 0;"><tr><td colspan="2" class="object-tab-rights-borders object-tab-top-borders translate">Owner</td><td colspan="2" class="object-tab-rights-borders object-tab-top-borders translate">Group</td><td colspan="2" class="object-tab-rights-borders object-tab-top-borders translate">Everyone</td></tr><tr><td class="object-tab-rights-borders translate">read</td><td class="object-tab-rights-borders translate">write</td><td class="object-tab-rights-borders translate">read</td><td class="object-tab-rights-borders translate">write</td><td class="object-tab-rights-borders translate">read</td><td class="object-tab-rights-borders translate">write</td></tr><tr><td class="object-tab-rights-borders object-tab-bottom-borders"><input class="filled-in" type="checkbox" id="object-tab-acl-state-owner-read"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input class="filled-in" type="checkbox" id="object-tab-acl-state-owner-write"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input class="filled-in" type="checkbox" id="object-tab-acl-state-group-read"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input class="filled-in" type="checkbox" id="object-tab-acl-state-group-write"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input class="filled-in" type="checkbox" id="object-tab-acl-state-every-read"><span></span></td><td class="object-tab-rights-borders object-tab-bottom-borders"><input class="filled-in" type="checkbox" id="object-tab-acl-state-every-write"><span></span></td></tr></table></div></div></div></div></div><div id="object-tab-rest" class="col s12 page"><textarea id="view-object-rest" readonly="readonly"></textarea></div><div id="object-tab-raw" class="col s12 page"><div id="view-object-raw">Test!</div></div></div></div><nav class="dialog-editobject-buttons nav-wrapper footer"><a class="btn btn-active translate btn-save">Save</a> <a class="btn translate btn-cancel">Cancel</a></nav></div><div class="materialize-dialogs m"><div id="dialog-new-field" class="modal modal-fixed-footer"><div class="modal-content"><div class="row"><div class="col s12"><h6 class="title translate">Add new field</h6></div></div><div class="row"><div class="input-field col s12"><i class="material-icons prefix">textsms</i> <input type="text" class="object-tab-new-name" id="object-tab-new-name"> <label class="translate" for="object-tab-new-name">Name</label></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat translate btn-add">Add</a> <a class="modal-action modal-close waves-effect waves-green btn-flat translate btn-cancel">Cancel</a></div></div></div><div id="tab-enums" class="admin-tab" style="display: none" data-name="Enums"><div class="tab-enums-list m"><div class="row tree-table-body"></div></div><div class="tab-enums-objects" id="grid-enums"><span class="loader"><svg class="spinner" width="100%" height="100%" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"><circle class="path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle></svg></span></div><div class="tab-enums-dialogs m"><div id="tab-enums-dialog-new" class="modal modal-fixed-footer"><div class="modal-content"><h5 class="translate tab-enums-dialog-new-title title"></h5><div class="row"><div class="input-field col s12"><i class="material-icons prefix">text_fields</i> <label for="tab-enums-dialog-new-name" class="translate">Name</label> <input id="tab-enums-dialog-new-name" autofocus type="text"></div><div class="input-field col s12"><i class="material-icons prefix">feedback</i> <input id="tab-enums-dialog-preserve-id" type="checkbox"> <span for="tab-enums-dialog-preserve-id" class="translate tab-enums-dialog-preserve-id-label">Preserve ID</span></div><div class="input-field col s12"><i class="material-icons prefix">local_offer</i> <label for="tab-enums-dialog-new-id" class="translate">ID</label> <input type="text" id="tab-enums-dialog-new-id"></div><div class="input-field col s12"><i class="material-icons prefix">pageview</i> <label for="tab-enums-dialog-new-preview" class="translate">Preview</label> <input type="text" id="tab-enums-dialog-new-preview" disabled="disabled"></div></div><div class="row"><div class="col s6"><div class="tab-enums-dialog-new-icon"></div><div class="tab-enums-dialog-new-upload"><a class="btn tab-enums-dialog-new-color-btn"><i class="material-icons">add</i></a></div><div class="btn-floating tab-enums-dialog-new-icon-clear"><i class="material-icons">delete</i></div></div><div class="col s6 file-field tab-enums-dialog-new-colorpicker"><i class="material-icons prefix tab-enums-dialog-new-color-icon">color_lens</i> <a class="btn tab-enums-dialog-new-color-btn translate">Color</a><div class="file-path-wrapper"><input type="text" class="tab-enums-dialog-new-color"><div class="btn-floating waves-effect waves-light tab-enums-dialog-new-color-clear"><i class="material-icons">delete</i></div></div></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat translate tab-enums-dialog-create">Create</a> <a class="modal-action modal-close waves-effect waves-green gray btn-flat translate">Cancel</a></div></div></div></div><div id="tab-events" class="admin-tab" data-name="Events" style="display: none"><div id="grid-events" class="ui-jqgrid" style="height: 100%; display: block;"><div class="main-toolbar-table m"><div class="row navicon"><div class="col s12 m12 l6 xl4 main-toolbar-table-types-tools"><a class="btn-floating btn-small btn-pause translateT" title="Pause output" id="event-pause"><i class="material-icons">pause</i></a> <a class="btn-floating btn-small translateT" title="Clear list" id="event-clear"><i class="material-icons">delete</i></a></div></div></div><table style="width: 100%; border-collapse: collapse;" class="main-header-table"><thead><tr id="events-table-tr"></tr></thead></table><div id="grid-events-inner"><table id="event-outer" class="iob-list-table events-list-table"><colgroup><col width="10%"><col width="30%"><col width="10%"><col width="9%"><col width="10%"><col width="10%"><col width="10%"></colgroup><thead><tr style="visibility: hidden; height: 0 !important; background: #f00;"><th></th><th></th><th></th><th></th><th></th><th></th><th></th></tr></thead><tbody id="event-table"></tbody></table></div></div></div><div id="tab-hosts" class="admin-tab m" style="display: none" data-name="Hosts"><div class="main-toolbar-table"><div class="row navicon"><div class="col s3 m2 main-toolbar-table-types-tools"><a class="btn-floating btn-small translateT btn-switch-tiles" title="change view mode"><i class="material-icons">view_module</i></a> <a class="btn-floating btn-small translateT btn-reload" title="update adapter information"><i class="material-icons">refresh</i></a> <span class="iob-toolbar-sep"> </span></div><div class="col s9 m10 main-toolbar-table-types-tools"><input class="filter-input translateP" placeholder="Filter"> <a class="filter-clear btn-floating btn-very-small translateT red lighten-3" title="clear"><i class="material-icons">clear</i></a></div></div></div><div id="hosts" class="row"></div><table class="hosts-table iob-list-table"><thead id="grid-hosts-head"><tr><th class="translate tab-hosts-header-led" style="width: 40px"></th><th class="translate tab-hosts-header-icon"></th><th class="translate tab-hosts-header-name">name</th><th class="translate tab-hosts-header-type">type</th><th class="translate tab-hosts-header-title" style="width: 80px">title</th><th class="translate tab-hosts-header-os text-overflow">os</th><th class="translate tab-hosts-header-available" style="width: 80px">available</th><th class="translate tab-hosts-header-installed" style="width: 80px">installed</th><th class="translate tab-hosts-header-events" style="width: 80px">events</th><th class="translate tab-hosts-header-restart" style="width: 80px">restart</th></tr></thead><tbody id="grid-hosts"></tbody></table></div><div class="materialize-dialogs m"><div id="dialog-host-update" class="modal modal-fixed-footer"><div class="modal-content"><h4 class="dialog-title translate">Instructions</h4><p><span class="translate">update-part1</span><br><label class="dialog-text translate" for="dialog-host-update-instructions">You can check changelog here</label> <textarea readonly="readonly" id="dialog-host-update-instructions"></textarea></p></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat translate">Ok</a></div></div><div id="tab-host-dialog-edit" class="modal modal-fixed-footer"><div class="modal-content"><h5 class="translate title">Rename</h5><div class="row"><div class="input-field col s12"><i class="material-icons prefix">text_fields</i> <label for="tab-host-dialog-edit-title" class="translate">Title</label> <input id="tab-host-dialog-edit-title" autofocus type="text"></div></div><div class="row"><div class="col s6"><div class="tab-host-dialog-edit-icon"></div><div class="tab-host-dialog-edit-upload"><a class="btn tab-host-dialog-edit-color-btn"><i class="material-icons">add</i></a></div><div class="btn-floating tab-host-dialog-edit-icon-clear"><i class="material-icons">delete</i></div></div><div class="col s6 file-field tab-host-dialog-edit-colorpicker"><i class="material-icons prefix tab-host-dialog-edit-color-icon">color_lens</i> <a class="btn tab-host-dialog-edit-color-btn translate">Color</a><div class="file-path-wrapper"><input type="text" class="tab-host-dialog-edit-color"><div class="btn-floating waves-effect waves-light tab-host-dialog-edit-color-clear"><i class="material-icons">delete</i></div></div></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat translate tab-host-dialog-ok">Change</a> <a class="modal-action modal-close waves-effect waves-green gray btn-flat translate">Cancel</a></div></div></div><div id="tab-instances" class="admin-tab" style="display: none" data-name="Instances"><div class="main-toolbar-table m"><div class="row"><div class="col s4 m2 main-toolbar-table-types-tools"><a class="btn-floating btn-small translateT btn-instances-reload" title="reload"><i class="material-icons">refresh</i></a> <a class="btn-floating btn-small translateT btn-instances-expert-mode" title="_Toggle expert mode"><i class="material-icons">assignment_ind</i></a> <a class="btn-floating btn-small translateT btn-instances-host" title="Show instances only for current host"><i class="material-icons">important_devices</i></a></div><div class="col s4 m3"><div class="instances-filter-div"><input class="translateP instances-filter" placeholder="Filter"> <a class="btn-floating btn-very-small translateT red lighten-3 instances-filter-clear" title="clear"><i class="material-icons">clear</i></a></div></div><div class="col ram-info-td s4 m7"><span class="tab-instances-info-disk"><span class="translate">Disk free:</span> <span id="diskFree" class="ram-font-weight"></span> <span>%, </span></span><span class="tab-instances-info-total-ram"><span class="translate">RAM total usage:</span> <span id="totalRam" class="ram-font-weight"></span> <span class="translate">MB</span> </span><span class="tab-instances-info-free-ram"><span class="free-mem-label">/</span> <span class="translate free-mem-label">Free RAM:</span> <span id="freeMemPercent" class="ram-font-weight"></span> <span>=</span> <span id="freeMem" class="ram-font-weight"></span> <span class="translate free-mem-label">MB</span> </span><span class="tab-instances-info-processes">[<span class="translate">Host</span>: <span id="currentHost" class="ram-font-weight"></span> - <span id="running_processes"></span>]</span></div></div></div><div class="grid-main-div"><table class="instance-table"><thead id="grid-instances-head"></thead><tbody id="grid-instances"></tbody></table></div></div><ul id="instances-menu" style="display: none;" data-visible="false"></ul><div id="tab-intro" class="admin-tab m" style="display: none" data-name="Intro"><div class="row tab-intro-cards"></div><a class="btn-floating btn-large waves-effect waves-light blue btn-edit"><i class="material-icons">create</i></a> <a class="btn-floating btn-large waves-effect waves-light red btn-edit-ok"><i class="material-icons">check</i></a> <a class="btn-floating btn-large waves-effect waves-light grey btn-edit-cancel"><i class="material-icons">close</i></a></div><div id="intro-template" class="col s12 m6 l4 xl3 xxl2 xxxl1 tile"><div class="card horizontal hoverable"><a class="btn-floating btn-large waves-effect waves-light blue btn-card-enabled"><i class="material-icons">check</i></a> <a class="info activator btn-small">INFO</a><div class="card-image activator"><img class="card-image-img" src=""></div><div class="card-stacked"><div class="card-content"><p></p><h5 class="card-titles"></h5><span class="card-content-text"></span><p></p></div><div class="card-action"><a href="#" class="url"></a></div></div><div class="card-reveal"><span class="card-title grey-text text-darken-4">Info<i class="material-icons dp48">content_copy</i><i class="material-icons right">close</i></span></div></div></div><div id="dialog-issue" style="display: none" class="m"><div id="tabs-issue"><div class="row"><div class="col s12 page"><h6 class="title"></h6><ul class="collapsible" id="result-issue"></ul></div></div></div><nav class="dialog-system-buttons nav-wrapper footer"><div class="row"><div class="col s12"><a href="" target="_blank" class="btn translate btn-add">Add new issue</a> <a class="btn translate btn-cancel">Close</a></div></div></nav></div><ul id="issueTable" style="display: none"><li><div class="collapsible-header"><span class="collapsible-header-title"></span> <span class="category"></span></div><div class="customs-settings collapsible-body"><div class="form-row"></div><br><a href="" target="_blank" class="goto translate">Go to Github...</a><div class="signature"><span class="created">2017-01-06T20:33:28Z</span> by <span class="user">Jane Smith</span></div></div></li></ul><div id="tab-logs" class="admin-tab" style="display: none" data-name="Log"><div class="main-toolbar-table m"><div class="row navicon"><div class="col s6 m4 main-toolbar-table-types-tools"><a class="btn-floating btn-small translateT" title="Refresh log" id="log-refresh"><i class="material-icons">refresh</i></a> <a class="btn-floating btn-small translateT btn-pause" title="Pause output" id="log-pause"><i class="material-icons">pause</i></a><a class="btn-floating btn-small translateT" title="Clear log" id="log-clear"><i class="material-icons">delete</i></a> <a class="btn-floating btn-small translateT red lighten-3" title="Clear on disk permanent" id="log-clear-on-disk"><i class="material-icons">delete_forever</i></a></div><div class="col s6 m4 main-toolbar-table-types-tools"><a class="dropdown-button btn translate" style="display: none" data-target="log-files" id="log-files-btn">Download log</a><ul id="log-files" class="dropdown-content"></ul></div><div class="col s1 m4 main-toolbar-table-types-tools"><span id="log-size" style=""></span></div></div></div><table id="log-outer-header" class="main-header-table"><thead><tr></tr></thead></table><div id="grid-log-inner" class="grid-main-wh-div"><table id="log-outer"><colgroup><col width="120px"><col width="180px"><col width="90px"></colgroup><thead><tr class="log-head"><th></th><th></th><th></th><th></th></tr></thead><tbody id="log-table"></tbody></table></div></div><div id="log-copy-text" title="Copy log" style="display: none;"></div><div id="dialog-menuEdit" class="m" style="display: none"><div class="row"><div class="col s12"></div></div></div><div id="tab-objects" class="admin-tab" style="display: none" data-name="Objects"><div id="grid-objects" class="grid-main-div"><span class="translate" style="width: calc(100% - 100px); width: calc(100% - 20px); text-align: center">Loading...</span></div></div><div class="materialize-dialogs m"><div id="dialog-new-object" class="modal modal-fixed-footer"><div class="modal-content"><div class="row"><div class="col s12"><h6 class="title">title</h6></div></div><div class="row"><div class="col s12"><input id="object-tab-new-object-parent" type="text" size="40" readonly="readonly" style="background: lightgrey"> <label for="object-tab-new-object-parent" class="translate">Parent</label></div></div><div class="row"><div class="col s12"><input id="object-tab-new-object-name" type="text" size="40"> <label for="object-tab-new-object-name" class="translate">Name</label></div></div><div class="row"><div class="col s12"><select id="object-tab-new-object-type"><option value="state" class="translate">State</option><option value="channel" class="translate">Channel</option><option value="device" class="translate">Device</option></select> <label for="object-tab-new-object-type" class="translate">Type</label></div></div><div class="row object-tab-new-object-tr"><div class="col s12"><select id="object-tab-new-state-type"><option value="boolean" class="translate">boolean</option><option value="switch" class="translate">switch</option><option value="string" class="translate">string</option><option value="number" class="translate">number</option><option value="enum" class="translate">multi</option><option value="array" class="translate">array</option><option value="object" class="translate">object</option><option value="mixed" class="translate">mixed</option></select> <label for="object-tab-new-state-type" class="translate">State type</label></div></div></div><div class="modal-footer"><a class="modal-action modal-close waves-effect waves-green btn-flat translate btn-add">Add</a> <a class="modal-action modal-close waves-effect waves-green btn-flat translate btn-cancel">Cancel</a></div></div></div><div id="dialog-readme" style="display: none" class="m"><div class="tabs-readme admin-dialog-body"><div class="row"><div class="col s12"><ul class="tabs"><li class="tab col s2 tab-readme"><a href="#tabs-readme-readme" class="translate active">Info</a></li><li class="tab col s2 tab-changelog"><a href="#tabs-readme-changelog" class="translate">Changelog</a></li><li class="tab col s2 tab-license"><a href="#tabs-readme-license" class="translate">License</a></li></ul></div><div id="tabs-readme-readme" class="col s12 page"><div class="row"><div class="col s12"><h6 class="title"></h6></div></div><div class="row"><div class="col s12 result-readme"></div><div class="result-logo"></div></div></div><div id="tabs-readme-changelog" class="col s12 page"><div class="row"><div class="col s12 result-changelog"></div></div></div><div id="tabs-readme-license" class="col s12 page"><div class="row"><div class="col s12 result-license"></div></div></div></div></div><nav class="dialog-system-buttons nav-wrapper footer"><div class="row"><div class="col s12"><a target="_blank" href="" class="btn translate btn-open-org">Open original</a> <a class="btn translate btn-cancel">Close</a></div></div></nav></div><div id="dialog-system" class="m" style="display: none"><div id="tabs-system" class="admin-dialog-body"><div class="row"><div class="col s12"><ul class="tabs"><li class="tab col s2"><a href="#tab-system-main" class="translate active">Main settings</a></li><li class="tab col s2"><a href="#tab-system-repo" class="translate">Repositories</a></li><li class="tab col s2"><a href="#tab-system-certs" class="translate">Certificates</a></li><li class="tab col s2"><a href="#tab-system-letsencrypt" class="translate">Let's encrypt SSL</a></li><li class="tab col s2"><a href="#tab-system-acl" class="translate">Default ACL</a></li><li class="tab col s2"><a href="#tab-system-diag" class="translate">Statistics</a></li></ul></div><div id="tab-system-main" class="col s12 page"><div class="row"><form class="col s12"><div class="row"><div class="col s12 m6"><div class="row"><div class="input-field col s12 l6"><select id="system_language" class="system-settings value"><option value="cn">简体中文</option><option value="en">English</option></select> <label class="translate" for="system_language">System language:</label></div><div class="input-field col s12 l6"><select id="system_tempUnit" class="system-settings value"><option value="°C">°C</option><option value="°F">°F</option></select> <label class="translate" for="system_tempUnit">Temperature units:</label></div><div class="input-field col s12 l6"><input type="text" size="5" maxlength="5" id="system_currency" class="system-settings value"> <label class="translate" for="system_currency">Currency:</label></div><div class="input-field col s12 l6"><select id="system_dateFormat" class="system-settings value"><option value="DD.MM.YYYY" class="translate">DD.MM.YYYY</option><option value="DD.MM.YY" class="translate">DD.MM.YY</option><option value="DD/MM/YYYY" class="translate">DD/MM/YYYY</option></select> <label class="translate" for="system_dateFormat">Date format:</label></div><div class="input-field col s12 l6"><select id="system_isFloatComma" class="system-settings value"><option value="true" class="translate">comma</option><option value="false" class="translate">point</option></select> <label class="translate" for="system_isFloatComma">Float divider:</label></div><div class="input-field col s12 l6"><select id="system_defaultHistory" class="system-settings value"></select> <label class="translate" for="system_defaultHistory">Default history instance:</label></div><div class="input-field col s12 l6"><select id="system_activeRepo" class="system-settings value"></select> <label class="translate" for="system_activeRepo">Active repository:</label></div></div></div><div class="col s12 m6 map"><div id="map"></div></div></div><div class="row"><div class="input-field col s12 m6 l3"><select id="system_country" class="system-settings value"><option value="">Please select country<