diff --git a/i18n/en.ts b/i18n/en.ts
index 2e18146b83951b840bb7296a4160a1b6fc368b7f..1be0b2700fa149453c5759955dbf7d60411f1b01 100644
--- a/i18n/en.ts
+++ b/i18n/en.ts
@@ -406,7 +406,7 @@ export const lang_en: LangObj = {
   "Content editable by user": "Content editable by user",
   "Readonly files are always up-to-date with the version from the exercise. A copy of the readonly file is still stored in the users solution. If you change from normal to readonly file then the content from the user is not changed but no one can access the file content (backend will always return the up-to-date version from the exercise and not the user file content). If you change from readonly to normal file then the content is the same as the readonly file or if the file was changed by the user (because is was previously a normal file and changed to readonly prior and now back to normal) then the last state (content) is used when the user had saved the file before it got readonly.": "Readonly files are always up-to-date with the version from the exercise. A copy of the readonly file is still stored in the users solution. If you change from normal to readonly file then the content from the user is not changed but no one can access the file content (backend will always return the up-to-date version from the exercise and not the user file content). If you change from readonly to normal file then the content is the same as the readonly file or if the file was changed by the user (because is was previously a normal file and changed to readonly prior and now back to normal) then the last state (content) is used when the user had saved the file before it got readonly.",
   "Content is visible for user" : "Content is visible for user",
-  "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!" : "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!",
+  "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real user file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. When a user solution is created a copy of the template is created as a user file (this is the real file content). Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!" : "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real user file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. When a user solution is created a copy of the template is created as a user file (this is the real file content). Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!",
   "All programming languages have already a code template.": "All programming languages have already a code template.",
   "This exercise has already releases so you are not able to delete templates, add/remove template files or change the main file to another file." : "This exercise has already releases so you are not able to delete templates, add/remove template files or change the main file to another file.",
   "You need at least one code template. Only programming languages with a code template will be choosable by the users." : "You need at least one code template. Only programming languages with a code template will be choosable by the users.",
@@ -560,11 +560,11 @@ export const lang_en: LangObj = {
   "Feedback": "Feedback",
   "Feedback from tutor": "Feedback from tutor",
   "Tutor-Editor": "Tutor-Editor",
-  "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server.": "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server.",
+  "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).": "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).",
   "Submission code": "Submission code",
-  "This editor displays the original submission in a readonly editor.": "This editor displays the original submission in a readonly editor.",
+  "This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).": "This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).",
   "Subsequent editor code" : "Subsequent editor code",
-  "This editor displays the subsequent editor code in a readonly editor.": "This editor displays the subsequent editor code in a readonly editor.",
+  "This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent). Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).": "This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent). Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).",
   "Manual assessment": "Manual assessment",
   "The submit tests results are only displayed after the automatic assessment has finished. Note that these submit tests are executed on the submit test server (not the normal test server), so there might be different settings e.g. timeouts": "The submit tests results are only displayed after the automatic assessment has finished. Note that these submit tests are executed on the submit test server (not the normal test server), so there might be different settings e.g. timeouts",
   "The release is still open.": "The release is still open.",
diff --git a/i18n/i18nRoot.ts b/i18n/i18nRoot.ts
index 408d77d7e336f198ffb6f8c6e40f6e319f1e58e3..e66381619c0b9901b82b7fefdfbdf58336d24fa2 100644
--- a/i18n/i18nRoot.ts
+++ b/i18n/i18nRoot.ts
@@ -416,7 +416,7 @@ export interface LangObj {
   "Content editable by user": string
   "Readonly files are always up-to-date with the version from the exercise. A copy of the readonly file is still stored in the users solution. If you change from normal to readonly file then the content from the user is not changed but no one can access the file content (backend will always return the up-to-date version from the exercise and not the user file content). If you change from readonly to normal file then the content is the same as the readonly file or if the file was changed by the user (because is was previously a normal file and changed to readonly prior and now back to normal) then the last state (content) is used when the user had saved the file before it got readonly.": string
   "Content is visible for user": string
-  "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!": string
+  "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real user file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. When a user solution is created a copy of the template is created as a user file (this is the real file content). Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!": string
   "All programming languages have already a code template.": string
   "This exercise has already releases so you are not able to delete templates, add/remove template files or change the main file to another file.": string
   "You need at least one code template. Only programming languages with a code template will be choosable by the users.": string
@@ -571,11 +571,11 @@ export interface LangObj {
   "Feedback": string
   "Feedback from tutor": string
   "Tutor-Editor": string
-  "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server.": string
+  "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).": string
   "Submission code": string
-  "This editor displays the original submission in a readonly editor.": string
+  "This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).": string
   "Subsequent editor code": string
-  "This editor displays the subsequent editor code in a readonly editor.": string
+  "This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent). Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).": string
   "Manual assessment": string
   "The submit tests results are only displayed after the automatic assessment has finished. Note that these submit tests are executed on the submit test server (not the normal test server), so there might be different settings e.g. timeouts": string
   "The release is still open.": string
diff --git a/src/components/sites/exerciseEditorSite/codeTemplatesPanel/codeTemplateDetailsView.tsx b/src/components/sites/exerciseEditorSite/codeTemplatesPanel/codeTemplateDetailsView.tsx
index 1ca32cf03aa69d18d1d9313124b5b85254c25bae..c8d698ed7092e3a6b4444f5ced77039c17a0fe70 100644
--- a/src/components/sites/exerciseEditorSite/codeTemplatesPanel/codeTemplateDetailsView.tsx
+++ b/src/components/sites/exerciseEditorSite/codeTemplatesPanel/codeTemplateDetailsView.tsx
@@ -76,7 +76,7 @@ class codeTemplateDetailsView extends React.Component<Props, any> {
                   }
                 </span>
                 <HelpPopup defaultText={getI18n(this.props.langId,
-                                                "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!"
+                                                "The file content is hidden from the user (empty file is displayed) and is readonly but the file name is visible. If this option is checked it overwrites the readonly option. If you change from hidden to visible to user will get the real user file content. If you change from visible to hidden the user will get a blank file. The user file (with old content) will not get touched/updated only all backend calls will return the blank file. When a user solution is created a copy of the template is created as a user file (this is the real file content). Also note that the user CAN get the file content when the program is executed (e.g. list all files in directory and read them)!"
                 )} wide='very'/>
               </Table.HeaderCell>
             </Table.Row>
diff --git a/src/components/sites/tutorViewSite/tutorViewSite.tsx b/src/components/sites/tutorViewSite/tutorViewSite.tsx
index b3441fdf9afebb4b5482225069830e23560af7fb..4d62dbe024b9163c773539bc2bdcce5e1fba97b9 100644
--- a/src/components/sites/tutorViewSite/tutorViewSite.tsx
+++ b/src/components/sites/tutorViewSite/tutorViewSite.tsx
@@ -367,7 +367,7 @@ class tutorViewSite extends React.Component<Props & RouteComponentProps<MatchedP
                   icon={'font'}
                   applyDefaultPadding={false}
                   defaultHelpText={getI18n(this.props.langId,
-                                           "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server."
+                                           "This editor is used to check and assess the submission manually. It's also used to run the tests. Any modification is NOT saved to the server. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent)."
                   )}
                   tabHeaderBar={
                     <TutorEditorPanelHeaderBar/>
@@ -381,7 +381,7 @@ class tutorViewSite extends React.Component<Props & RouteComponentProps<MatchedP
                   icon={'send outline'}
                   applyDefaultPadding={false}
                   defaultHelpText={getI18n(this.props.langId,
-                                           'This editor displays the original submission in a readonly editor.'
+                                           'This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).'
                   )}
                   tabHeaderBar={
                     <UserSolutionEditorPanelHeaderBar/>
@@ -397,7 +397,7 @@ class tutorViewSite extends React.Component<Props & RouteComponentProps<MatchedP
                     icon={'life ring'}
                     applyDefaultPadding={false}
                     defaultHelpText={getI18n(this.props.langId,
-                                             'This editor displays the subsequent editor code in a readonly editor.'
+                                             'This editor displays the original submission in a readonly editor. Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent). Note that the hidden files are displayed because the frontend needs all files to run tests (because the tutor editor is not persistent).'
                     )}
                     tabHeaderBar={
                       <AfterEditorPanelHeaderBar/>
diff --git a/src/constants.ts b/src/constants.ts
index bcf6511fe4f58752fe5f3771a9aa8e249f01796f..762be1d1807e8fc6016c23f2b3f530570e014179 100644
--- a/src/constants.ts
+++ b/src/constants.ts
@@ -13,7 +13,7 @@ import Logger from './helpers/logger'
  * y - breaking changes / new features
  * z - fixes, small changes
  */
-export const versionString = '2.6.1'
+export const versionString = '2.6.2'
 
 
 export const supportMail = 'yapex@informatik.uni-halle.de'
diff --git a/src/state/actions/doExerciseSite/doExerciseSiteActions.ts b/src/state/actions/doExerciseSite/doExerciseSiteActions.ts
index f1e13e76f8b884b7053cac634d6ed73ccb69c4c3..e18e394b7d19acce3a643dd56823841b5963d117 100644
--- a/src/state/actions/doExerciseSite/doExerciseSiteActions.ts
+++ b/src/state/actions/doExerciseSite/doExerciseSiteActions.ts
@@ -434,7 +434,9 @@ export function setIsDoCodeEditorSettingsDialogDisplayed(isDisplayed: boolean):
 
 //--- custom test asset files
 
-export function setIsAddCustomTestAssetFilesModalDisplayed(isDisplayed: boolean, isBusy: boolean): SET_isAddCustomTestAssetFilesModalDisplayedAction {
+export function setIsAddCustomTestAssetFilesModalDisplayed(isDisplayed: boolean,
+                                                           isBusy: boolean
+): SET_isAddCustomTestAssetFilesModalDisplayedAction {
   return {
     type: ActionType.SET_isAddCustomTestAssetFilesModalDisplayed,
     isDisplayed,
@@ -457,7 +459,6 @@ export function setAddCustomTestAssetFilesModalUploadPercentage(addCustomTestAss
 }
 
 
-
 export function loadDoExerciseSite(releaseCode: string): AwaitActions {
   return async (dispatch, getState) => {
 
@@ -569,8 +570,7 @@ export function loadDoExerciseSite(releaseCode: string): AwaitActions {
           await dispatch(getDoExerciseAfterSubmitTestResults(releaseCode, lastEditedPLangId))
         }
 
-      }
-      else {
+      } else {
         //create the initial dummy after solution
         //this is done via the check if time is up
       }