Esempio n. 1
0
        public static void Initialize()
        {
            _futClients = new List <FUTClient>();
            var futAccounts = FUTAccountsDatabase.GetFUTAccounts();

            foreach (var account in futAccounts)
            {
                var futClient = new FUTClient(account);
                _futClients.Add(futClient);
            }
        }
Esempio n. 2
0
        public Index()
        {
            this.RequiresAuthentication();
            Get("/", args =>
            {
                var mod = new IndexModel();
                #region Coins & Accounts
                var coinsPerAccount = 0;
                var accounts        = FUTAccountsDatabase.GetFUTAccounts();
                var coins           = FUTLogsDatabase.GetFUTCoins();

                var totalCoins = accounts.Select(acc => coins.FirstOrDefault(x => x.EMail.ToLower() == acc.EMail.ToLower())).Where(coinsFromAcc => coinsFromAcc != null).Sum(coinsFromAcc => coinsFromAcc.Coins);
                if (totalCoins > 0 && accounts.Count > 0)
                {
                    coinsPerAccount = totalCoins / accounts.Count;
                }

                mod.TotalCoins         = totalCoins;
                mod.AvgCoinsPerAccount = coinsPerAccount;
                mod.TotalAccounts      = accounts.Count;


                var allTpItems = Fifa.Managers.BotManager.GetTradepileItems();
                var tpValue    = (int)(allTpItems.Sum(x => x.buyNowPrice) * 0.95);

                mod.TotalOverallValue   = tpValue + totalCoins;
                mod.TotalTradepileValue = tpValue;
                mod.TotalTradepileItems = allTpItems.Count;
                #endregion

                #region Logs
                mod.TotalBuys  = FUTLogsDatabase.GetFUTBuysCount();
                mod.TotalSells = FUTLogsDatabase.GetFUTSellsCount();
                mod.TotalLogs  = mod.TotalBuys + mod.TotalSells;
                #endregion

                if (!string.IsNullOrEmpty(HttpUtility.ParseQueryString(Request.Url.Query).Get("forbidden")))
                {
                    mod.DisplayError = true;
                    mod.ErrorMessage = "You do not have permissions to view this page!";
                }

                return(View["Index", mod]);
            });
        }
Esempio n. 3
0
        public ExportData()
        {
            this.RequiresAuthentication();

            Get("/export/accounts", args =>
            {
                var exportText = "";
                var accs       = FUTAccountsDatabase.GetFUTAccounts();

                foreach (var futAccount in accs)
                {
                    exportText +=
                        $"{futAccount.EMail};{futAccount.Password};{futAccount.SecurityAnswer};{futAccount.GoogleAuthCode};{futAccount.EMailPassword}{Environment.NewLine}";
                }

                return(Response.AsText(exportText));
            });

            Get("/export/proxies", args =>
            {
                using (var ctx = new FUTSettingsDatabase())
                {
                    var proxys     = ctx.FUTProxys.ToList();
                    var exportText = "";
                    foreach (var proxy in proxys)
                    {
                        exportText +=
                            $"{proxy.Host}:{proxy.Port}:{proxy.Username}:{proxy.Password}{Environment.NewLine}";
                    }

                    return(Response.AsText(exportText));
                }
            });

            Get("/export/actionscheduler", args =>
            {
                return(Response.AsText(FUTSettings.Instance.ActionSchedulerJson));
            });
        }
Esempio n. 4
0
        public AccountManager()
        {
            this.RequiresAuthentication();
            Get("/accountmanager", args =>
            {
                var mod = new AccountManagerModel();

                var accounts = FUTAccountsDatabase.GetFUTAccounts();
                mod.Accounts = accounts;
                return(View["AccountManager", mod]);
            });

            Post("/accountmanager", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                body           = HttpUtility.UrlDecode(body);
                var parameters = HttpUtility.ParseQueryString(body);

                var accounts = parameters["accounts"].Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.None);
                foreach (var accString in accounts)
                {
                    if (accString.Split(';').Count() < 5)
                    {
                        continue;
                    }
                    var email          = accString.Split(';')[0];
                    var password       = accString.Split(';')[1];
                    var securityAnswer = accString.Split(';')[2];
                    var appAuth        = accString.Split(';')[3];
                    var emailPassword  = accString.Split(';')[4];
                    if (FUTAccountsDatabase.GetFUTAccountByEMail(email) == null)
                    {
                        var futAccount            = new FUTAccount();
                        futAccount.EMail          = email;
                        futAccount.Password       = password;
                        futAccount.SecurityAnswer = securityAnswer;
                        futAccount.GoogleAuthCode = appAuth;
                        futAccount.EMailPassword  = emailPassword;
                        futAccount.FUTPlatform    = new FUTPlatform();
                        FUTAccountsDatabase.AddFUTAccount(futAccount);
                        Fifa.Managers.BotManager.AddBot(email);
                    }
                }
                return(Response.AsRedirect("/accountmanager"));
            });

            Post("/deleteaccountarray", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                body           = HttpUtility.UrlDecode(body);
                var parameters = HttpUtility.ParseQueryString(body);

                var accounts = parameters["account"].Split(',');

                foreach (var acc in accounts)
                {
                    FUTAccountsDatabase.RemoveFUTAccountByEMail(acc);
                    Fifa.Managers.BotManager.RemoveBot(acc);
                }
                return("true");
            });

            Post("/deleteaccount", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                body           = HttpUtility.UrlDecode(body);
                var parameters = HttpUtility.ParseQueryString(body);
                var acc        = parameters["account"];

                FUTAccountsDatabase.RemoveFUTAccountByEMail(acc);
                Fifa.Managers.BotManager.RemoveBot(acc);
                return("true");
            });
        }
