luci2: revert uci changes when closing cbi.Model dialog
[project/luci2/ui.git] / luci2 / htdocs / luci2 / luci2.js
index 2d1c8bc..95d3516 100644 (file)
@@ -1483,7 +1483,9 @@ function LuCI2()
                _fetch_protocols: function()
                {
                        var self = L.NetworkModel;
-                       var deferreds = [ ];
+                       var deferreds = [
+                               self._fetch_protocol('none')
+                       ];
 
                        for (var proto in self._cache.protolist)
                                deferreds.push(self._fetch_protocol(proto));
@@ -7010,7 +7012,9 @@ function LuCI2()
                {
                        var self = ev.data.self;
 
-                       self.trigger('save', ev);
+                       self.send().then(function() {
+                               self.trigger('save', ev);
+                       });
                },
 
                _ev_reset: function(ev)
@@ -7269,9 +7273,8 @@ function LuCI2()
                        });
                },
 
-               reset: function()
+               revert: function()
                {
-                       var self = this;
                        var packages = { };
 
                        for (var i = 0; i < this.sections.length; i++)
@@ -7280,6 +7283,13 @@ function LuCI2()
                        packages[this.uci_package] = true;
 
                        L.uci.unload(L.toArray(packages));
+               },
+
+               reset: function()
+               {
+                       var self = this;
+
+                       self.revert();
 
                        return self.insertInto(self.target);
                },
@@ -7325,6 +7335,7 @@ function LuCI2()
                        var self = ev.data.self;
 
                        self.trigger('close', ev);
+                       self.revert();
                        self.close();
                },