public EditTextForDatePicker(Context context, IAttributeSet attrs)
     : base(context, attrs)
 {
     Focusable = false;
     Click    += delegate
     {
         var dialog = new DatePickerDialogFragment(Context,
                                                   DateTime.ParseExact(Text, Constants.DateTimeFormat.DateOnlyFormat, System.Globalization.CultureInfo.CurrentCulture),
                                                   this);
         dialog.Show(((FragmentActivity)Plugin.CurrentActivity.CrossCurrentActivity.Current.Activity).SupportFragmentManager, nameof(EditTextForDatePicker));
     };
 }
Example #2
0
        private void EditDue_Click(object sender, EventArgs e)
        {
            var picker = new DatePickerDialogFragment();

            picker.Date = item.DueDate.Value;
            picker.OnOk = dt =>
            {
                item.DueDate = dt;
                var editDue = FindViewById <EditText>(Resource.Id.editDue);
                editDue.Text = item.StrDueDate;
            };
            picker.Show(FragmentManager, "datePicker");
        }
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            var view = inflater.Inflate(Resource.Layout.DialogFragment_Contents, container, false);

            var datePickerButton = view.FindViewById<Button>(Resource.Id.DatePickerDialogButton);
            datePickerButton.Click += delegate
                                          {
                                              var dialog = new DatePickerDialogFragment(Activity, DateTime.Now, this);
                                              dialog.Show(FragmentManager, "date"); 
                                          };

            var numberPickerButton = view.FindViewById<Button>(Resource.Id.NumberPickerDialogButton);
            numberPickerButton.Click += delegate
                                            {
                                                var dialog = new NumberPickerDialogFragment(Activity, 10, 1337, 42, this);
                                                dialog.Show(FragmentManager, "number"); 
                                            };

            return view;
        }
Example #4
0
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            var view = inflater.Inflate(Resource.Layout.DialogFragment_Contents, container, false);

            var datePickerButton = view.FindViewById <Button>(Resource.Id.DatePickerDialogButton);

            datePickerButton.Click += delegate
            {
                var dialog = new DatePickerDialogFragment(Activity, DateTime.Now, this);
                dialog.Show(FragmentManager, "date");
            };

            var numberPickerButton = view.FindViewById <Button>(Resource.Id.NumberPickerDialogButton);

            numberPickerButton.Click += delegate
            {
                var dialog = new NumberPickerDialogFragment(Activity, 10, 1337, 42, this);
                dialog.Show(FragmentManager, "number");
            };

            return(view);
        }
    private void DateSelect_OnClick(object sender, EventArgs e)
    {
        var dialog = new DatePickerDialogFragment(this, DateTime.Now, this);

        dialog.Show(FragmentManager, "date");
    }
