Beispiel #1
0
        public override View GetView(int position, View convertView, ViewGroup parent)
        {
            View view = convertView;

            if (view == null)
            {
                view = context.LayoutInflater.Inflate(
                    Resource.Layout.ActiveBetRow, parent, false);
            }

            Team team = this[position];

            view.FindViewById <TextView>(Resource.Id.team).Text      = team.Name;
            view.FindViewById <TextView>(Resource.Id.activeBet).Text = team.Bet;
            TextView lastBet = view.FindViewById <TextView>(Resource.Id.lastBet);


            List <BetDetails> betDetails = AWSDataAccess.GetBetDetailsByTeamId(team.Id);

            if (betDetails.Count > 0)
            {
                lastBet.Text = AWSDataAccess.DoFormat(betDetails[betDetails.Count - 1].Quantity);
                //
            }


            //Button nextBet = view.FindViewById<Button>(Resource.Id.nextBet);

            //nextBet.Click += delegate { nextBet.Text = string.Format("{0}!", team.Id); }; ;

            return(view);
        }
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            // Use this to return your custom view for this Fragment
            // return inflater.Inflate(Resource.Layout.YourFragment, container, false);

            View view = inflater.Inflate(Resource.Layout.CalculateBet, null);

            List <BetDetails> betDetails = AWSDataAccess.GetBetDetailsByTeamId(TeamId);
            string            history    = string.Empty;

            foreach (var item in betDetails)
            {
                int temp = (int)item.Quantity;
                history += temp + ",";
            }

            history = history.Substring(0, history.LastIndexOf(','));

            view.FindViewById <EditText>(Resource.Id.History).Text = history;

            view.FindViewById <EditText>(Resource.Id.Quote).FixDigits();
            Button   calculateBtn = view.FindViewById <Button>(Resource.Id.Calculate);
            EditText historyTxt   = view.FindViewById <EditText>(Resource.Id.History);
            EditText quote        = view.FindViewById <EditText>(Resource.Id.Quote);
            EditText nextbet      = view.FindViewById <EditText>(Resource.Id.NextBet);
            EditText profit       = view.FindViewById <EditText>(Resource.Id.Profit);
            EditText offset       = view.FindViewById <EditText>(Resource.Id.Offset);
            Button   saveBetBtn   = view.FindViewById <Button>(Resource.Id.SaveBet);


            saveBetBtn.Click += delegate
            {
                if (nextbet.Text != String.Empty)
                {
                    BetDetails newBet = new BetDetails()
                    {
                        Id       = Guid.NewGuid(),
                        Quantity = Decimal.Parse(nextbet.Text),
                        Team_Id  = TeamId
                    };

                    if (AWSDataAccess.InsertBetDetails(newBet) != Guid.Empty)
                    {
                        Toast.MakeText(Activity, "Bet saved", ToastLength.Long).Show();
                        FragmentTransaction ft = FragmentManager.BeginTransaction();
                        ft.Replace(Resource.Id.frameLayout1, new ActiveBetFragment());
                        ft.Commit();
                    }
                    else
                    {
                        Toast.MakeText(Activity, "Error in bet saving", ToastLength.Long).Show();
                    }
                }
                else
                {
                    return;
                }
            };

            calculateBtn.Click += delegate
            {
                InputMethodManager inputManager = (InputMethodManager)Activity.GetSystemService(Context.InputMethodService);

                //inputManager.HideSoftInputFromWindow(Activity.CurrentFocus.WindowToken, HideSoftInputFlags.NotAlways);
                if (Activity.CurrentFocus != null)
                {
                    inputManager.HideSoftInputFromWindow(Activity.CurrentFocus.WindowToken, HideSoftInputFlags.NotAlways);
                }

                //&& offset.Text != string.Empty
                if (historyTxt.Text != string.Empty && quote.Text != string.Empty)
                {
                    BettingPerding result = new BettingPerding();

                    int offsetVal = 0;
                    if (offset.Text != string.Empty)
                    {
                        Int32.Parse(offset.Text);
                    }

                    result = BetCalculator.Calculate(historyTxt.Text,
                                                     Double.Parse(quote.Text), 0, offsetVal);

                    //nextbet.SetText(ciccio.ToString(),TextView.BufferType.Normal);
                    profit.Text  = "" + result.Profit;
                    nextbet.Text = "" + result.NextBet;
                }
                else
                {
                    quote.Error = "Requested";
                    //offset.Error = "Requested";
                }
            };

            nextbet.TextChanged += delegate
            {
                //&& offset.Text != string.Empty

                if (historyTxt.Text != string.Empty && quote.Text != string.Empty)
                {
                    BettingPerding result      = new BettingPerding();
                    int            offsetValue = 0;
                    if (offset.Text != string.Empty)
                    {
                        offsetValue = Int32.Parse(offset.Text);
                    }

                    double next = 0;
                    if (!String.IsNullOrEmpty(nextbet.Text))
                    {
                        next = Double.Parse(nextbet.Text);
                    }
                    result = BetCalculator.Calculate(historyTxt.Text,
                                                     Double.Parse(quote.Text), next, offsetValue);


                    profit.Text = "" + result.Profit;
                }
            };

            return(view);
        }
