Version19.31.16

This commit is contained in:
Antonio Cañas Vargas 2019-10-07 20:17:29 +02:00
parent 58fd148727
commit 291920e560
8 changed files with 675 additions and 445 deletions

View File

@ -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.15 (2019-10-07)"
#define Log_PLATFORM_VERSION "SWAD 19.31.16 (2019-10-07)"
#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.16: Oct 07, 2019 Code refactoring in HTML tables. (247185 lines)
Version 19.31.15: Oct 07, 2019 Code refactoring in HTML tables. (247153 lines)
Version 19.31.14: Oct 07, 2019 Code refactoring in HTML tables. (247138 lines)
Version 19.31.13: Oct 07, 2019 Code refactoring in HTML tables. (247135 lines)

View File

@ -141,14 +141,17 @@ void Plc_SeePlaces (void)
{
/* Write data of this place */
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
"%s"
"</td>"
"<td class=\"DAT RIGHT_MIDDLE\">"
"%u"
"</td>",
Gbl.Plcs.Lst[NumPlc].FullName,
"%s",
Gbl.Plcs.Lst[NumPlc].FullName);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
"%u",
Gbl.Plcs.Lst[NumPlc].NumCtrs);
Tbl_EndCell ();
Tbl_EndRow ();
NumCtrsWithPlc += Gbl.Plcs.Lst[NumPlc].NumCtrs;
}
@ -156,34 +159,41 @@ void Plc_SeePlaces (void)
/***** Separation row *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"DAT\">"
"&nbsp;"
"</td>");
"&nbsp;");
Tbl_EndCell ();
Tbl_EndRow ();
/***** Write centres (of the current institution) with other place *****/
NumCtrsInOtherPlcs = Ctr_GetNumCtrsInPlc (0);
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
"%s"
"</td>"
"<td class=\"DAT RIGHT_MIDDLE\">"
"%u"
"</td>",
Txt_Other_places,NumCtrsInOtherPlcs);
"%s",
Txt_Other_places);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
"%u",
NumCtrsInOtherPlcs);
Tbl_EndCell ();
Tbl_EndRow ();
NumCtrsWithPlc += NumCtrsInOtherPlcs;
/***** Write centres (of the current institution) with no place *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
"%s"
"</td>"
"<td class=\"DAT RIGHT_MIDDLE\">"
"%u"
"</td>",
Txt_Place_unspecified,
"%s",
Txt_Place_unspecified);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
"%u",
Ctr_GetNumCtrsInIns (Gbl.Hierarchy.Ins.InsCod) -
NumCtrsWithPlc);
Tbl_EndCell ();
Tbl_EndRow ();
/***** End table *****/
@ -538,9 +548,9 @@ static void Plc_ListPlacesForEdition (void)
/* Place code */
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
"%ld"
"</td>",
"%ld",
Plc->PlcCod);
Tbl_EndCell ();
/* Place short name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
@ -568,9 +578,10 @@ static void Plc_ListPlacesForEdition (void)
/* Number of centres */
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
"%u"
"</td>",
"%u",
Plc->NumCtrs);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -806,33 +817,36 @@ static void Plc_PutFormToCreatePlace (void)
/***** Column to remove place, disabled here *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>");
fprintf (Gbl.F.Out,"<td class=\"BM\">");
Tbl_EndCell ();
/***** Place code *****/
fprintf (Gbl.F.Out,"<td class=\"CODE\"></td>");
fprintf (Gbl.F.Out,"<td class=\"CODE\">");
Tbl_EndCell ();
/***** Place short name *****/
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\""
" required=\"required\" />"
"</td>",
" required=\"required\" />",
Plc_MAX_CHARS_PLACE_SHRT_NAME,Plc_EditingPlc->ShrtName);
Tbl_EndCell ();
/***** Place full name *****/
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\""
" required=\"required\" />"
"</td>",
" required=\"required\" />",
Plc_MAX_CHARS_PLACE_FULL_NAME,Plc_EditingPlc->FullName);
Tbl_EndCell ();
/***** Number of centres *****/
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
"0"
"</td>");
"0");
Tbl_EndCell ();
Tbl_EndRow ();
/***** End table, send button and end box *****/

View File