Example #6
0
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            var      ignored             = base.OnCreateView(inflater, container, savedInstanceState);
            View     self                = inflater.Inflate(Resource.Layout.CommonReportInput, null);
            TextView info                = self.FindViewById <TextView>(Resource.Id.textViewReportInputInfo);
            Spinner  spinner_oficina     = self.FindViewById <Spinner>(Resource.Id.spinnerInputOficina);
            Spinner  spinner_despacho    = self.FindViewById <Spinner>(Resource.Id.spinnerInputDespacho);
            Spinner  spinner_notificador = self.FindViewById <Spinner>(Resource.Id.spinnerInputNotificador);
            TextView fecha_inicio        = self.FindViewById <TextView>(Resource.Id.textViewInputFechaInicio);
            TextView fecha_fin           = self.FindViewById <TextView>(Resource.Id.textViewInputFechaFin);
            TextView fecha_jornada       = self.FindViewById <TextView>(Resource.Id.textViewInputFechaJornada);

            // Oculta/Muestra los parametros de entrada que no corresponden al
            // reporte/perfil de usuario
            bool es_supervisor = false;

            try
            {
                string es_supervisor_str = "False";
                Helpers.SQLiteConeccion dbConeccion;
                dbConeccion = new Helpers.SQLiteConeccion();
                dbConeccion.consultaDatos("SELECT Supervisor FROM OficialNotificador", this.Activity, ref es_supervisor_str);
                es_supervisor = (String.Compare("True", es_supervisor_str, true) == 0);
            }
            catch (Exception e)
            {
                //Se guarda el error en el log de errores
                Logs.saveLogError("NotificacionesEnviadasADespachoInputReport.OnCreateView " + e.Message + " " + e.StackTrace);
                //Se muestra un mensaje informando el error
                Toast.MakeText(this.Context, GetString(Resource.String.MensajeErrorCargaBaseDatos), ToastLength.Long).Show();
            }

            self.FindViewById <LinearLayout>(Resource.Id.linearLayoutInputOficina).Visibility      = sel_oficina ? ViewStates.Visible : ViewStates.Gone;
            self.FindViewById <LinearLayout>(Resource.Id.linearLayoutInputNotificador).Visibility  = (sel_notificador && es_supervisor) ? ViewStates.Visible : ViewStates.Gone;
            self.FindViewById <LinearLayout>(Resource.Id.linearLayoutInputDespacho).Visibility     = sel_despacho ? ViewStates.Visible : ViewStates.Gone;
            self.FindViewById <LinearLayout>(Resource.Id.linearLayoutInputFechaInicio).Visibility  = sel_fecha_inicio ? ViewStates.Visible : ViewStates.Gone;
            self.FindViewById <LinearLayout>(Resource.Id.linearLayoutInputFechaFin).Visibility     = sel_fecha_fin ? ViewStates.Visible : ViewStates.Gone;
            self.FindViewById <LinearLayout>(Resource.Id.linearLayoutInputFechaJornada).Visibility = sel_fecha_jornada ? ViewStates.Visible : ViewStates.Gone;

            // Cargar los valores que se tengan del ultimo reporte
            fecha_inicio.Text  = report.input_fecha_inicio.ToString("yyyy-MMM-dd");
            fecha_fin.Text     = report.input_fecha_fin.ToString("yyyy-MMM-dd");
            fecha_jornada.Text = report.input_fecha_jornada.ToString("yyyy-MMM-dd");

            // FIXME: Poner el mensaje de error en un mejor lugar
            if (String.IsNullOrEmpty(report.output_error))
            {
                info.Text = "Datos de entrada para Reporte: " + report.ToString();
            }
            else
            {
                info.Text           = report.output_error;
                report.output_error = null;
            }

            // Accion para el botón de generar reporte
            Button btnGen = self.FindViewById <Button>(Resource.Id.btnGenerarReporte);

            btnGen.Click += (sender, e) => {
                Fragment frag = report.getOutputReportFragment();
                // Asigna los parámetros de entrada (las fechas se assignan en OnDateSet)
                report.input_oficina  = "0534"; // FIXME. El valor esta harc
                report.input_despacho = (string)spinner_despacho.SelectedItem;
                if (sel_notificador)
                {
                    if (es_supervisor)
                    {
                        report.input_notificador = (string)spinner_notificador.SelectedItem;
                    }
                    else
                    {
                        try
                        {
                            Helpers.SQLiteConeccion dbConeccion;
                            dbConeccion = new Helpers.SQLiteConeccion();
                            dbConeccion.consultaDatos("SELECT NombreCompleto FROM OficialNotificador", this.Activity, ref report.input_notificador);
                        }
                        catch (Exception ex)
                        {
                            //Se guarda el error en el log de errores
                            Logs.saveLogError("NotificacionesEnviadasADespachoInputReport.OnCreateView " + ex.Message + " " + ex.StackTrace);
                            //Se muestra un mensaje informando el error
                            Toast.MakeText(this.Context, GetString(Resource.String.MensajeErrorCargaBaseDatos), ToastLength.Long).Show();
                            report.input_notificador = "";
                        }
                    }
                }

                FragmentManager.BeginTransaction().Replace(Resource.Id.content_frame, frag).Commit();
            };

            // Spinner con oficinas
            if (sel_oficina)
            {
                Android.Widget.ArrayAdapter <String> ad;
                ad = new Android.Widget.ArrayAdapter <String>(
                    this.Context, Android.Resource.Layout.SimpleSpinnerItem,
                    new string[] { Fragments.FragmentLogin.codOficina, "0534" }); // FIXME El valor de la oficina esta hardcoded
                spinner_oficina.Adapter = ad;
            }

            // Spinner con notificadores
            if (sel_notificador && es_supervisor)
            {
                try
                {
                    Helpers.SQLiteConeccion dbConeccion;
                    dbConeccion = new Helpers.SQLiteConeccion();
                    dbConeccion.setAdaptadorCombo("SELECT NombreCompleto FROM OficialesNotificadores", this.Activity, ref spinner_notificador);
                }
                catch (Exception e)
                {
                    //Se guarda el error en el log de errores
                    Logs.saveLogError("FragmentMap.cargarComboNotificador " + e.Message + " " + e.StackTrace);
                    //Se muestra un mensaje informando el error
                    Toast.MakeText(this.Context, GetString(Resource.String.MensajeErrorCargaBaseDatos), ToastLength.Long).Show();
                }
            }

            // Spinner con despachos
            if (sel_despacho)
            {
                Android.Widget.ArrayAdapter <String> adapter;
                adapter = new Android.Widget.ArrayAdapter <String>(
                    this.Context, Android.Resource.Layout.SimpleSpinnerItem,
                    new string[] { Fragments.FragmentLogin.codOficina, "0163" }); // FIXME El valor del despacho esta hardcoded
                spinner_despacho.Adapter = adapter;
            }

            // Fecha inicio
            if (sel_fecha_inicio)
            {
                DatePickerDialogFragment fecha_inicio_picker = new DatePickerDialogFragment(Activity, DateTime.Now, this, "inicio");
                fecha_inicio.Click += (sender, args) =>
                {
                    fecha_inicio_picker.Show(FragmentManager, null);
                };
            }

            // Fecha fin
            if (sel_fecha_fin)
            {
                DatePickerDialogFragment fecha_fin_picker = new DatePickerDialogFragment(Activity, DateTime.Now, this, "fin");
                fecha_fin.Click += (sender, args) =>
                {
                    fecha_fin_picker.Show(FragmentManager, null);
                };
            }

            // Fecha jornada
            if (sel_fecha_jornada)
            {
                DatePickerDialogFragment fecha_jornada_picker = new DatePickerDialogFragment(Activity, DateTime.Now, this, "jornada");
                fecha_jornada.Click += (sender, args) =>
                {
                    fecha_jornada_picker.Show(FragmentManager, null);
                };
            }

            return(self);
        }
