Version 15.40.1

This commit is contained in:
Antonio Cañas Vargas 2015-11-19 16:09:51 +01:00
parent 10ace7a7a8
commit 63e168b3e6
7 changed files with 129 additions and 119 deletions

View File

@ -580,7 +580,8 @@ static void Ctr_ListOneCentreForSeeing (struct Centre *Ctr,unsigned NumCtr)
extern const char *Txt_Go_to_X; extern const char *Txt_Go_to_X;
extern const char *Txt_CENTRE_STATUS[Ctr_NUM_STATUS_TXT]; extern const char *Txt_CENTRE_STATUS[Ctr_NUM_STATUS_TXT];
struct Place Plc; struct Place Plc;
const char *TxtClass; const char *TxtClassNormal;
const char *TxtClassStrong;
const char *BgColor; const char *BgColor;
Crs_StatusTxt_t StatusTxt; Crs_StatusTxt_t StatusTxt;
@ -588,8 +589,16 @@ static void Ctr_ListOneCentreForSeeing (struct Centre *Ctr,unsigned NumCtr)
Plc.PlcCod = Ctr->PlcCod; Plc.PlcCod = Ctr->PlcCod;
Plc_GetDataOfPlaceByCod (&Plc); Plc_GetDataOfPlaceByCod (&Plc);
TxtClass = (Ctr->Status & Ctr_STATUS_BIT_PENDING) ? "DAT_LIGHT" : if (Ctr->Status & Ctr_STATUS_BIT_PENDING)
"DAT"; {
TxtClassNormal = "DAT_LIGHT";
TxtClassStrong = "DAT_LIGHT";
}
else
{
TxtClassNormal = "DAT";
TxtClassStrong = "DAT_N";
}
BgColor = (Ctr->CtrCod == Gbl.CurrentCtr.Ctr.CtrCod) ? "LIGHT_BLUE" : BgColor = (Ctr->CtrCod == Gbl.CurrentCtr.Ctr.CtrCod) ? "LIGHT_BLUE" :
Gbl.ColorRows[Gbl.RowEvenOdd]; Gbl.ColorRows[Gbl.RowEvenOdd];
@ -598,35 +607,19 @@ static void Ctr_ListOneCentreForSeeing (struct Centre *Ctr,unsigned NumCtr)
"<td class=\"%s RIGHT_MIDDLE %s\">" "<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
NumCtr); NumCtr);
/***** Centre logo *****/ /***** Centre logo and name *****/
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">"
"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">",
TxtClass,BgColor,
Ctr->WWW,Ctr->FullName);
Log_DrawLogo (Sco_SCOPE_CTR,Ctr->CtrCod,Ctr->ShortName,
16,"CENTER_MIDDLE",true);
fprintf (Gbl.F.Out,"</a>"
"</td>");
/***** Place *****/
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">"
"%s"
"</td>",
TxtClass,BgColor,
Plc.PlcCod > 0 ? Plc.ShortName :
Txt_Another_place);
/***** Centre name *****/
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">", fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">",
TxtClass,BgColor); TxtClassStrong,BgColor);
Act_FormGoToStart (ActSeeCtrInf); Act_FormGoToStart (ActSeeDeg);
Ctr_PutParamCtrCod (Ctr->CtrCod); Ctr_PutParamCtrCod (Ctr->CtrCod);
sprintf (Gbl.Title,Txt_Go_to_X,Ctr->FullName); sprintf (Gbl.Title,Txt_Go_to_X,Ctr->FullName);
Act_LinkFormSubmit (Gbl.Title,TxtClass); Act_LinkFormSubmit (Gbl.Title,TxtClassStrong);
fprintf (Gbl.F.Out,"%s</a>", Log_DrawLogo (Sco_SCOPE_CTR,Ctr->CtrCod,Ctr->ShortName,
16,"CENTER_MIDDLE",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",
Ctr->FullName); Ctr->FullName);
Act_FormEnd (); Act_FormEnd ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -635,23 +628,31 @@ static void Ctr_ListOneCentreForSeeing (struct Centre *Ctr,unsigned NumCtr)
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
Ctr->NumTchs); Ctr->NumTchs);
/***** Number of degrees *****/ /***** Number of degrees *****/
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
Ctr->NumDegs); Ctr->NumDegs);
/***** Place *****/
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">"
"%s"
"</td>",
TxtClassNormal,BgColor,
Plc.PlcCod > 0 ? Plc.ShortName :
Txt_Another_place);
/***** Centre status *****/ /***** Centre status *****/
StatusTxt = Ctr_GetStatusTxtFromStatusBits (Ctr->Status); StatusTxt = Ctr_GetStatusTxtFromStatusBits (Ctr->Status);
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">"
"%s" "%s"
"</td>" "</td>"
"</tr>", "</tr>",
TxtClass,BgColor, TxtClassNormal,BgColor,
Txt_CENTRE_STATUS[StatusTxt]); Txt_CENTRE_STATUS[StatusTxt]);
Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd;
@ -2104,12 +2105,7 @@ static void Ctr_PutHeadCentresForSeeing (bool OrderSelectable)
tCtrsOrderType Order; tCtrsOrderType Order;
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<th></th>" "<th></th>");
"<th class=\"BM\"></th>"
"<th class=\"LEFT_MIDDLE\">"
"%s"
"</th>",
Txt_Place);
for (Order = Ctr_ORDER_BY_CENTRE; for (Order = Ctr_ORDER_BY_CENTRE;
Order <= Ctr_ORDER_BY_NUM_TCHS; Order <= Ctr_ORDER_BY_NUM_TCHS;
Order++) Order++)
@ -2139,8 +2135,12 @@ static void Ctr_PutHeadCentresForSeeing (bool OrderSelectable)
"<th class=\"LEFT_MIDDLE\">" "<th class=\"LEFT_MIDDLE\">"
"%s" "%s"
"</th>" "</th>"
"<th class=\"LEFT_MIDDLE\">"
"%s"
"</th>"
"</tr>", "</tr>",
Txt_Degrees_ABBREVIATION, Txt_Degrees_ABBREVIATION,
Txt_Place,
Txt_Status); Txt_Status);
} }

