From 43393667cda8dfce07c0f51ec24af7d234869a62 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Janis=20Daniel=20Da=CC=88hne?=
 <janis.daehne2@student.uni-halle.de>
Date: Mon, 21 Oct 2019 16:00:26 +0200
Subject: [PATCH] - fixed some issues where IsContentVisibleForUser was not
 applied correctly when reset code, saving files, saving after solution
 files...

---
 src/ClientServer/Config/Constants.cs                           | 2 +-
 .../DoExerciseAfterSolutionController.cs                       | 2 +-
 .../Controllers/Core/Exercises/DoExerciseController.cs         | 3 ++-
 .../Controllers/Core/Exercises/ExerciseEditorController.cs     | 3 ++-
 4 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/ClientServer/Config/Constants.cs b/src/ClientServer/Config/Constants.cs
index 6440579..feb910f 100644
--- a/src/ClientServer/Config/Constants.cs
+++ b/src/ClientServer/Config/Constants.cs
@@ -13,7 +13,7 @@ namespace ClientServer.Helpers
     /// </summary>
     public static class Constants
     {
-        public static string VersionString = "2.5.1";
+        public static string VersionString = "2.5.2";
 
         /// <summary>
         /// this is only set once at program.cs!!
diff --git a/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs b/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs
index 608902f..79f64a7 100644
--- a/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs
+++ b/src/ClientServer/Controllers/Core/Exercises/DoExerciseAfterSolution/DoExerciseAfterSolutionController.cs
@@ -576,7 +576,7 @@ namespace ClientServer.Controllers.Core.Exercises.DoExerciseAfterSolution
                             FileNameWithExtension = p.FileNameWithExtension,
                             TemplateFileId = p.TemplateFileId,
                             DisplayIndex = p.DisplayIndex,
-                            //CodeTemplateId = oldCodeTemplateForPLang.Id //TODO delete if not used
+                            IsContentVisibleForUser = p.TemplateFile?.IsContentVisibleForUser ?? true,
                         }).ToList()
             };
 
diff --git a/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs b/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs
index 907d0e3..519e9cd 100644
--- a/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs
+++ b/src/ClientServer/Controllers/Core/Exercises/DoExerciseController.cs
@@ -1927,7 +1927,7 @@ namespace ClientServer.Controllers.Core.Exercises
                             FileNameWithExtension = p.FileNameWithExtension,
                             TemplateFileId = p.TemplateFileId,
                             DisplayIndex = p.DisplayIndex,
-                            //CodeTemplateId = oldCodeTemplateForPLang.Id //TODO delete if not used
+                            IsContentVisibleForUser = p.TemplateFile?.IsContentVisibleForUser ?? true,
                         }).ToList()
             };
 
@@ -2089,6 +2089,7 @@ namespace ClientServer.Controllers.Core.Exercises
                             FileNameWithExtension = p.FileNameWithExtension,
                             TemplateFileId = p.TemplateFileId,
                             DisplayIndex = p.DisplayIndex,
+                            IsContentVisibleForUser = p.TemplateFile?.IsContentVisibleForUser ?? true,
                         }).ToList()
             };
 
diff --git a/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs b/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs
index ecd1aca..4d6250d 100644
--- a/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs
+++ b/src/ClientServer/Controllers/Core/Exercises/ExerciseEditorController.cs
@@ -2599,7 +2599,8 @@ namespace ClientServer.Controllers.Core.Exercises
         public bool IsEditableByUser { get; set; }
 
         /// <summary>
-        /// 
+        /// true: file content should be visible by the user,
+        /// false: not visible to the user (but user could get all files in the dir...)
         /// </summary>
         public bool IsContentVisibleForUser { get; set; }
 
-- 
GitLab