diff --git a/src/ClientServer/Controllers/ControllerWithDb.cs b/src/ClientServer/Controllers/ControllerWithDb.cs index 096bac3a3e5163d8b0bac5a6594b469f24214aa8..62485b9d8e59208a3f68110319465d39ab2314c1 100644 --- a/src/ClientServer/Controllers/ControllerWithDb.cs +++ b/src/ClientServer/Controllers/ControllerWithDb.cs @@ -16,10 +16,10 @@ namespace ClientServer.Controllers { public class ControllerWithDb : Controller { - protected readonly SyndromDbContext _context; + protected readonly YapexDbContext _context; - public ControllerWithDb(SyndromDbContext context) + public ControllerWithDb(YapexDbContext context) { _context = context; } diff --git a/src/ClientServer/Controllers/Core/AssessmentStatisticsController.cs b/src/ClientServer/Controllers/Core/AssessmentStatisticsController.cs index 0f30f266c9ca5f49af7b4887b82c01201dc8974b..1863f3999b863f099e950963c2cc3e5fa7ac49b9 100644 --- a/src/ClientServer/Controllers/Core/AssessmentStatisticsController.cs +++ b/src/ClientServer/Controllers/Core/AssessmentStatisticsController.cs @@ -20,7 +20,7 @@ namespace ClientServer.Controllers.Core [Route(Constants.ApiPrefix + "assessmentstatistics")] public class AssessmentStatisticsController : ControllerWithDb { - public AssessmentStatisticsController(SyndromDbContext context) : base(context) + public AssessmentStatisticsController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/CustomProjects/CustomProjectsOverviewController.cs b/src/ClientServer/Controllers/Core/CustomProjects/CustomProjectsOverviewController.cs index f592c10d64015f936030e2242b46016a05ca06f5..b34cfe91666d987523204aee8ce4e52c4cf917a8 100644 --- a/src/ClientServer/Controllers/Core/CustomProjects/CustomProjectsOverviewController.cs +++ b/src/ClientServer/Controllers/Core/CustomProjects/CustomProjectsOverviewController.cs @@ -19,7 +19,7 @@ namespace ClientServer.Controllers.Core.customProjects [Route(Constants.ApiPrefix + "custom/projects/overview")] public class CustomProjectsOverviewController : ControllerWithDb { - public CustomProjectsOverviewController(SyndromDbContext context) : base(context) + public CustomProjectsOverviewController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/CustomProjects/EditCustomProjectController.cs b/src/ClientServer/Controllers/Core/CustomProjects/EditCustomProjectController.cs index 01b424446faf9be82b8661f4115f84efd24be5aa..b1dbc3932db5cc453ff7718ca6986d0d91d413db 100644 --- a/src/ClientServer/Controllers/Core/CustomProjects/EditCustomProjectController.cs +++ b/src/ClientServer/Controllers/Core/CustomProjects/EditCustomProjectController.cs @@ -20,7 +20,7 @@ namespace ClientServer.Controllers.Core.customProjects [Route(Constants.ApiPrefix + "custom/projects/edit")] public class EditCustomProjectController : ControllerWithDb { - public EditCustomProjectController(SyndromDbContext context) : base(context) + public EditCustomProjectController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs b/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs index 63ffb6a6c1079580c5a889a2c7542c98535093e0..537e39aee60d5c77c63249085974ece1122e7e04 100644 --- a/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs @@ -27,7 +27,7 @@ namespace ClientServer.Controllers.Core.Exercises.DoExerciseAfterSolution [Route(Constants.ApiPrefix + "exercise/do/aftersolution")] public class DoExerciseAfterSolutionController : ControllerWithDb { - public DoExerciseAfterSolutionController(SyndromDbContext context) : base(context) + public DoExerciseAfterSolutionController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs b/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs index 903869138b3e3ea57056e38129bb375c8cbc98e1..66529cd4c2148b1914ee7c6c50045e03c83913ff 100644 --- a/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs @@ -32,7 +32,7 @@ namespace ClientServer.Controllers.Core.Exercises */ - public DoExerciseController(SyndromDbContext context) : base(context) + public DoExerciseController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/DownloadAssetController.cs b/src/ClientServer/Controllers/Core/Exercises/DownloadAssetController.cs index 640deae10e239dcfa4c0c2bf8a10367a4b322eab..404f10835322e93cb0102434e20368592c379a22 100644 --- a/src/ClientServer/Controllers/Core/Exercises/DownloadAssetController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/DownloadAssetController.cs @@ -29,7 +29,7 @@ namespace ClientServer.Controllers.Core.Exercises - public DownloadAssetController(SyndromDbContext context) : base(context) + public DownloadAssetController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs b/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs index 2c85385439b0753afd09cd430994ab4919df9f65..4b4aacc8c2c407a6e7202a5f3ce80ddc158af47f 100644 --- a/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs @@ -20,7 +20,7 @@ namespace ClientServer.Controllers.Core.Exercises [Route(Constants.ApiPrefix + "exercise/editor")] public class ExerciseEditorController : ControllerWithDb { - public ExerciseEditorController(SyndromDbContext context) : base(context) + public ExerciseEditorController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/ExerciseOverviewController.cs b/src/ClientServer/Controllers/Core/Exercises/ExerciseOverviewController.cs index fd39357ebb81a9373d015ad581ad8d4cf60794a8..253993b494e89345b63cb5526a88a2e4c8288f75 100644 --- a/src/ClientServer/Controllers/Core/Exercises/ExerciseOverviewController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/ExerciseOverviewController.cs @@ -25,7 +25,7 @@ namespace ClientServer.Controllers.Core.Exercises { public static List<string> possibleLogicalConnectors = new List<string>() {"and", "or"}; - public ExerciseOverviewController(SyndromDbContext context) : base(context) + public ExerciseOverviewController(YapexDbContext context) : base(context) { } @@ -584,7 +584,7 @@ namespace ClientServer.Controllers.Core.Exercises || p.GroupRole.GroupRolePermission.CanChangeExercises || p.GroupRole.GroupRolePermission.CanDeleteExercises || p.GroupRole.GroupRolePermission.CanAssessExercises - || p.GroupRole.GroupRolePermission.CanReleaseExercises + || p.GroupRole.GroupRolePermission.CanManageExerciseReleases || p.GroupRole.GroupRolePermission.CanSeeExercisesFromOthersInGroup ) ) @@ -605,7 +605,7 @@ namespace ClientServer.Controllers.Core.Exercises canChangeExercises: p.GroupRole.GroupRolePermission.CanChangeExercises, canCreateExercises: p.GroupRole.GroupRolePermission.CanCreateExercises, canAssessExercises: p.GroupRole.GroupRolePermission.CanAssessExercises, - canReleaseExercises: p.GroupRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: p.GroupRole.GroupRolePermission.CanManageExerciseReleases, canDeleteExercises: p.GroupRole.GroupRolePermission.CanDeleteExercises, canAddUserToGroup: p.GroupRole.GroupRolePermission.CanAddUserToGroup, canLockExercisesPermanently: p.GroupRole.GroupRolePermission.CanLockExercisesPermanently, @@ -651,7 +651,7 @@ namespace ClientServer.Controllers.Core.Exercises || p.GroupRole.GroupRolePermission .CanAssessExercises || p.GroupRole.GroupRolePermission - .CanReleaseExercises + .CanManageExerciseReleases || p.GroupRole.GroupRolePermission .CanSeeExercisesFromOthersInGroup )) @@ -1084,7 +1084,7 @@ namespace ClientServer.Controllers.Core.Exercises || groupPermission.CanChangeExercises || groupPermission.CanDeleteExercises || groupPermission.CanAssessExercises - || groupPermission.CanReleaseExercises + || groupPermission.CanManageExerciseReleases || groupPermission.CanSeeExercisesFromOthersInGroup || exercise.UserId == userId //or it's our own exercise ) @@ -1144,7 +1144,7 @@ namespace ClientServer.Controllers.Core.Exercises canCreateExercises: managingGroupConnection.GroupRole.GroupRolePermission.CanCreateExercises, canAssessExercises: managingGroupConnection.GroupRole.GroupRolePermission.CanAssessExercises, canDeleteExercises: managingGroupConnection.GroupRole.GroupRolePermission.CanDeleteExercises, - canReleaseExercises: managingGroupConnection.GroupRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: managingGroupConnection.GroupRole.GroupRolePermission.CanManageExerciseReleases, canAddUserToGroup: managingGroupConnection.GroupRole.GroupRolePermission.CanAddUserToGroup, canLockExercisesPermanently: managingGroupConnection.GroupRole.GroupRolePermission .CanLockExercisesPermanently, diff --git a/src/ClientServer/Controllers/Core/Exercises/PLangController.cs b/src/ClientServer/Controllers/Core/Exercises/PLangController.cs index 7a7640e1ec310469f081b08ddc2e373c2d5f82f7..56c2fe647b838e286e5e5b4575f67e16aed63456 100644 --- a/src/ClientServer/Controllers/Core/Exercises/PLangController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/PLangController.cs @@ -17,7 +17,7 @@ namespace ClientServer.Controllers.Core.Exercises [Route(Constants.ApiPrefix + "plangs")] public class PLangController : ControllerWithDb { - public PLangController(SyndromDbContext context) : base(context) + public PLangController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/ReleaseController.cs b/src/ClientServer/Controllers/Core/Exercises/ReleaseController.cs index a6fdd5b785cef62459c8bc6ea595c27f05c07074..1bf2cfa1d103038658e822baef9d3a53b5ba9c12 100644 --- a/src/ClientServer/Controllers/Core/Exercises/ReleaseController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/ReleaseController.cs @@ -19,7 +19,7 @@ namespace ClientServer.Controllers.Core.Exercises [Route(Constants.ApiPrefix + "exercise/releases")] public class ReleaseController : ControllerWithDb { - public ReleaseController(SyndromDbContext context) : base(context) + public ReleaseController(YapexDbContext context) : base(context) { } @@ -52,7 +52,7 @@ namespace ClientServer.Controllers.Core.Exercises .FirstOrDefaultAsync(); if (!await base.HasGroupPermission(targetUserGroup, - permission => permission != null && permission.CanReleaseExercises)) + permission => permission != null && permission.CanManageExerciseReleases)) { await Response.WriteAsync( @@ -313,11 +313,11 @@ namespace ClientServer.Controllers.Core.Exercises .FirstOrDefaultAsync(); if (!await base.HasGroupPermission(targetUserGroup, - permission => permission != null && permission.CanReleaseExercises)) + permission => permission != null && permission.CanManageExerciseReleases)) { await Response.WriteAsync( - Jc.Serialize(new BasicResponse(ResponseCode.NoPermission, "not permission"))); + Jc.Serialize(new BasicResponse(ResponseCode.NoPermission, "no permission"))); return; } @@ -704,7 +704,21 @@ namespace ClientServer.Controllers.Core.Exercises Jc.Serialize(new BasicResponse(ResponseCode.InvalidRequest, "invalid release id"))); return; } + + //the user group that manages the exercise + var targetUserGroup = + await _context.ExerciseReleases.Where(p => p.Id == releaseId) + .Select(p => p.Exercise.UserGroupId) + .FirstOrDefaultAsync(); + if (!await base.HasGroupPermission(targetUserGroup, + permission => permission != null && permission.CanManageExerciseReleases)) + { + await + Response.WriteAsync( + Jc.Serialize(new BasicResponse(ResponseCode.NoPermission, "no permission"))); + return; + } var release = await _context.ExerciseReleases .FirstOrDefaultAsync(p => p.Id == releaseId); @@ -799,7 +813,7 @@ namespace ClientServer.Controllers.Core.Exercises if (!await base.HasGroupPermission(targetUserGroup, permission => permission != null && - (permission.CanReleaseExercises || permission.CanAssessExercises + (permission.CanManageExerciseReleases || permission.CanAssessExercises ) )) { @@ -988,7 +1002,7 @@ namespace ClientServer.Controllers.Core.Exercises if (!await base.HasGroupPermission(targetUserGroup, permission => permission != null && - (permission.CanReleaseExercises || permission.CanAssessExercises + (permission.CanManageExerciseReleases || permission.CanAssessExercises ) )) { diff --git a/src/ClientServer/Controllers/Core/Exercises/SubmissionController.cs b/src/ClientServer/Controllers/Core/Exercises/SubmissionController.cs index 1bbfd87639b76e571648874b28c4192b13b8d9ae..9dd5198d9bea85d063b8b53f8983238e8e095ae5 100644 --- a/src/ClientServer/Controllers/Core/Exercises/SubmissionController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/SubmissionController.cs @@ -42,7 +42,7 @@ namespace ClientServer.Controllers.Core.Exercises /// </summary> public readonly static string DefaultSubmissionWithCodeTemplatesDirName = "template"; - public SubmissionController(SyndromDbContext context) : base(context) + public SubmissionController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/TagsController.cs b/src/ClientServer/Controllers/Core/Exercises/TagsController.cs index fe2887aedd61624ab51326618ad0d27e4bd72389..90a7ab41d92e5cb8083f71c3f35afe19fff294f3 100644 --- a/src/ClientServer/Controllers/Core/Exercises/TagsController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/TagsController.cs @@ -17,7 +17,7 @@ namespace ClientServer.Controllers.Core.Exercises [Route(Constants.ApiPrefix + "tags")] public class TagsController : ControllerWithDb { - public TagsController(SyndromDbContext context) : base(context) + public TagsController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/TestTypesController.cs b/src/ClientServer/Controllers/Core/Exercises/TestTypesController.cs index 564dd368fa1d05e1ad3347ff53cbf7239294f603..110c605115b9c8ea67d7dd3eef1189684b4e8265 100644 --- a/src/ClientServer/Controllers/Core/Exercises/TestTypesController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/TestTypesController.cs @@ -18,7 +18,7 @@ namespace ClientServer.Controllers.Core.Exercises [Route(Constants.ApiPrefix + "testtypes")] public class TestTypesController : ControllerWithDb { - public TestTypesController(SyndromDbContext context) : base(context) + public TestTypesController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Exercises/TutorViewAssessmentController.cs b/src/ClientServer/Controllers/Core/Exercises/TutorViewAssessmentController.cs index 4a2cec3d513cf17a406f4c1532a3c50f991e01f2..a0ecd8c80faf39fa6aa1739ee2a7accc6a3bee1b 100644 --- a/src/ClientServer/Controllers/Core/Exercises/TutorViewAssessmentController.cs +++ b/src/ClientServer/Controllers/Core/Exercises/TutorViewAssessmentController.cs @@ -24,7 +24,7 @@ namespace ClientServer.Controllers.Core.Exercises [Route(Constants.ApiPrefix + "tutor/view/assessment")] public class TutorViewAssessmentController : ControllerWithDb { - public TutorViewAssessmentController(SyndromDbContext context) : base(context) + public TutorViewAssessmentController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Init.cs b/src/ClientServer/Controllers/Core/Init.cs index 1b6821f2d478851f2d814c173e5910cf9632d6f3..e13624169b5b486eeddc2d9c9f91e870be50c67c 100644 --- a/src/ClientServer/Controllers/Core/Init.cs +++ b/src/ClientServer/Controllers/Core/Init.cs @@ -23,10 +23,10 @@ namespace ClientServer.Controllers.Core [Route(Constants.InitControllerAbsolutePath)] public class Init : Controller { - private readonly SyndromDbContext _context; + private readonly YapexDbContext _context; - public Init(SyndromDbContext context) + public Init(YapexDbContext context) { _context = context; } @@ -340,10 +340,10 @@ namespace ClientServer.Controllers.Core { OriginalName = descriptionAsset.DisplayName, CreatedAt = (DateTime) _context.Entry(descriptionAsset) - .Property(SyndromDbContext.CreatedAt) + .Property(YapexDbContext.CreatedAt) .CurrentValue, LastUpdatedAt = (DateTime) _context.Entry(descriptionAsset) - .Property(SyndromDbContext.LastUpdatedAt).CurrentValue, + .Property(YapexDbContext.LastUpdatedAt).CurrentValue, MimeType = descriptionAsset.MimeType, SizeInBytes = descriptionAsset.Content.Length, Hash = "", @@ -508,10 +508,10 @@ namespace ClientServer.Controllers.Core { OriginalName = testAsset.DisplayName, CreatedAt = (DateTime) _context.Entry(testAsset) - .Property(SyndromDbContext.CreatedAt) + .Property(YapexDbContext.CreatedAt) .CurrentValue, LastUpdatedAt = (DateTime) _context.Entry(testAsset) - .Property(SyndromDbContext.LastUpdatedAt).CurrentValue, + .Property(YapexDbContext.LastUpdatedAt).CurrentValue, MimeType = testAsset.MimeType, SizeInBytes = testAsset.Content.Length, Hash = "", @@ -616,10 +616,10 @@ namespace ClientServer.Controllers.Core { OriginalName = customTestAsset.DisplayName, CreatedAt = (DateTime) _context.Entry(customTestAsset) - .Property(SyndromDbContext.CreatedAt) + .Property(YapexDbContext.CreatedAt) .CurrentValue, LastUpdatedAt = (DateTime) _context.Entry(customTestAsset) - .Property(SyndromDbContext.LastUpdatedAt).CurrentValue, + .Property(YapexDbContext.LastUpdatedAt).CurrentValue, MimeType = customTestAsset.MimeType, SizeInBytes = customTestAsset.Content.Length, Hash = "", @@ -725,10 +725,10 @@ namespace ClientServer.Controllers.Core { OriginalName = customAsset.DisplayName, CreatedAt = (DateTime) _context.Entry(customAsset) - .Property(SyndromDbContext.CreatedAt) + .Property(YapexDbContext.CreatedAt) .CurrentValue, LastUpdatedAt = (DateTime) _context.Entry(customAsset) - .Property(SyndromDbContext.LastUpdatedAt).CurrentValue, + .Property(YapexDbContext.LastUpdatedAt).CurrentValue, MimeType = customAsset.MimeType, SizeInBytes = customAsset.Content.Length, Hash = "", @@ -894,10 +894,10 @@ namespace ClientServer.Controllers.Core { OriginalName = customProjectTestAsset.DisplayName, CreatedAt = (DateTime) _context.Entry(customProjectTestAsset) - .Property(SyndromDbContext.CreatedAt) + .Property(YapexDbContext.CreatedAt) .CurrentValue, LastUpdatedAt = (DateTime) _context.Entry(customProjectTestAsset) - .Property(SyndromDbContext.LastUpdatedAt).CurrentValue, + .Property(YapexDbContext.LastUpdatedAt).CurrentValue, MimeType = customProjectTestAsset.MimeType, SizeInBytes = customProjectTestAsset.Content.Length, Hash = "", diff --git a/src/ClientServer/Controllers/Core/Login/AuthController.cs b/src/ClientServer/Controllers/Core/Login/AuthController.cs index 1e0c535a46e510b510394812b2e0dba49fb7e2e3..a69354d256d35cc4ad9a3d6db93ce44327077ff4 100644 --- a/src/ClientServer/Controllers/Core/Login/AuthController.cs +++ b/src/ClientServer/Controllers/Core/Login/AuthController.cs @@ -24,7 +24,7 @@ namespace ClientServer.Controllers.Core.Login //[EnableCors("CorsPolicy")] public class AuthController : ControllerWithDb { - public AuthController(SyndromDbContext context) : base(context) + public AuthController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Login/AuthTokenController.cs b/src/ClientServer/Controllers/Core/Login/AuthTokenController.cs index 2c0356e0b9f4b282ab9ffc4646add2a8d3e10882..4a942a76341d7b084011aca5c60fe6dd08cafdd2 100644 --- a/src/ClientServer/Controllers/Core/Login/AuthTokenController.cs +++ b/src/ClientServer/Controllers/Core/Login/AuthTokenController.cs @@ -25,7 +25,7 @@ namespace ClientServer.Controllers.Core.Login } - public AuthTokenController(SyndromDbContext context) : base(context) + public AuthTokenController(YapexDbContext context) : base(context) { } @@ -125,7 +125,7 @@ namespace ClientServer.Controllers.Core.Login /// <param name="oldToken"></param> /// <param name="_context"></param> /// <returns></returns> - public static async Task<string> _ExtendTokenLifetime(int userId, AuthToken oldToken, SyndromDbContext _context) + public static async Task<string> _ExtendTokenLifetime(int userId, AuthToken oldToken, YapexDbContext _context) { Contract.Requires(_context.Users.Any(p => p.Id == userId)); diff --git a/src/ClientServer/Controllers/Core/Misc/LangController.cs b/src/ClientServer/Controllers/Core/Misc/LangController.cs index 02adddf857b62153641334f71d72e259f398a16c..45e840ba769ef99a866ef873e9244f0edc5c72b7 100644 --- a/src/ClientServer/Controllers/Core/Misc/LangController.cs +++ b/src/ClientServer/Controllers/Core/Misc/LangController.cs @@ -20,7 +20,7 @@ namespace ClientServer.Controllers.Core.Exercises { static SemaphoreSlim semaphoreSlim = new SemaphoreSlim(1, 1); - public LangController(SyndromDbContext context) : base(context) + public LangController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/SystemSettingsController.cs b/src/ClientServer/Controllers/Core/SystemSettingsController.cs index a8ca00e4bebcae123c857fdc98bac5532b124ecc..45c30477dcaeb0c79bc8488e49787b638c8dc7f2 100644 --- a/src/ClientServer/Controllers/Core/SystemSettingsController.cs +++ b/src/ClientServer/Controllers/Core/SystemSettingsController.cs @@ -35,7 +35,7 @@ namespace ClientServer.Controllers.Core HardCompileTimeoutInMs = -1, }; - public SystemSettingsController(SyndromDbContext context) : base(context) + public SystemSettingsController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Testing/TestingController.cs b/src/ClientServer/Controllers/Core/Testing/TestingController.cs index a6b18bec7a68c24091613c4da4e40802e20ab056..a71f5c5e3da3fd8b248be0fdfc19b5d1d0d21e9b 100644 --- a/src/ClientServer/Controllers/Core/Testing/TestingController.cs +++ b/src/ClientServer/Controllers/Core/Testing/TestingController.cs @@ -72,7 +72,7 @@ namespace ClientServer.Controllers.Core.Testing //private static string TestServerApiUrl = "http://192.168.145.128:8001/api.php"; - public TestingController(SyndromDbContext context) : base(context) + public TestingController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/TimeController.cs b/src/ClientServer/Controllers/Core/TimeController.cs index 1d23522f244283811c98556a1806e7f2931805e8..745c6ad4bd1daa4c06a2c824db2e16c7ae1f1ced 100644 --- a/src/ClientServer/Controllers/Core/TimeController.cs +++ b/src/ClientServer/Controllers/Core/TimeController.cs @@ -13,7 +13,7 @@ namespace ClientServer.Controllers.Core [Route(Constants.ApiPrefix + "time")] public class TimeController : ControllerWithDb { - public TimeController(SyndromDbContext context) : base(context) + public TimeController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Users/GroupController.cs b/src/ClientServer/Controllers/Core/Users/GroupController.cs index fc6cbe213fd72278b65adb8bce8909aebc1079e2..3c7d1b2fa383b0c1409a97092820249cd437aeba 100644 --- a/src/ClientServer/Controllers/Core/Users/GroupController.cs +++ b/src/ClientServer/Controllers/Core/Users/GroupController.cs @@ -17,7 +17,7 @@ namespace ClientServer.Controllers.Core.Users [Route(Constants.ApiPrefix + "groups")] public class GroupController : ControllerWithDb { - public GroupController(SyndromDbContext context) : base(context) + public GroupController(YapexDbContext context) : base(context) { } @@ -321,7 +321,7 @@ namespace ClientServer.Controllers.Core.Users canChangeExercises: userWithUserGroup.GroupRole.GroupRolePermission.CanChangeExercises, canCreateExercises: userWithUserGroup.GroupRole.GroupRolePermission.CanCreateExercises, canAssessExercises: userWithUserGroup.GroupRole.GroupRolePermission.CanAssessExercises, - canReleaseExercises: userWithUserGroup.GroupRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: userWithUserGroup.GroupRole.GroupRolePermission.CanManageExerciseReleases, canDeleteExercises: userWithUserGroup.GroupRole.GroupRolePermission.CanDeleteExercises, canAddUserToGroup: userWithUserGroup.GroupRole.GroupRolePermission.CanAddUserToGroup, canLockExercisesPermanently: userWithUserGroup.GroupRole.GroupRolePermission.CanLockExercisesPermanently, @@ -393,7 +393,7 @@ namespace ClientServer.Controllers.Core.Users canChangeExercises: connection.GroupRole.GroupRolePermission.CanChangeExercises, canCreateExercises: connection.GroupRole.GroupRolePermission.CanCreateExercises, canAssessExercises: connection.GroupRole.GroupRolePermission.CanAssessExercises, - canReleaseExercises: connection.GroupRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: connection.GroupRole.GroupRolePermission.CanManageExerciseReleases, canDeleteExercises: connection.GroupRole.GroupRolePermission.CanDeleteExercises, canAddUserToGroup: connection.GroupRole.GroupRolePermission.CanAddUserToGroup, canLockExercisesPermanently: connection.GroupRole.GroupRolePermission.CanLockExercisesPermanently, @@ -987,7 +987,7 @@ namespace ClientServer.Controllers.Core.Users canChangeExercises: groupRole.GroupRolePermission.CanChangeExercises, canDeleteExercises: groupRole.GroupRolePermission.CanDeleteExercises, canLockExercisesPermanently: connection.GroupRole.GroupRolePermission.CanLockExercisesPermanently, - canReleaseExercises: groupRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: groupRole.GroupRolePermission.CanManageExerciseReleases, canRemoveMemberFromGroup: groupRole.GroupRolePermission.CanRemoveMemberFromGroup, canSeeExercisesFromOthersInGroup: groupRole.GroupRolePermission.CanSeeExercisesFromOthersInGroup, canSeeOtherMembers: connection.GroupRole.GroupRolePermission.CanSeeOtherMembers, diff --git a/src/ClientServer/Controllers/Core/Users/GroupRolesController.cs b/src/ClientServer/Controllers/Core/Users/GroupRolesController.cs index efc40b88e3f247d887f33bc20ad4e4f8302be47d..4ed84ab6c944943f334496322595d2052cc44571 100644 --- a/src/ClientServer/Controllers/Core/Users/GroupRolesController.cs +++ b/src/ClientServer/Controllers/Core/Users/GroupRolesController.cs @@ -17,7 +17,7 @@ namespace ClientServer.Controllers.Core.Users [Route(Constants.ApiPrefix + "grouproles")] public class GroupRolesController : ControllerWithDb { - public GroupRolesController(SyndromDbContext context) : base(context) + public GroupRolesController(YapexDbContext context) : base(context) { } @@ -76,7 +76,7 @@ namespace ClientServer.Controllers.Core.Users canChangeExercises: groupRole.GroupRolePermission.CanChangeExercises, canDeleteExercises: groupRole.GroupRolePermission.CanDeleteExercises, canLockExercisesPermanently: groupRole.GroupRolePermission.CanLockExercisesPermanently, - canReleaseExercises: groupRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: groupRole.GroupRolePermission.CanManageExerciseReleases, canRemoveMemberFromGroup: groupRole.GroupRolePermission.CanRemoveMemberFromGroup, canSeeExercisesFromOthersInGroup: groupRole.GroupRolePermission.CanSeeExercisesFromOthersInGroup, canSeeOtherMembers: groupRole.GroupRolePermission.CanSeeOtherMembers, @@ -146,7 +146,7 @@ namespace ClientServer.Controllers.Core.Users canChangeExercises: groupRole.GroupRolePermission.CanChangeExercises, canDeleteExercises: groupRole.GroupRolePermission.CanDeleteExercises, canLockExercisesPermanently: groupRole.GroupRolePermission.CanLockExercisesPermanently, - canReleaseExercises: groupRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: groupRole.GroupRolePermission.CanManageExerciseReleases, canRemoveMemberFromGroup: groupRole.GroupRolePermission.CanRemoveMemberFromGroup, canSeeExercisesFromOthersInGroup: groupRole.GroupRolePermission.CanSeeExercisesFromOthersInGroup, canSeeOtherMembers: groupRole.GroupRolePermission.CanSeeOtherMembers, @@ -194,7 +194,7 @@ namespace ClientServer.Controllers.Core.Users CanSeeExercisesFromOthersInGroup: role.CanSeeExercisesFromOthersInGroup, CanRemoveMemberFromGroup: role.CanRemoveMemberFromGroup, CanChangeExercises: role.CanChangeExercises, - CanReleaseExercises: role.CanReleaseExercises, + canManageExerciseReleases: role.CanReleaseExercises, CanSeeOtherMembers: role.CanSeeExercisesFromOthersInGroup, CanChangeGroupData: role.CanChangeGroupData ) @@ -220,7 +220,7 @@ namespace ClientServer.Controllers.Core.Users canChangeExercises: newRole.GroupRolePermission.CanChangeExercises, canCreateExercises: newRole.GroupRolePermission.CanCreateExercises, canRemoveMemberFromGroup: newRole.GroupRolePermission.CanRemoveMemberFromGroup, - canReleaseExercises: newRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: newRole.GroupRolePermission.CanManageExerciseReleases, canAddUserToGroup: newRole.GroupRolePermission.CanAddUserToGroup, canDeleteExercises: newRole.GroupRolePermission.CanDeleteExercises, canLockExercisesPermanently: newRole.GroupRolePermission.CanLockExercisesPermanently, @@ -279,7 +279,7 @@ namespace ClientServer.Controllers.Core.Users oldRole.GroupRolePermission.CanSeeExercisesFromOthersInGroup = role.CanSeeExercisesFromOthersInGroup; oldRole.GroupRolePermission.CanRemoveMemberFromGroup = role.CanRemoveMemberFromGroup; oldRole.GroupRolePermission.CanChangeExercises = role.CanChangeExercises; - oldRole.GroupRolePermission.CanReleaseExercises = role.CanReleaseExercises; + oldRole.GroupRolePermission.CanManageExerciseReleases = role.CanReleaseExercises; oldRole.GroupRolePermission.CanSeeOtherMembers = role.CanSeeOtherMembers; oldRole.GroupRolePermission.CanChangeGroupData = role.CanChangeGroupData; @@ -301,7 +301,7 @@ namespace ClientServer.Controllers.Core.Users canChangeExercises: oldRole.GroupRolePermission.CanChangeExercises, canCreateExercises: oldRole.GroupRolePermission.CanCreateExercises, canRemoveMemberFromGroup: oldRole.GroupRolePermission.CanRemoveMemberFromGroup, - canReleaseExercises: oldRole.GroupRolePermission.CanReleaseExercises, + canReleaseExercises: oldRole.GroupRolePermission.CanManageExerciseReleases, canAddUserToGroup: oldRole.GroupRolePermission.CanAddUserToGroup, canDeleteExercises: oldRole.GroupRolePermission.CanDeleteExercises, canLockExercisesPermanently: oldRole.GroupRolePermission.CanLockExercisesPermanently, diff --git a/src/ClientServer/Controllers/Core/Users/SystemRolesController.cs b/src/ClientServer/Controllers/Core/Users/SystemRolesController.cs index 611c5d344dfb6f2041f101110c5699c9829347bf..cf9eac18f1fc0aa0421dd759fa7dfb6db54e5c41 100644 --- a/src/ClientServer/Controllers/Core/Users/SystemRolesController.cs +++ b/src/ClientServer/Controllers/Core/Users/SystemRolesController.cs @@ -18,7 +18,7 @@ namespace ClientServer.Controllers.Core.Users [Route(Constants.ApiPrefix + "systemroles")] public class SystemRolesController : ControllerWithDb { - public SystemRolesController(SyndromDbContext context) : base(context) + public SystemRolesController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Users/UserSettingsController.cs b/src/ClientServer/Controllers/Core/Users/UserSettingsController.cs index ad0dc94e2c61fa8ca80e0ab4f304dffbdf674eda..4f23c68007dc450e15c46cef5e48de488cbc7c91 100644 --- a/src/ClientServer/Controllers/Core/Users/UserSettingsController.cs +++ b/src/ClientServer/Controllers/Core/Users/UserSettingsController.cs @@ -19,7 +19,7 @@ namespace ClientServer.Controllers.Core.Users [Route(Constants.ApiPrefix + "user/settings")] public class UserSettingsController : ControllerWithDb { - public UserSettingsController(SyndromDbContext context) : base(context) + public UserSettingsController(YapexDbContext context) : base(context) { } diff --git a/src/ClientServer/Controllers/Core/Users/UsersController.cs b/src/ClientServer/Controllers/Core/Users/UsersController.cs index 31c9de40a2764be3d47ce15ba927e7a8d8d01171..b768c52eb8982480d399cd0e9b2e09b1b1f159ec 100644 --- a/src/ClientServer/Controllers/Core/Users/UsersController.cs +++ b/src/ClientServer/Controllers/Core/Users/UsersController.cs @@ -20,7 +20,7 @@ namespace ClientServer.Controllers.Core.Users //frontend also hashes... public static string EmptyStringPw = PasswordHelper.HashLikeFrontend(""); - public UsersController(SyndromDbContext context) : base(context) + public UsersController(YapexDbContext context) : base(context) { } @@ -32,7 +32,7 @@ namespace ClientServer.Controllers.Core.Users /// <param name="userId">the user id</param> /// <param name="context">the db context</param> /// <returns></returns> - internal static async Task<UserDataFullBase> _GetUserData(int userId, SyndromDbContext context) + internal static async Task<UserDataFullBase> _GetUserData(int userId, YapexDbContext context) { User matchedUser = await context.Users .Include(p => p.SystemRole) diff --git a/src/ClientServer/Controllers/dashboard/DashboardController.cs b/src/ClientServer/Controllers/dashboard/DashboardController.cs index 802151f29cb117b56603c40b951150987466011d..f2fac83896023c2cb59de9b21f23b46b7e6cb655 100644 --- a/src/ClientServer/Controllers/dashboard/DashboardController.cs +++ b/src/ClientServer/Controllers/dashboard/DashboardController.cs @@ -30,7 +30,7 @@ namespace ClientServer.Controllers /// </summary> public static int OnlineUserIdleInMin = 5; - public DashboardController(SyndromDbContext context) : base(context) + public DashboardController(YapexDbContext context) : base(context) { } @@ -260,7 +260,7 @@ namespace ClientServer.Controllers var maxIdleTime = new TimeSpan(0, OnlineUserIdleInMin, 0); int maybeOnlineUsers = await _context.AuthTokens - .CountAsync(p => (now - EF.Property<DateTime>(p, SyndromDbContext.LastUpdatedAt)) <= maxIdleTime) + .CountAsync(p => (now - EF.Property<DateTime>(p, YapexDbContext.LastUpdatedAt)) <= maxIdleTime) ; //now take all users that have done something in the last minute (maxIdleTime).. diff --git a/src/ClientServer/Db/SyndromDBContext.cs b/src/ClientServer/Db/YapexDbContext.cs similarity index 97% rename from src/ClientServer/Db/SyndromDBContext.cs rename to src/ClientServer/Db/YapexDbContext.cs index 147293668179f0a0dc6ff09a12834753353a0a8d..a72d1576c96de4b3caaf6ffe61e0d521aeb8976f 100644 --- a/src/ClientServer/Db/SyndromDBContext.cs +++ b/src/ClientServer/Db/YapexDbContext.cs @@ -20,36 +20,7 @@ using Microsoft.EntityFrameworkCore.Metadata; namespace ClientServer.Db { - //table n:n naming syntax: Table1_With_Table2(_As_BetterName) - //e.g. ExerciseWithUserAsSolution - - /* a n:n table needs to handle delete bahavior e.g. user 1 -> 1..* UserWithUserGroup 1..*<- 1 UserGroup - * the n:n table - * in this case the config should be as this: - * - - m.Entity<UserGroup>() - .HasMany(p => p.UserWithUserGroups) - .WithOne(p => p.UserGroup) - .HasForeignKey(p => new { p.UserId, p.UserGroupId }) - .IsRequired() - .OnDelete(DeleteBehavior.Cascade) //delete userWithUserGroup when the userGroup is deleted - ; - - //extra config for n:n table - m.Entity<UserWithUserGroup>() - .HasOne(p => p.UserGroup) - .WithMany(p => p.UserWithUserGroups) - .HasForeignKey(p => p.UserGroupId) - .IsRequired() - .OnDelete(DeleteBehavior.Cascade) - ; - - * - */ - - - public class SyndromDbContext : DbContext + public class YapexDbContext : DbContext { /// <summary> @@ -234,7 +205,7 @@ namespace ClientServer.Db typeof(AuthToken), }; - public SyndromDbContext(DbContextOptions options) : base(options) + public YapexDbContext(DbContextOptions options) : base(options) { } diff --git a/src/ClientServer/Migrations/20160824181544_init.Designer.cs b/src/ClientServer/Migrations/20160824181544_init.Designer.cs index 3d57898457271644a73c46f71fbe26b16ce9ea80..5d41f3e541ab86635425602bbf0f67c00d4c55fe 100644 --- a/src/ClientServer/Migrations/20160824181544_init.Designer.cs +++ b/src/ClientServer/Migrations/20160824181544_init.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160824181544_init")] partial class init { diff --git a/src/ClientServer/Migrations/20160827045350_init2.Designer.cs b/src/ClientServer/Migrations/20160827045350_init2.Designer.cs index f2f6a94b126a21329ee5cf23b6266cd13f13b4b5..510860bd0f932b2e040891395a497e60573d3084 100644 --- a/src/ClientServer/Migrations/20160827045350_init2.Designer.cs +++ b/src/ClientServer/Migrations/20160827045350_init2.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160827045350_init2")] partial class init2 { diff --git a/src/ClientServer/Migrations/20160831154002_userSettingsTheme.Designer.cs b/src/ClientServer/Migrations/20160831154002_userSettingsTheme.Designer.cs index 79edffd70a24ca083b7e694f07674108ed48804f..f736968c582d6aae015607d371add639ef9da10e 100644 --- a/src/ClientServer/Migrations/20160831154002_userSettingsTheme.Designer.cs +++ b/src/ClientServer/Migrations/20160831154002_userSettingsTheme.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160831154002_userSettingsTheme")] partial class userSettingsTheme { diff --git a/src/ClientServer/Migrations/20160903141707_init4.Designer.cs b/src/ClientServer/Migrations/20160903141707_init4.Designer.cs index f194b09eefa51f48528603bdffd9531eb668a76c..c2eebf8b467f32d0f0d56926a7c6b87e8e42fb86 100644 --- a/src/ClientServer/Migrations/20160903141707_init4.Designer.cs +++ b/src/ClientServer/Migrations/20160903141707_init4.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160903141707_init4")] partial class init4 { diff --git a/src/ClientServer/Migrations/20160906195429_init5.Designer.cs b/src/ClientServer/Migrations/20160906195429_init5.Designer.cs index 3f5c7524783f92bc12b52a327bc56d04a602d3aa..780b52012245851559a4dd6b54af9ad92f8d1830 100644 --- a/src/ClientServer/Migrations/20160906195429_init5.Designer.cs +++ b/src/ClientServer/Migrations/20160906195429_init5.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160906195429_init5")] partial class init5 { diff --git a/src/ClientServer/Migrations/20160921124646_final1.Designer.cs b/src/ClientServer/Migrations/20160921124646_final1.Designer.cs index 176c21f1ddfc14332f520255dd243b0c546e4e23..77c1452f6b3d039357af8bc94df4768782dad437 100644 --- a/src/ClientServer/Migrations/20160921124646_final1.Designer.cs +++ b/src/ClientServer/Migrations/20160921124646_final1.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160921124646_final1")] partial class final1 { diff --git a/src/ClientServer/Migrations/20160921130105_final2.Designer.cs b/src/ClientServer/Migrations/20160921130105_final2.Designer.cs index e7933f13ec5ede15cb00d4cddb8f0ab515cff2db..014db0dc98e74e6c5b7593ec50f8e8fae7a1c80e 100644 --- a/src/ClientServer/Migrations/20160921130105_final2.Designer.cs +++ b/src/ClientServer/Migrations/20160921130105_final2.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160921130105_final2")] partial class final2 { diff --git a/src/ClientServer/Migrations/20160921155214_final3.Designer.cs b/src/ClientServer/Migrations/20160921155214_final3.Designer.cs index fefad22f662c27866e5e61bf6842c8e31ed09ef0..246c6dbdb372b84ec03770dacc0d2707261a9644 100644 --- a/src/ClientServer/Migrations/20160921155214_final3.Designer.cs +++ b/src/ClientServer/Migrations/20160921155214_final3.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160921155214_final3")] partial class final3 { diff --git a/src/ClientServer/Migrations/20160923095756_final4.Designer.cs b/src/ClientServer/Migrations/20160923095756_final4.Designer.cs index 21059b6ad7de085adaa8817be1fd7af9dd11183e..ffa5752a05a2f414acc6db5666d55819e7833470 100644 --- a/src/ClientServer/Migrations/20160923095756_final4.Designer.cs +++ b/src/ClientServer/Migrations/20160923095756_final4.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20160923095756_final4")] partial class final4 { diff --git a/src/ClientServer/Migrations/20161001124636_tagPermission.Designer.cs b/src/ClientServer/Migrations/20161001124636_tagPermission.Designer.cs index 1fbbb2321b876405df1c6de8ab967594a54110e4..6f478532e5d1e8c2d3c99033ecb1945dc5ec0d1a 100644 --- a/src/ClientServer/Migrations/20161001124636_tagPermission.Designer.cs +++ b/src/ClientServer/Migrations/20161001124636_tagPermission.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20161001124636_tagPermission")] partial class tagPermission { diff --git a/src/ClientServer/Migrations/20161001140957_tagDisplayName2.Designer.cs b/src/ClientServer/Migrations/20161001140957_tagDisplayName2.Designer.cs index 65fdb533db6430ba27388ce08e686c959718a843..6bc42092c633614c5d7a7b42504422615fb74212 100644 --- a/src/ClientServer/Migrations/20161001140957_tagDisplayName2.Designer.cs +++ b/src/ClientServer/Migrations/20161001140957_tagDisplayName2.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20161001140957_tagDisplayName2")] partial class tagDisplayName2 { diff --git a/src/ClientServer/Migrations/20161001142650_deleteTagCascade.Designer.cs b/src/ClientServer/Migrations/20161001142650_deleteTagCascade.Designer.cs index 82daadff52dba778eee246c0c72acd332ceb5dbc..9f6ba7791ad283a90dccb1b735d282a5106a0a64 100644 --- a/src/ClientServer/Migrations/20161001142650_deleteTagCascade.Designer.cs +++ b/src/ClientServer/Migrations/20161001142650_deleteTagCascade.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20161001142650_deleteTagCascade")] partial class deleteTagCascade { diff --git a/src/ClientServer/Migrations/20161220124855_ExerciseAddedNote.Designer.cs b/src/ClientServer/Migrations/20161220124855_ExerciseAddedNote.Designer.cs index bb5698fbf4c5eda7238c36e7ac322ec5e2e51f2c..c1562370fa54590346eb79cc604a47b7604c5ecd 100644 --- a/src/ClientServer/Migrations/20161220124855_ExerciseAddedNote.Designer.cs +++ b/src/ClientServer/Migrations/20161220124855_ExerciseAddedNote.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20161220124855_ExerciseAddedNote")] partial class ExerciseAddedNote { diff --git a/src/ClientServer/Migrations/20170112222129_authTokens.Designer.cs b/src/ClientServer/Migrations/20170112222129_authTokens.Designer.cs index 2c0af9de5d8dec19d41b57d135c277dea7d43fce..231bf298fb058d1d428092ea905da47c6271cbe7 100644 --- a/src/ClientServer/Migrations/20170112222129_authTokens.Designer.cs +++ b/src/ClientServer/Migrations/20170112222129_authTokens.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20170112222129_authTokens")] partial class authTokens { diff --git a/src/ClientServer/Migrations/20170307190625_lang.Designer.cs b/src/ClientServer/Migrations/20170307190625_lang.Designer.cs index 12ad49d0e5d345f532c3c67e20ef33c83d4b554c..5d11ad759fd4dcb1b3f474742490268095c18fa8 100644 --- a/src/ClientServer/Migrations/20170307190625_lang.Designer.cs +++ b/src/ClientServer/Migrations/20170307190625_lang.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20170307190625_lang")] partial class lang { diff --git a/src/ClientServer/Migrations/20171009190359_tagBackgroundColor.Designer.cs b/src/ClientServer/Migrations/20171009190359_tagBackgroundColor.Designer.cs index 8291512ad01c9502bd6484503a969d99628b8359..653a853e42874998cda52cbe84e5c60b504e3265 100755 --- a/src/ClientServer/Migrations/20171009190359_tagBackgroundColor.Designer.cs +++ b/src/ClientServer/Migrations/20171009190359_tagBackgroundColor.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171009190359_tagBackgroundColor")] partial class tagBackgroundColor { diff --git a/src/ClientServer/Migrations/20171009191709_tagDescription.Designer.cs b/src/ClientServer/Migrations/20171009191709_tagDescription.Designer.cs index 42b85b422444ab1f121fa0f13ccab99560d9c015..7be5ef637c8ff1ac7c6e0b427cc27b9b0724fa63 100755 --- a/src/ClientServer/Migrations/20171009191709_tagDescription.Designer.cs +++ b/src/ClientServer/Migrations/20171009191709_tagDescription.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171009191709_tagDescription")] partial class tagDescription { diff --git a/src/ClientServer/Migrations/20171012120923_tutorFreedback.Designer.cs b/src/ClientServer/Migrations/20171012120923_tutorFreedback.Designer.cs index 6d7daed7fab57756dababfa05846ced44f029496..5a2a67911cc145ed982e583d50bdc4297012ae67 100644 --- a/src/ClientServer/Migrations/20171012120923_tutorFreedback.Designer.cs +++ b/src/ClientServer/Migrations/20171012120923_tutorFreedback.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171012120923_tutorFreedback")] partial class tutorFreedback { diff --git a/src/ClientServer/Migrations/20171015132006_enabledNullableAssessmentPoints.Designer.cs b/src/ClientServer/Migrations/20171015132006_enabledNullableAssessmentPoints.Designer.cs index 980f11c8104d1442e8c60c00ada50b752a0a54f1..b735cabc6df160bcba97c2e56d4d2e04fb67b08e 100644 --- a/src/ClientServer/Migrations/20171015132006_enabledNullableAssessmentPoints.Designer.cs +++ b/src/ClientServer/Migrations/20171015132006_enabledNullableAssessmentPoints.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171015132006_enabledNullableAssessmentPoints")] partial class enabledNullableAssessmentPoints { diff --git a/src/ClientServer/Migrations/20171025160923_uniqueAuthToken.Designer.cs b/src/ClientServer/Migrations/20171025160923_uniqueAuthToken.Designer.cs index 7dfd55fb3da3401c4c71215fd447784a2262259c..c7da8f51bf5bc9708b0dbe48cfc43f0db61d4566 100755 --- a/src/ClientServer/Migrations/20171025160923_uniqueAuthToken.Designer.cs +++ b/src/ClientServer/Migrations/20171025160923_uniqueAuthToken.Designer.cs @@ -7,7 +7,7 @@ using ClientServer.Db; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171025160923_uniqueAuthToken")] partial class uniqueAuthToken { diff --git a/src/ClientServer/Migrations/20171106184650_participationShouldNotCount.Designer.cs b/src/ClientServer/Migrations/20171106184650_participationShouldNotCount.Designer.cs index 803dddc39ba45db2c1be1bb5305863df4b5e8d22..86ecc3c5d79a8ead2221189d60c6fad91a9e2cc4 100755 --- a/src/ClientServer/Migrations/20171106184650_participationShouldNotCount.Designer.cs +++ b/src/ClientServer/Migrations/20171106184650_participationShouldNotCount.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171106184650_participationShouldNotCount")] partial class participationShouldNotCount { diff --git a/src/ClientServer/Migrations/20171109144627_customProjects.Designer.cs b/src/ClientServer/Migrations/20171109144627_customProjects.Designer.cs index 2abe853182c3671bddb15e4cb5caab8fcb57930f..8d11c6d5f790ec29a0b91c6e2e3117e7e0b82a40 100755 --- a/src/ClientServer/Migrations/20171109144627_customProjects.Designer.cs +++ b/src/ClientServer/Migrations/20171109144627_customProjects.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171109144627_customProjects")] partial class customProjects { diff --git a/src/ClientServer/Migrations/20171110153042_customProjectTestsWeights.Designer.cs b/src/ClientServer/Migrations/20171110153042_customProjectTestsWeights.Designer.cs index d220225c86a10f30719dbeb76af276a26e94b922..2123e897aa535372cd26bf8698990a74380b8a82 100755 --- a/src/ClientServer/Migrations/20171110153042_customProjectTestsWeights.Designer.cs +++ b/src/ClientServer/Migrations/20171110153042_customProjectTestsWeights.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171110153042_customProjectTestsWeights")] partial class customProjectTestsWeights { diff --git a/src/ClientServer/Migrations/20171229135558_dashboardSystemRolePermission.Designer.cs b/src/ClientServer/Migrations/20171229135558_dashboardSystemRolePermission.Designer.cs index ce38be3e82cf6e8e145e5584d9a649f3568dffa1..6a2a60bd39b78514c30f453df14ea09cf1c72889 100755 --- a/src/ClientServer/Migrations/20171229135558_dashboardSystemRolePermission.Designer.cs +++ b/src/ClientServer/Migrations/20171229135558_dashboardSystemRolePermission.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20171229135558_dashboardSystemRolePermission")] partial class dashboardSystemRolePermission { diff --git a/src/ClientServer/Migrations/20180214130057_ReleaseEExamOptions.Designer.cs b/src/ClientServer/Migrations/20180214130057_ReleaseEExamOptions.Designer.cs index f57c437430c8219fdb91cbaea5a240d905669251..4e5dcc8c74cb1fc8cda258ca522854722551b557 100755 --- a/src/ClientServer/Migrations/20180214130057_ReleaseEExamOptions.Designer.cs +++ b/src/ClientServer/Migrations/20180214130057_ReleaseEExamOptions.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180214130057_ReleaseEExamOptions")] partial class ReleaseEExamOptions { diff --git a/src/ClientServer/Migrations/20180215112957_ReleaseHideSiteHeaderBar.Designer.cs b/src/ClientServer/Migrations/20180215112957_ReleaseHideSiteHeaderBar.Designer.cs index 162a77db3defbd96405e07a5cfce2aa3ee18d457..270ddcd9649fbd636d188351d89b59fddc7d2fe2 100755 --- a/src/ClientServer/Migrations/20180215112957_ReleaseHideSiteHeaderBar.Designer.cs +++ b/src/ClientServer/Migrations/20180215112957_ReleaseHideSiteHeaderBar.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180215112957_ReleaseHideSiteHeaderBar")] partial class ReleaseHideSiteHeaderBar { diff --git a/src/ClientServer/Migrations/20180912160339_removeSolutionVersion1.Designer.cs b/src/ClientServer/Migrations/20180912160339_removeSolutionVersion1.Designer.cs index 873ef679fc9d4c1fc199a68d1b372fd751665316..92d3d409a9201e64c5b9f3f766c735c022e56f85 100755 --- a/src/ClientServer/Migrations/20180912160339_removeSolutionVersion1.Designer.cs +++ b/src/ClientServer/Migrations/20180912160339_removeSolutionVersion1.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180912160339_removeSolutionVersion1")] partial class removeSolutionVersion1 { diff --git a/src/ClientServer/Migrations/20180912171554_removeSolutionVersion2.Designer.cs b/src/ClientServer/Migrations/20180912171554_removeSolutionVersion2.Designer.cs index fecd08633bfe63eaa13ce0a48bfcad279a402ef5..bcd52bea73390cb856e08960603b201fd21bf2b4 100755 --- a/src/ClientServer/Migrations/20180912171554_removeSolutionVersion2.Designer.cs +++ b/src/ClientServer/Migrations/20180912171554_removeSolutionVersion2.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180912171554_removeSolutionVersion2")] partial class removeSolutionVersion2 { diff --git a/src/ClientServer/Migrations/20180912182512_removeSolutionVersion3.Designer.cs b/src/ClientServer/Migrations/20180912182512_removeSolutionVersion3.Designer.cs index 200d0c6c0bed35413159cd8f2ba2ee65b9ac2afe..17ca2ddedf9f196e5cb2f8aa9905223b7181c1c6 100755 --- a/src/ClientServer/Migrations/20180912182512_removeSolutionVersion3.Designer.cs +++ b/src/ClientServer/Migrations/20180912182512_removeSolutionVersion3.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180912182512_removeSolutionVersion3")] partial class removeSolutionVersion3 { diff --git a/src/ClientServer/Migrations/20180913125543_removeSolutionVersion4.Designer.cs b/src/ClientServer/Migrations/20180913125543_removeSolutionVersion4.Designer.cs index 05313aaf9928b4260e63101e66dd4329594eb0b0..2d1b9cece3050d8069f0c2ecb96d18756b571eb3 100755 --- a/src/ClientServer/Migrations/20180913125543_removeSolutionVersion4.Designer.cs +++ b/src/ClientServer/Migrations/20180913125543_removeSolutionVersion4.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180913125543_removeSolutionVersion4")] partial class removeSolutionVersion4 { diff --git a/src/ClientServer/Migrations/20180921120340_groupRolePermissionAndUpdatedAt.Designer.cs b/src/ClientServer/Migrations/20180921120340_groupRolePermissionAndUpdatedAt.Designer.cs index 242274ea016a0cf617d6c6432eb5df6d4060f527..2c6f20944f6a3e8376e29a0b1d424d2032a2ca25 100755 --- a/src/ClientServer/Migrations/20180921120340_groupRolePermissionAndUpdatedAt.Designer.cs +++ b/src/ClientServer/Migrations/20180921120340_groupRolePermissionAndUpdatedAt.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180921120340_groupRolePermissionAndUpdatedAt")] partial class groupRolePermissionAndUpdatedAt { diff --git a/src/ClientServer/Migrations/20180929145343_addedAfterSolution.Designer.cs b/src/ClientServer/Migrations/20180929145343_addedAfterSolution.Designer.cs index 6e4d185880797b7159644cbdef034ffa42993177..3fcbd678873e1f0b12a87b42ea0fa229048a6a14 100755 --- a/src/ClientServer/Migrations/20180929145343_addedAfterSolution.Designer.cs +++ b/src/ClientServer/Migrations/20180929145343_addedAfterSolution.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20180929145343_addedAfterSolution")] partial class addedAfterSolution { diff --git a/src/ClientServer/Migrations/20181001151109_maxCustomTests.Designer.cs b/src/ClientServer/Migrations/20181001151109_maxCustomTests.Designer.cs index b3f779daadb3e0db729f9e7924f8c315bebd06cd..5ca63edb4f9755ae3d21fff5feb0666c048837f6 100755 --- a/src/ClientServer/Migrations/20181001151109_maxCustomTests.Designer.cs +++ b/src/ClientServer/Migrations/20181001151109_maxCustomTests.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181001151109_maxCustomTests")] partial class maxCustomTests { diff --git a/src/ClientServer/Migrations/20181004180755_csrfToken.Designer.cs b/src/ClientServer/Migrations/20181004180755_csrfToken.Designer.cs index 65871a1bf2614a7e8dc6db89b26e8c0719755134..4328f7b958691af483ff349d7702677a95a6e65f 100755 --- a/src/ClientServer/Migrations/20181004180755_csrfToken.Designer.cs +++ b/src/ClientServer/Migrations/20181004180755_csrfToken.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181004180755_csrfToken")] partial class csrfToken { diff --git a/src/ClientServer/Migrations/20181008183904_UserSettingsAllowRemoveLang.Designer.cs b/src/ClientServer/Migrations/20181008183904_UserSettingsAllowRemoveLang.Designer.cs index 029f0e1ab56b4c5cf53d69731485b04ebf651496..99411d81300be536b1f0da45739fafbbe303ac98 100755 --- a/src/ClientServer/Migrations/20181008183904_UserSettingsAllowRemoveLang.Designer.cs +++ b/src/ClientServer/Migrations/20181008183904_UserSettingsAllowRemoveLang.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181008183904_UserSettingsAllowRemoveLang")] partial class UserSettingsAllowRemoveLang { diff --git a/src/ClientServer/Migrations/20181011102314_removedSystemPermissionCanEditGroup.Designer.cs b/src/ClientServer/Migrations/20181011102314_removedSystemPermissionCanEditGroup.Designer.cs index edf8ac4b2a7a2df2b8b4ed01eb887ba5bc0dec3d..0ab752370f19267360fe2c67c01bf0df7a7251ab 100755 --- a/src/ClientServer/Migrations/20181011102314_removedSystemPermissionCanEditGroup.Designer.cs +++ b/src/ClientServer/Migrations/20181011102314_removedSystemPermissionCanEditGroup.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181011102314_removedSystemPermissionCanEditGroup")] partial class removedSystemPermissionCanEditGroup { diff --git a/src/ClientServer/Migrations/20181012124603_SetStringMaxLengths.Designer.cs b/src/ClientServer/Migrations/20181012124603_SetStringMaxLengths.Designer.cs index 27a3e2dff4ea36bdbebaa485afe725590803aa41..3539a26a1cdd176c5dc092cd11983547fd020b31 100755 --- a/src/ClientServer/Migrations/20181012124603_SetStringMaxLengths.Designer.cs +++ b/src/ClientServer/Migrations/20181012124603_SetStringMaxLengths.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181012124603_SetStringMaxLengths")] partial class SetStringMaxLengths { diff --git a/src/ClientServer/Migrations/20181026193143_ServerMessage.Designer.cs b/src/ClientServer/Migrations/20181026193143_ServerMessage.Designer.cs index 664af0791ed0c3398c493a61242dcb08d73187c6..a7bc0a9faae7f1a89c364b1fd284b721370a42cd 100755 --- a/src/ClientServer/Migrations/20181026193143_ServerMessage.Designer.cs +++ b/src/ClientServer/Migrations/20181026193143_ServerMessage.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181026193143_ServerMessage")] partial class ServerMessage { diff --git a/src/ClientServer/Migrations/20181027121021_ParticipationLockSolutionsFlag.Designer.cs b/src/ClientServer/Migrations/20181027121021_ParticipationLockSolutionsFlag.Designer.cs index e0c79b424d7c5e3cd34758658ce9521bd5fd0b7d..f8b75779ff0bcf8acde2ac556a59905dd212f2c9 100755 --- a/src/ClientServer/Migrations/20181027121021_ParticipationLockSolutionsFlag.Designer.cs +++ b/src/ClientServer/Migrations/20181027121021_ParticipationLockSolutionsFlag.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181027121021_ParticipationLockSolutionsFlag")] partial class ParticipationLockSolutionsFlag { diff --git a/src/ClientServer/Migrations/20181027122426_ParticipationLockSolutionsFlag2.Designer.cs b/src/ClientServer/Migrations/20181027122426_ParticipationLockSolutionsFlag2.Designer.cs index 0ddbbcb3f1c8a2ad0fcb9104f05f213cdd5987db..9b118584e91ce42d955c6160f62c2ee83930d5a9 100755 --- a/src/ClientServer/Migrations/20181027122426_ParticipationLockSolutionsFlag2.Designer.cs +++ b/src/ClientServer/Migrations/20181027122426_ParticipationLockSolutionsFlag2.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181027122426_ParticipationLockSolutionsFlag2")] partial class ParticipationLockSolutionsFlag2 { diff --git a/src/ClientServer/Migrations/20181123151602_StoreAssessmentErrors.Designer.cs b/src/ClientServer/Migrations/20181123151602_StoreAssessmentErrors.Designer.cs index 8ea0907241247585ddd012d748b1c0d7f72ff22f..120d92db1ada24159f0b6ae7586e917fb76ecd8f 100755 --- a/src/ClientServer/Migrations/20181123151602_StoreAssessmentErrors.Designer.cs +++ b/src/ClientServer/Migrations/20181123151602_StoreAssessmentErrors.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20181123151602_StoreAssessmentErrors")] partial class StoreAssessmentErrors { diff --git a/src/ClientServer/Migrations/20190202125311_MoreExamOptions.Designer.cs b/src/ClientServer/Migrations/20190202125311_MoreExamOptions.Designer.cs index 0c6e12cea7ee7372c19ba5c9aea2212d249bcaf7..02fce0ae6d4d92fe0fe289c6c0fd706b4bbaa9de 100755 --- a/src/ClientServer/Migrations/20190202125311_MoreExamOptions.Designer.cs +++ b/src/ClientServer/Migrations/20190202125311_MoreExamOptions.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190202125311_MoreExamOptions")] partial class MoreExamOptions { diff --git a/src/ClientServer/Migrations/20190213174200_NewSystemSettings.Designer.cs b/src/ClientServer/Migrations/20190213174200_NewSystemSettings.Designer.cs index 43b1218bb48b41664da0679fb9c82c8731d4a1b6..0d7baf3eca971d147c3afe387ee605ce12cd460b 100755 --- a/src/ClientServer/Migrations/20190213174200_NewSystemSettings.Designer.cs +++ b/src/ClientServer/Migrations/20190213174200_NewSystemSettings.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190213174200_NewSystemSettings")] partial class NewSystemSettings { diff --git a/src/ClientServer/Migrations/20190214140941_PLangHighlighting.Designer.cs b/src/ClientServer/Migrations/20190214140941_PLangHighlighting.Designer.cs index aff74804663a6b4edb77d5ca4d3b944628f75452..b429996f159a77bade737e92c330bdb3a4fdff03 100755 --- a/src/ClientServer/Migrations/20190214140941_PLangHighlighting.Designer.cs +++ b/src/ClientServer/Migrations/20190214140941_PLangHighlighting.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190214140941_PLangHighlighting")] partial class PLangHighlighting { diff --git a/src/ClientServer/Migrations/20190214151239_PLangFileExtensions.Designer.cs b/src/ClientServer/Migrations/20190214151239_PLangFileExtensions.Designer.cs index e425bb0d691eb6638e1f8d663f29d3129c8c1d16..16e2efe4168c949b831fd962aab9e84abc62ff75 100755 --- a/src/ClientServer/Migrations/20190214151239_PLangFileExtensions.Designer.cs +++ b/src/ClientServer/Migrations/20190214151239_PLangFileExtensions.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190214151239_PLangFileExtensions")] partial class PLangFileExtensions { diff --git a/src/ClientServer/Migrations/20190214202737_RemovedUnusedPlangMarkdownMode.Designer.cs b/src/ClientServer/Migrations/20190214202737_RemovedUnusedPlangMarkdownMode.Designer.cs index ac0b6ba76d15c9121d6193b5eabd3f5d37e0cadd..4b20cd77932849279a5964a4dd2ed8474584e3ef 100755 --- a/src/ClientServer/Migrations/20190214202737_RemovedUnusedPlangMarkdownMode.Designer.cs +++ b/src/ClientServer/Migrations/20190214202737_RemovedUnusedPlangMarkdownMode.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190214202737_RemovedUnusedPlangMarkdownMode")] partial class RemovedUnusedPlangMarkdownMode { diff --git a/src/ClientServer/Migrations/20190320182329_TestAssetHashes.Designer.cs b/src/ClientServer/Migrations/20190320182329_TestAssetHashes.Designer.cs index 674a3efc3907d7358d00f9cab694489cbb3898fe..7b37ac90980d5078da9276bb8bf1c012667ff4ed 100755 --- a/src/ClientServer/Migrations/20190320182329_TestAssetHashes.Designer.cs +++ b/src/ClientServer/Migrations/20190320182329_TestAssetHashes.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190320182329_TestAssetHashes")] partial class TestAssetHashes { diff --git a/src/ClientServer/Migrations/20190329152856_LastEditingIpSolution.Designer.cs b/src/ClientServer/Migrations/20190329152856_LastEditingIpSolution.Designer.cs index b65aa5971ae499cd299e59d1bc35894452bf7e31..b53f12d47de050a60aeb6efd33807db26ed3be3a 100755 --- a/src/ClientServer/Migrations/20190329152856_LastEditingIpSolution.Designer.cs +++ b/src/ClientServer/Migrations/20190329152856_LastEditingIpSolution.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190329152856_LastEditingIpSolution")] partial class LastEditingIpSolution { diff --git a/src/ClientServer/Migrations/20190409160808_SystemSettingsTestServerUiUrl.Designer.cs b/src/ClientServer/Migrations/20190409160808_SystemSettingsTestServerUiUrl.Designer.cs index 1eb426502ad0720084ba8c9ef03cada899907265..5f593603e065f6fce62a3fa48c99ed2976ecaf57 100755 --- a/src/ClientServer/Migrations/20190409160808_SystemSettingsTestServerUiUrl.Designer.cs +++ b/src/ClientServer/Migrations/20190409160808_SystemSettingsTestServerUiUrl.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190409160808_SystemSettingsTestServerUiUrl")] partial class SystemSettingsTestServerUiUrl { diff --git a/src/ClientServer/Migrations/20190410160446_SomeDeleteActionsChanged1.Designer.cs b/src/ClientServer/Migrations/20190410160446_SomeDeleteActionsChanged1.Designer.cs index 48f464d25e66d6e7733275a15e85152d941ae8ce..fc2af7262625f8290c40bceebcbfc943a56b5e92 100755 --- a/src/ClientServer/Migrations/20190410160446_SomeDeleteActionsChanged1.Designer.cs +++ b/src/ClientServer/Migrations/20190410160446_SomeDeleteActionsChanged1.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190410160446_SomeDeleteActionsChanged1")] partial class SomeDeleteActionsChanged1 { diff --git a/src/ClientServer/Migrations/20190419112922_JustRunTimeout.Designer.cs b/src/ClientServer/Migrations/20190419112922_JustRunTimeout.Designer.cs index c7f337531df9906a7e7a8fee1ef7b0802ae5bf97..3775fe8fc634057b59a3f117e24abc7feb561760 100755 --- a/src/ClientServer/Migrations/20190419112922_JustRunTimeout.Designer.cs +++ b/src/ClientServer/Migrations/20190419112922_JustRunTimeout.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190419112922_JustRunTimeout")] partial class JustRunTimeout { diff --git a/src/ClientServer/Migrations/20190419153412_OtherJustRunTestLimits.Designer.cs b/src/ClientServer/Migrations/20190419153412_OtherJustRunTestLimits.Designer.cs index c87831151a7df223932e2e927648abd5323aba09..1cf2da810d4690f7cdbb207544a14d97dddaef11 100755 --- a/src/ClientServer/Migrations/20190419153412_OtherJustRunTestLimits.Designer.cs +++ b/src/ClientServer/Migrations/20190419153412_OtherJustRunTestLimits.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190419153412_OtherJustRunTestLimits")] partial class OtherJustRunTestLimits { diff --git a/src/ClientServer/Migrations/20190420100505_CustomProjectTestLimits.Designer.cs b/src/ClientServer/Migrations/20190420100505_CustomProjectTestLimits.Designer.cs index f5fda2970ef98df1ea9294aa23a01a403777d8d2..3da6ddbb8014ca3d3da7981e62d2fa609716f307 100755 --- a/src/ClientServer/Migrations/20190420100505_CustomProjectTestLimits.Designer.cs +++ b/src/ClientServer/Migrations/20190420100505_CustomProjectTestLimits.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190420100505_CustomProjectTestLimits")] partial class CustomProjectTestLimits { diff --git a/src/ClientServer/Migrations/20190420164845_TestRunningTimes.Designer.cs b/src/ClientServer/Migrations/20190420164845_TestRunningTimes.Designer.cs index a420a1a3f1ac01802229a3256df0b5280ec8f440..998a583019fafdcbe68b78d00e22bdea7dd4cc57 100755 --- a/src/ClientServer/Migrations/20190420164845_TestRunningTimes.Designer.cs +++ b/src/ClientServer/Migrations/20190420164845_TestRunningTimes.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190420164845_TestRunningTimes")] partial class TestRunningTimes { diff --git a/src/ClientServer/Migrations/20190428191918_MoreTestLimitsAndCompilerTimeout.Designer.cs b/src/ClientServer/Migrations/20190428191918_MoreTestLimitsAndCompilerTimeout.Designer.cs index 715956dc9088b5a05ca53cdd0f321e193459a8f1..a38ef7f93ad59f0c40cc4c9425ee0d850a4766f1 100755 --- a/src/ClientServer/Migrations/20190428191918_MoreTestLimitsAndCompilerTimeout.Designer.cs +++ b/src/ClientServer/Migrations/20190428191918_MoreTestLimitsAndCompilerTimeout.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190428191918_MoreTestLimitsAndCompilerTimeout")] partial class MoreTestLimitsAndCompilerTimeout { diff --git a/src/ClientServer/Migrations/20190430202149_MaxManualPoints.Designer.cs b/src/ClientServer/Migrations/20190430202149_MaxManualPoints.Designer.cs index 078db949efb74babba2b6a6b0a92cdf4444e72a6..d45019e98960e8a7c9136deebe584b5acc0cf25c 100755 --- a/src/ClientServer/Migrations/20190430202149_MaxManualPoints.Designer.cs +++ b/src/ClientServer/Migrations/20190430202149_MaxManualPoints.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190430202149_MaxManualPoints")] partial class MaxManualPoints { diff --git a/src/ClientServer/Migrations/20190501142551_HiddenTemplateFiles.Designer.cs b/src/ClientServer/Migrations/20190501142551_HiddenTemplateFiles.Designer.cs index e396536c8b01903f08dbd02a6bb895497e2398ae..71248dee37645e24881d4532c2f5110f163d4e7d 100755 --- a/src/ClientServer/Migrations/20190501142551_HiddenTemplateFiles.Designer.cs +++ b/src/ClientServer/Migrations/20190501142551_HiddenTemplateFiles.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190501142551_HiddenTemplateFiles")] partial class HiddenTemplateFiles { diff --git a/src/ClientServer/Migrations/20190501143221_RenameTemplateVisibility.Designer.cs b/src/ClientServer/Migrations/20190501143221_RenameTemplateVisibility.Designer.cs index a3974f5685756d46fc96fbbe29d0162396131e26..05379f42368bfc859d56c260bdf61ef715e9b9e7 100755 --- a/src/ClientServer/Migrations/20190501143221_RenameTemplateVisibility.Designer.cs +++ b/src/ClientServer/Migrations/20190501143221_RenameTemplateVisibility.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190501143221_RenameTemplateVisibility")] partial class RenameTemplateVisibility { diff --git a/src/ClientServer/Migrations/20190503160702_ReleasePLangRequiredNow.Designer.cs b/src/ClientServer/Migrations/20190503160702_ReleasePLangRequiredNow.Designer.cs index 551ac5d89374ac048fbfba64d22e3ea372a4be7d..29933cebec966703863a59957064bcacf92b54ab 100755 --- a/src/ClientServer/Migrations/20190503160702_ReleasePLangRequiredNow.Designer.cs +++ b/src/ClientServer/Migrations/20190503160702_ReleasePLangRequiredNow.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190503160702_ReleasePLangRequiredNow")] partial class ReleasePLangRequiredNow { diff --git a/src/ClientServer/Migrations/20190505105057_ExerciseExamLock.Designer.cs b/src/ClientServer/Migrations/20190505105057_ExerciseExamLock.Designer.cs index c6d1dcd909123572318b08880d89178abc5f3a44..934dbc3493b43fcc06f35e6b1ae7e2077e2181f3 100755 --- a/src/ClientServer/Migrations/20190505105057_ExerciseExamLock.Designer.cs +++ b/src/ClientServer/Migrations/20190505105057_ExerciseExamLock.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190505105057_ExerciseExamLock")] partial class ExerciseExamLock { diff --git a/src/ClientServer/Migrations/20190505122337_ExerciseLockedGroupRolePermission.Designer.cs b/src/ClientServer/Migrations/20190505122337_ExerciseLockedGroupRolePermission.Designer.cs index d98e406c1bccfab2503d80e3b9a69e58026a44b4..33f06c2b8ae9a87b952d372df31092b6053f3ded 100755 --- a/src/ClientServer/Migrations/20190505122337_ExerciseLockedGroupRolePermission.Designer.cs +++ b/src/ClientServer/Migrations/20190505122337_ExerciseLockedGroupRolePermission.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190505122337_ExerciseLockedGroupRolePermission")] partial class ExerciseLockedGroupRolePermission { diff --git a/src/ClientServer/Migrations/20190508134143_RemoveCopyPermission.Designer.cs b/src/ClientServer/Migrations/20190508134143_RemoveCopyPermission.Designer.cs index c5163acf1b09966029eb1da46b99fab205adccb1..84e51de5ba2af722bec5f248ddf44b6eefe44a6b 100755 --- a/src/ClientServer/Migrations/20190508134143_RemoveCopyPermission.Designer.cs +++ b/src/ClientServer/Migrations/20190508134143_RemoveCopyPermission.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190508134143_RemoveCopyPermission")] partial class RemoveCopyPermission { diff --git a/src/ClientServer/Migrations/20190530135332_ExerciseMarkdownFiles.Designer.cs b/src/ClientServer/Migrations/20190530135332_ExerciseMarkdownFiles.Designer.cs index 031a98777417a40f3172cac5734613c24ed452da..44228ed66d2387eba000f08c673b95b9e1c9469a 100755 --- a/src/ClientServer/Migrations/20190530135332_ExerciseMarkdownFiles.Designer.cs +++ b/src/ClientServer/Migrations/20190530135332_ExerciseMarkdownFiles.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190530135332_ExerciseMarkdownFiles")] partial class ExerciseMarkdownFiles { diff --git a/src/ClientServer/Migrations/20190601145551_ExerciseTestAssetFiles.Designer.cs b/src/ClientServer/Migrations/20190601145551_ExerciseTestAssetFiles.Designer.cs index 30f894fa2ab0975cad839837d654b915fd960306..4996cf09839358e7e237118cef4a4b3c91d73d46 100755 --- a/src/ClientServer/Migrations/20190601145551_ExerciseTestAssetFiles.Designer.cs +++ b/src/ClientServer/Migrations/20190601145551_ExerciseTestAssetFiles.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190601145551_ExerciseTestAssetFiles")] partial class ExerciseTestAssetFiles { diff --git a/src/ClientServer/Migrations/20190602180648_CustomUserFiles.Designer.cs b/src/ClientServer/Migrations/20190602180648_CustomUserFiles.Designer.cs index 611c6a7acd7c47500fac4ea5815716765eab378e..33ce473ac9330e6bd279c19d5704f01711850a08 100755 --- a/src/ClientServer/Migrations/20190602180648_CustomUserFiles.Designer.cs +++ b/src/ClientServer/Migrations/20190602180648_CustomUserFiles.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190602180648_CustomUserFiles")] partial class CustomUserFiles { diff --git a/src/ClientServer/Migrations/20190606164356_RemoveAssetPathsAddedCompilerOptions.Designer.cs b/src/ClientServer/Migrations/20190606164356_RemoveAssetPathsAddedCompilerOptions.Designer.cs index 4ce072284ee96887df857e349047e7663498ab30..61149c8c6c97e8474c3cb42b46cf39d29b77ebca 100755 --- a/src/ClientServer/Migrations/20190606164356_RemoveAssetPathsAddedCompilerOptions.Designer.cs +++ b/src/ClientServer/Migrations/20190606164356_RemoveAssetPathsAddedCompilerOptions.Designer.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] [Migration("20190606164356_RemoveAssetPathsAddedCompilerOptions")] partial class RemoveAssetPathsAddedCompilerOptions { diff --git a/src/ClientServer/Migrations/SyndromDbContextModelSnapshot.cs b/src/ClientServer/Migrations/SyndromDbContextModelSnapshot.cs index d2e05915d526814733728d0a8e63c7c1748c341d..989fc8c1b68f6df468f9e2a7697d34aa18912f4b 100644 --- a/src/ClientServer/Migrations/SyndromDbContextModelSnapshot.cs +++ b/src/ClientServer/Migrations/SyndromDbContextModelSnapshot.cs @@ -8,7 +8,7 @@ using ClientServer.Models.Exercises.Release; namespace ClientServer.Migrations { - [DbContext(typeof(SyndromDbContext))] + [DbContext(typeof(YapexDbContext))] partial class SyndromDbContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) @@ -1424,7 +1424,7 @@ namespace ClientServer.Migrations b.Property<bool>("CanLockExercisesPermanently"); - b.Property<bool>("CanReleaseExercises"); + b.Property<bool>("CanManageExerciseReleases"); b.Property<bool>("CanRemoveMemberFromGroup"); diff --git a/src/ClientServer/Models/CustomProjects/CustomProject.cs b/src/ClientServer/Models/CustomProjects/CustomProject.cs index bbe6ff19809f52a1c027cd66c3d56cc8d8d9c202..58feb83c8a7b48d4f4c89f719b7ed1429b2481aa 100644 --- a/src/ClientServer/Models/CustomProjects/CustomProject.cs +++ b/src/ClientServer/Models/CustomProjects/CustomProject.cs @@ -32,7 +32,7 @@ namespace ClientServer.Models.CustomProjects /// <summary> /// the name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> diff --git a/src/ClientServer/Models/CustomProjects/CustomProjectDescription.cs b/src/ClientServer/Models/CustomProjects/CustomProjectDescription.cs index e1a3a2002ab33a7de68679d5ee9d339bdda246f8..327634b05ff750047d30f5ad4ef897148cf21f79 100644 --- a/src/ClientServer/Models/CustomProjects/CustomProjectDescription.cs +++ b/src/ClientServer/Models/CustomProjects/CustomProjectDescription.cs @@ -21,7 +21,7 @@ namespace ClientServer.Models.CustomProjects /// <summary> /// the content /// </summary> - [MaxLength(SyndromDbContext.DescriptionContentMaxStringLength)] + [MaxLength(YapexDbContext.DescriptionContentMaxStringLength)] public string Content { get; set; } /// <summary> diff --git a/src/ClientServer/Models/CustomProjects/CustomProjectSolutionFile.cs b/src/ClientServer/Models/CustomProjects/CustomProjectSolutionFile.cs index ef4574ea2bbafb74b9f72cf97f78bd2db99d8607..4d2b9eb939055949133e73d20dfcade1d3068ed0 100644 --- a/src/ClientServer/Models/CustomProjects/CustomProjectSolutionFile.cs +++ b/src/ClientServer/Models/CustomProjects/CustomProjectSolutionFile.cs @@ -11,13 +11,13 @@ namespace ClientServer.Models.CustomProjects /// <summary> /// the file name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string FileNameWithExtension { get; set; } /// <summary> /// the content of the file /// </summary> - [MaxLength(SyndromDbContext.FileContentMaxStringLength)] + [MaxLength(YapexDbContext.FileContentMaxStringLength)] public string Content { get; set; } /// <summary> diff --git a/src/ClientServer/Models/CustomProjects/CustomProjectTest.cs b/src/ClientServer/Models/CustomProjects/CustomProjectTest.cs index 8f6bdfb26d6d7f301ada241dab587c0354bb814b..4393cae9662ec1259f3357ad2bc205d2d76974ae 100644 --- a/src/ClientServer/Models/CustomProjects/CustomProjectTest.cs +++ b/src/ClientServer/Models/CustomProjects/CustomProjectTest.cs @@ -21,12 +21,12 @@ namespace ClientServer.Models.CustomProjects /// <summary> /// the name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the content for the ... see the black-box-test protocol /// </summary> - [MaxLength(SyndromDbContext.TestContentMaxStringLength)] + [MaxLength(YapexDbContext.TestContentMaxStringLength)] public string Content { get; set; } /// <summary> diff --git a/src/ClientServer/Models/CustomProjects/CustomProjectTestAsset.cs b/src/ClientServer/Models/CustomProjects/CustomProjectTestAsset.cs index 958c2610304601047f4fc82d4367c065ba89263b..fb07fc45bde98188cc4be5be5fadc1ccfdbb6356 100644 --- a/src/ClientServer/Models/CustomProjects/CustomProjectTestAsset.cs +++ b/src/ClientServer/Models/CustomProjects/CustomProjectTestAsset.cs @@ -13,7 +13,7 @@ namespace ClientServer.Models.CustomProjects /// <summary> /// the name of the file/asset /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the content of the asset (binary) @@ -22,14 +22,14 @@ namespace ClientServer.Models.CustomProjects /// <summary> /// the mime type (maybe we need to know what content is stored) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string MimeType { get; set; } /// <summary> /// the hash of the content /// can be null if not calculated but should not be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Hash { get; set; } } } diff --git a/src/ClientServer/Models/CustomProjects/CustomProjectTestWithSolutionAsTestResult.cs b/src/ClientServer/Models/CustomProjects/CustomProjectTestWithSolutionAsTestResult.cs index 5f62cd04641ae4f427088a0adc21cb9aa6734779..9454b841fe9d96539d2645db848bb1fcb60c3276 100644 --- a/src/ClientServer/Models/CustomProjects/CustomProjectTestWithSolutionAsTestResult.cs +++ b/src/ClientServer/Models/CustomProjects/CustomProjectTestWithSolutionAsTestResult.cs @@ -38,14 +38,14 @@ namespace ClientServer.Models.CustomProjects /// <summary> /// the conversation protocol between the user program and the test runner /// </summary> - [MaxLength(SyndromDbContext.TestProtocolMaxStringLength)] + [MaxLength(YapexDbContext.TestProtocolMaxStringLength)] public string Protocol { get; set; } /// <summary> /// the test runner version /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string RunnerVersion { get; set; } /// <summary> @@ -76,7 +76,7 @@ namespace ClientServer.Models.CustomProjects /// the test server version /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerVersion { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/AfterSolutions/AfterSolutionFile.cs b/src/ClientServer/Models/Exercises/AfterSolutions/AfterSolutionFile.cs index 9effd097187e0fc6724eabf0e056709c86a50dde..d41b093dba8ac30fff5a67503a405fda9491fa77 100644 --- a/src/ClientServer/Models/Exercises/AfterSolutions/AfterSolutionFile.cs +++ b/src/ClientServer/Models/Exercises/AfterSolutions/AfterSolutionFile.cs @@ -11,12 +11,12 @@ namespace ClientServer.Models.Exercises.AfterSolutions /// <summary> /// the file nname /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string FileNameWithExtension { get; set; } /// <summary> /// the content of the file /// </summary> - [MaxLength(SyndromDbContext.FileContentMaxStringLength)] + [MaxLength(YapexDbContext.FileContentMaxStringLength)] public string Content { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Exercises/AfterSolutions/CustomTestWithAfterSolutionAsTestResult.cs b/src/ClientServer/Models/Exercises/AfterSolutions/CustomTestWithAfterSolutionAsTestResult.cs index 0124779c180954fcc224a1e0e82dc3a408edebf3..099890c0d1ac636e0b18b4bc0d190bde44e8bf27 100644 --- a/src/ClientServer/Models/Exercises/AfterSolutions/CustomTestWithAfterSolutionAsTestResult.cs +++ b/src/ClientServer/Models/Exercises/AfterSolutions/CustomTestWithAfterSolutionAsTestResult.cs @@ -45,13 +45,13 @@ namespace ClientServer.Models.Exercises.AfterSolutions /// <summary> /// the conversation protocol between the user program and the test runner /// </summary> - [MaxLength(SyndromDbContext.TestProtocolMaxStringLength)] + [MaxLength(YapexDbContext.TestProtocolMaxStringLength)] public string Protocol { get; set; } /// <summary> /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string RunnerVersion { get; set; } /// <summary> @@ -82,7 +82,7 @@ namespace ClientServer.Models.Exercises.AfterSolutions /// the test server version /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerVersion { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/AfterSolutions/TestWithAfterSolutionAsTestResult.cs b/src/ClientServer/Models/Exercises/AfterSolutions/TestWithAfterSolutionAsTestResult.cs index 378eb5d1269d05bc460bb658c7f4792cbd037c44..cbf5dfbb6522f1be4ba0201ac692ee9c02ec21d3 100644 --- a/src/ClientServer/Models/Exercises/AfterSolutions/TestWithAfterSolutionAsTestResult.cs +++ b/src/ClientServer/Models/Exercises/AfterSolutions/TestWithAfterSolutionAsTestResult.cs @@ -47,13 +47,13 @@ namespace ClientServer.Models.Exercises.AfterSolutions /// <summary> /// the conversation protocol between the user program and the test runner /// </summary> - [MaxLength(SyndromDbContext.TestProtocolMaxStringLength)] + [MaxLength(YapexDbContext.TestProtocolMaxStringLength)] public string Protocol { get; set; } /// <summary> /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string RunnerVersion { get; set; } /// <summary> @@ -84,7 +84,7 @@ namespace ClientServer.Models.Exercises.AfterSolutions /// the test server version /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerVersion { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/Asset.cs b/src/ClientServer/Models/Exercises/Asset.cs index 78c175cc112a97291abf9f687b5081d1aa054fc2..03d18145db8c94b77c835abe81e78c5ffbbacb6e 100644 --- a/src/ClientServer/Models/Exercises/Asset.cs +++ b/src/ClientServer/Models/Exercises/Asset.cs @@ -13,7 +13,7 @@ namespace ClientServer.Models.Exercises /// <summary> /// the name of the file/asset /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the asset url for assets (starts with <see cref="Constants.MarkdownAssetFileUrlPrefix"/>) @@ -21,7 +21,7 @@ namespace ClientServer.Models.Exercises /// we use html5 file api for that /// /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string AssetUrl { get; set; } /// <summary> /// the content of the asset (binary) @@ -30,7 +30,7 @@ namespace ClientServer.Models.Exercises /// <summary> /// the mime type (maybe we need to know what content is stored) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string MimeType { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/Exercise.cs b/src/ClientServer/Models/Exercises/Exercise.cs index 95c85348a2379fecc2d5dce7884413230aa2d26a..36d5edbfa2cfbe422527bbb744fd72984b2530af 100644 --- a/src/ClientServer/Models/Exercises/Exercise.cs +++ b/src/ClientServer/Models/Exercises/Exercise.cs @@ -26,12 +26,12 @@ namespace ClientServer.Models.Exercises /// <summary> /// the name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// a short description /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string ShortDescription { get; set; } /// <summary> @@ -64,7 +64,7 @@ namespace ClientServer.Models.Exercises /// <summary> /// notes for the exercise (e.g. to change something in the future...) /// </summary> - [MaxLength(SyndromDbContext.NotesMaxStringLength)] + [MaxLength(YapexDbContext.NotesMaxStringLength)] public string Note { get; set; } diff --git a/src/ClientServer/Models/Exercises/ExerciseDescription.cs b/src/ClientServer/Models/Exercises/ExerciseDescription.cs index ca06238b3c2900d2c05bf9228789da45f28290f8..c5d07bc8cdae5e7436da2b8e4376ca20fb12db17 100644 --- a/src/ClientServer/Models/Exercises/ExerciseDescription.cs +++ b/src/ClientServer/Models/Exercises/ExerciseDescription.cs @@ -21,7 +21,7 @@ namespace ClientServer.Models.Exercises /// <summary> /// the content for the description (see the exercise description types and protocols) /// </summary> - [MaxLength(SyndromDbContext.DescriptionContentMaxStringLength)] + [MaxLength(YapexDbContext.DescriptionContentMaxStringLength)] public string Content { get; set; } diff --git a/src/ClientServer/Models/Exercises/Release/ExerciseRelease.cs b/src/ClientServer/Models/Exercises/Release/ExerciseRelease.cs index 5061d005cf64e4982cd9715a7a738191381c75fb..2846b74527059587ec3af60c50c6ec861214eed7 100644 --- a/src/ClientServer/Models/Exercises/Release/ExerciseRelease.cs +++ b/src/ClientServer/Models/Exercises/Release/ExerciseRelease.cs @@ -39,7 +39,7 @@ namespace ClientServer.Models.Exercises.Release /// <summary> /// the generated code for this <see cref="ExerciseRelease"/> /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string GeneratedCode { get; set; } /// <summary> @@ -57,7 +57,7 @@ namespace ClientServer.Models.Exercises.Release /// <summary> /// a note /// </summary> - [MaxLength(SyndromDbContext.NotesMaxStringLength)] + [MaxLength(YapexDbContext.NotesMaxStringLength)] public string Note { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Exercises/Solution/CustomTestWithSingleSolutionAsTestResult.cs b/src/ClientServer/Models/Exercises/Solution/CustomTestWithSingleSolutionAsTestResult.cs index d1ad5a9e8c40d5f84fb94e05847f07479bb817b6..28be011842bfaac425581c0f034503e0588692bb 100644 --- a/src/ClientServer/Models/Exercises/Solution/CustomTestWithSingleSolutionAsTestResult.cs +++ b/src/ClientServer/Models/Exercises/Solution/CustomTestWithSingleSolutionAsTestResult.cs @@ -55,13 +55,13 @@ namespace ClientServer.Models.Exercises.Solution /// <summary> /// the conversation protocol between the user program and the test runner /// </summary> - [MaxLength(SyndromDbContext.TestProtocolMaxStringLength)] + [MaxLength(YapexDbContext.TestProtocolMaxStringLength)] public string Protocol { get; set; } /// <summary> /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string RunnerVersion { get; set; } /// <summary> @@ -92,7 +92,7 @@ namespace ClientServer.Models.Exercises.Solution /// the test server version /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerVersion { get; set; } } diff --git a/src/ClientServer/Models/Exercises/Solution/Solution.cs b/src/ClientServer/Models/Exercises/Solution/Solution.cs index 753c5cb0e6fb7a784fe4686bb3ecfd1be6fac2a9..d24e8eda2f93c38020bc4a7d10409bedb9c49d9e 100644 --- a/src/ClientServer/Models/Exercises/Solution/Solution.cs +++ b/src/ClientServer/Models/Exercises/Solution/Solution.cs @@ -94,7 +94,7 @@ namespace ClientServer.Models.Exercises.Solution /// from the user /// NOT USED YET /// </summary> - [MaxLength(SyndromDbContext.NotesMaxStringLength)] + [MaxLength(YapexDbContext.NotesMaxStringLength)] public string Note { get; set; } /// <summary> @@ -124,7 +124,7 @@ namespace ClientServer.Models.Exercises.Solution /// the last ip address when a user created or changed the solution /// can be null if not captured (before we introduced this prop) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string LastEditingIpAddress { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/Solution/SolutionAssessment.cs b/src/ClientServer/Models/Exercises/Solution/SolutionAssessment.cs index f7ef26883c03d6176a49cfbe1d2135cd8b3ad891..6dfb9631f8dd777274ffbbb9bab89f885070141d 100644 --- a/src/ClientServer/Models/Exercises/Solution/SolutionAssessment.cs +++ b/src/ClientServer/Models/Exercises/Solution/SolutionAssessment.cs @@ -45,19 +45,19 @@ namespace ClientServer.Models.Exercises.Solution /// null for no error or the empty string OR /// the error message from the test server or some other source /// </summary> - [MaxLength(SyndromDbContext.TestContentMaxStringLength)] + [MaxLength(YapexDbContext.TestContentMaxStringLength)] public string LastAssessmentErrorMessage { get; set; } /// <summary> /// the note from the tutor /// </summary> - [MaxLength(SyndromDbContext.NotesMaxStringLength)] + [MaxLength(YapexDbContext.NotesMaxStringLength)] public string NoteForOtherTutors { get; set; } /// <summary> /// the note for the student why he/she gets the manual points (feedback) /// </summary> - [MaxLength(SyndromDbContext.NotesMaxStringLength)] + [MaxLength(YapexDbContext.NotesMaxStringLength)] public string FeedbackForStudent { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Exercises/Solution/SolutionFile.cs b/src/ClientServer/Models/Exercises/Solution/SolutionFile.cs index fdbb4c815f88a3413ad1ad32cfb43ec3db570654..13077980b0a86de6dd7deffa72a79c2c32ed9d45 100644 --- a/src/ClientServer/Models/Exercises/Solution/SolutionFile.cs +++ b/src/ClientServer/Models/Exercises/Solution/SolutionFile.cs @@ -12,12 +12,12 @@ namespace ClientServer.Models.Exercises.Solution /// <summary> /// the file name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string FileNameWithExtension { get; set; } /// <summary> /// the content of the file /// </summary> - [MaxLength(SyndromDbContext.FileContentMaxStringLength)] + [MaxLength(YapexDbContext.FileContentMaxStringLength)] public string Content { get; set; } diff --git a/src/ClientServer/Models/Exercises/Solution/TestWithSingleSolutionAsTestResult.cs b/src/ClientServer/Models/Exercises/Solution/TestWithSingleSolutionAsTestResult.cs index e366803b12ea121c8d37aada9e6ed73e77b3e224..64b35e8332c03d3f0af7b4eb95c1d201e5947aad 100644 --- a/src/ClientServer/Models/Exercises/Solution/TestWithSingleSolutionAsTestResult.cs +++ b/src/ClientServer/Models/Exercises/Solution/TestWithSingleSolutionAsTestResult.cs @@ -57,13 +57,13 @@ namespace ClientServer.Models.Exercises.Solution /// <summary> /// the conversation protocol between the user program and the test runner /// </summary> - [MaxLength(SyndromDbContext.TestProtocolMaxStringLength)] + [MaxLength(YapexDbContext.TestProtocolMaxStringLength)] public string Protocol { get; set; } /// <summary> /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string RunnerVersion { get; set; } /// <summary> @@ -94,7 +94,7 @@ namespace ClientServer.Models.Exercises.Solution /// the test server version /// can be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerVersion { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/Tag.cs b/src/ClientServer/Models/Exercises/Tag.cs index ab3c285bd26970c950e6a8265d204292313ff0b9..510c8dbbbf4b726ae8499e0a80ef8daf90e6025b 100644 --- a/src/ClientServer/Models/Exercises/Tag.cs +++ b/src/ClientServer/Models/Exercises/Tag.cs @@ -20,31 +20,31 @@ namespace ClientServer.Models.Exercises /// <summary> /// the name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the some description text (for popup) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Description { get; set; } /// <summary> /// the html color (css string) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string HtmlColor { get; set; } /// <summary> /// the html background color (css string) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string HtmlBackgroundColor { get; set; } /// <summary> /// the html icon string /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string HtmlIcon { get; set; } } diff --git a/src/ClientServer/Models/Exercises/TemplateFile.cs b/src/ClientServer/Models/Exercises/TemplateFile.cs index a66a8e67ecdc02a37587663d1dc3b75dbef4395e..1a4d774cd297a02ade5cc231fe0901461f1c21c6 100644 --- a/src/ClientServer/Models/Exercises/TemplateFile.cs +++ b/src/ClientServer/Models/Exercises/TemplateFile.cs @@ -17,7 +17,7 @@ namespace ClientServer.Models.Exercises /// <summary> /// the name of the file with extension /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string FileNameWithExtension { get; set; } /// <summary> @@ -48,7 +48,7 @@ namespace ClientServer.Models.Exercises /// <summary> /// the content of the code template /// </summary> - [MaxLength(SyndromDbContext.FileContentMaxStringLength)] + [MaxLength(YapexDbContext.FileContentMaxStringLength)] public string Content { get; set; } diff --git a/src/ClientServer/Models/Exercises/Tests/CustomTest.cs b/src/ClientServer/Models/Exercises/Tests/CustomTest.cs index 3f0cdc1b70bd44b5a02afe503e6d82f3a32374fd..5053b1569aed812726ae5cfded0b524bcd26ee55 100644 --- a/src/ClientServer/Models/Exercises/Tests/CustomTest.cs +++ b/src/ClientServer/Models/Exercises/Tests/CustomTest.cs @@ -29,12 +29,12 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the content for the <see cref="Test"/> ... see the black-box-test protocol /// </summary> - [MaxLength(SyndromDbContext.TestContentMaxStringLength)] + [MaxLength(YapexDbContext.TestContentMaxStringLength)] public string Content { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Exercises/Tests/CustomTestAsset.cs b/src/ClientServer/Models/Exercises/Tests/CustomTestAsset.cs index 634234fb2171bfd8bba1b341171e7e7adc85b4e0..19e085e77c8517a9e04e1a5c88e3c443b0b71e86 100644 --- a/src/ClientServer/Models/Exercises/Tests/CustomTestAsset.cs +++ b/src/ClientServer/Models/Exercises/Tests/CustomTestAsset.cs @@ -17,7 +17,7 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the name of the file/asset /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the content of the asset (binary) @@ -26,14 +26,14 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the mime type (maybe we need to know what content is stored) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string MimeType { get; set; } /// <summary> /// the hash of the content /// can be null if not calculated but should not be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Hash { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/Tests/DefaultCustomTestSettings.cs b/src/ClientServer/Models/Exercises/Tests/DefaultCustomTestSettings.cs index 23f8fb85cc274ed8f26138804608e81ee35b0000..237e502ca56df42d76befa51a6bd2b36f6dbea11 100644 --- a/src/ClientServer/Models/Exercises/Tests/DefaultCustomTestSettings.cs +++ b/src/ClientServer/Models/Exercises/Tests/DefaultCustomTestSettings.cs @@ -37,7 +37,7 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// some compiler options .g. -Xlint options needs to be separated by whitespaces (like normal command args) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string CompilerOptions { get; set; } diff --git a/src/ClientServer/Models/Exercises/Tests/Test.cs b/src/ClientServer/Models/Exercises/Tests/Test.cs index de61987f71507d7b4b39f3a6cc057278f466ec17..8594cdb262436cfb062bdc2eed4e0cb4a438f6bb 100644 --- a/src/ClientServer/Models/Exercises/Tests/Test.cs +++ b/src/ClientServer/Models/Exercises/Tests/Test.cs @@ -24,7 +24,7 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the display name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// true: this <see cref="Test"/> is a submit test (is will run after the deadline is completed), @@ -35,7 +35,7 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the content for the <see cref="Test"/> ... see the black-box-test protocol /// </summary> - [MaxLength(SyndromDbContext.TestContentMaxStringLength)] + [MaxLength(YapexDbContext.TestContentMaxStringLength)] public string Content { get; set; } /// <summary> /// the weight of the <see cref="Test"/> diff --git a/src/ClientServer/Models/Exercises/Tests/TestAsset.cs b/src/ClientServer/Models/Exercises/Tests/TestAsset.cs index 31a079a9941a6ef772b71d5dbf2a1220bcc5894a..bdf696ac95f3c8b0a61c4d0bf5105d4173a142cd 100644 --- a/src/ClientServer/Models/Exercises/Tests/TestAsset.cs +++ b/src/ClientServer/Models/Exercises/Tests/TestAsset.cs @@ -13,7 +13,7 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the name of the file/asset /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the content of the asset (binary) @@ -22,14 +22,14 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the mime type (maybe we need to know what content is stored) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string MimeType { get; set; } /// <summary> /// the hash of the content /// can be null if not calculated but should not be null /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Hash { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/Tests/TestSettings.cs b/src/ClientServer/Models/Exercises/Tests/TestSettings.cs index 9c9c1c54361c99be7ca9fe12b21fe69c249d9a5e..8972147ca89382a456c8bbe1bb15f3dea345cfac 100644 --- a/src/ClientServer/Models/Exercises/Tests/TestSettings.cs +++ b/src/ClientServer/Models/Exercises/Tests/TestSettings.cs @@ -34,7 +34,7 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// some compiler options .g. -Xlint options needs to be separated by whitespaces (like normal command args) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string CompilerOptions { get; set; } } } diff --git a/src/ClientServer/Models/Exercises/Tests/TestType.cs b/src/ClientServer/Models/Exercises/Tests/TestType.cs index dbfa2b3315bea4c2ecd5c6e30351cd48a68b274e..5728bd38a2885ffb05ee13ae32b113725a54b595 100644 --- a/src/ClientServer/Models/Exercises/Tests/TestType.cs +++ b/src/ClientServer/Models/Exercises/Tests/TestType.cs @@ -12,13 +12,13 @@ namespace ClientServer.Models.Exercises.Tests /// <summary> /// the type name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the internal name used on the test server /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string InternalName { get; set; } } } diff --git a/src/ClientServer/Models/Files/FileReferenceMarkdownAsset.cs b/src/ClientServer/Models/Files/FileReferenceMarkdownAsset.cs index 9b8bb08fe690cd4b41fb283601e8eecd1479216e..575bd830b46f89bb709d4001009580fb6b429dff 100644 --- a/src/ClientServer/Models/Files/FileReferenceMarkdownAsset.cs +++ b/src/ClientServer/Models/Files/FileReferenceMarkdownAsset.cs @@ -24,19 +24,19 @@ namespace ClientServer.Models.Files /// <summary> /// md5 hash of the file content /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Hash { get; set; } /// <summary> /// original name of the file (at the time the file was uploaded) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string OriginalName { get; set; } /// <summary> /// the mime type (maybe we need to know what content is stored) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string MimeType { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Files/FileReferenceTestAsset.cs b/src/ClientServer/Models/Files/FileReferenceTestAsset.cs index 78133c3314e4ffc38d0e66b6f7a1640599ed8072..f728ece18ae6c09090251a22acbac9c2056424c8 100644 --- a/src/ClientServer/Models/Files/FileReferenceTestAsset.cs +++ b/src/ClientServer/Models/Files/FileReferenceTestAsset.cs @@ -24,19 +24,19 @@ namespace ClientServer.Models.Files /// <summary> /// md5 hash of the file content /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Hash { get; set; } /// <summary> /// original name of the file (at the time the file was uploaded) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string OriginalName { get; set; } /// <summary> /// the mime type (maybe we need to know what content is stored) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string MimeType { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Files/FileReferenceUserFileAsset.cs b/src/ClientServer/Models/Files/FileReferenceUserFileAsset.cs index 7edfb1af98afc2de5e2e2ebd78458d8df2784a79..dc2754c6ff41cfd86579fc16fed6984996e6f3f2 100644 --- a/src/ClientServer/Models/Files/FileReferenceUserFileAsset.cs +++ b/src/ClientServer/Models/Files/FileReferenceUserFileAsset.cs @@ -27,19 +27,19 @@ namespace ClientServer.Models.Files /// <summary> /// md5 hash of the file content /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Hash { get; set; } /// <summary> /// original name of the file (at the time the file was uploaded) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string OriginalName { get; set; } /// <summary> /// the mime type (maybe we need to know what content is stored) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string MimeType { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Lang.cs b/src/ClientServer/Models/Lang.cs index 400e1fcdb3074b26a00c6ec41058a1d32e82a292..26f61a4372aec30c91136268000b75e9c5b0dc47 100644 --- a/src/ClientServer/Models/Lang.cs +++ b/src/ClientServer/Models/Lang.cs @@ -13,13 +13,13 @@ namespace ClientServer.Models /// <summary> /// the language name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Language { get; set; } /// <summary> /// e.g. en/de ... /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string LangShortcut { get; set; } } diff --git a/src/ClientServer/Models/PLang.cs b/src/ClientServer/Models/PLang.cs index 320295e1fff5d9101141b4f92583f94b0a833a7e..504dac89e5dbb30267ff1f342c7bed69d6a925c0 100644 --- a/src/ClientServer/Models/PLang.cs +++ b/src/ClientServer/Models/PLang.cs @@ -13,27 +13,27 @@ namespace ClientServer.Models /// <summary> /// the name of the programming language /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the internal name e.g. used for the online-editor /// ALSO make sure it's a valid file path would be good to use no spaces... c++ -> cpp /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string InternalName { get; set; } /// <summary> /// a comma separated list of file extensions for this plang /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string FileExtensionsWithDot { get; set; } /// <summary> /// the highlight mode for the editor (currently ace) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string EditorHighlightModeName { get; set; } } } diff --git a/src/ClientServer/Models/Users/AuthToken.cs b/src/ClientServer/Models/Users/AuthToken.cs index 7947fe7e24b0e0cbeb095abb5d41547e8a5d4123..36bd08608290c9dbbe9a341102baf9ff5411a28e 100644 --- a/src/ClientServer/Models/Users/AuthToken.cs +++ b/src/ClientServer/Models/Users/AuthToken.cs @@ -24,7 +24,7 @@ namespace ClientServer.Models.Users /// this is appended to the server secret to get a unique key for every user /// CURRENTLY NOT USED /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string RandomSecret { get; set; } /// <summary> @@ -32,13 +32,13 @@ namespace ClientServer.Models.Users /// no more jwt token because if we rapidly change the tokens then the frontend and backend tokens get out of sync ... /// also if we extend the token lifetime we don't change the content (jwt token would change because other expiration date ...) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string UserAuthToken { get; set; } /// <summary> /// the crsf token which is needed for any request (after login) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string CsrfToken { get; set; } diff --git a/src/ClientServer/Models/Users/ExternalUser.cs b/src/ClientServer/Models/Users/ExternalUser.cs index 2b75c5a85164eaab9a226f10ff3e0f06478df7c9..452bcc9fb3523963fb7ccb85a9059375a09e2831 100644 --- a/src/ClientServer/Models/Users/ExternalUser.cs +++ b/src/ClientServer/Models/Users/ExternalUser.cs @@ -16,24 +16,24 @@ namespace ClientServer.Models.Users /// <summary> /// the token e.g. ahbxf or the username /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Token { get; set; } /// <summary> /// the first name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string FirstName { get; set; } /// <summary> /// the last name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string LastName { get; set; } /// <summary> /// the email /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Email { get; set; } /// <summary> /// true: the external data changed so when the next redirect comes then refresh the connected user data, diff --git a/src/ClientServer/Models/Users/GroupRole.cs b/src/ClientServer/Models/Users/GroupRole.cs index 889559dbf45ced61789b806ed0480e0ddb9a871e..2517350eae2bb9af5afbd8354d6b2180d5fb351c 100644 --- a/src/ClientServer/Models/Users/GroupRole.cs +++ b/src/ClientServer/Models/Users/GroupRole.cs @@ -20,7 +20,7 @@ namespace ClientServer.Models.Users /// <summary> /// the name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } diff --git a/src/ClientServer/Models/Users/GroupRolePermission.cs b/src/ClientServer/Models/Users/GroupRolePermission.cs index a277a44d089a9f79db61f7229cbd48325457fdf3..88b9c438d8b1bf0be6d8df623a69adecec331ed3 100644 --- a/src/ClientServer/Models/Users/GroupRolePermission.cs +++ b/src/ClientServer/Models/Users/GroupRolePermission.cs @@ -14,7 +14,7 @@ namespace ClientServer.Models.Users } public GroupRolePermission(bool CanCreateExercises, bool CanChangeExercises, bool CanDeleteExercises, - bool CanSeeExercisesFromOthersInGroup, bool CanReleaseExercises, + bool CanSeeExercisesFromOthersInGroup, bool canManageExerciseReleases, bool CanLockExercisesPermanently, bool CanAssessExercises, bool CanAddUserToGroup, bool CanRemoveMemberFromGroup, bool CanChangeOtherMembersRole, bool CanSeeOtherMembers, bool CanChangeGroupData) @@ -23,7 +23,7 @@ namespace ClientServer.Models.Users this.CanChangeExercises = CanChangeExercises; this.CanDeleteExercises = CanDeleteExercises; this.CanSeeExercisesFromOthersInGroup = CanSeeExercisesFromOthersInGroup; - this.CanReleaseExercises = CanReleaseExercises; + this.CanManageExerciseReleases = canManageExerciseReleases; this.CanLockExercisesPermanently = CanLockExercisesPermanently; this.CanAssessExercises = CanAssessExercises; this.CanAddUserToGroup = CanAddUserToGroup; @@ -59,9 +59,9 @@ namespace ClientServer.Models.Users public bool CanSeeExercisesFromOthersInGroup { get; set; } /// <summary> - /// true: can release exercises, false: not + /// true: can manage exercise releases (crud), false: not /// </summary> - public bool CanReleaseExercises { get; set; } + public bool CanManageExerciseReleases { get; set; } /// <summary> /// true: can lock exercises, false not diff --git a/src/ClientServer/Models/Users/Settings/CodeEditorSettings.cs b/src/ClientServer/Models/Users/Settings/CodeEditorSettings.cs index 709d7bbe5db8380e5ceb4979aaad9570f111feaa..3238a9313099056aa05fb821a191ef1a829bd585 100644 --- a/src/ClientServer/Models/Users/Settings/CodeEditorSettings.cs +++ b/src/ClientServer/Models/Users/Settings/CodeEditorSettings.cs @@ -13,7 +13,7 @@ namespace ClientServer.Models.Users.Settings /// <summary> /// the theme of the editor /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Theme { get; set; } /// <summary> /// the font size diff --git a/src/ClientServer/Models/Users/Settings/UserSetting.cs b/src/ClientServer/Models/Users/Settings/UserSetting.cs index 632abbdd9f029b6ddb741456c0b1d0d890f81bf9..36d49d195240aeef212adf3da070bf8539e3f36b 100644 --- a/src/ClientServer/Models/Users/Settings/UserSetting.cs +++ b/src/ClientServer/Models/Users/Settings/UserSetting.cs @@ -21,7 +21,7 @@ namespace ClientServer.Models.Users.Settings /// <summary> /// the theme to use (can be null) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Theme { get; set; } diff --git a/src/ClientServer/Models/Users/SystemRole.cs b/src/ClientServer/Models/Users/SystemRole.cs index 333b3356b60aab586099a4617fb05733b6801003..08125b6a96eb1b52648af00b87aa4c8fa0512311 100644 --- a/src/ClientServer/Models/Users/SystemRole.cs +++ b/src/ClientServer/Models/Users/SystemRole.cs @@ -16,13 +16,13 @@ namespace ClientServer.Models.Users /// <summary> /// the name of the role /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the email of the role (may be null) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Email { get; set; } diff --git a/src/ClientServer/Models/Users/SystemSetting.cs b/src/ClientServer/Models/Users/SystemSetting.cs index 058721bf1f1c4abcbcb191d0ab92c5e1756ee76f..1998d68fddb1fcad5de93383a085c4b3957ccedb 100644 --- a/src/ClientServer/Models/Users/SystemSetting.cs +++ b/src/ClientServer/Models/Users/SystemSetting.cs @@ -60,7 +60,7 @@ namespace ClientServer.Models.Users /// <summary> /// a message that is displayed to all users (refreshed ever X seconds, X set in frontend) /// </summary> - [MaxLength(SyndromDbContext.NotesMaxStringLength)] + [MaxLength(YapexDbContext.NotesMaxStringLength)] public string CurrentServerMessage { get; set; } @@ -75,27 +75,27 @@ namespace ClientServer.Models.Users /// /// NOT NOW we only use on test server but we might to add a SubmitTestServerStatsUrl at some point... /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerStatsUrl { get; set; } /// <summary> /// the test server url, used to run tests /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerUrl { get; set; } /// <summary> /// the submit test server url, used to run submit tests /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string SubmitTestServerUrl { get; set; } /// <summary> /// the url to the ui to configure the test server /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string TestServerConfigUiUrl { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Users/User.cs b/src/ClientServer/Models/Users/User.cs index 5856ffb039eebff6ab7567afce85ba972ec21f20..d42b7b0e28ced15eda50891b27c28a07d0f5e691 100644 --- a/src/ClientServer/Models/Users/User.cs +++ b/src/ClientServer/Models/Users/User.cs @@ -28,32 +28,32 @@ namespace ClientServer.Models.Users /// <summary> /// the letter code (e.g. ahbxf) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Token { get; set; } /// <summary> /// the password /// CAN BE NULL if we wait for the user to enter a password after he was redirected for the first time from ostepu (external login) /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Password { get; set; } /// <summary> /// the first name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string FirstName { get; set; } /// <summary> /// the last name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string LastName { get; set; } /// <summary> /// the email /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Email { get; set; } /// <summary> diff --git a/src/ClientServer/Models/Users/UserGroup.cs b/src/ClientServer/Models/Users/UserGroup.cs index 186df88dec9bafb5a4444d5bd323a49745f10a54..0760ec23c19f8e47c3c79b822e3ff917d1e005ce 100644 --- a/src/ClientServer/Models/Users/UserGroup.cs +++ b/src/ClientServer/Models/Users/UserGroup.cs @@ -21,13 +21,13 @@ namespace ClientServer.Models.Users /// <summary> /// the name /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string DisplayName { get; set; } /// <summary> /// the email /// </summary> - [MaxLength(SyndromDbContext.DefaultMaxStringLength)] + [MaxLength(YapexDbContext.DefaultMaxStringLength)] public string Email { get; set; } diff --git a/src/ClientServer/Startup.cs b/src/ClientServer/Startup.cs index 03bae7dbbc891fc8e92dfc1f82ddc8071a67f4b7..8c81cbe5b914a6e433acd7034c0e9cf5138724b2 100644 --- a/src/ClientServer/Startup.cs +++ b/src/ClientServer/Startup.cs @@ -77,11 +77,11 @@ namespace ClientServer { #region ensure that the database is up to date... - var optionsBuilder = new DbContextOptionsBuilder<SyndromDbContext>(); + var optionsBuilder = new DbContextOptionsBuilder<YapexDbContext>(); optionsBuilder.UseNpgsql(AppConfiguration.DbConnectionString); try { - using (var context = new SyndromDbContext(optionsBuilder.Options)) + using (var context = new YapexDbContext(optionsBuilder.Options)) { context.Database.Migrate(); } @@ -117,7 +117,7 @@ namespace ClientServer }); services - .AddDbContext<SyndromDbContext>(option => option.UseNpgsql(AppConfiguration.DbConnectionString), + .AddDbContext<YapexDbContext>(option => option.UseNpgsql(AppConfiguration.DbConnectionString), ServiceLifetime.Scoped); //services.AddDbContext<SyndromDbContext>(options => diff --git a/src/ClientServer/Workers/FileWorker.cs b/src/ClientServer/Workers/FileWorker.cs new file mode 100644 index 0000000000000000000000000000000000000000..161cede73fff5c6a771a2fc1682751ce5eed2f3d --- /dev/null +++ b/src/ClientServer/Workers/FileWorker.cs @@ -0,0 +1,195 @@ +using System; +using System.IO; +using System.Linq; +using System.Reactive.Linq; +using System.Threading; +using ClientServer.Db; +using ClientServer.Helpers; +using Microsoft.EntityFrameworkCore; + +namespace ClientServer.Workers +{ + /// <summary> + /// a worker to delete old/unused uploaded files + /// + /// we could do this immediately when we delete e.g. a custom test (then delete connected files if this was the only connection) + /// but when we cascade delete the custom test (e.g. because the release as deleted) then this won't work + /// we could delete the files when we call the delete api for the parent entity e.g. when the release is deleted + /// then delete all files for all connected custom tests + /// + /// it's easier to just run a worker every X minutes to clear all unused files + /// a file is unused if it is in db but not used by any entity + /// </summary> + public static class FileWorker + { + public static void Start() + { + //see http://introtorx.com/Content/v1.0.10621.0/15_SchedulingAndThreading.html + //and https://stackoverflow.com/questions/20451939/observeon-and-subscribeon-where-the-work-is-being-done +// Console.WriteLine(Thread.CurrentThread.ManagedThreadId); + //this will block the current thread (we call this from main program but this is ok because + //we want this to finish before we start the server fully) + Observable + .Interval(TimeSpan.FromMinutes(AppConfiguration.DeleteFilesWorkerIntervalInMinutes)) +// .Interval(TimeSpan.FromSeconds(20)) //for debug + .Subscribe((min) => { NextRun(); }); + } + + public static void NextRun() + { +// Console.WriteLine($"file: {Thread.CurrentThread.ManagedThreadId}"); + + var optionsBuilder = new DbContextOptionsBuilder<YapexDbContext>(); + optionsBuilder.UseNpgsql(AppConfiguration.DbConnectionString); + + try + { + using (var context = new YapexDbContext(optionsBuilder.Options)) + { + #region (exercise) markdown assets + + var unusedMarkdownAssets = context.FileReferenceMarkdownAssets + .Where(p => p.AssetReferences.Count == 0) + .ToList() + ; + + //we could do this without a transaction because we only use one .SaveChanges but + //maybe in future we want to save after every single delete? + using (var transaction = context.Database.BeginTransaction()) + { + try + { + foreach (var unusedMarkdownAsset in unusedMarkdownAssets) + { + var basePath = Files.GetUploadFilePath(UploadDirType.MarkdownAssets); + + var info = new FileInfo(Path.Combine(basePath, unusedMarkdownAsset.Id.ToString())); + + if (info.Exists) + { + info.Delete(); + Console.WriteLine( + $"[INFO] Deleting unused markdown file with id {unusedMarkdownAsset.Id}"); + } + + Console.WriteLine( + $"[INFO] Deleting unused markdown file reference with id {unusedMarkdownAsset.Id}"); + context.FileReferenceMarkdownAssets.Remove(unusedMarkdownAsset); + } + + if (unusedMarkdownAssets.Count > 0) + { + context.SaveChanges(); + transaction.Commit(); + } + } + catch (Exception e) + { + transaction.Rollback(); + Console.WriteLine(e); + throw; + } + } + + #endregion + + + #region test assets + + var unusedTestAssets = context.FileReferenceTestAssets + .Where(p => p.AssetReferences.Count == 0) + .ToList() + ; + + using (var transaction = context.Database.BeginTransaction()) + { + try + { + foreach (var unusedTestAsset in unusedTestAssets) + { + var basePath = Files.GetUploadFilePath(UploadDirType.TestAssets); + + var info = new FileInfo(Path.Combine(basePath, unusedTestAsset.Id.ToString())); + + if (info.Exists) + { + info.Delete(); + Console.WriteLine($"[INFO] Deleting unused test file with id {unusedTestAsset.Id}"); + } + + Console.WriteLine( + $"[INFO] Deleting unused test file reference with id {unusedTestAsset.Id}"); + context.FileReferenceTestAssets.Remove(unusedTestAsset); + } + + if (unusedTestAssets.Count > 0) + { + context.SaveChanges(); + transaction.Commit(); + } + } + catch (Exception e) + { + transaction.Rollback(); + Console.WriteLine(e); + throw; + } + } + + #endregion + + #region user assets + + var unusedUserFileAssets = context.FileReferenceUserFileAssets + .Where(p => p.CustomTestWithFileAsAssetReferences.Count == 0 && + p.CustomProjectDescriptionWithFileAsAssetReferences.Count == 0 && + p.CustomProjectTestWithFileAsAssetReferences.Count == 0) + .ToList() + ; + + using (var transaction = context.Database.BeginTransaction()) + { + try + { + foreach (var unusedUserFileAsset in unusedUserFileAssets) + { + var basePath = Files.GetUploadFilePath(UploadDirType.UserAssets); + + var info = new FileInfo(Path.Combine(basePath, unusedUserFileAsset.Id.ToString())); + + if (info.Exists) + { + info.Delete(); + Console.WriteLine( + $"[INFO] Deleting unused user file (in file system) with id {unusedUserFileAsset.Id}"); + } + + Console.WriteLine( + $"[INFO] Deleting unused user file reference (in db) with id {unusedUserFileAsset.Id}"); + context.FileReferenceUserFileAssets.Remove(unusedUserFileAsset); + } + + if (unusedUserFileAssets.Count > 0) + { + context.SaveChanges(); + transaction.Commit(); + } + } + catch (Exception e) + { + transaction.Rollback(); + Console.WriteLine(e); + throw; + } + } + + #endregion + } + } + catch (Exception exception) + { + Console.WriteLine(exception); + } + } + } +} diff --git a/src/ClientServer/Workers/ReleaseWorker.cs b/src/ClientServer/Workers/ReleaseWorker.cs index c73d4e7e080b3aa30b45dfbb078f758f2ba70c4c..c2e517cf8bb2c10cca52bac50bad777b86c6405b 100644 --- a/src/ClientServer/Workers/ReleaseWorker.cs +++ b/src/ClientServer/Workers/ReleaseWorker.cs @@ -52,12 +52,12 @@ namespace ClientServer.Workers //Console.WriteLine("Release scheduler run # " + runNumber + " running at: " + now + " (UTC)"); } - var optionsBuilder = new DbContextOptionsBuilder<SyndromDbContext>(); + var optionsBuilder = new DbContextOptionsBuilder<YapexDbContext>(); optionsBuilder.UseNpgsql(AppConfiguration.DbConnectionString); try { - using (var context = new SyndromDbContext(optionsBuilder.Options)) + using (var context = new YapexDbContext(optionsBuilder.Options)) { var automaticReleasesToRelease = context.ExerciseReleases .Where( diff --git a/src/ClientServer/Workers/SubmissionAssessmentWorker.cs b/src/ClientServer/Workers/SubmissionAssessmentWorker.cs index bb78ed9bddad896610064aaabd8f73f098c07787..455b9ca6987d7281c44c6ce0d5004b9ba2296c5b 100644 --- a/src/ClientServer/Workers/SubmissionAssessmentWorker.cs +++ b/src/ClientServer/Workers/SubmissionAssessmentWorker.cs @@ -83,12 +83,12 @@ namespace ClientServer.Schedulers [Obsolete("not properly implemented & unsafe")] public static void RunForRelease(int releaseId) { - var optionsBuilder = new DbContextOptionsBuilder<SyndromDbContext>(); + var optionsBuilder = new DbContextOptionsBuilder<YapexDbContext>(); optionsBuilder.UseNpgsql(AppConfiguration.DbConnectionString); try { - using (var context = new SyndromDbContext(optionsBuilder.Options)) + using (var context = new YapexDbContext(optionsBuilder.Options)) { var systemSettings = context.SystemSettings.FirstOrDefault(); @@ -177,7 +177,7 @@ namespace ClientServer.Schedulers //Console.WriteLine("Assessment scheduler run # " + runNumber + " running at: " + now.ToLocalTime()); } - var optionsBuilder = new DbContextOptionsBuilder<SyndromDbContext>(); + var optionsBuilder = new DbContextOptionsBuilder<YapexDbContext>(); optionsBuilder.UseNpgsql(AppConfiguration.DbConnectionString); int assessedReleases = 0; @@ -185,7 +185,7 @@ namespace ClientServer.Schedulers try { - using (var context = new SyndromDbContext(optionsBuilder.Options)) + using (var context = new YapexDbContext(optionsBuilder.Options)) { var systemSettings = context.SystemSettings.FirstOrDefault(); @@ -273,7 +273,7 @@ namespace ClientServer.Schedulers /// <param name="context"></param> /// <param name="testingController"></param> /// <returns></returns> - internal static bool AddDummyAssessments(ExerciseRelease release, SyndromDbContext context, + internal static bool AddDummyAssessments(ExerciseRelease release, YapexDbContext context, TestingController testingController) { ExerciseRelease finishedRelease = context.ExerciseReleases @@ -475,7 +475,7 @@ namespace ClientServer.Schedulers /// <param name="testingController">the testing controller to run the tests</param> /// <param name="resetTestResultsFirst">true: reset all test results before running the assessment, false: not</param> /// <returns>true: ok, false: no matching release found</returns> - internal static async Task<bool> RunForRelease(ExerciseRelease release, SyndromDbContext context, + internal static async Task<bool> RunForRelease(ExerciseRelease release, YapexDbContext context, TestingController testingController, bool reRunNotFinishedAssessments, bool resetTestResultsFirst, SystemSetting systemSettings) { @@ -715,7 +715,7 @@ namespace ClientServer.Schedulers /// <param name="testingController">the testing controller</param> /// <returns></returns> internal static async Task<bool> RunSingleAutomaticAssessment(ExerciseRelease release, SolutionPrimaryKey pk, - SyndromDbContext context, TestingController testingController, SystemSetting systemSettings) + YapexDbContext context, TestingController testingController, SystemSetting systemSettings) { ExerciseRelease finishedRelease = await context.ExerciseReleases .Include(p => p.ExerciseReleaseWithUserAsParticipations) @@ -844,7 +844,7 @@ namespace ClientServer.Schedulers /// <returns>true: everything ok, false: some error</returns> private static async Task<bool> RunAutomaticAssessment(SolutionPrimaryKey pk, int maxNormalTestPoints, int maxSubmitTestPoints, - List<Test> normalTests, List<Test> submitTests, SyndromDbContext context, + List<Test> normalTests, List<Test> submitTests, YapexDbContext context, CodeTemplate codeTemplate, TestingController testingController, SystemSetting systemSettings,