mirror of https://github.com/acanas/swad-core.git
Version 15.52
This commit is contained in:
parent
e575204b5b
commit
83f6fc6800
|
@ -1560,14 +1560,27 @@ a:hover img.CENTRE_PHOTO_SHOW
|
||||||
.TEST_EDI {color:#404040; font-size:12pt;}
|
.TEST_EDI {color:#404040; font-size:12pt;}
|
||||||
.TEST_EDI_LIGHT {color:#A0A0A0; font-size:12pt;}
|
.TEST_EDI_LIGHT {color:#A0A0A0; font-size:12pt;}
|
||||||
|
|
||||||
.HOR {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#345C6C; font-size:10pt; line-height:110%; letter-spacing:0;}
|
/******************************* Time table **********************************/
|
||||||
.FREE0 {background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #EEEADC #F4F2EA;}
|
#timetable
|
||||||
.FREE1 {background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #E0D9C2 #F4F2EA;}
|
{
|
||||||
.FREE2 {background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #F5F2E9 #FBFAF7;}
|
width:100%;
|
||||||
.FREE3 {background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #E0D9C2 #FBFAF7;}
|
margin:0 auto;
|
||||||
.THEO {background-color:#C0DAE4; border:solid 2px; border-color:#C9E3ED #B5CFD9 #B5CFD9 #C9E3ED;}
|
}
|
||||||
.PRAC {background-color:#DBE5E9; border:solid 2px; border-color:#E4EEF2 #D0DADE #D0DADE #E4EEF2;}
|
.TT_TXT
|
||||||
.TUTO {background-color:#D6E9C3; border:solid 2px; border-color:#DFEEE0 #CAE3B1 #CAE3B1 #DFEEE0;}
|
{
|
||||||
|
font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif;
|
||||||
|
color:#345C6C;
|
||||||
|
font-size:10pt;
|
||||||
|
line-height:110%;
|
||||||
|
letter-spacing:0;
|
||||||
|
}
|
||||||
|
.FREE0 {height:20px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #EEEADC #F4F2EA;}
|
||||||
|
.FREE1 {height:20px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #E0D9C2 #F4F2EA;}
|
||||||
|
.FREE2 {height:20px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #F5F2E9 #FBFAF7;}
|
||||||
|
.FREE3 {height:20px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #E0D9C2 #FBFAF7;}
|
||||||
|
.THEO {height:20px; background-color:#C0DAE4; border:solid 2px; border-color:#C9E3ED #B5CFD9 #B5CFD9 #C9E3ED;}
|
||||||
|
.PRAC {height:20px; background-color:#DBE5E9; border:solid 2px; border-color:#E4EEF2 #D0DADE #D0DADE #E4EEF2;}
|
||||||
|
.TUTO {height:20px; background-color:#D6E9C3; border:solid 2px; border-color:#DFEEE0 #CAE3B1 #CAE3B1 #DFEEE0;}
|
||||||
|
|
||||||
.PREF_OFF
|
.PREF_OFF
|
||||||
{
|
{
|
||||||
|
@ -1756,7 +1769,7 @@ a:hover img.CENTRE_PHOTO_SHOW
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
min-width:312px;
|
min-width:312px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/********************************** Page foot ********************************/
|
/********************************** Page foot ********************************/
|
||||||
@media only screen and (max-width: 899px)
|
@media only screen and (max-width: 899px)
|
||||||
{ /* For mobile-phones */
|
{ /* For mobile-phones */
|
|
@ -11166,3 +11166,17 @@ SELECT * FROM expanded_folders WHERE ClickTime<FROM_UNIXTIME(UNIX_TIMESTAMP()-'1
|
||||||
|
|
||||||
-----
|
-----
|
||||||
SELECT UsrCod,'Y',Sex FROM usr_data WHERE UsrCod IN (SELECT DISTINCT UsrCod FROM admin WHERE Scope='Sys' UNION SELECT DISTINCT admin.UsrCod FROM admin,institutions WHERE admin.Scope='Ins' AND admin.Cod=institutions.InsCod AND institutions.CtyCod='724') AS admin_codes ORDER BY Surname1,Surname2,FirstName,UsrCod;
|
SELECT UsrCod,'Y',Sex FROM usr_data WHERE UsrCod IN (SELECT DISTINCT UsrCod FROM admin WHERE Scope='Sys' UNION SELECT DISTINCT admin.UsrCod FROM admin,institutions WHERE admin.Scope='Ins' AND admin.Cod=institutions.InsCod AND institutions.CtyCod='724') AS admin_codes ORDER BY Surname1,Surname2,FirstName,UsrCod;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
CREATE TABLE timetable_crs_backup LIKE timetable_crs;
|
||||||
|
INSERT INTO timetable_crs_backup SELECT * FROM timetable_crs;
|
||||||
|
|
||||||
|
CREATE TABLE timetable_tut_backup LIKE timetable_tut;
|
||||||
|
INSERT INTO timetable_tut_backup SELECT * FROM timetable_tut;
|
||||||
|
|
||||||
|
UPDATE timetable_crs SET Hour=Hour+2;
|
||||||
|
UPDATE timetable_tut SET Hour=Hour+2;
|
||||||
|
|
||||||
|
|
|
@ -111,18 +111,19 @@
|
||||||
// TODO: Edition of courses: Rename "Curso" to "Año / semestre / cuatrimestre"
|
// TODO: Edition of courses: Rename "Curso" to "Año / semestre / cuatrimestre"
|
||||||
// TODO: Listing of courses: Put "Optativas" year at the end
|
// TODO: Listing of courses: Put "Optativas" year at the end
|
||||||
// TODO: Timetable: Sunday can be the first day of the week
|
// TODO: Timetable: Sunday can be the first day of the week
|
||||||
// TODO: Timetable: Day can start at 6 am
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 15.51.4 (2015/11/30)"
|
#define Log_PLATFORM_VERSION "SWAD 15.52 (2015/11/30)"
|
||||||
#define CSS_FILE "swad15.51.4.css"
|
#define CSS_FILE "swad15.52.css"
|
||||||
|
|
||||||
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
||||||
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
|
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
|
||||||
/*
|
/*
|
||||||
|
Version 15.52: Nov 30, 2015 Timetable now starts at 6 a.m. instead of 7 a.m.
|
||||||
|
Changes in layout of timetable. (186648 lines)
|
||||||
Version 15.51.4: Nov 30, 2015 Calendar is now distributed in rows with 3 months instead of 4.
|
Version 15.51.4: Nov 30, 2015 Calendar is now distributed in rows with 3 months instead of 4.
|
||||||
Changes in layout. (186644 lines)
|
Changes in layout. (186644 lines)
|
||||||
Version 15.51.3: Nov 30, 2015 Responsive design in login-logout. (186641 lines)
|
Version 15.51.3: Nov 30, 2015 Responsive design in login-logout. (186641 lines)
|
||||||
|
|
|
@ -49,9 +49,9 @@ extern struct Globals Gbl;
|
||||||
/*************************** Internal constants ******************************/
|
/*************************** Internal constants ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define TT_START_HOUR 7 // Day starts at 7:00
|
#define TT_START_HOUR 6 // Day starts at 6:00
|
||||||
#define TT_HOURS_PER_DAY 15 // From 7:00 to 22:00
|
#define TT_HOURS_PER_DAY 16 // From 6:00 to 22:00
|
||||||
#define TT_DAYS 7 // From monday to friday
|
#define TT_DAYS 7 // Seven days per week
|
||||||
#define TT_MAX_COLUMNS_PER_CELL 3 // Maximum number of items (i.e. classes) in a timetable cell (1, 2, 3 or 4)
|
#define TT_MAX_COLUMNS_PER_CELL 3 // Maximum number of items (i.e. classes) in a timetable cell (1, 2, 3 or 4)
|
||||||
#define TT_NUM_MINICOLUMNS_PER_DAY 6 // Least common multiple of 1,2,3,...,TT_MAX_COLUMNS_PER_CELL
|
#define TT_NUM_MINICOLUMNS_PER_DAY 6 // Least common multiple of 1,2,3,...,TT_MAX_COLUMNS_PER_CELL
|
||||||
#define TT_PERCENT_WIDTH_OF_A_MINICOLUMN 2 // Width (%) of each minicolumn
|
#define TT_PERCENT_WIDTH_OF_A_MINICOLUMN 2 // Width (%) of each minicolumn
|
||||||
|
@ -266,7 +266,7 @@ void TT_ShowClassTimeTable (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Start frame *****/
|
/***** Start frame *****/
|
||||||
Lay_StartRoundFrameTable (NULL,0,Txt_TIMETABLE_TYPES[TimeTableType]);
|
Lay_StartRoundFrameTable ("100%",0,Txt_TIMETABLE_TYPES[TimeTableType]);
|
||||||
|
|
||||||
/***** Start time table drawing *****/
|
/***** Start time table drawing *****/
|
||||||
if (TimeTableType == TT_COURSE_TIMETABLE)
|
if (TimeTableType == TT_COURSE_TIMETABLE)
|
||||||
|
@ -749,23 +749,23 @@ static void TT_DrawTimeTable (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Table start *****/
|
/***** Table start *****/
|
||||||
fprintf (Gbl.F.Out,"<table style=\"min-width:700px; margin:0 auto;\">");
|
fprintf (Gbl.F.Out,"<table id=\"timetable\">");
|
||||||
|
|
||||||
/***** Top row used for column adjustement *****/
|
/***** Top row used for column adjustement *****/
|
||||||
TT_TimeTableDrawAdjustRow ();
|
TT_TimeTableDrawAdjustRow ();
|
||||||
|
|
||||||
/***** Row with day names *****/
|
/***** Row with day names *****/
|
||||||
fprintf (Gbl.F.Out,"<tr>"
|
fprintf (Gbl.F.Out,"<tr>"
|
||||||
"<td rowspan=\"2\" class=\"HOR RIGHT_MIDDLE\""
|
"<td rowspan=\"2\" class=\"TT_TXT RIGHT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%; height:40px;\">"
|
||||||
"%u:00"
|
"%u:00"
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR);
|
||||||
TT_DrawCellAlignTimeTable ();
|
TT_DrawCellAlignTimeTable ();
|
||||||
TT_TimeTableDrawDaysCells ();
|
TT_TimeTableDrawDaysCells ();
|
||||||
TT_DrawCellAlignTimeTable ();
|
TT_DrawCellAlignTimeTable ();
|
||||||
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"HOR LEFT_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"TT_TXT LEFT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%; height:40px;\">"
|
||||||
"%u:00"
|
"%u:00"
|
||||||
"</td>"
|
"</td>"
|
||||||
"</tr>",
|
"</tr>",
|
||||||
|
@ -785,8 +785,8 @@ static void TT_DrawTimeTable (void)
|
||||||
|
|
||||||
/* Hour */
|
/* Hour */
|
||||||
if (Hour % 2)
|
if (Hour % 2)
|
||||||
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"HOR RIGHT_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"TT_TXT RIGHT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%; height:40px;\">"
|
||||||
"%2u:00"
|
"%2u:00"
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR + (Hour+1)/2);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR + (Hour+1)/2);
|
||||||
|
@ -843,8 +843,8 @@ static void TT_DrawTimeTable (void)
|
||||||
|
|
||||||
/* Hour */
|
/* Hour */
|
||||||
if (Hour % 2)
|
if (Hour % 2)
|
||||||
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"HOR LEFT_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"TT_TXT LEFT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%; height:40px;\">"
|
||||||
"%2u:00"
|
"%2u:00"
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR + (Hour+1)/2);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR + (Hour+1)/2);
|
||||||
|
@ -880,8 +880,7 @@ static void TT_TimeTableDrawAdjustRow (void)
|
||||||
unsigned Minicolumn;
|
unsigned Minicolumn;
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<tr>"
|
fprintf (Gbl.F.Out,"<tr>"
|
||||||
"<td class=\"HOR LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
"<td class=\"TT_TXT LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
||||||
" "
|
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
||||||
TT_DrawCellAlignTimeTable ();
|
TT_DrawCellAlignTimeTable ();
|
||||||
|
@ -891,15 +890,13 @@ static void TT_TimeTableDrawAdjustRow (void)
|
||||||
for (Minicolumn = 0;
|
for (Minicolumn = 0;
|
||||||
Minicolumn < TT_NUM_MINICOLUMNS_PER_DAY;
|
Minicolumn < TT_NUM_MINICOLUMNS_PER_DAY;
|
||||||
Minicolumn++)
|
Minicolumn++)
|
||||||
fprintf (Gbl.F.Out,"<td class=\"HOR LEFT_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%;\">"
|
||||||
" "
|
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_A_MINICOLUMN);
|
TT_PERCENT_WIDTH_OF_A_MINICOLUMN);
|
||||||
TT_DrawCellAlignTimeTable ();
|
TT_DrawCellAlignTimeTable ();
|
||||||
fprintf (Gbl.F.Out,"<td class=\"HOR LEFT_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%;\">"
|
||||||
" "
|
|
||||||
"</td>"
|
"</td>"
|
||||||
"</tr>",
|
"</tr>",
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
||||||
|
@ -917,7 +914,7 @@ static void TT_TimeTableDrawDaysCells (void)
|
||||||
for (Day = 0;
|
for (Day = 0;
|
||||||
Day < TT_DAYS;
|
Day < TT_DAYS;
|
||||||
Day++)
|
Day++)
|
||||||
fprintf (Gbl.F.Out,"<td colspan=\"%u\" class=\"HOR CENTER_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td colspan=\"%u\" class=\"TT_TXT CENTER_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%;\">"
|
||||||
"%s"
|
"%s"
|
||||||
"</td>",
|
"</td>",
|
||||||
|
@ -986,8 +983,7 @@ static unsigned TT_TimeTableCalculateColsToDraw (unsigned Day,unsigned Hour)
|
||||||
|
|
||||||
static void TT_DrawCellAlignTimeTable (void)
|
static void TT_DrawCellAlignTimeTable (void)
|
||||||
{
|
{
|
||||||
fprintf (Gbl.F.Out,"<td class=\"HOR LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
||||||
" "
|
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_A_SEPARATION_COLUMN);
|
TT_PERCENT_WIDTH_OF_A_SEPARATION_COLUMN);
|
||||||
}
|
}
|
||||||
|
@ -1032,13 +1028,13 @@ static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,uns
|
||||||
/***** Compute row span and background color depending on hour type *****/
|
/***** Compute row span and background color depending on hour type *****/
|
||||||
switch (HourType)
|
switch (HourType)
|
||||||
{
|
{
|
||||||
case TT_FREE_HOUR: // Se escribe una casilla libre
|
case TT_FREE_HOUR: // Free cell written
|
||||||
RowSpan = 1;
|
RowSpan = 1;
|
||||||
break;
|
break;
|
||||||
case TT_FIRST_HOUR: // Se escribe una casilla normal
|
case TT_FIRST_HOUR: // Normal cell written
|
||||||
RowSpan = Duration;
|
RowSpan = Duration;
|
||||||
break;
|
break;
|
||||||
case TT_NEXT_HOUR: // No se escribe nada
|
case TT_NEXT_HOUR: // Nothing written
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1093,14 +1089,9 @@ static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,uns
|
||||||
{
|
{
|
||||||
case TT_CRS_SHOW:
|
case TT_CRS_SHOW:
|
||||||
case TT_TUT_SHOW:
|
case TT_TUT_SHOW:
|
||||||
if (HourType == TT_FREE_HOUR) // If cell is empty...
|
if (HourType != TT_FREE_HOUR) // If cell is not empty...
|
||||||
fprintf (Gbl.F.Out,"<img src=\"%s/tr1x16.gif\""
|
|
||||||
" alt=\"\" title=\"\""
|
|
||||||
" style=\"width:1px; height:20px;\" />",
|
|
||||||
Gbl.Prefs.IconsURL);
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
fprintf (Gbl.F.Out,"<span class=\"HOR\">");
|
fprintf (Gbl.F.Out,"<span class=\"TT_TXT\">");
|
||||||
if (Gbl.CurrentAct == ActSeeMyTimTbl ||
|
if (Gbl.CurrentAct == ActSeeMyTimTbl ||
|
||||||
Gbl.CurrentAct == ActPrnMyTimTbl)
|
Gbl.CurrentAct == ActPrnMyTimTbl)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue