diff --git a/css/swad23.53.1.css b/css/swad23.53.1.css index 4f9cf29b..4c971e20 100644 --- a/css/swad23.53.1.css +++ b/css/swad23.53.1.css @@ -5242,10 +5242,12 @@ button.PAG_DARK:hover, .PAG_CUR_DARK {background-color:#707070;} } } -.TBL_SCROLL tbody { +.TBL_SCROLL tbody + { display: table; width: 100%; -} + } +.TBL_SCROLL th,.TBL_SCROLL td {padding: 2px;} .Ind_TBL td,.Ind_TBL th { diff --git a/js/swad23.52.js b/js/swad23.53.3.js similarity index 99% rename from js/swad23.52.js rename to js/swad23.53.3.js index 298179c7..3969f907 100644 --- a/js/swad23.52.js +++ b/js/swad23.53.3.js @@ -145,13 +145,13 @@ function writeLocalDateHMSFromUTC (id,TimeUTC,DateFormat,Separator,Language, StrDat = Yea.toString () + '-' + StrMon + '-' + StrDay; break; case 1: // Dat_FORMAT_DD_MONTH_YYYY - StrDat = Day.toString () + ' ' + - MonthsShort[Mon - 1] + ' ' + + StrDat = Day.toString () + ' ' + + MonthsShort[Mon - 1] + ' ' + Yea.toString (); break; case 2: // Dat_FORMAT_MONTH_DD_YYYY - StrDat = MonthsShort[Mon - 1] + ' ' + - Day.toString() + ', ' + + StrDat = MonthsShort[Mon - 1] + ' ' + + Day.toString() + ', ' + Yea.toString (); break; default: diff --git a/swad_assignment.c b/swad_assignment.c index ed080544..4dfc5ccf 100644 --- a/swad_assignment.c +++ b/swad_assignment.c @@ -174,7 +174,7 @@ void Asg_ShowAllAssignments (struct Asg_Assignments *Assignments) if (Assignments->Num) { /***** Begin table *****/ - HTM_TABLE_BeginWideMarginPadding (2); + HTM_TABLE_Begin ("TBL_SCROLL"); /***** Table head *****/ Asg_PutHead (Assignments, @@ -415,24 +415,30 @@ void Asg_ShowOneAssignmentInBox (struct Asg_Assignments *Assignments) extern const char *Hlp_ASSESSMENT_Assignments; extern const char *Txt_Assignment; - /***** Begin box and table *****/ - Box_BoxTableBegin (NULL,Assignments->Asg.Title[0] ? Assignments->Asg.Title : - Txt_Assignment, - Asg_PutIconsOneAsg,Assignments, - Hlp_ASSESSMENT_Assignments,Box_NOT_CLOSABLE,2); + /***** Begin box *****/ + Box_BoxBegin (NULL,Assignments->Asg.Title[0] ? Assignments->Asg.Title : + Txt_Assignment, + Asg_PutIconsOneAsg,Assignments, + Hlp_ASSESSMENT_Assignments,Box_NOT_CLOSABLE); - /***** Table head *****/ - Asg_PutHead (Assignments, - true, // Only this assignment in table - Vie_VIEW); // Not print view + /***** Begin table *****/ + HTM_TABLE_Begin ("TBL_SCROLL"); - /***** Write assignment *****/ - Asg_ShowAssignmentRow (Assignments, - true, // Only this assignment in table - Vie_VIEW); // Not print view + /***** Table head *****/ + Asg_PutHead (Assignments, + true, // Only this assignment in table + Vie_VIEW); // Not print view - /***** End table and end box *****/ - Box_BoxTableEnd (); + /***** Write assignment *****/ + Asg_ShowAssignmentRow (Assignments, + true, // Only this assignment in table + Vie_VIEW); // Not print view + + /***** End table *****/ + HTM_TABLE_End (); + + /***** End box *****/ + Box_BoxEnd (); } /*****************************************************************************/ diff --git a/swad_center.c b/swad_center.c index 5e54c62c..6fd08c82 100644 --- a/swad_center.c +++ b/swad_center.c @@ -261,9 +261,9 @@ static void Ctr_ListCenters (void) if (Gbl.Hierarchy.List[Hie_INS].Num) // There are centers in the current institution { /***** Begin table *****/ - HTM_TABLE_BeginWideMarginPadding (2); + HTM_TABLE_Begin ("TBL_SCROLL"); - /***** Write heading *****/ + /***** Heading *****/ Ctr_PutHeadCentersForSeeing (true); // Order selectable /***** Write all centers and their nuber of teachers *****/ @@ -330,31 +330,30 @@ static void Ctr_ListOneCenterForSeeing (struct Hie_Node *Ctr,unsigned NumCtr) TxtClassStrong = "DAT_STRONG"; } BgColor = (Ctr->HieCod == Gbl.Hierarchy.Node[Hie_CTR].HieCod) ? "BG_HIGHLIGHT" : - The_GetColorRows (); + The_GetColorRows (); HTM_TR_Begin (NULL); /***** Number of center in this list *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (NumCtr); HTM_TD_End (); /***** Center logo and name *****/ - HTM_TD_Begin ("class=\"LM %s_%s %s\"", + HTM_TD_Begin ("class=\"LT %s_%s %s\"", TxtClassStrong,The_GetSuffix (),BgColor); - Ctr_DrawCenterLogoAndNameWithLink (Ctr,ActSeeDeg,"CM ICO16x16"); + Ctr_DrawCenterLogoAndNameWithLink (Ctr,ActSeeDeg,"CT ICO16x16"); HTM_TD_End (); /***** Number of users who claim to belong to this center *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); - HTM_Unsigned (Hie_GetCachedNumUsrsWhoClaimToBelongTo (Hie_CTR, - Ctr)); + HTM_Unsigned (Hie_GetCachedNumUsrsWhoClaimToBelongTo (Hie_CTR,Ctr)); HTM_TD_End (); /***** Place *****/ - HTM_TD_Begin ("class=\"LM %s_%s %s\"", + HTM_TD_Begin ("class=\"LT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); Plc.PlcCod = Ctr->Specific.PlcCod; Plc_GetPlaceDataByCod (&Plc); @@ -362,7 +361,7 @@ static void Ctr_ListOneCenterForSeeing (struct Hie_Node *Ctr,unsigned NumCtr) HTM_TD_End (); /***** Number of degrees *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Hie_GetCachedNumNodesInHieLvl (Hie_DEG, // Number of degrees... Hie_CTR, // ...in center @@ -370,7 +369,7 @@ static void Ctr_ListOneCenterForSeeing (struct Hie_Node *Ctr,unsigned NumCtr) HTM_TD_End (); /***** Number of courses *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Hie_GetCachedNumNodesInHieLvl (Hie_CRS, // Number of courses... Hie_CTR, // ...in center @@ -378,7 +377,7 @@ static void Ctr_ListOneCenterForSeeing (struct Hie_Node *Ctr,unsigned NumCtr) HTM_TD_End (); /***** Number of users in courses of this center *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Enr_GetCachedNumUsrsInCrss (Hie_CTR,Ctr->HieCod, 1 << Rol_STD | @@ -1336,7 +1335,7 @@ static void Ctr_PutHeadCentersForSeeing (bool OrderSelectable) Hie_Order_t Order; static HTM_HeadAlign Align[Hie_NUM_ORDERS] = { - [Hie_ORDER_BY_NAME ] = HTM_HEAD_LEFT, + [Hie_ORDER_BY_NAME ] = HTM_HEAD_LEFT, [Hie_ORDER_BY_NUM_USRS] = HTM_HEAD_RIGHT }; @@ -1354,7 +1353,7 @@ static void Ctr_PutHeadCentersForSeeing (bool OrderSelectable) Frm_BeginForm (ActSeeCtr); Par_PutParUnsigned (NULL,"Order",(unsigned) Order); HTM_BUTTON_Submit_Begin (Txt_CENTERS_HELP_ORDER[Order], - "class=\"BT_LINK\""); + "class=\"BT_LINK RT\""); if (Order == Gbl.Hierarchy.List[Hie_INS].SelectedOrder) HTM_U_Begin (); } diff --git a/swad_changelog.h b/swad_changelog.h index 38226a6d..5b0e0a71 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -633,10 +633,12 @@ Me sale este error, no s "can npt create received message (duplicated entry '243218-2160773' for key 'UsrCod_MsgCod') */ -#define Log_PLATFORM_VERSION "SWAD 23.53.1 (2023-12-14)" +#define Log_PLATFORM_VERSION "SWAD 23.53.3 (2023-12-18)" #define CSS_FILE "swad23.53.1.css" -#define JS_FILE "swad23.52.js" +#define JS_FILE "swad23.53.3.js" /* + Version 23.53.3: Dec 18, 2023 Responsive design in assignments. (335868 lines) + Version 23.53.2: Dec 15, 2023 Responsive design in lists of institutions, centers, degrees and courses. (335863 lines) Version 23.53.1: Dec 15, 2023 Responsive design in list of countries. (335860 lines) Version 23.53: Dec 15, 2023 Code refactoring and responsive design in timetable. (335858 lines) Version 23.52.7: Dec 14, 2023 Responsive design in indicators. (335817 lines) diff --git a/swad_country.c b/swad_country.c index ec744cc7..28645a41 100644 --- a/swad_country.c +++ b/swad_country.c @@ -230,7 +230,7 @@ void Cty_ListCountries2 (void) Hlp_SYSTEM_Countries,Box_NOT_CLOSABLE); HTM_TABLE_Begin ("TBL_SCROLL"); - /***** Write heading *****/ + /***** Heading *****/ Cty_PutHeadCountriesForSeeing (true); // Order selectable /***** Write all countries and their number of users and institutions *****/ diff --git a/swad_course.c b/swad_course.c index ae26e880..4fafe544 100644 --- a/swad_course.c +++ b/swad_course.c @@ -532,13 +532,13 @@ static void Crs_ListCourses (void) if (Gbl.Hierarchy.List[Hie_DEG].Num) // There are courses in the current degree { /***** Begin table *****/ - HTM_TABLE_BeginWideMarginPadding (2); + HTM_TABLE_Begin ("TBL_SCROLL"); - /* Heading */ + /***** Heading *****/ Crs_PutHeadCoursesForSeeing (); - /* List the courses */ - for (Year = 1; + /***** List the courses *****/ + for (Year = 1; Year <= Deg_MAX_YEARS_PER_DEGREE; Year++) if (Crs_ListCoursesOfAYearForSeeing (Year)) // If this year has courses ==> @@ -633,7 +633,7 @@ static bool Crs_ListCoursesOfAYearForSeeing (unsigned Year) NumUsrs[Rol_TCH]; /* Put green tip if course has users */ - HTM_TD_Begin ("class=\"CM %s_%s %s\" title=\"%s\"", + HTM_TD_Begin ("class=\"CT %s_%s %s\" title=\"%s\"", TxtClassNormal,The_GetSuffix (),BgColor, NumUsrs[Rol_UNK] ? Txt_COURSE_With_users : Txt_COURSE_Without_users); @@ -642,24 +642,24 @@ static bool Crs_ListCoursesOfAYearForSeeing (unsigned Year) HTM_TD_End (); /* Course year */ - HTM_TD_Begin ("class=\"CM %s_%s %s\"", + HTM_TD_Begin ("class=\"CT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Txt (Txt_YEAR_OF_DEGREE[Crs->Specific.Year]); HTM_TD_End (); /* Institutional code of the course */ - HTM_TD_Begin ("class=\"CM %s_%s %s\"", + HTM_TD_Begin ("class=\"CT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Txt (Crs->InstitutionalCod); HTM_TD_End (); /* Course full name */ - HTM_TD_Begin ("class=\"LM %s_%s %s\"", + HTM_TD_Begin ("class=\"LT %s_%s %s\"", TxtClassStrong,The_GetSuffix (),BgColor); Frm_BeginFormGoTo (ActSeeCrsInf); ParCod_PutPar (ParCod_Crs,Crs->HieCod); HTM_BUTTON_Submit_Begin (Str_BuildGoToTitle (Crs->FullName), - "class=\"LM BT_LINK\""); + "class=\"BT_LINK LT\""); Str_FreeGoToTitle (); HTM_Txt (Crs->FullName); HTM_BUTTON_End (); @@ -667,14 +667,14 @@ static bool Crs_ListCoursesOfAYearForSeeing (unsigned Year) HTM_TD_End (); /* Number of teachers in this course */ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (NumUsrs[Rol_TCH] + NumUsrs[Rol_NET]); HTM_TD_End (); /* Number of students in this course */ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (NumUsrs[Rol_STD]); HTM_TD_End (); diff --git a/swad_degree.c b/swad_degree.c index ef4ba719..5c6b97be 100644 --- a/swad_degree.c +++ b/swad_degree.c @@ -691,9 +691,9 @@ static void Deg_ListDegrees (void) if (Gbl.Hierarchy.List[Hie_CTR].Num) // There are degrees in the current center { /***** Begin table *****/ - HTM_TABLE_BeginWideMarginPadding (2); + HTM_TABLE_Begin ("TBL_SCROLL"); - /***** Write heading *****/ + /***** Heading *****/ Deg_PutHeadDegreesForSeeing (); /***** List the degrees *****/ @@ -779,7 +779,7 @@ static void Deg_ListOneDegreeForSeeing (struct Hie_Node *Deg,unsigned NumDeg) HTM_TR_Begin (NULL); /***** Put tip if degree has courses *****/ - HTM_TD_Begin ("class=\"CM %s_%s %s\" title=\"%s\"", + HTM_TD_Begin ("class=\"CT %s_%s %s\" title=\"%s\"", TxtClassNormal,The_GetSuffix (),BgColor, NumCrss ? Txt_DEGREE_With_courses : Txt_DEGREE_Without_courses); @@ -788,31 +788,31 @@ static void Deg_ListOneDegreeForSeeing (struct Hie_Node *Deg,unsigned NumDeg) HTM_TD_End (); /***** Number of degree in this list *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (NumDeg); HTM_TD_End (); /***** Degree logo and name *****/ - HTM_TD_Begin ("class=\"LM %s_%s %s\"", + HTM_TD_Begin ("class=\"LT %s_%s %s\"", TxtClassStrong,The_GetSuffix (),BgColor); Deg_DrawDegreeLogoAndNameWithLink (Deg,ActSeeCrs,"CM ICO20x20"); HTM_TD_End (); /***** Type of degree *****/ - HTM_TD_Begin ("class=\"LM %s_%s %s\"", + HTM_TD_Begin ("class=\"LT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Txt (DegTyp.DegTypName); HTM_TD_End (); /***** Current number of courses in this degree *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (NumCrss); HTM_TD_End (); /***** Number of users in courses of this degree *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Enr_GetCachedNumUsrsInCrss (Hie_DEG,Deg->HieCod, 1 << Rol_STD | diff --git a/swad_hierarchy.c b/swad_hierarchy.c index 22741f57..840fe665 100644 --- a/swad_hierarchy.c +++ b/swad_hierarchy.c @@ -727,7 +727,7 @@ void Hie_WriteStatusCell (Hie_Status_t Status, { Hie_StatusTxt_t StatusTxt = Hie_GetStatusTxtFromStatusBits (Status); - HTM_TD_Begin ("class=\"LM %s_%s %s\"", + HTM_TD_Begin ("class=\"LT %s_%s %s\"", Class,The_GetSuffix (),BgColor); if (StatusTxt != Hie_STATUS_ACTIVE) // If active ==> do not show anything HTM_Txt (Txt[StatusTxt]); diff --git a/swad_institution.c b/swad_institution.c index 4e3916c8..5bf9cca7 100644 --- a/swad_institution.c +++ b/swad_institution.c @@ -304,8 +304,10 @@ static void Ins_ListInstitutions (void) if (Gbl.Hierarchy.List[Hie_CTY].Num) // There are institutions in the current country { /***** Begin table *****/ - HTM_TABLE_BeginWideMarginPadding (2); - Ins_PutHeadInstitutionsForSeeing (true); // Order selectable + HTM_TABLE_Begin ("TBL_SCROLL"); + + /***** Heading *****/ + Ins_PutHeadInstitutionsForSeeing (true); // Order selectable /***** Write all institutions and their nuber of users *****/ for (NumIns = 0, The_ResetRowColor (); @@ -374,26 +376,26 @@ static void Ins_ListOneInstitutionForSeeing (struct Hie_Node *Ins,unsigned NumIn HTM_TR_Begin (NULL); /***** Number of institution in this list *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (NumIns); HTM_TD_End (); /***** Institution logo and name *****/ - HTM_TD_Begin ("class=\"LM %s_%s %s\"", + HTM_TD_Begin ("class=\"LT %s_%s %s\"", TxtClassStrong,The_GetSuffix (),BgColor); - Ins_DrawInstitLogoAndNameWithLink (Ins,ActSeeCtr,"CM ICO16x16"); + Ins_DrawInstitLogoAndNameWithLink (Ins,ActSeeCtr,"CT ICO16x16"); HTM_TD_End (); /***** Number of users who claim to belong to this institution *****/ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Hie_GetCachedNumUsrsWhoClaimToBelongTo (Hie_INS,Ins)); HTM_TD_End (); /***** Other stats *****/ /* Number of centers in this institution */ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Hie_GetCachedNumNodesInHieLvl (Hie_CTR, // Number of centers... Hie_INS, // ...in institution @@ -401,7 +403,7 @@ static void Ins_ListOneInstitutionForSeeing (struct Hie_Node *Ins,unsigned NumIn HTM_TD_End (); /* Number of degrees in this institution */ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Hie_GetCachedNumNodesInHieLvl (Hie_DEG, // Number of degrees... Hie_INS, // ...in institution @@ -409,7 +411,7 @@ static void Ins_ListOneInstitutionForSeeing (struct Hie_Node *Ins,unsigned NumIn HTM_TD_End (); /* Number of courses in this institution */ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Hie_GetCachedNumNodesInHieLvl (Hie_CRS, // Number of courses... Hie_INS, // ...in institution @@ -417,13 +419,13 @@ static void Ins_ListOneInstitutionForSeeing (struct Hie_Node *Ins,unsigned NumIn HTM_TD_End (); /* Number of departments in this institution */ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Dpt_GetNumDptsInIns (Ins->HieCod)); HTM_TD_End (); /* Number of users in courses of this institution */ - HTM_TD_Begin ("class=\"RM %s_%s %s\"", + HTM_TD_Begin ("class=\"RT %s_%s %s\"", TxtClassNormal,The_GetSuffix (),BgColor); HTM_Unsigned (Enr_GetCachedNumUsrsInCrss (Hie_INS,Ins->HieCod, 1 << Rol_STD | @@ -470,7 +472,7 @@ static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable) Frm_BeginForm (ActSeeIns); Par_PutParUnsigned (NULL,"Order",(unsigned) Order); HTM_BUTTON_Submit_Begin (Txt_INSTITUTIONS_HELP_ORDER[Order], - "class=\"BT_LINK\""); + "class=\"BT_LINK RT\""); if (Order == Gbl.Hierarchy.List[Hie_CTY].SelectedOrder) HTM_U_Begin (); } diff --git a/swad_text.c b/swad_text.c index 9589b4c4..22c1ad9c 100644 --- a/swad_text.c +++ b/swad_text.c @@ -18288,7 +18288,7 @@ const char *Txt_Institutions_of_COUNTRY_X = // Warning: it is very important to #elif L==5 // fr "Établissements de %s"; #elif L==6 // gn - "Instituciones de %s"; // Okoteve traducción + "Instituciones %s-pegua"; #elif L==7 // it "Istituzioni di %s"; #elif L==8 // pl @@ -18296,7 +18296,7 @@ const char *Txt_Institutions_of_COUNTRY_X = // Warning: it is very important to #elif L==9 // pt "Instituções de %s"; #elif L==10 // tr - "Institutions of %s"; // Çeviri lazim! + "%s Kurumları"; #endif const char *Txt_INSTITUTIONS_ORDER[Hie_NUM_ORDERS] =