mirror of
https://github.com/acanas/swad-core.git
synced 2024-06-02 06:45:30 +02:00
Version19.31.23
This commit is contained in:
parent
0af579adbd
commit
f12ab4bc97
|
@ -487,7 +487,7 @@ 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.31.22 (2019-10-08)"
|
#define Log_PLATFORM_VERSION "SWAD 19.31.23 (2019-10-08)"
|
||||||
#define CSS_FILE "swad19.29.css"
|
#define CSS_FILE "swad19.29.css"
|
||||||
#define JS_FILE "swad19.30.js"
|
#define JS_FILE "swad19.30.js"
|
||||||
/*
|
/*
|
||||||
|
@ -495,6 +495,7 @@ ps2pdf source.ps destination.pdf
|
||||||
// TODO: Un TFG preasignado sin estudiante tiene que salir un triángulo amarillo
|
// TODO: Un TFG preasignado sin estudiante tiene que salir un triángulo amarillo
|
||||||
// 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.)
|
||||||
|
|
||||||
|
Version 19.31.23: Oct 08, 2019 Code refactoring in HTML tables. (247076 lines)
|
||||||
Version 19.31.22: Oct 08, 2019 Code refactoring in HTML tables. (247099 lines)
|
Version 19.31.22: Oct 08, 2019 Code refactoring in HTML tables. (247099 lines)
|
||||||
Version 19.31.21: Oct 08, 2019 Code refactoring in HTML tables. (247124 lines)
|
Version 19.31.21: Oct 08, 2019 Code refactoring in HTML tables. (247124 lines)
|
||||||
Version 19.31.20: Oct 07, 2019 Code refactoring in HTML tables. (247192 lines)
|
Version 19.31.20: Oct 07, 2019 Code refactoring in HTML tables. (247192 lines)
|
||||||
|
|
|
@ -861,15 +861,13 @@ static void Con_WriteRowConnectedUsrOnRightColumn (Rol_Role_t Role)
|
||||||
/***** Write time from last access *****/
|
/***** Write time from last access *****/
|
||||||
Font = (Gbl.Usrs.Connected.Lst[Gbl.Usrs.Connected.NumUsr].ThisCrs ? "CON_SINCE CON_CRS" :
|
Font = (Gbl.Usrs.Connected.Lst[Gbl.Usrs.Connected.NumUsr].ThisCrs ? "CON_SINCE CON_CRS" :
|
||||||
"CON_SINCE CON_NO_CRS");
|
"CON_SINCE CON_NO_CRS");
|
||||||
|
|
||||||
Tbl_StartCellAttr ("class=\"%s COLOR%u\"",Font,Gbl.RowEvenOdd);
|
Tbl_StartCellAttr ("class=\"%s COLOR%u\"",Font,Gbl.RowEvenOdd);
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<div id=\"hm%u\">",
|
fprintf (Gbl.F.Out,"<div id=\"hm%u\">",
|
||||||
Gbl.Usrs.Connected.NumUsr); // Used for automatic update, only when displayed on right column
|
Gbl.Usrs.Connected.NumUsr); // Used for automatic update, only when displayed on right column
|
||||||
Dat_WriteHoursMinutesSecondsFromSeconds (Gbl.Usrs.Connected.Lst[Gbl.Usrs.Connected.NumUsr].TimeDiff);
|
Dat_WriteHoursMinutesSecondsFromSeconds (Gbl.Usrs.Connected.Lst[Gbl.Usrs.Connected.NumUsr].TimeDiff);
|
||||||
fprintf (Gbl.F.Out,"</div>"); // Used for automatic update, only when displayed on right column
|
fprintf (Gbl.F.Out,"</div>"); // Used for automatic update, only when displayed on right column
|
||||||
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
Tbl_EndRow ();
|
Tbl_EndRow ();
|
||||||
|
|
||||||
if (!ItsMe)
|
if (!ItsMe)
|
||||||
|
|
59
swad_date.c
59
swad_date.c
|
@ -430,14 +430,14 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** Start date-time *****/
|
/***** Start date-time *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<label class=\"%s\">%s:</label>",
|
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:</label>",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||||
Txt_START_END_TIME[Dat_START_TIME]);
|
Txt_START_END_TIME[Dat_START_TIME]);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Date-time */
|
/* Date-time */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
Dat_WriteFormClientLocalDateTimeFromTimeUTC ("Start",
|
Dat_WriteFormClientLocalDateTimeFromTimeUTC ("Start",
|
||||||
"Start",
|
"Start",
|
||||||
Gbl.DateRange.TimeUTC[0],
|
Gbl.DateRange.TimeUTC[0],
|
||||||
|
@ -450,8 +450,8 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** "Yesterday" and "Today" buttons *****/
|
/***** "Yesterday" and "Today" buttons *****/
|
||||||
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("rowspan=\"2\" class=\"LEFT_MIDDLE\"");
|
||||||
"<input type=\"button\" name=\"Yesterday\" value=\"%s\""
|
fprintf (Gbl.F.Out,"<input type=\"button\" name=\"Yesterday\" value=\"%s\""
|
||||||
" onclick=\"setDateToYesterday('Start','End');\" />"
|
" onclick=\"setDateToYesterday('Start','End');\" />"
|
||||||
"<input type=\"button\" name=\"Today\" value=\"%s\""
|
"<input type=\"button\" name=\"Today\" value=\"%s\""
|
||||||
" onclick=\"setDateToToday('Start','End');\" />",
|
" onclick=\"setDateToToday('Start','End');\" />",
|
||||||
|
@ -463,14 +463,14 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** End date-time *****/
|
/***** End date-time *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<label class=\"%s\">%s:</label>",
|
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:</label>",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||||
Txt_START_END_TIME[Dat_END_TIME]);
|
Txt_START_END_TIME[Dat_END_TIME]);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Date-time */
|
/* Date-time */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
Dat_WriteFormClientLocalDateTimeFromTimeUTC ("End",
|
Dat_WriteFormClientLocalDateTimeFromTimeUTC ("End",
|
||||||
"End",
|
"End",
|
||||||
Gbl.DateRange.TimeUTC[1],
|
Gbl.DateRange.TimeUTC[1],
|
||||||
|
@ -508,13 +508,13 @@ void Dat_PutFormStartEndClientLocalDateTimes (time_t TimeUTC[2],
|
||||||
/* Date-time */
|
/* Date-time */
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<label class=\"%s\">%s:</label>",
|
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:</label>",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||||
Txt_START_END_TIME[StartEndTime]);
|
Txt_START_END_TIME[StartEndTime]);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
Dat_WriteFormClientLocalDateTimeFromTimeUTC (Id[StartEndTime],
|
Dat_WriteFormClientLocalDateTimeFromTimeUTC (Id[StartEndTime],
|
||||||
Id[StartEndTime],
|
Id[StartEndTime],
|
||||||
TimeUTC[StartEndTime],
|
TimeUTC[StartEndTime],
|
||||||
|
@ -561,8 +561,8 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** Year *****/
|
/***** Year *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<select id=\"%sYear\" name=\"%sYear\""
|
fprintf (Gbl.F.Out,"<select id=\"%sYear\" name=\"%sYear\""
|
||||||
" onchange=\""
|
" onchange=\""
|
||||||
"adjustDateForm('%s');"
|
"adjustDateForm('%s');"
|
||||||
"setUTCFromLocalDateTimeForm('%s');",
|
"setUTCFromLocalDateTimeForm('%s');",
|
||||||
|
@ -580,8 +580,8 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Month *****/
|
/***** Month *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||||
"<select id=\"%sMonth\" name=\"%sMonth\""
|
fprintf (Gbl.F.Out,"<select id=\"%sMonth\" name=\"%sMonth\""
|
||||||
" onchange=\""
|
" onchange=\""
|
||||||
"adjustDateForm('%s');"
|
"adjustDateForm('%s');"
|
||||||
"setUTCFromLocalDateTimeForm('%s');",
|
"setUTCFromLocalDateTimeForm('%s');",
|
||||||
|
@ -599,8 +599,8 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Day *****/
|
/***** Day *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
"<select id=\"%sDay\" name=\"%sDay\""
|
fprintf (Gbl.F.Out,"<select id=\"%sDay\" name=\"%sDay\""
|
||||||
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
||||||
Id,ParamName,Id);
|
Id,ParamName,Id);
|
||||||
if (SubmitFormOnChange)
|
if (SubmitFormOnChange)
|
||||||
|
@ -616,8 +616,8 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Hour *****/
|
/***** Hour *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<select id=\"%sHour\" name=\"%sHour\""
|
fprintf (Gbl.F.Out,"<select id=\"%sHour\" name=\"%sHour\""
|
||||||
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
||||||
Id,ParamName,Id);
|
Id,ParamName,Id);
|
||||||
if (SubmitFormOnChange)
|
if (SubmitFormOnChange)
|
||||||
|
@ -633,8 +633,8 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Minute *****/
|
/***** Minute *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||||
"<select id=\"%sMinute\" name=\"%sMinute\""
|
fprintf (Gbl.F.Out,"<select id=\"%sMinute\" name=\"%sMinute\""
|
||||||
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
||||||
Id,ParamName,Id);
|
Id,ParamName,Id);
|
||||||
if (SubmitFormOnChange)
|
if (SubmitFormOnChange)
|
||||||
|
@ -654,8 +654,8 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
||||||
/***** Second *****/
|
/***** Second *****/
|
||||||
if (FormSeconds == Dat_FORM_SECONDS_ON)
|
if (FormSeconds == Dat_FORM_SECONDS_ON)
|
||||||
{
|
{
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
"<select id=\"%sSecond\" name=\"%sSecond\""
|
fprintf (Gbl.F.Out,"<select id=\"%sSecond\" name=\"%sSecond\""
|
||||||
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
" onchange=\"setUTCFromLocalDateTimeForm('%s');",
|
||||||
Id,ParamName,Id);
|
Id,ParamName,Id);
|
||||||
if (SubmitFormOnChange)
|
if (SubmitFormOnChange)
|
||||||
|
@ -828,8 +828,8 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** Year *****/
|
/***** Year *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||||
"<select id=\"%sYear\" name=\"%sYear\""
|
fprintf (Gbl.F.Out,"<select id=\"%sYear\" name=\"%sYear\""
|
||||||
" onchange=\"adjustDateForm('%s');",
|
" onchange=\"adjustDateForm('%s');",
|
||||||
Id,Id,Id);
|
Id,Id,Id);
|
||||||
if (SubmitFormOnChange)
|
if (SubmitFormOnChange)
|
||||||
|
@ -853,8 +853,8 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Month *****/
|
/***** Month *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||||
"<select id=\"%sMonth\" name=\"%sMonth\""
|
fprintf (Gbl.F.Out,"<select id=\"%sMonth\" name=\"%sMonth\""
|
||||||
" onchange=\"adjustDateForm('%s');",
|
" onchange=\"adjustDateForm('%s');",
|
||||||
Id,Id,Id);
|
Id,Id,Id);
|
||||||
if (SubmitFormOnChange)
|
if (SubmitFormOnChange)
|
||||||
|
@ -877,9 +877,8 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Day *****/
|
/***** Day *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||||
"<select id=\"%sDay\" name=\"%sDay\"",
|
fprintf (Gbl.F.Out,"<select id=\"%sDay\" name=\"%sDay\"",Id,Id);
|
||||||
Id,Id);
|
|
||||||
if (SubmitFormOnChange)
|
if (SubmitFormOnChange)
|
||||||
fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"",
|
fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"",
|
||||||
Gbl.Form.Id);
|
Gbl.Form.Id);
|
||||||
|
|
166
swad_degree.c
166
swad_degree.c
|
@ -215,16 +215,14 @@ void Deg_SeeDegWithPendingCrss (void)
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/* Degree logo and full name */
|
/* Degree logo and full name */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE %s\">",
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE %s\"",BgColor);
|
||||||
BgColor);
|
|
||||||
Deg_DrawDegreeLogoAndNameWithLink (&Deg,ActSeeCrs,
|
Deg_DrawDegreeLogoAndNameWithLink (&Deg,ActSeeCrs,
|
||||||
"DAT_NOBR","CENTER_MIDDLE");
|
"DAT_NOBR","CENTER_MIDDLE");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Number of pending courses (row[1]) */
|
/* Number of pending courses (row[1]) */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE %s\">"
|
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE %s\"",BgColor);
|
||||||
"%s",
|
fprintf (Gbl.F.Out,"%s",row[1]);
|
||||||
BgColor,row[1]);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
Tbl_EndRow ();
|
Tbl_EndRow ();
|
||||||
|
@ -346,13 +344,13 @@ static void Deg_Configuration (bool PrintView)
|
||||||
/***** Centre *****/
|
/***** Centre *****/
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<label for=\"OthCtrCod\" class=\"%s\">%s:</label>",
|
fprintf (Gbl.F.Out,"<label for=\"OthCtrCod\" class=\"%s\">%s:</label>",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||||
Txt_Centre);
|
Txt_Centre);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT_N LEFT_MIDDLE\"");
|
||||||
if (!PrintView &&
|
if (!PrintView &&
|
||||||
Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
|
Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
|
||||||
// Only institution admins and system admin can move a degree to another centre
|
// Only institution admins and system admin can move a degree to another centre
|
||||||
|
@ -388,13 +386,13 @@ static void Deg_Configuration (bool PrintView)
|
||||||
|
|
||||||
/***** Degree full name *****/
|
/***** Degree full name *****/
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<label for=\"FullName\" class=\"%s\">%s:</label>",
|
fprintf (Gbl.F.Out,"<label for=\"FullName\" class=\"%s\">%s:</label>",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||||
Txt_Degree);
|
Txt_Degree);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT_N LEFT_MIDDLE\"");
|
||||||
if (!PrintView &&
|
if (!PrintView &&
|
||||||
Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
|
Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
|
||||||
// Only centre admins, institution admins and system admins
|
// Only centre admins, institution admins and system admins
|
||||||
|
@ -420,13 +418,13 @@ static void Deg_Configuration (bool PrintView)
|
||||||
/***** Degree short name *****/
|
/***** Degree short name *****/
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<label for=\"ShortName\" class=\"%s\">%s:</label>",
|
fprintf (Gbl.F.Out,"<label for=\"ShortName\" class=\"%s\">%s:</label>",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||||
Txt_Short_name);
|
Txt_Short_name);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT_N LEFT_MIDDLE\"");
|
||||||
if (!PrintView &&
|
if (!PrintView &&
|
||||||
Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
|
Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
|
||||||
// Only centre admins, institution admins and system admins
|
// Only centre admins, institution admins and system admins
|
||||||
|
@ -452,13 +450,13 @@ static void Deg_Configuration (bool PrintView)
|
||||||
|
|
||||||
/***** Degree WWW *****/
|
/***** Degree WWW *****/
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||||
"<label for=\"WWW\" class=\"%s\">%s:</label>",
|
fprintf (Gbl.F.Out,"<label for=\"WWW\" class=\"%s\">%s:</label>",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||||
Txt_Web);
|
Txt_Web);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
if (!PrintView &&
|
if (!PrintView &&
|
||||||
Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM)
|
Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM)
|
||||||
// Only degree admins, centre admins, institution admins
|
// Only degree admins, centre admins, institution admins
|
||||||
|
@ -489,14 +487,12 @@ static void Deg_Configuration (bool PrintView)
|
||||||
/***** Shortcut to the degree *****/
|
/***** Shortcut to the degree *****/
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||||
"%s:",
|
fprintf (Gbl.F.Out,"%s:",Txt_Shortcut);
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
|
||||||
Txt_Shortcut);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
"<a href=\"%s/%s?deg=%ld\" class=\"DAT\" target=\"_blank\">"
|
fprintf (Gbl.F.Out,"<a href=\"%s/%s?deg=%ld\" class=\"DAT\" target=\"_blank\">"
|
||||||
"%s/%s?deg=%ld"
|
"%s/%s?deg=%ld"
|
||||||
"</a>",
|
"</a>",
|
||||||
Cfg_URL_SWAD_CGI,
|
Cfg_URL_SWAD_CGI,
|
||||||
|
@ -514,13 +510,11 @@ static void Deg_Configuration (bool PrintView)
|
||||||
/***** QR code with link to the degree *****/
|
/***** QR code with link to the degree *****/
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||||
"%s:",
|
fprintf (Gbl.F.Out,"%s:",Txt_QR_code);
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
|
||||||
Txt_QR_code);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
QR_LinkTo (250,"deg",Gbl.Hierarchy.Deg.DegCod);
|
QR_LinkTo (250,"deg",Gbl.Hierarchy.Deg.DegCod);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
|
@ -528,18 +522,15 @@ static void Deg_Configuration (bool PrintView)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/***** Number of courses *****/
|
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
/***** Number of courses *****/
|
||||||
"%s:",
|
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
fprintf (Gbl.F.Out,"%s:",Txt_Courses);
|
||||||
Txt_Courses);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
|
|
||||||
/* Form to go to see courses of this degree */
|
/* Form to go to see courses of this degree */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
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),
|
||||||
|
@ -595,15 +586,14 @@ static void Deg_ShowNumUsrsInCrssOfDeg (Rol_Role_t Role)
|
||||||
|
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||||
"%s:",
|
fprintf (Gbl.F.Out,"%s:",
|
||||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
|
||||||
(Role == Rol_UNK) ? Txt_Users_in_courses :
|
(Role == Rol_UNK) ? Txt_Users_in_courses :
|
||||||
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]);
|
Txt_ROLES_PLURAL_Abc[Role][Usr_SEX_UNKNOWN]);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
"%u",
|
fprintf (Gbl.F.Out,"%u",
|
||||||
Usr_GetNumUsrsInCrssOfDeg (Role,Gbl.Hierarchy.Deg.DegCod));
|
Usr_GetNumUsrsInCrssOfDeg (Role,Gbl.Hierarchy.Deg.DegCod));
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
|
@ -738,9 +728,10 @@ static void Deg_ListDegreesForEdition (void)
|
||||||
|
|
||||||
ICanEdit = Deg_CheckIfICanEditADegree (Deg);
|
ICanEdit = Deg_CheckIfICanEditADegree (Deg);
|
||||||
|
|
||||||
/* Put icon to remove degree */
|
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
|
||||||
|
/* Put icon to remove degree */
|
||||||
|
Tbl_StartCellAttr ("class=\"BM\"");
|
||||||
if (NumCrss || // Degree has courses ==> deletion forbidden
|
if (NumCrss || // Degree has courses ==> deletion forbidden
|
||||||
!ICanEdit)
|
!ICanEdit)
|
||||||
Ico_PutIconRemovalNotAllowed ();
|
Ico_PutIconRemovalNotAllowed ();
|
||||||
|
@ -754,19 +745,18 @@ static void Deg_ListDegreesForEdition (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree code */
|
/* Degree code */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT CODE\">"
|
Tbl_StartCellAttr ("class=\"DAT CODE\"");
|
||||||
"%ld",
|
fprintf (Gbl.F.Out,"%ld",Deg->DegCod);
|
||||||
Deg->DegCod);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree logo */
|
/* Degree logo */
|
||||||
fprintf (Gbl.F.Out,"<td title=\"%s LEFT_MIDDLE\" style=\"width:25px;\">",
|
Tbl_StartCellAttr ("title=\"%s LEFT_MIDDLE\" style=\"width:25px;\"",
|
||||||
Deg->FullName);
|
Deg->FullName);
|
||||||
Log_DrawLogo (Hie_DEG,Deg->DegCod,Deg->ShrtName,20,NULL,true);
|
Log_DrawLogo (Hie_DEG,Deg->DegCod,Deg->ShrtName,20,NULL,true);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree short name */
|
/* Degree short name */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
{
|
{
|
||||||
Frm_StartForm (ActRenDegSho);
|
Frm_StartForm (ActRenDegSho);
|
||||||
|
@ -783,7 +773,7 @@ static void Deg_ListDegreesForEdition (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree full name */
|
/* Degree full name */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
{
|
{
|
||||||
Frm_StartForm (ActRenDegFul);
|
Frm_StartForm (ActRenDegFul);
|
||||||
|
@ -800,7 +790,7 @@ static void Deg_ListDegreesForEdition (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree type */
|
/* Degree type */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
{
|
{
|
||||||
Frm_StartForm (ActChgDegTyp);
|
Frm_StartForm (ActChgDegTyp);
|
||||||
|
@ -832,7 +822,7 @@ static void Deg_ListDegreesForEdition (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree WWW */
|
/* Degree WWW */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
{
|
{
|
||||||
Frm_StartForm (ActChgDegWWW);
|
Frm_StartForm (ActChgDegWWW);
|
||||||
|
@ -859,21 +849,20 @@ static void Deg_ListDegreesForEdition (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Current number of courses in this degree */
|
/* Current number of courses in this degree */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||||
"%u",
|
fprintf (Gbl.F.Out,"%u",NumCrss);
|
||||||
NumCrss);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree requester */
|
/* Degree requester */
|
||||||
UsrDat.UsrCod = Deg->RequesterUsrCod;
|
UsrDat.UsrCod = Deg->RequesterUsrCod;
|
||||||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat,Usr_DONT_GET_PREFS);
|
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat,Usr_DONT_GET_PREFS);
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT INPUT_REQUESTER LEFT_TOP\">");
|
Tbl_StartCellAttr ("class=\"DAT INPUT_REQUESTER LEFT_TOP\"");
|
||||||
Msg_WriteMsgAuthor (&UsrDat,true,NULL);
|
Msg_WriteMsgAuthor (&UsrDat,true,NULL);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree status */
|
/* Degree status */
|
||||||
StatusTxt = Deg_GetStatusTxtFromStatusBits (Deg->Status);
|
StatusTxt = Deg_GetStatusTxtFromStatusBits (Deg->Status);
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
if (Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM &&
|
if (Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM &&
|
||||||
StatusTxt == Deg_STATUS_PENDING)
|
StatusTxt == Deg_STATUS_PENDING)
|
||||||
{
|
{
|
||||||
|
@ -986,21 +975,21 @@ static void Deg_PutFormToCreateDegree (void)
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** Column to remove degree, disabled here *****/
|
/***** Column to remove degree, disabled here *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
Tbl_StartCellAttr ("class=\"BM\"");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree code *****/
|
/***** Degree code *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"CODE\">");
|
Tbl_StartCellAttr ("class=\"CODE\"");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree logo *****/
|
/***** Degree logo *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:25px;\">");
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\" style=\"width:25px;\"");
|
||||||
Log_DrawLogo (Hie_DEG,-1L,"",20,NULL,true);
|
Log_DrawLogo (Hie_DEG,-1L,"",20,NULL,true);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree short name *****/
|
/***** Degree short name *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
"<input type=\"text\" name=\"ShortName\""
|
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
|
||||||
" maxlength=\"%u\" value=\"%s\""
|
" maxlength=\"%u\" value=\"%s\""
|
||||||
" class=\"INPUT_SHORT_NAME\""
|
" class=\"INPUT_SHORT_NAME\""
|
||||||
" required=\"required\" />",
|
" required=\"required\" />",
|
||||||
|
@ -1008,8 +997,8 @@ static void Deg_PutFormToCreateDegree (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree full name *****/
|
/***** Degree full name *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
"<input type=\"text\" name=\"FullName\""
|
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
|
||||||
" maxlength=\"%u\" value=\"%s\""
|
" maxlength=\"%u\" value=\"%s\""
|
||||||
" class=\"INPUT_FULL_NAME\""
|
" class=\"INPUT_FULL_NAME\""
|
||||||
" required=\"required\" />",
|
" required=\"required\" />",
|
||||||
|
@ -1017,8 +1006,8 @@ static void Deg_PutFormToCreateDegree (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree type *****/
|
/***** Degree type *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
"<select name=\"OthDegTypCod\" style=\"width:62px;\">");
|
fprintf (Gbl.F.Out,"<select name=\"OthDegTypCod\" style=\"width:62px;\">");
|
||||||
for (NumDegTyp = 0;
|
for (NumDegTyp = 0;
|
||||||
NumDegTyp < Gbl.DegTypes.Num;
|
NumDegTyp < Gbl.DegTypes.Num;
|
||||||
NumDegTyp++)
|
NumDegTyp++)
|
||||||
|
@ -1034,8 +1023,8 @@ static void Deg_PutFormToCreateDegree (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree WWW *****/
|
/***** Degree WWW *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
"<input type=\"url\" name=\"WWW\""
|
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
|
||||||
" maxlength=\"%u\" value=\"%s\""
|
" maxlength=\"%u\" value=\"%s\""
|
||||||
" class=\"INPUT_WWW\""
|
" class=\"INPUT_WWW\""
|
||||||
" required=\"required\" />",
|
" required=\"required\" />",
|
||||||
|
@ -1043,17 +1032,17 @@ static void Deg_PutFormToCreateDegree (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Current number of courses in this degree *****/
|
/***** Current number of courses in this degree *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||||
"0");
|
fprintf (Gbl.F.Out,"0");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree requester *****/
|
/***** Degree requester *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT INPUT_REQUESTER LEFT_TOP\">");
|
Tbl_StartCellAttr ("class=\"DAT INPUT_REQUESTER LEFT_TOP\"");
|
||||||
Msg_WriteMsgAuthor (&Gbl.Usrs.Me.UsrDat,true,NULL);
|
Msg_WriteMsgAuthor (&Gbl.Usrs.Me.UsrDat,true,NULL);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree status *****/
|
/***** Degree status *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
Tbl_EndRow ();
|
Tbl_EndRow ();
|
||||||
|
@ -1310,44 +1299,38 @@ static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg)
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** Put tip if degree has courses *****/
|
/***** Put tip if degree has courses *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\" title=\"%s\">"
|
Tbl_StartCellAttr ("class=\"%s CENTER_MIDDLE %s\" title=\"%s\"",
|
||||||
"%s",
|
|
||||||
TxtClassNormal,BgColor,
|
TxtClassNormal,BgColor,
|
||||||
NumCrss ? Txt_DEGREE_With_courses :
|
NumCrss ? Txt_DEGREE_With_courses :
|
||||||
Txt_DEGREE_Without_courses,
|
Txt_DEGREE_Without_courses);
|
||||||
NumCrss ? "✓" :
|
fprintf (Gbl.F.Out,"%s",NumCrss ? "✓" :
|
||||||
" ");
|
" ");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Number of degree in this list *****/
|
/***** Number of degree in this list *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
|
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE %s\"",TxtClassNormal,BgColor);
|
||||||
"%u",
|
fprintf (Gbl.F.Out,"%u",NumDeg);
|
||||||
TxtClassNormal,BgColor,
|
|
||||||
NumDeg);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree logo and name *****/
|
/***** Degree logo and name *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE %s\">",BgColor);
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE %s\"",BgColor);
|
||||||
Deg_DrawDegreeLogoAndNameWithLink (Deg,ActSeeCrs,
|
Deg_DrawDegreeLogoAndNameWithLink (Deg,ActSeeCrs,
|
||||||
TxtClassStrong,"CENTER_MIDDLE");
|
TxtClassStrong,"CENTER_MIDDLE");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Type of degree *****/
|
/***** Type of degree *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">"
|
Tbl_StartCellAttr ("class=\"%s LEFT_MIDDLE %s\"",TxtClassNormal,BgColor);
|
||||||
"%s",
|
fprintf (Gbl.F.Out,"%s",DegTyp.DegTypName);
|
||||||
TxtClassNormal,BgColor,DegTyp.DegTypName);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Current number of courses in this degree *****/
|
/***** Current number of courses in this degree *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
|
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE %s\"",TxtClassNormal,BgColor);
|
||||||
"%u",
|
fprintf (Gbl.F.Out,"%u",NumCrss);
|
||||||
TxtClassNormal,BgColor,NumCrss);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree status *****/
|
/***** Degree status *****/
|
||||||
StatusTxt = Deg_GetStatusTxtFromStatusBits (Deg->Status);
|
StatusTxt = Deg_GetStatusTxtFromStatusBits (Deg->Status);
|
||||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">",
|
Tbl_StartCellAttr ("class=\"%s LEFT_MIDDLE %s\"",TxtClassNormal,BgColor);
|
||||||
TxtClassNormal,BgColor);
|
|
||||||
if (StatusTxt != Deg_STATUS_ACTIVE) // If active ==> do not show anything
|
if (StatusTxt != Deg_STATUS_ACTIVE) // If active ==> do not show anything
|
||||||
fprintf (Gbl.F.Out,"%s",Txt_DEGREE_STATUS[StatusTxt]);
|
fprintf (Gbl.F.Out,"%s",Txt_DEGREE_STATUS[StatusTxt]);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
@ -2549,18 +2532,17 @@ void Hie_GetAndWriteInsCtrDegAdminBy (long UsrCod,unsigned ColSpan)
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** Indent *****/
|
/***** Indent *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP COLOR%u\">"
|
Tbl_StartCellAttr ("class=\"RIGHT_TOP COLOR%u\"",Gbl.RowEvenOdd);
|
||||||
"<img src=\"%s/%s20x20.gif\""
|
fprintf (Gbl.F.Out,"<img src=\"%s/%s20x20.gif\""
|
||||||
" alt=\"\" title=\"\""
|
" alt=\"\" title=\"\""
|
||||||
" class=\"ICO25x25\" />",
|
" class=\"ICO25x25\" />",
|
||||||
Gbl.RowEvenOdd,Cfg_URL_ICON_PUBLIC,
|
Cfg_URL_ICON_PUBLIC,
|
||||||
NumRow == NumRows ? "subend" :
|
NumRow == NumRows ? "subend" :
|
||||||
"submid");
|
"submid");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Write institution, centre, degree *****/
|
/***** Write institution, centre, degree *****/
|
||||||
fprintf (Gbl.F.Out,"<td colspan=\"%u\""
|
Tbl_StartCellAttr ("colspan=\"%u\" class=\"DAT_SMALL_NOBR LEFT_TOP COLOR%u\">",
|
||||||
" class=\"DAT_SMALL_NOBR LEFT_TOP COLOR%u\">",
|
|
||||||
ColSpan - 1,Gbl.RowEvenOdd);
|
ColSpan - 1,Gbl.RowEvenOdd);
|
||||||
|
|
||||||
/* Get next institution, centre, degree */
|
/* Get next institution, centre, degree */
|
||||||
|
|
|
@ -330,23 +330,21 @@ static void DT_ListDegreeTypesForSeeing (void)
|
||||||
Gbl.Hierarchy.Deg.DegTypCod) ? "LIGHT_BLUE" :
|
Gbl.Hierarchy.Deg.DegTypCod) ? "LIGHT_BLUE" :
|
||||||
Gbl.ColorRows[Gbl.RowEvenOdd];
|
Gbl.ColorRows[Gbl.RowEvenOdd];
|
||||||
|
|
||||||
/* Number of degree type in this list */
|
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_MIDDLE %s\">"
|
|
||||||
"%u",
|
/* Number of degree type in this list */
|
||||||
BgColor,NumDegTyp + 1);
|
Tbl_StartCellAttr ("class=\"DAT_N RIGHT_MIDDLE %s\"",BgColor);
|
||||||
|
fprintf (Gbl.F.Out,"%u",NumDegTyp + 1);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Name of degree type */
|
/* Name of degree type */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N LEFT_MIDDLE %s\">"
|
Tbl_StartCellAttr ("class=\"DAT_N LEFT_MIDDLE %s\"",BgColor);
|
||||||
"%s",
|
fprintf (Gbl.F.Out,"%s",Gbl.DegTypes.Lst[NumDegTyp].DegTypName);
|
||||||
BgColor,Gbl.DegTypes.Lst[NumDegTyp].DegTypName);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Number of degrees of this type */
|
/* Number of degrees of this type */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_MIDDLE %s\">"
|
Tbl_StartCellAttr ("class=\"DAT_N RIGHT_MIDDLE %s\"",BgColor);
|
||||||
"%u",
|
fprintf (Gbl.F.Out,"%u",Gbl.DegTypes.Lst[NumDegTyp].NumDegs);
|
||||||
BgColor,Gbl.DegTypes.Lst[NumDegTyp].NumDegs);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
Tbl_EndRow ();
|
Tbl_EndRow ();
|
||||||
|
@ -403,7 +401,7 @@ static void DT_ListDegreeTypesForEdition (void)
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/* Put icon to remove degree type */
|
/* Put icon to remove degree type */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
Tbl_StartCellAttr ("class=\"BM\"");
|
||||||
if (Gbl.DegTypes.Lst[NumDegTyp].NumDegs) // Degree type has degrees => deletion forbidden
|
if (Gbl.DegTypes.Lst[NumDegTyp].NumDegs) // Degree type has degrees => deletion forbidden
|
||||||
Ico_PutIconRemovalNotAllowed ();
|
Ico_PutIconRemovalNotAllowed ();
|
||||||
else
|
else
|
||||||
|
@ -416,13 +414,12 @@ static void DT_ListDegreeTypesForEdition (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Degree type code */
|
/* Degree type code */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT CODE\">"
|
Tbl_StartCellAttr ("class=\"DAT CODE\"");
|
||||||
"%ld",
|
fprintf (Gbl.F.Out,"%ld",Gbl.DegTypes.Lst[NumDegTyp].DegTypCod);
|
||||||
Gbl.DegTypes.Lst[NumDegTyp].DegTypCod);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Name of degree type */
|
/* Name of degree type */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
Frm_StartForm (ActRenDegTyp);
|
Frm_StartForm (ActRenDegTyp);
|
||||||
DT_PutParamOtherDegTypCod (Gbl.DegTypes.Lst[NumDegTyp].DegTypCod);
|
DT_PutParamOtherDegTypCod (Gbl.DegTypes.Lst[NumDegTyp].DegTypCod);
|
||||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"DegTypName\""
|
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"DegTypName\""
|
||||||
|
@ -436,9 +433,8 @@ static void DT_ListDegreeTypesForEdition (void)
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/* Number of degrees of this type */
|
/* Number of degrees of this type */
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||||
"%u",
|
fprintf (Gbl.F.Out,"%u",Gbl.DegTypes.Lst[NumDegTyp].NumDegs);
|
||||||
Gbl.DegTypes.Lst[NumDegTyp].NumDegs);
|
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
Tbl_EndRow ();
|
Tbl_EndRow ();
|
||||||
|
@ -479,24 +475,24 @@ static void DT_PutFormToCreateDegreeType (void)
|
||||||
Tbl_StartRow ();
|
Tbl_StartRow ();
|
||||||
|
|
||||||
/***** Column to remove degree type, disabled here *****/
|
/***** Column to remove degree type, disabled here *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
Tbl_StartCellAttr ("class=\"BM\"");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree type code *****/
|
/***** Degree type code *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"CODE\">");
|
Tbl_StartCellAttr ("class=\"CODE\"");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Degree type name *****/
|
/***** Degree type name *****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||||
"<input type=\"text\" name=\"DegTypName\""
|
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"DegTypName\""
|
||||||
" size=\"25\" maxlength=\"%u\" value=\"%s\""
|
" size=\"25\" maxlength=\"%u\" value=\"%s\""
|
||||||
" required=\"required\" />",
|
" required=\"required\" />",
|
||||||
Deg_MAX_CHARS_DEGREE_TYPE_NAME,DT_EditingDegTyp->DegTypName);
|
Deg_MAX_CHARS_DEGREE_TYPE_NAME,DT_EditingDegTyp->DegTypName);
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
/***** Number of degrees of this degree type ****/
|
/***** Number of degrees of this degree type ****/
|
||||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||||
"0");
|
fprintf (Gbl.F.Out,"0");
|
||||||
Tbl_EndCell ();
|
Tbl_EndCell ();
|
||||||
|
|
||||||
Tbl_EndRow ();
|
Tbl_EndRow ();
|
||||||
|
|
Loading…
Reference in New Issue
Block a user