View File

@ -103,7 +103,6 @@
// TODO: System admin should be able to remove/edit user's mail (when he/she detects a recipient does not exists, for example) // TODO: System admin should be able to remove/edit user's mail (when he/she detects a recipient does not exists, for example)
// TODO: When a new assignment/attendance/survey is incorrect, the second time the form is shown, it should be filled with partial data, now is always empty // TODO: When a new assignment/attendance/survey is incorrect, the second time the form is shown, it should be filled with partial data, now is always empty
// TODO: Remove columns "first year, last year, optional, status" when listing degrees? // TODO: Remove columns "first year, last year, optional, status" when listing degrees?
// TODO: Row with total of users in figures
// TODO: Show message indicating that mail could be in SPAM folder // TODO: Show message indicating that mail could be in SPAM folder
// TODO: List institution and centre admins // TODO: List institution and centre admins
// TODO: List of degrees administrated by a degree admin should be ordered by name // TODO: List of degrees administrated by a degree admin should be ordered by name
@ -112,12 +111,14 @@
/****************************** Public constants *****************************/ /****************************** Public constants *****************************/
/*****************************************************************************/ /*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 15.40 (2015/11/17)" #define Log_PLATFORM_VERSION "SWAD 15.40.1 (2015/11/19)"
// Number of lines (includes comments but not blank lines) has been got with the following command: // Number of lines (includes comments but not blank lines) has been got with the following command:
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1 // nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
/* /*
Version 15.40: Nov 17, 2015 Changes in listing of countries. (187275 lines) Version 15.40.1: Nov 19, 2015 Changes in behaviour of links to countries, institutions, centres and degrees. (187288 lines)
Version 15.40: Nov 17, 2015 Changes in statistics of number of users.
Changes in listing of countries. (187275 lines)
Version 15.39.1: Nov 16, 2015 User' e-mail can be removed even if it is the unique. (187236 lines) Version 15.39.1: Nov 16, 2015 User' e-mail can be removed even if it is the unique. (187236 lines)
Version 15.39: Nov 16, 2015 Administrators can edit another user' e-mails. (187268 lines) Version 15.39: Nov 16, 2015 Administrators can edit another user' e-mails. (187268 lines)
9 changes necessary in database: 9 changes necessary in database:

View File

@ -519,8 +519,8 @@ void Cty_ListCountries2 (void)
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"LEFT_MIDDLE %s\">", "<td class=\"LEFT_MIDDLE %s\">",
BgColor); BgColor);
Cty_DrawCountryMapWithLinkToSeeCtyInf (&Gbl.Ctys.Lst[NumCty],ActSeeCtyInf, Cty_DrawCountryMapWithLinkToSeeCtyInf (&Gbl.Ctys.Lst[NumCty],ActSeeIns,
"DAT_NOBR","COUNTRY_MAP_SMALL"); "DAT_NOBR_N","COUNTRY_MAP_SMALL");
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Write stats of this country */ /* Write stats of this country */

