コード例 #1
0
        /// <summary>
        /// check if all data are correct and get user
        /// </summary>
        /// <returns></returns>
        public User GetUser()
        {
            if (!WasTCVerify)
            {
                throw new InvalidOperationException("Time Cockpit verifying was not successful");
            }
            if (!WasGLogin)
            {
                throw new InvalidOperationException("Google Login was not successful");
            }
            if (!WaSSetSetting)
            {
                throw new InvalidOperationException("Setting was not filled");
            }

            //Check if new user with same Timecockpit credentials was added meanwhile set setting
            if (DataDatabase.ExistsUser(NewUser.Username))
            {
                throw new InvalidOperationException("There is the same username in database! Time Cockpit username is unique parameter and therefore it cannot be use more than once.");
            }

            NewUser.GoogleEmail = GUtil.GetEmail(NewUser);
            Synchronization.SyncNow();

            return(NewUser);
        }
コード例 #2
0
        public MainPageViewModel()
        {
            DataList = new List <Data>();
            database = new DataDatabase(DependencyService.Get <IPathHelper>().GetLocalPath("db_xam_forms"));

            AddDataToList();
        }
コード例 #3
0
        public MainActivityViewModel()
        {
            database = new DataDatabase(PathHelper.GetLocalPath("db_xam_platform"));
            DataList = new List <Data>();

            AddDataToList();
        }
コード例 #4
0
ファイル: UserEditor.cs プロジェクト: kostejnv/TCGSync
        /// <summary>
        /// Change user in DataDatabase.userDatabase (multithreading)
        /// </summary>
        public void ChangeUserInDatabse()
        {
            if (!WaSSetSetting)
            {
                throw new InvalidOperationException("Setting was not filled");
            }

            lock (DataDatabase.userDatabase)
            {
                //if new google account do sync again
                if (WasGLogin)
                {
                    ChangingUser.EventsAccordingToGoogleId = new Dictionary <string, Event>();
                    ChangingUser.EventsAccordingToTCId     = new Dictionary <string, Event>();
                    ChangingUser.Events = new List <Event>();
                }
                else
                {
                    ChangingUser.EventsAccordingToGoogleId = OldUser.EventsAccordingToGoogleId;
                    ChangingUser.EventsAccordingToTCId     = OldUser.EventsAccordingToTCId;
                    ChangingUser.Events = OldUser.Events;
                }
                ChangeGoogleToken();
                DataDatabase.userDatabase.Remove(OldUser);
                ChangingUser.GoogleEmail = GetGoogleEmail();
                DataDatabase.AddUserToUserDatabase(ChangingUser);
            }

            if (WasGLogin)
            {
                Synchronization.SyncNow();
            }
        }
コード例 #5
0
 private void CreateNewUserButton_Click(object sender, EventArgs e)
 {
     userCreator.SetSetting((int)StartDomain.Value, !EndSpecifiedCheckBox.Checked, (int)EndDomain.Value);
     try
     {
         DataDatabase.AddUserToUserDatabase(userCreator.GetUser());
         KillGLoginThreads();
         this.Dispose();
     }
     catch (InvalidOperationException ex)
     {
         MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK);
     }
 }
コード例 #6
0
ファイル: UserDeleter.cs プロジェクト: kostejnv/TCGSync
        /// <summary>
        /// Delete user and google token from database
        /// </summary>
        public void DeleteUser()
        {
            DialogResult result = MessageBox.Show(
                string.Format("Do you want to really delete user {0}?", user.ToString()),
                "Delete User",
                MessageBoxButtons.YesNo);

            if (result == DialogResult.Yes)
            {
                lock (DataDatabase.userDatabase)
                {
                    TCCredentialsManager.Delete(user.Username);
                    DataDatabase.userDatabase.Remove(user);
                    GUtil.RemoveGoogleToken(user);
                    DataDatabase.RefreshListBox();
                    DataDatabase.SaveChanges();
                }
            }
        }
コード例 #7
0
 /// <summary>
 /// return true if Time Cockpit credentials are correct
 /// </summary>
 /// <param name="username"></param>
 /// <param name="password"></param>
 /// <returns></returns>
 public bool TCVerify(string username, string password)
 {
     // Check if there is a user with same username in database
     if (DataDatabase.ExistsUser(username))
     {
         MessageBox.Show
             ("There is the same username in database! Time Cockpit username is unique parameter and therefore it cannot be use more than once.",
             "Login failed",
             MessageBoxButtons.OK);
         return(false);
     }
     if (TCUtils.VerifyAccount(username, password))
     {
         TCCredentialsManager.Save(username, password);
         NewUser.Username = username;
         NewUser.Fullname = TCUtils.GetFullname(NewUser);
         WasTCVerify      = true;
         return(true);
     }
     return(false);
 }