diff --git a/bin/SnapshotWatch-settings.json b/bin/SnapshotWatch-settings.json
index 864156d..66aa984 100644
--- a/bin/SnapshotWatch-settings.json
+++ b/bin/SnapshotWatch-settings.json
@@ -1 +1 @@
-{"settings":[{"key":"showHeartRate","valueType":"boolean","defaultValue":true,"configTitle":"ShowHeartRateLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"boolean","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null},{"key":"graphColour","valueType":"number","defaultValue":0,"configTitle":"GraphColourLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"list","configReadonly":false,"configRequired":true,"configOptions":[{"display":"DK_GRAY","value":0},{"display":"RED","value":1},{"display":"DK_RED","value":2},{"display":"ORANGE","value":3},{"display":"YELLOW","value":4},{"display":"GREEN","value":5},{"display":"DK_GREEN","value":6},{"display":"BLUE","value":7},{"display":"DK_BLUE","value":8},{"display":"PURPLE","value":9},{"display":"PINK","value":10}],"configMin":null,"configMax":null,"configMaxLength":null},{"key":"useZonesColour","valueType":"boolean","defaultValue":true,"configTitle":"UseZonesColourLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"boolean","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null},{"key":"showSecondTime","valueType":"boolean","defaultValue":false,"configTitle":"ShowSecondTimeLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"boolean","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null},{"key":"secondTimeOffset","valueType":"number","defaultValue":0,"configTitle":"SecondTimeOffsetLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"numeric","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null}],"languages":{"valyrian":{"UseZonesColourLabel":"Additionally colour code graph by profile heart rate zones?","DK_GRAY":"Dark Gray","DK_GREEN":"Dark Green","BLUE":"Blue","SecondTimeOffsetLabel":"Second (digital) time hour offset (integer, +-24)","PURPLE":"Purple","GREEN":"Green","DK_RED":"Dark Red","DK_BLUE":"Dark Blue","AppName":"SnapshotWatch","RED":"Red","PINK":"Pink","ShowHeartRateLabel":"Show heart rate graph and min/max values","GraphColourLabel":"Heart rate graph colour","ShowSecondTimeLabel":"Show second (digital) time","YELLOW":"Yellow","ORANGE":"Orange"}}}
\ No newline at end of file
+{"settings":[{"key":"code","valueType":"string","defaultValue":"get code at app store page","configTitle":"CodeLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"alphaNumeric","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null},{"key":"showHeartRate","valueType":"boolean","defaultValue":true,"configTitle":"ShowHeartRateLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"boolean","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null},{"key":"graphColour","valueType":"number","defaultValue":0,"configTitle":"GraphColourLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"list","configReadonly":false,"configRequired":true,"configOptions":[{"display":"DK_GRAY","value":0},{"display":"RED","value":1},{"display":"DK_RED","value":2},{"display":"ORANGE","value":3},{"display":"YELLOW","value":4},{"display":"GREEN","value":5},{"display":"DK_GREEN","value":6},{"display":"BLUE","value":7},{"display":"DK_BLUE","value":8},{"display":"PURPLE","value":9},{"display":"PINK","value":10}],"configMin":null,"configMax":null,"configMaxLength":null},{"key":"useZonesColour","valueType":"boolean","defaultValue":true,"configTitle":"UseZonesColourLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"boolean","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null},{"key":"showSecondTime","valueType":"boolean","defaultValue":false,"configTitle":"ShowSecondTimeLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"boolean","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null},{"key":"secondTimeOffset","valueType":"number","defaultValue":0,"configTitle":"SecondTimeOffsetLabel","configPrompt":null,"configHelpUrl":null,"configError":null,"configType":"numeric","configReadonly":false,"configRequired":false,"configOptions":null,"configMin":null,"configMax":null,"configMaxLength":null}],"languages":{"valyrian":{"UseZonesColourLabel":"Additionally colour code graph by profile heart rate zones?","DK_GRAY":"Dark Gray","DK_GREEN":"Dark Green","BLUE":"Blue","SecondTimeOffsetLabel":"[PRO] Second (digital) time hour offset (integer, +-24)","PURPLE":"Purple","GREEN":"Green","DK_RED":"Dark Red","DK_BLUE":"Dark Blue","AppName":"SnapshotWatch","RED":"Red","PINK":"Pink","CodeLabel":"Activation code for PRO features","ShowHeartRateLabel":"Show heart rate graph and min/max values","GraphColourLabel":"Heart rate graph colour","ShowSecondTimeLabel":"[PRO] Show second (digital) time","YELLOW":"Yellow","ORANGE":"Orange"}}}
\ No newline at end of file
diff --git a/bin/SnapshotWatch.prg b/bin/SnapshotWatch.prg
index 4e06dc9..19c9ae5 100644
Binary files a/bin/SnapshotWatch.prg and b/bin/SnapshotWatch.prg differ
diff --git a/bin/SnapshotWatch.prg.debug.xml b/bin/SnapshotWatch.prg.debug.xml
index a4934eb..a994d95 100644
--- a/bin/SnapshotWatch.prg.debug.xml
+++ b/bin/SnapshotWatch.prg.debug.xml
@@ -35,381 +35,392 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
-
+
+
-
+
+
-
+
-
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
+
+
+
-
+
-
+
-
-
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
-
+
+
+
+
@@ -419,69 +430,70 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -573,6 +585,10 @@
+
+
+
+
diff --git a/resources/resources.xml b/resources/resources.xml
index 1ab1ef5..e9c0193 100644
--- a/resources/resources.xml
+++ b/resources/resources.xml
@@ -1,6 +1,7 @@
+ get code at app store page
true
0
true
@@ -9,6 +10,7 @@
+ Activation code for PRO features
Show heart rate graph and min/max values
Heart rate graph colour
Dark Gray
@@ -23,11 +25,14 @@
Purple
Pink
Additionally colour code graph by profile heart rate zones?
- Show second (digital) time
- Second (digital) time hour offset (integer, +-24)
+ [PRO] Show second (digital) time
+ [PRO] Second (digital) time hour offset (integer, +-24)
+
+
+
diff --git a/source/SnapshotWatchView.mc b/source/SnapshotWatchView.mc
index dc7e8e4..de259e3 100644
--- a/source/SnapshotWatchView.mc
+++ b/source/SnapshotWatchView.mc
@@ -41,6 +41,8 @@ class SnapshotWatchView extends Ui.WatchFace {
var heartMin;
var heartMax;
+ var proFeatures;
+
//! Load your resources here
function onLayout(dc) {
@@ -49,6 +51,7 @@ class SnapshotWatchView extends Ui.WatchFace {
width_screen = dc.getWidth();
height_screen = dc.getHeight();
+ //colours and zones
arrayColours = [Gfx.COLOR_DK_GRAY, Gfx.COLOR_RED, Gfx.COLOR_DK_RED, Gfx.COLOR_ORANGE, Gfx.COLOR_YELLOW, Gfx.COLOR_GREEN, Gfx.COLOR_DK_GREEN, Gfx.COLOR_BLUE, Gfx.COLOR_DK_BLUE, Gfx.COLOR_PURPLE, Gfx.COLOR_PINK];
heartRateZones = User.getHeartRateZones(User.getCurrentSport());
// heartRateZones = [98, 127, 146, 166, 185, 195];
@@ -76,8 +79,11 @@ class SnapshotWatchView extends Ui.WatchFace {
//! Update the view
function onUpdate(dc) {
+ var code = "0";
+
if (usePreferences)
{
+ code = Application.getApp().getProperty("code");
showHeartRate = Application.getApp().getProperty("showHeartRate");
graphColour = Application.getApp().getProperty("graphColour");
useZonesColour = Application.getApp().getProperty("useZonesColour");
@@ -85,6 +91,13 @@ class SnapshotWatchView extends Ui.WatchFace {
secondTimeOffset = Application.getApp().getProperty("secondTimeOffset");
}
+ authenticate(code);
+
+ if (!proFeatures)
+ {
+ showSecondTime = false;
+ }
+
if (showSecondTime)
{
if (secondTimeOffset != null && secondTimeOffset <= 24 && secondTimeOffset >= -24)
@@ -170,13 +183,16 @@ class SnapshotWatchView extends Ui.WatchFace {
{ offset = 6; }
dc.drawText(width_screen/2-33-offset, 7, Gfx.FONT_SMALL, Lang.format("$1$%", [battery.format("%2d")]), Graphics.TEXT_JUSTIFY_LEFT|Graphics.TEXT_JUSTIFY_VCENTER);
- // Show steps
- dc.drawText(width_screen-4, height_screen/2 - 14, Gfx.FONT_SMALL, ActMon.getInfo().steps, Graphics.TEXT_JUSTIFY_RIGHT|Graphics.TEXT_JUSTIFY_VCENTER);
- dc.drawText(width_screen-4, height_screen/2 + 11, Gfx.FONT_SMALL, ActMon.getInfo().stepGoal, Graphics.TEXT_JUSTIFY_RIGHT|Graphics.TEXT_JUSTIFY_VCENTER);
-
- // Show sunrise and sunset
- drawSunriseSunset(dc);
-
+ if (proFeatures)
+ {
+ // Show steps
+ dc.drawText(width_screen-4, height_screen/2 - 14, Gfx.FONT_SMALL, ActMon.getInfo().steps, Graphics.TEXT_JUSTIFY_RIGHT|Graphics.TEXT_JUSTIFY_VCENTER);
+ dc.drawText(width_screen-4, height_screen/2 + 11, Gfx.FONT_SMALL, ActMon.getInfo().stepGoal, Graphics.TEXT_JUSTIFY_RIGHT|Graphics.TEXT_JUSTIFY_VCENTER);
+
+ // Show sunrise and sunset
+ drawSunriseSunset(dc);
+ }
+
}
@@ -548,5 +564,16 @@ class SnapshotWatchView extends Ui.WatchFace {
return hour12;
}
+
+
+ function authenticate(code) {
+
+ proFeatures = true;
+
+ // set proFeatures=false
+ // insert your authentication requirements here
+ // then change proFeatures=true if "code" variable is valid
+
+ }
}