Ejemplo n.º 1
0
 public void SetUserInfoEx(UserInfoEx info)
 {
     bigAvatarPanel.BackgroundImage   = info.AvatarBig;
     smallAvatarPanel.BackgroundImage = info.AvatarSmall;
     aboutRichTextBox.Text            = info.About;
     ContactListUtils.UnpackContacts(info.Contacts, contactsListView);
 }
Ejemplo n.º 2
0
        private void LoadData()
        {
            // загрузить данные о пользователе и счете
            editedAccount = AccountStatus.Instance.AccountData;
            if (editedAccount == null)
            {
                return;
            }
            // валюта...
            var indexCurx = cbCurrency.Items.IndexOf(editedAccount.Currency);

            if (indexCurx < 0)
            {
                indexCurx = cbCurrency.Items.Add(editedAccount.Currency);
            }
            cbCurrency.SelectedIndex = indexCurx;
            // баланс...
            cbDepoSize.Text = editedAccount.Equity.ToStringUniformMoneyFormat(false);
            // макс плечо...
            tbMaxLeverage.Text = editedAccount.MaxLeverage.ToStringUniform();

            // получить данные о пользователе...
            var login = AccountStatus.Instance.Login;

            if (string.IsNullOrEmpty(login))
            {
                return;
            }

            var password = UserSettings.Instance.GetPasswordForLogin(login);

            oldPassword = password;
            var passwordPrompt = Localizer.GetString("MessageEnterOldPassword");

            while (true)
            {
                if (string.IsNullOrEmpty(password))
                {
                    DialogResult rst;
                    password = Dialogs.ShowInputDialog(passwordPrompt, "", true, out rst);
                    if (rst == DialogResult.Cancel)
                    {
                        return;
                    }
                    oldPassword = password;
                }

                var resp = MainForm.serverProxyTrade.proxy.GetUserDetail(login, password, out editedUser);
                if (resp == AuthenticationResponse.AccountInactive ||
                    resp == AuthenticationResponse.InvalidAccount ||
                    resp == AuthenticationResponse.ServerError)
                {
                    MessageBox.Show(EnumFriendlyName <AuthenticationResponse> .GetString(resp));
                    return;
                }

                if (resp == AuthenticationResponse.WrongPassword)
                {
                    password       = string.Empty;
                    passwordPrompt = Localizer.GetString("MessageWrongPwrdEnterAgain");
                    continue;
                }
                if (editedUser != null)
                {
                    break;
                }
            }

            // показать данные пользователя
            tbEmail.Text       = editedUser.Email;
            tbLogin.Text       = editedUser.Login;
            tbPatronym.Text    = editedUser.Patronym;
            tbName.Text        = editedUser.Name;
            tbSurname.Text     = editedUser.Surname;
            tbPhone1.Text      = editedUser.Phone1;
            tbPhone2.Text      = editedUser.Phone2;
            tbDescription.Text = editedUser.Description;
            tbPassword.Text    = editedUser.Password;
            ShowSignallerOptions(editedUser);

            // получить дополнительные данные о пользователе
            try
            {
                var userInfoExSource =
                    new UserInfoExCache(TradeSharpAccountStatistics.Instance.proxy, TerminalEnvironment.FileCacheFolder);
                var info = userInfoExSource.GetUserInfo(editedUser.ID);
                if (info != null)
                {
                    bigAvatarPanel.BackgroundImage   = info.AvatarBig;
                    smallAvatarPanel.BackgroundImage = info.AvatarSmall;
                    aboutRichTextBox.Text            = info.About;
                    ContactListUtils.UnpackContacts(info.Contacts, contactsListView);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(Localizer.GetString("TitleServerError"),
                                Localizer.GetString("TitleError"), MessageBoxButtons.OK, MessageBoxIcon.Error);
                Logger.Info("Ошбика при чтении дополнительной информации о пользователе", ex);
            }
        }