Ejemplo n.º 1
0
        public async void Delete()
        {
            Commands cmd = new Backend.Commands();

            if (TMessageBox.Show("Are you sure you want to delete this account?", "Confirm", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
            {
                while (true)
                {
                    var res = cmd.AmISync();
                    if (res == SyncronizingStateEnum.Synced)
                    {
                        break;
                    }
                    else
                    {
                        HIOStaticValues.SyncOpration();
                    }
                }

                await UIService.Execute(async() =>
                {
                    Commands ic = new Commands();
                    ic.Delete(UserID);
                    await Parent.LoadData();
                });

                Parent?.OnPropertyChanged(nameof(TAccountManagerViewModel.IsAllChecked));
            }
        }
Ejemplo n.º 2
0
        private void Apply()
        {
            if (OldPassword.IsNullOrEmpty())
            {
                TMessageBox.Show("Old password is required !");
                return;
            }

            if (Password.IsNullOrEmpty())
            {
                TMessageBox.Show("Password is required !");
                return;
            }
            if (ReEnterPassword.IsNullOrEmpty())
            {
                TMessageBox.Show("Re-Enter Password is required !");
                return;
            }
            if (Password != ReEnterPassword)
            {
                TMessageBox.Show("Password re-entered incorrectly!");
                return;
            }

            Parent.SaveApplicationPassword(Password);
            //TODO: Save Application Password
            //TMessageBox.Show("Password saved successfully.");


            _Form.Close();
        }
        public void Import()
        {
            if (!HIOStaticValues.CONNECTIONBHIO)
            {
                TMessageBox.Show("HIO is not connect!");
                return;
            }
            if (HIOStaticValues.CheckSyncingData())
            {
                return;
            }
            TImport importPage = new TImport(null, 0, this);

            importPage.Show();
        }
        private async void Delete()
        {
            if (HIOStaticValues.CheckSyncingData())
            {
                return;
            }

            if (TMessageBox.Show("Are you sure you want to delete these accounts?", "Confirm", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
            {
                Commands cmd = new Backend.Commands();
                while (true)
                {
                    var res = cmd.AmISync();
                    if (res == SyncronizingStateEnum.Synced)
                    {
                        break;
                    }
                    else
                    {
                        HIOStaticValues.SyncOpration();
                    }
                }


                await UIService.Execute(async() =>
                {
                    DataBase db = new DataBase();
                    foreach (var item in SourceItems.Where(t => t.IsChecked).ToArray())
                    {
                        Commands ic = new Commands();
                        if (ic.Delete(item.UserID))
                        {
                            App.Current.Dispatcher.BeginInvoke((Action)(() =>
                            {
                                SourceItems.Remove(SourceItems.FirstOrDefault(i => i.UserID == item.UserID));
                                OnPropertyChanged(nameof(Items));
                            }));
                        }
                    }
                    await LoadData();
                });

                OnPropertyChanged(nameof(IsAllChecked));
            }
        }
Ejemplo n.º 5
0
 public void Read (TProtocol iprot)
 {
   TField field;
   iprot.ReadStructBegin();
   while (true)
   {
     field = iprot.ReadFieldBegin();
     if (field.Type == TType.Stop) { 
       break;
     }
     switch (field.ID)
     {
       case 0:
         if (field.Type == TType.List) {
           {
             Success = new List<TMessageBox>();
             TList _list290 = iprot.ReadListBegin();
             for( int _i291 = 0; _i291 < _list290.Count; ++_i291)
             {
               TMessageBox _elem292 = new TMessageBox();
               _elem292 = new TMessageBox();
               _elem292.Read(iprot);
               Success.Add(_elem292);
             }
             iprot.ReadListEnd();
           }
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 1:
         if (field.Type == TType.Struct) {
           E = new TalkException();
           E.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       default: 
         TProtocolUtil.Skip(iprot, field.Type);
         break;
     }
     iprot.ReadFieldEnd();
   }
   iprot.ReadStructEnd();
 }
Ejemplo n.º 6
0
 public void Read (TProtocol iprot)
 {
   TField field;
   iprot.ReadStructBegin();
   while (true)
   {
     field = iprot.ReadFieldBegin();
     if (field.Type == TType.Stop) { 
       break;
     }
     switch (field.ID)
     {
       case 0:
         if (field.Type == TType.Struct) {
           Success = new TMessageBox();
           Success.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 1:
         if (field.Type == TType.Struct) {
           E = new TalkException();
           E.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       default: 
         TProtocolUtil.Skip(iprot, field.Type);
         break;
     }
     iprot.ReadFieldEnd();
   }
   iprot.ReadStructEnd();
 }
Ejemplo n.º 7
0
    public void Read(TProtocol iprot)
    {
        iprot.IncrementRecursionDepth();
        try
        {
            TField field;
            iprot.ReadStructBegin();
            while (true)
            {
                field = iprot.ReadFieldBegin();
                if (field.Type == TType.Stop)
                {
                    break;
                }
                switch (field.ID)
                {
                case 1:
                    if (field.Type == TType.Struct)
                    {
                        MessageBox = new TMessageBox();
                        MessageBox.Read(iprot);
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 2:
                    if (field.Type == TType.String)
                    {
                        Name = iprot.ReadString();
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 3:
                    if (field.Type == TType.List)
                    {
                        {
                            Contacts = new List <Contact>();
                            TList _list259 = iprot.ReadListBegin();
                            for (int _i260 = 0; _i260 < _list259.Count; ++_i260)
                            {
                                Contact _elem261;
                                _elem261 = new Contact();
                                _elem261.Read(iprot);
                                Contacts.Add(_elem261);
                            }
                            iprot.ReadListEnd();
                        }
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 4:
                    if (field.Type == TType.String)
                    {
                        PictureRevision = iprot.ReadString();
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                default:
                    TProtocolUtil.Skip(iprot, field.Type);
                    break;
                }
                iprot.ReadFieldEnd();
            }
            iprot.ReadStructEnd();
        }
        finally
        {
            iprot.DecrementRecursionDepth();
        }
    }
Ejemplo n.º 8
0
 public void Read (TProtocol iprot)
 {
   TField field;
   iprot.ReadStructBegin();
   while (true)
   {
     field = iprot.ReadFieldBegin();
     if (field.Type == TType.Stop) { 
       break;
     }
     switch (field.ID)
     {
       case 1:
         if (field.Type == TType.Struct) {
           MessageBox = new TMessageBox();
           MessageBox.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 2:
         if (field.Type == TType.String) {
           Name = iprot.ReadString();
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 3:
         if (field.Type == TType.List) {
           {
             Contacts = new List<Contact>();
             TList _list73 = iprot.ReadListBegin();
             for( int _i74 = 0; _i74 < _list73.Count; ++_i74)
             {
               Contact _elem75 = new Contact();
               _elem75 = new Contact();
               _elem75.Read(iprot);
               Contacts.Add(_elem75);
             }
             iprot.ReadListEnd();
           }
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 4:
         if (field.Type == TType.String) {
           PictureRevision = iprot.ReadString();
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       default: 
         TProtocolUtil.Skip(iprot, field.Type);
         break;
     }
     iprot.ReadFieldEnd();
   }
   iprot.ReadStructEnd();
 }
Ejemplo n.º 9
0
    public async Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken)
    {
        iprot.IncrementRecursionDepth();
        try
        {
            TField field;
            await iprot.ReadStructBeginAsync(cancellationToken);

            while (true)
            {
                field = await iprot.ReadFieldBeginAsync(cancellationToken);

                if (field.Type == TType.Stop)
                {
                    break;
                }

                switch (field.ID)
                {
                case 1:
                    if (field.Type == TType.Struct)
                    {
                        MessageBox = new TMessageBox();
                        await MessageBox.ReadAsync(iprot, cancellationToken);
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                case 2:
                    if (field.Type == TType.String)
                    {
                        Name = await iprot.ReadStringAsync(cancellationToken);
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                case 3:
                    if (field.Type == TType.List)
                    {
                        {
                            Contacts = new List <Contact>();
                            TList _list259 = await iprot.ReadListBeginAsync(cancellationToken);

                            for (int _i260 = 0; _i260 < _list259.Count; ++_i260)
                            {
                                Contact _elem261;
                                _elem261 = new Contact();
                                await _elem261.ReadAsync(iprot, cancellationToken);

                                Contacts.Add(_elem261);
                            }
                            await iprot.ReadListEndAsync(cancellationToken);
                        }
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                case 4:
                    if (field.Type == TType.String)
                    {
                        PictureRevision = await iprot.ReadStringAsync(cancellationToken);
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                default:
                    await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);

                    break;
                }

                await iprot.ReadFieldEndAsync(cancellationToken);
            }

            await iprot.ReadStructEndAsync(cancellationToken);
        }
        finally
        {
            iprot.DecrementRecursionDepth();
        }
    }
Ejemplo n.º 10
0
 private void Current_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e)
 {
     TMessageBox.Show(e.Exception.Message);
     e.Handled = true;
 }
Ejemplo n.º 11
0
        private async void StartImportingAsync()
        {
            if (HIOStaticValues.CheckSyncingData())
            {
                return;
            }

            List <LoginFieldS> listUser = new List <LoginFieldS>();

            try
            {
                if (HIOStaticValues.CONNECTIONBHIO == true)
                {
                    Commands cmd          = new Backend.Commands();
                    int      userImported = 0;
                    DataBase dbLocal      = new DataBase();
LabelImport:
                    if (cmd.AmISync() == SyncronizingStateEnum.Synced)
                    {
                        IsImporting = true;

                        await Task.Run(() =>
                        {
                            Backup bk       = new Backup();
                            Chrome chrome   = new Chrome();
                            Firefox firefox = new Firefox();
                            Edge edge       = new Edge();
                            double progress = ImportProgressPercent;
                            //  var itemList = Items.Where(t => t.IsChecked);

                            foreach (var item in Items.Where(t => t.IsChecked))
                            {
                                if (item.Title == "Load Backup")
                                {
                                    listUser.AddRange(bk.LoadBackup());
                                }
                                if (item.Title == "Google Chrome")
                                {
                                    listUser.AddRange(chrome.getDataFromChrome());
                                }
                                if (item.Title == "Mozilla Firefox")
                                {
                                    listUser.AddRange(firefox.FetchPassword());
                                }
                                if (item.Title == "Edge")
                                {
                                    listUser.AddRange(edge.ReadPasswords());
                                }
                            }
                            listUser = listUser.Distinct(new loginFieldsCompare()).ToList();
                            int rows = listUser.Count;
                            // ImportVisible = true;

                            try
                            {
                                HIOStaticValues.IMPORT_ON = true;
                                if (rows == 0)
                                {
                                    MessageErr = "No account exist in your browsers";
                                    return;
                                }
                                for (int i = 0; i < rows; i++)
                                {
                                    ImportProgressPercent = (progress == 0) ? (i * 100) / (rows) : progress + ((i * 100) / (rows)) / 2;
                                    int res = HIOStaticValues.BaS.InsertToSwitch(new LoginFieldS {
                                        password = listUser[i].password, userName = listUser[i].userName, title = listUser[i].title, url = listUser[i].url
                                    });

                                    if (res <= 0)
                                    {
                                        if (res == -2)
                                        {
                                            throw new Exception($"Time out.\n {i}  accounts are imported successfully from {rows} accounts");
                                        }
                                        if (res == -3)
                                        {
                                            throw new Exception($"No space is available.\n {userImported} accounts are imported successfully");
                                        }

                                        break;
                                    }
                                    userImported++;
                                    dbLocal.insertToDatabase(res.ToString(), listUser[i].url, (string)listUser[i].userName, "", listUser[i].title);
                                }
                            }
                            catch (SQLiteException ex) when(ex.ErrorCode == 5)
                            {
                                MessageErr = $"HIO needs to close all browsers!{Environment.NewLine}Please save or close your Tabs if your are using any browsers.";
                                return;
                            }
                            catch (Exception ex)
                            {
                                MessageErr = ex.Message;
                                return;
                            }

                            HIOStaticValues.IMPORT_ON = false;
                            System.Windows.Application.Current.Dispatcher.Invoke(new Action(() =>
                            {
                                IsImporting           = false;
                                ImportVisible         = false;
                                ImportProgressPercent = 0;
                                IsComplete            = true;
                                //  if (db_way2 != "")
                                //    System.IO.File.Delete(db_way2);
                            }));
                        });



                        if (Items.Any(t => t.IsChecked))
                        {
                            MoveNextPage();
                        }
                    }
                    else
                    {
                        HIOStaticValues.popUp("You are not sync!\nPlease wait,We are syncing data...");
                        IsImporting = true;
                        DispatcherTimer dt = new DispatcherTimer();
                        dt.Interval = TimeSpan.FromSeconds(1);
                        dt.Tick    += Dt_Tick;
                        dt.Start();
                        int res = await Task.Run(() =>
                        {
                            DataBase db       = new DataBase();
                            Commands resetCmd = new Backend.Commands();
                            resetCmd.ResetSync();
                            return(resetCmd.Sync());
                        });

                        dt.Stop();

                        if (res == 1)
                        {
                            goto LabelImport;
                        }
                    }
                }
                else
                {
                    TMessageBox.Show("HIO is not connect!");
                }
            }
            finally
            {
                IsImporting = false;

                HIOStaticValues.IMPORT_ON = false;
            }
        }