Beispiel #1
0
 public static void ChangePassword()
 {
     if (TryLogOn())
     {
         FormChangePassword form   = new FormChangePassword();
         DialogResult       result = form.ShowDialog();
         if (result == DialogResult.OK)
         {
             OfficeApplicationProxy.changePassword(form.NewPassword);
             userInfo.ChangePassword(form.NewPassword);
         }
     }
 }
Beispiel #2
0
        internal static bool TryLogOn()
        {
            bool tryLogOn = false;

            if (userInfo == null || webAddress == null)
            {
                LogOn();
                if (userInfo == null || webAddress == null)
                {
                    LogOff();
                    tryLogOn = false;
                }
                else
                {
                    MenuListener.LogOn();
                    tryLogOn = true;
                }
            }
            else
            {
                tryLogOn = true;
            }
            if (tryLogOn)
            {
                try
                {
                    OfficeApplicationProxy.isValidVersion(m_version);
                    if (MenuListener != null)
                    {
                        MenuListener.LogOn();
                    }
                    URIConfigurationList uRIConfigurationList = new URIConfigurationList();
                    String uri = OfficeApplicationProxy.WebAddress.ToString();
                    if (uri.EndsWith("gtw"))
                    {
                        uri = uri.Substring(0, uri.Length - 3);
                    }
                    uRIConfigurationList.Add(OfficeApplicationProxy.Credentials.UserName, new Uri(uri));
                    MenuListener.LogOn();
                }
                catch (HttpException e)
                {
                    MenuListener.LogOff();
                    tryLogOn = false;
                    if (e.Code == HttpStatusCode.NotFound)
                    {
                        RtlAwareMessageBox.Show(null, "No se puede conectar a la dirección web, o la dirección es incorrecta o no se tiene habilitada la publicación de contenidos", "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (e.Code == HttpStatusCode.Forbidden)
                    {
                        RtlAwareMessageBox.Show(null, "Su clave o contraseña es incorrecta", "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        RtlAwareMessageBox.Show(null, e.Message, "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                    }
                    OfficeApplication.LogOff();
                }
                catch (WebException e)
                {
                    MenuListener.LogOff();
                    tryLogOn = false;
                    if (e.Status == WebExceptionStatus.ConnectFailure)
                    {
                        RtlAwareMessageBox.Show(null, "El sitio web con el que intenta trabajar, se encuentra apagado o no se puede acceder al mismo.", "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        RtlAwareMessageBox.Show(null, e.Message, "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    OfficeApplication.LogOff();
                }
                catch (Exception e)
                {
                    OfficeApplication.WriteError(e);
                    MenuListener.LogOff();
                    RtlAwareMessageBox.Show(null, e.Message, "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    tryLogOn = false;
                    OfficeApplication.LogOff();
                }
            }
            return(tryLogOn);
        }