@ -137,23 +137,26 @@ void Plg_ListPlugins (void)
/* Plugin logo */
// 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\">"
"<img src=\"%s/%s24x24.gif\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO40x40\" />"
"</a>"
"</td>"
"<td class=\"DAT LEFT_MIDDLE\">"
"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
"%s"
"</a>"
"</td>",
"</a>",
URL,Plg->Name,
Cfg_URL_ICON_PLUGINS_PUBLIC,Gbl.Plugins.Lst[NumPlg].Logo,
Plg->Name,Plg->Name,
Plg->Name,Plg->Name);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
"%s"
"</a>",
URL,Plg->Name,
Plg->Name);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -403,21 +406,21 @@ static void Plg_ListPluginsForEdition (void)
/* Plugin code */
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
"%ld"
"</td>",
"%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\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO40x40\" />"
"</td>",
" class=\"ICO40x40\" />",
Cfg_URL_ICON_PLUGINS_PUBLIC,
Gbl.Plugins.Lst[NumPlg].Logo,
Gbl.Plugins.Lst[NumPlg].Name,
Gbl.Plugins.Lst[NumPlg].Name);
Tbl_EndCell ();
/* Plugin name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
@ -920,49 +923,50 @@ static void Plg_PutFormToCreatePlugin (void)
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
"<input type=\"text\" name=\"Name\""
" size=\"10\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
" 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\""
" size=\"30\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
" 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\""
" size=\"4\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
" 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\""
" size=\"16\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
" 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\""
" size=\"15\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
" 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\""
" size=\"10\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
" required=\"required\" />",
Cns_MAX_CHARS_IP,Plg_EditingPlg->IP);
Tbl_EndCell ();
Tbl_EndRow ();
/***** End table, send button and end box *****/

View File

@ -159,9 +159,9 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
/***** Select visibility *****/
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
"%s:"
"</td>",
"%s:",
The_ClassFormInBox[Gbl.Prefs.Theme],TxtLabel);
Tbl_EndCell ();
/***** Form with list of options *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">");

View File

@ -1566,10 +1566,11 @@ void Prf_ShowRankingFigure (MYSQL_RES **mysql_res,unsigned NumUsrs)
Prf_ShowUsrInRanking (&UsrDat,Rank);
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE COLOR%u\""
" style=\"height:50px;\">"
"%ld"
"</td>",
"%ld",
Gbl.RowEvenOdd,
Figure);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -1762,15 +1763,15 @@ static void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
fprintf (Gbl.F.Out,"<td class=\"RANK RIGHT_MIDDLE COLOR%u\""
" style=\"height:50px;\">"
"#%u"
"</td>"
"<td class=\"COLOR%u\""
" style=\"width:35px; height:50px;\">",
"#%u",
Gbl.RowEvenOdd,
Rank,
Gbl.RowEvenOdd);
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);
if (Visible)
{
/***** User's photo *****/
@ -1779,12 +1780,11 @@ static void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
NULL,
"PHOTO30x40",Pho_ZOOM,false);
}
fprintf (Gbl.F.Out,"</td>"
"<td class=\"COLOR%u\" style=\"height:50px;\">",
Gbl.RowEvenOdd);
Tbl_EndCell ();
/***** Put form to go to public profile *****/
fprintf (Gbl.F.Out,"<td class=\"COLOR%u\" style=\"height:50px;\">",
Gbl.RowEvenOdd);
if (Visible)
{
Frm_StartForm (ActSeeOthPubPrf);
@ -1796,6 +1796,5 @@ static void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
"</div>");
Frm_EndForm ();
}
Tbl_EndCell ();
}

View File

