summaryrefslogtreecommitdiffstats
path: root/interfaces-model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'interfaces-model.lua')
-rw-r--r--interfaces-model.lua23
1 files changed, 8 insertions, 15 deletions
diff --git a/interfaces-model.lua b/interfaces-model.lua
index 9afca19..57c86fd 100644
--- a/interfaces-model.lua
+++ b/interfaces-model.lua
@@ -319,13 +319,11 @@ iface.delete = function (name)
table.remove (iface.array, idx )
rc = iface.commit()
end
- local value
if rc then
- value = "Interface deleted"
+ return "Interface deleted"
else
- value = "Interface not found"
+ return nil, "Interface not found"
end
- return cfe({ value=value, label="Delete result" })
end
iface.validate = function (def)
@@ -395,23 +393,18 @@ end
get_delete_iface_by_name = function(self, clientdata)
local result = {}
- result.name = cfe({ value=clientdata.name or "", label="Interface Name" })
+ result.name = cfe({ type="select", value=clientdata.name or "", label="Interface Name", option=iface.list_interfaces() })
return cfe({ type="group", value=result, label="Interface Name" })
end
delete_iface_by_name = function(self, deleterequest)
+ local success = modelfunctions.validateselect(deleterequest.value.name)
- if deleterequest.value.name.value and deleterequest.value.name.value ~= "" then
- local res, err = iface.delete(deleterequest.value.name.value)
- end
-
- if res then
- deleterequest.descr = res
- end
-
- if not res and err then
- delterequest.errtxt = err
+ if success then
+ deleterequest.descr, deleterequest.errtxt = iface.delete(deleterequest.value.name.value)
+ else
+ deleterequest.errtxt = "Failed to delete interface"
end
return deleterequest