Beispiel #3
0
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            var progressDialog = ProgressDialog.Show(Activity, "", "Creating plot", true);

            progressDialog.SetProgressStyle(ProgressDialogStyle.Spinner);

            progressDialog.Show();

            // Use this to return your custom view for this Fragment
            View view = inflater.Inflate(Resource.Layout.Home, container, false);
            //Button newBetBtn = view.FindViewById<Button>(Resource.Id.newBetBtn);
            //Button closeBetBtn = view.FindViewById<Button>(Resource.Id.closeBetBtn);
            //Button modifyBetBtn = view.FindViewById<Button>(Resource.Id.modifyBetBtn);



            //betProviders.Visibility = ViewStates.Visible;
            //var providers = new List<BetProvider>() { BetProvider.PaddyPower, BetProvider.Bet365 };
            //betProviders.Adapter = new ArrayAdapter<BetProvider>(Activity,
            //    Android.Resource.Layout.SimpleDropDownItem1Line, providers);
            string model = Build.Model;

            //betProviders.Visibility = ViewStates.Visible;
            //var providers = new List<BetProvider>() { BetProvider.PaddyPower, BetProvider.Bet365 };
            //betProviders.Adapter = new ArrayAdapter<BetProvider>(Activity,
            //    Android.Resource.Layout.SimpleDropDownItem1Line, providers);

            //betProviders.ItemSelected += delegate
            //{
            //    ApplicationState.ActiveProvider = providers[betProviders.SelectedItemPosition];

            //};
            if (model.StartsWith("frd", StringComparison.CurrentCultureIgnoreCase))
            {
                ApplicationState.ActiveProvider = BetProvider.Bet365;
            }



            #region button click
            //newBetBtn.Click += delegate
            //{
            //    var addBetFragment = new AddBetFragment() { Arguments = new Bundle() };
            //    //calculateBetFragment.Arguments.PutString("PID", teams[e.Position - 1].Id.ToString());
            //    FragmentTransaction ft = this.Activity.FragmentManager.BeginTransaction();
            //    ft.Replace(Resource.Id.frameLayout1, addBetFragment, "AddBet");
            //    ft.Commit();

            //};


            //modifyBetBtn.Click += delegate
            //{
            //    var modBetFragment = new ModifyBetFragment() { Arguments = new Bundle() };
            //    //calculateBetFragment.Arguments.PutString("PID", teams[e.Position - 1].Id.ToString());
            //    FragmentTransaction ft = this.Activity.FragmentManager.BeginTransaction();
            //    ft.Replace(Resource.Id.frameLayout1, modBetFragment, "ModifyBet");
            //    ft.Commit();

            //};


            //closeBetBtn.Click += delegate
            // {
            //     FragmentTransaction ft = FragmentManager.BeginTransaction();
            //     //Remove fragment else it will crash as it is already added to backstack
            //     Fragment prev = FragmentManager.FindFragmentByTag("closeBetDialog");
            //     if (prev != null)
            //     {
            //         ft.Remove(prev);
            //     }

            //     ft.AddToBackStack(null);

            //     // Create and show the dialog.
            //     CloseBetDialogFragment newFragment = CloseBetDialogFragment.NewInstance(null);
            //     //newFragment.Arguments.PutString("TEAMID",)

            //     //Add fragment
            //     newFragment.Show(ft, "closeBetDialog");
            // };
            #endregion


            new Thread(new ThreadStart(delegate
            {
                #region Calculation
                List <Team> activeTeam = AWSDataAccess.GetBetTeam(0);
                List <Team> closedTeam = AWSDataAccess.GetBetTeam(1);
                decimal spentMoney     = 100;
                foreach (var t in activeTeam)
                {
                    List <BetDetails> details =
                        AWSDataAccess.GetBetDetailsByTeamId(t.Id);

                    foreach (var d in details)
                    {
                        spentMoney += d.Quantity;
                    }
                }
                decimal winnedMoney = 0;
                foreach (var ti in closedTeam)
                {
                    List <BetDetails> details =
                        AWSDataAccess.GetBetDetailsByTeamId(ti.Id);
                    winnedMoney += ti.Win;
                    foreach (var de in details)
                    {
                        spentMoney += de.Quantity;
                    }
                }
                #endregion

                Activity.RunOnUiThread(() => { PlotView plotView = view.FindViewById <PlotView>(Resource.Id.plot_view);
                                               plotView.Model    = CreatePlotModel(winnedMoney, spentMoney); });
                Thread.Sleep(10);
                progressDialog.Dismiss();
            })).Start();



            //float percentComplete = (float)Math.Round((100 * winnedMoney) / spentMoney);


            //LinearLayout balanceLayout = (LinearLayout)view.FindViewById(Resource.Id.balanceLayout);
            //balanceLayout.AddView(new Rectangle(Activity, percentComplete, winnedMoney));



            var editToolbar = view.FindViewById <Toolbar>(Resource.Id.edit_toolbar);
            editToolbar.Title = "Editing";
            editToolbar.InflateMenu(Resource.Menu.edit_menus);


            if (model.StartsWith("frd", StringComparison.CurrentCultureIgnoreCase))
            {
                editToolbar.Menu.FindItem(Resource.Id.menu_preferences).SetVisible(true);
                //ApplicationState.ActiveProvider = BetProvider.Bet365;
            }
            else
            {
                editToolbar.Menu.FindItem(Resource.Id.menu_preferences).SetVisible(false);
            }



            editToolbar.MenuItemClick += (sender, e) =>
            {
                FragmentTransaction ft;
                switch (e.Item.ItemId)
                {
                case Resource.Id.menu_create:
                    var addBetFragment = new AddBetFragment()
                    {
                        Arguments = new Bundle()
                    };
                    //calculateBetFragment.Arguments.PutString("PID", teams[e.Position - 1].Id.ToString());
                    ft = this.Activity.FragmentManager.BeginTransaction();
                    ft.Replace(Resource.Id.frameLayout1, addBetFragment, "AddBet");
                    ft.Commit();
                    break;

                case Resource.Id.menu_edit:
                    var modBetFragment = new ModifyBetFragment()
                    {
                        Arguments = new Bundle()
                    };
                    //calculateBetFragment.Arguments.PutString("PID", teams[e.Position - 1].Id.ToString());
                    ft = this.Activity.FragmentManager.BeginTransaction();
                    ft.Replace(Resource.Id.frameLayout1, modBetFragment, "ModifyBet");
                    ft.Commit();
                    break;

                case Resource.Id.menu_close:
                    ft = FragmentManager.BeginTransaction();
                    //Remove fragment else it will crash as it is already added to backstack
                    Fragment prev = FragmentManager.FindFragmentByTag("closeBetDialog");
                    if (prev != null)
                    {
                        ft.Remove(prev);
                    }

                    ft.AddToBackStack(null);

                    // Create and show the dialog.
                    CloseBetDialogFragment newFragment = CloseBetDialogFragment.NewInstance(null);
                    //newFragment.Arguments.PutString("TEAMID",)

                    //Add fragment
                    newFragment.Show(ft, "closeBetDialog");
                    break;

                case Resource.Id.menu_preferences:
                    ft = FragmentManager.BeginTransaction();
                    Fragment p = FragmentManager.FindFragmentByTag("providerChoiceDialog");
                    if (p != null)
                    {
                        ft.Remove(p);
                    }
                    ft.AddToBackStack(null);
                    ProviderChoiceFragment pcFragment = ProviderChoiceFragment.NewInstance(null);
                    pcFragment.Show(ft, "providerChoiceDialog");
                    break;

                default:
                    break;
                }
            };
            return(view);
        }
