1- using Microsoft . EntityFrameworkCore . Migrations ;
1+ using Microsoft . EntityFrameworkCore . Migrations ;
22
33#nullable disable
44
@@ -36,11 +36,11 @@ protected override void Up(MigrationBuilder migrationBuilder)
3636 table : "BiblePublicationSchedules" ,
3737 newName : "TrackNumber" ) ;
3838
39- // Rename NumberOfChaptersToRead to NumberOfTracksToRead
39+ // Rename NumberOfChaptersToRead to NumberOfTracksToPlay
4040 migrationBuilder . RenameColumn (
4141 name : "NumberOfChaptersToRead" ,
4242 table : "AlarmSchedules" ,
43- newName : "NumberOfTracksToRead " ) ;
43+ newName : "NumberOfTracksToPlay " ) ;
4444
4545 // Add MaxLength constraints
4646 migrationBuilder . AlterColumn < string > (
@@ -97,6 +97,14 @@ protected override void Up(MigrationBuilder migrationBuilder)
9797 oldType : "TEXT" ,
9898 oldNullable : true ) ;
9999
100+ // Add SectionCode column to AlarmMusic for music publications with sections
101+ migrationBuilder . AddColumn < string > (
102+ name : "SectionCode" ,
103+ table : "AlarmMusic" ,
104+ type : "TEXT" ,
105+ maxLength : 50 ,
106+ nullable : true ) ;
107+
100108 migrationBuilder . AlterColumn < string > (
101109 name : "Key" ,
102110 table : "GeneralSettings" ,
@@ -119,7 +127,6 @@ protected override void Up(MigrationBuilder migrationBuilder)
119127 table : "AlarmSchedules" ,
120128 columns : new [ ] { "Hour" , "Minute" } ) ;
121129
122- // Create new index (this index didn't exist before, so we create it)
123130 migrationBuilder . CreateIndex (
124131 name : "IX_AlarmMusic_PublicationCode_LanguageCode" ,
125132 table : "AlarmMusic" ,
@@ -145,6 +152,9 @@ protected override void Up(MigrationBuilder migrationBuilder)
145152 table : "GeneralSettings" ,
146153 column : "Key" ,
147154 unique : true ) ;
155+
156+ // Disable music for all existing alarms to ensure users re-select with new SectionCode logic
157+ migrationBuilder . Sql ( "UPDATE AlarmSchedules SET MusicEnabled = 0 WHERE MusicEnabled = 1" ) ;
148158 }
149159
150160 /// <inheritdoc />
@@ -190,6 +200,11 @@ protected override void Down(MigrationBuilder migrationBuilder)
190200 oldMaxLength : 255 ,
191201 oldNullable : false ) ;
192202
203+ // Remove SectionCode column from AlarmMusic
204+ migrationBuilder . DropColumn (
205+ name : "SectionCode" ,
206+ table : "AlarmMusic" ) ;
207+
193208 migrationBuilder . AlterColumn < string > (
194209 name : "LanguageCode" ,
195210 table : "AlarmMusic" ,
@@ -242,7 +257,7 @@ protected override void Down(MigrationBuilder migrationBuilder)
242257
243258 // Rename columns back
244259 migrationBuilder . RenameColumn (
245- name : "NumberOfTracksToRead " ,
260+ name : "NumberOfTracksToPlay " ,
246261 table : "AlarmSchedules" ,
247262 newName : "NumberOfChaptersToRead" ) ;
248263
0 commit comments