コード例 #1
0
        public LoginForm()
        {
            InitializeComponent();

            Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(AppSettings.Culture);

            btnLogin.Click += new RoutedEventHandler(btnLogin_Click);

            ThisUser = null;

            cboUsers.Items.Clear();

            List <JMMUser> users = VM_ShokoServer.Instance.ShokoServices.GetAllUsers();

            foreach (JMMUser user in users)
            {
                cboUsers.Items.Add(user);
            }

            if (cboUsers.Items.Count > 0)
            {
                cboUsers.SelectedIndex = 0;
            }

            txtPassword.PasswordChanged += new RoutedEventHandler(txtPassword_PasswordChanged);
            Loaded += new RoutedEventHandler(LoginForm_Loaded);
        }
コード例 #2
0
        private void CommandBinding_DeleteUser(object sender, ExecutedRoutedEventArgs e)
        {
            object obj = e.Parameter;

            if (obj == null)
            {
                return;
            }

            try
            {
                if (obj.GetType() == typeof(VM_JMMUser))
                {
                    VM_JMMUser user = (VM_JMMUser)obj;

                    MessageBoxResult res = MessageBox.Show(string.Format(Shoko.Commons.Properties.Resources.User_Delete, user.Username),
                                                           "Confirm", MessageBoxButton.YesNo, MessageBoxImage.Question);
                    if (res == MessageBoxResult.Yes)
                    {
                        if (user.JMMUserID != 0)
                        {
                            if (user.JMMUserID == VM_ShokoServer.Instance.CurrentUser.JMMUserID)
                            {
                                MessageBox.Show(Shoko.Commons.Properties.Resources.User_DeleteError, Shoko.Commons.Properties.Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
                                return;
                            }
                        }

                        Cursor = Cursors.Wait;
                        string ret = VM_ShokoServer.Instance.ShokoServices.DeleteUser(user.JMMUserID);
                        Cursor = Cursors.Arrow;
                        if (ret.Length > 0)
                        {
                            MessageBox.Show(ret, Shoko.Commons.Properties.Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
                        }

                        VM_ShokoServer.Instance.RefreshAllUsers();

                        if (lbUsers.Items.Count > 0)
                        {
                            lbUsers.SelectedIndex = 0;
                            lbUsers.Focus();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
        }
コード例 #3
0
        void btnLogin_Click(object sender, RoutedEventArgs e)
        {
            ThisUser = null;

            VM_JMMUser user = cboUsers.SelectedItem as VM_JMMUser;

            if (user != null)
            {
                JMMUser retUser = VM_ShokoServer.Instance.ShokoServices.AuthenticateUser(user.Username, txtPassword.Password.Trim());
                if (retUser != null)
                {
                    ThisUser     = user;
                    DialogResult = true;
                    VM_ShokoServer.Instance.RefreshImportFolders();
                    Close();
                }
                else
                {
                    txtPassword.Focus();
                    txtStatus.Text = Shoko.Commons.Properties.Resources.Login_IncorrectPassword;
                }
            }
        }
コード例 #4
0
 void btnNewUser_Click(object sender, RoutedEventArgs e)
 {
     SelectedUser = new VM_JMMUser();
     DisplayUser();
 }
コード例 #5
0
 public void Init(VM_JMMUser jmmUser)
 {
     JMMUser          = jmmUser;
     txtUsername.Text = JMMUser.Username;
 }