Skip to content

Commit b0a50bf

Browse files
committed
[#58] Fixes #58, fix bug that caused updates to be lost after renaming other table
1 parent db7b5a4 commit b0a50bf

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/frontend/managers/tableListManager.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,7 @@ var TableListManager = (function() {
214214
var accordianNames = {}
215215
var accordianBodies = {}
216216
var accordianBodiesByName = {}
217+
var accordianIndicesByName = {}
217218

218219
// Methods:
219220
return {
@@ -227,9 +228,11 @@ var TableListManager = (function() {
227228

228229
/** Updates an existing entry */
229230
updateEntryByName: function(name, newJson) {
230-
var curr = accordianBodiesByName[name] || {}
231-
if (curr.hasOwnProperty(name)) {
231+
var index = accordianIndicesByName.hasOwnProperty(name) ?
232+
accordianIndicesByName[name] : -1
233+
if (index >= 0) {
232234
accordianBodiesByName[name] = newJson
235+
accordianBodies[index] = newJson
233236
}
234237
},
235238

@@ -240,13 +243,15 @@ var TableListManager = (function() {
240243
accordianNames[index] = name
241244
accordianBodies[index] = json
242245
accordianBodiesByName[name] = json
246+
accordianIndicesByName[name] = index
243247
},
244248
/** Update state when an entry is deleted */
245249
removeEntry: function(index) {
246250
var name = accordianNames[index] || ""
247251
delete accordianNames[index]
248252
delete accordianBodies[index]
249253
delete accordianBodiesByName[name]
254+
delete accordianIndicesByName[name]
250255
},
251256
/** Copies current state into an object and then resets the state */
252257
copyThenReset: function(mutableObj) {
@@ -260,6 +265,7 @@ var TableListManager = (function() {
260265
accordianNames = {}
261266
accordianBodies = {}
262267
accordianBodiesByName = {}
268+
accordianIndicesByName = {}
263269
}
264270
}
265271
}())

0 commit comments

Comments
 (0)