@ -1027,10 +1027,10 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
"<script type=\"text/javascript\">"
"writeLocalDateHMSFromUTC('prj_creat_%u',%ld,"
"%u,'<br />','%s',true,true,0x7);"
"</script>"
"</td>",
"</script>",
UniqueId,Prj->CreatTime,
(unsigned) Gbl.Prefs.DateFormat,Txt_Today);
Tbl_EndCell ();
/* Modification date/time */
UniqueId++;
@ -1044,10 +1044,10 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
"<script type=\"text/javascript\">"
"writeLocalDateHMSFromUTC('prj_modif_%u',%ld,"
"%u,'<br />','%s',true,true,0x7);"
"</script>"
"</td>",
"</script>",
UniqueId,Prj->ModifTime,
(unsigned) Gbl.Prefs.DateFormat,Txt_Today);
Tbl_EndCell ();
/* Project title */
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP",
@ -1089,11 +1089,12 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
break;
}
fprintf (Gbl.F.Out," %s\">"
"%s:"
"</td>",
"%s:",
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
Txt_Preassigned_QUESTION);
Tbl_EndCell ();
switch (ProjectView)
{
case Prj_LIST_PROJECTS:
@ -1128,11 +1129,12 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
break;
}
fprintf (Gbl.F.Out," %s\">"
"%s:"
"</td>",
"%s:",
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
Txt_Number_of_students);
Tbl_EndCell ();
switch (ProjectView)
{
case Prj_LIST_PROJECTS:
@ -1144,11 +1146,12 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
break;
}
fprintf (Gbl.F.Out," %s\">"
"%u"
"</td>",
"%u",
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
Prj->NumStds);
Tbl_EndCell ();
Tbl_EndRow ();
/***** Project members *****/
@ -1207,20 +1210,22 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
break;
}
fprintf (Gbl.F.Out," %s\">"
"%s:"
"</td>"
"<td colspan=\"2\" class=\"LEFT_TOP",
"%s:",
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
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"
"</td>",
"%s",
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
Txt_PROJECT_STATUS[Prj->Proposal]);
Tbl_EndCell ();
Tbl_EndRow ();
/***** Write rows of data of this project *****/
@ -1288,14 +1293,14 @@ static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj)
"<script type=\"text/javascript\">"
"writeLocalDateHMSFromUTC('prj_creat_%u',%ld,"
"%u,'<br />','%s',true,true,0x7);"
"</script>"
"</td>",
"</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++;
@ -1303,45 +1308,45 @@ static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj)
"<script type=\"text/javascript\">"
"writeLocalDateHMSFromUTC('prj_modif_%u',%ld,"
"%u,'<br />','%s',true,true,0x7);"
"</script>"
"</td>",
"</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"
"</td>",
"%s",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT_N",
Prj->Title);
Tbl_EndCell ();
/***** Department *****/
Prj_ShowTableAllProjectsDepartment (Prj);
/***** Preassigned? *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
"%s"
"</td>",
"%s",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
(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"
"</td>",
"%u",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
Prj->NumStds);
Tbl_EndCell ();
/***** Project members *****/
for (NumRoleToShow = 0;
@ -1351,12 +1356,12 @@ static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj)
/***** Proposal *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
"%s"
"</td>",
"%s",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
Txt_PROJECT_STATUS[Prj->Proposal]);
Tbl_EndCell ();
/***** Write rows of data of this project *****/
/* Description of the project */
@ -1425,12 +1430,12 @@ static void Prj_ShowTableAllProjectsDepartment (const struct Project *Prj)
/***** Show department *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
"%s"
"</td>",
"%s",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
Dpt.FullName);
Tbl_EndCell ();
}
/*****************************************************************************/
@ -1476,20 +1481,22 @@ static void Prj_ShowOneProjectTxtField (struct Project *Prj,
break;
}
fprintf (Gbl.F.Out," %s\">"
"%s:"
"</td>"
"<td colspan=\"2\" class=\"LEFT_TOP",
"%s:",
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
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"
"</td>",
"%s",
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
TxtField);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -1502,12 +1509,12 @@ static void Prj_ShowTableAllProjectsTxtField (struct Project *Prj,
/***** Write text *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
"%s"
"</td>",
"%s",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
TxtField);
Tbl_EndCell ();
}
/*****************************************************************************/
@ -1544,12 +1551,13 @@ static void Prj_ShowOneProjectURL (const struct Project *Prj,
break;
}
fprintf (Gbl.F.Out," %s\">"
"%s:"
"</td>"
"<td colspan=\"2\" class=\"LEFT_TOP",
"%s:",
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
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\">",
@ -1561,6 +1569,7 @@ static void Prj_ShowOneProjectURL (const struct Project *Prj,
if (PutLink)
fprintf (Gbl.F.Out,"</a>");
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -1568,12 +1577,12 @@ static void Prj_ShowTableAllProjectsURL (const struct Project *Prj)
{
/***** Show URL *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u %s\">"
"%s"
"</td>",
"%s",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "DAT_LIGHT" :
"DAT",
Prj->URL);
Tbl_EndCell ();
}
/*****************************************************************************/
@ -1642,35 +1651,36 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
{
case Prj_LIST_PROJECTS:
fprintf (Gbl.F.Out,"<td colspan=\"4\" class=\"RIGHT_TOP COLOR%u %s\">"
"%s:"
"</td>",
"%s:",
Gbl.RowEvenOdd,
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
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:"
"</td>",
"%s:",
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
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:"
"</td>",
"%s:",
Prj->Hidden == Prj_HIDDEN ? "ASG_LABEL_LIGHT" :
"ASG_LABEL",
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:</td>",
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP ASG_LABEL\">%s:",
Txt_PROJECT_ROLES_PLURAL_Abc[RoleInProject]);
Tbl_EndCell ();
break;
}
@ -1732,8 +1742,9 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
Tbl_EndCell ();
/* Write user's name */
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_NAM\">%s</td>",
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_NAM\">%s",
Gbl.Usrs.Other.UsrDat.FullName);
Tbl_EndCell ();
/* End row for this user */
Tbl_EndRow ();
@ -1753,9 +1764,14 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
Ico_PutContextualIconToAdd (ActionReqAddUsr[RoleInProject],NULL,
Prj_PutCurrentParams,
Gbl.Title);
fprintf (Gbl.F.Out,"</td>"
"<td class=\"PRJ_MEMBER_PHO\"></td>" // Column for photo
"<td class=\"PRJ_MEMBER_NAM\"></td>"); // Column for name
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_PHO\">"); // Column for photo
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_NAM\">"); // Column for name
Tbl_EndCell ();
Tbl_EndRow ();
break;
default:
@ -3328,26 +3344,31 @@ 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>"
"</td>"
"<td class=\"LEFT_MIDDLE\">"
"<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\""
" size=\"45\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Title,
" required=\"required\" />",
Prj_MAX_CHARS_PROJECT_TITLE,Prj->Title);
Tbl_EndCell ();
Tbl_EndRow ();
/* Department */
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
"<label for=\"%s\" class=\"%s\">%s:</label>"
"</td>"
"<td class=\"LEFT_MIDDLE\">",
"<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\">");
Dpt_WriteSelectorDepartment (Gbl.Hierarchy.Ins.InsCod, // Departments in current institution
Prj->DptCod, // Selected department
"PRJ_INPUT", // Selector class
@ -3355,17 +3376,20 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
Txt_Another_department, // Text when no department selected
false); // Don't submit on change
Tbl_EndCell ();
Tbl_EndRow ();
/* Preassigned? */
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
"%s:"
"</td>"
"<td class=\"LEFT_MIDDLE\">"
"<select name=\"Preassigned\">",
"%s:",
The_ClassFormInBox[Gbl.Prefs.Theme],
Txt_Preassigned_QUESTION);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
"<select name=\"Preassigned\">");
fprintf (Gbl.F.Out,"<option value=\"Y\"");
if (Prj->Preassigned == Prj_PREASSIGNED)
@ -3377,33 +3401,39 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
fprintf (Gbl.F.Out," selected=\"selected\"");
fprintf (Gbl.F.Out,">%s</option>",Txt_No);
fprintf (Gbl.F.Out,"</select>"
"</td>");
fprintf (Gbl.F.Out,"</select>");
Tbl_EndCell ();
Tbl_EndRow ();
/* Number of students */
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
"%s:"
"</td>"
"<td class=\"LEFT_MIDDLE\">"
"<input type=\"number\" name=\"NumStds\""
" min=\"0\" value=\"%u\" />"
"</td>",
"%s:",
The_ClassFormInBox[Gbl.Prefs.Theme],
Txt_Number_of_students,
Txt_Number_of_students);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
"<input type=\"number\" name=\"NumStds\""
" min=\"0\" value=\"%u\" />",
Prj->NumStds);
Tbl_EndCell ();
Tbl_EndRow ();
/* Proposal */
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
"%s:"
"</td>"
"<td class=\"LEFT_MIDDLE\">"
"<select name=\"Proposal\">",
"%s:",
The_ClassFormInBox[Gbl.Prefs.Theme],
Txt_Proposal);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
"<select name=\"Proposal\">");
for (Proposal = (Prj_Proposal_t) 0;
Proposal <= (Prj_Proposal_t) (Prj_NUM_PROPOSAL_TYPES - 1);
Proposal++)
@ -3414,8 +3444,9 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
fprintf (Gbl.F.Out," selected=\"selected\"");
fprintf (Gbl.F.Out,">%s</option>",Txt_PROJECT_STATUS[Proposal]);
}
fprintf (Gbl.F.Out,"</select>"
"</td>");
fprintf (Gbl.F.Out,"</select>");
Tbl_EndCell ();
Tbl_EndRow ();
/* Description of the project */
@ -3432,16 +3463,19 @@ 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>"
"</td>"
"<td class=\"DAT LEFT_MIDDLE\">"
"<input type=\"url\" id=\"URL\" name=\"URL\""
" size=\"45\" maxlength=\"%u\" value=\"%s\" />"
"</td>",
"<label for=\"WWW\" class=\"%s\">%s:</label>",
The_ClassFormInBox[Gbl.Prefs.Theme],
Txt_URL,
Txt_URL);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
"<input type=\"url\" id=\"URL\" name=\"URL\""
" size=\"45\" maxlength=\"%u\" value=\"%s\" />",
Cns_MAX_CHARS_WWW,Prj->URL);
Tbl_EndCell ();
Tbl_EndRow ();
/* End table, send button and end box */
@ -3468,18 +3502,21 @@ static void Prj_EditOneProjectTxtArea (const char *Id,
extern const char *The_ClassFormInBox[The_NUM_THEMES];
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
"<label for=\"%s\" class=\"%s\">%s:</label>"
"</td>"
"<td class=\"LEFT_TOP\">"
"<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\">"
"%s"
"</textarea>"
"</td>",
Id,The_ClassFormInBox[Gbl.Prefs.Theme],Label,
"</textarea>",
Id,Id,
NumRows,
TxtField);
Tbl_EndCell ();
Tbl_EndRow ();
}

