diff options
author | Jesse Morgan <jesse@jesterpm.net> | 2013-11-18 22:28:10 -0800 |
---|---|---|
committer | Jesse Morgan <jesse@jesterpm.net> | 2013-11-18 22:28:10 -0800 |
commit | 330f60ef82abf2b6d4920ac26ed5944c33d87696 (patch) | |
tree | 96ba447c82c0558e7139b04400632abc7089fbb9 /src | |
parent | 41a861fc3fa755887cda26ea52cf174911549caf (diff) |
Making strict viewing order configurable.
Diffstat (limited to 'src')
-rw-r--r-- | src/com/p4square/grow/config/Config.java | 14 | ||||
-rw-r--r-- | src/com/p4square/grow/frontend/TrainingPageResource.java | 6 | ||||
-rw-r--r-- | src/templates/templates/training.ftl | 2 |
3 files changed, 19 insertions, 3 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); diff --git a/src/templates/templates/training.ftl b/src/templates/templates/training.ftl index 80c5ca4..cf230b6 100644 --- a/src/templates/templates/training.ftl +++ b/src/templates/templates/training.ftl @@ -50,7 +50,7 @@ <#if (video.pdf!"") != ""> <span class="pdf"><a href="${video.pdf}" target="_blank">Outline</a></span> </#if> - <#if allowed && !video.completed> + <#if !allowUserToSkip && allowed && !video.completed> <#assign allowed = false> </#if> </article> |