View File

@ -1272,7 +1272,8 @@ static void Crs_ListCoursesForSeeing (void)
struct Course *Crs; struct Course *Crs;
unsigned Year; unsigned Year;
unsigned NumCrs; unsigned NumCrs;
const char *TxtClass; const char *TxtClassNormal;
const char *TxtClassStrong;
const char *BgColor; const char *BgColor;
Crs_StatusTxt_t StatusTxt; Crs_StatusTxt_t StatusTxt;
@ -1294,8 +1295,16 @@ static void Crs_ListCoursesForSeeing (void)
Crs = &(Gbl.CurrentDeg.Deg.LstCrss[NumCrs]); Crs = &(Gbl.CurrentDeg.Deg.LstCrss[NumCrs]);
if (Crs->Year == Year) if (Crs->Year == Year)
{ {
TxtClass = (Crs->Status & Crs_STATUS_BIT_PENDING) ? "DAT_LIGHT" : if (Crs->Status & Crs_STATUS_BIT_PENDING)
"DAT"; {
TxtClassNormal = "DAT_LIGHT";
TxtClassStrong = "DAT_LIGHT";
}
else
{
TxtClassNormal = "DAT";
TxtClassStrong = "DAT_N";
}
BgColor = (Crs->CrsCod == Gbl.CurrentCrs.Crs.CrsCod) ? "LIGHT_BLUE" : BgColor = (Crs->CrsCod == Gbl.CurrentCrs.Crs.CrsCod) ? "LIGHT_BLUE" :
Gbl.ColorRows[Gbl.RowEvenOdd]; Gbl.ColorRows[Gbl.RowEvenOdd];
@ -1319,30 +1328,30 @@ static void Crs_ListCoursesForSeeing (void)
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">"
"%s" "%s"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
Crs->InstitutionalCrsCod); Crs->InstitutionalCrsCod);
/* Course year */ /* Course year */
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">"
"%s" "%s"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
Txt_YEAR_OF_DEGREE[Crs->Year]); Txt_YEAR_OF_DEGREE[Crs->Year]);
/* Course semester */ /* Course semester */
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">"
"%s" "%s"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
Txt_SEMESTER_OF_YEAR[Crs->Semester]); Txt_SEMESTER_OF_YEAR[Crs->Semester]);
/* Course full name */ /* Course full name */
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">", fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">",
TxtClass,BgColor); TxtClassStrong,BgColor);
Act_FormGoToStart (ActSeeCrsInf); Act_FormGoToStart (ActSeeCrsInf);
Crs_PutParamCrsCod (Crs->CrsCod); Crs_PutParamCrsCod (Crs->CrsCod);
sprintf (Gbl.Title,Txt_Go_to_X,Crs->FullName); sprintf (Gbl.Title,Txt_Go_to_X,Crs->FullName);
Act_LinkFormSubmit (Gbl.Title,TxtClass); Act_LinkFormSubmit (Gbl.Title,TxtClassStrong);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Crs->FullName); Crs->FullName);
Act_FormEnd (); Act_FormEnd ();
@ -1352,13 +1361,13 @@ static void Crs_ListCoursesForSeeing (void)
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Crs->NumStds); TxtClassNormal,BgColor,Crs->NumStds);
/* Current number of teachers in this course */ /* Current number of teachers in this course */
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Crs->NumTchs); TxtClassNormal,BgColor,Crs->NumTchs);
/* Course status */ /* Course status */
StatusTxt = Crs_GetStatusTxtFromStatusBits (Crs->Status); StatusTxt = Crs_GetStatusTxtFromStatusBits (Crs->Status);
@ -1366,7 +1375,7 @@ static void Crs_ListCoursesForSeeing (void)
"%s" "%s"
"</td>" "</td>"
"</tr>", "</tr>",
TxtClass,BgColor,Txt_COURSE_STATUS[StatusTxt]); TxtClassNormal,BgColor,Txt_COURSE_STATUS[StatusTxt]);
} }
} }
Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd;

