From 1962ba24cb42c997bad912a3c899d25bf28f86eb Mon Sep 17 00:00:00 2001
From: bossanyit <tibor.bossanyi@aitrainer.app>
Date: Sun, 28 Mar 2021 12:45:14 +0200
Subject: [PATCH] WT1.1.10+5 bugfix

---
 asset/menu/leg_abductor.jpg                   | Bin 0 -> 70475 bytes
 i18n/en.json                                  |   1 +
 i18n/hu.json                                  |   1 +
 ios/Flutter/AppFrameworkInfo.plist            |   2 +-
 ios/Flutter/Debug.xcconfig                    |   3 +-
 ios/Flutter/Release.xcconfig                  |   3 +-
 ios/Podfile.lock                              |   6 ++
 ios/Runner.xcodeproj/project.pbxproj          |   6 +-
 ios/Runner/Info.plist                         |   2 +-
 .../development_by_muscle_bloc.dart           |  10 +-
 .../exercise_control_bloc.dart                |   2 +-
 lib/bloc/exercise_log/exercise_log_bloc.dart  |   2 +
 lib/bloc/exercise_new/exercise_new_bloc.dart  |   3 +-
 lib/bloc/login/login_bloc.dart                |   9 +-
 lib/bloc/settings/settings_bloc.dart          |   4 +-
 .../test_set_edit/test_set_edit_bloc.dart     |   4 +-
 .../test_set_execute_bloc.dart                |  12 ++-
 .../test_set_execute_event.dart               |   4 +
 lib/main.dart                                 |  14 ++-
 lib/model/cache.dart                          |  75 +++++++++++++--
 lib/model/exercise_plan_template.dart         |  12 ++-
 .../exercise_device_repository.dart           |   8 +-
 lib/repository/exercise_repository.dart       |  16 +++-
 lib/repository/workout_tree_repository.dart   |  13 +--
 lib/service/exercise_tree_service.dart        |   1 +
 lib/service/package_service.dart              |   1 -
 lib/util/common.dart                          |   7 +-
 lib/util/track.dart                           |   2 +
 lib/view/exercise_log_page.dart               |  49 +++++-----
 lib/view/exercise_new_page.dart               |  80 +++++++++++++---
 lib/view/mydevelopment_page.dart              |  86 ++++++++++++------
 lib/view/settings.dart                        |   1 +
 lib/view/test_set_edit.dart                   |   8 +-
 lib/view/test_set_new.dart                    |  41 ++++++---
 lib/widgets/app_bar.dart                      |   4 +-
 lib/widgets/bottom_nav.dart                   |  32 ++-----
 lib/widgets/exercise_save.dart                |   4 +-
 lib/widgets/image_button.dart                 |   4 +-
 lib/widgets/menu_page_widget.dart             |  17 +++-
 pubspec.lock                                  |   7 ++
 pubspec.yaml                                  |  14 +--
 41 files changed, 397 insertions(+), 173 deletions(-)
 create mode 100644 asset/menu/leg_abductor.jpg