Beispiel #4
0
        private void BetTeamsSpinner_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
        {
            //this.progressDialog = ProgressDialog.Show(Activity, "", "Loading bet", true);
            //progressDialog.SetProgressStyle(ProgressDialogStyle.Spinner);
            //progressDialog.Show();

            #region With Progress Dialog
            if (activeBetTeams.Count > 0)
            {
                this.betDetails = AWSDataAccess.GetBetDetailsByTeamId(
                    activeBetTeams[e.Position].Id);
                if (betDetails.Count > 0)
                {
                    lastBet.Text = AWSDataAccess.DoFormat(betDetails
                                                          [betDetails.Count - 1].Quantity);
                    //Activity.RunOnUiThread(() =>
                    //{
                    //});

                    betType.Text = activeBetTeams[e.Position].Bet;

                    //Activity.RunOnUiThread(() =>
                    //{

                    //});
                }
            }
            #endregion

            //new Thread(new ThreadStart(delegate
            //{

            //    if (activeBetTeams.Count > 0)
            //    {
            //        List<BetDetails> betDetails = AWSDataAccess.GetBetDetailsByTeamId(
            //            activeBetTeams[e.Position].Id);
            //        if (betDetails.Count > 0)
            //        {
            //            Activity.RunOnUiThread(() =>
            //            {
            //                lastBet.Text = AWSDataAccess.DoFormat(betDetails
            //                    [betDetails.Count - 1].Quantity);
            //            });

            //            Activity.RunOnUiThread(() =>
            //            {
            //                betType.Text = activeBetTeams[e.Position].Bet;
            //            });
            //        }
            //    }

            //    Thread.Sleep(10);
            //    progressDialog.Dismiss();


            //})).Start();

            //if (Interlocked.CompareExchange(ref running,1,0)==0)
            //{

            //}
        }