summaryrefslogtreecommitdiff
path: root/src/com
diff options
context:
space:
mode:
Diffstat (limited to 'src/com')
-rw-r--r--src/com/p4square/grow/config/Config.java14
-rw-r--r--src/com/p4square/grow/frontend/TrainingPageResource.java6
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);