summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2013-11-18 22:28:10 -0800
committerJesse Morgan <jesse@jesterpm.net>2013-11-18 22:28:10 -0800
commit330f60ef82abf2b6d4920ac26ed5944c33d87696 (patch)
tree96ba447c82c0558e7139b04400632abc7089fbb9 /src
parent41a861fc3fa755887cda26ea52cf174911549caf (diff)
Making strict viewing order configurable.
Diffstat (limited to 'src')
-rw-r--r--src/com/p4square/grow/config/Config.java14
-rw-r--r--src/com/p4square/grow/frontend/TrainingPageResource.java6
-rw-r--r--src/templates/templates/training.ftl2
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>