private void InsertAccount(SAccount sAccount)
 {
     if (accountListControler.VerifyExistingAccount(sAccount.Name))
     {
         MenuDefaults.Message("You already have an account " + sAccount.Name);
         AddAccount();
         return;
     }
     accountListControler.InsertAccount(personControler.GetId(), sAccount);
     ManageAccounts();
 }
Пример #2
0
        internal void InsertAccount(BsonObjectId idPerson, SAccount sAccount)
        {
            int idAccount = 0;

            if (!AccountsEmpty())
            {
                idAccount = Accounts.Max(t => t.AccountId);
            }
            idAccount++;
            Accounts.Add(new Account(idAccount, sAccount.Name));
            AccountDataBase.UpdateAccounts(Accounts, idPerson);
        }
Пример #3
0
        //public void DumpInteractions()
        //{
        //    string interactions_text = "";
        //    TableTopDataClassesDataContext db = Configurations.GetTableTopDB();
        //    var interactions = from u in db.Interaction_Logs
        //                       select u;
        //    foreach (Interaction_Log i in interactions)
        //        interactions_text = interactions_text + get_interaction_info(i) + "\r\n";
        //    StreamWriter writer_i = new StreamWriter("interactions.txt");
        //    writer_i.WriteLine(interactions_text);
        //    writer_i.Close();
        //    interactions_text = "";
        //}

        private string get_user_info(SAccount u)
        {
            string affiliation = "";

            if (u.affiliation != null)
            {
                affiliation = u.affiliation;
            }
            string r = u.id + "," + u.username + "," + u.name + "," +
                       u.consent + "," + u.password + "," + u.email + "," +
                       u.created_at + "," + u.modified_at + "," + u.icon_url + "," + affiliation;

            return(r);
        }
        internal static SAccount AddAccountScreen()
        {
            SAccount sAccount = new SAccount();

            MenuStructure.DrawScreen();
            MenuStructure.SetGoBackOption();
            MenuStructure.SetTitle("Add Account");
            MenuStructure.WriteNewLine("Fill the info above");
            MenuStructure.AddLine(1);
            string input = MenuStructure.ReadMany("Account Name: ", ETypeRead.String);

            if (input == MenuStructure.Back)
            {
                sAccount.OptionBack = true;
            }
            else
            {
                sAccount.Name = input;
            }
            return(sAccount);
        }
Пример #5
0
        public bool ProcessWebUserChanges()
        {
            DateTime           save_time = DateTime.UtcNow;
            List <SWebAccount> accounts  = null;

            accounts = server_api.GetWebAccountsCreatedSince(Configurations.last_change_server_webusers.Year.ToString(),
                                                             Configurations.last_change_server_webusers.Month.ToString(), Configurations.last_change_server_webusers.Day.ToString(),
                                                             Configurations.last_change_server_webusers.Hour.ToString(), Configurations.last_change_server_webusers.Minute.ToString());
            if (accounts == null)
            {
                return(false);
            }
            else
            {
                this.current_webaccounts = accounts;
            }
            TableTopDataClassesDataContext db = Configurations.GetTableTopDB();

            for (int counter = 0; counter < accounts.Count; counter++)
            {
                if (accounts[counter].username == "default")
                {
                    continue;
                }
                var ru = from u in db.WebUsers
                         where u.username == accounts[counter].username
                         select u;
                if (ru.Count() == 0)
                {
                    WebUser u_new = new WebUser();
                    u_new.username       = accounts[counter].username; u_new.password = accounts[counter].password;
                    u_new.email          = accounts[counter].email; u_new.fullname = accounts[counter].name;
                    u_new.technical_info = accounts[counter].consent;
                    u_new.affiliation    = accounts[counter].affiliation;
                    if (accounts[counter].icon_url.StartsWith("nn_"))
                    {
                        u_new.avatar = accounts[counter].icon_url;
                    }
                    else
                    {
                        u_new.avatar = Configurations.GetRandomAvatar();
                    }
                    try
                    {
                        SAccount related_account = server_api.GetAccount(accounts[counter].account_id);
                        string   uname           = "default";
                        if (related_account != null)
                        {
                            uname = related_account.username;
                        }

                        if (uname == "default")
                        {
                            u_new.user_id = 0;
                        }
                        else
                        {
                            var u = from u0 in db.Users
                                    where u0.name == uname
                                    select u0;
                            User related_user = u.Single <User>();
                            u_new.user_id = related_user.id;
                        }
                    }
                    catch (Exception ex) { Log.WriteErrorLog(ex); }
                    db.WebUsers.InsertOnSubmit(u_new);
                }
                else
                {
                    if (ru.Count() == 1)
                    {
                        WebUser u = ru.Single <WebUser>();
                        u.password = accounts[counter].password; u.affiliation = accounts[counter].affiliation;
                        if (accounts[counter].icon_url.StartsWith("nn_"))
                        {
                            u.avatar = accounts[counter].icon_url;
                        }
                        u.email          = accounts[counter].email;
                        u.technical_info = accounts[counter].consent;
                        try
                        {
                            SAccount related_account = server_api.GetAccount(accounts[counter].account_id);
                            string   uname           = related_account.username;
                            if (uname == "default")
                            {
                                u.user_id = 0;
                            }
                            else
                            {
                                var u1 = from u0 in db.Users
                                         where u0.name == uname
                                         select u0;
                                User related_user = u1.Single <User>();
                                u.user_id = related_user.id;
                            }
                        }
                        catch (Exception ex) { Log.WriteErrorLog(ex); }
                        db.SubmitChanges();
                    }
                }
            }
            if (accounts.Count == 0)
            {
                return(true);
            }
            if (SubmitChangesToLocalDB(db))
            {
                Configurations.last_change_server_webusers = save_time;
                Configurations.SaveSettings();
                return(true);
            }
            return(false);
        }