Esempio n. 5
0
        public ProxyManager()
        {
            this.RequiresAuthentication();
            Get("/proxymanager", args =>
            {
                var mod = new ProxyManagerModel();

                var proxies = new List <FUTProxy>();
                using (var ctx = new FUTSettingsDatabase())
                {
                    proxies = ctx.FUTProxys.ToList();
                }
                mod.Proxies = proxies;
                return(View["ProxyManager", mod]);
            });

            Post("/proxymanager", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                body           = HttpUtility.UrlDecode(body);
                var parameters = HttpUtility.ParseQueryString(body);

                var proxies = parameters["proxies"].Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.None);

                foreach (var proxyString in proxies)
                {
                    if (proxyString.Split(':').Count() < 4)
                    {
                        continue;
                    }
                    var host          = proxyString.Split(':')[0];
                    var port          = int.Parse(proxyString.Split(':')[1]);
                    var username      = proxyString.Split(':')[2];
                    var password      = proxyString.Split(':')[3];
                    var futProxy      = new FUTProxy();
                    futProxy.Host     = host;
                    futProxy.Port     = port;
                    futProxy.Username = username;
                    futProxy.Password = password;
                    using (var ctx = new FUTSettingsDatabase())
                    {
                        ctx.FUTProxys.Add(futProxy);
                        ctx.SaveChanges();
                    }
                    Fifa.Managers.ProxyManager.AddFUTProxy(futProxy);
                }
                return(Response.AsRedirect("/proxymanager"));
            });

            Post("/deleteproxyarray", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                body           = HttpUtility.UrlDecode(body);
                var parameters = HttpUtility.ParseQueryString(body);

                var proxies = parameters["proxy"].Split(',');

                foreach (var p in proxies)
                {
                    FUTProxy proxy = null;
                    var id         = int.Parse(p);
                    using (var ctx = new FUTSettingsDatabase())
                    {
                        proxy = ctx.FUTProxys.FirstOrDefault(x => x.ID == id);
                        if (proxy != null)
                        {
                            var accounts = FUTAccountsDatabase.GetFUTAccounts()
                                           .Where(x => x.FUTProxyID == proxy.ID).ToList();
                            foreach (var futAccount in accounts)
                            {
                                futAccount.FUTProxyID = -1;
                                futAccount.SaveChanges();
                            }
                            ctx.FUTProxys.Remove(proxy);
                            ctx.SaveChanges();
                        }
                    }
                    Fifa.Managers.ProxyManager.RemoveFUTProxy(proxy);
                }
                return("true");
            });

            Post("/deleteproxy", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                body           = HttpUtility.UrlDecode(body);
                var parameters = HttpUtility.ParseQueryString(body);
                var id         = int.Parse(parameters["proxy"]);
                FUTProxy proxy = null;
                using (var ctx = new FUTSettingsDatabase())
                {
                    proxy = ctx.FUTProxys.FirstOrDefault(x => x.ID == id);
                    if (proxy != null)
                    {
                        var accounts = FUTAccountsDatabase.GetFUTAccounts()
                                       .Where(x => x.FUTProxyID == proxy.ID).ToList();
                        foreach (var futAccount in accounts)
                        {
                            futAccount.FUTProxyID = -1;
                            futAccount.SaveChanges();
                        }
                        ctx.FUTProxys.Remove(proxy);
                        ctx.SaveChanges();
                    }
                }
                Fifa.Managers.ProxyManager.RemoveFUTProxy(proxy);
                return("true");
            });

            Post("/allocateproxies", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                body           = HttpUtility.UrlDecode(body);
                var parameters = HttpUtility.ParseQueryString(body);
                var action     = parameters["action"];
                if (action == "allocate")
                {
                    Fifa.Managers.BotManager.AllocateProxies();
                }
                else
                {
                    Fifa.Managers.BotManager.DeallocateProxies();
                    Fifa.Managers.ProxyManager.ResetProxyCounter();
                }
                return("true");
            });
        }