Version19.99

This commit is contained in:
Antonio Cañas Vargas 2019-12-27 15:45:19 +01:00
parent 4251ee7815
commit 8ffd6705b2
32 changed files with 325 additions and 411 deletions

View File

@ -3734,46 +3734,16 @@ a.PAG:hover, .PAG_CUR
} }
/***************************** Calls for exams *******************************/ /***************************** Calls for exams *******************************/
.CONV_TIT .EXAM_TIT
{ {
font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif; /* font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif; */
color:#202020; color:#202020;
font-weight:bold; font-weight:bold;
font-size:18pt; font-size:18pt;
} }
.CONV_TIT_IMPR .EXAM
{ {
font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif; /* font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif; */
color:#202020;
font-weight:bold;
font-size:18pt;
}
.CONV_NEG
{
font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif;
color:#202020;
font-weight:bold;
font-size:13pt;
white-space:nowrap;
}
.CONV_NEG_IMPR
{
font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif;
color:#202020;
font-weight:bold;
font-size:13pt;
white-space:nowrap;
text-align:right;
}
.CONV
{
font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif;
color:#202020;
font-size:13pt;
}
.CONV_IMPR
{
font-family:Garamond,"DejaVu LGC Serif","Bitstream Vera Serif",serif;
color:#202020; color:#202020;
font-size:13pt; font-size:13pt;
} }

View File

