diff options
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/p4square/grow/config/Config.java | 14 | ||||
-rw-r--r-- | src/com/p4square/grow/frontend/TrainingPageResource.java | 6 |
2 files changed, 18 insertions, 2 deletions
diff --git a/src/com/p4square/grow/config/Config.java b/src/com/p4square/grow/config/Config.java index fea75e0..d739d61 100644 --- a/src/com/p4square/grow/config/Config.java +++ b/src/com/p4square/grow/config/Config.java @@ -150,4 +150,18 @@ public class Config { return defaultValue; } + + public boolean getBoolean(String key) { + return getBoolean(key, false); + } + + public boolean getBoolean(String key, boolean defaultValue) { + final String propertyValue = getString(key); + + if (propertyValue != null) { + return (propertyValue.charAt(0) & 0xDF) == 'T'; + } + + return defaultValue; + } } diff --git a/src/com/p4square/grow/frontend/TrainingPageResource.java b/src/com/p4square/grow/frontend/TrainingPageResource.java index 3ad3297..a8245c2 100644 --- a/src/com/p4square/grow/frontend/TrainingPageResource.java +++ b/src/com/p4square/grow/frontend/TrainingPageResource.java @@ -119,6 +119,7 @@ public class TrainingPageResource extends FreeMarkerPageResource { // The user is not allowed to view chapters after his highest completed chapter. // In this loop we find which chapters are allowed and check if the user tried // to skip ahead. + boolean allowUserToSkip = mConfig.getBoolean("allowUserToSkip", true); String defaultChapter = null; boolean userTriedToSkip = false; @@ -134,9 +135,9 @@ public class TrainingPageResource extends FreeMarkerPageResource { } } else { - allowed = false; + allowed = allowUserToSkip; - if (chapterId.equals(mChapter)) { + if (!allowUserToSkip && chapterId.equals(mChapter)) { userTriedToSkip = true; } } @@ -194,6 +195,7 @@ public class TrainingPageResource extends FreeMarkerPageResource { root.put("isChapterAllowed", allowedChapters); root.put("chapterProgress", chapterProgress); root.put("videos", videos); + root.put("allowUserToSkip", allowUserToSkip); return new TemplateRepresentation(mTrainingTemplate, root, MediaType.TEXT_HTML); |