mirror of https://github.com/acanas/swad-core.git
Version19.31.31
This commit is contained in:
parent
f7133e504e
commit
470331d39c
|
@ -487,7 +487,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
|
|||
En OpenSWAD:
|
||||
ps2pdf source.ps destination.pdf
|
||||
*/
|
||||
#define Log_PLATFORM_VERSION "SWAD 19.31.30 (2019-10-08)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 19.31.31 (2019-10-08)"
|
||||
#define CSS_FILE "swad19.29.css"
|
||||
#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: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.)
|
||||
|
||||
Version 19.31.31: Oct 08, 2019 Code refactoring in HTML tables. (246762 lines)
|
||||
Version 19.31.30: Oct 08, 2019 Code refactoring in HTML tables. (246731 lines)
|
||||
Version 19.31.29: Oct 08, 2019 Code refactoring in HTML tables. (246740 lines)
|
||||
Version 19.31.28: Oct 08, 2019 Code refactoring in HTML tables. (246783 lines)
|
||||
|
|
74
swad_place.c
74
swad_place.c
|
@ -142,14 +142,12 @@ void Plc_SeePlaces (void)
|
|||
/* Write data of this place */
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s",
|
||||
Gbl.Plcs.Lst[NumPlc].FullName);
|
||||
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Plcs.Lst[NumPlc].FullName);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u",
|
||||
Gbl.Plcs.Lst[NumPlc].NumCtrs);
|
||||
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%u",Gbl.Plcs.Lst[NumPlc].NumCtrs);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -158,8 +156,8 @@ void Plc_SeePlaces (void)
|
|||
|
||||
/***** Separation row *****/
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"DAT\">"
|
||||
" ");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"DAT\"");
|
||||
fprintf (Gbl.F.Out," ");
|
||||
Tbl_EndCell ();
|
||||
Tbl_EndRow ();
|
||||
|
||||
|
@ -167,14 +165,12 @@ void Plc_SeePlaces (void)
|
|||
NumCtrsInOtherPlcs = Ctr_GetNumCtrsInPlc (0);
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s",
|
||||
Txt_Other_places);
|
||||
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%s",Txt_Other_places);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u",
|
||||
NumCtrsInOtherPlcs);
|
||||
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%u",NumCtrsInOtherPlcs);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -183,15 +179,13 @@ void Plc_SeePlaces (void)
|
|||
/***** Write centres (of the current institution) with no place *****/
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s",
|
||||
Txt_Place_unspecified);
|
||||
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%s",Txt_Place_unspecified);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u",
|
||||
Ctr_GetNumCtrsInIns (Gbl.Hierarchy.Ins.InsCod) -
|
||||
NumCtrsWithPlc);
|
||||
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%u",Ctr_GetNumCtrsInIns (Gbl.Hierarchy.Ins.InsCod) -
|
||||
NumCtrsWithPlc);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -532,9 +526,10 @@ static void Plc_ListPlacesForEdition (void)
|
|||
{
|
||||
Plc = &Gbl.Plcs.Lst[NumPlc];
|
||||
|
||||
/* Put icon to remove place */
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
|
||||
/* Put icon to remove place */
|
||||
Tbl_StartCellAttr ("class=\"BM\"");
|
||||
if (Plc->NumCtrs) // Place has centres ==> deletion forbidden
|
||||
Ico_PutIconRemovalNotAllowed ();
|
||||
else
|
||||
|
@ -547,13 +542,12 @@ static void Plc_ListPlacesForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Place code */
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%ld",
|
||||
Plc->PlcCod);
|
||||
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%ld",Plc->PlcCod);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/* Place short name */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActRenPlcSho);
|
||||
Plc_PutParamPlcCod (Plc->PlcCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
|
||||
|
@ -565,7 +559,7 @@ static void Plc_ListPlacesForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Place full name */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActRenPlcFul);
|
||||
Plc_PutParamPlcCod (Plc->PlcCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
|
||||
|
@ -577,9 +571,8 @@ static void Plc_ListPlacesForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Number of centres */
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u",
|
||||
Plc->NumCtrs);
|
||||
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%u",Plc->NumCtrs);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -815,18 +808,19 @@ static void Plc_PutFormToCreatePlace (void)
|
|||
/***** Write heading *****/
|
||||
Plc_PutHeadPlaces ();
|
||||
|
||||
/***** Column to remove place, disabled here *****/
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
|
||||
/***** Column to remove place, disabled here *****/
|
||||
Tbl_StartCellAttr ("class=\"BM\"");
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Place code *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CODE\">");
|
||||
Tbl_StartCellAttr ("class=\"CODE\"");
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Place short name *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"ShortName\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
|
||||
" maxlength=\"%u\" value=\"%s\""
|
||||
" class=\"INPUT_SHORT_NAME\""
|
||||
" required=\"required\" />",
|
||||
|
@ -834,8 +828,8 @@ static void Plc_PutFormToCreatePlace (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/***** Place full name *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"FullName\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
|
||||
" maxlength=\"%u\" value=\"%s\""
|
||||
" class=\"INPUT_FULL_NAME\""
|
||||
" required=\"required\" />",
|
||||
|
@ -843,8 +837,8 @@ static void Plc_PutFormToCreatePlace (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/***** Number of centres *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"0");
|
||||
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"0");
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
|
|
@ -138,8 +138,8 @@ void Plg_ListPlugins (void)
|
|||
// TODO: Change plugin icons to 32x32
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\" style=\"width:45px;\">"
|
||||
"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
|
||||
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\" style=\"width:45px;\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
|
||||
"<img src=\"%s/%s24x24.gif\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO40x40\" />"
|
||||
|
@ -149,8 +149,8 @@ void Plg_ListPlugins (void)
|
|||
Plg->Name,Plg->Name);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
|
||||
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
|
||||
"%s"
|
||||
"</a>",
|
||||
URL,Plg->Name,
|
||||
|
@ -395,9 +395,10 @@ static void Plg_ListPluginsForEdition (void)
|
|||
{
|
||||
Plg = &Gbl.Plugins.Lst[NumPlg];
|
||||
|
||||
/* Put icon to remove plugin */
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
|
||||
/* Put icon to remove plugin */
|
||||
Tbl_StartCellAttr ("class=\"BM\"");
|
||||
Frm_StartForm (ActRemPlg);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -405,15 +406,14 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin code */
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%ld",
|
||||
Plg->PlgCod);
|
||||
Tbl_StartCellAttr ("class=\"DAT RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"%ld",Plg->PlgCod);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin logo */
|
||||
// TODO: Change plugin icons to 32x32
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\" style=\"width:45px;\">"
|
||||
"<img src=\"%s/%s24x24.gif\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\" style=\"width:45px;\"");
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%s24x24.gif\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO40x40\" />",
|
||||
Cfg_URL_ICON_PLUGINS_PUBLIC,
|
||||
|
@ -423,7 +423,7 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin name */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActRenPlg);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\""
|
||||
|
@ -434,7 +434,7 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin description */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActChgPlgDes);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Description\""
|
||||
|
@ -445,7 +445,7 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin logo */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActChgPlgLog);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Logo\""
|
||||
|
@ -456,7 +456,7 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin application key */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActChgPlgAppKey);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"AppKey\""
|
||||
|
@ -467,7 +467,7 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin URL */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActChgPlgURL);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"URL\""
|
||||
|
@ -478,7 +478,7 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Plugin IP */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActChgPlgIP);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"IP\""
|
||||
|
@ -920,48 +920,48 @@ static void Plg_PutFormToCreatePlugin (void)
|
|||
Tbl_EndRow ();
|
||||
|
||||
/***** Plugin name *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"Name\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\""
|
||||
" size=\"10\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />",
|
||||
Plg_MAX_CHARS_PLUGIN_NAME,Plg_EditingPlg->Name);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Plugin description *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"Description\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Description\""
|
||||
" size=\"30\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />",
|
||||
Plg_MAX_CHARS_PLUGIN_DESCRIPTION,Plg_EditingPlg->Description);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Plugin logo *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"Logo\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Logo\""
|
||||
" size=\"4\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />",
|
||||
Plg_MAX_CHARS_PLUGIN_LOGO,Plg_EditingPlg->Logo);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Plugin application key *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"AppKey\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"AppKey\""
|
||||
" size=\"16\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />",
|
||||
Plg_MAX_CHARS_PLUGIN_APP_KEY,Plg_EditingPlg->AppKey);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Plugin URL *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"url\" name=\"URL\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"URL\""
|
||||
" size=\"15\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />",
|
||||
Cns_MAX_CHARS_WWW,Plg_EditingPlg->URL);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Plugin IP address *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"IP\""
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"IP\""
|
||||
" size=\"10\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />",
|
||||
Cns_MAX_CHARS_IP,Plg_EditingPlg->IP);
|
||||
|
|
|
@ -158,13 +158,12 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
|
|||
Tbl_StartRow ();
|
||||
|
||||
/***** Select visibility *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],TxtLabel);
|
||||
Tbl_StartCellAttr ("class=\"%s RIGHT_TOP\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||
fprintf (Gbl.F.Out,"%s:",TxtLabel);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Form with list of options *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">");
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP\"");
|
||||
if (Action != ActUnk)
|
||||
Frm_StartFormAnchor (Action,Pri_PRIVACY_ID);
|
||||
fprintf (Gbl.F.Out,"<ul class=\"PRI_LIST LIST_LEFT\">");
|
||||
|
|
|
@ -1563,12 +1563,11 @@ void Prf_ShowRankingFigure (MYSQL_RES **mysql_res,unsigned NumUsrs)
|
|||
|
||||
/***** Show row *****/
|
||||
Tbl_StartRow ();
|
||||
|
||||
Prf_ShowUsrInRanking (&UsrDat,Rank);
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE COLOR%u\""
|
||||
" style=\"height:50px;\">"
|
||||
"%ld",
|
||||
Gbl.RowEvenOdd,
|
||||
Figure);
|
||||
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE COLOR%u\" style=\"height:50px;\"",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%ld",Figure);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -1732,9 +1731,8 @@ void Prf_GetAndShowRankingClicksPerDay (void)
|
|||
/***** Show row *****/
|
||||
Tbl_StartRow ();
|
||||
Prf_ShowUsrInRanking (&UsrDat,Rank);
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE COLOR%u\""
|
||||
" style=\"height:50px;\">",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE COLOR%u\" style=\"height:50px;\"",
|
||||
Gbl.RowEvenOdd);
|
||||
Str_WriteFloatNum (Gbl.F.Out,NumClicksPerDay);
|
||||
Tbl_EndCell ();
|
||||
Tbl_EndRow ();
|
||||
|
@ -1761,17 +1759,14 @@ static void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
|
|||
char PhotoURL[PATH_MAX + 1];
|
||||
bool Visible = Pri_ShowingIsAllowed (UsrDat->BaPrfVisibility,UsrDat);
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"RANK RIGHT_MIDDLE COLOR%u\""
|
||||
" style=\"height:50px;\">"
|
||||
"#%u",
|
||||
Gbl.RowEvenOdd,
|
||||
Rank);
|
||||
Tbl_StartCellAttr ("class=\"RANK RIGHT_MIDDLE COLOR%u\" style=\"height:50px;\"",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"#%u",Rank);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Check if I can see the public profile *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"COLOR%u\""
|
||||
" style=\"width:35px; height:50px;\">",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("class=\"COLOR%u\" style=\"width:35px; height:50px;\"",
|
||||
Gbl.RowEvenOdd);
|
||||
if (Visible)
|
||||
{
|
||||
/***** User's photo *****/
|
||||
|
@ -1783,8 +1778,7 @@ static void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/***** Put form to go to public profile *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"COLOR%u\" style=\"height:50px;\">",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("class=\"COLOR%u\" style=\"height:50px;\"",Gbl.RowEvenOdd);
|
||||
if (Visible)
|
||||
{
|
||||
Frm_StartForm (ActSeeOthPubPrf);
|
||||
|
|
540
swad_project.c
540
swad_project.c
|
@ -988,7 +988,7 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
fprintf (Gbl.F.Out,"<td rowspan=\"3\" class=\"BIG_INDEX %s RIGHT_TOP COLOR%u\">",
|
||||
Tbl_StartCellAttr ("rowspan=\"3\" class=\"BIG_INDEX %s RIGHT_TOP COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE",
|
||||
Gbl.RowEvenOdd);
|
||||
|
@ -1003,11 +1003,12 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("rowspan=\"3\" class=\"CONTEXT_COL COLOR%u\"",Gbl.RowEvenOdd);
|
||||
Prj_PutFormsToRemEditOnePrj (Prj,Anchor,ICanViewProjectFiles);
|
||||
Tbl_EndCell ();
|
||||
break;
|
||||
case Prj_FILE_BROWSER_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<td rowspan=\"3\" class=\"CONTEXT_COL");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
Tbl_StartCellAttr ("rowspan=\"3\" class=\"CONTEXT_COL\"");
|
||||
Prj_PutFormsToRemEditOnePrj (Prj,Anchor,ICanViewProjectFiles);
|
||||
Tbl_EndCell ();
|
||||
break;
|
||||
|
@ -1017,14 +1018,23 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
|
||||
/* Creation date/time */
|
||||
UniqueId++;
|
||||
fprintf (Gbl.F.Out,"<td id=\"prj_creat_%u\" class=\"%s LEFT_TOP",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"\">"
|
||||
"<script type=\"text/javascript\">"
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("id=\"prj_creat_%u\" class=\"%s LEFT_TOP COLOR%u\"",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
Tbl_StartCellAttr ("id=\"prj_creat_%u\" class=\"%s LEFT_TOP\"",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out,"<script type=\"text/javascript\">"
|
||||
"writeLocalDateHMSFromUTC('prj_creat_%u',%ld,"
|
||||
"%u,'<br />','%s',true,true,0x7);"
|
||||
"</script>",
|
||||
|
@ -1034,14 +1044,23 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
|
||||
/* Modification date/time */
|
||||
UniqueId++;
|
||||
fprintf (Gbl.F.Out,"<td id=\"prj_modif_%u\" class=\"%s LEFT_TOP",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"\">"
|
||||
"<script type=\"text/javascript\">"
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("id=\"prj_modif_%u\" class=\"%s LEFT_TOP COLOR%u\"",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
Tbl_StartCellAttr ("id=\"prj_modif_%u\" class=\"%s LEFT_TOP\"",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out,"<script type=\"text/javascript\">"
|
||||
"writeLocalDateHMSFromUTC('prj_modif_%u',%ld,"
|
||||
"%u,'<br />','%s',true,true,0x7);"
|
||||
"</script>",
|
||||
|
@ -1050,12 +1069,20 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Project title */
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_TITLE_LIGHT" :
|
||||
"ASG_TITLE");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("class=\"%s LEFT_TOP COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_TITLE_LIGHT" :
|
||||
"ASG_TITLE",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
Tbl_StartCellAttr ("class=\"%s LEFT_TOP\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_TITLE_LIGHT" :
|
||||
"ASG_TITLE");
|
||||
break;
|
||||
}
|
||||
Lay_StartArticle (Anchor);
|
||||
if (ICanViewProjectFiles)
|
||||
{
|
||||
|
@ -1078,78 +1105,81 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
|
||||
/***** Preassigned? *****/
|
||||
Tbl_StartRow ();
|
||||
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP COLOR%u",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s:",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Txt_Preassigned_QUESTION);
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_Preassigned_QUESTION);
|
||||
Tbl_EndCell ();
|
||||
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP COLOR%u",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s ",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
(Prj->Preassigned == Prj_PREASSIGNED) ? Txt_Yes :
|
||||
Txt_No);
|
||||
fprintf (Gbl.F.Out,"%s ",(Prj->Preassigned == Prj_PREASSIGNED) ? Txt_Yes :
|
||||
Txt_No);
|
||||
Ico_PutIconOff (PreassignedNonpreassigImage[Prj->Preassigned],
|
||||
Txt_PROJECT_PREASSIGNED_NONPREASSIGNED_SINGUL[Prj->Preassigned]);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
||||
/***** Number of students *****/
|
||||
Tbl_StartRow ();
|
||||
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP COLOR%u",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s:",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Txt_Number_of_students);
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_Number_of_students);
|
||||
Tbl_EndCell ();
|
||||
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP COLOR%u",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%u",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Prj->NumStds);
|
||||
fprintf (Gbl.F.Out,"%u",Prj->NumStds);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -1162,28 +1192,28 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartRowAttr ("id=\"prj_exp_%u\"",UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"6\" class=\"CENTER_MIDDLE COLOR%u\">",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"6\" class=\"CENTER_MIDDLE COLOR%u\"",
|
||||
Gbl.RowEvenOdd);
|
||||
Prj_PutIconToToggleProject (UniqueId,"angle-down.svg",Txt_See_more);
|
||||
Tbl_EndCell ();
|
||||
Tbl_EndRow ();
|
||||
|
||||
Tbl_StartRowAttr ("id=\"prj_con_%u\" style=\"display:none;\"",UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"6\" class=\"CENTER_MIDDLE COLOR%u\">",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"6\" class=\"CENTER_MIDDLE COLOR%u\"",
|
||||
Gbl.RowEvenOdd);
|
||||
Prj_PutIconToToggleProject (UniqueId,"angle-up.svg",Txt_See_less);
|
||||
Tbl_EndCell ();
|
||||
Tbl_EndRow ();
|
||||
break;
|
||||
case Prj_FILE_BROWSER_PROJECT:
|
||||
Tbl_StartRowAttr ("id=\"prj_exp_%u\"",UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"5\" class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("colspan=\"5\" class=\"CENTER_MIDDLE\"");
|
||||
Prj_PutIconToToggleProject (UniqueId,"angle-down.svg",Txt_See_more);
|
||||
Tbl_EndCell ();
|
||||
Tbl_EndRow ();
|
||||
|
||||
Tbl_StartRowAttr ("id=\"prj_con_%u\" style=\"display:none;\"",UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"5\" class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("colspan=\"5\" class=\"CENTER_MIDDLE\"");
|
||||
Prj_PutIconToToggleProject (UniqueId,"angle-up.svg",Txt_See_less);
|
||||
Tbl_EndCell ();
|
||||
Tbl_EndRow ();
|
||||
|
@ -1197,33 +1227,42 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartRowAttr ("id=\"prj_pro_%u\" style=\"display:none;\"",UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"4\" class=\"RIGHT_TOP COLOR%u",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"4\" class=\"RIGHT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
case Prj_FILE_BROWSER_PROJECT:
|
||||
Tbl_StartRowAttr ("id=\"prj_pro_%u\" style=\"display:none;\"",UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"3\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
default:
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s:",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Txt_Proposal);
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_Proposal);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Txt_PROJECT_STATUS[Prj->Proposal]);
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out,"%s",Txt_PROJECT_STATUS[Prj->Proposal]);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -1289,63 +1328,60 @@ static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj)
|
|||
|
||||
/***** Start date/time *****/
|
||||
UniqueId++;
|
||||
fprintf (Gbl.F.Out,"<td id=\"prj_creat_%u\" class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"<script type=\"text/javascript\">"
|
||||
Tbl_StartCellAttr ("id=\"prj_creat_%u\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"<script type=\"text/javascript\">"
|
||||
"writeLocalDateHMSFromUTC('prj_creat_%u',%ld,"
|
||||
"%u,'<br />','%s',true,true,0x7);"
|
||||
"</script>",
|
||||
UniqueId,
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE",
|
||||
UniqueId,Prj->CreatTime,
|
||||
(unsigned) Gbl.Prefs.DateFormat,Txt_Today);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** End date/time *****/
|
||||
UniqueId++;
|
||||
fprintf (Gbl.F.Out,"<td id=\"prj_modif_%u\" class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"<script type=\"text/javascript\">"
|
||||
Tbl_StartCellAttr ("id=\"prj_modif_%u\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
UniqueId,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"<script type=\"text/javascript\">"
|
||||
"writeLocalDateHMSFromUTC('prj_modif_%u',%ld,"
|
||||
"%u,'<br />','%s',true,true,0x7);"
|
||||
"</script>",
|
||||
UniqueId,
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DATE_BLUE_LIGHT" :
|
||||
"DATE_BLUE",
|
||||
UniqueId,Prj->ModifTime,
|
||||
(unsigned) Gbl.Prefs.DateFormat,Txt_Today);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Project title *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"%s",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT_N",
|
||||
Prj->Title);
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT_N",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%s",Prj->Title);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Department *****/
|
||||
Prj_ShowTableAllProjectsDepartment (Prj);
|
||||
|
||||
/***** Preassigned? *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"%s",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
(Prj->Preassigned == Prj_PREASSIGNED) ? Txt_Yes :
|
||||
Txt_No);
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%s",(Prj->Preassigned == Prj_PREASSIGNED) ? Txt_Yes :
|
||||
Txt_No);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Number of students *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"%u",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Prj->NumStds);
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%u",Prj->NumStds);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Project members *****/
|
||||
|
@ -1355,12 +1391,11 @@ static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj)
|
|||
Prj_ShowTableAllProjectsMembersWithARole (Prj,Prj_RolesToShow[NumRoleToShow]);
|
||||
|
||||
/***** Proposal *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"%s",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Txt_PROJECT_STATUS[Prj->Proposal]);
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%s",Txt_PROJECT_STATUS[Prj->Proposal]);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/***** Write rows of data of this project *****/
|
||||
|
@ -1401,12 +1436,20 @@ static void Prj_ShowOneProjectDepartment (const struct Project *Prj,
|
|||
(ProjectView == Prj_LIST_PROJECTS ||
|
||||
ProjectView == Prj_FILE_BROWSER_PROJECT));
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out," %s\">",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT_N");
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT_N",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT_N");
|
||||
break;
|
||||
}
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"%s\">",
|
||||
|
@ -1429,12 +1472,11 @@ static void Prj_ShowTableAllProjectsDepartment (const struct Project *Prj)
|
|||
Dpt_GetDataOfDepartmentByCod (&Dpt);
|
||||
|
||||
/***** Show department *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"%s",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Dpt.FullName);
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%s",Dpt.FullName);
|
||||
Tbl_EndCell ();
|
||||
}
|
||||
|
||||
|
@ -1465,36 +1507,45 @@ static void Prj_ShowOneProjectTxtField (struct Project *Prj,
|
|||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartRowAttr ("id=\"%s%u\" style=\"display:none;\"",id,UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"4\" class=\"RIGHT_TOP COLOR%u",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"4\" class=\"RIGHT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
case Prj_FILE_BROWSER_PROJECT:
|
||||
Tbl_StartRowAttr ("id=\"%s%u\" style=\"display:none;\"",id,UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"3\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
case Prj_PRINT_ONE_PROJECT:
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
default:
|
||||
// Not applicable
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s:",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Label);
|
||||
fprintf (Gbl.F.Out,"%s:",Label);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
TxtField);
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out,"%s",TxtField);
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -1508,12 +1559,11 @@ static void Prj_ShowTableAllProjectsTxtField (struct Project *Prj,
|
|||
TxtField,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML
|
||||
|
||||
/***** Write text *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"%s",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
TxtField);
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%s",TxtField);
|
||||
Tbl_EndCell ();
|
||||
}
|
||||
|
||||
|
@ -1535,34 +1585,44 @@ static void Prj_ShowOneProjectURL (const struct Project *Prj,
|
|||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartRowAttr ("id=\"%s%u\" style=\"display:none;\"",id,UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"4\" class=\"RIGHT_TOP COLOR%u",
|
||||
Gbl.RowEvenOdd);
|
||||
Tbl_StartCellAttr ("colspan=\"4\" class=\"RIGHT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
case Prj_FILE_BROWSER_PROJECT:
|
||||
Tbl_StartRowAttr ("id=\"%s%u\" style=\"display:none;\"",id,UniqueId);
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"3\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
case Prj_PRINT_ONE_PROJECT:
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
break;
|
||||
default:
|
||||
// Not applicable
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s:",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Txt_URL);
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_URL);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP");
|
||||
if (ProjectView == Prj_LIST_PROJECTS)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out," %s\">",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
default:
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
break;
|
||||
}
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\">",Prj->URL);
|
||||
fprintf (Gbl.F.Out,"%s",Prj->URL);
|
||||
|
@ -1576,12 +1636,11 @@ static void Prj_ShowOneProjectURL (const struct Project *Prj,
|
|||
static void Prj_ShowTableAllProjectsURL (const struct Project *Prj)
|
||||
{
|
||||
/***** Show URL *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
|
||||
"%s",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Prj->URL);
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%s",Prj->URL);
|
||||
Tbl_EndCell ();
|
||||
}
|
||||
|
||||
|
@ -1650,57 +1709,54 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
|||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"4\" class=\"RIGHT_TOP COLOR%u %s\">"
|
||||
"%s:",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Tbl_StartCellAttr ("colspan=\"4\" class=\"RIGHT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"%s:",
|
||||
NumUsrs == 1 ? Txt_PROJECT_ROLES_SINGUL_Abc[RoleInProject] :
|
||||
Txt_PROJECT_ROLES_PLURAL_Abc[RoleInProject]);
|
||||
Tbl_EndCell ();
|
||||
break;
|
||||
case Prj_FILE_BROWSER_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\" class=\"RIGHT_TOP %s\">"
|
||||
"%s:",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Tbl_StartCellAttr ("colspan=\"3\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
fprintf (Gbl.F.Out,"%s:",
|
||||
NumUsrs == 1 ? Txt_PROJECT_ROLES_SINGUL_Abc[RoleInProject] :
|
||||
Txt_PROJECT_ROLES_PLURAL_Abc[RoleInProject]);
|
||||
Tbl_EndCell ();
|
||||
break;
|
||||
case Prj_PRINT_ONE_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP %s\">"
|
||||
"%s:",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL",
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"RIGHT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
|
||||
"ASG_LABEL");
|
||||
fprintf (Gbl.F.Out,"%s:",
|
||||
NumUsrs == 1 ? Txt_PROJECT_ROLES_SINGUL_Abc[RoleInProject] :
|
||||
Txt_PROJECT_ROLES_PLURAL_Abc[RoleInProject]);
|
||||
Tbl_EndCell ();
|
||||
break;
|
||||
case Prj_EDIT_ONE_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP ASG_LABEL\">%s:",
|
||||
Txt_PROJECT_ROLES_PLURAL_Abc[RoleInProject]);
|
||||
Tbl_EndCell ();
|
||||
Tbl_StartCellAttr ("class=\"RIGHT_TOP ASG_LABEL\"");
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_PROJECT_ROLES_PLURAL_Abc[RoleInProject]);
|
||||
break;
|
||||
}
|
||||
Tbl_EndCell ();
|
||||
|
||||
/* Start column with list of users */
|
||||
switch (ProjectView)
|
||||
{
|
||||
case Prj_LIST_PROJECTS:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP COLOR%u %s\">",
|
||||
Gbl.RowEvenOdd,
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
break;
|
||||
case Prj_FILE_BROWSER_PROJECT:
|
||||
case Prj_PRINT_ONE_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP %s\">",
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP %s\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
break;
|
||||
case Prj_EDIT_ONE_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP DAT\">");
|
||||
Tbl_StartCellAttr ("colspan=\"2\" class=\"LEFT_TOP DAT\"");
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -1725,7 +1781,7 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
|||
/* Icon to remove user */
|
||||
if (ProjectView == Prj_EDIT_ONE_PROJECT)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_ICO\">");
|
||||
Tbl_StartCellAttr ("class=\"PRJ_MEMBER_ICO\"");
|
||||
Lay_PutContextualLinkOnlyIcon (ActionReqRemUsr[RoleInProject],NULL,
|
||||
Prj_PutCurrentParams,
|
||||
"trash.svg",
|
||||
|
@ -1734,7 +1790,7 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
|||
}
|
||||
|
||||
/* Put user's photo */
|
||||
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_PHO\">");
|
||||
Tbl_StartCellAttr ("class=\"PRJ_MEMBER_PHO\"");
|
||||
ShowPhoto = Pho_ShowingUsrPhotoIsAllowed (&Gbl.Usrs.Other.UsrDat,PhotoURL);
|
||||
Pho_ShowUsrPhoto (&Gbl.Usrs.Other.UsrDat,ShowPhoto ? PhotoURL :
|
||||
NULL,
|
||||
|
@ -1742,8 +1798,8 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Write user's name */
|
||||
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_NAM\">%s",
|
||||
Gbl.Usrs.Other.UsrDat.FullName);
|
||||
Tbl_StartCellAttr ("class=\"PRJ_MEMBER_NAM\"");
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Usrs.Other.UsrDat.FullName);
|
||||
Tbl_EndCell ();
|
||||
|
||||
/* End row for this user */
|
||||
|
@ -1756,7 +1812,7 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
|||
{
|
||||
case Prj_EDIT_ONE_PROJECT:
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_ICO\">");
|
||||
Tbl_StartCellAttr ("class=\"PRJ_MEMBER_ICO\"");
|
||||
Gbl.Prjs.PrjCod = Prj->PrjCod; // Used to pass project code as a parameter
|
||||
snprintf (Gbl.Title,sizeof (Gbl.Title),
|
||||
Txt_Add_USERS,
|
||||
|
@ -1766,10 +1822,10 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
|||
Gbl.Title);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_PHO\">"); // Column for photo
|
||||
Tbl_StartCellAttr ("class=\"PRJ_MEMBER_PHO\""); // Column for photo
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_NAM\">"); // Column for name
|
||||
Tbl_StartCellAttr ("class=\"PRJ_MEMBER_NAM\""); // Column for name
|
||||
Tbl_EndCell ();
|
||||
|
||||
Tbl_EndRow ();
|
||||
|
@ -1802,10 +1858,10 @@ static void Prj_ShowTableAllProjectsMembersWithARole (const struct Project *Prj,
|
|||
NumUsrs = Prj_GetUsrsInPrj (Prj->PrjCod,RoleInProject,&mysql_res);
|
||||
|
||||
/***** Start column with list of all members with this role *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">",
|
||||
Gbl.RowEvenOdd,
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT");
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP %s COLOR%u\"",
|
||||
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
|
||||
"DAT",
|
||||
Gbl.RowEvenOdd);
|
||||
|
||||
if (NumUsrs)
|
||||
{
|
||||
|
@ -3345,13 +3401,13 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
/* Project title */
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Title\" class=\"%s\">%s:</label>",
|
||||
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<label for=\"Title\" class=\"%s\">%s:</label>",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Title);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<input type=\"text\" id=\"Title\" name=\"Title\""
|
||||
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" id=\"Title\" name=\"Title\""
|
||||
" size=\"45\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />",
|
||||
Prj_MAX_CHARS_PROJECT_TITLE,Prj->Title);
|
||||
|
@ -3362,13 +3418,13 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
/* Department */
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"%s\" class=\"%s\">%s:</label>",
|
||||
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<label for=\"%s\" class=\"%s\">%s:</label>",
|
||||
Dpt_PARAM_DPT_COD_NAME,
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Department);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||
Dpt_WriteSelectorDepartment (Gbl.Hierarchy.Ins.InsCod, // Departments in current institution
|
||||
Prj->DptCod, // Selected department
|
||||
"PRJ_INPUT", // Selector class
|
||||
|
@ -3382,14 +3438,12 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
/* Preassigned? */
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
Txt_Preassigned_QUESTION);
|
||||
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_Preassigned_QUESTION);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<select name=\"Preassigned\">");
|
||||
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<select name=\"Preassigned\">");
|
||||
|
||||
fprintf (Gbl.F.Out,"<option value=\"Y\"");
|
||||
if (Prj->Preassigned == Prj_PREASSIGNED)
|
||||
|
@ -3409,14 +3463,12 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
/* Number of students */
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
Txt_Number_of_students);
|
||||
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_Number_of_students);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<input type=\"number\" name=\"NumStds\""
|
||||
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"number\" name=\"NumStds\""
|
||||
" min=\"0\" value=\"%u\" />",
|
||||
Prj->NumStds);
|
||||
Tbl_EndCell ();
|
||||
|
@ -3426,14 +3478,12 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
/* Proposal */
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
Txt_Proposal);
|
||||
Tbl_StartCellAttr ("class=\"%s RIGHT_MIDDLE\"",The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||
fprintf (Gbl.F.Out,"%s:",Txt_Proposal);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<select name=\"Proposal\">");
|
||||
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<select name=\"Proposal\">");
|
||||
for (Proposal = (Prj_Proposal_t) 0;
|
||||
Proposal <= (Prj_Proposal_t) (Prj_NUM_PROPOSAL_TYPES - 1);
|
||||
Proposal++)
|
||||
|
@ -3464,14 +3514,14 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
/* URL for additional info */
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"WWW\" class=\"%s\">%s:</label>",
|
||||
Tbl_StartCellAttr ("class=\"RIGHT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<label for=\"WWW\" class=\"%s\">%s:</label>",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
Txt_URL);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"<input type=\"url\" id=\"URL\" name=\"URL\""
|
||||
Tbl_StartCellAttr ("class=\"DAT LEFT_MIDDLE\"");
|
||||
fprintf (Gbl.F.Out,"<input type=\"url\" id=\"URL\" name=\"URL\""
|
||||
" size=\"45\" maxlength=\"%u\" value=\"%s\" />",
|
||||
Cns_MAX_CHARS_WWW,Prj->URL);
|
||||
Tbl_EndCell ();
|
||||
|
@ -3503,13 +3553,13 @@ static void Prj_EditOneProjectTxtArea (const char *Id,
|
|||
|
||||
Tbl_StartRow ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"%s\" class=\"%s\">%s:</label>",
|
||||
Tbl_StartCellAttr ("class=\"RIGHT_TOP\"");
|
||||
fprintf (Gbl.F.Out,"<label for=\"%s\" class=\"%s\">%s:</label>",
|
||||
Id,The_ClassFormInBox[Gbl.Prefs.Theme],Label);
|
||||
Tbl_EndCell ();
|
||||
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">"
|
||||
"<textarea id=\"%s\" name=\"%s\" cols=\"60\" rows=\"%u\">"
|
||||
Tbl_StartCellAttr ("class=\"LEFT_TOP\"");
|
||||
fprintf (Gbl.F.Out,"<textarea id=\"%s\" name=\"%s\" cols=\"60\" rows=\"%u\">"
|
||||
"%s"
|
||||
"</textarea>",
|
||||
Id,Id,
|
||||
|
|
|
@ -298,7 +298,7 @@ void Rec_ListFieldsRecordsForEdition (void)
|
|||
Tbl_StartRow ();
|
||||
|
||||
/* Write icon to remove the field */
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Tbl_StartCellAttr ("class=\"BM\"");
|
||||
Frm_StartForm (ActReqRemFie);
|
||||
Par_PutHiddenParamLong ("FieldCod",Gbl.Crs.Records.LstFields.Lst[NumField].FieldCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -306,7 +306,7 @@ void Rec_ListFieldsRecordsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Name of the field */
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"LEFT_MIDDLE\"");
|
||||
Frm_StartForm (ActRenFie);
|
||||
Par_PutHiddenParamLong ("FieldCod",Gbl.Crs.Records.LstFields.Lst[NumField].FieldCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FieldName\""
|
||||
|
@ -319,7 +319,7 @@ void Rec_ListFieldsRecordsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Number of lines in the form */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActChgRowFie);
|
||||
Par_PutHiddenParamLong ("FieldCod",Gbl.Crs.Records.LstFields.Lst[NumField].FieldCod);
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"NumLines\""
|
||||
|
@ -331,7 +331,7 @@ void Rec_ListFieldsRecordsForEdition (void)
|
|||
Tbl_EndCell ();
|
||||
|
||||
/* Visibility of a field */
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartCellAttr ("class=\"CENTER_MIDDLE\"");
|
||||
Frm_StartForm (ActChgVisFie);
|
||||
Par_PutHiddenParamLong ("FieldCod",Gbl.Crs.Records.LstFields.Lst[NumField].FieldCod);
|
||||
fprintf (Gbl.F.Out,"<select name=\"Visibility\""
|
||||
|
@ -378,7 +378,7 @@ void Rec_ShowFormCreateRecordField (void)
|
|||
|
||||
/***** Write disabled icon to remove the field *****/
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Tbl_StartCellAttr ("class=\"BM\"");
|
||||
Ico_PutIconRemovalNotAllowed ();
|
||||
Tbl_EndCell ();
|
||||
|
||||
|
|
Loading…
Reference in New Issue