From 3c5f554f31a5e45ff2ee75ce07a9a0dbf2168368 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Janis=20Daniel=20Da=CC=88hne?= <janis.daehne2@student.uni-halle.de> Date: Wed, 12 Jun 2019 17:12:27 +0200 Subject: [PATCH] - fixed issue where some release crud operations could be executed without permission - forgot to add file worker - renamed syndrom context (old) to yapex context - renamed column CanReleaseExercises to CanManageExerciseReleases in GroupRolePermissions --- .../Controllers/ControllerWithDb.cs | 4 +- .../Core/AssessmentStatisticsController.cs | 2 +- .../CustomProjectsOverviewController.cs | 2 +- .../EditCustomProjectController.cs | 2 +- .../DoExerciseAfterSolutionController.cs | 2 +- .../Core/Exercises/DoExerciseController.cs | 2 +- .../Core/Exercises/DownloadAssetController.cs | 2 +- .../Exercises/ExerciseEditorController.cs | 2 +- .../Exercises/ExerciseOverviewController.cs | 12 +- .../Core/Exercises/PLangController.cs | 2 +- .../Core/Exercises/ReleaseController.cs | 26 ++- .../Core/Exercises/SubmissionController.cs | 2 +- .../Core/Exercises/TagsController.cs | 2 +- .../Core/Exercises/TestTypesController.cs | 2 +- .../TutorViewAssessmentController.cs | 2 +- src/ClientServer/Controllers/Core/Init.cs | 24 +-- .../Controllers/Core/Login/AuthController.cs | 2 +- .../Core/Login/AuthTokenController.cs | 4 +- .../Controllers/Core/Misc/LangController.cs | 2 +- .../Core/SystemSettingsController.cs | 2 +- .../Core/Testing/TestingController.cs | 2 +- .../Controllers/Core/TimeController.cs | 2 +- .../Controllers/Core/Users/GroupController.cs | 8 +- .../Core/Users/GroupRolesController.cs | 14 +- .../Core/Users/SystemRolesController.cs | 2 +- .../Core/Users/UserSettingsController.cs | 2 +- .../Controllers/Core/Users/UsersController.cs | 4 +- .../dashboard/DashboardController.cs | 4 +- ...{SyndromDBContext.cs => YapexDbContext.cs} | 33 +-- .../20160824181544_init.Designer.cs | 2 +- .../20160827045350_init2.Designer.cs | 2 +- ...160831154002_userSettingsTheme.Designer.cs | 2 +- .../20160903141707_init4.Designer.cs | 2 +- .../20160906195429_init5.Designer.cs | 2 +- .../20160921124646_final1.Designer.cs | 2 +- .../20160921130105_final2.Designer.cs | 2 +- .../20160921155214_final3.Designer.cs | 2 +- .../20160923095756_final4.Designer.cs | 2 +- .../20161001124636_tagPermission.Designer.cs | 2 +- ...20161001140957_tagDisplayName2.Designer.cs | 2 +- ...0161001142650_deleteTagCascade.Designer.cs | 2 +- ...161220124855_ExerciseAddedNote.Designer.cs | 2 +- .../20170112222129_authTokens.Designer.cs | 2 +- .../20170307190625_lang.Designer.cs | 2 +- ...71009190359_tagBackgroundColor.Designer.cs | 2 +- .../20171009191709_tagDescription.Designer.cs | 2 +- .../20171012120923_tutorFreedback.Designer.cs | 2 +- ...nabledNullableAssessmentPoints.Designer.cs | 2 +- ...20171025160923_uniqueAuthToken.Designer.cs | 2 +- ...50_participationShouldNotCount.Designer.cs | 2 +- .../20171109144627_customProjects.Designer.cs | 2 +- ...3042_customProjectTestsWeights.Designer.cs | 2 +- ..._dashboardSystemRolePermission.Designer.cs | 2 +- ...0214130057_ReleaseEExamOptions.Designer.cs | 2 +- ...12957_ReleaseHideSiteHeaderBar.Designer.cs | 2 +- ...2160339_removeSolutionVersion1.Designer.cs | 2 +- ...2171554_removeSolutionVersion2.Designer.cs | 2 +- ...2182512_removeSolutionVersion3.Designer.cs | 2 +- ...3125543_removeSolutionVersion4.Designer.cs | 2 +- ...roupRolePermissionAndUpdatedAt.Designer.cs | 2 +- ...80929145343_addedAfterSolution.Designer.cs | 2 +- .../20181001151109_maxCustomTests.Designer.cs | 2 +- .../20181004180755_csrfToken.Designer.cs | 2 +- ...04_UserSettingsAllowRemoveLang.Designer.cs | 2 +- ...edSystemPermissionCanEditGroup.Designer.cs | 2 +- ...1012124603_SetStringMaxLengths.Designer.cs | 2 +- .../20181026193143_ServerMessage.Designer.cs | 2 +- ...ParticipationLockSolutionsFlag.Designer.cs | 2 +- ...articipationLockSolutionsFlag2.Designer.cs | 2 +- ...23151602_StoreAssessmentErrors.Designer.cs | 2 +- ...20190202125311_MoreExamOptions.Designer.cs | 2 +- ...190213174200_NewSystemSettings.Designer.cs | 2 +- ...190214140941_PLangHighlighting.Designer.cs | 2 +- ...0214151239_PLangFileExtensions.Designer.cs | 2 +- ...RemovedUnusedPlangMarkdownMode.Designer.cs | 2 +- ...20190320182329_TestAssetHashes.Designer.cs | 2 +- ...29152856_LastEditingIpSolution.Designer.cs | 2 +- ..._SystemSettingsTestServerUiUrl.Designer.cs | 2 +- ...0446_SomeDeleteActionsChanged1.Designer.cs | 2 +- .../20190419112922_JustRunTimeout.Designer.cs | 2 +- ...9153412_OtherJustRunTestLimits.Designer.cs | 2 +- ...100505_CustomProjectTestLimits.Designer.cs | 2 +- ...0190420164845_TestRunningTimes.Designer.cs | 2 +- ...reTestLimitsAndCompilerTimeout.Designer.cs | 2 +- ...20190430202149_MaxManualPoints.Designer.cs | 2 +- ...0501142551_HiddenTemplateFiles.Designer.cs | 2 +- ...43221_RenameTemplateVisibility.Designer.cs | 2 +- ...160702_ReleasePLangRequiredNow.Designer.cs | 2 +- ...0190505105057_ExerciseExamLock.Designer.cs | 2 +- ...rciseLockedGroupRolePermission.Designer.cs | 2 +- ...508134143_RemoveCopyPermission.Designer.cs | 2 +- ...30135332_ExerciseMarkdownFiles.Designer.cs | 2 +- ...1145551_ExerciseTestAssetFiles.Designer.cs | 2 +- ...20190602180648_CustomUserFiles.Designer.cs | 2 +- ...AssetPathsAddedCompilerOptions.Designer.cs | 2 +- .../SyndromDbContextModelSnapshot.cs | 4 +- .../Models/CustomProjects/CustomProject.cs | 2 +- .../CustomProjectDescription.cs | 2 +- .../CustomProjectSolutionFile.cs | 4 +- .../CustomProjects/CustomProjectTest.cs | 4 +- .../CustomProjects/CustomProjectTestAsset.cs | 6 +- ...stomProjectTestWithSolutionAsTestResult.cs | 6 +- .../AfterSolutions/AfterSolutionFile.cs | 4 +- ...CustomTestWithAfterSolutionAsTestResult.cs | 6 +- .../TestWithAfterSolutionAsTestResult.cs | 6 +- src/ClientServer/Models/Exercises/Asset.cs | 6 +- src/ClientServer/Models/Exercises/Exercise.cs | 6 +- .../Models/Exercises/ExerciseDescription.cs | 2 +- .../Exercises/Release/ExerciseRelease.cs | 4 +- ...ustomTestWithSingleSolutionAsTestResult.cs | 6 +- .../Models/Exercises/Solution/Solution.cs | 4 +- .../Exercises/Solution/SolutionAssessment.cs | 6 +- .../Models/Exercises/Solution/SolutionFile.cs | 4 +- .../TestWithSingleSolutionAsTestResult.cs | 6 +- src/ClientServer/Models/Exercises/Tag.cs | 10 +- .../Models/Exercises/TemplateFile.cs | 4 +- .../Models/Exercises/Tests/CustomTest.cs | 4 +- .../Models/Exercises/Tests/CustomTestAsset.cs | 6 +- .../Tests/DefaultCustomTestSettings.cs | 2 +- .../Models/Exercises/Tests/Test.cs | 4 +- .../Models/Exercises/Tests/TestAsset.cs | 6 +- .../Models/Exercises/Tests/TestSettings.cs | 2 +- .../Models/Exercises/Tests/TestType.cs | 4 +- .../Files/FileReferenceMarkdownAsset.cs | 6 +- .../Models/Files/FileReferenceTestAsset.cs | 6 +- .../Files/FileReferenceUserFileAsset.cs | 6 +- src/ClientServer/Models/Lang.cs | 4 +- src/ClientServer/Models/PLang.cs | 8 +- src/ClientServer/Models/Users/AuthToken.cs | 6 +- src/ClientServer/Models/Users/ExternalUser.cs | 8 +- src/ClientServer/Models/Users/GroupRole.cs | 2 +- .../Models/Users/GroupRolePermission.cs | 8 +- .../Users/Settings/CodeEditorSettings.cs | 2 +- .../Models/Users/Settings/UserSetting.cs | 2 +- src/ClientServer/Models/Users/SystemRole.cs | 4 +- .../Models/Users/SystemSetting.cs | 10 +- src/ClientServer/Models/Users/User.cs | 10 +- src/ClientServer/Models/Users/UserGroup.cs | 4 +- src/ClientServer/Startup.cs | 6 +- src/ClientServer/Workers/FileWorker.cs | 195 ++++++++++++++++++ src/ClientServer/Workers/ReleaseWorker.cs | 4 +- .../Workers/SubmissionAssessmentWorker.cs | 16 +- 142 files changed, 460 insertions(+), 280 deletions(-) rename src/ClientServer/Db/{SyndromDBContext.cs => YapexDbContext.cs} (97%) create mode 100644 src/ClientServer/Workers/FileWorker.cs diff --git a/src/ClientServer/Controllers/ControllerWithDb.cs b/src/ClientServer/Controllers/ControllerWithDb.cs index 096bac3..62485b9 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 0f30f26..1863f39 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 f592c10..b34cfe9 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 01b4244..b1dbc39 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 63ffb6a..537e39a 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 9038691..66529cd 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 640deae..404f108 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 2c85385..4b4aacc 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 fd39357..253993b 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 7a7640e..56c2fe6 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 a6fdd5b..1bf2cfa 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 1bbfd87..9dd5198 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 fe2887a..90a7ab4 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 564dd36..110c605 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 4a2cec3..a0ecd8c 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 1b6821f..e136241 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 1e0c535..a69354d 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 2c0356e..4a942a7 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 02adddf..45e840b 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 a8ca00e..45c3047 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 a6b18be..a71f5c5 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 1d23522..745c6ad 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 fc6cbe2..3c7d1b2 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 efc40b8..4ed84ab 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 611c5d3..cf9eac1 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 ad0dc94..4f23c68 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 31c9de4..b768c52 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 802151f..f2fac83 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 1472936..a72d157 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 3d57898..5d41f3e 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 f2f6a94..510860b 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 79edffd..f736968 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 f194b09..c2eebf8 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 3f5c752..780b520 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 176c21f..77c1452 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 e7933f1..014db0d 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 fefad22..246c6db 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 21059b6..ffa5752 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 1fbbb23..6f47853 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 65fdb53..6bc4209 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 82daadf..9f6ba77 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 bb5698f..c156237 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 2c0af9d..231bf29 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 12ad49d..5d11ad7 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 8291512..653a853 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 42b85b4..7be5ef6 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 6d7daed..5a2a679 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 980f11c..b735cab 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 7dfd55f..c7da8f5 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 803dddc..86ecc3c 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 2abe853..8d11c6d 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 d220225..2123e89 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 ce38be3..6a2a60b 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 f57c437..4e5dcc8 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 162a77d..270ddcd 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 873ef67..92d3d40 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 fecd086..bcd52be 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 200d0c6..17ca2dd 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 05313aa..2d1b9ce 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 242274e..2c6f209 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 6e4d185..3fcbd67 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 b3f779d..5ca63ed 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 65871a1..4328f7b 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 029f0e1..99411d8 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 edf8ac4..0ab7523 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 27a3e2d..3539a26 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 664af07..a7bc0a9 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 e0c79b4..f8b7577 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 0ddbbcb..9b11858 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 8ea0907..120d92d 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 0c6e12c..02fce0a 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 43b1218..0d7baf3 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 aff7480..b429996 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 e425bb0..16e2efe 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 ac0b6ba..4b20cd7 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 674a3ef..7b37ac9 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 b65aa59..b53f12d 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 1eb4265..5f59360 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 48f464d..fc2af72 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 c7f3375..3775fe8 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 c878311..1cf2da8 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 f5fda29..3da6ddb 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 a420a1a..998a583 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 715956d..a38ef7f 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 078db94..d45019e 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 e396536..71248de 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 a3974f5..05379f4 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 551ac5d..29933ce 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 c6d1dcd..934dbc3 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 d98e406..33f06c2 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 c5163ac..84e51de 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 031a987..44228ed 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 30f894f..4996cf0 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 611c6a7..33ce473 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 4ce0722..61149c8 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 d2e0591..989fc8c 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 bbe6ff1..58feb83 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 e1a3a20..327634b 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 ef4574e..4d2b9eb 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 8f6bdfb..4393cae 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 958c261..fb07fc4 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 5f62cd0..9454b84 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 9effd09..d41b093 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 0124779..099890c 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 378eb5d..cbf5dfb 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 78c175c..03d1814 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 95c8534..36d5edb 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 ca06238..c5d07bc 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 5061d00..2846b74 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 d1ad5a9..28be011 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 753c5cb..d24e8ed 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 f7ef268..6dfb963 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 fdbb4c8..1307798 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 e366803..64b35e8 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 ab3c285..510c8db 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 a66a8e6..1a4d774 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 3f0cdc1..5053b15 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 634234f..19e085e 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 23f8fb8..237e502 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 de61987..8594cdb 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 31a079a..bdf696a 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 9c9c1c5..8972147 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 dbfa2b3..5728bd3 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 9b8bb08..575bd83 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 78133c3..f728ece 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 7edfb1a..dc2754c 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 400e1fc..26f61a4 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 320295e..504dac8 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 7947fe7..36bd086 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 2b75c5a..452bcc9 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 889559d..2517350 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 a277a44..88b9c43 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 709d7bb..3238a93 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 632abbd..36d49d1 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 333b335..08125b6 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 058721b..1998d68 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 5856ffb..d42b7b0 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 186df88..0760ec2 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 03bae7d..8c81cbe 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 0000000..161cede --- /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 c73d4e7..c2e517c 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 bb78ed9..455b9ca 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, -- GitLab