Example #1
0
        private void _rpc_OnUpdateEvent(RPCController sender, string id, EventType type, long peerId, long channelIndex, string variable)
        {
            if (type == EventType.Timed)
            {
                if (!TimedEvents.ContainsKey(id))
                {
                    return;
                }

                Event currentEvent = TimedEvents[id];
                _rpc.GetEvent(currentEvent);
                EventUpdated?.Invoke(this, currentEvent);
            }
            else
            {
                if (!Devices.ContainsKey(peerId))
                {
                    return;
                }

                Device device = Devices[peerId];
                if (!device.Events.ContainsKey(id))
                {
                    return;
                }

                Event currentEvent = device.Events[id];
                _rpc.GetEvent(currentEvent);
                EventUpdated?.Invoke(this, currentEvent);
            }
        }
Example #2
0
#pragma warning disable SS002 // DateTime.Now was referenced
        private static bool LoadEvent(string specialEventName,
                                      SpecialEventLayerContent specialEventLayer)
        {
            var currentTime = DateTime.Now;

            if (!specialEventLayer.EventTimeSatisfied(currentTime) ||
                !specialEventLayer.LoadEvent())
            {
                return(false);
            }

            CurrentInstanceName = specialEventName;
            CurrentInstance     = specialEventLayer;

            MainWindow.Instance.RootLayout.Children.Add(CurrentInstance);

            MainWindow.Instance.SettingsFlyout.SpecialEventToggle.IsEnabled = true;

            MainWindow.Instance.SettingsFlyout.SpecialEventEnabled = CurrentInstance.EventEnabled;
            MainWindow.Instance.SettingsFlyout.BgmVolume           = SettingsManager.AppSettings.BgmVolume;

            MainWindow.Instance.SettingsFlyout.SpecialEventPanel.Visibility = Visibility.Visible;

            EventUpdated?.Invoke(null, EventArgs.Empty);

            return(true);
        }
Example #3
0
        private async void OnSave(object sender, EventArgs e)
        {
            var eve = BindingContext as Event;

            if (String.IsNullOrWhiteSpace(eve.Label))
            {
                await DisplayAlert("Error", "Please enter the label.", "OK");

                return;
            }

            if (eve.StartDate > eve.EndDate)
            {
                await DisplayAlert("Error", "Please enter correct dates.", "OK");

                return;
            }

            if (eve.Id == 0)
            {
                await _connection.InsertAsync(eve);

                EventAdded?.Invoke(this, eve);
            }
            else
            {
                EventUpdated?.Invoke(this, eve);
            }

            await Navigation.PopAsync();
        }
Example #4
0
#pragma warning restore SS002 // DateTime.Now was referenced

        private static void UnloadEvent()
        {
            MainWindow.Instance.SettingsFlyout.SpecialEventPanel.Visibility = Visibility.Collapsed;

            MainWindow.Instance.SettingsFlyout.SpecialEventToggle.IsEnabled = false;

            if (CurrentInstance == null)
            {
                EventUpdated?.Invoke(null, EventArgs.Empty);

                return;
            }

            CurrentInstance.UnloadEvent();

            MainWindow.Instance.RootLayout.Children.Remove(CurrentInstance);

            CurrentInstanceName = null;
            CurrentInstance     = null;

            EventUpdated?.Invoke(null, EventArgs.Empty);
        }