Version 16.144.4

This commit is contained in:
Antonio Cañas Vargas 2017-03-01 18:53:51 +01:00
parent 3dd1d4a271
commit f6ff5d5c37
9 changed files with 40 additions and 36 deletions

View File

@ -60,21 +60,18 @@ extern struct Globals Gbl;
/***************************** Internal prototypes ***************************/ /***************************** Internal prototypes ***************************/
/*****************************************************************************/ /*****************************************************************************/
static void QR_ImageQRCode (const char *QRString);
/*****************************************************************************/ /*****************************************************************************/
/***************** Put a link to a print view of a QR code *******************/ /***************** Put a link to a print view of a QR code *******************/
/*****************************************************************************/ /*****************************************************************************/
void QR_PutLinkToPrintQRCode (Act_Action_t Action,bool PrintText) void QR_PutLinkToPrintQRCode (Act_Action_t Action)
{ {
extern const char *Txt_QR_code; extern const char *Txt_QR_code;
/***** Link to print QR *****/ /***** Link to print QR *****/
Lay_PutContextualLink (Action,QR_PutParamQRString, Lay_PutContextualLink (Action,QR_PutParamQRString,
"qr64x64.gif", "qr64x64.gif",
Txt_QR_code,PrintText ? Txt_QR_code : Txt_QR_code,NULL,
NULL,
NULL); NULL);
} }
@ -106,7 +103,7 @@ void QR_PrintQRCode (void)
/******************** Write an QR (image) based on a string ******************/ /******************** Write an QR (image) based on a string ******************/
/*****************************************************************************/ /*****************************************************************************/
static void QR_ImageQRCode (const char *QRString) void QR_ImageQRCode (const char *QRString)
{ {
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\"" fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\""
" style=\"margin:0 auto; width:%upx;\">" " style=\"margin:0 auto; width:%upx;\">"

View File

@ -39,10 +39,11 @@
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
void QR_PutLinkToPrintQRCode (Act_Action_t Action,bool PrintText); void QR_PutLinkToPrintQRCode (Act_Action_t Action);
void QR_PutParamQRString (void); void QR_PutParamQRString (void);
void QR_PrintQRCode (void); void QR_PrintQRCode (void);
void QR_ImageQRCode (const char *QRString);
void QR_LinkTo (unsigned Size,const char *ParamStr,long Cod); void QR_LinkTo (unsigned Size,const char *ParamStr,long Cod);
void QR_ExamAnnnouncement (void); void QR_ExamAnnnouncement (void);

View File

@ -520,8 +520,9 @@ static void Acc_PutLinkToRemoveMyAccount (void)
static void Acc_PutParamsToRemoveMyAccount (void) static void Acc_PutParamsToRemoveMyAccount (void)
{ {
Usr_PutParamUsrCodEncrypted (Gbl.Usrs.Me.UsrDat.EncryptedUsrCod); Usr_PutParamMyUsrCodEncrypted ();
Par_PutHiddenParamUnsigned ("RegRemAction",(unsigned) Enr_ELIMINATE_ONE_USR_FROM_PLATFORM); Par_PutHiddenParamUnsigned ("RegRemAction",
(unsigned) Enr_ELIMINATE_ONE_USR_FROM_PLATFORM);
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -513,7 +513,7 @@ static void Agd_PutIconToShowQR (void)
Txt_STR_LANG_ID[Gbl.Prefs.Language], Txt_STR_LANG_ID[Gbl.Prefs.Language],
Gbl.Usrs.Me.UsrDat.Nickname); Gbl.Usrs.Me.UsrDat.Nickname);
Gbl.QR.Str = URL; Gbl.QR.Str = URL;
QR_PutLinkToPrintQRCode (ActPrnAgdQR,false); QR_PutLinkToPrintQRCode (ActPrnAgdQR);
} }
static void Agd_PutIconsOtherPublicAgenda (void) static void Agd_PutIconsOtherPublicAgenda (void)

View File

