luci-app-lxc: bugfix

* fix remaining javascript errors in Chrome

Signed-off-by: Dirk Brenken <dev@brenken.org>
This commit is contained in:
Dirk Brenken 2018-06-01 18:33:05 +02:00
parent d8f2f24a5b
commit babcc14c79

View file

@ -46,11 +46,11 @@ local target = fs.uname().machine
<div class="th cbi-section-table-cell"><%:Template%></div> <div class="th cbi-section-table-cell"><%:Template%></div>
<div class="th cbi-section-table-cell"><%:Actions%></div> <div class="th cbi-section-table-cell"><%:Actions%></div>
</div> </div>
<div class="tr cbi-section-table-row" id="div_holder"> <div class="tr cbi-section-table-row" id="div_create">
<div class="td"><input class="cbi-input-text" type="text" id="tx_name" placeholder="<%:Enter new name%>" value='' /></div> <div class="td"><input class="cbi-input-text" type="text" id="tx_name" placeholder="<%:Enter new name%>" value='' /></div>
<div class="td"><select id="s_template" class="cbi-input-select cbi-button"></select></div> <div class="td"><select id="s_template" class="cbi-input-select cbi-button"></select></div>
<div class="td"> <div class="td">
<input type="button" id="bt_create" value="<%:Create%>" onclick="lxc_create(div_holder)" class="cbi-button cbi-button-add" /> <input type="button" id="bt_create" value="<%:Create%>" onclick="lxc_create()" class="cbi-button cbi-button-add" />
<span id="lxc-add-loader" style="display:inline-block; width:16px; height:16px; margin:0 5px"></span> <span id="lxc-add-loader" style="display:inline-block; width:16px; height:16px; margin:0 5px"></span>
</div> </div>
</div> </div>
@ -67,20 +67,24 @@ local target = fs.uname().machine
<script type="text/javascript" src="<%=resource%>/cbi.js"></script> <script type="text/javascript" src="<%=resource%>/cbi.js"></script>
<script type="text/javascript"> <script type="text/javascript">
//<![CDATA[ //<![CDATA[
window.img = { "red" : "<%=resource%>/cbi/red.gif", "green" : "<%=resource%>/cbi/green.gif", "purple" : "<%=resource%>/cbi/purple.gif" } window.img = { "red" : "<%=resource%>/cbi/red.gif", "green" : "<%=resource%>/cbi/green.gif", "purple" : "<%=resource%>/cbi/purple.gif" };
window.states = { "STOPPED" : "red", "RUNNING" : "green", "FROZEN" : "purple" } window.states = { "STOPPED" : "red", "RUNNING" : "green", "FROZEN" : "purple" };
var t_lxc_list = document.getElementById('t_lxc_list'); var t_lxc_list = document.getElementById('t_lxc_list');
var loader_html = '<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" width="16" height="16" style="vertical-align:middle" />'; var loader_html = '<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" width="16" height="16" style="vertical-align:middle" />';
var output_list = document.getElementById("lxc-list-output") var output_list = document.getElementById("lxc-list-output");
var output_add = document.getElementById("lxc-add-output") var output_add = document.getElementById("lxc-add-output");
var loader_add = document.getElementById("lxc-add-loader") var loader_add = document.getElementById("lxc-add-loader");
var div_create = document.getElementById("div_create");
var bt_create = div_create.querySelector("#bt_create");
function lxc_create(div) bt_create.disabled = true;
info_message(output_add, "Template download in progress, please be patient!");
function lxc_create()
{ {
var lxc_name = div.querySelector("#tx_name").value.replace(/[\s!@#$%^&*()+=\[\]{};':"\\|,<>\/?]/g,''); var lxc_name = div_create.querySelector("#tx_name").value.replace(/[\s!@#$%^&*()+=\[\]{};':"\\|,<>\/?]/g,'');
var lxc_template = div.querySelector("#s_template").value; var lxc_template = div_create.querySelector("#s_template").value;
var bt_create = div.querySelector("#bt_create");
if (t_lxc_list.querySelector("[data-id='" + lxc_name + "']") != null) if (t_lxc_list.querySelector("[data-id='" + lxc_name + "']") != null)
{ {
@ -434,7 +438,7 @@ local target = fs.uname().machine
} }
else else
{ {
setTimeout(function() { elem.innerHTML = ''}, 1000); setTimeout(function() { elem.innerHTML = ''}, 2000);
} }
} }
@ -466,10 +470,6 @@ local target = fs.uname().machine
} }
} }
lxc_list_update();
info_message(output_add, "Template download in progress, please be patient!");
new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_get_downloadable', null, new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_get_downloadable', null,
function(x, data) function(x, data)
{ {
@ -489,7 +489,6 @@ local target = fs.uname().machine
return set_no_template(); return set_no_template();
} }
bt_create.disabled = false;
var select = document.getElementById("s_template"); var select = document.getElementById("s_template");
for(var key in data) for(var key in data)
{ {
@ -498,7 +497,11 @@ local target = fs.uname().machine
option.text = data[key].replace(/[_:]/g, ' '); option.text = data[key].replace(/[_:]/g, ' ');
select.add(option, -1); select.add(option, -1);
} }
info_message(output_add, ""); info_message(output_add, "");
bt_create.disabled = false;
}) })
lxc_list_update();
//]]> //]]>
</script> </script>