blob: bd54c1f61f64efafd9ca49ac45f28485d60b0aa7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
<% local form, viewlibrary, page_info, session = ...
htmlviewfunctions = require("htmlviewfunctions")
html = require("acf.html")
%>
<%
-- Function to mark params that overridden the default set in a param group
function markoverride(c)
if c.type == "group" then
for n,v in pairs(c.value) do
markoverride(v)
end
elseif (c.groupdefault == false or c.groupdefault) and c.value ~= c.groupdefault then
if c.class then
c.class = c.class .." groupdefaultoverride"
else
c.class = "groupdefaultoverride"
end
elseif (c.default == false or c.default) and c.value ~= c.default then
if c.class then
c.class = c.class .." defaultoverride"
else
c.class = "defaultoverride"
end
end
end
%>
<script type="text/javascript">
if (typeof jQuery == 'undefined') {
document.write('<script type="text/javascript" src="<%= html.html_escape(page_info.wwwprefix) %>/js/jquery-latest.js"><\/script>');
}
</script>
<script type="text/javascript">
<% -- Since we're including deletedevice as a component, we break the automatic redirect
if session.deletedeviceresult and not session.deletedeviceresult.errtxt and viewlibrary.check_permission("listdevices") then
-- Use JavaScript to redirect to the listdevices page
%>
window.location.assign("<%= html.html_escape(page_info.script..page_info.prefix..page_info.controller) %>/listdevices");
<%
end
%>
function showsection() {
$("#"+$(this).attr("class")).toggle();
if ($(this).next().next("a").length == 1) {
$(this).next().next().toggle();
}
$(this).remove();
}
function hideunuseddivs() {
var previoussection = "";
var previousnumber = 0;
$("div").filter(function(){
var id = $(this).attr("id");
// We're looking for an id that starts with section_
if ((id != null) && (id.indexOf("section_") === 0)) {
return true;
}
return false;
}).each(function(i){
var id = $(this).attr("id");
var currentnumber = id.match(/\d+$/);
var currentsection
if (currentnumber != null) {
var len = id.length;
var numlen = currentnumber[0].length;
currentsection = id.substr(8, id.length-8-currentnumber[0].length);
currentnumber = currentnumber[0].toString();
} else {
currentsection = id.substr(8);
currentnumber = 0;
}
if ((currentsection == previoussection) && (currentnumber != previousnumber) && ($(this).children().first().text().match(currentnumber))) {
// Found a section
<% if page_info.action ~= "viewdeviceparams" and viewlibrary.check_permission("deletedeviceparamgroup") then %>
// Add a delete button to previous section
$("<a href='<%= page_info.script..page_info.prefix..page_info.controller.."/deletedeviceparamgroup?device_id="..html.html_escape(form.value.device_id.value) %>&group="+previoussection+previousnumber+"&redir=<%= page_info.script..page_info.prefix..page_info.controller.."/"..page_info.action..html.url_encode("?device_id="..form.value.device_id.value)%>&submit=true' class='deletedeviceparamgroup'> Delete</a>").insertAfter($(this).prevAll("div").first().children().first());
<% end %>
if ((0 == $(this).find(".defaultoverride").length) && (0 == $(this).find(".groupdefaultoverride").length)) {
// Hide this section
$(this).toggle();
<% if page_info.action ~= "viewdeviceparams" then %>
$('<a href="javascript:;" class="'+id+'"><img src="<%= html.html_escape(page_info.wwwprefix..page_info.staticdir) %>tango/16x16/actions/list-add.png"> '+$(this).children().first().text()+'</a>').insertAfter($(this)).click(showsection);
if ($(this).prev("a").length == 1) {
// If the previous sibling is also an Add link, hide this one
$(this).next().toggle();
}
<% end %>
}
}
previoussection = currentsection;
previousnumber = currentnumber;
});
}
$(document).ready(function() {
$(".deletedevice").click(function(){ return confirm("Are you sure you want to delete this device?")});
$(".groupdefaultoverride").siblings().select("contains('Default:')").addClass("error");
hideunuseddivs();
$(".deletedeviceparamgroup").click(function(){ return confirm("Are you sure you want to delete this parameter group?")});
});
</script>
<% htmlviewfunctions.displaycommandresults({"deletedeviceparamgroup"}, session) %>
<% if form and form.value and form.value.device_id and form.value.device_id.value ~= "" then %>
<% if viewlibrary.check_permission("editdevice") then %>
<a href='<%= page_info.script..page_info.prefix..page_info.controller.."/editdevice?device_id="..html.html_escape(form.value.device_id.value) %>'><img src='<%= html.html_escape(page_info.wwwprefix..page_info.staticdir) %>/tango/16x16/categories/applications-system.png' title="Edit Class of Service"></img> <big>Edit Class of Service </big></a>
<% end %>
<% if viewlibrary.check_permission("deletedevice") then %>
<a href='<%= page_info.script..page_info.prefix..page_info.controller.."/deletedevice?submit=true&device_id="..html.html_escape(form.value.device_id.value) %>' class="deletedevice"><img src='<%= html.html_escape(page_info.wwwprefix..page_info.staticdir) %>/tango/16x16/emblems/emblem-unreadable.png' title="Delete this Device"></img> <big>Delete this Device </big></a>
<% end %>
<% end %>
<%
form.value.device_id.readonly = "true"
if not form.errtxt and form.value.groupdefaultoverride.value then
form.errtxt = "Warning: Class defaults have been overridden for this device"
end
form.value.groupdefaultoverride = nil
-- Mark the parameters where the group default is overridden
for n,v in pairs(form.value) do
markoverride(v)
end
htmlviewfunctions.displayitem(form, page_info)
%>
|