void OnButtonHeight(object sender, EventArgs args)
 {
     if (btnHeight.Image.File.Contains("active") == false) // if already active -> return
     {
         ShowVariantHeight();
         CreateResultTime(SubMode.Height, Settings.GetDistanceUnit(), Localization.pageResultSpeed, Settings.GetSpeedUnit());
         Analytics.TrackEventResult(Analytics.EVENT_RESULT_HEIGHT);
     }
 }
        void OnButtonNext(object sender, EventArgs args)
        {
            DataItemRun item = database.GetRunNext(mode, itemRun.Id);

            if (IsItemRunEmpty(item) == false)
            {
                UpdateItemRun(item);
                Analytics.TrackEventResult(Analytics.EVENT_RESULT_NEXT);
            }
        }
        void OnButtonSpeed(object sender, EventArgs args)
        {
            if (btnSpeed.Image.File.Contains("active") == false) // if already active -> return
            {
                ShowVariantSpeed();
                CreateResultTime(SubMode.TimeSpeed, Localization.unitSecond, Localization.pageResultSpeed, Settings.GetSpeedUnit());

                if (mode.Equals(RunModeAcceleration.Mode))
                {
                    AddResultDistance(SubMode.TimeDistance, Localization.unitSecond, Localization.pageResultDistance, Settings.GetDistanceUnit());
                }

                Analytics.TrackEventResult(Analytics.EVENT_RESULT_SPEED);
            }
        }
        void OnButtonShare(object sender, EventArgs args)
        {
            // check if feature is purchased, show app-store if not purchased
            if (AppStore.Instance.IsAppStoreShown(layout))
            {
                return;
            }

            IDeviceShare sharer  = DependencyService.Get <IDeviceShare>();
            string       title   = Localization.pageResultShareTitle;
            string       subject = Localization.pageResultShareSubject + " " + itemRun.Id;
            string       text    = GetShareText();

            sharer.Share(title, subject, text);
            Analytics.TrackEventResult(Analytics.EVENT_RESULT_SHARE);
        }
        void OnButtonDelete(object sender, EventArgs args)
        {
            if (IsItemRunEmpty(itemRun) == false)
            {
                database.DeleteRun(itemRun);

                DataItemRun item = database.GetRunPrevious(mode, itemRun.Id);
                if (IsItemRunEmpty(item) == true)
                {
                    item = database.GetRunNext(mode, itemRun.Id);
                    if (IsItemRunEmpty(item) == true)
                    {
                        item = database.GetRunLast(mode);
                    }
                }

                UpdateItemRun(item);
                Analytics.TrackEventResult(Analytics.EVENT_RESULT_DELETE);
            }
        }