@ -143,7 +143,7 @@ static void Att_ListAttEventsForAStd (unsigned NumStd,struct UsrData *UsrDat);
void Att_SeeAttEvents (void) void Att_SeeAttEvents (void)
{ {
char NicknameWithArroba[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1]; extern const char *Txt_QR_code;
/***** Get parameters *****/ /***** Get parameters *****/
Att_GetParamAttOrder (); Att_GetParamAttOrder ();
@ -175,12 +175,10 @@ void Att_SeeAttEvents (void)
} }
/* Put link to my QR code */ /* Put link to my QR code */
if (Gbl.Usrs.Me.UsrDat.Nickname[0]) Lay_PutContextualLink (ActPrnUsrQR,Usr_PutParamMyUsrCodEncrypted,
{ "qr64x64.gif",
sprintf (NicknameWithArroba,"@%s",Gbl.Usrs.Me.UsrDat.Nickname); Txt_QR_code,Txt_QR_code,
Gbl.QR.Str = NicknameWithArroba; NULL);
QR_PutLinkToPrintQRCode (ActPrnUsrQR,true);
}
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }

View File

@ -198,13 +198,14 @@
/****************************** Public constants *****************************/ /****************************** Public constants *****************************/
/*****************************************************************************/ /*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 16.144.3 (2017-03-01)" #define Log_PLATFORM_VERSION "SWAD 16.144.4 (2017-03-01)"
#define CSS_FILE "swad16.144.css" #define CSS_FILE "swad16.144.css"
#define JS_FILE "swad16.144.js" #define JS_FILE "swad16.144.js"
// Number of lines (includes comments but not blank lines) has been got with the following command: // Number of lines (includes comments but not blank lines) has been got with the following command:
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*?.h sql/swad*.sql | tail -1 // nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*?.h sql/swad*.sql | tail -1
/* /*
Version 16.144.4: Mar 01, 2017 Fixed bug in link to another user's QR code from record card. (213338 lines)
Version 16.144.3: Mar 01, 2017 Button to create a new place when no places have been created. (213334 lines) Version 16.144.3: Mar 01, 2017 Button to create a new place when no places have been created. (213334 lines)
Version 16.144.2: Mar 01, 2017 Button to create a new group when no groups have been created. (213300 lines) Version 16.144.2: Mar 01, 2017 Button to create a new group when no groups have been created. (213300 lines)
Version 16.144.1: Mar 01, 2017 Zoom photo even if user has no photo. Version 16.144.1: Mar 01, 2017 Zoom photo even if user has no photo.

View File

@ -187,6 +187,7 @@ void Nck_ShowFormChangeUsrNickname (void)
extern const char *The_ClassForm[The_NUM_THEMES]; extern const char *The_ClassForm[The_NUM_THEMES];
extern const char *Txt_Current_nickname; extern const char *Txt_Current_nickname;
extern const char *Txt_Other_nicknames; extern const char *Txt_Other_nicknames;
extern const char *Txt_QR_code;
extern const char *Txt_Use_this_nickname; extern const char *Txt_Use_this_nickname;
extern const char *Txt_New_nickname; extern const char *Txt_New_nickname;
extern const char *Txt_Nickname; extern const char *Txt_Nickname;
@ -197,7 +198,6 @@ void Nck_ShowFormChangeUsrNickname (void)
MYSQL_ROW row; MYSQL_ROW row;
unsigned NumNicks; unsigned NumNicks;
unsigned NumNick; unsigned NumNick;
char NicknameWithArroba[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1];
/***** Get my nicknames *****/ /***** Get my nicknames *****/
sprintf (Query,"SELECT Nickname FROM usr_nicknames" sprintf (Query,"SELECT Nickname FROM usr_nicknames"
@ -253,11 +253,10 @@ void Nck_ShowFormChangeUsrNickname (void)
/* Link to QR code */ /* Link to QR code */
if (NumNick == 1 && Gbl.Usrs.Me.UsrDat.Nickname[0]) if (NumNick == 1 && Gbl.Usrs.Me.UsrDat.Nickname[0])
{ Lay_PutContextualLink (ActPrnUsrQR,Usr_PutParamMyUsrCodEncrypted,
sprintf (NicknameWithArroba,"@%s",Gbl.Usrs.Me.UsrDat.Nickname); "qr64x64.gif",
Gbl.QR.Str = NicknameWithArroba; Txt_QR_code,NULL,
QR_PutLinkToPrintQRCode (ActPrnUsrQR,false); NULL);
}
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");

View File

@ -2346,7 +2346,6 @@ static void Rec_PutIconsCommands (void)
extern const char *Txt_View_attendance; extern const char *Txt_View_attendance;
extern const char *Txt_Following_unfollow; extern const char *Txt_Following_unfollow;
extern const char *Txt_Follow; extern const char *Txt_Follow;
char NicknameWithArroba[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1];
bool ItsMe = (Gbl.Usrs.Me.UsrDat.UsrCod == Gbl.Record.UsrDat->UsrCod); bool ItsMe = (Gbl.Usrs.Me.UsrDat.UsrCod == Gbl.Record.UsrDat->UsrCod);
bool IAmLoggedAsStudent = (Gbl.Usrs.Me.LoggedRole == Rol_STUDENT); // My current role is student bool IAmLoggedAsStudent = (Gbl.Usrs.Me.LoggedRole == Rol_STUDENT); // My current role is student
bool IAmLoggedAsTeacher = (Gbl.Usrs.Me.LoggedRole == Rol_TEACHER); // My current role is teacher bool IAmLoggedAsTeacher = (Gbl.Usrs.Me.LoggedRole == Rol_TEACHER); // My current role is teacher
@ -2470,14 +2469,10 @@ static void Rec_PutIconsCommands (void)
(Gbl.CurrentCrs.Crs.CrsCod > 0 && // A course is selected (Gbl.CurrentCrs.Crs.CrsCod > 0 && // A course is selected
Gbl.Record.UsrDat->RoleInCurrentCrsDB == Rol_STUDENT && // He/she is a student in the current course Gbl.Record.UsrDat->RoleInCurrentCrsDB == Rol_STUDENT && // He/she is a student in the current course
IAmLoggedAsTeacher)) // I am a teacher in the current course IAmLoggedAsTeacher)) // I am a teacher in the current course
{ Lay_PutContextualLink (ActPrnUsrQR,Rec_PutParamUsrCodEncrypted,
sprintf (NicknameWithArroba,"@%s",Gbl.Record.UsrDat->Nickname);
Gbl.QR.Str = NicknameWithArroba;
Lay_PutContextualLink (ActPrnUsrQR,QR_PutParamQRString,
"qr64x64.gif", "qr64x64.gif",
Txt_QR_code,NULL, Txt_QR_code,NULL,
NULL); NULL);
}
/***** Button to send a message *****/ /***** Button to send a message *****/
Lay_PutContextualLink (ActReqMsgUsr,Rec_PutParamsMsgUsr, Lay_PutContextualLink (ActReqMsgUsr,Rec_PutParamsMsgUsr,

View File

@ -8514,12 +8514,24 @@ void Usr_RemoveUsrFromUsrBanned (long UsrCod)
void Usr_PrintUsrQRCode (void) void Usr_PrintUsrQRCode (void)
{ {
/***** Start frame *****/ extern const char *Txt_User_not_found_or_you_do_not_have_permission_;
Lay_StartRoundFrame (NULL,Gbl.Usrs.Me.UsrDat.FullName,NULL,NULL); char NewNicknameWithArroba[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1];
/***** Print QR code ****/ if (Usr_GetParamOtherUsrCodEncryptedAndGetUsrData ())
QR_PrintQRCode (); {
/***** Start frame *****/
Lay_StartRoundFrame (NULL,Gbl.Usrs.Other.UsrDat.FullName,NULL,NULL);
/***** End frame *****/ /***** Show QR code *****/
Lay_EndRoundFrame (); if (Gbl.Usrs.Other.UsrDat.Nickname[0])
{
sprintf (NewNicknameWithArroba,"@%s",Gbl.Usrs.Other.UsrDat.Nickname);
QR_ImageQRCode (NewNicknameWithArroba);
}
/***** End frame *****/
Lay_EndRoundFrame ();
}
else
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
} }