View File

@ -644,7 +644,7 @@ void Deg_WriteCtyInsCtrDeg (void)
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
/***** Form to go to the country *****/ /***** Form to go to the country *****/
Act_FormGoToStart (ActSeeCtyInf); Act_FormGoToStart (ActSeeIns);
Cty_PutParamCtyCod (Gbl.CurrentCty.Cty.CtyCod); Cty_PutParamCtyCod (Gbl.CurrentCty.Cty.CtyCod);
Act_LinkFormSubmit (Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language], Act_LinkFormSubmit (Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language],
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
@ -659,7 +659,7 @@ void Deg_WriteCtyInsCtrDeg (void)
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
/***** Form to go to the institution *****/ /***** Form to go to the institution *****/
Act_FormGoToStart (ActSeeInsInf); Act_FormGoToStart (ActSeeCtr);
Ins_PutParamInsCod (Gbl.CurrentIns.Ins.InsCod); Ins_PutParamInsCod (Gbl.CurrentIns.Ins.InsCod);
Act_LinkFormSubmit (Gbl.CurrentIns.Ins.FullName, Act_LinkFormSubmit (Gbl.CurrentIns.Ins.FullName,
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
@ -674,7 +674,7 @@ void Deg_WriteCtyInsCtrDeg (void)
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
/***** Form to go to the centre *****/ /***** Form to go to the centre *****/
Act_FormGoToStart (ActSeeCtrInf); Act_FormGoToStart (ActSeeDeg);
Ctr_PutParamCtrCod (Gbl.CurrentCtr.Ctr.CtrCod); Ctr_PutParamCtrCod (Gbl.CurrentCtr.Ctr.CtrCod);
Act_LinkFormSubmit (Gbl.CurrentCtr.Ctr.FullName, Act_LinkFormSubmit (Gbl.CurrentCtr.Ctr.FullName,
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
@ -689,7 +689,7 @@ void Deg_WriteCtyInsCtrDeg (void)
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
/***** Form to go to the degree *****/ /***** Form to go to the degree *****/
Act_FormGoToStart (ActSeeDegInf); Act_FormGoToStart (ActSeeCrs);
Deg_PutParamDegCod (Gbl.CurrentDeg.Deg.DegCod); Deg_PutParamDegCod (Gbl.CurrentDeg.Deg.DegCod);
Act_LinkFormSubmit (Gbl.CurrentDeg.Deg.FullName, Act_LinkFormSubmit (Gbl.CurrentDeg.Deg.FullName,
The_ClassDegree[Gbl.Prefs.Theme]); The_ClassDegree[Gbl.Prefs.Theme]);
@ -1230,7 +1230,8 @@ static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg)
extern const char *Txt_DEGREE_Without_year_for_optional_courses; extern const char *Txt_DEGREE_Without_year_for_optional_courses;
extern const char *Txt_DEGREE_STATUS[Deg_NUM_STATUS_TXT]; extern const char *Txt_DEGREE_STATUS[Deg_NUM_STATUS_TXT];
struct DegreeType DegTyp; struct DegreeType DegTyp;
const char *TxtClass; const char *TxtClassNormal;
const char *TxtClassStrong;
const char *BgColor; const char *BgColor;
Crs_StatusTxt_t StatusTxt; Crs_StatusTxt_t StatusTxt;
@ -1239,8 +1240,16 @@ static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg)
if (!Deg_GetDataOfDegreeTypeByCod (&DegTyp)) if (!Deg_GetDataOfDegreeTypeByCod (&DegTyp))
Lay_ShowErrorAndExit ("Code of type of degree not found."); Lay_ShowErrorAndExit ("Code of type of degree not found.");
TxtClass = (Deg->Status & Deg_STATUS_BIT_PENDING) ? "DAT_LIGHT" : if (Deg->Status & Deg_STATUS_BIT_PENDING)
"DAT"; {
TxtClassNormal = "DAT_LIGHT";
TxtClassStrong = "DAT_LIGHT";
}
else
{
TxtClassNormal = "DAT";
TxtClassStrong = "DAT_N";
}
BgColor = (Deg->DegCod == Gbl.CurrentDeg.Deg.DegCod) ? "LIGHT_BLUE" : BgColor = (Deg->DegCod == Gbl.CurrentDeg.Deg.DegCod) ? "LIGHT_BLUE" :
Gbl.ColorRows[Gbl.RowEvenOdd]; Gbl.ColorRows[Gbl.RowEvenOdd];
@ -1264,49 +1273,42 @@ static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg)
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
NumDeg); NumDeg);
/***** Degree logo *****/ /***** Degree logo and name *****/
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE %s\">"
"<a href=\"%s\" title=\"%s\" target=\"_blank\">",
BgColor,
Deg->WWW,Deg->FullName);
Log_DrawLogo (Sco_SCOPE_DEG,Deg->DegCod,Deg->ShortName,
16,"CENTER_MIDDLE",true);
fprintf (Gbl.F.Out,"</a>"
"</td>");
/* Degree full name */
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">", fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">",
TxtClass,BgColor); TxtClassStrong,BgColor);
Act_FormGoToStart (ActSeeDegInf); Act_FormGoToStart (ActSeeCrs);
Deg_PutParamDegCod (Deg->DegCod); Deg_PutParamDegCod (Deg->DegCod);
sprintf (Gbl.Title,Txt_Go_to_X,Deg->FullName); sprintf (Gbl.Title,Txt_Go_to_X,Deg->FullName);
Act_LinkFormSubmit (Gbl.Title,TxtClass); Act_LinkFormSubmit (Gbl.Title,TxtClassStrong);
fprintf (Gbl.F.Out,"%s</a>",Deg->FullName); Log_DrawLogo (Sco_SCOPE_DEG,Deg->DegCod,Deg->ShortName,
16,"CENTER_MIDDLE",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",
Deg->FullName);
Act_FormEnd (); Act_FormEnd ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Type of degree */ /***** Type of degree *****/
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">"
"%s" "%s"
"</td>", "</td>",
TxtClass,BgColor,DegTyp.DegTypName); TxtClassNormal,BgColor,DegTyp.DegTypName);
/* Degree first year */ /***** Degree first year *****/
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Deg->FirstYear); TxtClassNormal,BgColor,Deg->FirstYear);
/* Degree last year */ /***** Degree last year *****/
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Deg->LastYear); TxtClassNormal,BgColor,Deg->LastYear);
/* Degree optional year */ /***** Degree optional year *****/
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE %s\">"
"<img src=\"%s/%s16x16.gif\"" "<img src=\"%s/%s16x16.gif\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
@ -1321,19 +1323,19 @@ static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg)
Deg->OptYear ? Txt_DEGREE_With_year_for_optional_courses : Deg->OptYear ? Txt_DEGREE_With_year_for_optional_courses :
Txt_DEGREE_Without_year_for_optional_courses); Txt_DEGREE_Without_year_for_optional_courses);
/* Current number of courses in this degree */ /***** Current number of courses in this degree *****/
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Deg->NumCourses); TxtClassNormal,BgColor,Deg->NumCourses);
/* Degree status */ /***** Degree status *****/
StatusTxt = Deg_GetStatusTxtFromStatusBits (Deg->Status); StatusTxt = Deg_GetStatusTxtFromStatusBits (Deg->Status);
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">"
"%s" "%s"
"</td>" "</td>"
"</tr>", "</tr>",
TxtClass,BgColor,Txt_DEGREE_STATUS[StatusTxt]); TxtClassNormal,BgColor,Txt_DEGREE_STATUS[StatusTxt]);
Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd;
} }
@ -1988,7 +1990,6 @@ static void Deg_PutHeadDegreesForSeeing (void)
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<th class=\"BM\"></th>" "<th class=\"BM\"></th>"
"<th></th>" "<th></th>"
"<th></th>"
"<th class=\"LEFT_MIDDLE\">" "<th class=\"LEFT_MIDDLE\">"
"%s" "%s"
"</th>" "</th>"

