Fix bugs in cross-site data access.
This commit is contained in:
parent
558407e2db
commit
7675816307
@ -48,6 +48,7 @@ class DataBoard
|
|||||||
|
|
||||||
delete: ({siteID, boardID, threadID, postID}) ->
|
delete: ({siteID, boardID, threadID, postID}) ->
|
||||||
siteID or= Site.hostname
|
siteID or= Site.hostname
|
||||||
|
return unless @data[siteID]
|
||||||
@save =>
|
@save =>
|
||||||
if postID
|
if postID
|
||||||
return unless @data[siteID].boards[boardID]?[threadID]
|
return unless @data[siteID].boards[boardID]?[threadID]
|
||||||
@ -61,6 +62,7 @@ class DataBoard
|
|||||||
delete @data[siteID].boards[boardID]
|
delete @data[siteID].boards[boardID]
|
||||||
|
|
||||||
deleteIfEmpty: ({siteID, boardID, threadID}) ->
|
deleteIfEmpty: ({siteID, boardID, threadID}) ->
|
||||||
|
return unless @data[siteID]
|
||||||
if threadID
|
if threadID
|
||||||
unless Object.keys(@data[siteID].boards[boardID][threadID]).length
|
unless Object.keys(@data[siteID].boards[boardID][threadID]).length
|
||||||
delete @data[siteID].boards[boardID][threadID]
|
delete @data[siteID].boards[boardID][threadID]
|
||||||
@ -75,6 +77,7 @@ class DataBoard
|
|||||||
|
|
||||||
setUnsafe: ({siteID, boardID, threadID, postID, val}) ->
|
setUnsafe: ({siteID, boardID, threadID, postID, val}) ->
|
||||||
siteID or= Site.hostname
|
siteID or= Site.hostname
|
||||||
|
@data[siteID] or= boards: {}
|
||||||
if postID isnt undefined
|
if postID isnt undefined
|
||||||
((@data[siteID].boards[boardID] or= {})[threadID] or= {})[postID] = val
|
((@data[siteID].boards[boardID] or= {})[threadID] or= {})[postID] = val
|
||||||
else if threadID isnt undefined
|
else if threadID isnt undefined
|
||||||
@ -96,7 +99,7 @@ class DataBoard
|
|||||||
|
|
||||||
get: ({siteID, boardID, threadID, postID, defaultValue}) ->
|
get: ({siteID, boardID, threadID, postID, defaultValue}) ->
|
||||||
siteID or= Site.hostname
|
siteID or= Site.hostname
|
||||||
if board = @data[siteID].boards[boardID]
|
if board = @data[siteID]?.boards[boardID]
|
||||||
unless threadID?
|
unless threadID?
|
||||||
if postID?
|
if postID?
|
||||||
for ID, thread in board
|
for ID, thread in board
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user