Ignore:
Timestamp:
Jul 23, 2015, 3:21:02 PM (9 years ago)
Author:
coas-nagasima
Message:

ECHONET Lite規格に準拠していない動作を修正。
WebSocketの接続先URLを/webapi.ashxから/webapiに変更。
DHCPのリトライ処理が行われていなかったのを修正。
DHCPの有効/無効設定を追加し、固定IPアドレスを設定できるよう変更。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uKadecot/trunk/tools/EcnlControllerUI/EcnlCtrlUI/index.html

    r101 r125  
    22<html>
    33<head>
    4     <meta charset="utf-8">
    5     <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6     <meta name="viewport" content="width=device-width, initial-scale=1">
    7     <title>コントローラWebアプリケーション</title>
    8     <link rel="shortcut icon" href="favicon.ico">
     4        <meta charset="utf-8">
     5        <meta http-equiv="X-UA-Compatible" content="IE=edge">
     6        <meta name="viewport" content="width=device-width, initial-scale=1">
     7        <title>コントローラWebアプリケーション</title>
     8        <link rel="shortcut icon" href="favicon.ico">
    99        <link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile.icons-1.4.5.min.css">
    10     <link rel="stylesheet" href="themes/ecn-theme.min.css">
     10        <link rel="stylesheet" href="themes/ecn-theme.min.css">
    1111        <link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile.structure-1.4.5.min.css">
    1212        <link rel="stylesheet" href="http://cdn.jtsage.com/datebox/1.4.5/jqm-datebox-1.4.5.css" />
    13     <link rel="stylesheet" href="css/ecn_gen.css">
     13        <link rel="stylesheet" href="css/ecn_gen.css">
    1414        <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
    1515        <script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
    16     <script src="js/mscorlib.min.js"></script>
    17     <script src="js/linq.min.js"></script>
     16        <script src="js/mscorlib.min.js"></script>
     17        <script src="js/linq.min.js"></script>
    1818        <script src="http://cdn.jtsage.com/datebox/1.4.5/jqm-datebox-1.4.5.core.min.js"></script>
    1919        <script src="http://cdn.jtsage.com/datebox/1.4.5/jqm-datebox-1.4.5.mode.calbox.min.js"></script>
    2020        <script src="http://cdn.jtsage.com/datebox/1.4.5/jqm-datebox-1.4.5.mode.datebox.min.js"></script>
    2121        <script src="http://cdn.jtsage.com/datebox/i18n/jqm-datebox.lang.utf8.js"></script>
    22     <script src="js/nisews.js"></script>
    23     <script src="js/ctrlui.js"></script>
    24     <script type="text/javascript">
    25         if (typeof window.external.CreateXMLHttpRequest != "undefined") {
    26             window.XMLHttpRequest = function () {
    27                 return window.external.CreateXMLHttpRequest();
    28             }
    29             global.WebSocket = function (url, protocol) {
    30                 return window.external.CreateWebSocket(url, protocol);
    31             }
    32             window.onerror = function (msg, src, line, column, _exc) {
    33                 var exc = window.external.new_object();
    34                 for (m in _exc) {
    35                     window.external.object_add(exc, m, _exc[m]);
    36                 }
    37                 window.external.onerror(msg, src, line, column, exc);
    38             }
    39             window.external.Error = window.Error;
    40             window.Error = function () {
    41                 var nullPtr = null;
    42                 nullPtr(); // スタックトレースを表示するためnull参照
    43                 return window.external.new_error();
    44             }
    45             ss.Debug.writeln = function (text) {
    46                 window.external.output_debug_string(text);
    47             }
    48             console.log = function (text) {
    49                 window.external.output_debug_string(text);
    50             }
    51         }
    52         else {
    53             global.WebSocket = function (url, protocol) {
    54                 return new NiseWebSocket(url, protocol);
    55             }
    56         }
    57         CtrlUI.main();
    58     </script>
     22        <script src="js/nisews.js"></script>
     23        <script src="js/ctrlui.js"></script>
     24        <script type="text/javascript">
     25                if (typeof window.external.CreateXMLHttpRequest != "undefined") {
     26                        window.XMLHttpRequest = function () {
     27                                return window.external.CreateXMLHttpRequest();
     28                        }
     29                        global.WebSocket = function (url, protocol) {
     30                                return window.external.CreateWebSocket(url, protocol);
     31                        }
     32                        window.onerror = function (msg, src, line, column, _exc) {
     33                                var exc = window.external.new_object();
     34                                for (m in _exc) {
     35                                        window.external.object_add(exc, m, _exc[m]);
     36                                }
     37                                window.external.onerror(msg, src, line, column, exc);
     38                        }
     39                        window.external.Error = window.Error;
     40                        window.Error = function () {
     41                                var nullPtr = null;
     42                                nullPtr(); // スタックトレースを表示するためnull参照
     43                                return window.external.new_error();
     44                        }
     45                        ss.Debug.writeln = function (text) {
     46                                window.external.output_debug_string(text);
     47                        }
     48                        console.log = function (text) {
     49                                window.external.output_debug_string(text);
     50                        }
     51                }
     52                else {
     53                        global.WebSocket = function (url, protocol) {
     54                                return new NiseWebSocket(url, protocol);
     55                        }
     56                }
     57                CtrlUI.main();
     58        </script>
    5959</head>
    6060<body>
    61     <div data-role="page" id="index">
    62         <div data-role="header">
    63             <h1 id="header_logo" style="margin: 0px; text-align: left; background-color: white;">
    64                 <a target='_blank' href="http://www.toppers.jp/index.html">
    65                     <img src="./imgs/logo.gif" width="353" height="74" border="0" alt="TOPPERS LOGO">
    66                 </a>
    67             </h1>
    68             <a data-role="button" href="#information" data-rel="popup" data-icon="info" class="ui-btn-right"
    69                style="-webkit-border-radius: 6em; border-radius: 6em;"
    70                onclick="CtrlUI.info.update(this, 'information');">情報
    71             </a>
    72         </div>
    73         <h2><strong>TOPPERS/ECNL</strong>コントローラWebアプリケーション</h2>
    74         <div data-role="panel" class="ecn-navmenu-panel" data-position="left" data-display="overlay" style="background-color: #f9f9f9;">
    75             <div class="ui-field-contain" id="fs_connection_ctn">
    76                 <label for="fs_connection">接続</label>
    77                 <input type="checkbox" name="fs_connection" id="fs_connection" data-role="flipswitch" data-on-text="On" data-off-text="Off">
    78             </div>
    79             <button id="bt_search" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-alert ui-btn-c"
    80                     onclick="CtrlUI.page.search(this);">
    81                 機器検索
    82             </button>
    83             <h2>インスタンス</h2>
    84             <div id="node_list" data-role="collapsibleset" data-inset="true" data-collapsed-icon="carat-r" data-expanded-icon="carat-d">
    85             </div>
    86             <button id="bt_set_property" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-star ui-btn-c">
    87                 設定
    88             </button>
    89             <button id="bt_get_property" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-eye ui-btn-c">
    90                 取得
    91             </button>
    92             <button id="bt_set_get_property" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-recycle ui-btn-c">
    93                 設定と取得
    94             </button>
    95             <button id="bt_kadecot" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-action ui-btn-b">
    96                 Kadecot App list
    97             </button>
    98         </div>
    99         <div role="main" class="ui-content ecn-content">
    100             <ul id="lv_property_list" data-role="listview" data-inset="true"></ul>
    101         </div>
    102         <div data-role="footer" data-position="fixed">
    103             <p style="padding-left: 1em">
    104                 Copyright &copy; 2015 by TOPPERS Project, Inc. All Rights Reserved.
    105             </p>
    106             <a data-role="button" href="#setting_panel" data-icon="gear" class="ui-btn-right"
    107                style="-webkit-border-radius: 6em; border-radius: 6em;">設定
    108             </a>
    109         </div>
    110         <div data-role="popup" id="popup_dialog" data-overlay-theme="b" data-theme="b" data-dismissible="false" style="max-width: 400px;">
    111             <div data-role="header" data-theme="a">
    112                 <h1 id="popup_dialog_caption">エラー</h1>
    113             </div>
    114             <div role="main" class="ui-content">
    115                 <h3 id="popup_dialog_title" class="ui-title">エラー</h3>
    116                 <p id="popup_dialog_text">エラー</p>
    117                 <a href="#" class="ui-btn ui-corner-all ui-shadow ui-btn-b" data-rel="back">OK</a>
    118             </div>
    119         </div>
    120         <div id="information-screen"></div>
    121         <div id="information-popup">
    122             <div data-role="popup" id="information" data-theme="b">
    123                 <img src="js/images/ajax-loader.gif" />
    124             </div>
    125         </div>
    126         <div data-role="panel" id="setting_panel" data-position="right" data-display="overlay" data-theme="b">
    127             <h3>設定</h3>
     61        <div data-role="page" id="index">
     62                <div data-role="header">
     63                        <h1 id="header_logo" style="margin: 0px; text-align: left; background-color: white;">
     64                                <a target='_blank' href="http://www.toppers.jp/index.html">
     65                                        <img src="./imgs/logo.png" width="353" height="74" border="0" alt="TOPPERS LOGO">
     66                                </a>
     67                        </h1>
     68                        <a data-role="button" href="#information" data-rel="popup" data-icon="info" class="ui-btn-right"
     69                                style="-webkit-border-radius: 6em; border-radius: 6em;"
     70                                onclick="CtrlUI.info.update(this, 'information');">情報
     71                        </a>
     72                </div>
     73                <h2><strong>TOPPERS/ECNL</strong>コントローラWebアプリケーション</h2>
     74                <div data-role="panel" class="ecn-navmenu-panel" data-position="left" data-display="overlay" style="background-color: #f9f9f9;">
     75                        <div class="ui-field-contain" id="fs_connection_ctn">
     76                                <label for="fs_connection">接続</label>
     77                                <input type="checkbox" name="fs_connection" id="fs_connection" data-role="flipswitch" data-on-text="On" data-off-text="Off">
     78                        </div>
     79                        <button id="bt_search" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-alert ui-btn-c"
     80                                onclick="CtrlUI.page.search(this);">
     81                                機器検索
     82                        </button>
     83                        <h2>インスタンス</h2>
     84                        <div id="node_list" data-role="collapsibleset" data-inset="true" data-collapsed-icon="carat-r" data-expanded-icon="carat-d">
     85                        </div>
     86                        <button id="bt_set_property" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-star ui-btn-c">
     87                                設定
     88                        </button>
     89                        <button id="bt_get_property" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-eye ui-btn-c">
     90                                取得
     91                        </button>
     92                        <button id="bt_set_get_property" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-recycle ui-btn-c">
     93                                設定と取得
     94                        </button>
     95                        <button id="bt_kadecot" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-action ui-btn-b">
     96                                Kadecot App list
     97                        </button>
     98                </div>
     99                <div role="main" class="ui-content ecn-content">
     100                        <ul id="lv_property_list" data-role="listview" data-inset="true"></ul>
     101                </div>
     102                <div data-role="footer" data-position="fixed">
     103                        <p style="padding-left: 1em">
     104                                Copyright &copy; 2015 by TOPPERS Project, Inc. All Rights Reserved.
     105                        </p>
     106                        <a data-role="button" href="#setting_panel" data-icon="gear" class="ui-btn-right"
     107                                style="-webkit-border-radius: 6em; border-radius: 6em;">設定
     108                        </a>
     109                </div>
     110                <div data-role="popup" id="popup_dialog" data-overlay-theme="b" data-theme="b" data-dismissible="false" style="max-width: 400px;">
     111                        <div data-role="header" data-theme="a">
     112                                <h1 id="popup_dialog_caption">エラー</h1>
     113                        </div>
     114                        <div role="main" class="ui-content">
     115                                <h3 id="popup_dialog_title" class="ui-title">エラー</h3>
     116                                <p id="popup_dialog_text">エラー</p>
     117                                <a href="#" class="ui-btn ui-corner-all ui-shadow ui-btn-b" data-rel="back">OK</a>
     118                        </div>
     119                </div>
     120                <div id="information-screen"></div>
     121                <div id="information-popup">
     122                        <div data-role="popup" id="information" data-theme="b">
     123                                <img src="js/images/ajax-loader.gif" />
     124                        </div>
     125                </div>
     126                <div data-role="panel" id="setting_panel" data-position="right" data-display="overlay" data-theme="b">
     127                        <h3>設定</h3>
    128128                        <label for="txt_mac_addr">MACアドレス</label>
    129             <input name="txt_mac_addr" id="txt_mac_addr" value="12:34:56:78:9A:BC" type="text">
    130             <button id="bt_set_init_params" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-check ui-btn-c">
    131                 設定
    132             </button>
     129                        <input name="txt_mac_addr" id="txt_mac_addr" value="12:34:56:78:9A:BC" type="text">
     130                        <label for="cb_dhcp_enable">DHCP有効</label>
     131                        <input name="cb_dhcp_enable" id="cb_dhcp_enable" type="checkbox">
     132                        <label for="txt_ip_addr">IPアドレス</label>
     133                        <input name="txt_ip_addr" id="txt_ip_addr" value="192.168.2.103" type="text">
     134                        <label for="txt_netmask">サブネットマスク</label>
     135                        <input name="txt_netmask" id="txt_netmask" value="255.255.255.0" type="text">
     136                        <label for="txt_gateway">デフォルトゲートウェイ</label>
     137                        <input name="txt_gateway" id="txt_gateway" value="192.168.2.1" type="text">
     138                        <button id="bt_set_init_params" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-check ui-btn-c">
     139                                設定
     140                        </button>
    133141                        <button id="bt_get_init_params" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-check ui-btn-c">
    134142                                取得
    135143                        </button>
    136             <h3>ライセンス</h3>
    137             <p>
    138                 このサイトは<a target='_blank' href="http://www.toppers.jp/license.html">TOPPERSライセンス</a>で公開しています。<br>
    139                 このサイトは、いくつかのJavaScriptライブラリを使用しています。サイト右上のソフトウェア情報をご覧ください。
    140             </p>
    141             <a href="#" data-rel="close" class="ui-btn ui-shadow ui-corner-all ui-btn-a ui-icon-delete ui-btn-icon-left ui-btn-inline">閉じる</a>
    142         </div>
    143     </div>
     144                        <h3>ライセンス</h3>
     145                        <p>
     146                                このサイトは<a target='_blank' href="http://www.toppers.jp/license.html">TOPPERSライセンス</a>で公開しています。<br>
     147                                このサイトは、いくつかのJavaScriptライブラリを使用しています。サイト右上のソフトウェア情報をご覧ください。
     148                        </p>
     149                        <a href="#" data-rel="close" class="ui-btn ui-shadow ui-corner-all ui-btn-a ui-icon-delete ui-btn-icon-left ui-btn-inline">閉じる</a>
     150                </div>
     151        </div>
    144152</body>
    145153</html>
Note: See TracChangeset for help on using the changeset viewer.