I've updated the tracklist system so that tracktimes are synchronized across all tracklists.
From now on, if you:
1. Add a new tracklist and specify it as main / default:
- The system checks if the new tracklist has missing tracktimes, and fills in those missing lengths using any available data from the previous default tracklist (skipping tracks with zero lengths);
- It then sets the new tracklist as default, and copies all nonzero track lengths to other tracklists.
2. Add a new tracklist as non-default:
- The system copies any nonzero track lengths from the default tracklist to the new tracklist (overwriting the new lengths, if any).
3. Edit the tracktime of a non-default tracklist:
- The system will ignore the edit.
4. Edit the tracktime of a default tracklist:
- The system copies the new tracktime to all other tracklists.
I've also run a script to synchronize the tracktimes for all current tracklists in the database.
This modification was necessary for CDDB to work properly, plus it prepares us for the transition to a more organized table structure (splitting our current table into one that stores track types and track times, and another that stores titles and translations).
|