Skip to content

Commit

Permalink
[instruments] Remove CommentID from getInstanceData.
Browse files Browse the repository at this point in the history
The CommentID is not part of the data, it's the foreign key used
between the flag table and the instrument table. JSON-based instruments
do not have it, and this ensures better consistency between the two
so that issues such as aces#8796 and aces#8801 will not vary based on instrument
type and will be caught sooner.

Resolves part of aces#8804 (Inconsistency #2)
  • Loading branch information
driusan committed Jun 21, 2023
1 parent 1cd5f07 commit f5a7e4d
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion php/libraries/NDB_BVL_Instrument.class.inc
Original file line number Diff line number Diff line change
Expand Up @@ -2106,12 +2106,17 @@ abstract class NDB_BVL_Instrument extends NDB_Page
['CID' => $this->getCommentID()]
);

$this->instanceData = json_decode($jsondata, true) ?? [];
$this->instanceData = json_decode($jsondata ?? '', true) ?? [];
} else {
$defaults = $db->pselectRow(
"SELECT * FROM $this->table WHERE CommentID=:CID",
['CID' => $this->getCommentID()]
);
// This is only included because it's the primary key. JSON
// data does not include it. Unset so that the two types are
// consistent. Places that need the commentID should be using
// NDB_BVL_Instrument->getCommentID()
unset($defaults['CommentID']);

$this->instanceData = $defaults ?? [];
}
Expand Down

0 comments on commit f5a7e4d

Please # to comment.