Version 23.79.8: Apr 30, 2024 Code refactoring in HTML related to checked field in forms.

This commit is contained in:
acanas 2024-04-30 11:00:46 +02:00
parent 58875fd855
commit bb910d6ee2
57 changed files with 581 additions and 588 deletions

View File

@ -39,18 +39,12 @@
/***************************** Public constants ******************************/
/*****************************************************************************/
const char *HTM_DisabledTxt[Cns_NUM_DISABLED_ENABLED] =
const char *HTM_DisabledTxt[Cns_NUM_DISABLED] =
{
[Cns_DISABLED] = " disabled=\"disabled\"",
[Cns_ENABLED ] = "",
};
const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED] =
{
[Cns_UNCHECKED] = "",
[Cns_CHECKED ] = " checked=\"checked\"",
};
/*****************************************************************************/
/**************************** Private constants ******************************/
/*****************************************************************************/
@ -1389,7 +1383,7 @@ void HTM_INPUT_PASSWORD (const char *Name,const char *PlaceHolder,
void HTM_INPUT_LONG (const char *Name,long Min,long Max,long Value,
HTM_SubmitOnChange_t SubmitOnChange,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Disabled_t Disabled,
const char *fmt,...)
{
va_list ap;
@ -1398,7 +1392,7 @@ void HTM_INPUT_LONG (const char *Name,long Min,long Max,long Value,
HTM_TxtF ("<input type=\"number\" name=\"%s\" min=\"%ld\" max=\"%ld\" value=\"%ld\"",
Name,Min,Max,Value);
if (DisabledOrEnabled == Cns_DISABLED)
if (Disabled == Cns_DISABLED)
HTM_Txt (" disabled=\"disabled\"");
if (fmt)
@ -1428,7 +1422,7 @@ void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
double Step, // Use 0 for "any"
double Value,
HTM_SubmitOnChange_t SubmitOnChange,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Disabled_t Disabled,
const char *fmt,...)
{
va_list ap;
@ -1446,7 +1440,7 @@ void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
HTM_TxtF (" step=\"%.15lg\"",Step);
HTM_TxtF (" value=\"%.15lg\"",Value);
Str_SetDecimalPointToLocal (); // Return to local system
if (DisabledOrEnabled == Cns_DISABLED)
if (Disabled == Cns_DISABLED)
HTM_Txt (" disabled=\"disabled\"");
if (fmt)
@ -1472,7 +1466,9 @@ void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
HTM_Txt (" />");
}
void HTM_INPUT_RADIO (const char *Name,HTM_SubmitOnClick_t SubmitOnClick,
void HTM_INPUT_RADIO (const char *Name,
Cns_Checked_t Checked,
HTM_SubmitOnClick_t SubmitOnClick,
const char *fmt,...)
{
va_list ap;
@ -1498,12 +1494,18 @@ void HTM_INPUT_RADIO (const char *Name,HTM_SubmitOnClick_t SubmitOnClick,
}
}
if (Checked == Cns_CHECKED)
HTM_Txt (" checked=\"checked\"");
if (SubmitOnClick == HTM_SUBMIT_ON_CLICK)
HTM_Txt (" onchange=\"this.form.submit();return false;\"");
HTM_Txt (" />");
}
void HTM_INPUT_CHECKBOX (const char *Name,HTM_SubmitOnChange_t SubmitOnChange,
void HTM_INPUT_CHECKBOX (const char *Name,
Cns_Checked_t Checked,
HTM_SubmitOnChange_t SubmitOnChange,
const char *fmt,...)
{
va_list ap;
@ -1529,6 +1531,9 @@ void HTM_INPUT_CHECKBOX (const char *Name,HTM_SubmitOnChange_t SubmitOnChange,
}
}
if (Checked == Cns_CHECKED)
HTM_Txt (" checked=\"checked\"");
if (SubmitOnChange == HTM_SUBMIT_ON_CHANGE)
HTM_Txt (" onchange=\"this.form.submit();return false;\"");

View File

@ -188,17 +188,21 @@ void HTM_INPUT_PASSWORD (const char *Name,const char *PlaceHolder,
const char *fmt,...);
void HTM_INPUT_LONG (const char *Name,long Min,long Max,long Value,
HTM_SubmitOnChange_t SubmitOnChange,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Disabled_t Disabled,
const char *fmt,...);
void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
double Step, // Use 0 for "any"
double Value,
HTM_SubmitOnChange_t SubmitOnChange,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Disabled_t Disabled,
const char *fmt,...);
void HTM_INPUT_RADIO (const char *Name,HTM_SubmitOnClick_t SubmitOnClick,
void HTM_INPUT_RADIO (const char *Name,
Cns_Checked_t Checked,
HTM_SubmitOnClick_t SubmitOnClick,
const char *fmt,...);
void HTM_INPUT_CHECKBOX (const char *Name,HTM_SubmitOnChange_t SubmitOnChange,
void HTM_INPUT_CHECKBOX (const char *Name,
Cns_Checked_t Checked,
HTM_SubmitOnChange_t SubmitOnChange,
const char *fmt,...);
void HTM_BUTTON_Submit_Begin (const char *Title,const char *fmt,...);

View File

@ -931,7 +931,7 @@ void Acc_RemoveMyAccount (void)
}
void Acc_CompletelyEliminateAccount (struct Usr_Data *UsrDat,
Cns_QuietOrVerbose_t QuietOrVerbose)
Cns_Verbose_t Verbose)
{
extern const char *Txt_THE_USER_X_has_been_removed_from_all_his_her_courses;
extern const char *Txt_THE_USER_X_has_been_removed_as_administrator;
@ -966,14 +966,14 @@ void Acc_CompletelyEliminateAccount (struct Usr_Data *UsrDat,
Set_DB_RemUsrFromAllCrssSettings (UsrDat->UsrCod);
Enr_DB_RemUsrFromAllCrss (UsrDat->UsrCod);
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
Ale_ShowAlert (Ale_SUCCESS,Txt_THE_USER_X_has_been_removed_from_all_his_her_courses,
UsrDat->FullName);
/***** Remove user as administrator of any degree/center/institution *****/
Adm_DB_RemUsrAsAdmin (UsrDat->UsrCod);
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
Ale_ShowAlert (Ale_SUCCESS,Txt_THE_USER_X_has_been_removed_as_administrator,
UsrDat->FullName);
@ -985,7 +985,7 @@ void Acc_CompletelyEliminateAccount (struct Usr_Data *UsrDat,
/***** Remove the file tree of a user *****/
Acc_RemoveUsrBriefcase (UsrDat);
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
Ale_ShowAlert (Ale_SUCCESS,Txt_Briefcase_of_THE_USER_X_has_been_removed,
UsrDat->FullName);
@ -1000,7 +1000,7 @@ void Acc_CompletelyEliminateAccount (struct Usr_Data *UsrDat,
/***** Delete user's messages sent and received *****/
Msg_DB_RemoveAllRecAndSntMsgsUsr (UsrDat->UsrCod);
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
Ale_ShowAlert (Ale_SUCCESS,Txt_Messages_of_THE_USER_X_have_been_deleted,
UsrDat->FullName);
@ -1040,7 +1040,7 @@ void Acc_CompletelyEliminateAccount (struct Usr_Data *UsrDat,
/***** Remove user's photo *****/
PhotoRemoved = Pho_RemovePhoto (UsrDat);
if (PhotoRemoved && QuietOrVerbose == Cns_VERBOSE)
if (PhotoRemoved && Verbose == Cns_VERBOSE)
Ale_ShowAlert (Ale_SUCCESS,Txt_Photo_of_THE_USER_X_has_been_removed,
UsrDat->FullName);
@ -1063,7 +1063,7 @@ void Acc_CompletelyEliminateAccount (struct Usr_Data *UsrDat,
/***** Remove user's data *****/
Usr_DB_RemoveUsrData (UsrDat->UsrCod);
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
Ale_ShowAlert (Ale_SUCCESS,Txt_Record_card_of_THE_USER_X_has_been_removed,
UsrDat->FullName);
}

View File

@ -66,7 +66,7 @@ Usr_Can_t Acc_CheckIfICanEliminateAccount (long UsrCod);
void Acc_AskIfRemoveMyAccount (void);
void Acc_RemoveMyAccount (void);
void Acc_CompletelyEliminateAccount (struct Usr_Data *UsrDat,
Cns_QuietOrVerbose_t QuietOrVerbose);
Cns_Verbose_t Verbose);
void Acc_PutIconToChangeUsrAccount (struct Usr_Data *UsrDat);

View File

@ -1303,10 +1303,9 @@ void Asg_ReqCreatOrEditAsg (void)
static void Asg_ShowLstGrpsToEditAssignment (long AsgCod)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Groups;
unsigned NumGrpTyp;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Get list of groups types and groups in this course *****/
Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_ONLY_GROUP_TYPES_WITH_GROUPS);
@ -1328,14 +1327,14 @@ static void Asg_ShowLstGrpsToEditAssignment (long AsgCod)
HTM_TD_Begin ("colspan=\"7\" class=\"LM DAT_%s\"",
The_GetSuffix ());
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = Grp_DB_CheckIfAssociatedToGrps ("asg_groups",
"AsgCod",
AsgCod) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\"%s"
" onclick=\"uncheckChildren(this,'GrpCods')\"",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = Grp_DB_CheckIfAssociatedToGrps ("asg_groups",
"AsgCod",
AsgCod) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\""
" onclick=\"uncheckChildren(this,'GrpCods')\"");
Grp_WriteTheWholeCourse ();
HTM_LABEL_End ();
HTM_TD_End ();

View File

@ -159,7 +159,7 @@ static void Att_ListUsrsAttendanceTable (struct Att_Events *Events,
static void Att_WriteTableHeadSeveralAttEvents (struct Att_Events *Events);
static void Att_WriteRowUsrSeveralAttEvents (const struct Att_Events *Events,
unsigned NumUsr,struct Usr_Data *UsrDat);
static void Att_PutCheckOrCross (Cns_UncheckedOrChecked_t UncheckedOrChecked);
static void Att_PutCheckOrCross (Cns_Checked_t Checked);
static void Att_ListStdsWithAttEventsDetails (struct Att_Events *Events,
unsigned NumUsrsInList,
long *LstSelectedUsrCods);
@ -1073,10 +1073,9 @@ void Att_ReqCreatOrEditEvent (void)
static void Att_ShowLstGrpsToEditEvent (long AttCod)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Groups;
unsigned NumGrpTyp;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Get list of groups types and groups in this course *****/
Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_ONLY_GROUP_TYPES_WITH_GROUPS);
@ -1099,14 +1098,14 @@ static void Att_ShowLstGrpsToEditEvent (long AttCod)
HTM_TD_Begin ("colspan=\"7\" class=\"LM DAT_%s\"",
The_GetSuffix ());
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = Grp_DB_CheckIfAssociatedToGrps ("att_groups",
Checked = Grp_DB_CheckIfAssociatedToGrps ("att_groups",
"AttCod",
AttCod) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\"%s"
" onclick=\"uncheckChildren(this,'GrpCods')\"",
HTM_CheckedTxt[UncheckedOrChecked]);
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\""
" onclick=\"uncheckChildren(this,'GrpCods')\"");
Grp_WriteTheWholeCourse ();
HTM_LABEL_End ();
HTM_TD_End ();
@ -1650,7 +1649,6 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
struct Usr_Data *UsrDat,
struct Att_Event *Event)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
static const char *ClassPhoto[PhoSha_NUM_SHAPES] =
{
[PhoSha_SHAPE_CIRCLE ] = "PHOTOC45x60",
@ -1659,7 +1657,7 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
[PhoSha_SHAPE_RECTANGLE] = "PHOTOR45x60",
};
bool Present;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
char CommentStd[Cns_MAX_BYTES_TEXT + 1];
char CommentTch[Cns_MAX_BYTES_TEXT + 1];
Usr_Can_t ICanChangeStdAttendance;
@ -1697,7 +1695,7 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
/***** Check if this student is already present in the current event *****/
Present = Att_CheckIfUsrIsPresentInEventAndGetComments (Event->AttCod,UsrDat->UsrCod,CommentStd,CommentTch);
UncheckedOrChecked = Present ? Cns_CHECKED :
Checked = Present ? Cns_CHECKED :
Cns_UNCHECKED;
/***** Begin table row *****/
@ -1706,16 +1704,15 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
/***** Icon to show if the user is already present *****/
HTM_TD_Begin ("class=\"BT %s\"",The_GetColorRows ());
HTM_LABEL_Begin ("for=\"Std%u\"",NumUsr);
Att_PutCheckOrCross (UncheckedOrChecked);
Att_PutCheckOrCross (Checked);
HTM_LABEL_End ();
HTM_TD_End ();
/***** Checkbox to select user *****/
HTM_TD_Begin ("class=\"CT %s\"",The_GetColorRows ());
HTM_INPUT_CHECKBOX ("UsrCodStd",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Std%u\" value=\"%s\"%s%s",
HTM_INPUT_CHECKBOX ("UsrCodStd",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Std%u\" value=\"%s\"%s",
NumUsr,UsrDat->EnUsrCod,
HTM_CheckedTxt[UncheckedOrChecked],
(ICanChangeStdAttendance == Usr_CAN) ? "" :
" disabled=\"disabled\"");
HTM_TD_End ();
@ -2447,7 +2444,7 @@ static void Att_GetListSelectedAttCods (struct Att_Events *Events)
for (NumAttEvent = 0;
NumAttEvent < Events->Num;
NumAttEvent++)
Events->Lst[NumAttEvent].UncheckedOrChecked = Cns_UNCHECKED;
Events->Lst[NumAttEvent].Checked = Cns_UNCHECKED;
/* Set some events as selected */
for (Ptr = Events->StrAttCodsSelected;
@ -2464,7 +2461,7 @@ static void Att_GetListSelectedAttCods (struct Att_Events *Events)
NumAttEvent++)
if (Events->Lst[NumAttEvent].AttCod == AttCod)
{
Events->Lst[NumAttEvent].UncheckedOrChecked = Cns_CHECKED;
Events->Lst[NumAttEvent].Checked = Cns_CHECKED;
break;
}
}
@ -2478,18 +2475,18 @@ static void Att_GetListSelectedAttCods (struct Att_Events *Events)
for (NumAttEvent = 0;
NumAttEvent < Events->Num;
NumAttEvent++)
Events->Lst[NumAttEvent].UncheckedOrChecked = Cns_CHECKED;
Events->Lst[NumAttEvent].Checked = Cns_CHECKED;
else // Course has groups and not all of them are selected
for (NumAttEvent = 0;
NumAttEvent < Events->Num;
NumAttEvent++)
{
/* Reset selection */
Events->Lst[NumAttEvent].UncheckedOrChecked = Cns_UNCHECKED;
Events->Lst[NumAttEvent].Checked = Cns_UNCHECKED;
/* Set this event as selected? */
if (Events->Lst[NumAttEvent].NumStdsFromList) // Some students attended to this event
Events->Lst[NumAttEvent].UncheckedOrChecked = Cns_CHECKED;
Events->Lst[NumAttEvent].Checked = Cns_CHECKED;
else // No students attended to this event
{
/***** Get groups associated to an attendance event from database *****/
@ -2498,7 +2495,7 @@ static void Att_GetListSelectedAttCods (struct Att_Events *Events)
/* Get groups associated to this event */
for (NumGrpInThisEvent = 0;
NumGrpInThisEvent < NumGrpsInThisEvent &&
Events->Lst[NumAttEvent].UncheckedOrChecked == Cns_UNCHECKED;
Events->Lst[NumAttEvent].Checked == Cns_UNCHECKED;
NumGrpInThisEvent++)
{
/* Get next group associated to this event */
@ -2506,13 +2503,13 @@ static void Att_GetListSelectedAttCods (struct Att_Events *Events)
/* Check if this group is selected */
for (NumGrpSel = 0;
NumGrpSel < Gbl.Crs.Grps.LstGrpsSel.NumGrps &&
Events->Lst[NumAttEvent].UncheckedOrChecked == Cns_UNCHECKED;
Events->Lst[NumAttEvent].Checked == Cns_UNCHECKED;
NumGrpSel++)
if (Gbl.Crs.Grps.LstGrpsSel.GrpCods[NumGrpSel] == GrpCodInThisEvent)
Events->Lst[NumAttEvent].UncheckedOrChecked = Cns_CHECKED;
Events->Lst[NumAttEvent].Checked = Cns_CHECKED;
}
else // This event is not associated to groups
Events->Lst[NumAttEvent].UncheckedOrChecked = Cns_CHECKED;
Events->Lst[NumAttEvent].Checked = Cns_CHECKED;
/***** Free structure that stores the query result *****/
DB_FreeMySQLResult (&mysql_res);
@ -2615,7 +2612,6 @@ static void Att_PutButtonToShowDetails (const struct Att_Events *Events)
static void Att_ListEventsToSelect (struct Att_Events *Events,
Att_TypeOfView_t TypeOfView)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Events;
extern const char *Txt_Event;
extern const char *Txt_ROLES_PLURAL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
@ -2671,10 +2667,10 @@ static void Att_ListEventsToSelect (struct Att_Events *Events,
HTM_TD_Begin ("class=\"CT DAT_%s %s\"",
The_GetSuffix (),
The_GetColorRows ());
HTM_INPUT_CHECKBOX ("AttCods",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Event%u\" value=\"%ld\"%s",
NumAttEvent,Events->Event.AttCod,
HTM_CheckedTxt[Events->Lst[NumAttEvent].UncheckedOrChecked]);
HTM_INPUT_CHECKBOX ("AttCods",Events->Lst[NumAttEvent].Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Event%u\" value=\"%ld\"",
NumAttEvent,Events->Event.AttCod);
HTM_TD_End ();
HTM_TD_Begin ("class=\"RT DAT_%s %s\"",
@ -2814,7 +2810,7 @@ static void Att_ListUsrsAttendanceTable (struct Att_Events *Events,
for (NumAttEvent = 0, Total = 0;
NumAttEvent < Events->Num;
NumAttEvent++)
if (Events->Lst[NumAttEvent].UncheckedOrChecked == Cns_CHECKED)
if (Events->Lst[NumAttEvent].Checked == Cns_CHECKED)
{
HTM_TD_LINE_TOP_Unsigned (Events->Lst[NumAttEvent].NumStdsFromList);
Total += Events->Lst[NumAttEvent].NumStdsFromList;
@ -2859,7 +2855,7 @@ static void Att_WriteTableHeadSeveralAttEvents (struct Att_Events *Events)
for (NumAttEvent = 0;
NumAttEvent < Events->Num;
NumAttEvent++)
if (Events->Lst[NumAttEvent].UncheckedOrChecked == Cns_CHECKED)
if (Events->Lst[NumAttEvent].Checked == Cns_CHECKED)
{
/***** Get data of this attendance event *****/
Events->Event.AttCod = Events->Lst[NumAttEvent].AttCod;
@ -2895,7 +2891,7 @@ static void Att_WriteRowUsrSeveralAttEvents (const struct Att_Events *Events,
};
unsigned NumAttEvent;
bool Present;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
unsigned NumTimesPresent;
/***** Write number of user in the list *****/
@ -2943,18 +2939,18 @@ static void Att_WriteRowUsrSeveralAttEvents (const struct Att_Events *Events,
for (NumAttEvent = 0, NumTimesPresent = 0;
NumAttEvent < Events->Num;
NumAttEvent++)
if (Events->Lst[NumAttEvent].UncheckedOrChecked == Cns_CHECKED)
if (Events->Lst[NumAttEvent].Checked == Cns_CHECKED)
{
/* Check if this student is already registered in the current event */
// Here it is not necessary to get comments
Present = Att_CheckIfUsrIsPresentInEvent (Events->Lst[NumAttEvent].AttCod,
UsrDat->UsrCod);
UncheckedOrChecked = Present ? Cns_CHECKED :
Checked = Present ? Cns_CHECKED :
Cns_UNCHECKED;
/* Write check or cross */
HTM_TD_Begin ("class=\"BM %s\"",The_GetColorRows ());
Att_PutCheckOrCross (UncheckedOrChecked);
Att_PutCheckOrCross (Checked);
HTM_TD_End ();
if (Present)
@ -2976,31 +2972,31 @@ static void Att_WriteRowUsrSeveralAttEvents (const struct Att_Events *Events,
/*********************** Put check or cross character ************************/
/*****************************************************************************/
static void Att_PutCheckOrCross (Cns_UncheckedOrChecked_t UncheckedOrChecked)
static void Att_PutCheckOrCross (Cns_Checked_t Checked)
{
extern const char *Txt_Present;
extern const char *Txt_Absent;
static const char *Class[Cns_NUM_UNCHECKED_CHECKED] =
static const char *Class[Cns_NUM_CHECKED] =
{
[Cns_UNCHECKED] = "ATT_CROSS",
[Cns_CHECKED ] = "ATT_CHECK",
};
static const char **Title[Cns_NUM_UNCHECKED_CHECKED] =
static const char **Title[Cns_NUM_CHECKED] =
{
[Cns_UNCHECKED] = &Txt_Absent,
[Cns_CHECKED ] = &Txt_Present,
};
static const char *Txt[Cns_NUM_UNCHECKED_CHECKED] =
static const char *Txt[Cns_NUM_CHECKED] =
{
[Cns_UNCHECKED] = "&cross;",
[Cns_CHECKED ] = "&check;",
};
HTM_DIV_Begin ("class=\"%s %s_%s\" title=\"%s\"",
Class[UncheckedOrChecked],
Class[UncheckedOrChecked],The_GetSuffix (),
*Title[UncheckedOrChecked]);
HTM_Txt (Txt[UncheckedOrChecked]);
Class[Checked],
Class[Checked],The_GetSuffix (),
*Title[Checked]);
HTM_Txt (Txt[Checked]);
HTM_DIV_End ();
}
@ -3077,7 +3073,7 @@ static void Att_ListAttEventsForAStd (struct Att_Events *Events,
unsigned UniqueId;
char *Id;
bool Present;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
bool ShowCommentStd;
bool ShowCommentTch;
char CommentStd[Cns_MAX_BYTES_TEXT + 1];
@ -3137,7 +3133,7 @@ static void Att_ListAttEventsForAStd (struct Att_Events *Events,
for (NumAttEvent = 0, UniqueId = 1;
NumAttEvent < Events->Num;
NumAttEvent++, UniqueId++)
if (Events->Lst[NumAttEvent].UncheckedOrChecked == Cns_CHECKED)
if (Events->Lst[NumAttEvent].Checked == Cns_CHECKED)
{
/***** Get data of the attendance event from database *****/
Events->Event.AttCod = Events->Lst[NumAttEvent].AttCod;
@ -3146,7 +3142,7 @@ static void Att_ListAttEventsForAStd (struct Att_Events *Events,
/***** Get comments for this student *****/
Present = Att_CheckIfUsrIsPresentInEventAndGetComments (Events->Event.AttCod,UsrDat->UsrCod,CommentStd,CommentTch);
UncheckedOrChecked = Present ? Cns_CHECKED :
Checked = Present ? Cns_CHECKED :
Cns_UNCHECKED;
ShowCommentStd = CommentStd[0];
ShowCommentTch = CommentTch[0] &&
@ -3167,7 +3163,7 @@ static void Att_ListAttEventsForAStd (struct Att_Events *Events,
HTM_TD_End ();
HTM_TD_Begin ("class=\"BT %s\"",The_GetColorRows ());
Att_PutCheckOrCross (UncheckedOrChecked);
Att_PutCheckOrCross (Checked);
HTM_TD_End ();
HTM_TD_Begin ("class=\"LT DAT_%s %s\"",

View File

@ -70,7 +70,7 @@ struct Att_Events
{
long AttCod; // Attendance event code
unsigned NumStdsFromList; // Number of students (taken from a list) who has assisted to the event
Cns_UncheckedOrChecked_t UncheckedOrChecked; // Do I have selected this attendance event?
Cns_Checked_t Checked; // Do I have selected this attendance event?
} *Lst; // List of attendance events
Dat_StartEndTime_t SelectedOrder;
struct Att_Event Event; // Selected/current event

View File

@ -2883,12 +2883,11 @@ void Brw_PutLegalNotice (void)
static void Brw_FormToChangeCrsGrpZone (void)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Par_CodeStr[Par_NUM_PAR_COD];
struct ListCodGrps LstMyGrps;
unsigned NumGrp;
struct GroupData GrpDat;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Get list of groups to show *****/
if (Gbl.Crs.Grps.NumGrps) // This course has groups?
@ -2907,11 +2906,11 @@ static void Brw_FormToChangeCrsGrpZone (void)
Brw_TypeIsCrsBrw[Gbl.FileBrowser.Type] ? "BROWSER_TITLE" :
"BROWSER_TITLE_LIGHT");
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = Brw_TypeIsCrsBrw[Gbl.FileBrowser.Type] ? Cns_CHECKED :
Checked = Brw_TypeIsCrsBrw[Gbl.FileBrowser.Type] ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],HTM_SUBMIT_ON_CLICK,
"value=\"-1\"%s",
HTM_CheckedTxt[UncheckedOrChecked]);
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],Checked,
HTM_SUBMIT_ON_CLICK,
"value=\"-1\"");
HTM_Txt (Gbl.Hierarchy.Node[Hie_CRS].FullName);
HTM_LABEL_End ();
HTM_LI_End ();
@ -2938,12 +2937,12 @@ static void Brw_FormToChangeCrsGrpZone (void)
NULL,
"class=\"ICO25x25\" style=\"margin-left:6px;\"");
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = (Brw_TypeIsGrpBrw[Gbl.FileBrowser.Type] &&
GrpDat.GrpCod == Gbl.Crs.Grps.GrpCod) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],HTM_SUBMIT_ON_CLICK,
"value=\"%ld\"%s",
GrpDat.GrpCod,HTM_CheckedTxt[UncheckedOrChecked]);
Checked = (Brw_TypeIsGrpBrw[Gbl.FileBrowser.Type] &&
GrpDat.GrpCod == Gbl.Crs.Grps.GrpCod) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],Checked,
HTM_SUBMIT_ON_CLICK,
"value=\"%ld\"",GrpDat.GrpCod);
HTM_TxtF ("%s&nbsp;%s",GrpDat.GrpTypName,GrpDat.GrpName);
HTM_LABEL_End ();
HTM_LI_End ();

View File

@ -633,11 +633,14 @@ Me sale este error, no s
"can npt create received message (duplicated entry '243218-2160773' for key 'UsrCod_MsgCod')
*/
#define Log_PLATFORM_VERSION "SWAD 23.79.5 (2024-04-26)"
#define Log_PLATFORM_VERSION "SWAD 23.79.8 (2024-04-30)"
#define CSS_FILE "swad23.67.2.css"
#define JS_FILE "swad23.79.js"
/*
Version 23.79.5: Apr 26, 2024 Code refactoring in HTML related to checked field in forms. (335739 lines)
Version 23.79.8: Apr 30, 2024 Code refactoring in HTML related to checked field in forms. (335817 lines)
Version 23.79.7: Apr 29, 2024 Code refactoring in HTML related to checked field in forms. (335855 lines)
Version 23.79.6: Apr 26, 2024 Code refactoring in HTML related to checked field in forms. (335848 lines)
Version 23.79.5: Apr 26, 2024 Code refactoring in HTML related to checked field in forms. (335826 lines)
Version 23.79.4: Apr 25, 2024 Code refactoring in HTML related to checked field in forms. (335739 lines)
Version 23.79.3: Apr 24, 2024 Code refactoring in HTML related to disabled field in forms. (335766 lines)
Version 23.79.2: Apr 24, 2024 Code refactoring in HTML related to disabled field in forms. (335766 lines)

View File

@ -100,20 +100,20 @@ typedef enum
{
Cns_QUIET,
Cns_VERBOSE,
} Cns_QuietOrVerbose_t;
} Cns_Verbose_t;
#define Cns_NUM_UNCHECKED_CHECKED 2
#define Cns_NUM_CHECKED 2
typedef enum
{
Cns_UNCHECKED,
Cns_CHECKED,
} Cns_UncheckedOrChecked_t;
} Cns_Checked_t;
#define Cns_NUM_DISABLED_ENABLED 2
#define Cns_NUM_DISABLED 2
typedef enum
{
Cns_DISABLED,
Cns_ENABLED,
} Cns_DisabledOrEnabled_t;
} Cns_Disabled_t;
#endif

View File

@ -63,10 +63,9 @@ static void Coo_PutIconsCookies (__attribute__((unused)) void *Args);
void Coo_EditMyPrefsOnCookies (void)
{
extern const char *Hlp_PROFILE_Settings_cookies;
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Cookies;
extern const char *Txt_Accept_third_party_cookies_to_view_multimedia_content_from_other_websites;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Begin section with preferences about cookies *****/
HTM_SECTION_Begin (Coo_COOKIES_ID);
@ -94,11 +93,10 @@ void Coo_EditMyPrefsOnCookies (void)
/* Check box */
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = (Gbl.Usrs.Me.UsrDat.Prefs.RefuseAcceptCookies == Coo_ACCEPT) ? Cns_CHECKED :
Checked = (Gbl.Usrs.Me.UsrDat.Prefs.RefuseAcceptCookies == Coo_ACCEPT) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("cookies",HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
HTM_CheckedTxt[UncheckedOrChecked]);
HTM_INPUT_CHECKBOX ("cookies",Checked,HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_Txt (Txt_Accept_third_party_cookies_to_view_multimedia_content_from_other_websites);
HTM_LABEL_End ();

View File

@ -287,10 +287,9 @@ void Dat_ResetHour (struct Dat_Hour *Hour)
void Dat_PutBoxToSelectDateFormat (void)
{
extern const char *Hlp_PROFILE_Settings_dates;
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Dates;
Dat_Format_t Format;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Begin box *****/
Box_BoxBegin (Txt_Dates,Dat_PutIconsDateFormat,NULL,
@ -313,12 +312,10 @@ void Dat_PutBoxToSelectDateFormat (void)
HTM_LI_Begin ("class=\"DAT_%s\"",
The_GetSuffix ());
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = (Format == Gbl.Prefs.DateFormat) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("DateFormat",HTM_SUBMIT_ON_CLICK,
" value=\"%u\"%s",
(unsigned) Format,
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = (Format == Gbl.Prefs.DateFormat) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("DateFormat",Checked,HTM_SUBMIT_ON_CLICK,
" value=\"%u\"",(unsigned) Format);
Dat_PutSpanDateFormat (Format);
Dat_PutScriptDateFormat (Format);
HTM_LABEL_End ();
@ -990,9 +987,9 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
const char *Id,
struct Dat_Date *DateSelected,
HTM_SubmitOnChange_t SubmitOnChange,
Cns_DisabledOrEnabled_t DisabledOrEnabled)
Cns_Disabled_t Disabled)
{
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED_ENABLED];
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
extern const char *Txt_MONTHS_SMALL[12];
char *FuncOnChange;
unsigned Year;
@ -1008,7 +1005,7 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
"id=\"%sYear\" name=\"%sYear\""
" class=\"INPUT_%s\"%s",
Id,Id,The_GetSuffix (),
HTM_DisabledTxt[DisabledOrEnabled]);
HTM_DisabledTxt[Disabled]);
HTM_OPTION (HTM_Type_STRING,"0",
HTM_OPTION_UNSELECTED,
HTM_OPTION_ENABLED,
@ -1028,7 +1025,7 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
"id=\"%sMonth\" name=\"%sMonth\""
" class=\"INPUT_%s\"%s",
Id,Id,The_GetSuffix (),
HTM_DisabledTxt[DisabledOrEnabled]);
HTM_DisabledTxt[Disabled]);
HTM_OPTION (HTM_Type_STRING,"0",
HTM_OPTION_UNSELECTED,
HTM_OPTION_ENABLED,
@ -1050,7 +1047,7 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
"id=\"%sDay\" name=\"%sDay\""
" class=\"INPUT_%s\"%s",
Id,Id,The_GetSuffix (),
HTM_DisabledTxt[DisabledOrEnabled]);
HTM_DisabledTxt[Disabled]);
HTM_OPTION (HTM_Type_STRING,"0",
HTM_OPTION_UNSELECTED,
HTM_OPTION_ENABLED,

View File

@ -195,7 +195,7 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
const char *Id,
struct Dat_Date *DateSelected,
HTM_SubmitOnChange_t SubmitOnChange,
Cns_DisabledOrEnabled_t DisabledOrEnabled);
Cns_Disabled_t Disabled);
void Dat_GetDateFromForm (const char *ParNameDay,const char *ParNameMonth,const char *ParNameYear,
unsigned *Day,unsigned *Month,unsigned *Year);

View File

@ -113,19 +113,19 @@ static void Enr_PutActionsRegRemSeveralUsrs (void);
static void Enr_ReceiveUsrsCrs (Rol_Role_t Role);
static void Enr_PutActionModifyOneUsr (Cns_UncheckedOrChecked_t *UncheckedOrChecked,
static void Enr_PutActionModifyOneUsr (Cns_Checked_t *Checked,
Usr_Belong_t UsrBelongsToCrs,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRegOneDegAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked);
static void Enr_PutActionRegOneCtrAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked);
static void Enr_PutActionRegOneInsAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked);
static void Enr_PutActionRepUsrAsDup (Cns_UncheckedOrChecked_t *UncheckedOrChecked);
static void Enr_PutActionRemUsrFromCrs (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAsDegAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAsCtrAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAsInsAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAcc (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRegOneDegAdm (Cns_Checked_t *Checked);
static void Enr_PutActionRegOneCtrAdm (Cns_Checked_t *Checked);
static void Enr_PutActionRegOneInsAdm (Cns_Checked_t *Checked);
static void Enr_PutActionRepUsrAsDup (Cns_Checked_t *Checked);
static void Enr_PutActionRemUsrFromCrs (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAsDegAdm (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAsCtrAdm (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAsInsAdm (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther);
static void Enr_PutActionRemUsrAcc (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther);
static void Enr_RegRemOneUsrActionBegin (Enr_RegRemOneUsrAction_t RegRemOneUsrAction,
Cns_UncheckedOrChecked_t *UncheckedOrChecked);
Cns_Checked_t *Checked);
static void Enr_RegRemOneUsrActionEnd (void);
static void Enr_RegisterUsr (struct Usr_Data *UsrDat,Rol_Role_t RegRemRole,
@ -151,7 +151,7 @@ static void Enr_AskIfRemoveUsrFromCrs (struct Usr_Data *UsrDat);
static void Enr_EffectivelyRemUsrFromCrs (struct Usr_Data *UsrDat,
struct Hie_Node *Crs,
Enr_RemoveUsrProduction_t RemoveUsrWorks,
Cns_QuietOrVerbose_t QuietOrVerbose);
Cns_Verbose_t Verbose);
static FigCch_FigureCached_t Enr_GetFigureNumUsrsInCrss (unsigned Roles);
@ -803,7 +803,6 @@ static void Enr_PutAreaToEnterUsrsIDs (void)
static void Enr_PutActionsRegRemSeveralUsrs (void)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Register_the_users_indicated_in_step_1;
extern const char *Txt_Remove_the_users_indicated_in_step_1;
extern const char *Txt_Remove_the_users_not_indicated_in_step_1;
@ -818,17 +817,18 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
{
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("RegRemAction",HTM_DONT_SUBMIT_ON_CLICK,
" value=\"%u\"%s",
(unsigned) Enr_REGISTER_SPECIFIED_USRS_IN_CRS,
HTM_CheckedTxt[Cns_CHECKED]);
HTM_INPUT_RADIO ("RegRemAction",Cns_CHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
" value=\"%u\"",
(unsigned) Enr_REGISTER_SPECIFIED_USRS_IN_CRS);
HTM_Txt (Txt_Register_the_users_indicated_in_step_1);
HTM_LABEL_End ();
HTM_LI_End ();
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("RegRemAction",HTM_DONT_SUBMIT_ON_CLICK,
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
" value=\"%u\"",
(unsigned) Enr_REMOVE_SPECIFIED_USRS_FROM_CRS);
HTM_Txt (Txt_Remove_the_users_indicated_in_step_1);
@ -837,7 +837,8 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("RegRemAction",HTM_DONT_SUBMIT_ON_CLICK,
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
" value=\"%u\"",
(unsigned) Enr_REMOVE_NOT_SPECIFIED_USRS_FROM_CRS);
HTM_Txt (Txt_Remove_the_users_not_indicated_in_step_1);
@ -846,7 +847,8 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("RegRemAction",HTM_DONT_SUBMIT_ON_CLICK,
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
" value=\"%u\"",
(unsigned) Enr_UPDATE_USRS_IN_CRS);
HTM_Txt (Txt_Register_the_users_indicated_in_step_1_and_remove_the_users_not_indicated);
@ -859,7 +861,8 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
{
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("RegRemAction",HTM_DONT_SUBMIT_ON_CLICK,
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
" value=\"%u\"",
(unsigned) Enr_ELIMINATE_USRS_FROM_PLATFORM);
HTM_Txt (Txt_Eliminate_from_the_platform_the_users_indicated_in_step_1);
@ -1321,7 +1324,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
bool UsrIsDegAdmin = false;
bool UsrIsCtrAdmin = false;
bool UsrIsInsAdmin = false;
Cns_UncheckedOrChecked_t UncheckedOrChecked = Cns_UNCHECKED;
Cns_Checked_t Checked = Cns_UNCHECKED;
/***** Check if the other user belongs to the current course *****/
if (Gbl.Hierarchy.Level == Hie_CRS)
@ -1352,7 +1355,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
/***** Register user in course / Modify user's data *****/
if (Gbl.Hierarchy.Level == Hie_CRS && Gbl.Usrs.Me.Role.Logged >= Rol_STD)
{
Enr_PutActionModifyOneUsr (&UncheckedOrChecked,UsrBelongsToCrs,MeOrOther);
Enr_PutActionModifyOneUsr (&Checked,UsrBelongsToCrs,MeOrOther);
OptionsShown = true;
}
@ -1364,14 +1367,14 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
/***** Register user as administrator of degree *****/
if (!UsrIsDegAdmin && Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
{
Enr_PutActionRegOneDegAdm (&UncheckedOrChecked);
Enr_PutActionRegOneDegAdm (&Checked);
OptionsShown = true;
}
/***** Register user as administrator of center *****/
if (!UsrIsCtrAdmin && Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
{
Enr_PutActionRegOneCtrAdm (&UncheckedOrChecked);
Enr_PutActionRegOneCtrAdm (&Checked);
OptionsShown = true;
}
}
@ -1379,7 +1382,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
/***** Register user as administrator of institution *****/
if (!UsrIsInsAdmin && Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
{
Enr_PutActionRegOneInsAdm (&UncheckedOrChecked);
Enr_PutActionRegOneInsAdm (&Checked);
OptionsShown = true;
}
}
@ -1387,14 +1390,14 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
/***** Report user as possible duplicate *****/
if (MeOrOther == Usr_OTHER && Gbl.Usrs.Me.Role.Logged >= Rol_TCH)
{
Enr_PutActionRepUsrAsDup (&UncheckedOrChecked);
Enr_PutActionRepUsrAsDup (&Checked);
OptionsShown = true;
}
/***** Remove user from the course *****/
if (UsrBelongsToCrs == Usr_BELONG)
{
Enr_PutActionRemUsrFromCrs (&UncheckedOrChecked,MeOrOther);
Enr_PutActionRemUsrFromCrs (&Checked,MeOrOther);
OptionsShown = true;
}
@ -1407,7 +1410,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
if (UsrIsDegAdmin &&
(MeOrOther == Usr_ME || Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM))
{
Enr_PutActionRemUsrAsDegAdm (&UncheckedOrChecked,MeOrOther);
Enr_PutActionRemUsrAsDegAdm (&Checked,MeOrOther);
OptionsShown = true;
}
@ -1415,7 +1418,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
if (UsrIsCtrAdmin &&
(MeOrOther == Usr_ME || Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM))
{
Enr_PutActionRemUsrAsCtrAdm (&UncheckedOrChecked,MeOrOther);
Enr_PutActionRemUsrAsCtrAdm (&Checked,MeOrOther);
OptionsShown = true;
}
}
@ -1424,7 +1427,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
if (UsrIsInsAdmin &&
(MeOrOther == Usr_ME || Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM))
{
Enr_PutActionRemUsrAsInsAdm (&UncheckedOrChecked,MeOrOther);
Enr_PutActionRemUsrAsInsAdm (&Checked,MeOrOther);
OptionsShown = true;
}
}
@ -1432,7 +1435,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
/***** Eliminate user completely from platform *****/
if (Acc_CheckIfICanEliminateAccount (Gbl.Usrs.Other.UsrDat.UsrCod) == Usr_CAN)
{
Enr_PutActionRemUsrAcc (&UncheckedOrChecked,MeOrOther);
Enr_PutActionRemUsrAcc (&Checked,MeOrOther);
OptionsShown = true;
}
@ -1446,7 +1449,7 @@ bool Enr_PutActionsRegRemOneUsr (Usr_MeOrOther_t MeOrOther)
/**************** Put action to modify user in current course ****************/
/*****************************************************************************/
static void Enr_PutActionModifyOneUsr (Cns_UncheckedOrChecked_t *UncheckedOrChecked,
static void Enr_PutActionModifyOneUsr (Cns_Checked_t *Checked,
Usr_Belong_t UsrBelongsToCrs,Usr_MeOrOther_t MeOrOther)
{
extern const char *Txt_Register_me_in_X;
@ -1461,7 +1464,7 @@ static void Enr_PutActionModifyOneUsr (Cns_UncheckedOrChecked_t *UncheckedOrChec
[Usr_BELONG ][Usr_OTHER] = Txt_Modify_user_in_the_course_X,
};
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_MODIFY_ONE_USR_IN_CRS,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_MODIFY_ONE_USR_IN_CRS,Checked);
HTM_TxtF (Txt[UsrBelongsToCrs][MeOrOther],
Gbl.Hierarchy.Node[Hie_CRS].ShrtName);
Enr_RegRemOneUsrActionEnd ();
@ -1471,11 +1474,11 @@ static void Enr_PutActionModifyOneUsr (Cns_UncheckedOrChecked_t *UncheckedOrChec
/**************** Put action to register user as degree admin ****************/
/*****************************************************************************/
static void Enr_PutActionRegOneDegAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked)
static void Enr_PutActionRegOneDegAdm (Cns_Checked_t *Checked)
{
extern const char *Txt_Register_USER_as_an_administrator_of_the_degree_X;
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_ONE_DEG_ADMIN,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_ONE_DEG_ADMIN,Checked);
HTM_TxtF (Txt_Register_USER_as_an_administrator_of_the_degree_X,
Gbl.Hierarchy.Node[Hie_DEG].ShrtName);
Enr_RegRemOneUsrActionEnd ();
@ -1485,11 +1488,11 @@ static void Enr_PutActionRegOneDegAdm (Cns_UncheckedOrChecked_t *UncheckedOrChec
/**************** Put action to register user as center admin ****************/
/*****************************************************************************/
static void Enr_PutActionRegOneCtrAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked)
static void Enr_PutActionRegOneCtrAdm (Cns_Checked_t *Checked)
{
extern const char *Txt_Register_USER_as_an_administrator_of_the_center_X;
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_ONE_CTR_ADMIN,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_ONE_CTR_ADMIN,Checked);
HTM_TxtF (Txt_Register_USER_as_an_administrator_of_the_center_X,
Gbl.Hierarchy.Node[Hie_CTR].ShrtName);
Enr_RegRemOneUsrActionEnd ();
@ -1499,11 +1502,11 @@ static void Enr_PutActionRegOneCtrAdm (Cns_UncheckedOrChecked_t *UncheckedOrChec
/************* Put action to register user as institution admin **************/
/*****************************************************************************/
static void Enr_PutActionRegOneInsAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked)
static void Enr_PutActionRegOneInsAdm (Cns_Checked_t *Checked)
{
extern const char *Txt_Register_USER_as_an_administrator_of_the_institution_X;
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_ONE_INS_ADMIN,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REGISTER_ONE_INS_ADMIN,Checked);
HTM_TxtF (Txt_Register_USER_as_an_administrator_of_the_institution_X,
Gbl.Hierarchy.Node[Hie_INS].ShrtName);
Enr_RegRemOneUsrActionEnd ();
@ -1513,11 +1516,11 @@ static void Enr_PutActionRegOneInsAdm (Cns_UncheckedOrChecked_t *UncheckedOrChec
/****************** Put action to report user as duplicate *******************/
/*****************************************************************************/
static void Enr_PutActionRepUsrAsDup (Cns_UncheckedOrChecked_t *UncheckedOrChecked)
static void Enr_PutActionRepUsrAsDup (Cns_Checked_t *Checked)
{
extern const char *Txt_Report_possible_duplicate_user;
Enr_RegRemOneUsrActionBegin (Enr_REPORT_USR_AS_POSSIBLE_DUPLICATE,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REPORT_USR_AS_POSSIBLE_DUPLICATE,Checked);
HTM_Txt (Txt_Report_possible_duplicate_user);
Enr_RegRemOneUsrActionEnd ();
}
@ -1526,7 +1529,7 @@ static void Enr_PutActionRepUsrAsDup (Cns_UncheckedOrChecked_t *UncheckedOrCheck
/****************** Put action to remove user from course ********************/
/*****************************************************************************/
static void Enr_PutActionRemUsrFromCrs (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther)
static void Enr_PutActionRemUsrFromCrs (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther)
{
extern const char *Txt_Remove_me_from_THE_COURSE_X;
extern const char *Txt_Remove_USER_from_THE_COURSE_X;
@ -1536,7 +1539,7 @@ static void Enr_PutActionRemUsrFromCrs (Cns_UncheckedOrChecked_t *UncheckedOrChe
[Usr_OTHER] = Txt_Remove_USER_from_THE_COURSE_X,
};
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_USR_FROM_CRS,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_USR_FROM_CRS,Checked);
HTM_TxtF (Txt[MeOrOther],Gbl.Hierarchy.Node[Hie_CRS].ShrtName);
Enr_RegRemOneUsrActionEnd ();
}
@ -1545,7 +1548,7 @@ static void Enr_PutActionRemUsrFromCrs (Cns_UncheckedOrChecked_t *UncheckedOrChe
/***************** Put action to remove user as degree admin *****************/
/*****************************************************************************/
static void Enr_PutActionRemUsrAsDegAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther)
static void Enr_PutActionRemUsrAsDegAdm (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther)
{
extern const char *Txt_Remove_me_as_an_administrator_of_the_degree_X;
extern const char *Txt_Remove_USER_as_an_administrator_of_the_degree_X;
@ -1555,7 +1558,7 @@ static void Enr_PutActionRemUsrAsDegAdm (Cns_UncheckedOrChecked_t *UncheckedOrCh
[Usr_OTHER] = Txt_Remove_USER_as_an_administrator_of_the_degree_X,
};
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_DEG_ADMIN,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_DEG_ADMIN,Checked);
HTM_TxtF (Txt[MeOrOther],Gbl.Hierarchy.Node[Hie_DEG].ShrtName);
Enr_RegRemOneUsrActionEnd ();
}
@ -1564,7 +1567,7 @@ static void Enr_PutActionRemUsrAsDegAdm (Cns_UncheckedOrChecked_t *UncheckedOrCh
/***************** Put action to remove user as center admin *****************/
/*****************************************************************************/
static void Enr_PutActionRemUsrAsCtrAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther)
static void Enr_PutActionRemUsrAsCtrAdm (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther)
{
extern const char *Txt_Remove_me_as_an_administrator_of_the_center_X;
extern const char *Txt_Remove_USER_as_an_administrator_of_the_center_X;
@ -1574,7 +1577,7 @@ static void Enr_PutActionRemUsrAsCtrAdm (Cns_UncheckedOrChecked_t *UncheckedOrCh
[Usr_OTHER] = Txt_Remove_USER_as_an_administrator_of_the_center_X,
};
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_CTR_ADMIN,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_CTR_ADMIN,Checked);
HTM_TxtF (Txt[MeOrOther],Gbl.Hierarchy.Node[Hie_CTR].ShrtName);
Enr_RegRemOneUsrActionEnd ();
}
@ -1583,7 +1586,7 @@ static void Enr_PutActionRemUsrAsCtrAdm (Cns_UncheckedOrChecked_t *UncheckedOrCh
/************** Put action to remove user as institution admin ***************/
/*****************************************************************************/
static void Enr_PutActionRemUsrAsInsAdm (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther)
static void Enr_PutActionRemUsrAsInsAdm (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther)
{
extern const char *Txt_Remove_me_as_an_administrator_of_the_institution_X;
extern const char *Txt_Remove_USER_as_an_administrator_of_the_institution_X;
@ -1593,7 +1596,7 @@ static void Enr_PutActionRemUsrAsInsAdm (Cns_UncheckedOrChecked_t *UncheckedOrCh
[Usr_OTHER] = Txt_Remove_USER_as_an_administrator_of_the_institution_X,
};
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_INS_ADMIN,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_REMOVE_ONE_INS_ADMIN,Checked);
HTM_TxtF (Txt[MeOrOther],Gbl.Hierarchy.Node[Hie_INS].ShrtName);
Enr_RegRemOneUsrActionEnd ();
}
@ -1602,7 +1605,7 @@ static void Enr_PutActionRemUsrAsInsAdm (Cns_UncheckedOrChecked_t *UncheckedOrCh
/********************* Put action to remove user account *********************/
/*****************************************************************************/
static void Enr_PutActionRemUsrAcc (Cns_UncheckedOrChecked_t *UncheckedOrChecked,Usr_MeOrOther_t MeOrOther)
static void Enr_PutActionRemUsrAcc (Cns_Checked_t *Checked,Usr_MeOrOther_t MeOrOther)
{
extern const char *Txt_Eliminate_my_user_account;
extern const char *Txt_Eliminate_user_account;
@ -1612,7 +1615,7 @@ static void Enr_PutActionRemUsrAcc (Cns_UncheckedOrChecked_t *UncheckedOrChecked
[Usr_OTHER] = Txt_Eliminate_user_account,
};
Enr_RegRemOneUsrActionBegin (Enr_ELIMINATE_ONE_USR_FROM_PLATFORM,UncheckedOrChecked);
Enr_RegRemOneUsrActionBegin (Enr_ELIMINATE_ONE_USR_FROM_PLATFORM,Checked);
HTM_Txt (Txt[MeOrOther]);
Enr_RegRemOneUsrActionEnd ();
}
@ -1622,20 +1625,17 @@ static void Enr_PutActionRemUsrAcc (Cns_UncheckedOrChecked_t *UncheckedOrChecked
/*****************************************************************************/
static void Enr_RegRemOneUsrActionBegin (Enr_RegRemOneUsrAction_t RegRemOneUsrAction,
Cns_UncheckedOrChecked_t *UncheckedOrChecked)
Cns_Checked_t *Checked)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
Cns_UncheckedOrChecked_t ThisUncheckedOrChecked = (*UncheckedOrChecked == Cns_CHECKED) ? Cns_UNCHECKED :
Cns_CHECKED;
Cns_Checked_t ThisChecked = (*Checked == Cns_CHECKED) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("RegRemAction",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",
(unsigned) RegRemOneUsrAction,
HTM_CheckedTxt[ThisUncheckedOrChecked]);
HTM_INPUT_RADIO ("RegRemAction",ThisChecked,HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"",(unsigned) RegRemOneUsrAction);
*UncheckedOrChecked = Cns_CHECKED;
*Checked = Cns_CHECKED;
}
static void Enr_RegRemOneUsrActionEnd (void)
@ -3167,7 +3167,7 @@ static void Enr_AskIfRemoveUsrFromCrs (struct Usr_Data *UsrDat)
static void Enr_EffectivelyRemUsrFromCrs (struct Usr_Data *UsrDat,
struct Hie_Node *Crs,
Enr_RemoveUsrProduction_t RemoveUsrWorks,
Cns_QuietOrVerbose_t QuietOrVerbose)
Cns_Verbose_t Verbose)
{
extern const char *Txt_THE_USER_X_has_been_removed_from_the_course_Y;
@ -3244,14 +3244,14 @@ static void Enr_EffectivelyRemUsrFromCrs (struct Usr_Data *UsrDat,
break;
}
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
Ale_CreateAlert (Ale_SUCCESS,NULL,
Txt_THE_USER_X_has_been_removed_from_the_course_Y,
UsrDat->FullName,Crs->FullName);
break;
case Usr_DONT_BELONG: // User does not belong to course
default:
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
Ale_CreateAlertUserNotFoundOrYouDoNotHavePermission ();
break;
}

View File

@ -829,7 +829,7 @@ void Exa_GetListSelectedExaCods (struct Exa_Exams *Exams)
for (NumExam = 0;
NumExam < Exams->Num;
NumExam++)
Exams->Lst[NumExam].UncheckedOrChecked = Cns_UNCHECKED;
Exams->Lst[NumExam].Checked = Cns_UNCHECKED;
Exams->NumSelected = 0;
/* Set some exams as selected */
@ -847,7 +847,7 @@ void Exa_GetListSelectedExaCods (struct Exa_Exams *Exams)
NumExam++)
if (Exams->Lst[NumExam].ExaCod == ExaCod)
{
Exams->Lst[NumExam].UncheckedOrChecked = Cns_CHECKED;
Exams->Lst[NumExam].Checked = Cns_CHECKED;
Exams->NumSelected++;
break;
}
@ -859,7 +859,7 @@ void Exa_GetListSelectedExaCods (struct Exa_Exams *Exams)
for (NumExam = 0;
NumExam < Exams->Num;
NumExam++)
Exams->Lst[NumExam].UncheckedOrChecked = Cns_CHECKED;
Exams->Lst[NumExam].Checked = Cns_CHECKED;
Exams->NumSelected = Exams->Num;
}
}

View File

@ -840,11 +840,15 @@ static void ExaPrn_WriteChoAnsToFill (const struct ExaPrn_Print *Print,
unsigned QstInd,
struct Qst_Question *Question)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
unsigned NumOpt;
unsigned Indexes[Qst_MAX_OPTIONS_PER_QUESTION]; // Indexes of all answers of this question
Cns_UncheckedOrChecked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
Cns_Checked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
char Id[3 + Cns_MAX_DECIMAL_DIGITS_UINT + 1]; // "Ansxx...x"
static const char *CheckedTxt[Cns_NUM_CHECKED] =
{
[Cns_UNCHECKED] = "",
[Cns_CHECKED ] = " checked=\"checked\"",
};
/***** Change format of answers text *****/
Qst_ChangeFormatAnswersText (Question);
@ -876,7 +880,7 @@ static void ExaPrn_WriteChoAnsToFill (const struct ExaPrn_Print *Print,
Question->Answer.Type == Qst_ANS_UNIQUE_CHOICE ? "radio" :
"checkbox",
Id,NumOpt,Indexes[NumOpt],
HTM_CheckedTxt[UsrAnswers[Indexes[NumOpt]]]);
CheckedTxt[UsrAnswers[Indexes[NumOpt]]]);
ExaPrn_WriteJSToUpdateExamPrint (Print,QstInd,Id,(int) NumOpt);
HTM_Txt (" />");
HTM_TD_End ();

View File

@ -554,7 +554,6 @@ static void ExaRes_ShowResultsEnd (void)
static void ExaRes_ListExamsToSelect (struct Exa_Exams *Exams)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Par_CodeStr[Par_NUM_PAR_COD];
extern const char *Txt_Exams;
extern const char *Txt_Exam;
@ -598,10 +597,11 @@ static void ExaRes_ListExamsToSelect (struct Exa_Exams *Exams)
HTM_TD_Begin ("class=\"CT DAT_%s %s\"",
The_GetSuffix (),
The_GetColorRows ());
HTM_INPUT_CHECKBOX (Par_CodeStr[ParCod_Exa],HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Gam%u\" value=\"%ld\"%s",
NumExam,Exams->Lst[NumExam].ExaCod,
HTM_CheckedTxt[Exams->Lst[NumExam].UncheckedOrChecked]);
HTM_INPUT_CHECKBOX (Par_CodeStr[ParCod_Exa],
Exams->Lst[NumExam].Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Gam%u\" value=\"%ld\"",
NumExam,Exams->Lst[NumExam].ExaCod);
HTM_TD_End ();
HTM_TD_Begin ("class=\"RT DAT_%s %s\"",
@ -718,7 +718,7 @@ static void ExaRes_BuildExamsSelectedCommas (struct Exa_Exams *Exams,
for (NumExam = 0;
NumExam < Exams->Num;
NumExam++)
if (Exams->Lst[NumExam].UncheckedOrChecked == Cns_CHECKED)
if (Exams->Lst[NumExam].Checked == Cns_CHECKED)
{
sprintf (LongStr,"%ld",Exams->Lst[NumExam].ExaCod);
if ((*ExamsSelectedCommas)[0])

View File

@ -983,10 +983,9 @@ static void ExaSes_ParsFormSession (void *Session)
static void ExaSes_ShowLstGrpsToCreateSession (long SesCod)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Groups;
unsigned NumGrpTyp;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Get list of groups types and groups in this course *****/
Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_ONLY_GROUP_TYPES_WITH_GROUPS);
@ -1009,14 +1008,14 @@ static void ExaSes_ShowLstGrpsToCreateSession (long SesCod)
HTM_TD_Begin ("colspan=\"7\" class=\"LM DAT_%s\"",
The_GetSuffix ());
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = Grp_DB_CheckIfAssociatedToGrps ("exa_groups",
"SesCod",
SesCod) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\"%s"
" onclick=\"uncheckChildren(this,'GrpCods')\"",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = Grp_DB_CheckIfAssociatedToGrps ("exa_groups",
"SesCod",
SesCod) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\""
" onclick=\"uncheckChildren(this,'GrpCods')\"");
Grp_WriteTheWholeCourse ();
HTM_LABEL_End ();
HTM_TD_End ();

View File

@ -72,7 +72,7 @@ typedef enum
struct Exa_ExamSelected
{
long ExaCod; // Exam code
Cns_UncheckedOrChecked_t UncheckedOrChecked; // Is this exam selected when seeing match results?
Cns_Checked_t Checked; // Is this exam selected when seeing match results?
};
struct Exa_Exam

View File

@ -910,17 +910,17 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
extern const char *Txt_FORUM_Post_banned;
extern const char *Txt_FORUM_Post_X_banned;
extern const char *Txt_This_post_has_been_banned_probably_for_not_satisfy_the_rules_of_the_forums;
static const char *Icon[Cns_NUM_DISABLED_ENABLED] =
static const char *Icon[Cns_NUM_DISABLED] =
{
[Cns_DISABLED] = "eye-slash.svg",
[Cns_ENABLED ] = "eye.svg",
};
static Ico_Color_t Color[Cns_NUM_DISABLED_ENABLED] =
static Ico_Color_t Color[Cns_NUM_DISABLED] =
{
[Cns_DISABLED] = Ico_RED,
[Cns_ENABLED ] = Ico_GREEN,
};
static const char **TxtAllowedBanned[Cns_NUM_DISABLED_ENABLED] =
static const char **TxtAllowedBanned[Cns_NUM_DISABLED] =
{
[Cns_DISABLED] = &Txt_FORUM_Post_X_banned,
[Cns_ENABLED ] = &Txt_FORUM_Post_X_allowed,
@ -931,7 +931,7 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
char Subject[Cns_MAX_BYTES_SUBJECT + 1];
char Content[Cns_MAX_BYTES_LONG_TEXT + 1];
struct Med_Media Media;
Cns_DisabledOrEnabled_t DisabledOrEnabled;
Cns_Disabled_t Disabled;
char *Title;
Act_Action_t NextAction;
@ -942,13 +942,13 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
Med_MediaConstructor (&Media);
/***** Check if post is enabled *****/
DisabledOrEnabled = For_DB_GetIfPstIsDisabledOrEnabled (Forums->PstCod);
Disabled = For_DB_GetIfPstIsDisabledOrEnabled (Forums->PstCod);
/***** Get data of post *****/
For_GetPstData (Forums->PstCod,&UsrDat.UsrCod,&CreatTimeUTC,
Subject,OriginalContent,&Media);
if (DisabledOrEnabled == Cns_ENABLED)
if (Disabled == Cns_ENABLED)
/* Return this subject as last subject */
Str_Copy (LastSubject,Subject,Cns_MAX_BYTES_SUBJECT);
@ -984,7 +984,7 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
NewPst ? "MSG_BG_NEW" :
"MSG_BG",
The_GetSuffix ());
switch (DisabledOrEnabled)
switch (Disabled)
{
case Cns_DISABLED:
HTM_TxtF ("[%s]",Txt_FORUM_Post_banned);
@ -1008,18 +1008,18 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
switch (ICanModerateForum)
{
case Usr_CAN:
NextAction = DisabledOrEnabled == Cns_ENABLED ? For_ActionsDisPstFor[Forums->Forum.Type] :
NextAction = Disabled == Cns_ENABLED ? For_ActionsDisPstFor[Forums->Forum.Type] :
For_ActionsEnbPstFor[Forums->Forum.Type];
Frm_BeginFormAnchor (NextAction,For_FORUM_POSTS_SECTION_ID);
For_PutParsForum (Forums);
Ico_PutIconLink (Icon[DisabledOrEnabled],Color[DisabledOrEnabled],NextAction);
Ico_PutIconLink (Icon[Disabled],Color[Disabled],NextAction);
Frm_EndForm ();
break;
case Usr_CAN_NOT:
default:
if (asprintf (&Title,*TxtAllowedBanned[DisabledOrEnabled],PstNum) < 0)
if (asprintf (&Title,*TxtAllowedBanned[Disabled],PstNum) < 0)
Err_NotEnoughMemoryExit ();
Ico_PutIcon (Icon[DisabledOrEnabled],Color[DisabledOrEnabled],Title,
Ico_PutIcon (Icon[Disabled],Color[Disabled],Title,
"ICO_HIDDEN ICO16x16");
free (Title);
break;
@ -1042,15 +1042,15 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat,
Usr_DONT_GET_PREFS,
Usr_DONT_GET_ROLE_IN_CRS);
Usr_WriteAuthor (&UsrDat,DisabledOrEnabled);
if (DisabledOrEnabled == Cns_ENABLED)
Usr_WriteAuthor (&UsrDat,Disabled);
if (Disabled == Cns_ENABLED)
/* Write number of posts from this user */
For_WriteNumberOfPosts (Forums,UsrDat.UsrCod);
HTM_TD_End ();
/***** Write post content *****/
HTM_TD_Begin ("class=\"LT MSG_TXT_%s\"",The_GetSuffix ());
switch (DisabledOrEnabled)
switch (Disabled)
{
case Cns_DISABLED:
HTM_Txt (Txt_This_post_has_been_banned_probably_for_not_satisfy_the_rules_of_the_forums);
@ -1432,10 +1432,9 @@ static void For_PutIconsForums (__attribute__((unused)) void *Args)
static void For_PutFormWhichForums (const struct For_Forums *Forums)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_FORUM_WHICH_FORUM[For_NUM_FORUM_SETS];
For_ForumSet_t ForumSet;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Form to select which forums I want to see:
- all my forums
@ -1451,12 +1450,10 @@ static void For_PutFormWhichForums (const struct For_Forums *Forums)
{
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = (ForumSet == Forums->ForumSet) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_INPUT_RADIO ("ForumSet",HTM_SUBMIT_ON_CLICK,
"value=\"%u\"%s",
(unsigned) ForumSet,
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = (ForumSet == Forums->ForumSet) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_INPUT_RADIO ("ForumSet",Checked,HTM_SUBMIT_ON_CLICK,
"value=\"%u\"",(unsigned) ForumSet);
HTM_Txt (Txt_FORUM_WHICH_FORUM[ForumSet]);
HTM_LABEL_End ();
HTM_LI_End ();

View File

@ -77,7 +77,7 @@ struct For_Thread
long PstCod[Dat_NUM_START_END_TIME];
long UsrCod[Dat_NUM_START_END_TIME];
time_t WriteTime[Dat_NUM_START_END_TIME];
Cns_DisabledOrEnabled_t Enabled[Dat_NUM_START_END_TIME];
Cns_Disabled_t Enabled[Dat_NUM_START_END_TIME];
char Subject[Cns_MAX_BYTES_SUBJECT + 1];
unsigned NumPosts;
unsigned NumUnreadPosts; // Number of my unread posts in thread

View File

@ -969,7 +969,7 @@ void For_DB_InsertPstIntoDisabled (long PstCod)
/*********************** Get if a forum post is disabled *********************/
/*****************************************************************************/
Cns_DisabledOrEnabled_t For_DB_GetIfPstIsDisabledOrEnabled (long PstCod)
Cns_Disabled_t For_DB_GetIfPstIsDisabledOrEnabled (long PstCod)
{
/***** Trivial check: post code should be > 0 *****/
if (PstCod <= 0)

View File

@ -98,7 +98,7 @@ void For_DB_RemoveExpiredClipboards (void);
//--------------------------- Disabled posts ----------------------------------
void For_DB_InsertPstIntoDisabled (long PstCod);
Cns_DisabledOrEnabled_t For_DB_GetIfPstIsDisabledOrEnabled (long PstCod);
Cns_Disabled_t For_DB_GetIfPstIsDisabledOrEnabled (long PstCod);
void For_DB_RemovePstFromDisabled (long PstCod);
void For_DB_RemoveDisabledPstsInThread (long ThrCod);

View File

@ -908,7 +908,7 @@ void Gam_GetListSelectedGamCods (struct Gam_Games *Games)
for (NumGame = 0;
NumGame < Games->Num;
NumGame++)
Games->Lst[NumGame].UncheckedOrChecked = Cns_UNCHECKED;
Games->Lst[NumGame].Checked = Cns_UNCHECKED;
/* Set some games as selected */
for (Ptr = Games->GamCodsSelected;
@ -925,7 +925,7 @@ void Gam_GetListSelectedGamCods (struct Gam_Games *Games)
NumGame++)
if (Games->Lst[NumGame].GamCod == GamCod)
{
Games->Lst[NumGame].UncheckedOrChecked = Cns_CHECKED;
Games->Lst[NumGame].Checked = Cns_CHECKED;
Games->NumSelected++;
break;
}
@ -937,7 +937,7 @@ void Gam_GetListSelectedGamCods (struct Gam_Games *Games)
for (NumGame = 0;
NumGame < Games->Num;
NumGame++)
Games->Lst[NumGame].UncheckedOrChecked = Cns_CHECKED;
Games->Lst[NumGame].Checked = Cns_CHECKED;
Games->NumSelected = Games->Num;
}
}

View File

@ -66,7 +66,7 @@ typedef enum
struct Gam_GameSelected
{
long GamCod; // Game code
Cns_UncheckedOrChecked_t UncheckedOrChecked; // Is this game selected when seeing match results?
Cns_Checked_t Checked; // Is this game selected when seeing match results?
};
struct Gam_Game

View File

@ -409,10 +409,9 @@ void Grp_ShowFormToSelectSeveralGroups (Act_Action_t NextAction,
static void Grp_PutCheckboxAllGrps (void)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_All_groups;
Usr_Can_t ICanSelUnselGroup;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
switch (Gbl.Usrs.Me.Role.Logged)
{
@ -430,12 +429,11 @@ static void Grp_PutCheckboxAllGrps (void)
HTM_DIV_Begin ("class=\"CONTEXT_OPT\"");
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
UncheckedOrChecked = (ICanSelUnselGroup == Usr_CAN &&
Checked = (ICanSelUnselGroup == Usr_CAN &&
Gbl.Crs.Grps.AllGrps) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_INPUT_CHECKBOX ("AllGroups",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s%s",
HTM_CheckedTxt[UncheckedOrChecked],
HTM_INPUT_CHECKBOX ("AllGroups",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
(ICanSelUnselGroup == Usr_CAN) ? " onclick=\"togglecheckChildren(this,'GrpCods')\"" :
" disabled=\"disabled\"");
HTM_NBSPTxt (Txt_All_groups);
@ -627,7 +625,7 @@ void Grp_ChangeMyGrpsAndShowChanges (void)
/****************************** Change my groups *****************************/
/*****************************************************************************/
void Grp_ChangeMyGrps (Cns_QuietOrVerbose_t QuietOrVerbose)
void Grp_ChangeMyGrps (Cns_Verbose_t Verbose)
{
extern const char *Txt_The_requested_group_changes_were_successful;
extern const char *Txt_There_has_been_no_change_in_groups;
@ -665,7 +663,7 @@ void Grp_ChangeMyGrps (Cns_QuietOrVerbose_t QuietOrVerbose)
if (MySelectionIsValid)
{
ChangesMade = Grp_ChangeMyGrpsAtomically (&LstGrpsIWant);
if (QuietOrVerbose == Cns_VERBOSE)
if (Verbose == Cns_VERBOSE)
{
if (ChangesMade)
Ale_CreateAlert (Ale_SUCCESS,NULL,
@ -675,7 +673,7 @@ void Grp_ChangeMyGrps (Cns_QuietOrVerbose_t QuietOrVerbose)
Txt_There_has_been_no_change_in_groups);
}
}
else if (QuietOrVerbose == Cns_VERBOSE)
else if (Verbose == Cns_VERBOSE)
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_In_a_type_of_group_with_single_enrolment_students_can_not_be_registered_in_more_than_one_group);
@ -1635,7 +1633,6 @@ void Grp_ListGrpsToEditAsgAttSvyEvtMch (struct GroupType *GrpTyp,
Grp_WhichIsAssociatedToGrp_t WhichIsAssociatedToGrp,
long Cod) // Assignment, attendance event, survey, exam event or match
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
static const struct
{
const char *Table;
@ -1652,7 +1649,7 @@ void Grp_ListGrpsToEditAsgAttSvyEvtMch (struct GroupType *GrpTyp,
unsigned NumGrpThisType;
bool IBelongToThisGroup;
struct Group *Grp;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Write heading *****/
Grp_WriteGrpHead (GrpTyp);
@ -1669,23 +1666,22 @@ void Grp_ListGrpsToEditAsgAttSvyEvtMch (struct GroupType *GrpTyp,
Grp = &(GrpTyp->LstGrps[NumGrpThisType]);
IBelongToThisGroup = Grp_CheckIfGrpIsInList (Grp->GrpCod,&LstGrpsIBelong);
UncheckedOrChecked = Cns_UNCHECKED;
Checked = Cns_UNCHECKED;
if (Cod > 0) // Cod == -1L means new item, assignment, event, survey, exam event or match
if (Grp_DB_CheckIfAssociatedToGrp (AssociationsToGrps[WhichIsAssociatedToGrp].Table,
AssociationsToGrps[WhichIsAssociatedToGrp].Field,
Cod,Grp->GrpCod))
UncheckedOrChecked = Cns_CHECKED;
Checked = Cns_CHECKED;
/* Put checkbox to select the group */
HTM_TR_Begin (NULL);
HTM_TD_Begin (IBelongToThisGroup ? "class=\"LM BG_HIGHLIGHT\"" :
"class=\"LM\"");
HTM_INPUT_CHECKBOX ("GrpCods",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s%s"
HTM_INPUT_CHECKBOX ("GrpCods",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s"
" onclick=\"uncheckParent(this,'WholeCrs')\"",
Grp->GrpCod,Grp->GrpCod,
HTM_CheckedTxt[UncheckedOrChecked],
(IBelongToThisGroup ||
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) ? "" :
" disabled=\"disabled\"");
@ -1849,7 +1845,6 @@ static void Grp_ShowWarningToStdsToChangeGrps (void)
static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
unsigned *NumGrpsThisTypeIBelong)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
struct ListCodGrps LstGrpsIBelong;
unsigned NumGrpThisType;
struct Group *Grp;
@ -1857,7 +1852,7 @@ static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
bool IBelongToAClosedGroup;
Usr_Can_t ICanChangeMySelectionForThisGrpTyp;
Usr_Can_t ICanChangeMySelectionForThisGrp;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
char StrGrpCod[32];
/***** Write heading *****/
@ -1974,7 +1969,7 @@ static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
HTM_TD_Begin (IBelongToThisGroup ? "class=\"LM BG_HIGHLIGHT\"" :
"class=\"LM\"");
UncheckedOrChecked = IBelongToThisGroup ? Cns_CHECKED :
Checked = IBelongToThisGroup ? Cns_CHECKED :
Cns_UNCHECKED;
snprintf (StrGrpCod,sizeof (StrGrpCod),"GrpCod%ld",GrpTyp->GrpTypCod);
if (Gbl.Usrs.Me.Role.Logged == Rol_STD && // If I am a student
@ -1983,19 +1978,17 @@ static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
{
/* Put a radio item */
if (GrpTyp->MandatoryEnrolment)
HTM_INPUT_RADIO (StrGrpCod,HTM_DONT_SUBMIT_ON_CLICK,
"id=\"Grp%ld\" value=\"%ld\"%s%s",
HTM_INPUT_RADIO (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CLICK,
"id=\"Grp%ld\" value=\"%ld\"%s",
Grp->GrpCod,Grp->GrpCod,
HTM_CheckedTxt[UncheckedOrChecked], // Group selected?
ICanChangeMySelectionForThisGrp == Usr_CAN ? "" :
IBelongToThisGroup ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
" disabled=\"disabled\""); // I can not register
else // If the enrolment is not mandatory, I can select no groups
HTM_INPUT_RADIO (StrGrpCod,HTM_DONT_SUBMIT_ON_CLICK,
"id=\"Grp%ld\" value=\"%ld\"%s%s"
HTM_INPUT_RADIO (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CLICK,
"id=\"Grp%ld\" value=\"%ld\"%s"
" onclick=\"selectUnselectRadio(this,this.form.GrpCod%ld,%u)\"",
Grp->GrpCod,Grp->GrpCod,
HTM_CheckedTxt[UncheckedOrChecked], // Group selected?
ICanChangeMySelectionForThisGrp == Usr_CAN ? "" :
IBelongToThisGroup ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
" disabled=\"disabled\"", // I can not register
@ -2003,10 +1996,9 @@ static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
}
else
/* Put a checkbox item */
HTM_INPUT_CHECKBOX (StrGrpCod,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s%s",
HTM_INPUT_CHECKBOX (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s",
Grp->GrpCod,Grp->GrpCod,
HTM_CheckedTxt[UncheckedOrChecked], // Group selected?
ICanChangeMySelectionForThisGrp == Usr_CAN ? "" :
IBelongToThisGroup ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
" disabled=\"disabled\""); // I can not register
@ -2066,11 +2058,10 @@ void Grp_ShowLstGrpsToChgOtherUsrsGrps (long UsrCod)
static void Grp_ListGrpsToAddOrRemUsrs (struct GroupType *GrpTyp,long UsrCod)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
struct ListCodGrps LstGrpsUsrBelongs;
unsigned NumGrpThisType;
bool UsrBelongsToThisGroup;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
struct Group *Grp;
char StrGrpCod[32];
@ -2101,13 +2092,12 @@ static void Grp_ListGrpsToAddOrRemUsrs (struct GroupType *GrpTyp,long UsrCod)
/* Put checkbox to select the group */
// Always checkbox, not radio, because the role in the form may be teacher,
// so if he/she is registered as teacher, he/she can belong to several groups
UncheckedOrChecked = UsrBelongsToThisGroup ? Cns_CHECKED :
Cns_UNCHECKED;
snprintf (StrGrpCod,sizeof (StrGrpCod),"GrpCod%ld",GrpTyp->GrpTypCod);
HTM_INPUT_CHECKBOX (StrGrpCod,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s",
Grp->GrpCod,Grp->GrpCod,
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = UsrBelongsToThisGroup ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"",
Grp->GrpCod,Grp->GrpCod);
/* End cell for checkbox */
HTM_TD_End ();
@ -2131,14 +2121,15 @@ static void Grp_ListGrpsToAddOrRemUsrs (struct GroupType *GrpTyp,long UsrCod)
static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
extern const char *Txt_users_with_no_group;
unsigned NumGrpThisType;
unsigned NumGrpSel;
struct ListCodGrps LstGrpsIBelong;
bool IBelongToThisGroup;
Usr_Can_t ICanSelUnselGroup;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
Cns_Disabled_t Disabled;
struct Group *Grp;
Rol_Role_t Role;
@ -2185,14 +2176,14 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
/* This group should be checked? */
if (Gbl.Crs.Grps.AllGrps)
UncheckedOrChecked = Cns_CHECKED;
Checked = Cns_CHECKED;
else
for (NumGrpSel = 0, UncheckedOrChecked = Cns_UNCHECKED;
for (NumGrpSel = 0, Checked = Cns_UNCHECKED;
NumGrpSel < Gbl.Crs.Grps.LstGrpsSel.NumGrps;
NumGrpSel++)
if (Gbl.Crs.Grps.LstGrpsSel.GrpCods[NumGrpSel] == Grp->GrpCod)
{
UncheckedOrChecked = Cns_CHECKED;
Checked = Cns_CHECKED;
break;
}
@ -2201,12 +2192,11 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
HTM_TD_Begin (IBelongToThisGroup ? "class=\"LM BG_HIGHLIGHT\"" :
"class=\"LM\"");
HTM_INPUT_CHECKBOX ("GrpCods",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s%s",
HTM_INPUT_CHECKBOX ("GrpCods",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s",
Grp->GrpCod,Grp->GrpCod,
HTM_CheckedTxt[UncheckedOrChecked],
ICanSelUnselGroup == Usr_CAN ? " onclick=\"checkParent(this,'AllGroups')\"" :
" disabled=\"disabled\"");
HTM_DisabledTxt[Cns_DISABLED]);
HTM_TD_End ();
Grp_WriteRowGrp (Grp,IBelongToThisGroup ? Lay_HIGHLIGHT :
@ -2227,32 +2217,33 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
{
case Usr_CAN:
if (Gbl.Crs.Grps.AllGrps)
UncheckedOrChecked = Cns_CHECKED;
Checked = Cns_CHECKED;
else
for (NumGrpSel = 0, UncheckedOrChecked = Cns_UNCHECKED;
for (NumGrpSel = 0, Checked = Cns_UNCHECKED;
NumGrpSel < Gbl.Crs.Grps.LstGrpsSel.NumGrps;
NumGrpSel++)
if (Gbl.Crs.Grps.LstGrpsSel.GrpCods[NumGrpSel] == -(GrpTyp->GrpTypCod))
{
UncheckedOrChecked = Cns_CHECKED;
Checked = Cns_CHECKED;
break;
}
break;
case Usr_CAN_NOT:
default:
UncheckedOrChecked = Cns_UNCHECKED;
Checked = Cns_UNCHECKED;
break;
}
HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"LM\"");
HTM_INPUT_CHECKBOX ("GrpCods",HTM_DONT_SUBMIT_ON_CHANGE,
Disabled = (ICanSelUnselGroup == Usr_CAN_NOT) ? Cns_DISABLED :
Cns_ENABLED;
HTM_INPUT_CHECKBOX ("GrpCods",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Grp%ld\" value=\"%ld\"%s"
" onclick=\"checkParent(this,'AllGroups')\"",
-GrpTyp->GrpTypCod,-GrpTyp->GrpTypCod,
ICanSelUnselGroup == Usr_CAN ? HTM_CheckedTxt[UncheckedOrChecked] :
" disabled=\"disabled\"");
HTM_DisabledTxt[Disabled]);
HTM_TD_End ();
/* Column closed/open */

View File

@ -174,7 +174,7 @@ void Grp_GetParCodsSeveralGrpsToShowUsrs (void);
void Grp_GetParCodsSeveralGrps (void);
void Grp_FreeListCodSelectedGrps (void);
void Grp_ChangeMyGrpsAndShowChanges (void);
void Grp_ChangeMyGrps (Cns_QuietOrVerbose_t QuietOrVerbose);
void Grp_ChangeMyGrps (Cns_Verbose_t Verbose);
void Grp_ChangeOtherUsrGrps (void);
bool Grp_ChangeMyGrpsAtomically (struct ListCodGrps *LstGrpsIWant);
void Grp_ChangeGrpsOtherUsrAtomically (struct ListCodGrps *LstGrpsUsrWants);

View File

@ -438,7 +438,6 @@ static void Ind_ShowNumCoursesWithIndicators (const struct Ind_Indicators *Indic
unsigned NumCrss,
Frm_PutForm_t PutForm)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_HIERARCHY_PLURAL_Abc[Hie_NUM_LEVELS];
extern const char *Txt_Total;
char *ClassNormal;
@ -474,10 +473,10 @@ static void Ind_ShowNumCoursesWithIndicators (const struct Ind_Indicators *Indic
if (PutForm == Frm_PUT_FORM)
{
HTM_TD_Begin ("class=\"%s\"",Class);
HTM_INPUT_CHECKBOX ("Indicators",HTM_SUBMIT_ON_CHANGE,
"id=\"Indicators%u\" value=\"%u\"%s",
Ind,Ind,
HTM_CheckedTxt[Indicators->IndicatorsSelected[Ind]]);
HTM_INPUT_CHECKBOX ("Indicators",Indicators->IndicatorsSelected[Ind],
HTM_SUBMIT_ON_CHANGE,
"id=\"Indicators%u\" value=\"%u\"",
Ind,Ind);
HTM_TD_End ();
}

View File

@ -66,7 +66,7 @@ struct Ind_Indicators
long DegTypCod;
long DptCod;
char StrIndicatorsSelected[Ind_MAX_SIZE_INDICATORS_SELECTED + 1];
Cns_UncheckedOrChecked_t IndicatorsSelected[1 + Ind_NUM_INDICATORS];
Cns_Checked_t IndicatorsSelected[1 + Ind_NUM_INDICATORS];
};
/*****************************************************************************/

View File

@ -133,7 +133,7 @@ static Act_Action_t Inf_ActionsInfo[Inf_NUM_SOURCES][Inf_NUM_TYPES] =
static void Inf_PutIconToViewInfo (void *Type);
static void Inf_PutCheckboxForceStdsToReadInfo (bool MustBeRead,
Cns_DisabledOrEnabled_t DisabledOrEnabled);
Cns_Disabled_t Disabled);
static void Inf_PutCheckboxConfirmIHaveReadInfo (void);
static bool Inf_GetMustBeReadFromForm (void);
static bool Inf_GetIfIHaveReadFromForm (void);
@ -348,7 +348,7 @@ void Inf_PutIconToEditInfo (void *Type)
/*****************************************************************************/
static void Inf_PutCheckboxForceStdsToReadInfo (bool MustBeRead,
Cns_DisabledOrEnabled_t DisabledOrEnabled)
Cns_Disabled_t Disabled)
{
extern Syl_WhichSyllabus_t Syl_WhichSyllabus[Syl_NUM_WHICH_SYLLABUS];
extern const char *Txt_Force_students_to_read_this_information;
@ -368,7 +368,7 @@ static void Inf_PutCheckboxForceStdsToReadInfo (bool MustBeRead,
Inf_Actions[Gbl.Crs.Info.Type].FuncPars,
Inf_Actions[Gbl.Crs.Info.Type].Args,
"MustBeRead",
MustBeRead,DisabledOrEnabled,
MustBeRead,Disabled,
Txt_Force_students_to_read_this_information,
Txt_Force_students_to_read_this_information);
}
@ -815,7 +815,6 @@ void Inf_FormsToSelSendInfo (void)
extern const char *Hlp_COURSE_FAQ_edit;
extern const char *Hlp_COURSE_Links_edit;
extern const char *Hlp_COURSE_Assessment_edit;
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Source_of_information;
extern const char *Txt_INFO_SRC_FULL_TEXT[Inf_NUM_SOURCES];
extern const char *Txt_INFO_SRC_HELP[Inf_NUM_SOURCES];
@ -823,7 +822,7 @@ void Inf_FormsToSelSendInfo (void)
struct Inf_FromDB FromDB;
Inf_Src_t InfoSrc;
bool InfoAvailable[Inf_NUM_SOURCES];
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
static Act_Action_t Inf_ActionsSelecInfoSrc[Inf_NUM_TYPES] =
{
[Inf_INFORMATION ] = ActSelInfSrcCrsInf,
@ -904,15 +903,15 @@ void Inf_FormsToSelSendInfo (void)
"");
Frm_BeginForm (Inf_ActionsSelecInfoSrc[Gbl.Crs.Info.Type]);
Syl_PutParWhichSyllabus (&Syllabus.WhichSyllabus);
UncheckedOrChecked = (InfoSrc == FromDB.Src) ? Cns_CHECKED :
Checked = (InfoSrc == FromDB.Src) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("InfoSrc",InfoSrc != FromDB.Src &&
(InfoSrc == Inf_NONE ||
InfoAvailable[InfoSrc]) ? HTM_SUBMIT_ON_CLICK :
HTM_DONT_SUBMIT_ON_CLICK,
"id=\"InfoSrc%u\" value=\"%u\"%s%s",
HTM_INPUT_RADIO ("InfoSrc",Checked,
(InfoSrc != FromDB.Src &&
(InfoSrc == Inf_NONE ||
InfoAvailable[InfoSrc])) ? HTM_SUBMIT_ON_CLICK :
HTM_DONT_SUBMIT_ON_CLICK,
"id=\"InfoSrc%u\" value=\"%u\"%s",
(unsigned) InfoSrc,(unsigned) InfoSrc,
HTM_CheckedTxt[UncheckedOrChecked],
(InfoSrc == Inf_NONE ||
InfoAvailable[InfoSrc]) ? "" : // Info available for this source
" disabled=\"disabled\"");

View File

@ -1266,13 +1266,12 @@ void Lay_PutContextualLinkIconText (Act_Action_t NextAction,const char *Anchor,
void Lay_PutContextualCheckbox (Act_Action_t NextAction,
void (*FuncPars) (void *Args),void *Args,
const char *CheckboxName,
Cns_UncheckedOrChecked_t UncheckedOrChecked,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Checked_t Checked,
Cns_Disabled_t Disabled,
const char *Title,const char *Text)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED_ENABLED];
static const char *Class[Cns_NUM_UNCHECKED_CHECKED] =
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
static const char *Class[Cns_NUM_CHECKED] =
{
[Cns_UNCHECKED] = "CHECKBOX_UNCHECKED",
[Cns_CHECKED ] = "CHECKBOX_CHECKED",
@ -1290,16 +1289,15 @@ void Lay_PutContextualCheckbox (Act_Action_t NextAction,
/***** Begin container *****/
HTM_DIV_Begin ("class=\"CONTEXT_OPT %s FORM_OUT_%s BOLD\" title=\"%s\"",
Class[UncheckedOrChecked],The_GetSuffix (),Title);
Class[Checked],The_GetSuffix (),Title);
/***** Begin label *****/
HTM_LABEL_Begin (NULL);
/****** Checkbox *****/
HTM_INPUT_CHECKBOX (CheckboxName,HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"%s%s",
HTM_CheckedTxt[UncheckedOrChecked],
HTM_DisabledTxt[DisabledOrEnabled]);
HTM_INPUT_CHECKBOX (CheckboxName,Checked,HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
HTM_DisabledTxt[Disabled]);
/***** Text *****/
if (Text)

View File

@ -81,8 +81,8 @@ void Lay_PutContextualLinkIconText (Act_Action_t NextAction,const char *Anchor,
void Lay_PutContextualCheckbox (Act_Action_t NextAction,
void (*FuncPars) (void *Args),void *Args,
const char *CheckboxName,
Cns_UncheckedOrChecked_t UncheckedOrChecked,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Checked_t Checked,
Cns_Disabled_t Disabled,
const char *Title,const char *Text);
void Lay_WriteAboutZone (void);

View File

@ -1241,10 +1241,9 @@ static void Mch_ParsFormMatch (void *Match)
static void Mch_ShowLstGrpsToEditMatch (long MchCod)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Groups;
unsigned NumGrpTyp;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Get list of groups types and groups in this course *****/
Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_ONLY_GROUP_TYPES_WITH_GROUPS);
@ -1265,14 +1264,14 @@ static void Mch_ShowLstGrpsToEditMatch (long MchCod)
HTM_TD_Begin ("colspan=\"7\" class=\"LM DAT_%s\"",
The_GetSuffix ());
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = Grp_DB_CheckIfAssociatedToGrps ("mch_groups",
"MchCod",
MchCod) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\"%s"
" onclick=\"uncheckChildren(this,'GrpCods')\"",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = Grp_DB_CheckIfAssociatedToGrps ("mch_groups",
"MchCod",
MchCod) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\""
" onclick=\"uncheckChildren(this,'GrpCods')\"");
Grp_WriteTheWholeCourse ();
HTM_LABEL_End ();
HTM_TD_End ();

View File

@ -518,7 +518,6 @@ static void MchRes_ShowResultsEnd (void)
static void MchRes_ListGamesToSelect (struct Gam_Games *Games)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Par_CodeStr[Par_NUM_PAR_COD];
extern const char *Txt_Games;
extern const char *Txt_Game;
@ -560,25 +559,23 @@ static void MchRes_ListGamesToSelect (struct Gam_Games *Games)
HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"CT DAT_%s %s\"",
The_GetSuffix (),
The_GetColorRows ());
HTM_INPUT_CHECKBOX (Par_CodeStr[ParCod_Gam],HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Gam%u\" value=\"%ld\"%s",
NumGame,Games->Lst[NumGame].GamCod,
HTM_CheckedTxt[Games->Lst[NumGame].UncheckedOrChecked]);
The_GetSuffix (),The_GetColorRows ());
HTM_INPUT_CHECKBOX (Par_CodeStr[ParCod_Gam],
Games->Lst[NumGame].Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Gam%u\" value=\"%ld\"",
NumGame,Games->Lst[NumGame].GamCod);
HTM_TD_End ();
HTM_TD_Begin ("class=\"RT DAT_%s %s\"",
The_GetSuffix (),
The_GetColorRows ());
The_GetSuffix (),The_GetColorRows ());
HTM_LABEL_Begin ("for=\"Gam%u\"",NumGame);
HTM_UnsignedColon (NumGame + 1);
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"LT DAT_%s %s\"",
The_GetSuffix (),
The_GetColorRows ());
The_GetSuffix (),The_GetColorRows ());
HTM_Txt (Games->Game.Title);
HTM_TD_End ();
@ -671,7 +668,7 @@ static void MchRes_BuildGamesSelectedCommas (struct Gam_Games *Games,
for (NumGame = 0;
NumGame < Games->Num;
NumGame++)
if (Games->Lst[NumGame].UncheckedOrChecked == Cns_CHECKED)
if (Games->Lst[NumGame].Checked == Cns_CHECKED)
{
sprintf (LongStr,"%ld",Games->Lst[NumGame].GamCod);
if ((*GamesSelectedCommas)[0])

View File

@ -1900,17 +1900,15 @@ static void Msg_ShowFormToFilterMsgs (const struct Msg_Messages *Messages)
static void Msg_ShowFormToShowOnlyUnreadMessages (const struct Msg_Messages *Messages)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_only_unread_messages;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Put checkbox to select whether to show only unread (received) messages *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
UncheckedOrChecked = Messages->ShowOnlyUnreadMsgs ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("OnlyUnreadMsgs",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = Messages->ShowOnlyUnreadMsgs ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("OnlyUnreadMsgs",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_Txt (Txt_only_unread_messages);
HTM_LABEL_End ();
}

View File

@ -1615,14 +1615,13 @@ void Ntf_MarkAllNotifAsSeen (void)
void Ntf_PutFormChangeNotifSentByEMail (void)
{
extern const char *Hlp_PROFILE_Settings_notifications;
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Save_changes;
extern const char *Txt_Notifications;
extern const char *Txt_Create_BR_notification;
extern const char *Txt_Notify_me_BR_by_email;
extern const char *Txt_NOTIFY_EVENTS_PLURAL[Ntf_NUM_NOTIFY_EVENTS];
Ntf_NotifyEvent_t NotifyEvent;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Begin section with settings on privacy *****/
HTM_SECTION_Begin (Ntf_NOTIFICATIONS_ID);
@ -1661,23 +1660,21 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
HTM_TD_End ();
HTM_TD_Begin ("class=\"CM\"");
UncheckedOrChecked = (Gbl.Usrs.Me.UsrDat.NtfEvents.CreateNotif &
Checked = (Gbl.Usrs.Me.UsrDat.NtfEvents.CreateNotif &
(1 << NotifyEvent)) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX (Ntf_ParNotifMeAboutNotifyEvents[NotifyEvent],
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_TD_End ();
HTM_TD_Begin ("class=\"CM\"");
UncheckedOrChecked = (Gbl.Usrs.Me.UsrDat.NtfEvents.SendEmail &
Checked = (Gbl.Usrs.Me.UsrDat.NtfEvents.SendEmail &
(1 << NotifyEvent)) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX (Ntf_ParEmailMeAboutNotifyEvents[NotifyEvent],
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_TD_End ();
HTM_TR_End ();

View File

@ -158,7 +158,7 @@ void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
struct Pag_Pagination *Pagination,
const void *Context,long Cod,
Cns_DisabledOrEnabled_t FirstMsgDisabledOrEnabled,
Cns_Disabled_t FirstMsgDisabledOrEnabled,
const char *Subject,const char *ClassTxt,
bool LinkToPagCurrent)
{

View File

@ -84,7 +84,7 @@ void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
struct Pag_Pagination *Pagination,
const void *Context,long Cod,
Cns_DisabledOrEnabled_t FirstMsgEnabled,
Cns_Disabled_t FirstMsgEnabled,
const char *Subject,const char *ClassTxt,
bool LinkToPagCurrent);
void Pag_PutParPagNum (Pag_WhatPaginate_t WhatPaginate,unsigned NumPage);

View File

@ -788,7 +788,7 @@ void Pwd_AskForConfirmationOnDangerousAction (void)
/***** Checkbox *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_INPUT_CHECKBOX ("Consent",HTM_DONT_SUBMIT_ON_CHANGE,
HTM_INPUT_CHECKBOX ("Consent",Cns_UNCHECKED,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_Txt (Txt_I_understand_that_this_action_can_not_be_undone);
HTM_LABEL_End ();
@ -798,10 +798,8 @@ void Pwd_AskForConfirmationOnDangerousAction (void)
/***** Password *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_TxtColonNBSP (Txt_For_security_enter_your_password);
HTM_INPUT_PASSWORD ("OthUsrPwd",NULL,"off",
HTM_REQUIRED,
"class=\"INPUT_%s\"",
The_GetSuffix ());
HTM_INPUT_PASSWORD ("OthUsrPwd",NULL,"off",HTM_REQUIRED,
"class=\"INPUT_%s\"",The_GetSuffix ());
HTM_LABEL_End ();
HTM_DIV_End ();

View File

@ -163,10 +163,9 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
Pri_Visibility_t CurrentVisibilityInDB,
unsigned MaskAllowedVisibility)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_PRIVACY_OPTIONS[Pri_NUM_OPTIONS_PRIVACY];
Pri_Visibility_t Visibility;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
HTM_TR_Begin (NULL);
@ -191,13 +190,12 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
HTM_LI_Begin ("class=\"DAT_%s\"",
The_GetSuffix ());
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = (Visibility == CurrentVisibilityInDB) ? Cns_CHECKED :
Checked = (Visibility == CurrentVisibilityInDB) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO (ParName,(Action == ActUnk) ? HTM_DONT_SUBMIT_ON_CLICK :
HTM_SUBMIT_ON_CLICK,
"value=\"%u\"%s%s",
(unsigned) Visibility,
HTM_CheckedTxt[UncheckedOrChecked],
HTM_INPUT_RADIO (ParName,Checked,
(Action == ActUnk) ? HTM_DONT_SUBMIT_ON_CLICK :
HTM_SUBMIT_ON_CLICK,
"value=\"%u\"%s",(unsigned) Visibility,
(Action == ActUnk) ? " disabled=\"disabled\"" :
"");
HTM_Txt (Txt_PRIVACY_OPTIONS[Visibility]);

View File

@ -307,16 +307,14 @@ PrjCfg_RubricType_t PrjCfg_GetRubricFromString (const char *Str)
static void PrjCfg_ShowFormNETCanCreate (const struct PrjCfg_Config *Config)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Non_editing_teachers_can_create_new_projects;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
HTM_LABEL_Begin ("class=\"LT DAT_%s\"",The_GetSuffix ());
UncheckedOrChecked = Config->NETCanCreate ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("NETCanCreate",HTM_SUBMIT_ON_CHANGE,
"id=\"NETCanCreate\" value=\"Y\"%s",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = Config->NETCanCreate ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("NETCanCreate",Checked,HTM_SUBMIT_ON_CHANGE,
"id=\"NETCanCreate\" value=\"Y\"");
HTM_Txt (Txt_Non_editing_teachers_can_create_new_projects);
HTM_LABEL_End ();
}

View File

@ -210,12 +210,11 @@ void Qst_ShowFormRequestEditQsts (struct Qst_Questions *Questions)
void Qst_ShowFormAnswerTypes (const struct Qst_AnswerTypes *AnswerTypes)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Types_of_answers;
extern const char *Txt_All_types_of_answers;
extern const char *Txt_TST_STR_ANSWER_TYPES[Qst_NUM_ANS_TYPES];
Qst_AnswerType_t AnsType;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
char UnsignedStr[Cns_MAX_DECIMAL_DIGITS_UINT + 1];
const char *Ptr;
@ -233,11 +232,12 @@ void Qst_ShowFormAnswerTypes (const struct Qst_AnswerTypes *AnswerTypes)
HTM_TD_Begin ("class=\"LM\"");
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
The_GetSuffix ());
UncheckedOrChecked = AnswerTypes->All ? Cns_CHECKED :
Checked = AnswerTypes->All ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("AllAnsTypes",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s onclick=\"togglecheckChildren(this,'AnswerType');\"",
HTM_CheckedTxt[UncheckedOrChecked]);
HTM_INPUT_CHECKBOX ("AllAnsTypes",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\""
" onclick=\"togglecheckChildren(this,'AnswerType');\"");
HTM_NBSPTxt (Txt_All_types_of_answers);
HTM_LABEL_End ();
HTM_TD_End ();
@ -251,24 +251,24 @@ void Qst_ShowFormAnswerTypes (const struct Qst_AnswerTypes *AnswerTypes)
{
HTM_TR_Begin (NULL);
UncheckedOrChecked = Cns_UNCHECKED;
Checked = Cns_UNCHECKED;
Ptr = AnswerTypes->List;
while (*Ptr)
{
Par_GetNextStrUntilSeparParMult (&Ptr,UnsignedStr,Cns_MAX_DECIMAL_DIGITS_UINT);
if (Qst_ConvertFromUnsignedStrToAnsTyp (UnsignedStr) == AnsType)
{
UncheckedOrChecked = Cns_CHECKED;
Checked = Cns_CHECKED;
break;
}
}
HTM_TD_Begin ("class=\"LM\"");
HTM_LABEL_Begin ("class=\"DAT_%s\"",The_GetSuffix ());
HTM_INPUT_CHECKBOX ("AnswerType",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%u\"%s"
HTM_INPUT_CHECKBOX ("AnswerType",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%u\""
" onclick=\"checkParent(this,'AllAnsTypes');\"",
(unsigned) AnsType,
HTM_CheckedTxt[UncheckedOrChecked]);
(unsigned) AnsType);
HTM_NBSPTxt (Txt_TST_STR_ANSWER_TYPES[AnsType]);
HTM_LABEL_End ();
HTM_TD_End ();
@ -620,20 +620,22 @@ void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
/***** Choice 1: No media *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_INPUT_RADIO (ParUploadMedia.Action,HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",
(unsigned) Med_ACTION_NO_MEDIA,
OptionsDisabled ? " disabled=\"disabled\"" : "");
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",(unsigned) Med_ACTION_NO_MEDIA,
OptionsDisabled ? " disabled=\"disabled\"" :
"");
HTM_Txt (Txt_No_image_video);
HTM_LABEL_End ();
HTM_BR ();
/***** Choice 2: Current media *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_INPUT_RADIO (ParUploadMedia.Action,HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s checked=\"checked\"",
(unsigned) Med_ACTION_KEEP_MEDIA,
OptionsDisabled ? " disabled=\"disabled\"" : "");
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_CHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",(unsigned) Med_ACTION_KEEP_MEDIA,
OptionsDisabled ? " disabled=\"disabled\"" :
"");
HTM_Txt (Txt_Current_image_video);
HTM_LABEL_End ();
Med_ShowMedia (Media,
@ -643,11 +645,12 @@ void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
/***** Choice 3: Change media *****/
UniqueId++;
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_INPUT_RADIO (ParUploadMedia.Action,HTM_DONT_SUBMIT_ON_CLICK,
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
"id=\"chg_img_%u\" value=\"%u\"%s",
UniqueId,
(unsigned) Med_ACTION_NEW_MEDIA,
OptionsDisabled ? " disabled=\"disabled\"" : "");
UniqueId,(unsigned) Med_ACTION_NEW_MEDIA,
OptionsDisabled ? " disabled=\"disabled\"" :
"");
HTM_TxtColonNBSP (Txt_Change_image_video);
HTM_LABEL_End ();
if (asprintf (&ClassInput,"Tst_MED_INPUT INPUT_%s",
@ -915,10 +918,9 @@ void Qst_WriteHeadingRowQuestionsForEdition (struct Qst_Questions *Questions)
void Qst_WriteQuestionListing (struct Qst_Questions *Questions,unsigned QstInd)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
static unsigned UniqueId = 0;
char *Id;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Get and show question data *****/
if (Qst_GetQstDataByCod (&Questions->Question))
@ -984,11 +986,10 @@ void Qst_WriteQuestionListing (struct Qst_Questions *Questions,unsigned QstInd)
Frm_BeginForm (ActChgShfTstQst);
Qst_PutParsEditQst (Questions);
Par_PutParUnsigned (NULL,"Order",(unsigned) Questions->SelectedOrder);
UncheckedOrChecked = Questions->Question.Answer.Shuffle ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Shuffle",HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = Questions->Question.Answer.Shuffle ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"");
Frm_EndForm ();
}
HTM_TD_End ();
@ -1220,8 +1221,9 @@ void Qst_PutCheckboxToSelectAllQuestions (void)
extern const char *Txt_All_questions;
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_INPUT_CHECKBOX ("AllQsts",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\" onclick=\"togglecheckChildren(this,'QstCods');\"");
HTM_INPUT_CHECKBOX ("AllQsts",Cns_UNCHECKED,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\""
" onclick=\"togglecheckChildren(this,'QstCods');\"");
HTM_NBSPTxt (Txt_All_questions);
HTM_LABEL_End ();
}
@ -1233,11 +1235,10 @@ void Qst_PutCheckboxToSelectAllQuestions (void)
void Qst_WriteQuestionRowForSelection (unsigned QstInd,
struct Qst_Question *Question)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_TST_STR_ANSWER_TYPES[Qst_NUM_ANS_TYPES];
static unsigned UniqueId = 0;
char *Id;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Get and show questvoidion data *****/
if (Qst_GetQstDataByCod (Question))
@ -1247,8 +1248,10 @@ void Qst_WriteQuestionRowForSelection (unsigned QstInd,
/* Write checkbox to select the question */
HTM_TD_Begin ("class=\"BT %s\"",The_GetColorRows ());
HTM_INPUT_CHECKBOX ("QstCods",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%ld\" onclick=\"checkParent(this,'AllQsts');\"",
HTM_INPUT_CHECKBOX ("QstCods",Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%ld\""
" onclick=\"checkParent(this,'AllQsts');\"",
Question->QstCod);
HTM_TD_End ();
@ -1298,11 +1301,10 @@ void Qst_WriteQuestionRowForSelection (unsigned QstInd,
/* Write if shuffle is enabled */
HTM_TD_Begin ("class=\"CT DAT_SMALL_%s %s\"",
The_GetSuffix (),The_GetColorRows ());
UncheckedOrChecked = Question->Answer.Shuffle ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Shuffle",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s disabled=\"disabled\"",
HTM_CheckedTxt[UncheckedOrChecked]);
Checked = Question->Answer.Shuffle ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\" disabled=\"disabled\"");
HTM_TD_End ();
/* Write stem */
@ -1809,7 +1811,6 @@ void Qst_ShowFormEditOneQst (void)
void Qst_PutFormEditOneQst (struct Qst_Question *Question)
{
extern const char *Hlp_ASSESSMENT_Questions_writing_a_question;
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Question_code_X;
extern const char *Txt_Question;
extern const char *Txt_Tags;
@ -1846,7 +1847,7 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
char *Title;
char *FuncOnChange;
bool NewQuestion = (Question->QstCod > 0);
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
/***** Begin box *****/
if (NewQuestion) // The question already has assigned a code
@ -2018,13 +2019,13 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
AnsType++)
{
HTM_LABEL_Begin (NULL);
UncheckedOrChecked = (AnsType == Question->Answer.Type) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("AnswerType",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s"
Checked = (AnsType == Question->Answer.Type) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("AnswerType",Checked,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\""
" onclick=\"enableDisableAns(this.form);\"",
(unsigned) AnsType,
HTM_CheckedTxt[UncheckedOrChecked]);
(unsigned) AnsType);
HTM_TxtF ("%s&nbsp;",Txt_TST_STR_ANSWER_TYPES[AnsType]);
HTM_LABEL_End ();
HTM_BR ();
@ -2080,11 +2081,10 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
HTM_TD_Empty (1);
HTM_TD_Begin ("class=\"LT\"");
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
UncheckedOrChecked = Question->Answer.Shuffle ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Shuffle",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s%s",
HTM_CheckedTxt[UncheckedOrChecked],
Checked = Question->Answer.Shuffle ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
(Question->Answer.Type != Qst_ANS_UNIQUE_CHOICE &&
Question->Answer.Type != Qst_ANS_MULTIPLE_CHOICE) ? " disabled=\"disabled\"" :
"");
@ -2119,25 +2119,25 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
/***** Left column: selectors *****/
HTM_TD_Begin ("class=\"Qst_ANS_LEFT_COL %s\"",
The_GetColorRows ());
UncheckedOrChecked = Question->Answer.Options[NumOpt].Correct ? Cns_CHECKED :
Cns_UNCHECKED;
Checked = Question->Answer.Options[NumOpt].Correct ? Cns_CHECKED :
Cns_UNCHECKED;
/* Radio selector for unique choice answers */
HTM_INPUT_RADIO ("AnsUni",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s%s%s"
HTM_INPUT_RADIO ("AnsUni",Checked,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s"
" onclick=\"enableDisableAns(this.form);\"",
NumOpt,
HTM_CheckedTxt[UncheckedOrChecked],
NumOpt < 2 ? " required=\"required\"" : // First or second options required
"",
(Question->Answer.Type == Qst_ANS_UNIQUE_CHOICE) ? "" :
" disabled=\"disabled\"");
/* Checkbox for multiple choice answers */
HTM_INPUT_CHECKBOX ("AnsMulti",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%u\"%s%s",
HTM_INPUT_CHECKBOX ("AnsMulti",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%u\"%s",
NumOpt,
HTM_CheckedTxt[UncheckedOrChecked],
(Question->Answer.Type == Qst_ANS_MULTIPLE_CHOICE) ? "" :
" disabled=\"disabled\"");
@ -2276,18 +2276,16 @@ void Qst_PutFloatInputField (const char *Label,const char *Field,
void Qst_PutTFInputField (const struct Qst_Question *Question,
const char *Label,char Value)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
UncheckedOrChecked = (Question->Answer.TF == Value) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("AnsTF",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%c\"%s%s required=\"required\"",
Checked = (Question->Answer.TF == Value) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("AnsTF",Checked,HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%c\"%s required=\"required\"",
Value,
HTM_CheckedTxt[UncheckedOrChecked],
Question->Answer.Type == Qst_ANS_TRUE_FALSE ? "" :
" disabled=\"disabled\"");
(Question->Answer.Type == Qst_ANS_TRUE_FALSE) ? "" :
" disabled=\"disabled\"");
HTM_Txt (Label);
HTM_LABEL_End ();
}

View File

@ -3008,15 +3008,16 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
static void Rec_ShowFormSex (struct Usr_Data *UsrDat,Usr_Sex_t Sex)
{
extern const char *Usr_StringsSexIcons[Usr_NUM_SEXS];
extern const char *Txt_SEX_SINGULAR_Abc[Usr_NUM_SEXS];
extern const char *Usr_StringsSexIcons[Usr_NUM_SEXS];
Cns_Checked_t Checked;
HTM_LABEL_Begin ("class=\"DAT_STRONG_%s\"",
The_GetSuffix ());
HTM_INPUT_RADIO ("Sex",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s required=\"required\"",
(unsigned) Sex,
Sex == UsrDat->Sex ? " checked=\"checked\"" : "");
Checked = (Sex == UsrDat->Sex) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("Sex",Checked,HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\" required=\"required\"",(unsigned) Sex);
HTM_TxtF ("%s&nbsp;%s",Usr_StringsSexIcons[Sex],Txt_SEX_SINGULAR_Abc[Sex]);
HTM_LABEL_End ();
}

View File

@ -200,19 +200,16 @@ void Rsc_ShowClipboardToChangeLink (const struct Rsc_Link *CurrentLink)
void Rsc_WriteRowClipboard (const struct Rsc_Link *Link,
HTM_SubmitOnClick_t SubmitOnClick,
Cns_UncheckedOrChecked_t UncheckedOrChecked)
Cns_Checked_t Checked)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
/***** Begin list row *****/
HTM_LI_Begin ("class=\"PRG_RSC_%s\"",The_GetSuffix ());
HTM_LABEL_Begin (NULL);
/***** Radio selector *****/
HTM_INPUT_RADIO ("Link",SubmitOnClick,
"value=\"%s_%ld\"%s",
Rsc_ResourceTypesDB[Link->Type],Link->Cod,
HTM_CheckedTxt[UncheckedOrChecked]);
HTM_INPUT_RADIO ("Link",Checked,SubmitOnClick,
"value=\"%s_%ld\"",
Rsc_ResourceTypesDB[Link->Type],Link->Cod);
/***** Name *****/
Rsc_WriteLinkName (Link,Frm_DONT_PUT_FORM);

View File

@ -79,7 +79,7 @@ void Rsc_ShowClipboard (void);
void Rsc_ShowClipboardToChangeLink (const struct Rsc_Link *CurrentLink);
void Rsc_WriteRowClipboard (const struct Rsc_Link *Link,
HTM_SubmitOnClick_t SubmitOnClick,
Cns_UncheckedOrChecked_t UncheckedOrChecked);
Cns_Checked_t Checked);
void Rsc_WriteLinkName (const struct Rsc_Link *Link,Frm_PutForm_t PutFormToGo);
void Rsc_GetResourceTitleFromLink (const struct Rsc_Link *Link,

View File

@ -512,12 +512,13 @@ void Rol_ChangeMyRole (void)
/*****************************************************************************/
void Rol_WriteSelectorRoles (unsigned RolesAllowed,unsigned RolesSelected,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Disabled_t Disabled,
HTM_SubmitOnChange_t SubmitOnChange)
{
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED_ENABLED];
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
extern const char *Txt_ROLES_PLURAL_abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
Rol_Role_t Role;
Cns_Checked_t Checked;
for (Role = Rol_UNK;
Role <= Rol_SYS_ADM;
@ -525,13 +526,11 @@ void Rol_WriteSelectorRoles (unsigned RolesAllowed,unsigned RolesSelected,
if ((RolesAllowed & (1 << Role)))
{
HTM_LABEL_Begin (NULL);
HTM_INPUT_CHECKBOX ("Role",SubmitOnChange,
"id=\"Role\" value=\"%u\" class=\"INPUT_%s\"%s%s",
(unsigned) Role,
The_GetSuffix (),
(RolesSelected & (1 << Role)) ? " checked=\"checked\"" :
"",
HTM_DisabledTxt[DisabledOrEnabled]);
Checked = (RolesSelected & (1 << Role));
HTM_INPUT_CHECKBOX ("Role",Checked,SubmitOnChange,
"id=\"Role\" value=\"%u\" class=\"INPUT_%s\"%s",
(unsigned) Role,The_GetSuffix (),
HTM_DisabledTxt[Disabled]);
HTM_Txt (Txt_ROLES_PLURAL_abc[Role][Usr_SEX_UNKNOWN]);
HTM_LABEL_End ();
HTM_BR ();

View File

@ -53,7 +53,7 @@ void Rol_PutFormToChangeMyRole (const char *ClassSelect);
void Rol_ChangeMyRole (void);
void Rol_WriteSelectorRoles (unsigned RolesAllowed,unsigned RolesSelected,
Cns_DisabledOrEnabled_t DisabledOrEnabled,
Cns_Disabled_t Disabled,
HTM_SubmitOnChange_t SubmitOnChange);
void Rol_PutParRoles (unsigned Roles);
unsigned Rol_GetSelectedRoles (void);

View File

@ -242,6 +242,7 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
Sta_ClicksGroupedBy_t ClicksGroupedBy;
unsigned ClicksGroupedByUnsigned;
size_t i;
Cns_Checked_t Checked;
/***** Contextual menu *****/
Mnu_ContextMenuBegin ();
@ -346,11 +347,13 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
/***** Option a) Graphic of clicks in this course *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
The_GetSuffix ());
HTM_INPUT_RADIO ("GroupedOrDetailed",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s onclick=\"disableDetailedClicks();\"",
(unsigned) Sta_CLICKS_GROUPED,
Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST ? "" :
" checked=\"checked\"");
Checked = (Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST) ? Cns_UNCHECKED :
Cns_CHECKED;
HTM_INPUT_RADIO ("GroupedOrDetailed",Checked,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\""
" onclick=\"disableDetailedClicks();\"",
(unsigned) Sta_CLICKS_GROUPED);
HTM_Txt (Txt_Graph);
HTM_LABEL_End ();
@ -388,11 +391,12 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
/***** Option b) Listing of detailed clicks to this course *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
The_GetSuffix ());
HTM_INPUT_RADIO ("GroupedOrDetailed",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s onclick=\"enableDetailedClicks();\"",
(unsigned) Sta_CLICKS_DETAILED,
Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST ? " checked=\"checked\"" :
"");
Checked = (Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("GroupedOrDetailed",Checked,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\" onclick=\"enableDetailedClicks();\"",
(unsigned) Sta_CLICKS_DETAILED);
HTM_Txt (Txt_STAT_CLICKS_GROUPED_BY[Sta_CLICKS_CRS_DETAILED_LIST]);
HTM_LABEL_End ();

View File

@ -1813,6 +1813,7 @@ static void Svy_ShowLstGrpsToEditSurvey (long SvyCod)
{
extern const char *Txt_Groups;
unsigned NumGrpTyp;
Cns_Checked_t Checked;
/***** Get list of groups types and groups in this course *****/
Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_ONLY_GROUP_TYPES_WITH_GROUPS);
@ -1835,12 +1836,14 @@ static void Svy_ShowLstGrpsToEditSurvey (long SvyCod)
HTM_TD_Begin ("colspan=\"7\" class=\"LM DAT_%s\"",
The_GetSuffix ());
HTM_LABEL_Begin (NULL);
HTM_INPUT_CHECKBOX ("WholeCrs",HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\"%s onclick=\"uncheckChildren(this,'GrpCods')\"",
Grp_DB_CheckIfAssociatedToGrps ("svy_groups",
"SvyCod",
SvyCod) ? "" :
" checked=\"checked\"");
Checked = Grp_DB_CheckIfAssociatedToGrps ("svy_groups",
"SvyCod",
SvyCod) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"WholeCrs\" value=\"Y\""
" onclick=\"uncheckChildren(this,'GrpCods')\"");
Grp_WriteTheWholeCourse ();
HTM_LABEL_End ();
HTM_TD_End ();
@ -2197,6 +2200,7 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
char *Title;
Svy_AnswerType_t AnsType;
bool NewQuestion = (SvyQst->QstCod <= 0);
Cns_Checked_t Checked;
if (Gbl.Action.Act == ActEdiOneSvyQst) // If no receiving the question, but editing a new or existing question
if (!NewQuestion)
@ -2282,10 +2286,11 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
AnsType++)
{
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("AnswerType",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",
(unsigned) AnsType,
AnsType == SvyQst->AnswerType ? " checked=\"checked\"" : "");
Checked = (AnsType == SvyQst->AnswerType) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("AnswerType",Checked,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"",(unsigned) AnsType);
HTM_Txt (Txt_SURVEY_STR_ANSWER_TYPES[AnsType]);
HTM_LABEL_End ();
HTM_BR ();
@ -2335,10 +2340,11 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
HTM_TD_TxtColon (Txt_Comments);
HTM_TD_Begin ("class=\"LT FORM_IN_%s\"",The_GetSuffix ());
HTM_LABEL_Begin (NULL);
HTM_INPUT_CHECKBOX ("Comment",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
SvyQst->CommentsAllowed ? " checked=\"checked\"" :
"");
Checked = SvyQst->CommentsAllowed ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Comment",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_Txt (Txt_Comments_allowed);
HTM_LABEL_End ();
HTM_TD_End ();
@ -2853,16 +2859,20 @@ static void Svy_WriteAnswersOfAQst (struct Svy_Survey *Svy,
switch (SvyQst->AnswerType)
{
case Svy_ANS_UNIQUE_CHOICE:
HTM_INPUT_RADIO (StrAns,HTM_DONT_SUBMIT_ON_CLICK,
HTM_INPUT_RADIO (StrAns,Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CLICK,
"id=\"Ans%010u_%u\" value=\"%u\""
" onclick=\"selectUnselectRadio(this,this.form.Ans%010u,%u)\"",
(unsigned) SvyQst->QstCod,NumAns,NumAns,
(unsigned) SvyQst->QstCod,NumAns,
NumAns,
(unsigned) SvyQst->QstCod,NumAnswers);
break;
case Svy_ANS_MULTIPLE_CHOICE:
HTM_INPUT_CHECKBOX (StrAns,HTM_DONT_SUBMIT_ON_CHANGE,
HTM_INPUT_CHECKBOX (StrAns,Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Ans%010u_%u\" value=\"%u\"",
(unsigned) SvyQst->QstCod,NumAns,NumAns);
(unsigned) SvyQst->QstCod,NumAns,
NumAns);
break;
default:
break;

View File

@ -182,6 +182,7 @@ void Syl_PutFormWhichSyllabus (Syl_WhichSyllabus_t WhichSyllabus)
{
extern const char *Txt_SYLLABUS_WHICH_SYLLABUS[Syl_NUM_WHICH_SYLLABUS];
Syl_WhichSyllabus_t WhichSyl;
Cns_Checked_t Checked;
/***** If no syllabus ==> nothing to do *****/
switch (Gbl.Crs.Info.Type)
@ -204,11 +205,10 @@ void Syl_PutFormWhichSyllabus (Syl_WhichSyllabus_t WhichSyllabus)
{
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("WhichSyllabus",HTM_SUBMIT_ON_CLICK,
"value=\"%u\"%s",
(unsigned) WhichSyl,
WhichSyl == WhichSyllabus ? " checked=\"checked\"" :
"");
Checked = (WhichSyl == WhichSyllabus) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("WhichSyllabus",Checked,HTM_SUBMIT_ON_CLICK,
"value=\"%u\"",(unsigned) WhichSyl);
HTM_Txt (Txt_SYLLABUS_WHICH_SYLLABUS[WhichSyl]);
HTM_LABEL_End ();
HTM_LI_End ();

View File

@ -276,7 +276,6 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
MYSQL_RES *mysql_res,
bool ShowOnlyEnabledTags)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
extern const char *Txt_Tags;
extern const char *Txt_All_tags;
extern const char *Txt_Tag_not_allowed;
@ -284,7 +283,7 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
unsigned NumTag;
MYSQL_ROW row;
bool TagHidden = false;
Cns_UncheckedOrChecked_t UncheckedOrChecked;
Cns_Checked_t Checked;
const char *Ptr;
char TagText[Tag_MAX_BYTES_TAG + 1];
/*
@ -308,12 +307,13 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
HTM_TD_Empty (1);
HTM_TD_Begin ("class=\"LT\"");
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
The_GetSuffix ());
HTM_INPUT_CHECKBOX ("AllTags",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s onclick=\"togglecheckChildren(this,'ChkTag');\"",
Tags->All ? " checked=\"checked\"" :
"");
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
Checked = Tags->All ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("AllTags",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\""
" onclick=\"togglecheckChildren(this,'ChkTag');\"");
HTM_NBSPTxt (Txt_All_tags);
HTM_LABEL_End ();
HTM_TD_End ();
@ -339,7 +339,7 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
HTM_TD_End ();
}
UncheckedOrChecked = Cns_UNCHECKED;
Checked = Cns_UNCHECKED;
if (Tags->List)
{
Ptr = Tags->List;
@ -348,7 +348,7 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
Par_GetNextStrUntilSeparParMult (&Ptr,TagText,Tag_MAX_BYTES_TAG);
if (!strcmp (row[1],TagText))
{
UncheckedOrChecked = Cns_CHECKED;
Checked = Cns_CHECKED;
break;
}
}
@ -357,10 +357,11 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
HTM_TD_Begin ("class=\"LT\"");
HTM_LABEL_Begin ("class=\"DAT_%s\"",
The_GetSuffix ());
HTM_INPUT_CHECKBOX ("ChkTag",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%s\"%s onclick=\"checkParent(this,'AllTags');\"",
row[1],
HTM_CheckedTxt[UncheckedOrChecked]);
HTM_INPUT_CHECKBOX ("ChkTag",Checked,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%s\""
" onclick=\"checkParent(this,'AllTags');\"",
row[1]);
HTM_NBSPTxt (row[1]);
HTM_LABEL_End ();
HTM_TD_End ();

View File

@ -156,6 +156,7 @@ static void TstCfg_ShowFormConfig (void)
struct Qst_Questions Questions;
TstCfg_Pluggable_t Pluggable;
char StrMinTimeNxtTstPerQst[Cns_MAX_DECIMAL_DIGITS_ULONG + 1];
Cns_Checked_t Checked;
/***** Create test *****/
Qst_Constructor (&Questions);
@ -179,13 +180,12 @@ static void TstCfg_ShowFormConfig (void)
Pluggable <= TstCfg_PLUGGABLE_YES;
Pluggable++)
{
HTM_LABEL_Begin ("class=\"DAT_%s\"",
The_GetSuffix ());
HTM_INPUT_RADIO ("Pluggable",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",
(unsigned) Pluggable,
Pluggable == TstCfg_GetConfigPluggable () ? " checked=\"checked\"" :
"");
HTM_LABEL_Begin ("class=\"DAT_%s\"",The_GetSuffix ());
Checked = (Pluggable == TstCfg_GetConfigPluggable ()) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("Pluggable",Checked,
HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",(unsigned) Pluggable);
HTM_Txt (Txt_TST_PLUGGABLE[Pluggable]);
HTM_LABEL_End ();
HTM_BR ();

View File

@ -418,11 +418,11 @@ static void TstPrn_WriteChoAnsToFill (const struct TstPrn_PrintedQuestion *Print
unsigned QstInd,
struct Qst_Question *Question)
{
extern const char *HTM_CheckedTxt[Cns_NUM_UNCHECKED_CHECKED];
unsigned NumOpt;
unsigned Indexes[Qst_MAX_OPTIONS_PER_QUESTION]; // Indexes of all answers of this question
Cns_UncheckedOrChecked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
Cns_Checked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
char StrAns[3 + Cns_MAX_DECIMAL_DIGITS_UINT + 1]; // "Ansxx...x"
char Id[3 + Cns_MAX_DECIMAL_DIGITS_UINT + 1 + Cns_MAX_DECIMAL_DIGITS_UINT + 1]; // "Ansxx...x_yy...y"
/***** Change format of answers text *****/
Qst_ChangeFormatAnswersText (Question);
@ -451,18 +451,27 @@ static void TstPrn_WriteChoAnsToFill (const struct TstPrn_PrintedQuestion *Print
HTM_TD_Begin ("class=\"LT\"");
snprintf (StrAns,sizeof (StrAns),"Ans%010u",QstInd);
if (Question->Answer.Type == Qst_ANS_UNIQUE_CHOICE)
HTM_INPUT_RADIO (StrAns,HTM_DONT_SUBMIT_ON_CLICK,
"id=\"Ans%010u_%u\" value=\"%u\"%s"
" onclick=\"selectUnselectRadio(this,this.form.Ans%010u,%u);\"",
QstInd,NumOpt,Indexes[NumOpt],
HTM_CheckedTxt[UsrAnswers[Indexes[NumOpt]]],
QstInd,Question->Answer.NumOptions);
else // Answer.Type == Tst_ANS_MULTIPLE_CHOICE
HTM_INPUT_CHECKBOX (StrAns,HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"Ans%010u_%u\" value=\"%u\"%s",
QstInd,NumOpt,Indexes[NumOpt],
HTM_CheckedTxt[UsrAnswers[Indexes[NumOpt]]]);
snprintf (Id,sizeof (Id),"%s_%u",StrAns,NumOpt);
switch (Question->Answer.Type)
{
case Qst_ANS_UNIQUE_CHOICE:
HTM_INPUT_RADIO (StrAns,UsrAnswers[Indexes[NumOpt]],
HTM_DONT_SUBMIT_ON_CLICK,
"id=\"%s\" value=\"%u\""
" onclick=\"selectUnselectRadio(this,this.form.Ans%010u,%u);\"",
Id,Indexes[NumOpt],
QstInd,Question->Answer.NumOptions);
break;
case Qst_ANS_MULTIPLE_CHOICE:
HTM_INPUT_CHECKBOX (StrAns,UsrAnswers[Indexes[NumOpt]],
HTM_DONT_SUBMIT_ON_CHANGE,
"id=\"%s\" value=\"%u\"",
Id,Indexes[NumOpt]);
break;
default:
Err_WrongAnswerTypeExit ();
break;
}
HTM_TD_End ();
@ -516,14 +525,15 @@ static void TstPrn_WriteTxtAnsToFill (const struct TstPrn_PrintedQuestion *Print
static void TstPrn_PutCheckBoxAllowTeachers (bool AllowTeachers)
{
extern const char *Txt_Allow_teachers_to_consult_this_test;
Cns_Checked_t Checked;
/***** Test exam will be available for teachers? *****/
HTM_DIV_Begin ("class=\"CM\"");
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_INPUT_CHECKBOX ("AllowTchs",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
AllowTeachers ? " checked=\"checked\"" : // Teachers can see test exam
"");
Checked = AllowTeachers ? Cns_CHECKED : // Teachers can see test exam
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("AllowTchs",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_NBSPTxt (Txt_Allow_teachers_to_consult_this_test);
HTM_LABEL_End ();
HTM_DIV_End ();
@ -915,7 +925,7 @@ void TstPrn_ComputeChoAnsScore (struct TstPrn_PrintedQuestion *PrintedQuestion,
const struct Qst_Question *Question)
{
unsigned Indexes[Qst_MAX_OPTIONS_PER_QUESTION]; // Indexes of all answers of this question
Cns_UncheckedOrChecked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
Cns_Checked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
unsigned NumOpt;
unsigned NumOptTotInQst = 0;
unsigned NumOptCorrInQst = 0;
@ -1090,7 +1100,7 @@ void TstPrn_GetIndexesFromStr (const char StrIndexesOneQst[Qst_MAX_BYTES_INDEXES
/*****************************************************************************/
void TstPrn_GetAnswersFromStr (const char StrAnswersOneQst[Qst_MAX_BYTES_ANSWERS_ONE_QST + 1],
Cns_UncheckedOrChecked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION])
Cns_Checked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION])
{
unsigned NumOpt;
const char *Ptr;
@ -1403,7 +1413,7 @@ static void TstPrn_WriteChoAnsPrint (struct Usr_Data *UsrDat,
extern const char *Txt_TST_Answer_given_by_the_teachers;
unsigned NumOpt;
unsigned Indexes[Qst_MAX_OPTIONS_PER_QUESTION]; // Indexes of all answers of this question
Cns_UncheckedOrChecked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
Cns_Checked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION];
struct
{
char *Class;

View File

@ -122,7 +122,7 @@ void Qst_ChangeFormatAnswersFeedback (struct Qst_Question *Question);
void TstPrn_GetIndexesFromStr (const char StrIndexesOneQst[Qst_MAX_BYTES_INDEXES_ONE_QST + 1], // 0 1 2 3, 3 0 2 1, etc.
unsigned Indexes[Qst_MAX_OPTIONS_PER_QUESTION]);
void TstPrn_GetAnswersFromStr (const char StrAnswersOneQst[Qst_MAX_BYTES_ANSWERS_ONE_QST + 1],
Cns_UncheckedOrChecked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION]);
Cns_Checked_t UsrAnswers[Qst_MAX_OPTIONS_PER_QUESTION]);
void TstPrn_ComputeAndShowGrade (unsigned NumQsts,double Score,double MaxGrade);
double TstPrn_ComputeGrade (unsigned NumQsts,double Score,double MaxGrade);

View File

@ -100,7 +100,7 @@ void TstVis_PutVisibilityCheckboxes (unsigned SelectedVisibility)
[TstVis_VISIBLE_TOTAL_SCORE ] = "check-circle-regular.svg",
};
TstVis_Visibility_t Visibility;
bool ItemVisible;
Cns_Checked_t Checked;
/***** Write list of checkboxes for visibility *****/
for (Visibility = (TstVis_Visibility_t) 0;
@ -111,12 +111,10 @@ void TstVis_PutVisibilityCheckboxes (unsigned SelectedVisibility)
HTM_LABEL_Begin ("class=\"DAT_%s\"",The_GetSuffix ());
/* Checkbox with icon and text */
ItemVisible = (SelectedVisibility & (1 << Visibility)) != 0;
HTM_INPUT_CHECKBOX ("Visibility",HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%u\"%s",
(unsigned) Visibility,
ItemVisible ? " checked=\"checked\"" :
"");
Checked = ((SelectedVisibility & (1 << Visibility)) != 0) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("Visibility",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%u\"",(unsigned) Visibility);
Ico_PutIconOn (Icons[Visibility],Ico_BLACK,
Txt_TST_STR_VISIBILITY[Visibility]);
HTM_Txt (Txt_TST_STR_VISIBILITY[Visibility]);

View File

@ -3316,7 +3316,7 @@ bool Usr_GetListMsgRecipientsWrittenExplicitelyBySender (bool WriteErrorMsgs)
Usr_DONT_GET_ROLE_IN_CRS);
/* Find if encrypted user's code is already in list */
if (!Usr_FindEncryptedUsrCodInListOfSelectedEncryptedUsrCods (UsrDat.EnUsrCod,&Gbl.Usrs.Selected)) // If not in list ==> add it
if (!Usr_FindEncUsrCodInListOfSelectedEncUsrCods (UsrDat.EnUsrCod,&Gbl.Usrs.Selected)) // If not in list ==> add it
{
LengthUsrCod = strlen (UsrDat.EnUsrCod);
@ -3367,8 +3367,8 @@ bool Usr_GetListMsgRecipientsWrittenExplicitelyBySender (bool WriteErrorMsgs)
/*****************************************************************************/
// Returns true if EncryptedUsrCodToFind is in list
bool Usr_FindEncryptedUsrCodInListOfSelectedEncryptedUsrCods (const char *EncryptedUsrCodToFind,
struct Usr_SelectedUsrs *SelectedUsrs)
bool Usr_FindEncUsrCodInListOfSelectedEncUsrCods (const char *EncryptedUsrCodToFind,
struct Usr_SelectedUsrs *SelectedUsrs)
{
const char *Ptr;
char EncryptedUsrCod[Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64 + 1];
@ -3918,8 +3918,10 @@ static void Usr_PutCheckboxToSelectAllUsers (struct Usr_SelectedUsrs *SelectedUs
if (Usr_NameSelUnsel[Role] && Usr_ParUsrCod[Role])
{
Usr_BuildParName (&ParName,Usr_ParUsrCod[Role],SelectedUsrs->ParSuffix);
HTM_INPUT_CHECKBOX (Usr_NameSelUnsel[Role],HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"\" onclick=\"togglecheckChildren(this,'%s')\"",
HTM_INPUT_CHECKBOX (Usr_NameSelUnsel[Role],Cns_UNCHECKED,
HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"\""
" onclick=\"togglecheckChildren(this,'%s')\"",
ParName);
free (ParName);
}
@ -3981,26 +3983,24 @@ static void Usr_PutCheckboxToSelectUser (Rol_Role_t Role,
bool UsrIsTheMsgSender,
struct Usr_SelectedUsrs *SelectedUsrs)
{
bool CheckboxChecked;
Cns_Checked_t Checked;
char *ParName;
if (Usr_NameSelUnsel[Role] && Usr_ParUsrCod[Role])
{
/***** Check box must be checked? *****/
if (UsrIsTheMsgSender)
CheckboxChecked = true;
Checked = Cns_CHECKED;
else
/* Check if user is in lists of selected users */
CheckboxChecked = Usr_FindEncryptedUsrCodInListOfSelectedEncryptedUsrCods (EncryptedUsrCod,SelectedUsrs);
Checked = Usr_FindEncUsrCodInListOfSelectedEncUsrCods (EncryptedUsrCod,SelectedUsrs) ? Cns_CHECKED :
Cns_UNCHECKED;
/***** Check box *****/
Usr_BuildParName (&ParName,Usr_ParUsrCod[Role],SelectedUsrs->ParSuffix);
HTM_INPUT_CHECKBOX (ParName,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%s\"%s onclick=\"checkParent(this,'%s')\"",
EncryptedUsrCod,
CheckboxChecked ? " checked=\"checked\"" :
"",
Usr_NameSelUnsel[Role]);
HTM_INPUT_CHECKBOX (ParName,Checked,HTM_DONT_SUBMIT_ON_CHANGE,
"value=\"%s\" onclick=\"checkParent(this,'%s')\"",
EncryptedUsrCod,Usr_NameSelUnsel[Role]);
free (ParName);
}
else
@ -4014,15 +4014,16 @@ static void Usr_PutCheckboxToSelectUser (Rol_Role_t Role,
static void Usr_PutCheckboxListWithPhotos (void)
{
extern const char *Txt_Display_photos;
Cns_Checked_t Checked;
Par_PutParChar ("WithPhotosExists",'Y');
/***** Put checkbox to select whether list users with photos *****/
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
HTM_INPUT_CHECKBOX ("WithPhotos",HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"%s",
Gbl.Usrs.Listing.WithPhotos ? " checked=\"checked\"" :
"");
Checked = Gbl.Usrs.Listing.WithPhotos ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_CHECKBOX ("WithPhotos",Checked,HTM_SUBMIT_ON_CHANGE,
"value=\"Y\"");
HTM_Txt (Txt_Display_photos);
HTM_LABEL_End ();
}
@ -5601,13 +5602,14 @@ static void Usr_PutOptionsListUsrs (const Usr_Can_t ICanChooseOption[Usr_LIST_US
static void Usr_ShowOneListUsrsOption (Usr_ListUsrsOption_t ListUsrsAction,
const char *Label)
{
Cns_Checked_t Checked;
HTM_LI_Begin (NULL);
HTM_LABEL_Begin (NULL);
HTM_INPUT_RADIO ("ListUsrsAction",HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"%s",
(unsigned) ListUsrsAction,
ListUsrsAction == Gbl.Usrs.Selected.Option ? " checked=\"checked\"" :
"");
Checked = (ListUsrsAction == Gbl.Usrs.Selected.Option) ? Cns_CHECKED :
Cns_UNCHECKED;
HTM_INPUT_RADIO ("ListUsrsAction",Checked,HTM_DONT_SUBMIT_ON_CLICK,
"value=\"%u\"",(unsigned) ListUsrsAction);
HTM_Txt (Label);
HTM_LABEL_End ();
HTM_LI_End ();
@ -6309,7 +6311,7 @@ unsigned Usr_GetTotalNumberOfUsers (void)
// Input: UsrDat must hold user's data
void Usr_WriteAuthor (struct Usr_Data *UsrDat,
Cns_DisabledOrEnabled_t DisabledOrEnabled)
Cns_Disabled_t Disabled)
{
extern const char *Txt_Unknown_or_without_photo;
static const char *ClassPhoto[PhoSha_NUM_SHAPES] =
@ -6323,7 +6325,7 @@ void Usr_WriteAuthor (struct Usr_Data *UsrDat,
/***** Write author name or don't write it? *****/
WriteAuthor = false;
if (DisabledOrEnabled == Cns_ENABLED)
if (Disabled == Cns_ENABLED)
if (UsrDat->UsrCod > 0)
WriteAuthor = true;

View File

@ -272,8 +272,8 @@ void Usr_GetListsSelectedEncryptedUsrsCods (struct Usr_SelectedUsrs *SelectedUsr
bool Usr_GetListMsgRecipientsWrittenExplicitelyBySender (bool WriteErrorMsgs);
bool Usr_FindEncryptedUsrCodInListOfSelectedEncryptedUsrCods (const char *EncryptedUsrCodToFind,
struct Usr_SelectedUsrs *SelectedUsrs);
bool Usr_FindEncUsrCodInListOfSelectedEncUsrCods (const char *EncryptedUsrCodToFind,
struct Usr_SelectedUsrs *SelectedUsrs);
bool Usr_CheckIfThereAreUsrsInListOfSelectedEncryptedUsrCods (struct Usr_SelectedUsrs *SelectedUsrs);
unsigned Usr_CountNumUsrsInListOfSelectedEncryptedUsrCods (struct Usr_SelectedUsrs *SelectedUsrs);
void Usr_FreeListsSelectedEncryptedUsrsCods (struct Usr_SelectedUsrs *SelectedUsrs);
@ -335,7 +335,7 @@ void Usr_ShowWarningNoUsersFound (Rol_Role_t Role);
unsigned Usr_GetTotalNumberOfUsers (void);
void Usr_WriteAuthor (struct Usr_Data *UsrDat,
Cns_DisabledOrEnabled_t DisabledOrEnabled);
Cns_Disabled_t Disabled);
void Usr_WriteAuthor1Line (long UsrCod,HidVis_HiddenOrVisible_t HiddenOrVisible);
void Usr_ShowTableCellWithUsrData (struct Usr_Data *UsrDat,unsigned NumRows);