diff --git a/swad_ID.c b/swad_ID.c
index d1269b884..7b9fd181e 100644
--- a/swad_ID.c
+++ b/swad_ID.c
@@ -734,7 +734,7 @@ void ID_RemoveMyUsrID (void)
ID_GetListIDsFromUsrCod (&Gbl.Usrs.Me.UsrDat);
/***** Show my account again *****/
- Acc_ShowFormChangeMyAccount ();
+ Acc_ShowFormChgMyAccountAndPwd ();
}
/*****************************************************************************/
@@ -850,7 +850,7 @@ void ID_NewMyUsrID (void)
ID_GetListIDsFromUsrCod (&Gbl.Usrs.Me.UsrDat);
/***** Show my account again *****/
- Acc_ShowFormChangeMyAccount ();
+ Acc_ShowFormChgMyAccountAndPwd ();
}
/*****************************************************************************/
diff --git a/swad_account.c b/swad_account.c
index 02b3d18a4..3c6bac430 100644
--- a/swad_account.c
+++ b/swad_account.c
@@ -74,6 +74,7 @@ static void Acc_ShowFormCheckIfIHaveAccount (const char *Title);
static void Acc_WriteRowEmptyAccount (unsigned NumUsr,const char *ID,struct UsrData *UsrDat);
static void Acc_ShowFormRequestNewAccountWithParams (const char *NewNicknameWithoutArroba,
const char *NewEmail);
+static void Acc_ShowFormChgMyAccount (void);
static bool Acc_GetParamsNewAccount (char NewNicknameWithoutArroba[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1],
char *NewEmail,
char *NewEncryptedPassword);
@@ -113,7 +114,7 @@ void Acc_ShowFormMyAccount (void)
extern const char *Txt_Before_creating_a_new_account_check_if_you_have_been_already_registered;
if (Gbl.Usrs.Me.Logged)
- Acc_ShowFormChangeMyAccount ();
+ Acc_ShowFormChgMyAccountAndPwd ();
else // Not logged
{
/***** Links to other actions *****/
@@ -423,11 +424,24 @@ void Acc_ShowFormGoToRequestNewAccount (void)
Box_EndBox ();
}
+/*****************************************************************************/
+/************** Show forms to change my account and my password **************/
+/*****************************************************************************/
+
+void Acc_ShowFormChgMyAccountAndPwd (void)
+ {
+ /***** Show form to change my account *****/
+ Acc_ShowFormChgMyAccount ();
+
+ /***** Show form to change my password *****/
+ Pwd_ShowFormChgMyPwd ();
+ }
+
/*****************************************************************************/
/*********************** Show form to change my account **********************/
/*****************************************************************************/
-void Acc_ShowFormChangeMyAccount (void)
+static void Acc_ShowFormChgMyAccount (void)
{
extern const char *Hlp_PROFILE_Account;
extern const char *Txt_Before_going_to_any_other_option_you_must_fill_your_nickname;
@@ -463,12 +477,13 @@ void Acc_ShowFormChangeMyAccount (void)
if (Gbl.Usrs.Me.ConfirmEmailJustSent)
Mai_ShowMsgConfirmEmailHasBeenSent ();
- /***** Put links to change my password and to remove my account*****/
- fprintf (Gbl.F.Out,"
");
- Pwd_PutLinkToChangeMyPassword ();
+ /***** Put link to remove my account *****/
if (Acc_CheckIfICanEliminateAccount (Gbl.Usrs.Me.UsrDat.UsrCod))
+ {
+ fprintf (Gbl.F.Out,"
");
-
- /* New password */
- Pwd_PutFormToGetNewPasswordTwice ();
-
- /***** End table, send button and end box *****/
- Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,
- IHaveAPasswordInDB ? Txt_Change_password :
- Txt_Set_password);
-
- /***** End form *****/
- Act_FormEnd ();
+ /***** End section *****/
+ Lay_EndSection ();
}
/*****************************************************************************/
@@ -822,54 +838,61 @@ void Pwd_ShowFormOthPwd (void)
extern const char *Txt_User_not_found_or_you_do_not_have_permission_;
Act_Action_t NextAction;
- /***** Get user whose password must be changed *****/
- if (Usr_GetParamOtherUsrCodEncryptedAndGetUsrData ())
+ /***** Show possible alert *****/
+ Ale_ShowAlert (Gbl.Alert.Type,Gbl.Alert.Txt);
+
+ /***** Success changing password ==> don't show form again *****/
+ if (Gbl.Alert.Type != Ale_SUCCESS)
{
- if (Usr_ICanEditOtherUsr (&Gbl.Usrs.Other.UsrDat))
+ /***** Get user whose password must be changed *****/
+ if (Usr_GetParamOtherUsrCodEncryptedAndGetUsrData ())
{
- /***** Start box *****/
- Box_StartBox (NULL,Txt_Password,NULL,
- NULL,Box_NOT_CLOSABLE);
-
- /***** Show user's record *****/
- Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,
- &Gbl.Usrs.Other.UsrDat,NULL);
-
- /***** Form to change password *****/
- /* Start form */
- switch (Gbl.Usrs.Other.UsrDat.Roles.InCurrentCrs.Role)
+ if (Usr_ICanEditOtherUsr (&Gbl.Usrs.Other.UsrDat))
{
- case Rol_STD:
- NextAction = ActChgPwdStd;
- break;
- case Rol_NET:
- case Rol_TCH:
- NextAction = ActChgPwdTch;
- break;
- default: // Guest, user or admin
- NextAction = ActChgPwdOth;
- break;
+ /***** Start box *****/
+ Box_StartBox (NULL,Txt_Password,NULL,
+ NULL,Box_NOT_CLOSABLE);
+
+ /***** Show user's record *****/
+ Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,
+ &Gbl.Usrs.Other.UsrDat,NULL);
+
+ /***** Form to change password *****/
+ /* Start form */
+ switch (Gbl.Usrs.Other.UsrDat.Roles.InCurrentCrs.Role)
+ {
+ case Rol_STD:
+ NextAction = ActChgPwdStd;
+ break;
+ case Rol_NET:
+ case Rol_TCH:
+ NextAction = ActChgPwdTch;
+ break;
+ default: // Guest, user or admin
+ NextAction = ActChgPwdOth;
+ break;
+ }
+ Act_FormStart (NextAction);
+ Usr_PutParamOtherUsrCodEncrypted ();
+
+ /* New password */
+ Tbl_StartTableCenter (2);
+ Pwd_PutFormToGetNewPasswordTwice ();
+ Tbl_EndTable ();
+
+ /* End form */
+ Btn_PutConfirmButton (Txt_Change_password);
+ Act_FormEnd ();
+
+ /***** End box *****/
+ Box_EndBox ();
}
- Act_FormStart (NextAction);
- Usr_PutParamOtherUsrCodEncrypted ();
-
- /* New password */
- Tbl_StartTableCenter (2);
- Pwd_PutFormToGetNewPasswordTwice ();
- Tbl_EndTable ();
-
- /* End form */
- Btn_PutConfirmButton (Txt_Change_password);
- Act_FormEnd ();
-
- /***** End box *****/
- Box_EndBox ();
+ else
+ Ale_ShowAlert (Ale_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
}
- else
+ else // User not found
Ale_ShowAlert (Ale_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
}
- else // User not found
- Ale_ShowAlert (Ale_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
}
/*****************************************************************************/
diff --git a/swad_password.h b/swad_password.h
index 4adb3aeeb..457981dc2 100644
--- a/swad_password.h
+++ b/swad_password.h
@@ -49,8 +49,7 @@ bool Pwd_CheckCurrentPassword (void);
bool Pwd_CheckPendingPassword (void);
void Pwd_AssignMyPendingPasswordToMyCurrentPassword (void);
-void Pwd_ActChgMyPwd1 (void);
-void Pwd_ActChgMyPwd2 (void);
+void Pwd_ActChgMyPwd (void);
void Pwd_PutLinkToSendNewPasswd (void);
void Pwd_ShowFormSendNewPwd (void);
@@ -58,15 +57,14 @@ void Pwd_ChkIdLoginAndSendNewPwd (void);
int Pwd_SendNewPasswordByEmail (char NewRandomPlainPassword[Pwd_MAX_BYTES_PLAIN_PASSWORD + 1]);
void Pwd_SetMyPendingPassword (char PlainPassword[Pwd_MAX_BYTES_PLAIN_PASSWORD + 1]);
-void Pwd_UpdateOtherPwd1 (void);
-void Pwd_UpdateOtherPwd2 (void);
+void Pwd_UpdateOtherPwd (void);
bool Pwd_SlowCheckIfPasswordIsGood (const char *PlainPassword,
const char *EncryptedPassword,
long UsrCod);
bool Pwd_FastCheckIfPasswordSeemsGood (const char *PlainPassword);
-void Pwd_ShowFormChgPwd (void);
+void Pwd_ShowFormChgMyPwd (void);
void Pwd_PutFormToGetNewPasswordOnce (void);
void Pwd_PutFormToGetNewPasswordTwice (void);
void Pwd_ShowFormOthPwd (void);
diff --git a/swad_text.c b/swad_text.c
index a69b4dd0b..2057d9445 100644
--- a/swad_text.c
+++ b/swad_text.c
@@ -56069,17 +56069,17 @@ const char *Txt_You_have_no_unread_notifications =
const char *Txt_You_have_not_banned_any_sender =
#if L==1
- "Usted no ha bloqueado ningún remitente."; // Necessita traduccio
+ "No ha bloqueado ningún remitente."; // Necessita traduccio
#elif L==2
"You have not banned any sender."; // Need Übersetzung
#elif L==3
"You have not banned any sender.";
#elif L==4
- "Usted no ha bloqueado ningún remitente.";
+ "No ha bloqueado ningún remitente.";
#elif L==5
"You have not banned any sender."; // Besoin de traduction
#elif L==6
- "Usted no ha bloqueado ningún remitente."; // Okoteve traducción
+ "No ha bloqueado ningún remitente."; // Okoteve traducción
#elif L==7
"You have not banned any sender."; // Bisogno di traduzione
#elif L==8
@@ -56132,17 +56132,17 @@ const char *Txt_You_have_not_entered_your_password_correctly =
const char *Txt_You_have_not_written_twice_the_same_new_password =
#if L==1
- "Usted no ha escrito dos veces la misma contraseña nueva."; // Necessita traduccio
+ "No ha escrito dos veces la misma contraseña nueva."; // Necessita traduccio
#elif L==2
"You have not written twice the same new password."; // Need Übersetzung
#elif L==3
"You have not written twice the same new password.";
#elif L==4
- "Usted no ha escrito dos veces la misma contraseña nueva.";
+ "No ha escrito dos veces la misma contraseña nueva.";
#elif L==5
"You have not written twice the same new password."; // Besoin de traduction
#elif L==6
- "Usted no ha escrito dos veces la misma contraseña nueva."; // Okoteve traducción
+ "No ha escrito dos veces la misma contraseña nueva."; // Okoteve traducción
#elif L==7
"Non hai scritto due volte la stessa password nuova.";
#elif L==8