// This delegate will be called when the user remove the filters
        public void ClearAppliedFilter()
        {
            // Remove filters applied
            this.FilterApplied = null;

            // When the controller will appear, it will get the events without filters
        }
Пример #2
0
 private void DefaultHandler(FilterEventData e)
 {
     if (logOutput)
     {
         Debug.Log($"{(e.autoGenerated ? "Auto" : "Provided")}: {(e.value.HasValue ? e.value.ToString() : "(null)")}");
     }
 }
        // This delegate will be called when the user apply new filters
        public void LoadEventsByFilter(FilterEventData filter)
        {
            // Save filter
            this.FilterApplied = filter;

            // When the controller will appear, it will get the events with filters
        }
        private void SetUpView()
        {
            // Set toolbar and title
            global::Android.Support.V7.Widget.Toolbar toolbar = (global::Android.Support.V7.Widget.Toolbar)FindViewById(Resource.Id.toolbar);
            toolbar.Title = GetString(Resource.String.event_filter);


            // Add back button
            SetSupportActionBar(toolbar);
            SupportActionBar.SetDisplayHomeAsUpEnabled(true);

            numberEventText = FindViewById <EditText>(Resource.Id.nro_event_text_field);
            titleEventText  = FindViewById <EditText>(Resource.Id.title_text_field);


            Button btnAplicar = FindViewById <Button>(Resource.Id.btn_aplicar);

            btnAplicar.Click += BtnAplicar_Click;

            SetUpSegmentedControl();
            SetUpDateFields();

            // Get filter applied
            if (Intent.GetStringExtra(FILTER_APPLIED) != null)
            {
                this.FilterApplied = JsonConvert.DeserializeObject <FilterEventData>(Intent.GetStringExtra(FILTER_APPLIED));
                LoadFilterSavedInView();
            }
        }
        private void FinishWithResult(FilterEventData filter)
        {
            Intent data = new Intent();

            data.PutExtra(FILTER_RESULT, JsonConvert.SerializeObject(filter));

            SetResult(Result.Ok, data);
            Finish();
        }
Пример #6
0
        public void Provide(uint value)
        {
            FilterEventData e = filter.PushHistory(value, Time.time);

            if (e.type == EventType.FingerUp)
            {
                OnFilterOutput.Invoke(e);
            }
        }
Пример #7
0
        private void GetEventsFromServer()
        {
            ShowProgressDialog(true);
            clearListData();

            Task.Run(async() =>
            {
                try
                {
                    if (FilterApplied == null)
                    {
                        FilterApplied = BuildDefaultFilter();
                    }

                    this.EventsFromServer = await AysaClient.Instance.GetEventsByFilter(FilterApplied);

                    if (this.EventsFromServer.Count > 1)
                    {
                        this.EventsFromServer = this.EventsFromServer.OrderByDescending(x => x.Fecha).ToList();
                    }

                    Activity.RunOnUiThread(() =>
                    {
                        SetAdapterWithFilterText("");
                    });
                }
                catch (HttpUnauthorized)
                {
                    this.Activity.RunOnUiThread(() =>
                    {
                        ShowSessionExpiredError();
                    });
                }
                catch (Exception ex)
                {
                    this.Activity.RunOnUiThread(() =>
                    {
                        ShowErrorAlert(ex.Message);
                    });
                }
                finally
                {
                    this.Activity.RunOnUiThread(() =>
                    {
                        ShowProgressDialog(false);
                    });
                }
            });
        }