@ -573,7 +573,6 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
bool ItsMe,bool IShouldFillInID) bool ItsMe,bool IShouldFillInID)
{ {
extern const char *Hlp_PROFILE_Account; extern const char *Hlp_PROFILE_Account;
extern const char *The_ClassFormInBox[The_NUM_THEMES];
extern const char *Txt_Please_fill_in_your_ID; extern const char *Txt_Please_fill_in_your_ID;
extern const char *Txt_ID_X_confirmed; extern const char *Txt_ID_X_confirmed;
extern const char *Txt_ID_X_not_confirmed; extern const char *Txt_ID_X_not_confirmed;
@ -603,12 +602,7 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
{ {
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"REC_C1_BOT RT\""); Frm_LabelColumn ("REC_C1_BOT RT",NULL,Txt_ID);
HTM_LABEL_Begin ("for=\"UsrID\" class=\"%s\"",
The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_ID);
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"REC_C2_BOT LT USR_ID\""); HTM_TD_Begin ("class=\"REC_C2_BOT LT USR_ID\"");
} }
@ -683,13 +677,9 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
/***** Form to enter new user's ID *****/ /***** Form to enter new user's ID *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"REC_C1_BOT RT\""); Frm_LabelColumn ("REC_C1_BOT RT","NewID",
HTM_LABEL_Begin ("for=\"NewID\" class=\"%s\"", UsrDat->IDs.Num ? Txt_Another_ID : // A new user's ID
The_ClassFormInBox[Gbl.Prefs.Theme]); Txt_ID); // The first user's ID
HTM_TxtF ("%s:",UsrDat->IDs.Num ? Txt_Another_ID : // A new user's ID
Txt_ID); // The first user's ID
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\""); HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\"");
if (ItsMe) if (ItsMe)

View File

@ -371,7 +371,7 @@ static void Acc_ShowFormRequestNewAccountWithParams (const char NewNicknameWitho
NewNicknameWithArroba[0] = '\0'; NewNicknameWithArroba[0] = '\0';
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("NewNick",Txt_Nickname); Frm_LabelColumn ("RT","NewNick",Txt_Nickname);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("NewNick",1 + Nck_MAX_CHARS_NICKNAME_WITHOUT_ARROBA, HTM_INPUT_TEXT ("NewNick",1 + Nck_MAX_CHARS_NICKNAME_WITHOUT_ARROBA,
@ -385,7 +385,7 @@ static void Acc_ShowFormRequestNewAccountWithParams (const char NewNicknameWitho
/***** Email *****/ /***** Email *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("NewEmail",Txt_Email); Frm_LabelColumn ("RT","NewEmail",Txt_Email);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_EMAIL ("NewEmail",Cns_MAX_CHARS_EMAIL_ADDRESS,NewEmail, HTM_INPUT_EMAIL ("NewEmail",Cns_MAX_CHARS_EMAIL_ADDRESS,NewEmail,

View File

@ -1507,7 +1507,7 @@ void Agd_RequestCreatOrEditEvent (void)
/***** Event *****/ /***** Event *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Event",Txt_Event); Frm_LabelColumn ("RT","Event",Txt_Event);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Event",Agd_MAX_CHARS_EVENT,AgdEvent.Event,false, HTM_INPUT_TEXT ("Event",Agd_MAX_CHARS_EVENT,AgdEvent.Event,false,
@ -1520,7 +1520,7 @@ void Agd_RequestCreatOrEditEvent (void)
/***** Location *****/ /***** Location *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Location",Txt_Location); Frm_LabelColumn ("RT","Location",Txt_Location);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Location",Agd_MAX_CHARS_LOCATION,AgdEvent.Location,false, HTM_INPUT_TEXT ("Location",Agd_MAX_CHARS_LOCATION,AgdEvent.Location,false,
@ -1537,7 +1537,7 @@ void Agd_RequestCreatOrEditEvent (void)
/***** Text *****/ /***** Text *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Txt",Txt_Description); Frm_LabelColumn ("RT","Txt",Txt_Description);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\"" HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""

View File

@ -452,7 +452,7 @@ static void Ann_PutSubjectMessage (const char *Field,const char *Label,
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (Field,Label); Frm_LabelColumn ("RT",Field,Label);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"%s\" name=\"%s\" cols=\"75\" rows=\"%u\"", HTM_TEXTAREA_Begin ("id=\"%s\" name=\"%s\" cols=\"75\" rows=\"%u\"",

View File

@ -1095,7 +1095,6 @@ void Asg_RequestCreatOrEditAsg (void)
{ {
extern const char *Hlp_ASSESSMENT_Assignments_new_assignment; extern const char *Hlp_ASSESSMENT_Assignments_new_assignment;
extern const char *Hlp_ASSESSMENT_Assignments_edit_assignment; extern const char *Hlp_ASSESSMENT_Assignments_edit_assignment;
extern const char *The_ClassFormInBox[The_NUM_THEMES];
extern const char *Txt_New_assignment; extern const char *Txt_New_assignment;
extern const char *Txt_Edit_assignment; extern const char *Txt_Edit_assignment;
extern const char *Txt_Title; extern const char *Txt_Title;
@ -1166,9 +1165,9 @@ void Asg_RequestCreatOrEditAsg (void)
/***** Assignment title *****/ /***** Assignment title *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Title",Txt_Title); Frm_LabelColumn ("RM","Title",Txt_Title);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
HTM_INPUT_TEXT ("Title",Asg_MAX_CHARS_ASSIGNMENT_TITLE,Asg.Title,false, HTM_INPUT_TEXT ("Title",Asg_MAX_CHARS_ASSIGNMENT_TITLE,Asg.Title,false,
"id=\"Title\" required=\"required\"" "id=\"Title\" required=\"required\""
" class=\"TITLE_DESCRIPTION_WIDTH\""); " class=\"TITLE_DESCRIPTION_WIDTH\"");
@ -1182,15 +1181,13 @@ void Asg_RequestCreatOrEditAsg (void)
/***** Send work? *****/ /***** Send work? *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"%s RM\"",The_ClassFormInBox[Gbl.Prefs.Theme]); Frm_LabelColumn ("RM","Folder",Txt_Upload_files_QUESTION);
HTM_TxtF ("%s:",Txt_Upload_files_QUESTION);
HTM_TD_End ();
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LM\"");
HTM_LABEL_Begin ("class=\"DAT\""); HTM_LABEL_Begin ("class=\"DAT\"");
HTM_TxtF ("%s:",Txt_Folder); HTM_TxtF ("%s:",Txt_Folder);
HTM_INPUT_TEXT ("Folder",Brw_MAX_CHARS_FOLDER,Asg.Folder,false, HTM_INPUT_TEXT ("Folder",Brw_MAX_CHARS_FOLDER,Asg.Folder,false,
"size=\"30\""); "id=\"Folder\" size=\"30\"");
HTM_LABEL_End (); HTM_LABEL_End ();
HTM_TD_End (); HTM_TD_End ();
@ -1199,7 +1196,7 @@ void Asg_RequestCreatOrEditAsg (void)
/***** Assignment text *****/ /***** Assignment text *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Txt",Txt_Description); Frm_LabelColumn ("RT","Txt",Txt_Description);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"10\"" HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"10\""

View File

@ -1072,7 +1072,7 @@ void Att_RequestCreatOrEditAttEvent (void)
/***** Attendance event title *****/ /***** Attendance event title *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Title",Txt_Title); Frm_LabelColumn ("RT","Title",Txt_Title);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Title",Att_MAX_CHARS_ATTENDANCE_EVENT_TITLE,Att.Title,false, HTM_INPUT_TEXT ("Title",Att_MAX_CHARS_ATTENDANCE_EVENT_TITLE,Att.Title,false,
@ -1088,11 +1088,10 @@ void Att_RequestCreatOrEditAttEvent (void)
/***** Visibility of comments *****/ /***** Visibility of comments *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ComTchVisible",Txt_Teachers_comment); Frm_LabelColumn ("RT","ComTchVisible",Txt_Teachers_comment);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_SELECT_Begin (false, HTM_SELECT_Begin (false,"id=\"ComTchVisible\" name=\"ComTchVisible\"");
"id=\"ComTchVisible\" name=\"ComTchVisible\"");
HTM_OPTION (HTM_Type_STRING,"N",!Att.CommentTchVisible,false, HTM_OPTION (HTM_Type_STRING,"N",!Att.CommentTchVisible,false,
"%s",Txt_Hidden_MALE_PLURAL); "%s",Txt_Hidden_MALE_PLURAL);
HTM_OPTION (HTM_Type_STRING,"Y",Att.CommentTchVisible,false, HTM_OPTION (HTM_Type_STRING,"Y",Att.CommentTchVisible,false,
@ -1104,7 +1103,7 @@ void Att_RequestCreatOrEditAttEvent (void)
/***** Attendance event description *****/ /***** Attendance event description *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Txt",Txt_Description); Frm_LabelColumn ("RT","Txt",Txt_Description);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\"" HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""

View File

@ -93,10 +93,10 @@ static void Ctr_ConfigLatitude (void);
static void Ctr_ConfigLongitude (void); static void Ctr_ConfigLongitude (void);
static void Ctr_ConfigAltitude (void); static void Ctr_ConfigAltitude (void);
static void Ctr_ConfigPhoto (bool PrintView,bool PutLink); static void Ctr_ConfigPhoto (bool PrintView,bool PutLink);
static void Ctr_ConfigInstitution (bool PrintView); static void Ctr_ConfigInstitution (bool PutForm);
static void Ctr_ConfigFullName (bool PutForm); static void Ctr_ConfigFullName (bool PutForm);
static void Ctr_ConfigShrtName (bool PutForm); static void Ctr_ConfigShrtName (bool PutForm);
static void Ctr_ConfigPlace (bool PrintView); static void Ctr_ConfigPlace (bool PutForm);
static void Ctr_ConfigWWW (bool PutForm); static void Ctr_ConfigWWW (bool PutForm);
static void Ctr_ConfigShortcut (void); static void Ctr_ConfigShortcut (void);
static void Ctr_ConfigQR (void); static void Ctr_ConfigQR (void);
@ -312,7 +312,10 @@ static void Ctr_Configuration (bool PrintView)
{ {
extern const char *Hlp_CENTRE_Information; extern const char *Hlp_CENTRE_Information;
bool PutLink; bool PutLink;
bool PutFormIns;
bool PutFormName; bool PutFormName;
bool PutFormPlc;
bool PutFormCoor;
bool PutFormWWW; bool PutFormWWW;
/***** Trivial check *****/ /***** Trivial check *****/
@ -321,7 +324,10 @@ static void Ctr_Configuration (bool PrintView)
/***** Initializations *****/ /***** Initializations *****/
PutLink = !PrintView && Gbl.Hierarchy.Ctr.WWW[0]; PutLink = !PrintView && Gbl.Hierarchy.Ctr.WWW[0];
PutFormIns = !PrintView && Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM;
PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM; PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM;
PutFormPlc =
PutFormCoor =
PutFormWWW = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM; PutFormWWW = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM;
/***** Begin box *****/ /***** Begin box *****/
@ -346,17 +352,17 @@ static void Ctr_Configuration (bool PrintView)
HTM_TABLE_BeginWidePadding (2); HTM_TABLE_BeginWidePadding (2);
/***** Institution *****/ /***** Institution *****/
Ctr_ConfigInstitution (PrintView); Ctr_ConfigInstitution (PutFormIns);
/***** Centre name *****/ /***** Centre name *****/
Ctr_ConfigFullName (PutFormName); Ctr_ConfigFullName (PutFormName);
Ctr_ConfigShrtName (PutFormName); Ctr_ConfigShrtName (PutFormName);
/***** Place *****/ /***** Place *****/
Ctr_ConfigPlace (PrintView); Ctr_ConfigPlace (PutFormPlc);
/***** Coordinates *****/ /***** Coordinates *****/
if (!PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM) if (PutFormCoor)
{ {
Ctr_ConfigLatitude (); Ctr_ConfigLatitude ();
Ctr_ConfigLongitude (); Ctr_ConfigLongitude ();
@ -542,9 +548,9 @@ static void Ctr_ConfigLatitude (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Latitude",Txt_Latitude); Frm_LabelColumn ("RM","Latitude",Txt_Latitude);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
/* Form to change centre latitude */ /* Form to change centre latitude */
Frm_StartForm (ActChgCtrLatCfg); Frm_StartForm (ActChgCtrLatCfg);
HTM_INPUT_FLOAT ("Latitude", HTM_INPUT_FLOAT ("Latitude",
@ -565,9 +571,9 @@ static void Ctr_ConfigLongitude (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Longitude",Txt_Longitude); Frm_LabelColumn ("RM","Longitude",Txt_Longitude);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
/* Form to change centre longitude */ /* Form to change centre longitude */
Frm_StartForm (ActChgCtrLgtCfg); Frm_StartForm (ActChgCtrLgtCfg);
HTM_INPUT_FLOAT ("Longitude", HTM_INPUT_FLOAT ("Longitude",
@ -588,10 +594,10 @@ static void Ctr_ConfigAltitude (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Altitude",Txt_Altitude); Frm_LabelColumn ("RM","Altitude",Txt_Altitude);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
/* Form to change centre WWW */ /* Form to change centre altitude */
Frm_StartForm (ActChgCtrAltCfg); Frm_StartForm (ActChgCtrAltCfg);
HTM_INPUT_FLOAT ("Altitude", HTM_INPUT_FLOAT ("Altitude",
-413.0, // Dead Sea shore -413.0, // Dead Sea shore
@ -687,19 +693,19 @@ static void Ctr_ConfigPhoto (bool PrintView,bool PutLink)
/***************** Show institution in centre configuration ******************/ /***************** Show institution in centre configuration ******************/
/*****************************************************************************/ /*****************************************************************************/
static void Ctr_ConfigInstitution (bool PrintView) static void Ctr_ConfigInstitution (bool PutForm)
{ {
extern const char *Txt_Institution; extern const char *Txt_Institution;
unsigned NumIns; unsigned NumIns;
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("OthInsCod",Txt_Institution); Frm_LabelColumn ("RM",PutForm ? "OthInsCod" :
NULL,
Txt_Institution);
HTM_TD_Begin ("class=\"DAT_N LT\""); HTM_TD_Begin ("class=\"DAT_N LM\"");
if (!PrintView && if (PutForm)
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
// Only system admins can move a centre to another institution
{ {
/* Get list of institutions of the current country */ /* Get list of institutions of the current country */
Ins_GetListInstitutions (Gbl.Hierarchy.Cty.CtyCod,Ins_GET_BASIC_DATA); Ins_GetListInstitutions (Gbl.Hierarchy.Cty.CtyCod,Ins_GET_BASIC_DATA);
@ -753,7 +759,7 @@ static void Ctr_ConfigShrtName (bool PutForm)
/**************** Show centre place in centre configuration ******************/ /**************** Show centre place in centre configuration ******************/
/*****************************************************************************/ /*****************************************************************************/
static void Ctr_ConfigPlace (bool PrintView) static void Ctr_ConfigPlace (bool PutForm)
{ {
extern const char *Txt_Place; extern const char *Txt_Place;
extern const char *Txt_Another_place; extern const char *Txt_Another_place;
@ -764,13 +770,12 @@ static void Ctr_ConfigPlace (bool PrintView)
Plc_GetDataOfPlaceByCod (&Plc); Plc_GetDataOfPlaceByCod (&Plc);
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("PlcCod",Txt_Place); Frm_LabelColumn ("RM",PutForm ? "PlcCod" :
NULL,
Txt_Place);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
if (!PrintView && if (PutForm)
Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
// Only centre admins, institution admins and system admins
// can change centre place
{ {
/* Get list of places of the current institution */ /* Get list of places of the current institution */
Gbl.Plcs.SelectedOrder = Plc_ORDER_BY_PLACE; Gbl.Plcs.SelectedOrder = Plc_ORDER_BY_PLACE;
@ -839,9 +844,9 @@ static void Ctr_ConfigNumUsrs (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Users_of_the_centre); Frm_LabelColumn ("RM",NULL,Txt_Users_of_the_centre);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Usr_GetNumUsrsWhoClaimToBelongToCtr (Gbl.Hierarchy.Ctr.CtrCod)); HTM_Unsigned (Usr_GetNumUsrsWhoClaimToBelongToCtr (Gbl.Hierarchy.Ctr.CtrCod));
HTM_TD_End (); HTM_TD_End ();
@ -859,10 +864,10 @@ static void Ctr_ConfigNumDegs (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Degrees); Frm_LabelColumn ("RM",NULL,Txt_Degrees);
/* Form to go to see degrees of this centre */ /* Form to go to see degrees of this centre */
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
Frm_StartFormGoTo (ActSeeDeg); Frm_StartFormGoTo (ActSeeDeg);
Ctr_PutParamCtrCod (Gbl.Hierarchy.Ctr.CtrCod); Ctr_PutParamCtrCod (Gbl.Hierarchy.Ctr.CtrCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
@ -887,9 +892,9 @@ static void Ctr_ConfigNumCrss (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Courses); Frm_LabelColumn ("RM",NULL,Txt_Courses);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Crs_GetNumCrssInCtr (Gbl.Hierarchy.Ctr.CtrCod)); HTM_Unsigned (Crs_GetNumCrssInCtr (Gbl.Hierarchy.Ctr.CtrCod));
HTM_TD_End (); HTM_TD_End ();
@ -907,10 +912,11 @@ static void Ctr_ShowNumUsrsInCrssOfCtr (Rol_Role_t Role)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Role == Rol_UNK ? Txt_Users_in_courses : Frm_LabelColumn ("RM",NULL,
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]); Role == Rol_UNK ? Txt_Users_in_courses :
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Usr_GetNumUsrsInCrssOfCtr (Role,Gbl.Hierarchy.Ctr.CtrCod)); HTM_Unsigned (Usr_GetNumUsrsInCrssOfCtr (Role,Gbl.Hierarchy.Ctr.CtrCod));
HTM_TD_End (); HTM_TD_End ();

View File

@ -492,17 +492,19 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD: En OpenSWAD:
ps2pdf source.ps destination.pdf ps2pdf source.ps destination.pdf
*/ */
#define Log_PLATFORM_VERSION "SWAD 19.98 (2019-12-26)" #define Log_PLATFORM_VERSION "SWAD 19.99 (2019-12-27)"
#define CSS_FILE "swad19.97.13.css" #define CSS_FILE "swad19.99.css"
#define JS_FILE "swad19.91.1.js" #define JS_FILE "swad19.91.1.js"
/* /*
// TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.) // TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.)
// TODO: Impedir la creación y edición de proyectos si no son editables. // TODO: Impedir la creación y edición de proyectos si no son editables.
// TODO: No se puede entrar con DNI '1' suponiendo que no tenga password ¿por qué? // TODO: No se puede entrar con DNI '1' suponiendo que no tenga password ¿por qué?
CommentTch%ld
Version 19.101: Dec 27, 2019 Map in country information. (? lines) Version 19.102: Dec 27, 2019 Map in country information. (? lines)
Version 19.100: Dec 27, 2019 Map in institution information. (? lines) Version 19.101: Dec 27, 2019 Map in institution information. (? lines)
Version 19.99: Dec 27, 2019 Code refactoring in country information. (? lines) Version 19.100: Dec 27, 2019 Code refactoring in country information. (? lines)
Version 19.99.1: Dec 27, 2019 Code refactoring in form labels. (? lines)
Version 19.99: Dec 27, 2019 Code refactoring in form labels. (248924 lines)
Version 19.98: Dec 26, 2019 Code refactoring in form labels. (249011 lines) Version 19.98: Dec 26, 2019 Code refactoring in form labels. (249011 lines)
Version 19.97.14: Dec 26, 2019 Code refactoring in course, degree, centre and institution information. (249243 lines) Version 19.97.14: Dec 26, 2019 Code refactoring in course, degree, centre and institution information. (249243 lines)
Version 19.97.13: Dec 26, 2019 Code refactoring in course, degree, centre and institution information. (249255 lines) Version 19.97.13: Dec 26, 2019 Code refactoring in course, degree, centre and institution information. (249255 lines)

View File

@ -81,7 +81,7 @@ static struct Course *Crs_EditingCrs = NULL; // Static variable to keep the cour
static void Crs_Configuration (bool PrintView); static void Crs_Configuration (bool PrintView);
static void Crs_PutIconToPrint (void); static void Crs_PutIconToPrint (void);
static void Crs_ConfigTitle (bool PutLink); static void Crs_ConfigTitle (bool PutLink);
static void Crs_ConfigDegree (bool PrintView); static void Crs_ConfigDegree (bool PutForm);
static void Crs_ConfigFullName (bool PutForm); static void Crs_ConfigFullName (bool PutForm);
static void Crs_ConfigShrtName (bool PutForm); static void Crs_ConfigShrtName (bool PutForm);
static void Crs_ConfigYear (bool PutForm); static void Crs_ConfigYear (bool PutForm);
@ -182,17 +182,21 @@ static void Crs_Configuration (bool PrintView)
{ {
extern const char *Hlp_COURSE_Information; extern const char *Hlp_COURSE_Information;
bool PutLink; bool PutLink;
bool PutFormDeg;
bool PutFormName; bool PutFormName;
bool PutFormYear; bool PutFormYear;
bool PutFormInsCod;
/***** Trivial check *****/ /***** Trivial check *****/
if (Gbl.Hierarchy.Crs.CrsCod <= 0) // No course selected if (Gbl.Hierarchy.Crs.CrsCod <= 0) // No course selected
return; return;
/***** Initializations *****/ /***** Initializations *****/
PutLink = !PrintView && Gbl.Hierarchy.Deg.WWW[0]; PutLink = !PrintView && Gbl.Hierarchy.Deg.WWW[0];
PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM; PutFormDeg = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM;
PutFormYear = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_TCH; PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM;
PutFormYear =
PutFormInsCod = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_TCH;
/***** Contextual menu *****/ /***** Contextual menu *****/
if (!PrintView) if (!PrintView)
@ -219,7 +223,7 @@ static void Crs_Configuration (bool PrintView)
HTM_TABLE_BeginWidePadding (2); HTM_TABLE_BeginWidePadding (2);
/***** Degree *****/ /***** Degree *****/
Crs_ConfigDegree (PrintView); Crs_ConfigDegree (PutFormDeg);
/***** Course name *****/ /***** Course name *****/
Crs_ConfigFullName (PutFormName); Crs_ConfigFullName (PutFormName);
@ -231,7 +235,7 @@ static void Crs_Configuration (bool PrintView)
if (!PrintView) if (!PrintView)
{ {
/***** Institutional code of the course *****/ /***** Institutional code of the course *****/
Crs_ConfigInstitutionalCode (PutFormYear); Crs_ConfigInstitutionalCode (PutFormInsCod);
/***** Internal code of the course *****/ /***** Internal code of the course *****/
Crs_ConfigInternalCode (); Crs_ConfigInternalCode ();
@ -289,21 +293,19 @@ static void Crs_ConfigTitle (bool PutLink)
/******************** Show degree in course configuration ********************/ /******************** Show degree in course configuration ********************/
/*****************************************************************************/ /*****************************************************************************/
static void Crs_ConfigDegree (bool PrintView) static void Crs_ConfigDegree (bool PutForm)
{ {
extern const char *Txt_Degree; extern const char *Txt_Degree;
unsigned NumDeg; unsigned NumDeg;
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("OthDegCod",Txt_Degree); Frm_LabelColumn ("RM",PutForm ? "OthDegCod" :
NULL,
Txt_Degree);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
if (PutForm)
if (!PrintView &&
Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
// Only centre admins, institution admins and system admin
// can move a course to another degree
{ {
/* Get list of degrees of the current centre */ /* Get list of degrees of the current centre */
Deg_GetListDegsOfCurrentCtr (); Deg_GetListDegsOfCurrentCtr ();
@ -327,7 +329,6 @@ static void Crs_ConfigDegree (bool PrintView)
} }
else // I can not move course to another degree else // I can not move course to another degree
HTM_Txt (Gbl.Hierarchy.Deg.FullName); HTM_Txt (Gbl.Hierarchy.Deg.FullName);
HTM_TD_End (); HTM_TD_End ();
HTM_TR_End (); HTM_TR_End ();
@ -367,9 +368,11 @@ static void Crs_ConfigYear (bool PutForm)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("OthCrsYear",Txt_Year_OF_A_DEGREE); Frm_LabelColumn ("RM",PutForm ? "OthCrsYear" :
NULL,
Txt_Year_OF_A_DEGREE);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
if (PutForm) if (PutForm)
{ {
Frm_StartForm (ActChgCrsYeaCfg); Frm_StartForm (ActChgCrsYeaCfg);
@ -402,9 +405,11 @@ static void Crs_ConfigInstitutionalCode (bool PutForm)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("InsCrsCod",Txt_Institutional_code); Frm_LabelColumn ("RM",PutForm ? "InsCrsCod" :
NULL,
Txt_Institutional_code);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
if (PutForm) if (PutForm)
{ {
Frm_StartForm (ActChgInsCrsCodCfg); Frm_StartForm (ActChgInsCrsCodCfg);
@ -431,9 +436,9 @@ static void Crs_ConfigInternalCode (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Internal_code); Frm_LabelColumn ("RM",NULL,Txt_Internal_code);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Long (Gbl.Hierarchy.Crs.CrsCod); HTM_Long (Gbl.Hierarchy.Crs.CrsCod);
HTM_TD_End (); HTM_TD_End ();
@ -468,9 +473,9 @@ static void Crs_ShowNumUsrsInCrs (Rol_Role_t Role)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]); Frm_LabelColumn ("RM",NULL,Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Gbl.Hierarchy.Crs.NumUsrs[Role]); HTM_Unsigned (Gbl.Hierarchy.Crs.NumUsrs[Role]);
HTM_TD_End (); HTM_TD_End ();
@ -492,9 +497,9 @@ static void Crs_ConfigIndicators (void)
NumIndicatorsFromDB,&Indicators); NumIndicatorsFromDB,&Indicators);
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Indicators); Frm_LabelColumn ("RM",NULL,Txt_Indicators);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
Frm_StartForm (ActReqStaCrs); Frm_StartForm (ActReqStaCrs);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
"%u %s %u", "%u %s %u",

View File

@ -426,7 +426,6 @@ void Dat_ConvDateToDateStr (struct Date *Date,char StrDate[Cns_MAX_BYTES_DATE +
void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS000000To235959) void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS000000To235959)
{ {
extern const char *The_ClassFormInBox[The_NUM_THEMES];
extern const char *Txt_START_END_TIME[Dat_NUM_START_END_TIME]; extern const char *Txt_START_END_TIME[Dat_NUM_START_END_TIME];
extern const char *Txt_Yesterday; extern const char *Txt_Yesterday;
extern const char *Txt_Today; extern const char *Txt_Today;
@ -434,11 +433,7 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
/***** Start date-time *****/ /***** Start date-time *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RM\""); Frm_LabelColumn ("RM",NULL,Txt_START_END_TIME[Dat_START_TIME]);
HTM_LABEL_Begin ("class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_START_END_TIME[Dat_START_TIME]);
HTM_LABEL_End ();
HTM_TD_End ();
/* Date-time */ /* Date-time */
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LM\"");
@ -465,11 +460,7 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
/***** End date-time *****/ /***** End date-time *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RM\""); Frm_LabelColumn ("RM",NULL,Txt_START_END_TIME[Dat_END_TIME]);
HTM_LABEL_Begin ("class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_START_END_TIME[Dat_END_TIME]);
HTM_LABEL_End ();
HTM_TD_End ();
/* Date-time */ /* Date-time */
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LM\"");
@ -494,7 +485,6 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
void Dat_PutFormStartEndClientLocalDateTimes (time_t TimeUTC[2], void Dat_PutFormStartEndClientLocalDateTimes (time_t TimeUTC[2],
Dat_FormSeconds FormSeconds) Dat_FormSeconds FormSeconds)
{ {
extern const char *The_ClassFormInBox[The_NUM_THEMES];
extern const char *Txt_START_END_TIME[Dat_NUM_START_END_TIME]; extern const char *Txt_START_END_TIME[Dat_NUM_START_END_TIME];
Dat_StartEndTime_t StartEndTime; Dat_StartEndTime_t StartEndTime;
const char *Id[Dat_NUM_START_END_TIME] = const char *Id[Dat_NUM_START_END_TIME] =
@ -510,11 +500,7 @@ void Dat_PutFormStartEndClientLocalDateTimes (time_t TimeUTC[2],
/* Date-time */ /* Date-time */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RM\""); Frm_LabelColumn ("RM",NULL,Txt_START_END_TIME[StartEndTime]);
HTM_LABEL_Begin ("class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_START_END_TIME[StartEndTime]);
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LM\"");
Dat_WriteFormClientLocalDateTimeFromTimeUTC (Id[StartEndTime], Dat_WriteFormClientLocalDateTimeFromTimeUTC (Id[StartEndTime],

View File

@ -89,7 +89,7 @@ static struct Degree *Deg_EditingDeg = NULL; // Static variable to keep the degr
static void Deg_Configuration (bool PrintView); static void Deg_Configuration (bool PrintView);
static void Deg_PutIconsToPrintAndUpload (void); static void Deg_PutIconsToPrintAndUpload (void);
static void Deg_ConfigTitle (bool PutLink); static void Deg_ConfigTitle (bool PutLink);
static void Deg_ConfigCentre (bool PrintView); static void Deg_ConfigCentre (bool PutForm);
static void Deg_ConfigFullName (bool PutForm); static void Deg_ConfigFullName (bool PutForm);
static void Deg_ConfigShrtName (bool PutForm); static void Deg_ConfigShrtName (bool PutForm);
static void Deg_ConfigWWW (bool PutForm); static void Deg_ConfigWWW (bool PutForm);
@ -302,6 +302,7 @@ static void Deg_Configuration (bool PrintView)
{ {
extern const char *Hlp_DEGREE_Information; extern const char *Hlp_DEGREE_Information;
bool PutLink; bool PutLink;
bool PutFormCtr;
bool PutFormName; bool PutFormName;
bool PutFormWWW; bool PutFormWWW;
@ -311,6 +312,7 @@ static void Deg_Configuration (bool PrintView)
/***** Initializations *****/ /***** Initializations *****/
PutLink = !PrintView && Gbl.Hierarchy.Deg.WWW[0]; PutLink = !PrintView && Gbl.Hierarchy.Deg.WWW[0];
PutFormCtr = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM;
PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM; PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM;
PutFormWWW = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM; PutFormWWW = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM;
@ -329,7 +331,7 @@ static void Deg_Configuration (bool PrintView)
HTM_TABLE_BeginWidePadding (2); HTM_TABLE_BeginWidePadding (2);
/***** Centre *****/ /***** Centre *****/
Deg_ConfigCentre (PrintView); Deg_ConfigCentre (PutFormCtr);
/***** Degree name *****/ /***** Degree name *****/
Deg_ConfigFullName (PutFormName); Deg_ConfigFullName (PutFormName);
@ -398,20 +400,19 @@ static void Deg_ConfigTitle (bool PutLink)
/******************** Show centre in degree configuration ********************/ /******************** Show centre in degree configuration ********************/
/*****************************************************************************/ /*****************************************************************************/
static void Deg_ConfigCentre (bool PrintView) static void Deg_ConfigCentre (bool PutForm)
{ {
extern const char *Txt_Centre; extern const char *Txt_Centre;
unsigned NumCtr; unsigned NumCtr;
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("OthCtrCod",Txt_Centre); Frm_LabelColumn ("RM",PutForm ? "OthCtrCod" :
NULL,
Txt_Centre);
HTM_TD_Begin ("class=\"DAT_N LT\""); HTM_TD_Begin ("class=\"DAT_N LM\"");
if (!PrintView && if (PutForm)
Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
// Only institution admins and system admin
// can move a degree to another centre
{ {
/* Get list of centres of the current institution */ /* Get list of centres of the current institution */
Ctr_GetListCentres (Gbl.Hierarchy.Ins.InsCod); Ctr_GetListCentres (Gbl.Hierarchy.Ins.InsCod);
@ -499,10 +500,10 @@ static void Deg_ConfigNumCrss (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Courses); Frm_LabelColumn ("RM",NULL,Txt_Courses);
/* Form to go to see courses of this degree */ /* Form to go to see courses of this degree */
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
Frm_StartFormGoTo (ActSeeCrs); Frm_StartFormGoTo (ActSeeCrs);
Deg_PutParamDegCod (Gbl.Hierarchy.Deg.DegCod); Deg_PutParamDegCod (Gbl.Hierarchy.Deg.DegCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
@ -528,10 +529,11 @@ static void Deg_ShowNumUsrsInCrssOfDeg (Rol_Role_t Role)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Role == Rol_UNK ? Txt_Users_in_courses : Frm_LabelColumn ("RM",NULL,
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]); Role == Rol_UNK ? Txt_Users_in_courses :
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Usr_GetNumUsrsInCrssOfDeg (Role,Gbl.Hierarchy.Deg.DegCod)); HTM_Unsigned (Usr_GetNumUsrsInCrssOfDeg (Role,Gbl.Hierarchy.Deg.DegCod));
HTM_TD_End (); HTM_TD_End ();

View File

@ -916,7 +916,7 @@ static void Enr_PutAreaToEnterUsrsIDs (void)
HTM_TABLE_BeginCenterPadding (2); HTM_TABLE_BeginCenterPadding (2);
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("UsrsIDs",Txt_List_of_nicks_emails_or_IDs); Frm_LabelColumn ("RT","UsrsIDs",Txt_List_of_nicks_emails_or_IDs);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"UsrsIDs\" name=\"UsrsIDs\" cols=\"60\" rows=\"10\""); HTM_TEXTAREA_Begin ("id=\"UsrsIDs\" name=\"UsrsIDs\" cols=\"60\" rows=\"10\"");
@ -2257,7 +2257,7 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
/* Scope (whole platform, current centre, current degree or current course) */ /* Scope (whole platform, current centre, current degree or current course) */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ScopeEnr",Txt_Scope); Frm_LabelColumn ("RT","ScopeEnr",Txt_Scope);
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LM\"");
Sco_PutSelectorScope ("ScopeEnr",true); Sco_PutSelectorScope ("ScopeEnr",true);
@ -2268,7 +2268,7 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
/* Users' roles in listing */ /* Users' roles in listing */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Role",Txt_Users); Frm_LabelColumn ("RT","Role",Txt_Users);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LT\"");
Rol_WriteSelectorRoles (1 << Rol_STD | Rol_WriteSelectorRoles (1 << Rol_STD |

View File

@ -932,7 +932,6 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
extern const char *Hlp_ASSESSMENT_Announcements_new_announcement; extern const char *Hlp_ASSESSMENT_Announcements_new_announcement;
extern const char *Hlp_ASSESSMENT_Announcements_edit_announcement; extern const char *Hlp_ASSESSMENT_Announcements_edit_announcement;
extern const char *Txt_YEAR_OF_DEGREE[1 + Deg_MAX_YEARS_PER_DEGREE]; extern const char *Txt_YEAR_OF_DEGREE[1 + Deg_MAX_YEARS_PER_DEGREE];
extern const char *The_ClassFormInBox[The_NUM_THEMES];
extern const char *Txt_EXAM_ANNOUNCEMENT; extern const char *Txt_EXAM_ANNOUNCEMENT;
extern const char *Txt_EXAM_ANNOUNCEMENT_Course; extern const char *Txt_EXAM_ANNOUNCEMENT_Course;
extern const char *Txt_EXAM_ANNOUNCEMENT_Year_or_semester; extern const char *Txt_EXAM_ANNOUNCEMENT_Year_or_semester;
@ -953,9 +952,6 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
extern const char *Txt_minute; extern const char *Txt_minute;
extern const char *Txt_minutes; extern const char *Txt_minutes;
extern const char *Txt_Publish_announcement_OF_EXAM; extern const char *Txt_Publish_announcement_OF_EXAM;
const char *StyleTitle = "CONV_TIT";
const char *StyleForm = "CONV_NEG";
const char *StyleNormal = "CONV";
struct Instit Ins; struct Instit Ins;
char StrExamDate[Cns_MAX_BYTES_DATE + 1]; char StrExamDate[Cns_MAX_BYTES_DATE + 1];
unsigned Year; unsigned Year;
@ -984,20 +980,6 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
Ins.InsCod = Gbl.Hierarchy.Ins.InsCod; Ins.InsCod = Gbl.Hierarchy.Ins.InsCod;
Ins_GetDataOfInstitutionByCod (&Ins,Ins_GET_BASIC_DATA); Ins_GetDataOfInstitutionByCod (&Ins,Ins_GET_BASIC_DATA);
switch (TypeViewExamAnnouncement)
{
case Exa_NORMAL_VIEW:
break;
case Exa_PRINT_VIEW:
StyleTitle = "CONV_TIT_IMPR";
StyleForm = "CONV_NEG_IMPR";
StyleNormal = "CONV_IMPR";
break;
case Exa_FORM_VIEW:
StyleForm = The_ClassFormInBox[Gbl.Prefs.Theme];
break;
}
/***** Build anchor string *****/ /***** Build anchor string *****/
Frm_SetAnchorStr (ExaCod,&Anchor); Frm_SetAnchorStr (ExaCod,&Anchor);
@ -1043,10 +1025,10 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("colspan=\"2\" class=\"CM\""); HTM_TD_Begin ("colspan=\"2\" class=\"CM\"");
if (TypeViewExamAnnouncement == Exa_PRINT_VIEW) if (TypeViewExamAnnouncement == Exa_PRINT_VIEW)
HTM_SPAN_Begin ("class=\"%s\"",StyleTitle); HTM_SPAN_Begin ("class=\"EXAM_TIT\"");
else else
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"%s\"", HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"EXAM_TIT\"",
Ins.WWW,StyleTitle); Ins.WWW);
Lgo_DrawLogo (Hie_INS,Ins.InsCod,Ins.FullName,64,NULL,true); Lgo_DrawLogo (Hie_INS,Ins.InsCod,Ins.FullName,64,NULL,true);
HTM_BR (); HTM_BR ();
HTM_Txt (Ins.FullName); HTM_Txt (Ins.FullName);
@ -1059,10 +1041,10 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Degree *****/ /***** Degree *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("colspan=\"2\" class=\"%s CM\"",StyleTitle); HTM_TD_Begin ("colspan=\"2\" class=\"EXAM_TIT CM\"");
if (TypeViewExamAnnouncement == Exa_NORMAL_VIEW) if (TypeViewExamAnnouncement == Exa_NORMAL_VIEW)
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"%s\"", HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"EXAM_TIT\"",
Gbl.Hierarchy.Deg.WWW,StyleTitle); Gbl.Hierarchy.Deg.WWW);
HTM_Txt (Gbl.Hierarchy.Deg.FullName); HTM_Txt (Gbl.Hierarchy.Deg.FullName);
if (TypeViewExamAnnouncement == Exa_NORMAL_VIEW) if (TypeViewExamAnnouncement == Exa_NORMAL_VIEW)
HTM_A_End (); HTM_A_End ();
@ -1071,7 +1053,7 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Title *****/ /***** Title *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("colspan=\"2\" class=\"%s CM\"",StyleNormal); HTM_TD_Begin ("colspan=\"2\" class=\"EXAM CM\"");
HTM_NBSP (); HTM_NBSP ();
HTM_BR (); HTM_BR ();
HTM_STRONG_Begin (); HTM_STRONG_Begin ();
@ -1081,7 +1063,7 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
HTM_TR_End (); HTM_TR_End ();
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("colspan=\"2\" class=\"%s LM\"",StyleNormal); HTM_TD_Begin ("colspan=\"2\" class=\"EXAM LM\"");
HTM_NBSP (); HTM_NBSP ();
HTM_TD_End (); HTM_TD_End ();
HTM_TR_End (); HTM_TR_End ();
@ -1089,9 +1071,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Name of the course *****/ /***** Name of the course *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("CrsName",Txt_EXAM_ANNOUNCEMENT_Course); Frm_LabelColumn ("RT",
TypeViewExamAnnouncement == Exa_FORM_VIEW ? "CrsName" :
NULL,
Txt_EXAM_ANNOUNCEMENT_Course);
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
HTM_INPUT_TEXT ("CrsName",Hie_MAX_CHARS_FULL_NAME,Gbl.ExamAnns.ExaDat.CrsFullName,false, HTM_INPUT_TEXT ("CrsName",Hie_MAX_CHARS_FULL_NAME,Gbl.ExamAnns.ExaDat.CrsFullName,false,
"id=\"CrsName\" size=\"30\""); "id=\"CrsName\" size=\"30\"");
@ -1108,13 +1093,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Year/semester (N.A., 1º, 2º, 3º, 4º, 5º...) *****/ /***** Year/semester (N.A., 1º, 2º, 3º, 4º, 5º...) *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"Year\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "Year" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Year_or_semester); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Year_or_semester);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_SELECT_Begin (false, HTM_SELECT_Begin (false,
@ -1136,13 +1120,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Exam session *****/ /***** Exam session *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"ExamSession\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "ExamSession" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Session); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Session);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
HTM_INPUT_TEXT ("ExamSession",Exa_MAX_CHARS_SESSION,Gbl.ExamAnns.ExaDat.Session,false, HTM_INPUT_TEXT ("ExamSession",Exa_MAX_CHARS_SESSION,Gbl.ExamAnns.ExaDat.Session,false,
"id=\"ExamSession\" size=\"30\""); "id=\"ExamSession\" size=\"30\"");
@ -1155,9 +1138,7 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Date of the exam *****/ /***** Date of the exam *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"%s RT\"",StyleForm); Frm_LabelColumn ("RT",NULL,Txt_EXAM_ANNOUNCEMENT_Exam_date);
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Exam_date);
HTM_TD_End ();
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
@ -1173,7 +1154,7 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
{ {
Dat_ConvDateToDateStr (&Gbl.ExamAnns.ExaDat.ExamDate, Dat_ConvDateToDateStr (&Gbl.ExamAnns.ExaDat.ExamDate,
StrExamDate); StrExamDate);
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
HTM_Txt (StrExamDate); HTM_Txt (StrExamDate);
HTM_TD_End (); HTM_TD_End ();
} }
@ -1182,11 +1163,9 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Start time *****/ /***** Start time *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"%s RT\"",StyleForm); Frm_LabelColumn ("RT",NULL,Txt_EXAM_ANNOUNCEMENT_Start_time);
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Start_time);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_SELECT_Begin (false, HTM_SELECT_Begin (false,
@ -1222,11 +1201,9 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Approximate duration of the exam *****/ /***** Approximate duration of the exam *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"%s RT\"",StyleForm); Frm_LabelColumn ("RT",NULL,Txt_EXAM_ANNOUNCEMENT_Approximate_duration);
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Approximate_duration);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_SELECT_Begin (false, HTM_SELECT_Begin (false,
@ -1277,13 +1254,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Place where the exam will be made *****/ /***** Place where the exam will be made *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"Place\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "Place" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Place_of_exam); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Place_of_exam);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_TEXTAREA_Begin ("id=\"Place\" name=\"Place\" cols=\"40\" rows=\"4\""); HTM_TEXTAREA_Begin ("id=\"Place\" name=\"Place\" cols=\"40\" rows=\"4\"");
@ -1304,13 +1280,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Exam mode *****/ /***** Exam mode *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"ExamMode\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "ExamMode" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Mode); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Mode);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_TEXTAREA_Begin ("id=\"ExamMode\" name=\"ExamMode\" cols=\"40\" rows=\"2\""); HTM_TEXTAREA_Begin ("id=\"ExamMode\" name=\"ExamMode\" cols=\"40\" rows=\"2\"");
@ -1331,13 +1306,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Structure of the exam *****/ /***** Structure of the exam *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"Structure\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "Structure" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Structure_of_the_exam); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Structure_of_the_exam);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_TEXTAREA_Begin ("id=\"Structure\" name=\"Structure\" cols=\"40\" rows=\"8\""); HTM_TEXTAREA_Begin ("id=\"Structure\" name=\"Structure\" cols=\"40\" rows=\"8\"");
@ -1358,13 +1332,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Documentation required *****/ /***** Documentation required *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"DocRequired\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "DocRequired" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Documentation_required); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Documentation_required);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_TEXTAREA_Begin ("id=\"DocRequired\" name=\"DocRequired\" cols=\"40\" rows=\"2\""); HTM_TEXTAREA_Begin ("id=\"DocRequired\" name=\"DocRequired\" cols=\"40\" rows=\"2\"");
@ -1385,13 +1358,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Material required *****/ /***** Material required *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"MatRequired\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "MatRequired" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Material_required); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Material_required);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_TEXTAREA_Begin ("id=\"MatRequired\" name=\"MatRequired\" cols=\"40\" rows=\"4\""); HTM_TEXTAREA_Begin ("id=\"MatRequired\" name=\"MatRequired\" cols=\"40\" rows=\"4\"");
@ -1412,13 +1384,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Material allowed *****/ /***** Material allowed *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"MatAllowed\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "MatAllowed" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Material_allowed); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Material_allowed);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_TEXTAREA_Begin ("id=\"MatAllowed\" name=\"MatAllowed\" cols=\"40\" rows=\"4\""); HTM_TEXTAREA_Begin ("id=\"MatAllowed\" name=\"MatAllowed\" cols=\"40\" rows=\"4\"");
@ -1439,13 +1410,12 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
/***** Other information to students *****/ /***** Other information to students *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"RT\""); Frm_LabelColumn ("RT",
HTM_LABEL_Begin ("for=\"OtherInfo\" class=\"%s\"",StyleForm); TypeViewExamAnnouncement == Exa_FORM_VIEW ? "OtherInfo" :
HTM_TxtF ("%s:",Txt_EXAM_ANNOUNCEMENT_Other_information); NULL,
HTM_LABEL_End (); Txt_EXAM_ANNOUNCEMENT_Other_information);
HTM_TD_End ();
HTM_TD_Begin ("class=\"%s LT\"",StyleNormal); HTM_TD_Begin ("class=\"EXAM LT\"");
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
HTM_TEXTAREA_Begin ("id=\"OtherInfo\" name=\"OtherInfo\" cols=\"40\" rows=\"5\""); HTM_TEXTAREA_Begin ("id=\"OtherInfo\" name=\"OtherInfo\" cols=\"40\" rows=\"5\"");

View File

@ -8539,7 +8539,7 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow)
HTM_TABLE_Begin (NULL); HTM_TABLE_Begin (NULL);
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("NewLinkURL",Txt_URL); Frm_LabelColumn ("RT","NewLinkURL",Txt_URL);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_URL ("NewLinkURL","",false, HTM_INPUT_URL ("NewLinkURL","",false,
@ -8553,7 +8553,7 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow)
if (asprintf (&Label,"%s&nbsp;(%s):&nbsp;",Txt_Save_as,Txt_optional) < 0) if (asprintf (&Label,"%s&nbsp;(%s):&nbsp;",Txt_Save_as,Txt_optional) < 0)
Lay_NotEnoughMemoryExit (); Lay_NotEnoughMemoryExit ();
Frm_LabelColumn ("NewLinkName",Label); Frm_LabelColumn ("RT","NewLinkName",Label);
free (Label); free (Label);
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LM\"");
@ -9602,7 +9602,7 @@ void Brw_ShowFileMetadata (void)
/***** Private or public? *****/ /***** Private or public? *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("PublicFile",Txt_Availability); Frm_LabelColumn ("RT","PublicFile",Txt_Availability);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LT\"");
if (ICanChangePublic) // I can change file to public if (ICanChangePublic) // I can change file to public
@ -9627,7 +9627,7 @@ void Brw_ShowFileMetadata (void)
/***** License *****/ /***** License *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("License",Txt_License); Frm_LabelColumn ("RT","License",Txt_License);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LT\"");
if (ICanEdit) // I can edit file properties if (ICanEdit) // I can edit file properties

View File

@ -279,18 +279,25 @@ void Frm_FreeAnchorStr (char *Anchor)
/************************* Show label column in form *************************/ /************************* Show label column in form *************************/
/*****************************************************************************/ /*****************************************************************************/
void Frm_LabelColumn (const char *Id,const char *Label) void Frm_LabelColumn (const char *TDClass,const char *Id,const char *Label)
{ {
extern const char *The_ClassFormInBox[The_NUM_THEMES]; extern const char *The_ClassFormInBox[The_NUM_THEMES];
HTM_TD_Begin ("class=\"RT\""); /***** Column/cell begin *****/
if (TDClass)
HTM_TD_Begin ("class=\"%s\"",TDClass);
else
HTM_TD_Begin (NULL);
/***** Label *****/
if (Id) if (Id)
HTM_LABEL_Begin ("for=\"%s\" class=\"%s\"", HTM_LABEL_Begin ("for=\"%s\" class=\"%s\"",
Id,The_ClassFormInBox[Gbl.Prefs.Theme]); Id,The_ClassFormInBox[Gbl.Prefs.Theme]);
else else
HTM_LABEL_Begin ("class=\"%s\"", HTM_LABEL_Begin ("class=\"DAT\"");
The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Label); HTM_TxtF ("%s:",Label);
HTM_LABEL_End (); HTM_LABEL_End ();
/***** Column/cell end *****/
HTM_TD_End (); HTM_TD_End ();
} }

View File

@ -68,6 +68,6 @@ void Frm_SetUniqueId (char UniqueId[Frm_MAX_BYTES_ID + 1]);
void Frm_SetAnchorStr (long Cod,char **Anchor); void Frm_SetAnchorStr (long Cod,char **Anchor);
void Frm_FreeAnchorStr (char *Anchor); void Frm_FreeAnchorStr (char *Anchor);
void Frm_LabelColumn (const char *Id,const char *Label); void Frm_LabelColumn (const char *TDClass,const char *Id,const char *Label);
#endif #endif

View File

@ -3829,7 +3829,7 @@ static void For_WriteFormForumPst (bool IsReply,const char *Subject)
/* Subject */ /* Subject */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Subject",Txt_MSG_Subject); Frm_LabelColumn ("RT","Subject",Txt_MSG_Subject);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Subject",Cns_MAX_CHARS_SUBJECT, HTM_INPUT_TEXT ("Subject",Cns_MAX_CHARS_SUBJECT,
@ -3843,7 +3843,7 @@ static void For_WriteFormForumPst (bool IsReply,const char *Subject)
/* Content */ /* Content */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Content",Txt_MSG_Content); Frm_LabelColumn ("RT","Content",Txt_MSG_Content);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Content\" name=\"Content\" class=\"MSG_CONTENT\" rows=\"10\""); HTM_TEXTAREA_Begin ("id=\"Content\" name=\"Content\" class=\"MSG_CONTENT\" rows=\"10\"");

View File

@ -1288,7 +1288,7 @@ static void Gam_PutFormsEditionGame (struct Game *Game,bool ItsANewGame)
/***** Game title *****/ /***** Game title *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Title",Txt_Title); Frm_LabelColumn ("RT","Title",Txt_Title);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Title",Gam_MAX_CHARS_TITLE,Game->Title,false, HTM_INPUT_TEXT ("Title",Gam_MAX_CHARS_TITLE,Game->Title,false,
@ -1315,7 +1315,7 @@ static void Gam_PutFormsEditionGame (struct Game *Game,bool ItsANewGame)
/***** Game text *****/ /***** Game text *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Txt",Txt_Description); Frm_LabelColumn ("RT","Txt",Txt_Description);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\"" HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""

View File

@ -95,9 +95,11 @@ void Hie_ConfigFullName (bool PutForm,const char *Label,Act_Action_t NextAction,
{ {
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("FullName",Label); Frm_LabelColumn ("RM",PutForm ? "FullName" :
NULL,
Label);
HTM_TD_Begin ("class=\"DAT_N LT\""); HTM_TD_Begin ("class=\"DAT_N LM\"");
if (PutForm) if (PutForm)
{ {
/* Form to change full name */ /* Form to change full name */
@ -124,9 +126,11 @@ void Hie_ConfigShrtName (bool PutForm,Act_Action_t NextAction,
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ShortName",Txt_Short_name); Frm_LabelColumn ("RM",PutForm ? "ShortName" :
NULL,
Txt_Short_name);
HTM_TD_Begin ("class=\"DAT_N LT\""); HTM_TD_Begin ("class=\"DAT_N LM\"");
if (PutForm) if (PutForm)
{ {
/* Form to change short name */ /* Form to change short name */
@ -153,11 +157,11 @@ void Hie_ConfigWWW (bool PutForm,Act_Action_t NextAction,
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (PutForm ? "WWW" : Frm_LabelColumn ("RM",PutForm ? "WWW" :
NULL, NULL,
Txt_Web); Txt_Web);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
if (PutForm) if (PutForm)
{ {
/* Form to change web */ /* Form to change web */
@ -190,9 +194,9 @@ void Hie_ConfigShortcut (const char *ParamName,long HieCod)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Shortcut); Frm_LabelColumn ("RM",NULL,Txt_Shortcut);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_A_Begin ("href=\"%s/%s?%s=%ld\" class=\"DAT\" target=\"_blank\"", HTM_A_Begin ("href=\"%s/%s?%s=%ld\" class=\"DAT\" target=\"_blank\"",
Cfg_URL_SWAD_CGI, Cfg_URL_SWAD_CGI,
Lan_STR_LANG_ID[Gbl.Prefs.Language], Lan_STR_LANG_ID[Gbl.Prefs.Language],
@ -217,7 +221,7 @@ void Hie_ConfigQR (const char *ParamName,long HieCod)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_QR_code); Frm_LabelColumn ("RT",NULL,Txt_QR_code);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LT\"");
QR_LinkTo (250,ParamName,HieCod); QR_LinkTo (250,ParamName,HieCod);
@ -269,7 +273,7 @@ void Hie_WriteMenuHierarchy (void)
with all the countries *****/ with all the countries *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("cty",Txt_Country); Frm_LabelColumn ("RT","cty",Txt_Country);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Cty_WriteSelectorOfCountry (); Cty_WriteSelectorOfCountry ();
@ -283,7 +287,7 @@ void Hie_WriteMenuHierarchy (void)
with the institutions of selected country *****/ with the institutions of selected country *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ins",Txt_Institution); Frm_LabelColumn ("RT","ins",Txt_Institution);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Ins_WriteSelectorOfInstitution (); Ins_WriteSelectorOfInstitution ();
@ -297,7 +301,7 @@ void Hie_WriteMenuHierarchy (void)
with all the centres of selected institution *****/ with all the centres of selected institution *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ctr",Txt_Centre); Frm_LabelColumn ("RT","ctr",Txt_Centre);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Ctr_WriteSelectorOfCentre (); Ctr_WriteSelectorOfCentre ();
@ -311,7 +315,7 @@ void Hie_WriteMenuHierarchy (void)
with all the degrees of selected centre *****/ with all the degrees of selected centre *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("deg",Txt_Degree); Frm_LabelColumn ("RT","deg",Txt_Degree);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Deg_WriteSelectorOfDegree (); Deg_WriteSelectorOfDegree ();
@ -325,7 +329,7 @@ void Hie_WriteMenuHierarchy (void)
with all the courses of selected degree *****/ with all the courses of selected degree *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("crs",Txt_Course); Frm_LabelColumn ("RT","crs",Txt_Course);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Crs_WriteSelectorOfCourse (); Crs_WriteSelectorOfCourse ();

View File

@ -122,7 +122,7 @@ void Ind_ReqIndicatorsCourses (void)
/* Scope */ /* Scope */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ScopeInd",Txt_Scope); Frm_LabelColumn ("RT","ScopeInd",Txt_Scope);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Sco_PutSelectorScope ("ScopeInd",true); Sco_PutSelectorScope ("ScopeInd",true);
@ -133,7 +133,7 @@ void Ind_ReqIndicatorsCourses (void)
/* Compute stats for a type of degree */ /* Compute stats for a type of degree */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("OthDegTypCod",Txt_Types_of_degree); Frm_LabelColumn ("RT","OthDegTypCod",Txt_Types_of_degree);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LT\"");
DT_WriteSelectorDegreeTypes (); DT_WriteSelectorDegreeTypes ();
@ -147,9 +147,9 @@ void Ind_ReqIndicatorsCourses (void)
/* Compute stats for courses with teachers belonging to any department or to a particular departament? */ /* Compute stats for courses with teachers belonging to any department or to a particular departament? */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (Dpt_PARAM_DPT_COD_NAME,Txt_Department); Frm_LabelColumn ("RT",Dpt_PARAM_DPT_COD_NAME,Txt_Department);
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LT\"");
Dpt_WriteSelectorDepartment (Gbl.Hierarchy.Ins.InsCod, // Departments in current insitution Dpt_WriteSelectorDepartment (Gbl.Hierarchy.Ins.InsCod, // Departments in current insitution
Gbl.Stat.DptCod, // Selected department Gbl.Stat.DptCod, // Selected department
"INDICATORS_INPUT", // Selector class "INDICATORS_INPUT", // Selector class

View File

@ -73,7 +73,7 @@ static void Ins_PutIconsToPrintAndUpload (void);
static void Ins_ConfigTitle (bool PutLink); static void Ins_ConfigTitle (bool PutLink);
static bool Ins_GetIfMapIsAvailable (void); static bool Ins_GetIfMapIsAvailable (void);
static void Ins_ConfigMap (void); static void Ins_ConfigMap (void);
static void Ins_ConfigCountry (bool PrintView); static void Ins_ConfigCountry (bool PutForm);
static void Ins_ConfigFullName (bool PutForm); static void Ins_ConfigFullName (bool PutForm);
static void Ins_ConfigShrtName (bool PutForm); static void Ins_ConfigShrtName (bool PutForm);
static void Ins_ConfigWWW (bool PutForm); static void Ins_ConfigWWW (bool PutForm);
@ -318,6 +318,7 @@ static void Ins_Configuration (bool PrintView)
{ {
extern const char *Hlp_INSTITUTION_Information; extern const char *Hlp_INSTITUTION_Information;
bool PutLink; bool PutLink;
bool PutFormCty;
bool PutFormName; bool PutFormName;
bool PutFormWWW; bool PutFormWWW;
@ -327,6 +328,7 @@ static void Ins_Configuration (bool PrintView)
/***** Initializations *****/ /***** Initializations *****/
PutLink = !PrintView && Gbl.Hierarchy.Ins.WWW[0]; PutLink = !PrintView && Gbl.Hierarchy.Ins.WWW[0];
PutFormCty =
PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM; PutFormName = !PrintView && Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM;
PutFormWWW = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM; PutFormWWW = !PrintView && Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM;
@ -350,7 +352,7 @@ static void Ins_Configuration (bool PrintView)
HTM_TABLE_BeginWidePadding (2); HTM_TABLE_BeginWidePadding (2);
/***** Country *****/ /***** Country *****/
Ins_ConfigCountry (PrintView); Ins_ConfigCountry (PutFormCty);
/***** Institution name *****/ /***** Institution name *****/
Ins_ConfigFullName (PutFormName); Ins_ConfigFullName (PutFormName);
@ -505,19 +507,19 @@ static void Ins_ConfigMap (void)
/***************** Show country in institution configuration *****************/ /***************** Show country in institution configuration *****************/
/*****************************************************************************/ /*****************************************************************************/
static void Ins_ConfigCountry (bool PrintView) static void Ins_ConfigCountry (bool PutForm)
{ {
extern const char *Txt_Country; extern const char *Txt_Country;
unsigned NumCty; unsigned NumCty;
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("OthCtyCod",Txt_Country); Frm_LabelColumn ("RM",PutForm ? "OthCtyCod" :
NULL,
Txt_Country);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
if (!PrintView && if (PutForm)
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
// Only system admins can move an institution to another country
{ {
/* Get list of countries */ /* Get list of countries */
Cty_GetListCountries (Cty_GET_BASIC_DATA); Cty_GetListCountries (Cty_GET_BASIC_DATA);
@ -604,9 +606,9 @@ static void Ins_ConfigNumUsrs (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Users_of_the_institution); Frm_LabelColumn ("RM",NULL,Txt_Users_of_the_institution);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Usr_GetNumUsrsWhoClaimToBelongToIns (Gbl.Hierarchy.Ins.InsCod)); HTM_Unsigned (Usr_GetNumUsrsWhoClaimToBelongToIns (Gbl.Hierarchy.Ins.InsCod));
HTM_TD_End (); HTM_TD_End ();
@ -624,10 +626,10 @@ static void Ins_ConfigNumCtrs (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Centres); Frm_LabelColumn ("RM",NULL,Txt_Centres);
/* Form to go to see centres of this institution */ /* Form to go to see centres of this institution */
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LM\"");
Frm_StartFormGoTo (ActSeeCtr); Frm_StartFormGoTo (ActSeeCtr);
Ins_PutParamInsCod (Gbl.Hierarchy.Ins.InsCod); Ins_PutParamInsCod (Gbl.Hierarchy.Ins.InsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
@ -653,9 +655,9 @@ static void Ins_ConfigNumDegs (void)
/***** Number of degrees *****/ /***** Number of degrees *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Degrees); Frm_LabelColumn ("RM",NULL,Txt_Degrees);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Deg_GetNumDegsInIns (Gbl.Hierarchy.Ins.InsCod)); HTM_Unsigned (Deg_GetNumDegsInIns (Gbl.Hierarchy.Ins.InsCod));
HTM_TD_End (); HTM_TD_End ();
@ -672,9 +674,9 @@ static void Ins_ConfigNumCrss (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Courses); Frm_LabelColumn ("RM",NULL,Txt_Courses);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Crs_GetNumCrssInIns (Gbl.Hierarchy.Ins.InsCod)); HTM_Unsigned (Crs_GetNumCrssInIns (Gbl.Hierarchy.Ins.InsCod));
HTM_TD_End (); HTM_TD_End ();
@ -691,9 +693,9 @@ static void Ins_ConfigNumDpts (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Txt_Departments); Frm_LabelColumn ("RM",NULL,Txt_Departments);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Dpt_GetNumDepartmentsInInstitution (Gbl.Hierarchy.Ins.InsCod)); HTM_Unsigned (Dpt_GetNumDepartmentsInInstitution (Gbl.Hierarchy.Ins.InsCod));
HTM_TD_End (); HTM_TD_End ();
@ -711,10 +713,11 @@ static void Ins_ShowNumUsrsInCrssOfIns (Rol_Role_t Role)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (NULL,Role == Rol_UNK ? Txt_Users_in_courses : Frm_LabelColumn ("RM",NULL,
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]); Role == Rol_UNK ? Txt_Users_in_courses :
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LM\"");
HTM_Unsigned (Usr_GetNumUsrsInCrssOfIns (Role,Gbl.Hierarchy.Ins.InsCod)); HTM_Unsigned (Usr_GetNumUsrsInCrssOfIns (Role,Gbl.Hierarchy.Ins.InsCod));
HTM_TD_End (); HTM_TD_End ();

View File

@ -1206,7 +1206,6 @@ void Mai_ShowFormChangeOtherUsrEmail (void)
static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe, static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
bool IMustFillInEmail,bool IShouldConfirmEmail) bool IMustFillInEmail,bool IShouldConfirmEmail)
{ {
extern const char *The_ClassFormInBox[The_NUM_THEMES];
extern const char *Txt_Before_going_to_any_other_option_you_must_fill_in_your_email_address; extern const char *Txt_Before_going_to_any_other_option_you_must_fill_in_your_email_address;
extern const char *Txt_Please_confirm_your_email_address; extern const char *Txt_Please_confirm_your_email_address;
extern const char *Txt_Current_email; extern const char *Txt_Current_email;
@ -1248,7 +1247,7 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
HTM_TABLE_BeginWidePadding (2); HTM_TABLE_BeginWidePadding (2);
/***** List emails *****/ /***** List emails *****/
for (NumEmail = 1; for (NumEmail = 1;
NumEmail <= NumEmails; NumEmail <= NumEmails;
NumEmail++) NumEmail++)
{ {
@ -1256,32 +1255,20 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
row = mysql_fetch_row (mysql_res); row = mysql_fetch_row (mysql_res);
Confirmed = (row[1][0] == 'Y'); Confirmed = (row[1][0] == 'Y');
HTM_TR_Begin (NULL);
if (NumEmail == 1) if (NumEmail == 1)
{ {
HTM_TR_Begin (NULL);
/* The first mail is the current one */ /* The first mail is the current one */
HTM_TD_Begin ("class=\"REC_C1_BOT RT\""); Frm_LabelColumn ("REC_C1_BOT RT",NULL,Txt_Current_email);
HTM_LABEL_Begin ("for=\"Email\" class=\"%s\"",
The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_Current_email);
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"REC_C2_BOT LT USR_ID\""); HTM_TD_Begin ("class=\"REC_C2_BOT LT USR_ID\"");
} }
else // NumEmail >= 2 else if (NumEmail == 2)
{ {
if (NumEmail == 2) HTM_TR_Begin (NULL);
{
HTM_TD_Begin ("rowspan=\"%u\" class=\"REC_C1_BOT RT\"", Frm_LabelColumn ("REC_C1_BOT RT",NULL,Txt_Other_emails);
NumEmails - 1);
HTM_LABEL_Begin ("for=\"Email\" class=\"%s\"",
The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_Other_emails);
HTM_LABEL_End ();
HTM_TD_End ();
}
HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\""); HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\"");
} }
@ -1353,20 +1340,22 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TD_End (); if (NumEmail == 1 ||
HTM_TR_End (); NumEmail == NumEmails)
{
HTM_TD_End ();
HTM_TR_End ();
}
else
HTM_BR ();
} }
/***** Form to enter new email *****/ /***** Form to enter new email *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"REC_C1_BOT RT\""); Frm_LabelColumn ("REC_C1_BOT RT","NewEmail",
HTM_LABEL_Begin ("for=\"NewEmail\" class=\"%s\"", NumEmails ? Txt_New_email : // A new email
The_ClassFormInBox[Gbl.Prefs.Theme]); Txt_Email); // The first email
HTM_TxtF ("%s:",NumEmails ? Txt_New_email : // A new email
Txt_Email); // The first email
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\""); HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\"");
if (ItsMe) if (ItsMe)

View File

@ -1243,7 +1243,7 @@ static void Mch_PutFormNewMatch (const struct Game *Game)
/***** Match title *****/ /***** Match title *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Title",Txt_Title); Frm_LabelColumn ("RT","Title",Txt_Title);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Title",Gam_MAX_CHARS_TITLE,Game->Title,false, HTM_INPUT_TEXT ("Title",Gam_MAX_CHARS_TITLE,Game->Title,false,

View File

@ -534,7 +534,7 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (char Content[Cns_MAX_BYTES_
/***** Message subject *****/ /***** Message subject *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("MsgSubject",Txt_MSG_Subject); Frm_LabelColumn ("RT","MsgSubject",Txt_MSG_Subject);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"MsgSubject\" name=\"Subject\"" HTM_TEXTAREA_Begin ("id=\"MsgSubject\" name=\"Subject\""
@ -581,9 +581,9 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (char Content[Cns_MAX_BYTES_
/***** Message content *****/ /***** Message content *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("MsgContent",Txt_MSG_Content); Frm_LabelColumn ("RT","MsgContent",Txt_MSG_Content);
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"MsgContent\" name=\"Content\"" HTM_TEXTAREA_Begin ("id=\"MsgContent\" name=\"Content\""
" class=\"MSG_CONTENT\" rows=\"20\""); " class=\"MSG_CONTENT\" rows=\"20\"");
@ -611,7 +611,7 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (char Content[Cns_MAX_BYTES_
/***** Message content *****/ /***** Message content *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("MsgContent",Txt_MSG_Content); Frm_LabelColumn ("RT","MsgContent",Txt_MSG_Content);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"MsgContent\" name=\"Content\"" HTM_TEXTAREA_Begin ("id=\"MsgContent\" name=\"Content\""

View File

@ -216,7 +216,6 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
bool IMustFillNickname) bool IMustFillNickname)
{ {
extern const char *Hlp_PROFILE_Account; extern const char *Hlp_PROFILE_Account;
extern const char *The_ClassFormInBox[The_NUM_THEMES];
extern const char *Txt_Nickname; extern const char *Txt_Nickname;
extern const char *Txt_Before_going_to_any_other_option_you_must_fill_your_nickname; extern const char *Txt_Before_going_to_any_other_option_you_must_fill_your_nickname;
extern const char *Txt_Current_nickname; extern const char *Txt_Current_nickname;
@ -262,22 +261,19 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
HTM_TABLE_BeginWidePadding (2); HTM_TABLE_BeginWidePadding (2);
/***** List nicknames *****/ /***** List nicknames *****/
for (NumNick = 1; for (NumNick = 1;
NumNick <= NumNicks; NumNick <= NumNicks;
NumNick++) NumNick++)
{ {
/* Get nickname */ /* Get nickname */
row = mysql_fetch_row (mysql_res); row = mysql_fetch_row (mysql_res);
HTM_TR_Begin (NULL);
if (NumNick == 1) if (NumNick == 1)
{ {
/* The first nickname is the current one */ /* The first nickname is the current one */
HTM_TD_Begin ("class=\"REC_C1_BOT RT\""); HTM_TR_Begin (NULL);
HTM_LABEL_Begin ("for=\"Nick\" class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_Current_nickname); Frm_LabelColumn ("REC_C1_BOT RT",NULL,Txt_Current_nickname);
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"REC_C2_BOT LT USR_ID\""); HTM_TD_Begin ("class=\"REC_C2_BOT LT USR_ID\"");
} }
@ -285,16 +281,12 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
{ {
if (NumNick == 2) if (NumNick == 2)
{ {
HTM_TD_Begin ("rowspan=\"%u\" class=\"REC_C1_BOT RT\"", HTM_TR_Begin (NULL);
NumNicks - 1);
HTM_LABEL_Begin ("for=\"Nick\" class=\"%s\"",
The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_Other_nicknames);
HTM_LABEL_End ();
HTM_TD_End ();
}
HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\""); Frm_LabelColumn ("REC_C1_BOT RT",NULL,Txt_Other_nicknames);
HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\"");
}
/* Form to remove old nickname */ /* Form to remove old nickname */
if (ItsMe) if (ItsMe)
@ -362,19 +354,22 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TD_End (); if (NumNick == 1 ||
HTM_TR_End (); NumNick == NumNicks)
{
HTM_TD_End ();
HTM_TR_End ();
}
else
HTM_BR ();
} }
/***** Form to enter new nickname *****/ /***** Form to enter new nickname *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"REC_C1_BOT RT\""); Frm_LabelColumn ("REC_C1_BOT RT","NewNick",
HTM_LABEL_Begin ("for=\"NewNick\" class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]); NumNicks ? Txt_New_nickname : // A new nickname
HTM_TxtF ("%s:",NumNicks ? Txt_New_nickname : // A new nickname Txt_Nickname); // The first nickname
Txt_Nickname); // The first nickname
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\""); HTM_TD_Begin ("class=\"REC_C2_BOT LT DAT\"");
if (ItsMe) if (ItsMe)
@ -402,7 +397,7 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
Gbl.Usrs.Me.UsrDat.Nickname); Gbl.Usrs.Me.UsrDat.Nickname);
HTM_INPUT_TEXT ("NewNick",1 + Nck_MAX_CHARS_NICKNAME_WITHOUT_ARROBA, HTM_INPUT_TEXT ("NewNick",1 + Nck_MAX_CHARS_NICKNAME_WITHOUT_ARROBA,
NicknameWithArroba,false, NicknameWithArroba,false,
"size=\"18\""); "id=\"NewNick\" size=\"18\"");
HTM_BR (); HTM_BR ();
Btn_PutCreateButtonInline (NumNicks ? Txt_Change_nickname : // I already have a nickname Btn_PutCreateButtonInline (NumNicks ? Txt_Change_nickname : // I already have a nickname
Txt_Save_changes); // I have no nickname yet); Txt_Save_changes); // I have no nickname yet);

View File

@ -684,11 +684,7 @@ void Pwd_ShowFormChgMyPwd (void)
{ {
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
HTM_TD_Begin ("class=\"REC_C1_BOT RM\""); Frm_LabelColumn ("REC_C1_BOT RM","UsrPwd",Txt_Current_password);
HTM_LABEL_Begin ("for=\"UsrPwd\" class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_Current_password);
HTM_LABEL_End ();
HTM_TD_End ();
HTM_TD_Begin ("class=\"REC_C2_BOT LM\""); HTM_TD_Begin ("class=\"REC_C2_BOT LM\"");
HTM_INPUT_PASSWORD ("UsrPwd",NULL,"off",true, HTM_INPUT_PASSWORD ("UsrPwd",NULL,"off",true,
@ -734,7 +730,7 @@ void Pwd_PutFormToGetNewPasswordOnce (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
/***** Label ****/ /***** Label ****/
Frm_LabelColumn ("Paswd",Txt_Password); Frm_LabelColumn ("RT","Paswd",Txt_Password);
/***** Input ****/ /***** Input ****/
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
@ -761,11 +757,7 @@ void Pwd_PutFormToGetNewPasswordTwice (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
/* Label */ /* Label */
HTM_TD_Begin ("class=\"REC_C1_BOT RM\""); Frm_LabelColumn ("REC_C1_BOT RM","Paswd1",Txt_New_password);
HTM_LABEL_Begin ("for=\"Paswd1\" class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_New_password);
HTM_LABEL_End ();
HTM_TD_End ();
/* Input */ /* Input */
HTM_TD_Begin ("class=\"REC_C2_BOT LM\""); HTM_TD_Begin ("class=\"REC_C2_BOT LM\"");
@ -780,11 +772,7 @@ void Pwd_PutFormToGetNewPasswordTwice (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
/* Label */ /* Label */
HTM_TD_Begin ("class=\"REC_C1_BOT RM\""); Frm_LabelColumn ("REC_C1_BOT RM","Paswd2",Txt_Retype_new_password);
HTM_LABEL_Begin ("for=\"Paswd2\" class=\"%s\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
HTM_TxtF ("%s:",Txt_Retype_new_password);
HTM_LABEL_End ();
HTM_TD_End ();
/* Input */ /* Input */
HTM_TD_Begin ("class=\"REC_C2_BOT LM\""); HTM_TD_Begin ("class=\"REC_C2_BOT LM\"");

View File

@ -1792,7 +1792,7 @@ static void Pho_PutSelectorForTypeOfAvg (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("AvgType",Txt_Average_type); Frm_LabelColumn ("RT","AvgType",Txt_Average_type);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Frm_StartForm (ActSeePhoDeg); Frm_StartForm (ActSeePhoDeg);
@ -1853,7 +1853,7 @@ static void Pho_PutSelectorForHowComputePhotoSize (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("PhotoSize",Txt_Size_of_photos); Frm_LabelColumn ("RT","PhotoSize",Txt_Size_of_photos);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Frm_StartForm (ActSeePhoDeg); Frm_StartForm (ActSeePhoDeg);
@ -1914,7 +1914,7 @@ static void Pho_PutSelectorForHowOrderDegrees (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Order",Txt_Sort_degrees_by); Frm_LabelColumn ("RT","Order",Txt_Sort_degrees_by);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Frm_StartForm (ActSeePhoDeg); Frm_StartForm (ActSeePhoDeg);

View File

@ -3471,7 +3471,7 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
/* Project title */ /* Project title */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Title",Txt_Title); Frm_LabelColumn ("RT","Title",Txt_Title);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Title",Prj_MAX_CHARS_PROJECT_TITLE,Prj->Title,false, HTM_INPUT_TEXT ("Title",Prj_MAX_CHARS_PROJECT_TITLE,Prj->Title,false,
@ -3484,7 +3484,7 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
/* Department */ /* Department */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (Dpt_PARAM_DPT_COD_NAME,Txt_Department); Frm_LabelColumn ("RT",Dpt_PARAM_DPT_COD_NAME,Txt_Department);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Dpt_WriteSelectorDepartment (Gbl.Hierarchy.Ins.InsCod, // Departments in current institution Dpt_WriteSelectorDepartment (Gbl.Hierarchy.Ins.InsCod, // Departments in current institution
@ -3572,7 +3572,7 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
/* URL for additional info */ /* URL for additional info */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("WWW",Txt_URL); Frm_LabelColumn ("RT","WWW",Txt_URL);
HTM_TD_Begin ("class=\"DAT LT\""); HTM_TD_Begin ("class=\"DAT LT\"");
HTM_INPUT_URL ("URL",Prj->URL,false, HTM_INPUT_URL ("URL",Prj->URL,false,
@ -3606,7 +3606,7 @@ static void Prj_EditOneProjectTxtArea (const char *Id,
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn (Id,Label); Frm_LabelColumn ("RT",Id,Label);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"%s\" name=\"%s\" rows=\"%u\"%s" HTM_TEXTAREA_Begin ("id=\"%s\" name=\"%s\" rows=\"%u\"%s"
@ -3904,7 +3904,7 @@ void Prj_ShowFormConfig (void)
HTM_TABLE_BeginCenterPadding (2); HTM_TABLE_BeginCenterPadding (2);
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Editable",Txt_Editable); Frm_LabelColumn ("RT","Editable",Txt_Editable);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_CHECKBOX ("Editable",false, HTM_INPUT_CHECKBOX ("Editable",false,

View File

@ -427,7 +427,7 @@ void Sta_AskShowGblHits (void)
/***** Users' roles whose accesses we want to see *****/ /***** Users' roles whose accesses we want to see *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Role",Txt_Users); Frm_LabelColumn ("RT","Role",Txt_Users);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_SELECT_Begin (false, HTM_SELECT_Begin (false,
@ -452,7 +452,7 @@ void Sta_AskShowGblHits (void)
/***** Clicks made from anywhere, current centre, current degree or current course *****/ /***** Clicks made from anywhere, current centre, current degree or current course *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ScopeSta",Txt_Scope); Frm_LabelColumn ("RT","ScopeSta",Txt_Scope);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Gbl.Scope.Allowed = 1 << Hie_SYS | Gbl.Scope.Allowed = 1 << Hie_SYS |
@ -471,7 +471,7 @@ void Sta_AskShowGblHits (void)
/***** Count type for the statistic *****/ /***** Count type for the statistic *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("CountType",Txt_Show); Frm_LabelColumn ("RT","CountType",Txt_Show);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Sta_WriteSelectorCountType (); Sta_WriteSelectorCountType ();
@ -592,9 +592,9 @@ static void Sta_WriteSelectorAction (void)
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("StatAct",Txt_Action); Frm_LabelColumn ("RT","StatAct",Txt_Action);
HTM_TD_Begin ("class=\"LM\""); HTM_TD_Begin ("class=\"LT\"");
HTM_SELECT_Begin (false, HTM_SELECT_Begin (false,
"id=\"StatAct\" name=\"StatAct\" class=\"STAT_SEL\""); "id=\"StatAct\" name=\"StatAct\" class=\"STAT_SEL\"");
HTM_OPTION (HTM_Type_STRING,"0",Gbl.Stat.NumAction == 0,false, HTM_OPTION (HTM_Type_STRING,"0",Gbl.Stat.NumAction == 0,false,

View File

@ -1863,7 +1863,7 @@ void Svy_RequestCreatOrEditSvy (void)
/***** Scope of the survey *****/ /***** Scope of the survey *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("ScopeSvy",Txt_Scope); Frm_LabelColumn ("RT","ScopeSvy",Txt_Scope);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
Svy_SetDefaultAndAllowedScope (&Svy); Svy_SetDefaultAndAllowedScope (&Svy);
@ -1876,7 +1876,7 @@ void Svy_RequestCreatOrEditSvy (void)
/***** Survey title *****/ /***** Survey title *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Title",Txt_Title); Frm_LabelColumn ("RT","Title",Txt_Title);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_TEXT ("Title",Svy_MAX_CHARS_SURVEY_TITLE,Svy.Title,false, HTM_INPUT_TEXT ("Title",Svy_MAX_CHARS_SURVEY_TITLE,Svy.Title,false,
@ -1892,7 +1892,7 @@ void Svy_RequestCreatOrEditSvy (void)
/***** Survey text *****/ /***** Survey text *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Txt",Txt_Description); Frm_LabelColumn ("RT","Txt",Txt_Description);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\"" HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""
@ -2680,7 +2680,7 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,
/***** Stem *****/ /***** Stem *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Txt",Txt_Wording); Frm_LabelColumn ("RT","Txt",Txt_Wording);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" cols=\"60\" rows=\"4\""); HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" cols=\"60\" rows=\"4\"");

View File

@ -336,7 +336,7 @@ void Tst_ShowFormAskTst (void)
/***** Number of questions to generate ****/ /***** Number of questions to generate ****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("NumQst",Txt_No_of_questions); Frm_LabelColumn ("RT","NumQst",Txt_No_of_questions);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_INPUT_LONG ("NumQst", HTM_INPUT_LONG ("NumQst",
@ -1947,9 +1947,10 @@ static void Tst_ShowFormConfigTst (void)
/***** Minimum time between consecutive tests, per question *****/ /***** Minimum time between consecutive tests, per question *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("MinTimeNxtTstPerQst",Txt_Minimum_time_seconds_per_question_between_two_tests); Frm_LabelColumn ("RT","MinTimeNxtTstPerQst",
Txt_Minimum_time_seconds_per_question_between_two_tests);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LB\"");
snprintf (StrMinTimeNxtTstPerQst,sizeof (StrMinTimeNxtTstPerQst), snprintf (StrMinTimeNxtTstPerQst,sizeof (StrMinTimeNxtTstPerQst),
"%lu", "%lu",
Gbl.Test.Config.MinTimeNxtTstPerQst); Gbl.Test.Config.MinTimeNxtTstPerQst);
@ -5193,7 +5194,7 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
/***** Stem and image *****/ /***** Stem and image *****/
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
Frm_LabelColumn ("Stem",Txt_Wording); Frm_LabelColumn ("RT","Stem",Txt_Wording);
HTM_TD_Begin ("class=\"LT\""); HTM_TD_Begin ("class=\"LT\"");
HTM_TEXTAREA_Begin ("id=\"Stem\" name=\"Stem\" class=\"STEM_TEXTAREA\"" HTM_TEXTAREA_Begin ("id=\"Stem\" name=\"Stem\" class=\"STEM_TEXTAREA\""