mirror of
https://github.com/acanas/swad-core.git
synced 2024-06-13 04:04:35 +02:00
Version 16.64
This commit is contained in:
parent
b4d368e5db
commit
29c5269d35
|
@ -512,7 +512,7 @@ void ID_ShowFormOthIDs (void)
|
|||
Lay_StartRoundFrame (NULL,Txt_ID,NULL,NULL);
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/***** Form with the user's ID *****/
|
||||
fprintf (Gbl.F.Out,"<table class=\"FRAME_TBL CELLS_PAD_2\">");
|
||||
|
@ -692,7 +692,7 @@ void ID_RemoveOtherUsrID (void)
|
|||
ID_GetListIDsFromUsrCod (&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
}
|
||||
else // User not found
|
||||
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
|
||||
|
@ -807,7 +807,7 @@ void ID_NewOtherUsrID (void)
|
|||
ID_GetListIDsFromUsrCod (&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
}
|
||||
else // User not found
|
||||
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
|
||||
|
@ -1014,7 +1014,7 @@ static void ID_ReqConfOrConfOtherUsrID (ID_ReqConfOrConfID_t ReqConfOrConfID)
|
|||
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
}
|
||||
else // User not found
|
||||
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
|
||||
|
|
|
@ -166,13 +166,15 @@
|
|||
/****************************** Public constants *****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Log_PLATFORM_VERSION "SWAD 16.63.6 (2016-11-17)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 16.64 (2016-11-17)"
|
||||
#define CSS_FILE "swad16.60.1.css"
|
||||
#define JS_FILE "swad16.46.1.js"
|
||||
|
||||
// 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
|
||||
/*
|
||||
Version 16.64: Nov 17, 2016 Contextual help on students.
|
||||
Code refactoring in record cards. (207231 lines)
|
||||
Version 16.63.6: Nov 16, 2016 Contextual help on email unconfirmed. (207184 lines)
|
||||
Version 16.63.5: Nov 16, 2016 Contextual help on edition of countries. (207180 lines)
|
||||
Version 16.63.4: Nov 16, 2016 Contextual help on edition of institutions. (207177 lines)
|
||||
|
|
|
@ -3112,7 +3112,7 @@ static void Enr_ShowFormToEditOtherUsr (void)
|
|||
fprintf (Gbl.F.Out,"</div>");
|
||||
|
||||
/***** User's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_OTHER_EXISTING_USR_FORM,&Gbl.Usrs.Other.UsrDat);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
@ -401,7 +401,7 @@ struct Globals
|
|||
struct
|
||||
{
|
||||
struct UsrData *UsrDat;
|
||||
Rec_RecordViewType_t TypeOfView;
|
||||
Rec_SharedRecordViewType_t TypeOfView;
|
||||
} Record;
|
||||
struct
|
||||
{
|
||||
|
|
|
@ -93,6 +93,14 @@ const char *Hlp_ASSESSMENT_Marks = WIKI "ASSESSMENT.Marks";
|
|||
|
||||
const char *Hlp_USERS_Groups = WIKI "USERS.Groups";
|
||||
|
||||
const char *Hlp_USERS_Students = WIKI "USERS.Students";
|
||||
const char *Hlp_USERS_Students_shared_record_card = WIKI "USERS.Students#shared-record-card";
|
||||
const char *Hlp_USERS_Students_course_record_card = WIKI "USERS.Students#course-record-card";
|
||||
|
||||
const char *Hlp_USERS_Teachers = WIKI "USERS.Teachers";
|
||||
|
||||
const char *Hlp_USERS_Others_guests = WIKI "USERS.Others#guests";
|
||||
|
||||
const char *Hlp_USERS_Attendance = WIKI "USERS.Attendance";
|
||||
|
||||
/***** SOCIAL tab *****/
|
||||
|
|
|
@ -1127,7 +1127,7 @@ void Mai_ShowFormOthEmail (void)
|
|||
Lay_StartRoundFrame (NULL,Txt_Email,NULL,NULL);
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/***** Form with the user's email *****/
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\" style=\"margin:0 auto;\">");
|
||||
|
@ -1324,7 +1324,7 @@ void Mai_RemoveOtherUsrEmail (void)
|
|||
Mai_RemoveEmail (&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
}
|
||||
else // User not found
|
||||
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
|
||||
|
@ -1403,7 +1403,7 @@ void Mai_NewOtherUsrEmail (void)
|
|||
(Gbl.Usrs.Other.UsrDat.UsrCod == Gbl.Usrs.Me.UsrDat.UsrCod)); // It's me?
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
}
|
||||
else // User not found
|
||||
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
|
||||
|
|
|
@ -809,7 +809,7 @@ void Pwd_ShowFormOthPwd (void)
|
|||
Lay_StartRoundFrame (NULL,Txt_Password,NULL,NULL);
|
||||
|
||||
/***** Show user's record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/***** Form to change password *****/
|
||||
/* Start form */
|
||||
|
|
|
@ -283,7 +283,7 @@ bool Prf_ShowUserProfile (struct UsrData *UsrDat)
|
|||
}
|
||||
|
||||
/***** Common record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_PUBLIC,UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_PUBLIC,UsrDat);
|
||||
|
||||
/***** Show details of user's profile *****/
|
||||
Prf_ShowDetailsUserProfile (UsrDat);
|
||||
|
|
252
swad_record.c
252
swad_record.c
|
@ -72,15 +72,16 @@ static void Rec_WriteHeadingRecordFields (void);
|
|||
static void Rec_GetFieldByCod (long FieldCod,char *Name,unsigned *NumLines,Rec_VisibilityRecordFields_t *Visibility);
|
||||
|
||||
static void Rec_ShowRecordOneStdCrs (void);
|
||||
static void Rec_ListRecordsStds (Rec_RecordViewType_t TypeOfView);
|
||||
static void Rec_ListRecordsStds (Rec_SharedRecordViewType_t ShaTypeOfView,
|
||||
Rec_CourseRecordViewType_t CrsTypeOfView);
|
||||
static void Rec_ShowRecordOneTchCrs (void);
|
||||
|
||||
static void Rec_ShowLinkToPrintPreviewOfRecords (void);
|
||||
static void Rec_GetParamRecordsPerPage (void);
|
||||
static void Rec_WriteFormShowOfficeHours (bool ShowOfficeHours,const char *ListUsrCods);
|
||||
static bool Rec_GetParamShowOfficeHours (void);
|
||||
static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *UsrDat,
|
||||
const char *Anchor);
|
||||
static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
|
||||
struct UsrData *UsrDat,const char *Anchor);
|
||||
static void Rec_ShowMyCrsRecordUpdated (void);
|
||||
|
||||
static void Rec_PutIconsCommands (void);
|
||||
|
@ -94,25 +95,25 @@ static void Rec_ShowFullName (struct UsrData *UsrDat);
|
|||
static void Rec_ShowNickname (struct UsrData *UsrDat,bool PutFormLinks);
|
||||
static void Rec_ShowCountryInHead (struct UsrData *UsrDat,bool ShowData);
|
||||
static void Rec_ShowWebsAndSocialNets (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView);
|
||||
Rec_SharedRecordViewType_t TypeOfView);
|
||||
static void Rec_ShowEmail (struct UsrData *UsrDat,const char *ClassForm);
|
||||
static void Rec_ShowUsrIDs (struct UsrData *UsrDat,const char *ClassForm);
|
||||
static void Rec_ShowRole (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
const char *ClassForm);
|
||||
static void Rec_ShowSurname1 (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
bool DataForm,
|
||||
const char *ClassForm);
|
||||
static void Rec_ShowSurname2 (struct UsrData *UsrDat,
|
||||
bool DataForm,
|
||||
const char *ClassForm);
|
||||
static void Rec_ShowFirstName (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
bool DataForm,
|
||||
const char *ClassForm);
|
||||
static void Rec_ShowCountry (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
const char *ClassForm);
|
||||
static void Rec_ShowOriginPlace (struct UsrData *UsrDat,
|
||||
bool ShowData,bool DataForm,
|
||||
|
@ -939,8 +940,8 @@ void Rec_ListRecordsGsts (void)
|
|||
extern const char *Txt_You_must_select_one_ore_more_users;
|
||||
unsigned NumUsrs = 0;
|
||||
const char *Ptr;
|
||||
Rec_RecordViewType_t TypeOfView = (Gbl.Action.Act == ActSeeRecSevGst) ? Rec_RECORD_LIST :
|
||||
Rec_RECORD_PRINT;
|
||||
Rec_SharedRecordViewType_t TypeOfView = (Gbl.Action.Act == ActSeeRecSevGst) ? Rec_SHA_RECORD_LIST :
|
||||
Rec_SHA_RECORD_PRINT;
|
||||
struct UsrData UsrDat;
|
||||
|
||||
/***** Assign users listing type depending on current action *****/
|
||||
|
@ -1059,7 +1060,7 @@ static void Rec_ShowRecordOneStdCrs (void)
|
|||
fprintf (Gbl.F.Out,"</div>");
|
||||
|
||||
/***** Common record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/***** Record of the student in the course *****/
|
||||
/* Get list of fields of records in current course */
|
||||
|
@ -1069,10 +1070,10 @@ static void Rec_ShowRecordOneStdCrs (void)
|
|||
{
|
||||
if (Gbl.Usrs.Me.LoggedRole == Rol_TEACHER ||
|
||||
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM)
|
||||
Rec_ShowCrsRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat,NULL);
|
||||
Rec_ShowCrsRecord (Rec_CRS_RECORD_LIST,&Gbl.Usrs.Other.UsrDat,NULL);
|
||||
else if (Gbl.Usrs.Me.LoggedRole == Rol_STUDENT &&
|
||||
Gbl.Usrs.Me.UsrDat.UsrCod == Gbl.Usrs.Other.UsrDat.UsrCod) // It's me
|
||||
Rec_ShowCrsRecord (Rec_FORM_MY_COURSE_RECORD_AS_STUDENT,&Gbl.Usrs.Other.UsrDat,NULL);
|
||||
Rec_ShowCrsRecord (Rec_CRS_MY_RECORD_AS_STUDENT_FORM,&Gbl.Usrs.Other.UsrDat,NULL);
|
||||
}
|
||||
|
||||
/* Free list of fields of records */
|
||||
|
@ -1085,15 +1086,18 @@ static void Rec_ShowRecordOneStdCrs (void)
|
|||
|
||||
void Rec_ListRecordsStdsForEdit (void)
|
||||
{
|
||||
Rec_ListRecordsStds (Rec_RECORD_LIST);
|
||||
Rec_ListRecordsStds (Rec_SHA_RECORD_LIST,
|
||||
Rec_CRS_RECORD_LIST);
|
||||
}
|
||||
|
||||
void Rec_ListRecordsStdsForPrint (void)
|
||||
{
|
||||
Rec_ListRecordsStds (Rec_RECORD_PRINT);
|
||||
Rec_ListRecordsStds (Rec_SHA_RECORD_PRINT,
|
||||
Rec_CRS_RECORD_PRINT);
|
||||
}
|
||||
|
||||
static void Rec_ListRecordsStds (Rec_RecordViewType_t TypeOfView)
|
||||
static void Rec_ListRecordsStds (Rec_SharedRecordViewType_t ShaTypeOfView,
|
||||
Rec_CourseRecordViewType_t CrsTypeOfView)
|
||||
{
|
||||
extern const char *Txt_You_must_select_one_ore_more_students;
|
||||
unsigned NumUsr = 0;
|
||||
|
@ -1105,7 +1109,7 @@ static void Rec_ListRecordsStds (Rec_RecordViewType_t TypeOfView)
|
|||
Gbl.Usrs.Listing.RecsUsrs = Rec_RECORD_USERS_STUDENTS;
|
||||
|
||||
/***** Get parameter with number of user records per page (only for printing) *****/
|
||||
if (TypeOfView == Rec_RECORD_PRINT)
|
||||
if (ShaTypeOfView == Rec_SHA_RECORD_PRINT)
|
||||
Rec_GetParamRecordsPerPage ();
|
||||
|
||||
/***** Get list of selected students *****/
|
||||
|
@ -1122,7 +1126,7 @@ static void Rec_ListRecordsStds (Rec_RecordViewType_t TypeOfView)
|
|||
/***** Get list of fields of records in current course *****/
|
||||
Rec_GetListRecordFieldsInCurrentCrs ();
|
||||
|
||||
if (TypeOfView == Rec_RECORD_LIST)
|
||||
if (ShaTypeOfView == Rec_SHA_RECORD_LIST)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
|
||||
|
||||
|
@ -1171,7 +1175,7 @@ static void Rec_ListRecordsStds (Rec_RecordViewType_t TypeOfView)
|
|||
fprintf (Gbl.F.Out,"\">");
|
||||
|
||||
/* Common record */
|
||||
Rec_ShowSharedUsrRecord (TypeOfView,&UsrDat);
|
||||
Rec_ShowSharedUsrRecord (ShaTypeOfView,&UsrDat);
|
||||
|
||||
/* Record of the student in the course */
|
||||
if (Gbl.CurrentCrs.Records.LstFields.Num) // There are fields in the record
|
||||
|
@ -1179,7 +1183,7 @@ static void Rec_ListRecordsStds (Rec_RecordViewType_t TypeOfView)
|
|||
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM ||
|
||||
(Gbl.Usrs.Me.LoggedRole == Rol_STUDENT && // I am student in this course...
|
||||
Gbl.Usrs.Me.UsrDat.UsrCod == UsrDat.UsrCod)) // ...and it's me
|
||||
Rec_ShowCrsRecord (TypeOfView,&UsrDat,Anchor);
|
||||
Rec_ShowCrsRecord (CrsTypeOfView,&UsrDat,Anchor);
|
||||
|
||||
fprintf (Gbl.F.Out,"</section>");
|
||||
|
||||
|
@ -1191,8 +1195,7 @@ static void Rec_ListRecordsStds (Rec_RecordViewType_t TypeOfView)
|
|||
Usr_UsrDataDestructor (&UsrDat);
|
||||
|
||||
/***** Free list of fields of records *****/
|
||||
// if (Gbl.Usrs.Listing.RecsUsrs == Rec_RECORD_USERS_STUDENTS)
|
||||
Rec_FreeListFields ();
|
||||
Rec_FreeListFields ();
|
||||
|
||||
/***** Free memory used by list of selected users' codes *****/
|
||||
Usr_FreeListsSelectedUsrsCods ();
|
||||
|
@ -1255,7 +1258,7 @@ static void Rec_ShowRecordOneTchCrs (void)
|
|||
" style=\"margin-bottom:12px;\">");
|
||||
|
||||
/* Common record */
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Other.UsrDat);
|
||||
|
||||
/* Office hours */
|
||||
Gbl.TimeTable.Type = TT_TUTOR_TIMETABLE;
|
||||
|
@ -1277,8 +1280,8 @@ void Rec_ListRecordsTchs (void)
|
|||
extern const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES];
|
||||
unsigned NumUsrs = 0;
|
||||
const char *Ptr;
|
||||
Rec_RecordViewType_t TypeOfView = (Gbl.Action.Act == ActSeeRecSevTch) ? Rec_RECORD_LIST :
|
||||
Rec_RECORD_PRINT;
|
||||
Rec_SharedRecordViewType_t TypeOfView = (Gbl.Action.Act == ActSeeRecSevTch) ? Rec_SHA_RECORD_LIST :
|
||||
Rec_SHA_RECORD_PRINT;
|
||||
struct UsrData UsrDat;
|
||||
bool ShowOfficeHours;
|
||||
char Width[10+2+1];
|
||||
|
@ -1540,13 +1543,21 @@ void Rec_UpdateAndShowOtherCrsRecord (void)
|
|||
/*****************************************************************************/
|
||||
// Show form or only data depending on TypeOfView
|
||||
|
||||
static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *UsrDat,
|
||||
const char *Anchor)
|
||||
static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
|
||||
struct UsrData *UsrDat,const char *Anchor)
|
||||
{
|
||||
extern const char *Hlp_USERS_Students_course_record_card;
|
||||
extern const char *The_ClassForm[The_NUM_THEMES];
|
||||
extern const char *Txt_You_dont_have_permission_to_perform_this_action;
|
||||
extern const char *Txt_RECORD_FIELD_VISIBILITY_RECORD[Rec_NUM_TYPES_VISIBILITY];
|
||||
extern const char *Txt_Save;
|
||||
const char *Rec_RecordHelp[Rec_COURSE_NUM_VIEW_TYPES] =
|
||||
{
|
||||
Hlp_USERS_Students_course_record_card, // Rec_CRS_MY_RECORD_AS_STUDENT_FORM
|
||||
Hlp_USERS_Students_course_record_card, // Rec_CRS_MY_RECORD_AS_STUDENT_CHECK
|
||||
Hlp_USERS_Students_course_record_card, // Rec_CRS_RECORD_LIST
|
||||
NULL, // Rec_CRS_RECORD_PRINT
|
||||
};
|
||||
char StrRecordWidth[10+1];
|
||||
unsigned Col1Width = 210;
|
||||
unsigned Col2Width;
|
||||
|
@ -1566,15 +1577,15 @@ static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *U
|
|||
if (ItsMe) // It's me
|
||||
switch (TypeOfView)
|
||||
{
|
||||
case Rec_RECORD_LIST:
|
||||
case Rec_CRS_RECORD_LIST:
|
||||
// When listing several records,
|
||||
// only my record in course in allowed
|
||||
// ==> show form to edit my record as student
|
||||
TypeOfView = Rec_FORM_MY_COURSE_RECORD_AS_STUDENT;
|
||||
TypeOfView = Rec_CRS_MY_RECORD_AS_STUDENT_FORM;
|
||||
break;
|
||||
case Rec_FORM_MY_COURSE_RECORD_AS_STUDENT:
|
||||
case Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT:
|
||||
case Rec_RECORD_PRINT:
|
||||
case Rec_CRS_MY_RECORD_AS_STUDENT_FORM:
|
||||
case Rec_CRS_MY_RECORD_AS_STUDENT_CHECK:
|
||||
case Rec_CRS_RECORD_PRINT:
|
||||
break;
|
||||
default:
|
||||
Lay_ShowErrorAndExit (Txt_You_dont_have_permission_to_perform_this_action);
|
||||
|
@ -1586,7 +1597,7 @@ static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *U
|
|||
|
||||
switch (TypeOfView)
|
||||
{
|
||||
case Rec_FORM_MY_COURSE_RECORD_AS_STUDENT:
|
||||
case Rec_CRS_MY_RECORD_AS_STUDENT_FORM:
|
||||
for (NumField = 0;
|
||||
NumField < Gbl.CurrentCrs.Records.LstFields.Num;
|
||||
NumField++)
|
||||
|
@ -1597,15 +1608,15 @@ static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *U
|
|||
break;
|
||||
}
|
||||
break;
|
||||
case Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT:
|
||||
case Rec_CRS_MY_RECORD_AS_STUDENT_CHECK:
|
||||
break;
|
||||
case Rec_RECORD_LIST:
|
||||
case Rec_CRS_RECORD_LIST:
|
||||
DataForm = true;
|
||||
Act_FormStartAnchor (ActRcvRecOthUsr,Anchor);
|
||||
Usr_PutHiddenParUsrCodAll (ActRcvRecOthUsr,Gbl.Usrs.Select.All);
|
||||
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
|
||||
break;
|
||||
case Rec_RECORD_PRINT:
|
||||
case Rec_CRS_RECORD_PRINT:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -1615,7 +1626,8 @@ static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *U
|
|||
|
||||
/***** Start frame *****/
|
||||
sprintf (StrRecordWidth,"%upx",Rec_RECORD_WIDTH);
|
||||
Lay_StartRoundFrameTable (StrRecordWidth,NULL,NULL,NULL,2);
|
||||
Lay_StartRoundFrameTable (StrRecordWidth,NULL,
|
||||
NULL,Rec_RecordHelp[TypeOfView],2);
|
||||
|
||||
/***** Header *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
@ -1642,15 +1654,15 @@ static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *U
|
|||
NumField < Gbl.CurrentCrs.Records.LstFields.Num;
|
||||
NumField++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd)
|
||||
{
|
||||
ShowField = !(TypeOfView == Rec_FORM_MY_COURSE_RECORD_AS_STUDENT ||
|
||||
TypeOfView == Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT) ||
|
||||
ShowField = !(TypeOfView == Rec_CRS_MY_RECORD_AS_STUDENT_FORM ||
|
||||
TypeOfView == Rec_CRS_MY_RECORD_AS_STUDENT_CHECK) ||
|
||||
Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Visibility != Rec_HIDDEN_FIELD;
|
||||
// If the field must be shown...
|
||||
if (ShowField)
|
||||
{
|
||||
ICanEdit = TypeOfView == Rec_RECORD_LIST ||
|
||||
(TypeOfView == Rec_FORM_MY_COURSE_RECORD_AS_STUDENT &&
|
||||
Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Visibility == Rec_EDITABLE_FIELD);
|
||||
ICanEdit = TypeOfView == Rec_CRS_RECORD_LIST ||
|
||||
(TypeOfView == Rec_CRS_MY_RECORD_AS_STUDENT_FORM &&
|
||||
Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Visibility == Rec_EDITABLE_FIELD);
|
||||
|
||||
/* Name of the field */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
@ -1661,7 +1673,7 @@ static void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *U
|
|||
"REC_DAT_SMALL",
|
||||
Gbl.RowEvenOdd,Col1Width,
|
||||
Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Name);
|
||||
if (TypeOfView == Rec_RECORD_LIST)
|
||||
if (TypeOfView == Rec_CRS_RECORD_LIST)
|
||||
fprintf (Gbl.F.Out,"<span class=\"DAT_SMALL\"> (%s)</span>",
|
||||
Txt_RECORD_FIELD_VISIBILITY_RECORD[Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Visibility]);
|
||||
fprintf (Gbl.F.Out,"</td>");
|
||||
|
@ -1862,10 +1874,10 @@ static void Rec_ShowMyCrsRecordUpdated (void)
|
|||
Lay_ShowAlert (Lay_SUCCESS,Txt_Your_record_card_in_this_course_has_been_updated);
|
||||
|
||||
/***** Common record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_RECORD_LIST,&Gbl.Usrs.Me.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_RECORD_LIST,&Gbl.Usrs.Me.UsrDat);
|
||||
|
||||
/***** Show updated user's record *****/
|
||||
Rec_ShowCrsRecord (Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT,&Gbl.Usrs.Me.UsrDat,NULL);
|
||||
Rec_ShowCrsRecord (Rec_CRS_MY_RECORD_AS_STUDENT_CHECK,&Gbl.Usrs.Me.UsrDat,NULL);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -1917,7 +1929,7 @@ void Rec_ShowFormSignUpWithMyCommonRecord (void)
|
|||
|
||||
/***** Show the form *****/
|
||||
Act_FormStart (ActSignUp);
|
||||
Rec_ShowSharedUsrRecord (Rec_FORM_SIGN_UP,&Gbl.Usrs.Me.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_SIGN_UP_FORM,&Gbl.Usrs.Me.UsrDat);
|
||||
Lay_PutConfirmButton (Txt_Sign_up);
|
||||
Act_FormEnd ();
|
||||
}
|
||||
|
@ -1950,7 +1962,7 @@ void Rec_ShowFormMyCommRecord (void)
|
|||
fprintf (Gbl.F.Out,"</div>");
|
||||
|
||||
/***** My record *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_FORM_MY_COMMON_RECORD,&Gbl.Usrs.Me.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_MY_RECORD_FORM,&Gbl.Usrs.Me.UsrDat);
|
||||
Rec_WriteLinkToDataProtectionClause ();
|
||||
}
|
||||
|
||||
|
@ -1961,7 +1973,7 @@ void Rec_ShowFormMyCommRecord (void)
|
|||
void Rec_ShowFormOtherNewCommonRecord (struct UsrData *UsrDat)
|
||||
{
|
||||
/***** Show the form *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_FORM_NEW_RECORD_OTHER_NEW_USR,UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_OTHER_NEW_USR_FORM,UsrDat);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -1976,7 +1988,7 @@ void Rec_ShowMyCommonRecordUpd (void)
|
|||
Lay_ShowAlert (Lay_SUCCESS,Txt_Your_personal_data_have_been_updated);
|
||||
|
||||
/***** Show my record for checking *****/
|
||||
Rec_ShowSharedUsrRecord (Rec_MY_COMMON_RECORD_CHECK,&Gbl.Usrs.Me.UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_MY_RECORD_CHECK,&Gbl.Usrs.Me.UsrDat);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -1993,7 +2005,7 @@ void Rec_ShowCommonRecordUnmodifiable (struct UsrData *UsrDat)
|
|||
|
||||
/***** Show user's record *****/
|
||||
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
|
||||
Rec_ShowSharedUsrRecord (Rec_CHECK_OTHER_USR_COMMON_RECORD,UsrDat);
|
||||
Rec_ShowSharedUsrRecord (Rec_SHA_OTHER_USR_CHECK,UsrDat);
|
||||
fprintf (Gbl.F.Out,"</div>");
|
||||
}
|
||||
|
||||
|
@ -2002,68 +2014,92 @@ void Rec_ShowCommonRecordUnmodifiable (struct UsrData *UsrDat)
|
|||
/*****************************************************************************/
|
||||
// Show form or only data depending on TypeOfView
|
||||
|
||||
void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView,
|
||||
void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
|
||||
struct UsrData *UsrDat)
|
||||
{
|
||||
extern struct Act_Actions Act_Actions[Act_NUM_ACTIONS];
|
||||
extern const char *Hlp_PROFILE_Record;
|
||||
extern const char *Hlp_USERS_Students_shared_record_card;
|
||||
extern const char *The_ClassForm[The_NUM_THEMES];
|
||||
extern const char *Txt_Save_changes;
|
||||
extern const char *Txt_Register;
|
||||
extern const char *Txt_Confirm;
|
||||
const char *Rec_RecordHelp[Rec_SHARED_NUM_VIEW_TYPES] =
|
||||
{
|
||||
NULL, // Rec_SHA_SIGN_UP_FORM
|
||||
|
||||
Hlp_PROFILE_Record, // Rec_SHA_MY_RECORD_FORM
|
||||
Hlp_PROFILE_Record, // Rec_SHA_MY_RECORD_CHECK
|
||||
|
||||
NULL, // Rec_SHA_OTHER_EXISTING_USR_FORM
|
||||
NULL, // Rec_SHA_OTHER_NEW_USR_FORM
|
||||
NULL, // Rec_SHA_OTHER_USR_CHECK
|
||||
|
||||
NULL, // Rec_SHA_RECORD_LIST
|
||||
NULL, // Rec_SHA_RECORD_PRINT
|
||||
NULL, // Rec_SHA_RECORD_PUBLIC
|
||||
};
|
||||
const char *Rec_RecordListHelp[Rol_NUM_ROLES] =
|
||||
{
|
||||
NULL, // Rol_UNKNOWN
|
||||
NULL, // Rol__GUEST_
|
||||
NULL, // Rol_VISITOR
|
||||
Hlp_USERS_Students_shared_record_card, // Rol_STUDENT
|
||||
NULL, // Rol_TEACHER
|
||||
NULL, // Rol_DEG_ADM
|
||||
NULL, // Rol_CTR_ADM
|
||||
NULL, // Rol_INS_ADM
|
||||
NULL, // Rol_SYS_ADM
|
||||
};
|
||||
char StrRecordWidth[10+1];
|
||||
const char *ClassForm = "REC_DAT";
|
||||
bool ItsMe = (Gbl.Usrs.Me.UsrDat.UsrCod == UsrDat->UsrCod);
|
||||
bool IAmLoggedAsTeacher = (Gbl.Usrs.Me.LoggedRole == Rol_TEACHER); // My current role is teacher
|
||||
bool IAmLoggedAsSysAdm = (Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM); // My current role is superuser
|
||||
bool CountryForm = (TypeOfView == Rec_FORM_MY_COMMON_RECORD);
|
||||
bool DataForm = (TypeOfView == Rec_FORM_MY_COMMON_RECORD ||
|
||||
TypeOfView == Rec_FORM_NEW_RECORD_OTHER_NEW_USR ||
|
||||
(TypeOfView == Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR &&
|
||||
bool CountryForm = (TypeOfView == Rec_SHA_MY_RECORD_FORM);
|
||||
bool DataForm = (TypeOfView == Rec_SHA_MY_RECORD_FORM ||
|
||||
TypeOfView == Rec_SHA_OTHER_NEW_USR_FORM ||
|
||||
(TypeOfView == Rec_SHA_OTHER_EXISTING_USR_FORM &&
|
||||
Gbl.Usrs.Me.LoggedRole >= Rol_DEG_ADM));
|
||||
bool PutFormLinks; // Put links (forms) inside record card
|
||||
bool ShowData = (ItsMe ||
|
||||
Gbl.Usrs.Me.LoggedRole >= Rol_DEG_ADM ||
|
||||
UsrDat->Accepted);
|
||||
bool ShowIDRows = (TypeOfView != Rec_RECORD_PUBLIC);
|
||||
bool ShowAddressRows = (TypeOfView == Rec_FORM_MY_COMMON_RECORD ||
|
||||
TypeOfView == Rec_MY_COMMON_RECORD_CHECK ||
|
||||
TypeOfView == Rec_FORM_MY_COURSE_RECORD_AS_STUDENT ||
|
||||
TypeOfView == Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT ||
|
||||
((TypeOfView == Rec_RECORD_LIST ||
|
||||
TypeOfView == Rec_RECORD_PRINT) &&
|
||||
bool ShowIDRows = (TypeOfView != Rec_SHA_RECORD_PUBLIC);
|
||||
bool ShowAddressRows = (TypeOfView == Rec_SHA_MY_RECORD_FORM ||
|
||||
TypeOfView == Rec_SHA_MY_RECORD_CHECK ||
|
||||
((TypeOfView == Rec_SHA_RECORD_LIST ||
|
||||
TypeOfView == Rec_SHA_RECORD_PRINT) &&
|
||||
(IAmLoggedAsTeacher || IAmLoggedAsSysAdm) &&
|
||||
UsrDat->RoleInCurrentCrsDB == Rol_STUDENT));
|
||||
bool ShowTeacherRows = (((TypeOfView == Rec_FORM_MY_COMMON_RECORD ||
|
||||
TypeOfView == Rec_MY_COMMON_RECORD_CHECK ||
|
||||
TypeOfView == Rec_FORM_MY_COURSE_RECORD_AS_STUDENT ||
|
||||
TypeOfView == Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT) &&
|
||||
bool ShowTeacherRows = (((TypeOfView == Rec_SHA_MY_RECORD_FORM ||
|
||||
TypeOfView == Rec_SHA_MY_RECORD_CHECK ||
|
||||
(UsrDat->Roles & (1 << Rol_TEACHER))) || // He/she (me, really) is a teacher in any course
|
||||
((TypeOfView == Rec_RECORD_LIST ||
|
||||
TypeOfView == Rec_RECORD_PRINT) &&
|
||||
UsrDat->RoleInCurrentCrsDB == Rol_TEACHER)); // He/she is a teacher in the current course
|
||||
((TypeOfView == Rec_SHA_RECORD_LIST ||
|
||||
TypeOfView == Rec_SHA_RECORD_PRINT) &&
|
||||
UsrDat->RoleInCurrentCrsDB == Rol_TEACHER))); // He/she is a teacher in the current course
|
||||
struct Instit Ins;
|
||||
|
||||
/***** Initializations *****/
|
||||
switch (TypeOfView)
|
||||
{
|
||||
case Rec_FORM_SIGN_UP:
|
||||
case Rec_FORM_MY_COMMON_RECORD:
|
||||
case Rec_FORM_MY_COURSE_RECORD_AS_STUDENT:
|
||||
case Rec_FORM_NEW_RECORD_OTHER_NEW_USR:
|
||||
case Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR:
|
||||
case Rec_SHA_SIGN_UP_FORM:
|
||||
case Rec_SHA_MY_RECORD_FORM:
|
||||
case Rec_SHA_OTHER_NEW_USR_FORM:
|
||||
case Rec_SHA_OTHER_EXISTING_USR_FORM:
|
||||
ClassForm = The_ClassForm[Gbl.Prefs.Theme];
|
||||
break;
|
||||
case Rec_MY_COMMON_RECORD_CHECK:
|
||||
case Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT:
|
||||
case Rec_CHECK_OTHER_USR_COMMON_RECORD:
|
||||
case Rec_RECORD_LIST:
|
||||
case Rec_RECORD_PUBLIC:
|
||||
case Rec_RECORD_PRINT:
|
||||
case Rec_SHA_MY_RECORD_CHECK:
|
||||
case Rec_SHA_OTHER_USR_CHECK:
|
||||
case Rec_SHA_RECORD_LIST:
|
||||
case Rec_SHA_RECORD_PUBLIC:
|
||||
case Rec_SHA_RECORD_PRINT:
|
||||
ClassForm = "REC_DAT";
|
||||
break;
|
||||
}
|
||||
|
||||
Rec_RecordHelp[Rec_SHA_RECORD_LIST] = Rec_RecordListHelp[UsrDat->RoleInCurrentCrsDB];
|
||||
|
||||
PutFormLinks = !Gbl.Form.Inside && // Only if not inside another form
|
||||
Act_Actions[Gbl.Action.Act].BrowserWindow == Act_THIS_WINDOW; // Only in main window
|
||||
|
||||
|
@ -2076,9 +2112,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView,
|
|||
Gbl.Record.UsrDat = UsrDat;
|
||||
Gbl.Record.TypeOfView = TypeOfView;
|
||||
Lay_StartRoundFrameTable (StrRecordWidth,NULL,
|
||||
Rec_PutIconsCommands,
|
||||
TypeOfView == Rec_FORM_MY_COMMON_RECORD ? Hlp_PROFILE_Record :
|
||||
NULL,
|
||||
Rec_PutIconsCommands,Rec_RecordHelp[TypeOfView],
|
||||
2);
|
||||
|
||||
/***** Institution and user's photo *****/
|
||||
|
@ -2120,16 +2154,16 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView,
|
|||
/***** Start form *****/
|
||||
switch (TypeOfView)
|
||||
{
|
||||
case Rec_FORM_MY_COMMON_RECORD:
|
||||
case Rec_SHA_MY_RECORD_FORM:
|
||||
Act_FormStart (ActChgMyData);
|
||||
break;
|
||||
case Rec_FORM_NEW_RECORD_OTHER_NEW_USR:
|
||||
case Rec_SHA_OTHER_NEW_USR_FORM:
|
||||
Act_FormStart ( Gbl.Action.Act == ActReqMdfStd ? ActCreStd :
|
||||
(Gbl.Action.Act == ActReqMdfTch ? ActCreTch :
|
||||
ActCreOth));
|
||||
ID_PutParamOtherUsrIDPlain (); // New user
|
||||
break;
|
||||
case Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR:
|
||||
case Rec_SHA_OTHER_EXISTING_USR_FORM:
|
||||
Act_FormStart ( UsrDat->RoleInCurrentCrsDB == Rol_STUDENT ? ActUpdStd :
|
||||
(UsrDat->RoleInCurrentCrsDB == Rol_TEACHER ? ActUpdTch :
|
||||
ActUpdOth));
|
||||
|
@ -2203,17 +2237,17 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView,
|
|||
/***** Button and end form *****/
|
||||
switch (TypeOfView)
|
||||
{
|
||||
case Rec_FORM_MY_COMMON_RECORD:
|
||||
case Rec_SHA_MY_RECORD_FORM:
|
||||
Lay_PutConfirmButton (Txt_Save_changes);
|
||||
Act_FormEnd ();
|
||||
break;
|
||||
case Rec_FORM_NEW_RECORD_OTHER_NEW_USR:
|
||||
case Rec_SHA_OTHER_NEW_USR_FORM:
|
||||
if (Gbl.CurrentCrs.Grps.NumGrps) // This course has groups?
|
||||
Grp_ShowLstGrpsToChgOtherUsrsGrps (UsrDat->UsrCod);
|
||||
Lay_PutConfirmButton (Txt_Register);
|
||||
Act_FormEnd ();
|
||||
break;
|
||||
case Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR:
|
||||
case Rec_SHA_OTHER_EXISTING_USR_FORM:
|
||||
/***** Show list of groups to register/remove me/user *****/
|
||||
if (Gbl.CurrentCrs.Grps.NumGrps) // This course has groups?
|
||||
{
|
||||
|
@ -2562,10 +2596,10 @@ static void Rec_ShowCountryInHead (struct UsrData *UsrDat,bool ShowData)
|
|||
/*****************************************************************************/
|
||||
|
||||
static void Rec_ShowWebsAndSocialNets (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView)
|
||||
Rec_SharedRecordViewType_t TypeOfView)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C3_MID CENTER_TOP\">");
|
||||
if (TypeOfView != Rec_RECORD_PRINT)
|
||||
if (TypeOfView != Rec_SHA_RECORD_PRINT)
|
||||
Net_ShowWebsAndSocialNets (UsrDat);
|
||||
fprintf (Gbl.F.Out,"</td>");
|
||||
}
|
||||
|
@ -2625,7 +2659,7 @@ static void Rec_ShowUsrIDs (struct UsrData *UsrDat,const char *ClassForm)
|
|||
/*****************************************************************************/
|
||||
|
||||
static void Rec_ShowRole (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
const char *ClassForm)
|
||||
{
|
||||
extern const char *Usr_StringsSexDB[Usr_NUM_SEXS];
|
||||
|
@ -2633,10 +2667,10 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
extern const char *Txt_Sex;
|
||||
extern const char *Txt_SEX_SINGULAR_Abc[Usr_NUM_SEXS];
|
||||
extern const char *Txt_ROLES_SINGUL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
bool RoleForm = (TypeOfView == Rec_FORM_SIGN_UP ||
|
||||
TypeOfView == Rec_FORM_NEW_RECORD_OTHER_NEW_USR ||
|
||||
TypeOfView == Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR);
|
||||
bool SexForm = (TypeOfView == Rec_FORM_MY_COMMON_RECORD);
|
||||
bool RoleForm = (TypeOfView == Rec_SHA_SIGN_UP_FORM ||
|
||||
TypeOfView == Rec_SHA_OTHER_NEW_USR_FORM ||
|
||||
TypeOfView == Rec_SHA_OTHER_EXISTING_USR_FORM);
|
||||
bool SexForm = (TypeOfView == Rec_SHA_MY_RECORD_FORM);
|
||||
Rol_Role_t DefaultRoleInCurrentCrs;
|
||||
Rol_Role_t Role;
|
||||
Usr_Sex_t Sex;
|
||||
|
@ -2650,7 +2684,7 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
ClassForm,Txt_Role);
|
||||
switch (TypeOfView)
|
||||
{
|
||||
case Rec_FORM_SIGN_UP: // I want to apply for enrollment
|
||||
case Rec_SHA_SIGN_UP_FORM: // I want to apply for enrollment
|
||||
DefaultRoleInCurrentCrs = ((UsrDat->Roles & (1 << Rol_TEACHER)) || // I am teacher in other courses
|
||||
UsrDat->UsrCod == Gbl.CurrentCrs.Crs.RequesterUsrCod) ? // I am the creator of the course
|
||||
Rol_TEACHER :
|
||||
|
@ -2668,7 +2702,7 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
}
|
||||
fprintf (Gbl.F.Out,"</select>");
|
||||
break;
|
||||
case Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR: // The other user already exists in the platform
|
||||
case Rec_SHA_OTHER_EXISTING_USR_FORM: // The other user already exists in the platform
|
||||
fprintf (Gbl.F.Out,"<select name=\"Role\">");
|
||||
if (Gbl.CurrentCrs.Crs.CrsCod > 0) // Course selected
|
||||
{
|
||||
|
@ -2736,7 +2770,7 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
}
|
||||
fprintf (Gbl.F.Out,"</select>");
|
||||
break;
|
||||
case Rec_FORM_NEW_RECORD_OTHER_NEW_USR: // The other user does not exist in platform
|
||||
case Rec_SHA_OTHER_NEW_USR_FORM: // The other user does not exist in platform
|
||||
fprintf (Gbl.F.Out,"<select name=\"Role\">");
|
||||
if (Gbl.CurrentCrs.Crs.CrsCod > 0) // Course selected
|
||||
switch (Gbl.Usrs.Me.LoggedRole)
|
||||
|
@ -2812,10 +2846,10 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
"</td>"
|
||||
"</tr>",
|
||||
ClassForm,
|
||||
TypeOfView == Rec_MY_COMMON_RECORD_CHECK ? Txt_Sex :
|
||||
Txt_Role,
|
||||
TypeOfView == Rec_MY_COMMON_RECORD_CHECK ? Txt_SEX_SINGULAR_Abc[UsrDat->Sex] :
|
||||
Txt_ROLES_SINGUL_Abc[UsrDat->RoleInCurrentCrsDB][UsrDat->Sex]);
|
||||
TypeOfView == Rec_SHA_MY_RECORD_CHECK ? Txt_Sex :
|
||||
Txt_Role,
|
||||
TypeOfView == Rec_SHA_MY_RECORD_CHECK ? Txt_SEX_SINGULAR_Abc[UsrDat->Sex] :
|
||||
Txt_ROLES_SINGUL_Abc[UsrDat->RoleInCurrentCrsDB][UsrDat->Sex]);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -2823,7 +2857,7 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
/*****************************************************************************/
|
||||
|
||||
static void Rec_ShowSurname1 (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
bool DataForm,
|
||||
const char *ClassForm)
|
||||
{
|
||||
|
@ -2833,7 +2867,7 @@ static void Rec_ShowSurname1 (struct UsrData *UsrDat,
|
|||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s",
|
||||
ClassForm,Txt_Surname_1);
|
||||
if (TypeOfView == Rec_FORM_MY_COMMON_RECORD)
|
||||
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
|
||||
fprintf (Gbl.F.Out,"*");
|
||||
fprintf (Gbl.F.Out,":</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
|
||||
|
@ -2883,7 +2917,7 @@ static void Rec_ShowSurname2 (struct UsrData *UsrDat,
|
|||
/*****************************************************************************/
|
||||
|
||||
static void Rec_ShowFirstName (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
bool DataForm,
|
||||
const char *ClassForm)
|
||||
{
|
||||
|
@ -2893,7 +2927,7 @@ static void Rec_ShowFirstName (struct UsrData *UsrDat,
|
|||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s",
|
||||
ClassForm,Txt_First_name);
|
||||
if (TypeOfView == Rec_FORM_MY_COMMON_RECORD)
|
||||
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
|
||||
fprintf (Gbl.F.Out,"*");
|
||||
fprintf (Gbl.F.Out,":</td>"
|
||||
"<td colspan=\"2\""
|
||||
|
@ -2915,7 +2949,7 @@ static void Rec_ShowFirstName (struct UsrData *UsrDat,
|
|||
/*****************************************************************************/
|
||||
|
||||
static void Rec_ShowCountry (struct UsrData *UsrDat,
|
||||
Rec_RecordViewType_t TypeOfView,
|
||||
Rec_SharedRecordViewType_t TypeOfView,
|
||||
const char *ClassForm)
|
||||
{
|
||||
extern const char *Txt_Country;
|
||||
|
@ -2933,7 +2967,7 @@ static void Rec_ShowCountry (struct UsrData *UsrDat,
|
|||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s",
|
||||
ClassForm,Txt_Country);
|
||||
if (TypeOfView == Rec_FORM_MY_COMMON_RECORD)
|
||||
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
|
||||
fprintf (Gbl.F.Out,"*");
|
||||
fprintf (Gbl.F.Out,":</td>"
|
||||
"<td colspan=\"2\""
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#include "swad_user.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/***************************** Public constants ******************************/
|
||||
/*********************** Public constants and types **************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Rec_RECORD_WIDTH 560
|
||||
|
@ -45,24 +45,31 @@
|
|||
/******************************* Public types ********************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Rec_SHARED_NUM_VIEW_TYPES 9
|
||||
typedef enum
|
||||
{
|
||||
Rec_FORM_SIGN_UP,
|
||||
Rec_SHA_SIGN_UP_FORM,
|
||||
|
||||
Rec_FORM_MY_COMMON_RECORD,
|
||||
Rec_MY_COMMON_RECORD_CHECK,
|
||||
Rec_SHA_MY_RECORD_FORM,
|
||||
Rec_SHA_MY_RECORD_CHECK,
|
||||
|
||||
Rec_FORM_MODIFY_RECORD_OTHER_EXISTING_USR,
|
||||
Rec_FORM_NEW_RECORD_OTHER_NEW_USR,
|
||||
Rec_CHECK_OTHER_USR_COMMON_RECORD,
|
||||
Rec_SHA_OTHER_EXISTING_USR_FORM,
|
||||
Rec_SHA_OTHER_NEW_USR_FORM,
|
||||
Rec_SHA_OTHER_USR_CHECK,
|
||||
|
||||
Rec_FORM_MY_COURSE_RECORD_AS_STUDENT,
|
||||
Rec_CHECK_MY_COURSE_RECORD_AS_STUDENT,
|
||||
Rec_SHA_RECORD_LIST,
|
||||
Rec_SHA_RECORD_PRINT,
|
||||
Rec_SHA_RECORD_PUBLIC,
|
||||
} Rec_SharedRecordViewType_t;
|
||||
|
||||
Rec_RECORD_LIST,
|
||||
Rec_RECORD_PRINT,
|
||||
Rec_RECORD_PUBLIC,
|
||||
} Rec_RecordViewType_t;
|
||||
#define Rec_COURSE_NUM_VIEW_TYPES 4
|
||||
typedef enum
|
||||
{
|
||||
Rec_CRS_MY_RECORD_AS_STUDENT_FORM,
|
||||
Rec_CRS_MY_RECORD_AS_STUDENT_CHECK,
|
||||
Rec_CRS_RECORD_LIST,
|
||||
Rec_CRS_RECORD_PRINT,
|
||||
} Rec_CourseRecordViewType_t;
|
||||
|
||||
typedef enum {
|
||||
Rec_RECORD_USERS_UNKNOWN,
|
||||
|
@ -140,7 +147,7 @@ void Rec_ShowFormMyCommRecord (void);
|
|||
void Rec_ShowFormOtherNewCommonRecord (struct UsrData *UsrDat);
|
||||
void Rec_ShowMyCommonRecordUpd (void);
|
||||
void Rec_ShowCommonRecordUnmodifiable (struct UsrData *UsrDat);
|
||||
void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView,
|
||||
void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
|
||||
struct UsrData *UsrDat);
|
||||
|
||||
void Rec_UpdateMyRecord (void);
|
||||
|
|
|
@ -6715,6 +6715,7 @@ static void Usr_PutLinkToSeeGuests (void)
|
|||
|
||||
void Usr_SeeGuests (void)
|
||||
{
|
||||
extern const char *Hlp_USERS_Others_guests;
|
||||
extern const char *The_ClassForm[The_NUM_THEMES];
|
||||
extern const char *Txt_ROLES_PLURAL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
extern const char *Txt_Scope;
|
||||
|
@ -6754,7 +6755,7 @@ void Usr_SeeGuests (void)
|
|||
|
||||
/***** Start frame *****/
|
||||
Lay_StartRoundFrame (NULL,Txt_ROLES_PLURAL_Abc[Rol__GUEST_][Usr_SEX_UNKNOWN],
|
||||
Usr_PutIconsListGsts,NULL);
|
||||
Usr_PutIconsListGsts,Hlp_USERS_Others_guests);
|
||||
|
||||
/***** Form to select range of guests *****/
|
||||
switch (Gbl.Usrs.Me.LoggedRole)
|
||||
|
@ -6839,6 +6840,7 @@ void Usr_SeeGuests (void)
|
|||
|
||||
void Usr_SeeStudents (void)
|
||||
{
|
||||
extern const char *Hlp_USERS_Students;
|
||||
extern const char *The_ClassForm[The_NUM_THEMES];
|
||||
extern const char *Txt_ROLES_PLURAL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
extern const char *Txt_Scope;
|
||||
|
@ -6899,7 +6901,7 @@ void Usr_SeeStudents (void)
|
|||
|
||||
/***** Start frame *****/
|
||||
Lay_StartRoundFrame (NULL,Txt_ROLES_PLURAL_Abc[Rol_STUDENT][Usr_SEX_UNKNOWN],
|
||||
Usr_PutIconsListStds,NULL);
|
||||
Usr_PutIconsListStds,Hlp_USERS_Students);
|
||||
|
||||
/***** Form to select range of students *****/
|
||||
switch (Gbl.Usrs.Me.LoggedRole)
|
||||
|
@ -7007,6 +7009,7 @@ void Usr_SeeStudents (void)
|
|||
|
||||
void Usr_SeeTeachers (void)
|
||||
{
|
||||
extern const char *Hlp_USERS_Teachers;
|
||||
extern const char *The_ClassForm[The_NUM_THEMES];
|
||||
extern const char *Txt_ROLES_PLURAL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
extern const char *Txt_Scope;
|
||||
|
@ -7053,7 +7056,7 @@ void Usr_SeeTeachers (void)
|
|||
{
|
||||
/***** Start frame *****/
|
||||
Lay_StartRoundFrame (NULL,Txt_ROLES_PLURAL_Abc[Rol_TEACHER][Usr_SEX_UNKNOWN],
|
||||
Usr_PutIconsListTchs,NULL);
|
||||
Usr_PutIconsListTchs,Hlp_USERS_Teachers);
|
||||
|
||||
/***** Form to select scope *****/
|
||||
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
|
||||
|
|
Loading…
Reference in New Issue
Block a user