diff --git a/asset/menu/leg_abductor.jpg b/asset/menu/leg_abductor.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..add4b1195acbe90c11d445ddee4baa2a8ef385fc
GIT binary patch
literal 70475
zcmeFa2UHZz^C&vxC^-m{1&K?}Ip>^{VObVfGP_F_P$Vcy5DAJPIS0uSL<Ce6R3rxp
zf`DWU1SRdA#rXaH-~Hcv-hJ=9cg}M-(^FklU0qcjcBZRmz>HyL8C11`5H0{<WCRER
z06+|o;{X622;mS|g9*-e_!xnE3}eB2IE3Hv04~Tw^8*G8;?VzqK`tC-fB-88JPUA6
z{emlS`2Hv>hLr$tgJ(UC_%Tce!eg-r03W<!%dUYJZcs1mAL+p*0N|zic~x`vae{N0
zy7{1eP;NfH92y!N;-X@59DGJl7{VKi<Ojq>#l_@BCFDirI6y#3QeIRB0PvFlfC!Y0
zFDfoBmh;0#3<dylaDUcIV4Z{a6ULf+d=TQ`{m`B8Py29?zwN^b`O`jJoS!mqB5{Ao
zrfd8mPZzvmZ9KkW#xUyu`LRvsHH-ip%mzSloCBOMVfip`fhd5Sn3$M^n4E-!oSKZ3
zjGCU3oSc&WBrPpHE$vBa^5f&j<$LBoQ=AiIWG5(2P*G4&(NR!P&|wn_y6;7(|91pn
z9s|_GfIX0dhr<QnQsdxJ<6x#hBS|q&a8y7o32=@NP+{zW2jJl16A%&+laP|({3j6y
zz{UGXqylj8aqw{QaS4bBi3#w?B|suI9zG|H7=fA@l$OiyvN$2#&D<LG)7<pt9ZnLG
z$jE*TBA#T6kF%d(C@F@#+AC)?Z&^BPb>^d`83(N9;GgTFx(5B<f6?YmDTuC5eKIt^
zRoL)!cwyVxB_JlPsPWmz;*N}tjcZ_Rdhvtq(GR=S04^@5E&j1iM1%xV$0~4&(cps`
z_;Jw^h+n=*ht;6Ny#J#Fx6>>#GFiid9)^<q#6yTxfar`==K!cgKBKdil{6YY_e+KU
zxdyzyRlrOD<aoz*QUfYL?<xgcHcMsD?F4+dNu0A7K^YxXGd^QmojGbdnR$>i$3k2g
z?{+s{<x|jF=!l73!{`ITqR6ukRX+)~EvGb=-AUewAA&W%RO-rZOhjOSssfV=ij>=l
z!{?X%!k>urRBbe;tk^OoUW-TZUzmfYwqbyg(Ci0$H=Kk|o+66tUH-iG@I3~=2|T)(
z>khqAEpTD1eOg@jUJ$X#rSK?D_Wk?&#q6tIi;uE{Zck3dCo(4W?SKAK{qgP2Cwzt`
zkNT>a)kmr@K35MR{ACqQx!!9vw=A;kh&*yXJZ2BrTo;t>E`Hg3XWlr3J(n5-s4OOX
z?z@F4NGI0gp6MvKB>ik=dw1kY^d0}ek!Li4O8Gv07(ia{_O7$hTguj@uilq<+|jS&
zmlYknH*M+}l9bsECJTVHcBz-|yO{j$isKW9?;b^NSoytunRk6^lKK-T$?e-U8`~z2
z(=Y%seQoDqc*Qv(Za~OaXsEmSXsXQXoP938bxX!jpzd`3*<kwFvE^_JAq6gYju!?f
zvsNye&7LrM8A>eMU=Ju2Z$WkrA+L8UW~wU73%0ASh0!o2bd}Dp*ZZK_Q}@oU<}IBJ
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
Q=Oc@Idw@}1{%i980o5@nng9R*

literal 0
HcmV?d00001

diff --git a/i18n/en.json b/i18n/en.json
index 7e6994f..4c5ba68 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -400,6 +400,7 @@
   "Or, you can redifine this exercise queue in the Compact Test menu":"Or, you can redifine this exercise queue in the Compact Test menu",
   "you are able to do 12-20 repeats with":"you are able to do 12-20 repeats with",
   "You have an active Test Set!":"You have an active Test Set!",
+  "Do you want to override it?":"Do you want to override it?",
   "Press OK to continue":"Press OK to continue",
   "Continue":"Continue",
   " your ":" your ",
diff --git a/i18n/hu.json b/i18n/hu.json
index cdac4f0..830090c 100644
--- a/i18n/hu.json
+++ b/i18n/hu.json
@@ -396,6 +396,7 @@
   "Or, you can redifine this exercise queue in the Compact Test menu":"Vagy változtatsd meg a gyakorlatokat a Tesztközpontban",
   "you are able to do 12-20 repeats with":"amivel képes vagy 12-20 ismétlésre",
   "You have an active Test Set!":"Van egy aktiv tesztköröd!",
+  "Do you want to override it?":"Felülírod?",
   "Press OK to continue":"Nyomd meg az OK-t a folytatáshoz",
   "Continue":"Folytatsd",
   " your ":": ",
diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist
index 3158eba..cae6543 100644
--- a/ios/Flutter/AppFrameworkInfo.plist
+++ b/ios/Flutter/AppFrameworkInfo.plist
@@ -21,6 +21,6 @@
 	<key>CFBundleVersion</key>
 	<string>1.0</string>
 	<key>MinimumOSVersion</key>
-	<string>10.0</string>
+	<string>12.0</string>
 </dict>
 </plist>
diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig
index e8efba1..715f00a 100644
--- a/ios/Flutter/Debug.xcconfig
+++ b/ios/Flutter/Debug.xcconfig
@@ -1,2 +1,3 @@
 #include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
-#include "Generated.xcconfig"
+#include "./Generated.xcconfig"
+IPHONEOS_DEPLOYMENT_TARGET = 12.0
diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig
index 399e934..ff13634 100644
--- a/ios/Flutter/Release.xcconfig
+++ b/ios/Flutter/Release.xcconfig
@@ -1,2 +1,3 @@
 #include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
-#include "Generated.xcconfig"
+#include "./Generated.xcconfig"
+IPHONEOS_DEPLOYMENT_TARGET = 12.0
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 0920532..e3ce06e 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -171,6 +171,8 @@ PODS:
     - Purchases (= 3.9.2)
   - shared_preferences (0.0.1):
     - Flutter
+  - smartlook (0.0.5):
+    - Flutter
   - sqflite (0.0.2):
     - Flutter
     - FMDB (>= 2.7.5)
@@ -199,6 +201,7 @@ DEPENDENCIES:
   - path_provider (from `.symlinks/plugins/path_provider/ios`)
   - purchases_flutter (from `.symlinks/plugins/purchases_flutter/ios`)
   - shared_preferences (from `.symlinks/plugins/shared_preferences/ios`)
+  - smartlook (from `.symlinks/plugins/smartlook/ios`)
   - sqflite (from `.symlinks/plugins/sqflite/ios`)
   - video_player (from `.symlinks/plugins/video_player/ios`)
   - wakelock (from `.symlinks/plugins/wakelock/ios`)
@@ -267,6 +270,8 @@ EXTERNAL SOURCES:
     :path: ".symlinks/plugins/purchases_flutter/ios"
   shared_preferences:
     :path: ".symlinks/plugins/shared_preferences/ios"
+  smartlook:
+    :path: ".symlinks/plugins/smartlook/ios"
   sqflite:
     :path: ".symlinks/plugins/sqflite/ios"
   video_player:
@@ -319,6 +324,7 @@ SPEC CHECKSUMS:
   PurchasesCoreSwift: ea4eabae180416e580ac60366f41aa1fefec0693
   PurchasesHybridCommon: d9bfb34309db4c9ba82a6f7f3a6275c13befdca7
   shared_preferences: af6bfa751691cdc24be3045c43ec037377ada40d
+  smartlook: bda0b1561935a02ef0fea5448258d5ac75027859
   sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904
   video_player: 9cc823b1d9da7e8427ee591e8438bfbcde500e6e
   wakelock: bfc7955c418d0db797614075aabbc58a39ab5107
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
index 7c37065..856caf9 100644
--- a/ios/Runner.xcodeproj/project.pbxproj
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -388,7 +388,7 @@
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
-				CURRENT_PROJECT_VERSION = 3;
+				CURRENT_PROJECT_VERSION = 5;
 				DEVELOPMENT_TEAM = SFJJBDCU6Z;
 				ENABLE_BITCODE = NO;
 				FRAMEWORK_SEARCH_PATHS = (
@@ -531,7 +531,7 @@
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
-				CURRENT_PROJECT_VERSION = 3;
+				CURRENT_PROJECT_VERSION = 5;
 				DEVELOPMENT_TEAM = SFJJBDCU6Z;
 				ENABLE_BITCODE = NO;
 				FRAMEWORK_SEARCH_PATHS = (
@@ -566,7 +566,7 @@
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
-				CURRENT_PROJECT_VERSION = 3;
+				CURRENT_PROJECT_VERSION = 5;
 				DEVELOPMENT_TEAM = SFJJBDCU6Z;
 				ENABLE_BITCODE = NO;
 				FRAMEWORK_SEARCH_PATHS = (
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index c1bb7ff..da4d36f 100644
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -44,7 +44,7 @@
 		<string>fbshareextension</string>
 	</array>
 	<key>LSMinimumSystemVersion</key>
-	<string>10.0</string>
+	<string>12.0</string>
 	<key>LSRequiresIPhoneOS</key>
 	<true/>
 	<key>NSAppTransportSecurity</key>
diff --git a/lib/bloc/development_by_muscle/development_by_muscle_bloc.dart b/lib/bloc/development_by_muscle/development_by_muscle_bloc.dart
index 94f8cd7..3101f07 100644
--- a/lib/bloc/development_by_muscle/development_by_muscle_bloc.dart
+++ b/lib/bloc/development_by_muscle/development_by_muscle_bloc.dart
@@ -1,6 +1,7 @@
 import 'dart:async';
 import 'dart:collection';
 
+import 'package:aitrainer_app/model/cache.dart';
 import 'package:aitrainer_app/util/app_language.dart';
 import 'package:aitrainer_app/model/exercise.dart';
 import 'package:aitrainer_app/model/workout_menu_tree.dart';
@@ -113,6 +114,9 @@ class GroupDate extends GroupData with Calculate, Common {
 
   @override
   void temp2Output(Exercise exercise) {
+    if (exercise.unitQuantity == null) {
+      return;
+    }
     Exercise newExercise = exercise.copy();
     newExercise.datePart = _origDatePart;
     if (this.diagramType == DiagramType.oneRepMax || this.diagramType == DiagramType.percent) {
@@ -284,9 +288,7 @@ class DevelopmentByMuscleBloc extends Bloc<DevelopmentByMuscleEvent, Development
   double basePercent = 0;
 
   @override
-  DevelopmentByMuscleBloc({this.workoutTreeRepository}) : super(DevelopmentByMuscleStateInitial()) {
-    Track().track(TrackingEvent.my_muscle_development);
-  }
+  DevelopmentByMuscleBloc({this.workoutTreeRepository}) : super(DevelopmentByMuscleStateInitial());
 
   Future<void> getData() async {
     workoutTreeRepository.sortedTree = null;
@@ -365,6 +367,8 @@ class DevelopmentByMuscleBloc extends Bloc<DevelopmentByMuscleEvent, Development
     try {
       if (event is DevelopmentByMuscleLoad) {
         yield DevelopmentByMuscleLoadingState();
+        Track().track(TrackingEvent.my_muscle_development);
+        Cache().setMuscleDevelopmentSeen();
         await getData();
         yield DevelopmentByMuscleReadyState();
       } else if (event is DevelopmentByMuscleDiagramTypeChange) {
diff --git a/lib/bloc/exercise_control/exercise_control_bloc.dart b/lib/bloc/exercise_control/exercise_control_bloc.dart
index 636af70..1977d65 100644
--- a/lib/bloc/exercise_control/exercise_control_bloc.dart
+++ b/lib/bloc/exercise_control/exercise_control_bloc.dart
@@ -81,7 +81,7 @@ class ExerciseControlBloc extends Bloc<ExerciseControlEvent, ExerciseControlStat
           }
           exerciseRepository.end = DateTime.now();
           await exerciseRepository.addExercise();
-          exerciseRepository.initExercise();
+          //exerciseRepository.initExercise();
 
           step <= 3 ? timerBloc.add(TimerStart(duration: 300)) : timerBloc.add(TimerEnd());
         }
diff --git a/lib/bloc/exercise_log/exercise_log_bloc.dart b/lib/bloc/exercise_log/exercise_log_bloc.dart
index 2245fa2..28a3244 100644
--- a/lib/bloc/exercise_log/exercise_log_bloc.dart
+++ b/lib/bloc/exercise_log/exercise_log_bloc.dart
@@ -1,4 +1,5 @@
 import 'dart:async';
+import 'package:aitrainer_app/model/cache.dart';
 import 'package:aitrainer_app/model/exercise.dart';
 import 'package:aitrainer_app/repository/exercise_repository.dart';
 import 'package:aitrainer_app/util/enums.dart';
@@ -21,6 +22,7 @@ class ExerciseLogBloc extends Bloc<ExerciseLogEvent, ExerciseLogState> {
     try {
       if (event is ExerciseLogLoad) {
         yield ExerciseLogLoading();
+        await Cache().setExerciseLogSeen();
         Track().track(TrackingEvent.exercise_log_open);
         yield ExerciseLogReady();
       } else if (event is ExerciseLogDelete) {
diff --git a/lib/bloc/exercise_new/exercise_new_bloc.dart b/lib/bloc/exercise_new/exercise_new_bloc.dart
index bd525da..0e28f3c 100644
--- a/lib/bloc/exercise_new/exercise_new_bloc.dart
+++ b/lib/bloc/exercise_new/exercise_new_bloc.dart
@@ -94,6 +94,7 @@ class ExerciseNewBloc extends Bloc<ExerciseNewEvent, ExerciseNewState> with Logg
         yield ExerciseNewReady();
       } else if (event is ExerciseNewQuantityUnitChange) {
         yield ExerciseNewLoading();
+        log("Event quantityUnit " + event.quantity.toStringAsFixed(0));
         exerciseRepository.setUnitQuantity(event.quantity);
         unitQuantity = event.quantity;
         yield ExerciseNewReady();
@@ -147,7 +148,7 @@ class ExerciseNewBloc extends Bloc<ExerciseNewEvent, ExerciseNewState> with Logg
         yield ExerciseNewLoading();
         exerciseRepository.end = DateTime.now();
         await exerciseRepository.addExercise();
-        exerciseRepository.initExercise();
+//        exerciseRepository.initExercise();
         menuBloc.add(MenuTreeDown(parent: 0));
         Cache().initBadges();
         Track().track(TrackingEvent.exercise_new, eventValue: exerciseRepository.exerciseType.name);
diff --git a/lib/bloc/login/login_bloc.dart b/lib/bloc/login/login_bloc.dart
index 1a00855..e6b9910 100644
--- a/lib/bloc/login/login_bloc.dart
+++ b/lib/bloc/login/login_bloc.dart
@@ -4,8 +4,6 @@ import 'package:aitrainer_app/bloc/account/account_bloc.dart';
 import 'package:aitrainer_app/model/cache.dart';
 import 'package:aitrainer_app/repository/customer_repository.dart';
 import 'package:aitrainer_app/repository/user_repository.dart';
-import 'package:aitrainer_app/service/exercise_tree_service.dart';
-import 'package:aitrainer_app/service/exercise_type_service.dart';
 import 'package:aitrainer_app/util/common.dart';
 import 'package:aitrainer_app/util/enums.dart';
 import 'package:aitrainer_app/util/track.dart';
@@ -25,12 +23,7 @@ class LoginBloc extends Bloc<LoginEvent, LoginState> with Trans {
   final bool isRegistration;
   bool dataPolicyAllowed = false;
   bool obscure = true;
-  LoginBloc({this.accountBloc, this.userRepository, this.context, this.isRegistration}) : super(LoginInitial()) {
-    if (isRegistration) {
-      ExerciseTreeApi().getExerciseTree();
-      ExerciseTypeApi().getExerciseTypes();
-    }
-  }
+  LoginBloc({this.accountBloc, this.userRepository, this.context, this.isRegistration}) : super(LoginInitial());
 
   @override
   Stream<LoginState> mapEventToState(
diff --git a/lib/bloc/settings/settings_bloc.dart b/lib/bloc/settings/settings_bloc.dart
index 18aa73a..a702296 100644
--- a/lib/bloc/settings/settings_bloc.dart
+++ b/lib/bloc/settings/settings_bloc.dart
@@ -43,11 +43,11 @@ class SettingsBloc extends Bloc<SettingsEvent, SettingsState> with Logging {
       _locale = AppLanguage().appLocal;
       yield SettingsReady(_locale);
     } else if (event is SettingsSetServer) {
-      yield SettingsLoading();
+      //yield SettingsLoading();
       final bool live = event.live;
       Cache().setServer(live);
       Track().track(TrackingEvent.settings_server, eventValue: live.toString());
-      yield SettingsReady(_locale);
+      //yield SettingsReady(_locale);
     } else if (event is SettingsSetHardware) {
       yield SettingsLoading();
 
diff --git a/lib/bloc/test_set_edit/test_set_edit_bloc.dart b/lib/bloc/test_set_edit/test_set_edit_bloc.dart
index a381265..ca27793 100644
--- a/lib/bloc/test_set_edit/test_set_edit_bloc.dart
+++ b/lib/bloc/test_set_edit/test_set_edit_bloc.dart
@@ -21,6 +21,7 @@ part 'test_set_edit_state.dart';
 class TestSetEditBloc extends Bloc<TestSetEditEvent, TestSetEditState> {
   final String templateName;
   final String templateNameTranslation;
+  String templateDescription;
   final WorkoutTreeRepository workoutTreeRepository;
   final MenuBloc menuBloc;
   final List<ExerciseType> _exerciseTypes = List();
@@ -33,6 +34,7 @@ class TestSetEditBloc extends Bloc<TestSetEditEvent, TestSetEditState> {
       Cache().exercisePlanTemplates.forEach((element) {
         final ExercisePlanTemplate template = element as ExercisePlanTemplate;
         if (template.name == templateName) {
+          templateDescription = template.descriptionTranslation;
           template.exerciseTypes.forEach((id) {
             final ExerciseType exerciseType = Cache().getExerciseTypeById(id);
             _exerciseTypes.add(exerciseType);
@@ -77,7 +79,7 @@ class TestSetEditBloc extends Bloc<TestSetEditEvent, TestSetEditState> {
         yield TestSetEditLoading();
         ExercisePlan exercisePlan = ExercisePlan(templateNameTranslation, Cache().userLoggedIn.customerId);
         exercisePlan.private = true;
-        exercisePlan.type = ExerciseAbility.mini_test_set.toString();
+        exercisePlan.type = ExerciseAbility.mini_test_set.enumToString();
         exercisePlan.dateAdd = DateTime.now();
         ExercisePlan savedExercisePlan = await ExercisePlanApi().saveExercisePlan(exercisePlan);
 
diff --git a/lib/bloc/test_set_execute/test_set_execute_bloc.dart b/lib/bloc/test_set_execute/test_set_execute_bloc.dart
index 7ff9a99..b9e106c 100644
--- a/lib/bloc/test_set_execute/test_set_execute_bloc.dart
+++ b/lib/bloc/test_set_execute/test_set_execute_bloc.dart
@@ -54,7 +54,6 @@ class TestSetExecuteBloc extends Bloc<TestSetExecuteEvent, TestSetExecuteState>
           element.exerciseType = exerciseType;
         }
         this.setPlanDetailState(element);
-        print("exercises of ${element.exerciseTypeId}: ${element.exercises}");
       });
     }
   }
@@ -88,6 +87,15 @@ class TestSetExecuteBloc extends Bloc<TestSetExecuteEvent, TestSetExecuteState>
           }
           await Cache().deleteActiveExercisePlan();
         }
+      } else if (event is TestSetExecuteDeleteAllActive) {
+        print("DeleteAll Test Set: ${exercisePlan.type}");
+        if (exercisePlan != null) {
+          exercisePlan = null;
+          if (exercisePlanDetails != null) {
+            exercisePlanDetails.removeRange(0, exercisePlanDetails.length - 1);
+          }
+          await Cache().deleteActiveExercisePlan();
+        }
       } else if (event is TestSetExecuteExerciseFinished) {
         yield TestSetExecuteLoading();
         exercisePlanDetails.forEach((element) {
@@ -120,11 +128,11 @@ class TestSetExecuteBloc extends Bloc<TestSetExecuteEvent, TestSetExecuteState>
           exercisePlan = ExercisePlan(Cache().userLoggedIn.name + " Custom Test", Cache().userLoggedIn.customerId);
           exercisePlan.private = true;
           exercisePlan.dateAdd = DateTime.now();
+          exercisePlan.type = ExerciseAbility.paralell_test.enumToString();
           ExercisePlan savedExercisePlan = await ExercisePlanApi().saveExercisePlan(exercisePlan);
           exercisePlan = savedExercisePlan;
           exercisePlanDetails = List();
         }
-        exercisePlan.type = ExerciseAbility.paralell_test.enumToString();
 
         if (!this.existsInPlanDetails(event.exerciseTypeId)) {
           ExercisePlanDetail exercisePlanDetail = ExercisePlanDetail(event.exerciseTypeId);
diff --git a/lib/bloc/test_set_execute/test_set_execute_event.dart b/lib/bloc/test_set_execute/test_set_execute_event.dart
index fc588c1..a23fd8b 100644
--- a/lib/bloc/test_set_execute/test_set_execute_event.dart
+++ b/lib/bloc/test_set_execute/test_set_execute_event.dart
@@ -52,3 +52,7 @@ class TestSetExecuteDeleteExercise extends TestSetExecuteEvent {
 class TestSetExecuteDeleteActive extends TestSetExecuteEvent {
   const TestSetExecuteDeleteActive();
 }
+
+class TestSetExecuteDeleteAllActive extends TestSetExecuteEvent {
+  const TestSetExecuteDeleteAllActive();
+}
diff --git a/lib/main.dart b/lib/main.dart
index 4371ba6..b2e2cf9 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -47,6 +47,7 @@ import 'package:flutter_localizations/flutter_localizations.dart';
 import 'package:aitrainer_app/util/app_localization.dart';
 import 'package:google_fonts/google_fonts.dart';
 import 'package:sentry/sentry.dart';
+import 'package:smartlook/smartlook.dart';
 import 'bloc/account/account_bloc.dart';
 import 'bloc/body_development/body_development_bloc.dart';
 import 'bloc/development_by_muscle/development_by_muscle_bloc.dart';
@@ -165,7 +166,18 @@ Future<Null> main() async {
 }
 
 Future<void> initFlurry() async {
-  await Flurry.initialize(androidKey: "JNYCTCWBT34FM3J8TV36", iosKey: "3QBG7BSMGPDH24S8TRQP", enableLog: true);
+  if (!isInDebugMode) {
+    await Flurry.initialize(androidKey: "JNYCTCWBT34FM3J8TV36", iosKey: "3QBG7BSMGPDH24S8TRQP", enableLog: true);
+
+    SetupOptions options = (new SetupOptionsBuilder('682883e5cd71a46160c4f6ed070530ee593f49c6')
+          ..Fps = 2
+          ..StartNewSession = true)
+        .build();
+
+    Smartlook.setupAndStartRecording(options);
+    Smartlook.enableCrashlytics(true);
+    Smartlook.setEventTrackingMode(EventTrackingMode.FULL_TRACKING);
+  }
 }
 
 class WorkoutTestApp extends StatelessWidget {
diff --git a/lib/model/cache.dart b/lib/model/cache.dart
index 6d5d8aa..602daa8 100644
--- a/lib/model/cache.dart
+++ b/lib/model/cache.dart
@@ -16,6 +16,7 @@ import 'package:aitrainer_app/repository/customer_repository.dart';
 import 'package:aitrainer_app/service/firebase_api.dart';
 import 'package:aitrainer_app/service/logging.dart';
 import 'package:aitrainer_app/service/package_service.dart';
+import 'package:aitrainer_app/main.dart';
 import 'package:aitrainer_app/util/enums.dart';
 import 'package:aitrainer_app/util/env.dart';
 import 'package:aitrainer_app/util/track.dart';
@@ -25,6 +26,7 @@ import 'package:package_info/package_info.dart';
 import 'package:shared_preferences/shared_preferences.dart';
 import 'package:aitrainer_app/model/exercise_type.dart';
 import 'package:intl/intl.dart';
+import 'package:smartlook/smartlook.dart';
 
 import 'customer_exercise_device.dart';
 import 'exercise_device.dart';
@@ -69,6 +71,8 @@ class Cache with Logging {
   static final String activeExercisePlanKey = 'active_exercise_plan';
   static final String activeExercisePlanDateKey = 'active_exercise_plan_date';
   static final String activeExercisePlanDetailsKey = 'active_exercise_details_plan';
+  static final String exerciseLogSeenKey = 'exercise_log_seen';
+  static final String muscleDevelopmentSeenKey = 'muscle_development_seen_key';
 
   static String baseUrl = 'http://aitrainer.info:8888/api/';
   static final String mediaUrl = 'https://aitrainer.info:4343/media/';
@@ -111,7 +115,6 @@ class Cache with Logging {
   Customer _trainee;
   List<Exercise> _exercisesTrainee;
   ExercisePlan _traineeExercisePlan;
-  List<ExercisePlanDetail> _traineeExercisesPlanDetail;
 
   LinkedHashMap<String, int> _badges = LinkedHashMap();
 
@@ -120,6 +123,8 @@ class Cache with Logging {
   String testEnvironment;
   bool liveServer = true;
   bool hasHardware = false;
+  bool isExerciseLogSeen = false;
+  bool isMuscleDevelopmentSeen = false;
 
   factory Cache() {
     return _singleton;
@@ -246,10 +251,14 @@ class Cache with Logging {
   void setServerAddress(SharedPreferences prefs) {
     if (this.testEnvironment == "1") {
       baseUrl = 'http://aitrainer.app:8899/api/';
+      print("TestEnv $baseUrl");
       return;
     }
     final bool live = prefs.getBool(Cache.serverKey);
     if (live == null) {
+      baseUrl = 'http://aitrainer.app:8888/api/';
+      print("Live Env $baseUrl");
+      liveServer = true;
       return;
     }
     liveServer = live;
@@ -258,6 +267,8 @@ class Cache with Logging {
     } else {
       baseUrl = 'http://aitrainer.app:8899/api/';
     }
+
+    print("Env $baseUrl");
   }
 
   Future<void> setLoginTypeFromPrefs() async {
@@ -364,7 +375,7 @@ class Cache with Logging {
       sharedPreferences.setString(Cache.firebaseUidKey, null);
       sharedPreferences.setString(authTokenKey, "");
     }
-    await initBadges();
+    initBadges();
   }
 
   void setExerciseTypes(List<ExerciseType> exerciseTypes) {
@@ -487,13 +498,14 @@ class Cache with Logging {
     }
   }
 
-  Future<void> initBadges() async {
+  void initBadges() async {
     CustomerRepository customerRepository = CustomerRepository();
     _badges = LinkedHashMap();
     customerRepository.setCustomer(userLoggedIn);
     int _ecto = customerRepository.getCustomerPropertyValue(PropertyEnum.Ectomorph.toStr()).toInt();
     int _mezo = customerRepository.getCustomerPropertyValue(PropertyEnum.Mesomorph.toStr()).toInt();
     int _endo = customerRepository.getCustomerPropertyValue(PropertyEnum.Endomorph.toStr()).toInt();
+
     //print("endo " + _endo.toString() + " mezo " + _mezo.toString());
     if (this.userLoggedIn != null) {
       if (this.userLoggedIn.birthYear == null || this.userLoggedIn.birthYear == 0) {
@@ -524,7 +536,7 @@ class Cache with Logging {
       }
       if (this._exercises == null || this._exercises.length == 0) {
         setBadge("home", true);
-        setBadge("Strength", true);
+        setBadge("Muscle Build / Shape Toning", true);
         setBadge("Cardio", true);
       }
       if (customerRepository.getHeight() == 0) {
@@ -541,6 +553,16 @@ class Cache with Logging {
         setBadge("FitnessLevel", true);
         setBadge("account", true);
       }
+      if (this._exercises != null && this._exercises.isNotEmpty) {
+        if (!isExerciseLogSeen) {
+          setBadge("exerciseLog", true);
+          setBadge("development", true);
+        }
+        if (!isMuscleDevelopmentSeen) {
+          setBadge("muscleDevelopment", true);
+          setBadge("development", true);
+        }
+      }
     }
     log("Badges: " + _badges.toString());
   }
@@ -557,12 +579,18 @@ class Cache with Logging {
   Future<void> initCustomer(int customerId) async {
     log(" *** initCustomer");
     await PackageApi().getCustomerPackage(customerId);
-    Flurry.setUserId(customerId.toString());
+
+    if (!isInDebugMode) {
+      Flurry.setUserId(customerId.toString());
+      Smartlook.setUserIdentifier(customerId.toString());
+      Track().track(TrackingEvent.enter);
+    }
 
     await setLoginTypeFromPrefs();
     await getActiveExercisePlan();
+    await isExerciseLogSeenPrefs();
+    await isMuscleDevelopmentSeenPrefs();
     Cache().startPage = "home";
-    Track().track(TrackingEvent.enter);
   }
 
   AccessToken get getAccessTokenFacebook => accessTokenFacebook;
@@ -573,4 +601,39 @@ class Cache with Logging {
 
   List get exercisePlanTemplates => this._exercisePlanTemplates;
   setExercisePlanTemplates(value) => this._exercisePlanTemplates = value;
+
+  setExerciseLogSeen() async {
+    Future<SharedPreferences> prefs = SharedPreferences.getInstance();
+    SharedPreferences sharedPreferences = await prefs;
+    isExerciseLogSeen = true;
+    sharedPreferences.setBool(Cache.exerciseLogSeenKey, true);
+  }
+
+  Future<bool> isExerciseLogSeenPrefs() async {
+    Future<SharedPreferences> prefs = SharedPreferences.getInstance();
+    SharedPreferences sharedPreferences = await prefs;
+    isExerciseLogSeen = sharedPreferences.getBool(Cache.exerciseLogSeenKey);
+    if (isExerciseLogSeen == null) {
+      isExerciseLogSeen = false;
+    }
+    //print("ExerciseLogSeen $isExerciseLogSeen");
+    return isExerciseLogSeen;
+  }
+
+  setMuscleDevelopmentSeen() async {
+    Future<SharedPreferences> prefs = SharedPreferences.getInstance();
+    SharedPreferences sharedPreferences = await prefs;
+    isMuscleDevelopmentSeen = true;
+    sharedPreferences.setBool(Cache.muscleDevelopmentSeenKey, true);
+  }
+
+  Future<bool> isMuscleDevelopmentSeenPrefs() async {
+    Future<SharedPreferences> prefs = SharedPreferences.getInstance();
+    SharedPreferences sharedPreferences = await prefs;
+    isMuscleDevelopmentSeen = sharedPreferences.getBool(Cache.muscleDevelopmentSeenKey);
+    if (isMuscleDevelopmentSeen == null) {
+      isMuscleDevelopmentSeen = false;
+    }
+    return isMuscleDevelopmentSeen;
+  }
 }
diff --git a/lib/model/exercise_plan_template.dart b/lib/model/exercise_plan_template.dart
index f2c9f0f..b4ed2fc 100644
--- a/lib/model/exercise_plan_template.dart
+++ b/lib/model/exercise_plan_template.dart
@@ -1,3 +1,7 @@
+import 'dart:ui';
+
+import 'package:aitrainer_app/util/app_language.dart';
+
 class ExercisePlanTemplate {
   int exercisePlanTemplateId;
   String name;
@@ -12,9 +16,11 @@ class ExercisePlanTemplate {
     this.name = json['name'];
     this.description = json['description'];
     this.templateType = json['templateType'];
-    this.nameTranslation = json['translations'] != null && (json['translations']).length > 0 ? json['translations'][0]['name'] : this.name;
-    this.descriptionTranslation =
-        json['translations'] != null && (json['translations']).length > 0 ? json['translations'][0]['description'] : this.description;
+    if (json['translations'].length > 0) {
+      this.nameTranslation = AppLanguage().appLocal == Locale('hu') ? json['translations'][0]['name'] : json['name'];
+      this.descriptionTranslation = AppLanguage().appLocal == Locale('hu') ? json['translations'][0]['description'] : json['description'];
+    }
+
     if (json['details'] != null && (json['details']).length > 0) {
       List details = json['details'];
       details.forEach((element) {
diff --git a/lib/repository/exercise_device_repository.dart b/lib/repository/exercise_device_repository.dart
index 9dfbc33..601f545 100644
--- a/lib/repository/exercise_device_repository.dart
+++ b/lib/repository/exercise_device_repository.dart
@@ -27,7 +27,13 @@ class ExerciseDeviceRepository {
   }
 
   bool isGymElement(String name) {
-    return name == "Cable" || name == "Baar" || name == "Gym Machine" || name == "Dumbbells" || name == "Barbell";
+    return name == "Cable" ||
+        name == "Baar" ||
+        name == "Gym Machine" ||
+        name == "Dumbbells" ||
+        name == "Barbell" ||
+        name == "HOME" ||
+        name == "STREET";
   }
 
   List<ExerciseDevice> getGymDevices() {
diff --git a/lib/repository/exercise_repository.dart b/lib/repository/exercise_repository.dart
index 966a370..2d2ab84 100644
--- a/lib/repository/exercise_repository.dart
+++ b/lib/repository/exercise_repository.dart
@@ -276,7 +276,13 @@ class ExerciseRepository {
       return;
     }
 
-    exerciseList.sort((a, b) => b.dateAdd.compareTo(a.dateAdd));
+    exerciseList.sort((a, b) {
+      final String datePartA = DateFormat('yyyyMMdd', AppLanguage().appLocal.toString()).format(a.dateAdd);
+      String aId = a.exerciseTypeId.toString() + "_" + datePartA;
+      final String datePartB = DateFormat('yyyyMMdd', AppLanguage().appLocal.toString()).format(b.dateAdd);
+      String bId = b.exerciseTypeId.toString() + "_" + datePartB;
+      return aId.compareTo(bId);
+    });
 
     this.exerciseLogList = List();
     String summary = "";
@@ -289,8 +295,8 @@ class ExerciseRepository {
       Exercise exercise = exerciseList[i];
       int exerciseTypeId = exercise.exerciseTypeId;
       String exerciseDate = DateFormat("yyyy-MM-dd", AppLanguage().appLocal.toString()).format(exercise.dateAdd);
-      //print(" -- $prevExerciseTypeId - $prevDate");
-      if (!(exerciseTypeId == prevExerciseTypeId && prevDate == exerciseDate)) {
+      print(" -- $prevExerciseTypeId - '$prevDate' against $exerciseTypeId - '$exerciseDate'");
+      if (exerciseTypeId != prevExerciseTypeId || prevDate != exerciseDate) {
         ExerciseType exerciseType = Cache().getExerciseTypeById(prevExercise.exerciseTypeId);
         String unit = exerciseType.unitQuantityUnit != null ? exerciseType.unitQuantityUnit : prevExercise.unit;
         prevExercise.summary = summary + " " + unit;
@@ -308,12 +314,14 @@ class ExerciseRepository {
       if (exerciseType.unitQuantity == "1") {
         summary += "x" + exercise.unitQuantity.toStringAsFixed(0);
       }
-      //print(" --- sum  " + exerciseType.name + " $summary");
+      print(" --- sum  " + exerciseType.name + " $summary");
 
       prevExerciseTypeId = exerciseTypeId;
       prevDate = exerciseDate;
       prevExercise = exercise;
       prevCount++;
     }
+    prevExercise.summary = summary;
+    exerciseLogList.add(prevExercise);
   }
 }
diff --git a/lib/repository/workout_tree_repository.dart b/lib/repository/workout_tree_repository.dart
index 07f5b94..9309f0c 100644
--- a/lib/repository/workout_tree_repository.dart
+++ b/lib/repository/workout_tree_repository.dart
@@ -26,7 +26,7 @@ class WorkoutTreeRepository with Logging {
   WorkoutType workoutType;
   final List<WorkoutMenuTree> menuAsExercise = List();
 
-  Future<void> createTree() async {
+  void createTree() {
     //if (Cache().getExerciseTree().length > 0 || Cache().getWorkoutMenuTree().length > 0) return;
     isEnglish = AppLanguage().appLocal == Locale('en');
     log("** Start creating tree on lang: " +
@@ -35,14 +35,7 @@ class WorkoutTreeRepository with Logging {
         Cache().getExerciseTree().length.toString());
 
     List<ExerciseTree> exerciseTree = Cache().getExerciseTree();
-    if (exerciseTree == null || exerciseTree.length == 0) {
-      exerciseTree = await ExerciseTreeApi().getExerciseTree();
-    }
-
     List<ExerciseType> exerciseTypes = Cache().getExerciseTypes();
-    if (exerciseTypes == null || exerciseTypes.length == 0) {
-      exerciseTypes = await ExerciseTypeApi().getExerciseTypes();
-    }
 
     exerciseTree.sort((a, b) => a.sort.compareTo(b.sort));
 
@@ -177,7 +170,7 @@ class WorkoutTreeRepository with Logging {
       WorkoutMenuTree treeItem = value as WorkoutMenuTree;
       if (treeItem.id == treeId) {
         isTreeItem1RM = isTreeItem1RM || treeItem.is1RM;
-        //log (treeItem.name + " 1RM " + treeItem.is1RM.toString() );
+        //log(treeItem.name + " 1RM " + treeItem.is1RM.toString());
       }
     });
 
@@ -305,7 +298,7 @@ class WorkoutTreeRepository with Logging {
       WorkoutMenuTree workoutTree = value as WorkoutMenuTree;
       if (!workoutTree.nameEnglish.contains('Muscle Build') && workoutTree.is1RM && workoutTree.exerciseTypeId == 0) {
         String treeName = getAntagonistSort(workoutTree.nameEnglish) + ". " + workoutTree.name;
-        print("TreeName $treeName ${workoutTree.name}");
+        //print("TreeName $treeName ${workoutTree.name}");
         sortedTree[treeName] = this.getBranchList(workoutTree.id);
       }
     });
diff --git a/lib/service/exercise_tree_service.dart b/lib/service/exercise_tree_service.dart
index 1a13cd3..6d1b69f 100644
--- a/lib/service/exercise_tree_service.dart
+++ b/lib/service/exercise_tree_service.dart
@@ -21,6 +21,7 @@ class ExerciseTreeApi with Logging {
       await Future.forEach(exerciseTree, (element) async {
         element.imageUrl = await buildImage(element.imageUrl, element.treeId);
       });
+      exerciseTree = await getExerciseTreeParents(exerciseTree);
       log("ExerciseTree downloaded");
       Cache().setExerciseTree(exerciseTree);
     }
diff --git a/lib/service/package_service.dart b/lib/service/package_service.dart
index 1f76553..d2cd43e 100644
--- a/lib/service/package_service.dart
+++ b/lib/service/package_service.dart
@@ -66,7 +66,6 @@ class PackageApi {
     exerciseTree = this.getExerciseTreeParents(exerciseTree, exerciseTreeParents);
     if (exerciseTree != null) {
       await Future.forEach(exerciseTree, (element) async {
-        print("Tree ${element.toJson()}");
         element.imageUrl = await ExerciseTreeApi().buildImage(element.imageUrl, element.treeId);
       });
       Cache().setExerciseTree(exerciseTree);
diff --git a/lib/util/common.dart b/lib/util/common.dart
index 1add7a9..7646013 100644
--- a/lib/util/common.dart
+++ b/lib/util/common.dart
@@ -113,8 +113,11 @@ mixin Common {
   }
 
   static Widget badgedIcon(Color color, IconData icon, String badgeKey) {
-    bool show = Cache().getBadges()[badgeKey] != null;
-    int counter = Cache().getBadges()[badgeKey] != null ? Cache().getBadges()[badgeKey] : 0;
+    //print("BadgetIcon: " + Cache().getBadges().toString());
+    int badgeValue = Cache().getBadges()[badgeKey];
+    bool show = (badgeValue != null);
+    int counter = show ? badgeValue : 0;
+    //print("show $show BadgeKey $badgeKey count $counter");
     return Badge(
       position: BadgePosition.topEnd(top: -10, end: -10),
       animationDuration: Duration(milliseconds: 500),
diff --git a/lib/util/track.dart b/lib/util/track.dart
index f39e09e..d0e0aaa 100644
--- a/lib/util/track.dart
+++ b/lib/util/track.dart
@@ -5,6 +5,7 @@ import 'package:aitrainer_app/service/tracking_service.dart';
 import 'package:aitrainer_app/util/enums.dart';
 import 'package:flurry/flurry.dart';
 import 'package:aitrainer_app/model/tracking.dart' as model;
+import 'package:smartlook/smartlook.dart';
 
 class Track with Logging {
   static final Track _singleton = Track._internal();
@@ -18,6 +19,7 @@ class Track with Logging {
   void track(TrackingEvent event, {String eventValue = ""}) {
     if (!isInDebugMode) {
       Flurry.logEvent(event.toString());
+      Smartlook.setGlobalEventProperty(event.toString(), eventValue, false);
       model.Tracking tracking = model.Tracking();
       tracking.customerId = Cache().userLoggedIn.customerId;
       tracking.event = event.enumToString();
diff --git a/lib/view/exercise_log_page.dart b/lib/view/exercise_log_page.dart
index bcb370f..219b8ad 100644
--- a/lib/view/exercise_log_page.dart
+++ b/lib/view/exercise_log_page.dart
@@ -85,6 +85,7 @@ class _ExerciseLogPage extends State<ExerciseLogPage> with Trans, Common {
     } else if (Cache().getTrainee() != null && customerId == Cache().getTrainee().customerId) {
       exerciseRepository.exerciseList = exerciseRepository.getExerciseListTrainee();
     }
+    //print("ExerciseList ${exerciseRepository.exerciseList}");
     exerciseRepository.sortByDate();
 
     List<Widget> listWidget = List();
@@ -146,6 +147,7 @@ class _ExerciseLogPage extends State<ExerciseLogPage> with Trans, Common {
         origDate = exerciseDate;
       }
     });
+    //print("ListExerices $listExercises");
     if (listExercises.length > 0) {
       listWidget.add(Container(
           margin: const EdgeInsets.only(left: 4.0),
@@ -194,27 +196,12 @@ class _ExerciseLogPage extends State<ExerciseLogPage> with Trans, Common {
                       exercise.summary == null ? "" : exercise.summary,
                       style: TextStyle(fontSize: 12, color: Colors.blue[800]),
                     )),
-                Stack(
-                  children: [
-                    IconButton(
-                      iconSize: 36,
-                      icon: Icon(CustomIcon.heart_1, color: Colors.blue[800]),
-                      onPressed: () {
-                        evaluation(exerciseRepository, exercise);
-                      },
-                    ),
-                    Cache().hasPurchased
-                        ? Offstage()
-                        : GestureDetector(
-                            child: Image.asset(
-                              'asset/image/lock.png',
-                              height: 25,
-                              width: 25,
-                            ),
-                            onTap: () {
-                              evaluation(exerciseRepository, exercise);
-                            }),
-                  ],
+                IconButton(
+                  iconSize: 36,
+                  icon: Icon(CustomIcon.heart_1, color: Colors.orange[800]),
+                  onPressed: () {
+                    evaluation(exerciseRepository, exercise);
+                  },
                 ),
                 IconButton(
                   icon: Icon(Icons.delete, color: Colors.black12),
@@ -295,7 +282,25 @@ class _ExerciseLogPage extends State<ExerciseLogPage> with Trans, Common {
                 ),
                 FlatButton(
                   child: Text(t("Yes")),
-                  onPressed: () => {bloc.add(ExerciseLogDelete(exercise: exercise)), Navigator.pop(context)},
+                  onPressed: () {
+                    Navigator.pop(context);
+                    if (!Cache().hasPurchased) {
+                      showDialog(
+                          context: context,
+                          builder: (BuildContext context) {
+                            return DialogPremium(
+                              unlocked: Cache().hasPurchased,
+                              unlockRound: 1,
+                              unlockedText: t("Enjoy also this premium fetaure to delete mistyped old exercises."),
+                              function: "Delete Exercise",
+                              onTap: () => {Navigator.of(context).pop()},
+                              onCancel: () => {Navigator.of(context).pop()},
+                            );
+                          });
+                    } else {
+                      bloc.add(ExerciseLogDelete(exercise: exercise));
+                    }
+                  },
                 )
               ],
             ));
diff --git a/lib/view/exercise_new_page.dart b/lib/view/exercise_new_page.dart
index 33cdd15..28ea790 100644
--- a/lib/view/exercise_new_page.dart
+++ b/lib/view/exercise_new_page.dart
@@ -3,6 +3,7 @@ import 'dart:collection';
 import 'package:aitrainer_app/bloc/exercise_new/exercise_new_bloc.dart';
 import 'package:aitrainer_app/bloc/menu/menu_bloc.dart';
 import 'package:aitrainer_app/bloc/test_set_execute/test_set_execute_bloc.dart';
+import 'package:aitrainer_app/library/custom_icon_icons.dart';
 import 'package:aitrainer_app/model/cache.dart';
 import 'package:aitrainer_app/model/exercise_ability.dart';
 import 'package:aitrainer_app/model/exercise_type.dart';
@@ -20,6 +21,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
 import 'package:flutter/cupertino.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_form_bloc/flutter_form_bloc.dart';
+import 'package:google_fonts/google_fonts.dart';
 import 'package:modal_progress_hud/modal_progress_hud.dart';
 
 class ExerciseNewPage extends StatefulWidget {
@@ -115,9 +117,18 @@ class _ExerciseNewPageState extends State<ExerciseNewPage> with Trans, Logging {
               exerciseBloc.add(ExerciseNewQuantityChange(quantity: double.parse(value)));
             },
             onUnitQuantityChanged: (value) => exerciseBloc.add(ExerciseNewQuantityUnitChange(quantity: double.parse(value))),
-            onSubmit: () => confirmationDialog(exerciseBloc, menuBloc),
+            //onSubmit: () => confirmationDialog(exerciseBloc, menuBloc),
             exerciseTypeId: exerciseType.exerciseTypeId,
           )),
+      floatingActionButton: FloatingActionButton.extended(
+        onPressed: () => save(exerciseBloc, menuBloc),
+        backgroundColor: Colors.orange[800],
+        icon: Icon(CustomIcon.save),
+        label: Text(
+          t("Save"),
+          style: GoogleFonts.inter(fontWeight: FontWeight.bold, fontSize: 16),
+        ),
+      ),
       bottomNavigationBar: BottomBarMultipleExercises(
         isSet: false,
         exerciseTypeId: exerciseType.exerciseTypeId,
@@ -125,7 +136,18 @@ class _ExerciseNewPageState extends State<ExerciseNewPage> with Trans, Logging {
     );
   }
 
-  void confirmationDialog(ExerciseNewBloc bloc, MenuBloc menuBloc) {
+  void save(ExerciseNewBloc bloc, MenuBloc menuBloc) {
+    // ignore: close_sinks
+    final TestSetExecuteBloc executeBloc = BlocProvider.of<TestSetExecuteBloc>(context);
+
+    if (executeBloc != null && executeBloc.existsActivePlan() == true) {
+      confirmationOverride(bloc);
+    } else {
+      confirmationSave(bloc, menuBloc);
+    }
+  }
+
+  void confirmationSave(ExerciseNewBloc bloc, MenuBloc menuBloc) {
     if (bloc.exerciseRepository.exercise.quantity == null) {
       return;
     }
@@ -173,17 +195,49 @@ class _ExerciseNewPageState extends State<ExerciseNewPage> with Trans, Logging {
                 ),
                 FlatButton(
                   child: Text(t("Yes")),
-                  onPressed: () => {
-                    bloc.exerciseRepository.setCustomer(Cache().userLoggedIn),
-                    bloc.add(ExerciseNewSubmit()),
-                    Navigator.pop(context),
-                    if (executeBloc.existsActivePlan() == true)
-                      {
-                        executeBloc.add(TestSetExecuteExerciseFinished(
-                            exerciseTypeId: bloc.exerciseRepository.exerciseType.exerciseTypeId,
-                            quantity: bloc.exerciseRepository.exercise.quantity,
-                            unitQuantity: bloc.exerciseRepository.exercise.unitQuantity)),
-                      }
+                  onPressed: () {
+                    saveAll(bloc);
+                    if (executeBloc.existsActivePlan() == true) {
+                      executeBloc.add(TestSetExecuteExerciseFinished(
+                          exerciseTypeId: bloc.exerciseRepository.exerciseType.exerciseTypeId,
+                          quantity: bloc.exerciseRepository.exercise.quantity,
+                          unitQuantity: bloc.exerciseRepository.exercise.unitQuantity));
+                    }
+                    Navigator.pop(context);
+                  },
+                )
+              ],
+            ));
+  }
+
+  void saveAll(ExerciseNewBloc bloc) {
+    bloc.exerciseRepository.setCustomer(Cache().userLoggedIn);
+    bloc.add(ExerciseNewSubmit());
+  }
+
+  void confirmationOverride(ExerciseNewBloc bloc) {
+    // ignore: close_sinks
+    final TestSetExecuteBloc executeBloc = BlocProvider.of<TestSetExecuteBloc>(context);
+    showCupertinoDialog(
+        useRootNavigator: true,
+        context: context,
+        builder: (_) => CupertinoAlertDialog(
+              title: Text(t("You have an active Test Set!"), style: GoogleFonts.archivoBlack(fontSize: 20, color: Colors.red[800])),
+              content: Column(children: [
+                Divider(),
+                Text(t("Do you want to override it?"), style: GoogleFonts.archivoBlack(fontSize: 16, color: Colors.blue[800])),
+              ]),
+              actions: [
+                FlatButton(
+                  child: Text(t("No"), style: GoogleFonts.archivoBlack(fontSize: 16, color: Colors.blue[800])),
+                  onPressed: () => Navigator.pop(context),
+                ),
+                FlatButton(
+                  child: Text(t("Yes"), style: GoogleFonts.archivoBlack(fontSize: 16, color: Colors.red[800])),
+                  onPressed: () {
+                    Navigator.pop(context);
+                    executeBloc.add(TestSetExecuteDeleteAllActive());
+                    saveAll(bloc);
                   },
                 )
               ],
diff --git a/lib/view/mydevelopment_page.dart b/lib/view/mydevelopment_page.dart
index 7a4bc05..fbf0056 100644
--- a/lib/view/mydevelopment_page.dart
+++ b/lib/view/mydevelopment_page.dart
@@ -6,6 +6,7 @@ import 'package:aitrainer_app/repository/exercise_repository.dart';
 import 'package:aitrainer_app/util/enums.dart';
 import 'package:aitrainer_app/util/track.dart';
 import 'package:aitrainer_app/widgets/dialog_premium.dart';
+import 'package:badges/badges.dart';
 import 'package:google_fonts/google_fonts.dart';
 import 'package:aitrainer_app/util/trans.dart';
 import 'package:aitrainer_app/widgets/app_bar.dart';
@@ -29,6 +30,11 @@ class _MyDevelopmentPage extends State<MyDevelopmentPage> with Trans {
     double mediaWidth = MediaQuery.of(context).size.width;
     double imageWidth = (mediaWidth - 45) / 2;
 
+    bool showExerciseLogBadge = Cache().getBadges()["exerciseLog"] != null;
+    int counterExerciseLogBadge = Cache().getBadges()["exerciseLog"] != null ? Cache().getBadges()["exerciseLog"] : 0;
+    bool showMuscleDevelopmentBadge = Cache().getBadges()["muscleDevelopment"] != null;
+    int counterMuscleDevelopmentBadge = Cache().getBadges()["muscleDevelopment"] != null ? Cache().getBadges()["muscleDevelopment"] : 0;
+
     return Scaffold(
         appBar: AppBarNav(depth: 0),
         body: Container(
@@ -43,21 +49,33 @@ class _MyDevelopmentPage extends State<MyDevelopmentPage> with Trans {
             child: CustomScrollView(scrollDirection: Axis.vertical, slivers: [
               SliverGrid(
                 delegate: SliverChildListDelegate([
-                  ImageButton(
-                    width: imageWidth,
-                    textAlignment: Alignment.topCenter,
-                    text: t("My Exercise Logs"),
-                    style: GoogleFonts.robotoMono(
-                        textStyle: TextStyle(
-                            fontSize: 14,
+                  Badge(
+                      padding: EdgeInsets.all(8),
+                      position: BadgePosition.topEnd(top: -5, end: -3),
+                      animationDuration: Duration(milliseconds: 500),
+                      animationType: BadgeAnimationType.slide,
+                      badgeColor: Colors.red,
+                      showBadge: showExerciseLogBadge,
+                      badgeContent: Text(counterExerciseLogBadge.toString(),
+                          style: TextStyle(
                             color: Colors.white,
-                            fontWeight: FontWeight.bold,
-                            backgroundColor: Colors.black54.withOpacity(0.4))),
-                    image: "asset/image/edzesnaplom400400.jpg",
-                    left: 5,
-                    onTap: () => this.callBackExerciseLog(exerciseRepository, customerRepository),
-                    isLocked: false,
-                  ),
+                            fontSize: 16,
+                          )),
+                      child: ImageButton(
+                        width: imageWidth,
+                        textAlignment: Alignment.topCenter,
+                        text: t("My Exercise Logs"),
+                        style: GoogleFonts.robotoMono(
+                            textStyle: TextStyle(
+                                fontSize: 14,
+                                color: Colors.white,
+                                fontWeight: FontWeight.bold,
+                                backgroundColor: Colors.black54.withOpacity(0.4))),
+                        image: "asset/image/edzesnaplom400400.jpg",
+                        left: 5,
+                        onTap: () => this.callBackExerciseLog(exerciseRepository, customerRepository),
+                        isLocked: false,
+                      )),
                   ImageButton(
                     width: imageWidth,
                     textAlignment: Alignment.topLeft,
@@ -96,21 +114,33 @@ class _MyDevelopmentPage extends State<MyDevelopmentPage> with Trans {
                     },
                     isLocked: true,
                   ), */
-                  ImageButton(
-                    width: imageWidth,
-                    textAlignment: Alignment.topLeft,
-                    text: t("Development Of Muscles"),
-                    style: GoogleFonts.robotoMono(
-                        textStyle: TextStyle(
-                            fontSize: 14,
+                  Badge(
+                      padding: EdgeInsets.all(8),
+                      position: BadgePosition.topEnd(top: -5, end: -3),
+                      animationDuration: Duration(milliseconds: 500),
+                      animationType: BadgeAnimationType.slide,
+                      badgeColor: Colors.red,
+                      showBadge: showMuscleDevelopmentBadge,
+                      badgeContent: Text(counterMuscleDevelopmentBadge.toString(),
+                          style: TextStyle(
                             color: Colors.white,
-                            fontWeight: FontWeight.bold,
-                            backgroundColor: Colors.black54.withOpacity(0.4))),
-                    image: "asset/image/izomcsop400400.jpg",
-                    left: 5,
-                    onTap: () => {Navigator.of(context).pushNamed('mydevelopmentMusclePage', arguments: args)},
-                    isLocked: true,
-                  ),
+                            fontSize: 16,
+                          )),
+                      child: ImageButton(
+                        width: imageWidth,
+                        textAlignment: Alignment.topLeft,
+                        text: t("Development Of Muscles"),
+                        style: GoogleFonts.robotoMono(
+                            textStyle: TextStyle(
+                                fontSize: 14,
+                                color: Colors.white,
+                                fontWeight: FontWeight.bold,
+                                backgroundColor: Colors.black54.withOpacity(0.4))),
+                        image: "asset/image/izomcsop400400.jpg",
+                        left: 5,
+                        onTap: () => {Navigator.of(context).pushNamed('mydevelopmentMusclePage', arguments: args)},
+                        isLocked: true,
+                      )),
                   ImageButton(
                     width: imageWidth,
                     left: 5,
diff --git a/lib/view/settings.dart b/lib/view/settings.dart
index 24bafab..85e6087 100644
--- a/lib/view/settings.dart
+++ b/lib/view/settings.dart
@@ -86,6 +86,7 @@ class SettingsPage extends StatelessWidget with Trans {
         title: Container(),
       );
     }
+    print("Live: ${Cache().liveServer}");
     return ListTile(
       leading: Icon(Icons.data_usage_sharp),
       subtitle: Text("For Test purpuses select Test-Server. After that please restart the the App"),
diff --git a/lib/view/test_set_edit.dart b/lib/view/test_set_edit.dart
index 3dd0dd5..deecd75 100644
--- a/lib/view/test_set_edit.dart
+++ b/lib/view/test_set_edit.dart
@@ -136,8 +136,8 @@ class TestSetEdit extends StatelessWidget with Trans {
                       barrierDismissible: false,
                       builder: (BuildContext context) {
                         return DialogCommon(
-                          title: "Own Body",
-                          descriptions: t("execute these exercises with maximum repeats. Leave at least 3 min rest time between time"),
+                          title: bloc.templateNameTranslation,
+                          descriptions: bloc.templateDescription,
                           text: "OK",
                           onTap: () => {Navigator.of(context).pop()},
                           onCancel: () => {Navigator.of(context).pop()},
@@ -182,7 +182,9 @@ class TestSetEdit extends StatelessWidget with Trans {
     }
 
     alternatives.forEach((element) {
-      list.add(getImageStack(element, menuBloc, bloc));
+      if (workoutTree.exerciseTypeId != element.exerciseTypeId) {
+        list.add(getImageStack(element, menuBloc, bloc));
+      }
     });
 
     return list;
diff --git a/lib/view/test_set_new.dart b/lib/view/test_set_new.dart
index e652dcc..d130dbb 100644
--- a/lib/view/test_set_new.dart
+++ b/lib/view/test_set_new.dart
@@ -2,6 +2,7 @@ import 'dart:collection';
 
 import 'package:aitrainer_app/bloc/test_set_execute/test_set_execute_bloc.dart';
 import 'package:aitrainer_app/bloc/test_set_new/test_set_new_bloc.dart';
+import 'package:aitrainer_app/library/custom_icon_icons.dart';
 import 'package:aitrainer_app/model/exercise_plan_detail.dart';
 import 'package:aitrainer_app/model/exercise_type.dart';
 import 'package:aitrainer_app/repository/exercise_repository.dart';
@@ -11,6 +12,7 @@ import 'package:aitrainer_app/widgets/bottom_bar_multiple_exercises.dart';
 import 'package:aitrainer_app/widgets/exercise_save.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_bloc/flutter_bloc.dart';
+import 'package:google_fonts/google_fonts.dart';
 import 'package:modal_progress_hud/modal_progress_hud.dart';
 
 // ignore: must_be_immutable
@@ -67,6 +69,18 @@ class TestSetNew extends StatelessWidget with Trans {
               );
             }),
           )),
+      floatingActionButton: FloatingActionButton.extended(
+        onPressed: () => {
+          Navigator.of(context).pop(),
+          bloc.add(TestSetNewSubmit()),
+        },
+        backgroundColor: Colors.orange[800],
+        icon: Icon(CustomIcon.save),
+        label: Text(
+          t("Save"),
+          style: GoogleFonts.inter(fontWeight: FontWeight.bold, fontSize: 16),
+        ),
+      ),
       bottomNavigationBar: BottomBarMultipleExercises(
         isSet: executeBloc.miniTestSet == true,
         exerciseTypeId: exerciseType.exerciseTypeId,
@@ -76,20 +90,21 @@ class TestSetNew extends StatelessWidget with Trans {
 
   Widget getExercises(TestSetNewBloc bloc) {
     return ExerciseSave(
-        exerciseName: bloc.exerciseType.nameTranslation,
-        exerciseDescription: bloc.exerciseType.descriptionTranslation,
-        exerciseTask: t("Please take a relative bigger weight and repeat 12-20 times"),
-        unit: bloc.exerciseType.unit,
-        unitQuantityUnit: bloc.exerciseType.unitQuantityUnit,
-        hasUnitQuantity: bloc.exerciseType.unitQuantityUnit != null,
-        onQuantityChanged: (value) {
-          bloc.add(TestSetNewChangeQuantity(quantity: double.parse(value)));
-        },
-        onUnitQuantityChanged: (value) => bloc.add(TestSetNewChangeQuantityUnit(quantity: double.parse(value))),
-        exerciseTypeId: bloc.exerciseType.exerciseTypeId,
-        onSubmit: () {
+      exerciseName: bloc.exerciseType.nameTranslation,
+      exerciseDescription: bloc.exerciseType.descriptionTranslation,
+      exerciseTask: t("Please take a relative bigger weight and repeat 12-20 times"),
+      unit: bloc.exerciseType.unit,
+      unitQuantityUnit: bloc.exerciseType.unitQuantityUnit,
+      hasUnitQuantity: bloc.exerciseType.unitQuantityUnit != null,
+      onQuantityChanged: (value) {
+        bloc.add(TestSetNewChangeQuantity(quantity: double.parse(value)));
+      },
+      onUnitQuantityChanged: (value) => bloc.add(TestSetNewChangeQuantityUnit(quantity: double.parse(value))),
+      exerciseTypeId: bloc.exerciseType.exerciseTypeId,
+      /* onSubmit: () {
           Navigator.of(context).pop();
           bloc.add(TestSetNewSubmit());
-        });
+        } */
+    );
   }
 }
diff --git a/lib/widgets/app_bar.dart b/lib/widgets/app_bar.dart
index 5968f48..9868a91 100644
--- a/lib/widgets/app_bar.dart
+++ b/lib/widgets/app_bar.dart
@@ -143,7 +143,7 @@ class _AppBarNav extends State<AppBarNav> with SingleTickerProviderStateMixin, C
   Widget getAnimatedWidget() {
     double cWidth = mediaSizeWidth(context);
     double percent = Cache().getPercentExercises();
-    if (percent == -1) {
+    if (percent == -1 || percent.isNaN) {
       menuBloc.menuTreeRepository.createTree();
       ExerciseRepository exerciseRepository = ExerciseRepository();
       exerciseRepository.getBaseExerciseFinishedPercent();
@@ -152,7 +152,7 @@ class _AppBarNav extends State<AppBarNav> with SingleTickerProviderStateMixin, C
         percent = 0;
       }
     }
-    if (percent == null) {
+    if (percent == null || percent.isNaN) {
       percent = 0;
     }
     int sizeExerciseList = Cache().getExercises() == null ? 0 : Cache().getExercises().length;
diff --git a/lib/widgets/bottom_nav.dart b/lib/widgets/bottom_nav.dart
index a533d68..9c8a1af 100644
--- a/lib/widgets/bottom_nav.dart
+++ b/lib/widgets/bottom_nav.dart
@@ -1,5 +1,4 @@
 import 'package:aitrainer_app/library/gradient_bottom_navigation_bar.dart';
-import 'package:aitrainer_app/util/app_localization.dart';
 import 'package:aitrainer_app/model/cache.dart';
 import 'package:aitrainer_app/service/logging.dart';
 import 'package:aitrainer_app/util/common.dart';
@@ -25,13 +24,6 @@ class _NawDrawerWidget extends State<BottomNavigator> with Trans, Logging {
     super.initState();
   }
 
-  @override
-  void didUpdateWidget(BottomNavigator oldWidget) {
-    Cache().initBadges();
-
-    super.didUpdateWidget(oldWidget);
-  }
-
   @override
   void didChangeDependencies() {
     Cache().initBadges();
@@ -56,28 +48,25 @@ class _NawDrawerWidget extends State<BottomNavigator> with Trans, Logging {
             backgroundColor: bgrColor,
             icon: Common.badgedIcon(inactive, Icons.home, "home"),
             activeIcon: Common.badgedIcon(active, Icons.home, "home"),
-            title: new Text(t("Home"), style: TextStyle(fontSize: 12)),
+            title: Text(t("Home"), style: TextStyle(fontSize: 12)),
           ),
           BottomNavigationBarItem(
             backgroundColor: bgrColor,
-            icon: new Icon(Icons.trending_up, color: inactive),
-            activeIcon: new Icon(
-              Icons.trending_up,
-              color: active,
-            ),
-            title: new Text(
+            icon: Common.badgedIcon(inactive, Icons.trending_up, "development"),
+            activeIcon: Common.badgedIcon(active, Icons.trending_up, "development"),
+            title: Text(
               t("My Development"),
               style: TextStyle(fontSize: 12),
             ),
           ),
           BottomNavigationBarItem(
             backgroundColor: bgrColor,
-            icon: new Icon(Icons.featured_play_list, color: inactive),
-            activeIcon: new Icon(
+            icon: Icon(Icons.featured_play_list, color: inactive),
+            activeIcon: Icon(
               Icons.featured_play_list,
               color: active,
             ),
-            title: new Text(
+            title: Text(
               t("My Training Plan"),
               style: TextStyle(fontSize: 12),
             ),
@@ -87,7 +76,7 @@ class _NawDrawerWidget extends State<BottomNavigator> with Trans, Logging {
               icon: Common.badgedIcon(inactive, Icons.person, "account"),
               activeIcon: Common.badgedIcon(active, Icons.person, "account"),
               title: Text(
-                AppLocalizations.of(context).translate("Account"),
+                t("Account"),
                 style: TextStyle(fontSize: 12),
               )),
           BottomNavigationBarItem(
@@ -95,11 +84,6 @@ class _NawDrawerWidget extends State<BottomNavigator> with Trans, Logging {
               icon: Icon(Icons.settings, color: inactive),
               activeIcon: Icon(Icons.settings, color: active),
               title: Text(t("Settings"), style: TextStyle(fontSize: 12))),
-          /*  BottomNavigationBarItem(
-              backgroundColor: bgrColor,
-              icon: Icon(Icons.multiple_stop, color: inactive),
-              activeIcon: Icon(Icons.multiple_stop, color: active),
-              title: Text(t("Multi test"), style: TextStyle(fontSize: 12))) */
         ],
         onTap: (index) {
           setState(() {
diff --git a/lib/widgets/exercise_save.dart b/lib/widgets/exercise_save.dart
index 944d366..80b6d0b 100644
--- a/lib/widgets/exercise_save.dart
+++ b/lib/widgets/exercise_save.dart
@@ -231,7 +231,7 @@ class _ExerciseSaveState extends State<ExerciseSave> with Trans {
                     Divider(
                       color: Colors.transparent,
                     ),
-                    FlatButton(
+                    /*   FlatButton(
                         onPressed: () {
                           widget.onSubmit();
                           /* showDialog(
@@ -251,7 +251,7 @@ class _ExerciseSaveState extends State<ExerciseSave> with Trans {
                               style: TextStyle(fontSize: 16, color: Colors.white),
                             ),
                           ],
-                        )),
+                        )), */
                   ]),
             )));
   }
diff --git a/lib/widgets/image_button.dart b/lib/widgets/image_button.dart
index bfc9de2..dcc4563 100644
--- a/lib/widgets/image_button.dart
+++ b/lib/widgets/image_button.dart
@@ -114,8 +114,8 @@ class ImageButton extends StatelessWidget {
                       : GestureDetector(
                           child: Image.asset(
                             'asset/image/lock.png',
-                            height: 150,
-                            width: 150,
+                            height: 50,
+                            width: 50,
                           ),
                           onTap: onTap ?? onTap,
                         ))
diff --git a/lib/widgets/menu_page_widget.dart b/lib/widgets/menu_page_widget.dart
index 7fbc2ed..debe861 100644
--- a/lib/widgets/menu_page_widget.dart
+++ b/lib/widgets/menu_page_widget.dart
@@ -53,7 +53,7 @@ class _MenuPageWidgetState extends State<MenuPageWidget> with Trans, Logging {
         }
       });
       animation.addListener(() {
-        setState(() {});
+        //setState(() {});
       });
     }
 
@@ -65,6 +65,13 @@ class _MenuPageWidgetState extends State<MenuPageWidget> with Trans, Logging {
     super.initState();
   }
 
+  @override
+  bool didUpdateWidget(MenuPageWidget oldWidget) {
+    super.didUpdateWidget(oldWidget);
+    scrollController.animateTo(40, duration: Duration(milliseconds: 300), curve: Curves.easeIn);
+    return true;
+  }
+
   @override
   Widget build(BuildContext context) {
     menuBloc = BlocProvider.of<MenuBloc>(context);
@@ -247,10 +254,10 @@ class _MenuPageWidgetState extends State<MenuPageWidget> with Trans, Logging {
     SliverGrid sliverList = SliverGrid(
         delegate: SliverChildListDelegate(list),
         gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
-          crossAxisCount: 3,
-          mainAxisSpacing: 1.0,
-          crossAxisSpacing: 1.0,
-          childAspectRatio: 3,
+          crossAxisCount: 4,
+          mainAxisSpacing: 1.5,
+          crossAxisSpacing: 1.5,
+          childAspectRatio: 2.5,
         ));
     return sliverList;
   }
diff --git a/pubspec.lock b/pubspec.lock
index e35c843..290dd08 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -985,6 +985,13 @@ packages:
     description: flutter
     source: sdk
     version: "0.0.99"
+  smartlook:
+    dependency: "direct main"
+    description:
+      name: smartlook
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.0.6"
   source_gen:
     dependency: transitive
     description:
diff --git a/pubspec.yaml b/pubspec.yaml
index 9a42498..186d134 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -15,7 +15,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
 # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
 # Read more about iOS versioning at
 # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
-version: 1.1.10+60
+version: 1.1.10+61
 
 environment:
   sdk: ">=2.7.0 <3.0.0"
@@ -54,6 +54,10 @@ dependencies:
   audioplayer: ^0.8.1
   ezanimation: ^0.4.1
   confetti: ^0.5.5
+  crypto: ^2.1.5
+  transparent_image: ^1.0.0
+  #auto_animated: ^2.1.0
+  carousel_slider: ^3.0.0
     
 
   firebase_core: ^0.5.0
@@ -63,11 +67,8 @@ dependencies:
   flutter_facebook_auth: ^2.0.0+1
   google_sign_in: ^4.5.9
   apple_sign_in: ^0.1.0
-  crypto: ^2.1.5
-  transparent_image: ^1.0.0
-  #auto_animated: ^2.1.0
-  carousel_slider: ^3.0.0
-
+  
+  smartlook: ^1.0.6
   flurry: ^0.0.7
 
   animated_widgets: ^1.0.6
@@ -288,6 +289,7 @@ flutter:
      - asset/menu/incline_press.jpg
      - asset/menu/incline_pushups.jpg
      - asset/menu/incline_triceps_extension.jpg
+     - asset/menu/leg_abductor.jpg
      - asset/menu/leg_curls.jpg
      - asset/menu/leg_extension.jpg
      - asset/menu/legpress.jpg