View File

@ -386,17 +386,17 @@ void Rec_ShowFormCreateRecordField (void)
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
"<input type=\"text\" name=\"FieldName\""
" style=\"width:500px;\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>",
" required=\"required\" />",
Rec_MAX_CHARS_NAME_FIELD,Gbl.Crs.Records.Field.Name);
Tbl_EndCell ();
/***** Number of lines in form ******/
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
"<input type=\"text\" name=\"NumLines\""
" size=\"2\" maxlength=\"2\" value=\"%u\""
" required=\"required\" />"
"</td>",
" required=\"required\" />",
Gbl.Crs.Records.Field.NumLines);
Tbl_EndCell ();
/***** Visibility to students *****/
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
@ -412,8 +412,9 @@ void Rec_ShowFormCreateRecordField (void)
Txt_RECORD_FIELD_VISIBILITY_MENU[Vis]);
}
fprintf (Gbl.F.Out,"</select>"
"</td>");
fprintf (Gbl.F.Out,"</select>");
Tbl_EndCell ();
Tbl_EndRow ();
/***** End table, send button and end box *****/
@ -1751,16 +1752,19 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP\">");
Tbl_StartTableWide ();
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:%upx;\">",
Rec_DEGREE_LOGO_SIZE);
Log_DrawLogo (Hie_DEG,Gbl.Hierarchy.Deg.DegCod,
Gbl.Hierarchy.Deg.ShrtName,Rec_DEGREE_LOGO_SIZE,NULL,true);
fprintf (Gbl.F.Out,"</td>"
"<td class=\"REC_HEAD CENTER_MIDDLE\">"
"%s<br />%s<br />%s"
"</td>",
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_HEAD CENTER_MIDDLE\">"
"%s<br />%s<br />%s",
Gbl.Hierarchy.Deg.FullName,Gbl.Hierarchy.Crs.FullName,
UsrDat->FullName);
Tbl_EndCell ();
Tbl_EndRow ();
Tbl_EndTable ();
Tbl_EndCell ();
@ -2760,8 +2764,8 @@ static void Rec_ShowFullName (struct UsrData *UsrDat)
/***** Surname 2 *****/
fprintf (Gbl.F.Out,"%s",UsrDat->Surname2);
fprintf (Gbl.F.Out,"</div>"
"</td>");
fprintf (Gbl.F.Out,"</div>");
Tbl_EndCell ();
}
/*****************************************************************************/
@ -2795,8 +2799,8 @@ static void Rec_ShowNickname (struct UsrData *UsrDat,bool PutFormLinks)
Frm_EndForm ();
}
}
fprintf (Gbl.F.Out,"</div>"
"</td>");
fprintf (Gbl.F.Out,"</div>");
Tbl_EndCell ();
}
/*****************************************************************************/
@ -2835,11 +2839,13 @@ static void Rec_ShowEmail (struct UsrData *UsrDat,const char *ClassForm)
extern const char *Txt_Email;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"%s:",
ClassForm,Txt_Email);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (UsrDat->Email[0])
{
fprintf (Gbl.F.Out,"<div class=\"REC_EMAIL\">"); // Limited width
@ -2854,6 +2860,7 @@ static void Rec_ShowEmail (struct UsrData *UsrDat,const char *ClassForm)
fprintf (Gbl.F.Out,"</div>");
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -2867,13 +2874,16 @@ static void Rec_ShowUsrIDs (struct UsrData *UsrDat,const char *ClassForm,
extern const char *Txt_ID;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_TOP\">",
"%s:",
ClassForm,Txt_ID);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_TOP\">");
ID_WriteUsrIDs (UsrDat,Anchor);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -2898,18 +2908,20 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
Rol_Role_t Role;
Usr_Sex_t Sex;
Tbl_StartRow ();
if (RoleForm)
{
/***** Form to select a role *****/
/* Get user's roles if not got */
Rol_GetRolesInAllCrssIfNotYetGot (UsrDat);
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"Role\" class=\"%s\">%s:</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"<label for=\"Role\" class=\"%s\">%s:</label>",
ClassForm,Txt_Role);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
switch (TypeOfView)
{
case Rec_SHA_SIGN_UP_IN_CRS_FORM: // I want to apply for enrolment
@ -3098,16 +3110,16 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
break;
}
Tbl_EndCell ();
Tbl_EndRow ();
}
else if (SexForm)
{
/***** Form to select a sex *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s*:</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
"%s*:",
ClassForm,Txt_Sex);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT LEFT_MIDDLE\">");
for (Sex = Usr_SEX_FEMALE;
Sex <= Usr_SEX_MALE;
Sex++)
@ -3123,23 +3135,23 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
Usr_StringsSexIcons[Sex],Txt_SEX_SINGULAR_Abc[Sex]);
}
Tbl_EndCell ();
Tbl_EndRow ();
}
else // RoleForm == false, SexForm == false
{
/***** No form, only text *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">"
"%s"
"</td>",
"%s:",
ClassForm,
Txt_Role,
Txt_Role);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">"
"%s",
Txt_ROLES_SINGUL_Abc[UsrDat->Roles.InCurrentCrs.Role][UsrDat->Sex]);
Tbl_EndRow ();
Tbl_EndCell ();
}
Tbl_EndRow ();
}
/*****************************************************************************/
@ -3161,9 +3173,10 @@ static void Rec_ShowSurname1 (struct UsrData *UsrDat,
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
fprintf (Gbl.F.Out,"*");
fprintf (Gbl.F.Out,":"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
"</label>");
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ICanEdit)
{
fprintf (Gbl.F.Out,"<input type=\"text\""
@ -3194,13 +3207,15 @@ static void Rec_ShowSurname2 (struct UsrData *UsrDat,
extern const char *Txt_Surname_2;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"Surname2\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Surname_2);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ICanEdit)
fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"Surname2\" name=\"Surname2\""
@ -3211,6 +3226,7 @@ static void Rec_ShowSurname2 (struct UsrData *UsrDat,
else if (UsrDat->Surname2[0])
fprintf (Gbl.F.Out,"<strong>%s</strong>",UsrDat->Surname2);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3226,6 +3242,7 @@ static void Rec_ShowFirstName (struct UsrData *UsrDat,
extern const char *Txt_First_name;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"FirstName\" class=\"%s\">"
"%s",
@ -3233,9 +3250,10 @@ static void Rec_ShowFirstName (struct UsrData *UsrDat,
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
fprintf (Gbl.F.Out,"*");
fprintf (Gbl.F.Out,":"
"</label>"
"</td>"
"<td colspan=\"2\""
"</label>");
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td colspan=\"2\""
" class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ICanEdit)
{
@ -3252,6 +3270,7 @@ static void Rec_ShowFirstName (struct UsrData *UsrDat,
else if (UsrDat->FirstName[0])
fprintf (Gbl.F.Out,"<strong>%s</strong>",UsrDat->FirstName);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3275,14 +3294,16 @@ static void Rec_ShowCountry (struct UsrData *UsrDat,
}
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"OthCtyCod\" class=\"%s\">%s",
ClassForm,Txt_Country);
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
fprintf (Gbl.F.Out,"*");
fprintf (Gbl.F.Out,":</label>"
"</td>"
"<td colspan=\"2\""
fprintf (Gbl.F.Out,":</label>");
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td colspan=\"2\""
" class=\"REC_C2_BOT LEFT_MIDDLE\">");
/***** Selector of country *****/
@ -3305,8 +3326,9 @@ static void Rec_ShowCountry (struct UsrData *UsrDat,
fprintf (Gbl.F.Out,">%s</option>",
Gbl.Hierarchy.Sys.Ctys.Lst[NumCty].Name[Gbl.Prefs.Language]);
}
fprintf (Gbl.F.Out,"</select>"
"</td>");
fprintf (Gbl.F.Out,"</select>");
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3321,13 +3343,15 @@ static void Rec_ShowOriginPlace (struct UsrData *UsrDat,
extern const char *Txt_Place_of_origin;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"OriginPlace\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Place_of_origin);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (ICanEdit)
@ -3341,6 +3365,7 @@ static void Rec_ShowOriginPlace (struct UsrData *UsrDat,
fprintf (Gbl.F.Out,"%s",UsrDat->OriginPlace);
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3355,11 +3380,13 @@ static void Rec_ShowDateOfBirth (struct UsrData *UsrDat,
extern const char *Txt_Date_of_birth;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"%s:",
ClassForm,Txt_Date_of_birth);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (ICanEdit)
@ -3372,6 +3399,7 @@ static void Rec_ShowDateOfBirth (struct UsrData *UsrDat,
fprintf (Gbl.F.Out,"%s",UsrDat->StrBirthday);
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3386,13 +3414,15 @@ static void Rec_ShowLocalAddress (struct UsrData *UsrDat,
extern const char *Txt_Local_address;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"LocalAddress\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Local_address);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (ICanEdit)
@ -3406,6 +3436,7 @@ static void Rec_ShowLocalAddress (struct UsrData *UsrDat,
fprintf (Gbl.F.Out,"%s",UsrDat->LocalAddress);
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3420,13 +3451,15 @@ static void Rec_ShowLocalPhone (struct UsrData *UsrDat,
extern const char *Txt_Phone;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"LocalPhone\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Phone);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (ICanEdit)
@ -3442,6 +3475,7 @@ static void Rec_ShowLocalPhone (struct UsrData *UsrDat,
UsrDat->LocalPhone);
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3456,13 +3490,15 @@ static void Rec_ShowFamilyAddress (struct UsrData *UsrDat,
extern const char *Txt_Family_address;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"FamilyAddress\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Family_address);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (ICanEdit)
@ -3476,6 +3512,7 @@ static void Rec_ShowFamilyAddress (struct UsrData *UsrDat,
fprintf (Gbl.F.Out,"%s",UsrDat->FamilyAddress);
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3490,13 +3527,15 @@ static void Rec_ShowFamilyPhone (struct UsrData *UsrDat,
extern const char *Txt_Phone;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"FamilyPhone\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Phone);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (ICanEdit)
@ -3512,6 +3551,7 @@ static void Rec_ShowFamilyPhone (struct UsrData *UsrDat,
UsrDat->FamilyPhone);
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3526,11 +3566,13 @@ static void Rec_ShowComments (struct UsrData *UsrDat,
extern const char *Txt_USER_comments;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
"<label for=\"Comments\" class=\"%s\">%s:</label>"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_TOP\">",
"<label for=\"Comments\" class=\"%s\">%s:</label>",
ClassForm,Txt_USER_comments);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_TOP\">");
if (ShowData)
{
if (ICanEdit)
@ -3547,6 +3589,7 @@ static void Rec_ShowComments (struct UsrData *UsrDat,
}
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3584,11 +3627,13 @@ static void Rec_ShowInstitution (struct Instit *Ins,
extern const char *Txt_Institution;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"%s:",
ClassForm,Txt_Institution);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
if (Ins->InsCod > 0)
{
@ -3601,6 +3646,7 @@ static void Rec_ShowInstitution (struct Instit *Ins,
fprintf (Gbl.F.Out,"</a>");
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3615,11 +3661,13 @@ static void Rec_ShowCentre (struct UsrData *UsrDat,
struct Centre Ctr;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"%s:",
ClassForm,Txt_Centre);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (UsrDat->Tch.CtrCod > 0)
@ -3636,6 +3684,7 @@ static void Rec_ShowCentre (struct UsrData *UsrDat,
}
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3650,11 +3699,13 @@ static void Rec_ShowDepartment (struct UsrData *UsrDat,
struct Department Dpt;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"%s:",
ClassForm,Txt_Department);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
{
if (UsrDat->Tch.DptCod > 0)
@ -3671,6 +3722,7 @@ static void Rec_ShowDepartment (struct UsrData *UsrDat,
}
}
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3684,14 +3736,17 @@ static void Rec_ShowOffice (struct UsrData *UsrDat,
extern const char *Txt_Office;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"%s:",
ClassForm,Txt_Office);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
fprintf (Gbl.F.Out,"%s",UsrDat->Tch.Office);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3705,16 +3760,19 @@ static void Rec_ShowOfficePhone (struct UsrData *UsrDat,
extern const char *Txt_Phone;
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
"%s:"
"</td>"
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
"%s:",
ClassForm,Txt_Phone);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">");
if (ShowData)
fprintf (Gbl.F.Out,"<a href=\"tel:%s\" class=\"REC_DAT_BOLD\">%s</a>",
UsrDat->Tch.OfficePhone,
UsrDat->Tch.OfficePhone);
Tbl_EndCell ();
Tbl_EndRow ();
}
@ -3990,11 +4048,13 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
/***** Country *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"OthCtyCod\" class=\"%s\">%s*:</label>"
"</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
"<label for=\"OthCtyCod\" class=\"%s\">%s*:</label>",
ClassForm,Txt_Country);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT LEFT_MIDDLE\">");
/* If list of countries is empty, try to get it */
if (!Gbl.Hierarchy.Sys.Ctys.Num)
@ -4027,15 +4087,18 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
fprintf (Gbl.F.Out,"</select>");
Frm_EndForm ();
Tbl_EndCell ();
Tbl_EndRow ();
/***** Institution *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"OthInsCod\" class=\"%s\">%s*:</label>"
"</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
"<label for=\"OthInsCod\" class=\"%s\">%s*:</label>",
ClassForm,Txt_Institution);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT LEFT_MIDDLE\">");
/* Get list of institutions in this country */
Ins_FreeListInstitutions ();
@ -4071,17 +4134,20 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
fprintf (Gbl.F.Out,"</select>");
Frm_EndForm ();
Tbl_EndCell ();
Tbl_EndRow ();
if (IAmATeacher)
{
/***** Centre *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"OthCtrCod\" class=\"%s\">%s*:</label>"
"</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
"<label for=\"OthCtrCod\" class=\"%s\">%s*:</label>",
ClassForm,Txt_Centre);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT LEFT_MIDDLE\">");
/* Get list of centres in this institution */
Ctr_FreeListCentres ();
@ -4117,15 +4183,18 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
fprintf (Gbl.F.Out,"</select>");
Frm_EndForm ();
Tbl_EndCell ();
Tbl_EndRow ();
/***** Department *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"%s\" class=\"%s\">%s*:</label>"
"</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
"<label for=\"%s\" class=\"%s\">%s*:</label>",
Dpt_PARAM_DPT_COD_NAME,ClassForm,Txt_Department);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT LEFT_MIDDLE\">");
Frm_StartFormAnchor (ActChgMyDpt,Rec_MY_INS_CTR_DPT_ID);
Dpt_WriteSelectorDepartment (Gbl.Usrs.Me.UsrDat.InsCod, // Departments in my institution
Gbl.Usrs.Me.UsrDat.Tch.DptCod, // Selected department
@ -4135,17 +4204,20 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
true); // Submit on change
Frm_EndForm ();
Tbl_EndCell ();
Tbl_EndRow ();
/***** Office *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"Office\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Office);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT LEFT_MIDDLE\">");
Frm_StartFormAnchor (ActChgMyOff,Rec_MY_INS_CTR_DPT_ID);
fprintf (Gbl.F.Out,"<input type=\"text\" id=\"Office\" name=\"Office\""
" maxlength=\"%u\" value=\"%s\""
@ -4156,17 +4228,20 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Gbl.Form.Id);
Frm_EndForm ();
Tbl_EndCell ();
Tbl_EndRow ();
/***** Phone *****/
Tbl_StartRow ();
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
"<label for=\"OfficePhone\" class=\"%s\">"
"%s:"
"</label>"
"</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
"</label>",
ClassForm,Txt_Phone);
Tbl_EndCell ();
fprintf (Gbl.F.Out,"<td class=\"REC_C2_BOT LEFT_MIDDLE\">");
Frm_StartFormAnchor (ActChgMyOffPho,Rec_MY_INS_CTR_DPT_ID);
fprintf (Gbl.F.Out,"<input type=\"tel\""
" id=\"OfficePhone\" name=\"OfficePhone\""
@ -4178,6 +4253,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Gbl.Form.Id);
Frm_EndForm ();
Tbl_EndCell ();
Tbl_EndRow ();
}

File diff suppressed because it is too large Load Diff