Example #7
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Register);

            mRegEmail = FindViewById<EditText>(Resource.Id.regEMailEditText);
            mRegPw = FindViewById<EditText>(Resource.Id.regPwEditText);
            mRegPwConfirm = FindViewById<EditText>(Resource.Id.regPwConfirmEditText);
            mRegName = FindViewById<EditText>(Resource.Id.regNameEditText);
            mRegSurname = FindViewById<EditText>(Resource.Id.regSurnameEditText);
            mRegDoB = FindViewById<TextView>(Resource.Id.regDoBTextView);
            mRegButton = FindViewById<Button>(Resource.Id.regButton);

            mDateOfBirth = new DateTime(1970, 1, 1);
            mRegDoB.Click += (object sender, EventArgs e) =>
            {
                var datePickerFragment = new DatePickerDialogFragment(this, mDateOfBirth.AddMonths(-1), this);
                datePickerFragment.Cancelable = false;
                datePickerFragment.Show(FragmentManager, null);
            };

            mRegButton.Click += async (object sender, EventArgs e) =>
            {
                if (AreFieldsFilled())
                    if (Regex.Match(mRegEmail.Text, @"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$").Success)
                        if (IsPasswordMatchingPolicy())
                            if (mRegPw.Text.Equals(mRegPwConfirm.Text))
                            {
                                mEmail = mRegEmail.Text;
                                mPw = mRegPw.Text;
                                mPwConfirm = mRegPwConfirm.Text;
                                mName = mRegName.Text;
                                mSurname = mRegSurname.Text;
                                //ProgressDialog
                                var loadingMessage = ProgressDialog.Show(this,
                                    GetString(Resource.String.SendingUserRegisterTitle
                                        ), GetString(Resource.String.SendingUserRegisterContent), true, false);
                                //nowy u¿ytkownik
                                newUser = new UserRegisterBinding
                                {
                                    Email = mEmail,
                                    Password = mPw,
                                    ConfirmPassword = mPwConfirm
                                };

                                var connectivityManager = (ConnectivityManager) GetSystemService(ConnectivityService);
                                var activeNetworkInfo = connectivityManager.ActiveNetworkInfo;
                                if (activeNetworkInfo == null || !activeNetworkInfo.IsConnected)
                                {
                                    loadingMessage.Dismiss();
                                    Toast.MakeText(this, GetString(Resource.String.NoConnectionInfo), ToastLength.Long)
                                        .Show();
                                    return;
                                }

                                var responseMessage = await RegisterUser(newUser);
                                if (responseMessage.IsSuccessStatusCode)
                                {
                                    var responseMessageContent = await responseMessage.Content.ReadAsStringAsync();
                                    var userId = JsonConvert.DeserializeObject<string>(responseMessageContent);

                                    //nowy podró¿uj¹cy
                                    newTraveler = new Traveler
                                    {
                                        Name = mName,
                                        Surname = mSurname,
                                        DateOfBirth = mDateOfBirth,
                                        UserId = userId
                                    };

                                    responseMessage = await AddTraveler(newTraveler);

                                    if (!responseMessage.IsSuccessStatusCode)
                                        return;
                                    loadingMessage.Dismiss();
                                    SetResult(Result.Ok);
                                    Finish();
                                }
                                else
                                {
                                    loadingMessage.Dismiss();
                                    Toast.MakeText(this, GetString(Resource.String.RegisterUserModelNotOkInfo),
                                        ToastLength.Long).Show();
                                }
                            }
                            else
                                Toast.MakeText(this, GetString(Resource.String.RegisterUserPwsNotEqualInfo),
                                    ToastLength.Long).Show();
                        else
                        {
                            for (var i = 0; i < 2; i++) 
                            Toast.MakeText(this, GetString(Resource.String.RegisterUserPwNotMatchingPolicyInfo),
                                ToastLength.Long).Show();
                        }
                    else
                        Toast.MakeText(this, GetString(Resource.String.RegisterUserEmailNotCorrectInfo),
                            ToastLength.Long).Show();
                else Toast.MakeText(this, GetString(Resource.String.RegisterUserNoDataInfo), ToastLength.Long).Show();
            };
        }