Пример #8
0
        public async Task <List <Event> > GetEventsByFilter(FilterEventData filter)
        {
            // Refresh token if it needed
            await RefreshTokenIfNeeded();


            string nroEvento = filter.EventNumber != 0 ? filter.EventNumber.ToString() : "";
            string title     = filter.Title;
            string status    = filter.Status != -1 ? filter.Status.ToString() : "";
            string fromDate  = filter.FromDate.ToString(FormatDateToServer);
            string toDate    = filter.ToDate.ToString(FormatDateToServer);

            // Get people in guard from server
            return(await AysaClientServices.Instance.Get <List <Event> >(string.Format(GET_EVENTS_BY_FILTER_URL, nroEvento, title, status, fromDate, toDate)));
        }
        partial void SaveChangesButton_TouchUpInside(UIButton sender)
        {
            // Build filter form IBOutlets
            FilterEventData filter = ApplyFilter();

            if (filter != null)
            {
                // Send filter to EventsViewController to get events by filter
                if (_delegate != null)
                {
                    Delegate?.LoadEventsByFilter(filter);
                }

                DismissViewController(true, null);
            }
        }
Пример #10
0
        private FilterEventData BuildDefaultFilter()
        {
            DateTime fromDate = DateTime.Now.AddDays(-30);
            DateTime toDate   = DateTime.Now;

            var filter = new FilterEventData
            {
                FromDate    = fromDate,
                ToDate      = toDate,
                Status      = -1,
                EventNumber = 0,
                Title       = ""
            };

            return(filter);
        }
Пример #11
0
        private FilterEventData ApplyFilter()
        {
            // Build filter
            // Get filter data from IBOutlets

            // Try to get Number of Event
            int numberEvent = 0;

            if (numberEventText.Text.Length > 0)
            {
                numberEvent = int.Parse(numberEventText.Text);
            }

            titleEventText = FindViewById <EditText>(Resource.Id.title_text_field);
            string title = titleEventText.Text;

            // Get status
            int statusEvent = -1;

            switch (segmentedIndexSelected)
            {
            case 1:
                statusEvent = (int)Event.Status.Open;
                break;

            case 2:
                statusEvent = (int)Event.Status.Close;
                break;

            default:
                break;
            }

            // Build filter objects
            FilterEventData filter = new FilterEventData();

            filter.EventNumber = numberEvent;
            filter.Title       = title;
            filter.Status      = statusEvent;
            filter.FromDate    = DateTime.ParseExact(fromDateText.Text, AysaConstants.FormatDate, null);
            filter.ToDate      = DateTime.ParseExact(toDateText.Text, AysaConstants.FormatDate, null);

            return(filter);
        }
        private FilterEventData ApplyFilter()
        {
            // Build filter
            // Get filter data from IBOutlets

            // Try to get Number of Event
            int numberEvent = 0;

            if (NumberEventTextField.Text.Length > 0)
            {
                numberEvent = int.Parse(NumberEventTextField.Text);
            }

            string title = TitleTextField.Text;

            // Get status
            int statusEvent = -1;

            switch (StatusSegmentedControl.SelectedSegment)
            {
            case 1:
                statusEvent = (int)Event.Status.Open;
                break;

            case 2:
                statusEvent = (int)Event.Status.Close;
                break;

            default:
                break;
            }

            // Build filter objects
            FilterEventData filter = new FilterEventData();

            filter.EventNumber = numberEvent;
            filter.Title       = title;
            filter.Status      = statusEvent;
            filter.FromDate    = DateTime.ParseExact(FromDateTextField.Text, AysaConstants.FormatDate, null);
            filter.ToDate      = DateTime.ParseExact(ToDateTextField.Text, AysaConstants.FormatDate, null);

            return(filter);
        }
Пример #13
0
        public override void OnActivityResult(int requestCode, int resultCode, Intent data)
        {
            if (requestCode == FILTERS_SCREEN)
            {
                //Result.ok = -1
                if (resultCode == -1)
                {
                    String result = data.GetStringExtra(FilterEventsActivity.FILTER_RESULT);
                    FilterApplied = JsonConvert.DeserializeObject <FilterEventData>(result);

                    GetEventsFromServer();
                }
            }
            else if (requestCode == ADD_EVENT_CODE || requestCode == EVENT_DETAIL_CODE)
            {
                if (resultCode == -1)
                {
                    GetEventsFromServer();
                }
            }
        }
Пример #14
0
        void BtnAplicar_Click(object sender, System.EventArgs e)
        {
            FilterEventData filter = ApplyFilter();

            FinishWithResult(filter);
        }