View File

@ -528,12 +528,21 @@ static void Ins_ListOneInstitutionForSeeing (struct Institution *Ins,unsigned Nu
{ {
extern const char *Txt_Go_to_X; extern const char *Txt_Go_to_X;
extern const char *Txt_INSTITUTION_STATUS[Ins_NUM_STATUS_TXT]; extern const char *Txt_INSTITUTION_STATUS[Ins_NUM_STATUS_TXT];
const char *TxtClass; const char *TxtClassNormal;
const char *TxtClassStrong;
const char *BgColor; const char *BgColor;
Crs_StatusTxt_t StatusTxt; Crs_StatusTxt_t StatusTxt;
TxtClass = (Ins->Status & Ins_STATUS_BIT_PENDING) ? "DAT_LIGHT" : if (Ins->Status & Ins_STATUS_BIT_PENDING)
"DAT"; {
TxtClassNormal = "DAT_LIGHT";
TxtClassStrong = "DAT_LIGHT";
}
else
{
TxtClassNormal = "DAT";
TxtClassStrong = "DAT_N";
}
BgColor = (Ins->InsCod == Gbl.CurrentIns.Ins.InsCod) ? "LIGHT_BLUE" : BgColor = (Ins->InsCod == Gbl.CurrentIns.Ins.InsCod) ? "LIGHT_BLUE" :
Gbl.ColorRows[Gbl.RowEvenOdd]; Gbl.ColorRows[Gbl.RowEvenOdd];
@ -542,28 +551,19 @@ static void Ins_ListOneInstitutionForSeeing (struct Institution *Ins,unsigned Nu
"<td class=\"%s RIGHT_MIDDLE %s\">" "<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor, TxtClassNormal,BgColor,
NumIns); NumIns);
/***** Icon *****/ /***** Institution logo and name *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE %s\""
" style=\"width:25px;\">"
"<a href=\"%s\" target=\"_blank\" title=\"%s\">",
BgColor,
Ins->WWW,Ins->FullName);
Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->ShortName,
16,NULL,true);
fprintf (Gbl.F.Out,"</a>"
"</td>");
/***** Name and link to go to this institution *****/
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">", fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">",
TxtClass,BgColor); TxtClassStrong,BgColor);
Act_FormGoToStart (ActSeeInsInf); Act_FormGoToStart (ActSeeCtr);
Ins_PutParamInsCod (Ins->InsCod); Ins_PutParamInsCod (Ins->InsCod);
sprintf (Gbl.Title,Txt_Go_to_X,Ins->FullName); sprintf (Gbl.Title,Txt_Go_to_X,Ins->FullName);
Act_LinkFormSubmit (Gbl.Title,TxtClass); Act_LinkFormSubmit (Gbl.Title,TxtClassStrong);
fprintf (Gbl.F.Out,"%s</a>", Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->ShortName,
16,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",
Ins->FullName); Ins->FullName);
Act_FormEnd (); Act_FormEnd ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -572,27 +572,27 @@ static void Ins_ListOneInstitutionForSeeing (struct Institution *Ins,unsigned Nu
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Ins->NumUsrs); TxtClassNormal,BgColor,Ins->NumUsrs);
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Ins->NumStds); TxtClassNormal,BgColor,Ins->NumStds);
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Ins->NumTchs); TxtClassNormal,BgColor,Ins->NumTchs);
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Ins->NumCtrs); TxtClassNormal,BgColor,Ins->NumCtrs);
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Ins->NumDegs); TxtClassNormal,BgColor,Ins->NumDegs);
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">" fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
"%u" "%u"
"</td>", "</td>",
TxtClass,BgColor,Ins->NumDpts); TxtClassNormal,BgColor,Ins->NumDpts);
/***** Institution status *****/ /***** Institution status *****/
StatusTxt = Ins_GetStatusTxtFromStatusBits (Ins->Status); StatusTxt = Ins_GetStatusTxtFromStatusBits (Ins->Status);
@ -600,7 +600,7 @@ static void Ins_ListOneInstitutionForSeeing (struct Institution *Ins,unsigned Nu
"%s" "%s"
"</td>" "</td>"
"</tr>", "</tr>",
TxtClass,BgColor,Txt_INSTITUTION_STATUS[StatusTxt]); TxtClassNormal,BgColor,Txt_INSTITUTION_STATUS[StatusTxt]);
Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd;
} }
@ -622,8 +622,7 @@ static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable)
Ins_InssOrderType_t Order; Ins_InssOrderType_t Order;
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<th></th>" "<th></th>");
"<th style=\"width:25px;\"></th>");
for (Order = Ins_ORDER_BY_INSTITUTION; for (Order = Ins_ORDER_BY_INSTITUTION;
Order <= Ins_ORDER_BY_NUM_USRS; Order <= Ins_ORDER_BY_NUM_USRS;
Order++) Order++)

View File

@ -15205,17 +15205,17 @@ const char *Txt_Last_clicks_in_real_time =
const char *Txt_Last_BR_year = // "Last academic year", the opposite to "First academic year" const char *Txt_Last_BR_year = // "Last academic year", the opposite to "First academic year"
#if L==0 #if L==0
"&Uacute;lt..<br />curso"; // Necessita traduccio "&Uacute;ltimo<br />curso"; // Necessita traduccio
#elif L==1 #elif L==1
"Last<br />year"; // Need Übersetzung "Last<br />year"; // Need Übersetzung
#elif L==2 #elif L==2
"Last<br />year"; "Last<br />year";
#elif L==3 #elif L==3
"&Uacute;lt..<br />curso"; "&Uacute;ltimo<br />curso";
#elif L==4 #elif L==4
"Last<br />year"; // Besoin de traduction "Last<br />year"; // Besoin de traduction
#elif L==5 #elif L==5
"&Uacute;lt..<br />curso"; // Okoteve traducción "&Uacute;ltimo<br />curso"; // Okoteve traducción
#elif L==6 #elif L==6
"Ultimo<br />anno"; "Ultimo<br />anno";
#elif L==7 #elif L==7