mirror of https://github.com/acanas/swad-core.git
Version 16.155.26
This commit is contained in:
parent
08b4a8e03d
commit
da87da4bda
|
@ -1065,8 +1065,8 @@ CREATE TABLE IF NOT EXISTS timetable_crs (
|
||||||
Hour TINYINT NOT NULL,
|
Hour TINYINT NOT NULL,
|
||||||
Duration TINYINT NOT NULL,
|
Duration TINYINT NOT NULL,
|
||||||
ClassType ENUM('libre','teoria','practicas') NOT NULL,
|
ClassType ENUM('libre','teoria','practicas') NOT NULL,
|
||||||
Place VARCHAR(127) NOT NULL,
|
Place VARCHAR(511) NOT NULL,
|
||||||
GroupName VARCHAR(255) NOT NULL,
|
GroupName VARCHAR(2047) NOT NULL,
|
||||||
INDEX(CrsCod,GrpCod));
|
INDEX(CrsCod,GrpCod));
|
||||||
--
|
--
|
||||||
-- Table timetable_tut: stores the timetables of office hours of the teachers
|
-- Table timetable_tut: stores the timetables of office hours of the teachers
|
||||||
|
@ -1076,7 +1076,7 @@ CREATE TABLE IF NOT EXISTS timetable_tut (
|
||||||
Day ENUM('L','M','X','J','V','S','D') NOT NULL,
|
Day ENUM('L','M','X','J','V','S','D') NOT NULL,
|
||||||
Hour TINYINT NOT NULL,
|
Hour TINYINT NOT NULL,
|
||||||
Duration TINYINT NOT NULL,
|
Duration TINYINT NOT NULL,
|
||||||
Place VARCHAR(127) NOT NULL,
|
Place VARCHAR(511) NOT NULL,
|
||||||
INDEX(UsrCod));
|
INDEX(UsrCod));
|
||||||
--
|
--
|
||||||
-- Table tst_answers: stores the answers to the questions in tests
|
-- Table tst_answers: stores the answers to the questions in tests
|
||||||
|
|
|
@ -209,13 +209,19 @@
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 16.155.25 (2017-03-13)"
|
#define Log_PLATFORM_VERSION "SWAD 16.155.26 (2017-03-13)"
|
||||||
#define CSS_FILE "swad16.147.css"
|
#define CSS_FILE "swad16.147.css"
|
||||||
#define JS_FILE "swad16.144.js"
|
#define JS_FILE "swad16.144.js"
|
||||||
|
|
||||||
// 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 16.155.26:Mar 13, 2017 Adjusting size of database fields. (217009 lines)
|
||||||
|
3 changes necessary in database:
|
||||||
|
ALTER TABLE timetable_crs CHANGE COLUMN Place Place VARCHAR(511) NOT NULL;
|
||||||
|
ALTER TABLE timetable_crs CHANGE COLUMN GroupName GroupName VARCHAR(2047) NOT NULL;
|
||||||
|
ALTER TABLE timetable_tut CHANGE COLUMN Place Place VARCHAR(511) NOT NULL;
|
||||||
|
|
||||||
Version 16.155.25:Mar 13, 2017 Adjusting size of database fields. (216995 lines)
|
Version 16.155.25:Mar 13, 2017 Adjusting size of database fields. (216995 lines)
|
||||||
1 change necessary in database.
|
1 change necessary in database.
|
||||||
ALTER TABLE surveys CHANGE COLUMN Title Title VARCHAR(2047) NOT NULL;
|
ALTER TABLE surveys CHANGE COLUMN Title Title VARCHAR(2047) NOT NULL;
|
||||||
|
|
|
@ -2181,11 +2181,11 @@ mysql> DESCRIBE svy_answers;
|
||||||
4 rows in set (0.00 sec)
|
4 rows in set (0.00 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_answers ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_answers ("
|
||||||
"QstCod INT NOT NULL,"
|
"QstCod INT NOT NULL,"
|
||||||
"AnsInd TINYINT NOT NULL,"
|
"AnsInd TINYINT NOT NULL,"
|
||||||
"NumUsrs INT NOT NULL DEFAULT 0,"
|
"NumUsrs INT NOT NULL DEFAULT 0,"
|
||||||
"Answer TEXT NOT NULL,"
|
"Answer TEXT NOT NULL," // Cns_MAX_BYTES_TEXT
|
||||||
"UNIQUE INDEX(QstCod,AnsInd))");
|
"UNIQUE INDEX(QstCod,AnsInd))");
|
||||||
|
|
||||||
/***** Table svy_grp *****/
|
/***** Table svy_grp *****/
|
||||||
/*
|
/*
|
||||||
|
@ -2199,9 +2199,9 @@ mysql> DESCRIBE svy_grp;
|
||||||
2 rows in set (0.01 sec)
|
2 rows in set (0.01 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_grp ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_grp ("
|
||||||
"SvyCod INT NOT NULL,"
|
"SvyCod INT NOT NULL,"
|
||||||
"GrpCod INT NOT NULL,"
|
"GrpCod INT NOT NULL,"
|
||||||
"UNIQUE INDEX(SvyCod,GrpCod))");
|
"UNIQUE INDEX(SvyCod,GrpCod))");
|
||||||
|
|
||||||
/***** Table svy_questions *****/
|
/***** Table svy_questions *****/
|
||||||
/*
|
/*
|
||||||
|
@ -2218,13 +2218,13 @@ mysql> DESCRIBE svy_questions;
|
||||||
5 rows in set (0.00 sec)
|
5 rows in set (0.00 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_questions ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_questions ("
|
||||||
"QstCod INT NOT NULL AUTO_INCREMENT,"
|
"QstCod INT NOT NULL AUTO_INCREMENT,"
|
||||||
"SvyCod INT NOT NULL,"
|
"SvyCod INT NOT NULL,"
|
||||||
"QstInd INT NOT NULL DEFAULT 0,"
|
"QstInd INT NOT NULL DEFAULT 0,"
|
||||||
"AnsType ENUM ('unique_choice','multiple_choice') NOT NULL,"
|
"AnsType ENUM ('unique_choice','multiple_choice') NOT NULL,"
|
||||||
"Stem TEXT NOT NULL,"
|
"Stem TEXT NOT NULL," // Cns_MAX_BYTES_TEXT
|
||||||
"UNIQUE INDEX(QstCod),"
|
"UNIQUE INDEX(QstCod),"
|
||||||
"INDEX(SvyCod))");
|
"INDEX(SvyCod))");
|
||||||
|
|
||||||
/***** Table svy_users *****/
|
/***** Table svy_users *****/
|
||||||
/*
|
/*
|
||||||
|
@ -2238,9 +2238,9 @@ mysql> DESCRIBE svy_users;
|
||||||
2 rows in set (0.00 sec)
|
2 rows in set (0.00 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_users ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_users ("
|
||||||
"SvyCod INT NOT NULL,"
|
"SvyCod INT NOT NULL,"
|
||||||
"UsrCod INT NOT NULL,"
|
"UsrCod INT NOT NULL,"
|
||||||
"UNIQUE INDEX(SvyCod,UsrCod))");
|
"UNIQUE INDEX(SvyCod,UsrCod))");
|
||||||
|
|
||||||
/***** Table timetable_crs *****/
|
/***** Table timetable_crs *****/
|
||||||
/*
|
/*
|
||||||
|
@ -2254,21 +2254,21 @@ mysql> DESCRIBE timetable_crs;
|
||||||
| Hour | tinyint(4) | NO | | NULL | |
|
| Hour | tinyint(4) | NO | | NULL | |
|
||||||
| Duration | tinyint(4) | NO | | NULL | |
|
| Duration | tinyint(4) | NO | | NULL | |
|
||||||
| ClassType | enum('libre','teoria','practicas') | NO | | NULL | |
|
| ClassType | enum('libre','teoria','practicas') | NO | | NULL | |
|
||||||
| Place | varchar(127) | NO | | NULL | |
|
| Place | varchar(511) | NO | | NULL | |
|
||||||
| GroupName | varchar(255) | NO | | NULL | |
|
| GroupName | varchar(2047) | NO | | NULL | |
|
||||||
+-----------+------------------------------------+------+-----+---------+-------+
|
+-----------+------------------------------------+------+-----+---------+-------+
|
||||||
8 rows in set (0.01 sec)
|
8 rows in set (0,00 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS timetable_crs ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS timetable_crs ("
|
||||||
"CrsCod INT NOT NULL DEFAULT -1,"
|
"CrsCod INT NOT NULL DEFAULT -1,"
|
||||||
"GrpCod INT NOT NULL DEFAULT -1,"
|
"GrpCod INT NOT NULL DEFAULT -1,"
|
||||||
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
||||||
"Hour TINYINT NOT NULL,"
|
"Hour TINYINT NOT NULL,"
|
||||||
"Duration TINYINT NOT NULL,"
|
"Duration TINYINT NOT NULL,"
|
||||||
"ClassType ENUM('libre','teoria','practicas') NOT NULL,"
|
"ClassType ENUM('libre','teoria','practicas') NOT NULL,"
|
||||||
"Place VARCHAR(127) NOT NULL,"
|
"Place VARCHAR(511) NOT NULL," // TT_MAX_BYTES_PLACE
|
||||||
"GroupName VARCHAR(255) NOT NULL,"
|
"GroupName VARCHAR(2047) NOT NULL," // Grp_MAX_BYTES_GROUP_NAME
|
||||||
"INDEX(CrsCod,GrpCod))");
|
"INDEX(CrsCod,GrpCod))");
|
||||||
|
|
||||||
/***** Table timetable_tut *****/
|
/***** Table timetable_tut *****/
|
||||||
/*
|
/*
|
||||||
|
@ -2280,17 +2280,17 @@ mysql> DESCRIBE timetable_tut;
|
||||||
| Day | enum('L','M','X','J','V','S','D') | NO | | NULL | |
|
| Day | enum('L','M','X','J','V','S','D') | NO | | NULL | |
|
||||||
| Hour | tinyint(4) | NO | | NULL | |
|
| Hour | tinyint(4) | NO | | NULL | |
|
||||||
| Duration | tinyint(4) | NO | | NULL | |
|
| Duration | tinyint(4) | NO | | NULL | |
|
||||||
| Place | varchar(127) | NO | | NULL | |
|
| Place | varchar(511) | NO | | NULL | |
|
||||||
+----------+-----------------------------------+------+-----+---------+-------+
|
+----------+-----------------------------------+------+-----+---------+-------+
|
||||||
5 rows in set (0.01 sec)
|
5 rows in set (0,00 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS timetable_tut ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS timetable_tut ("
|
||||||
"UsrCod INT NOT NULL,"
|
"UsrCod INT NOT NULL,"
|
||||||
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
||||||
"Hour TINYINT NOT NULL,"
|
"Hour TINYINT NOT NULL,"
|
||||||
"Duration TINYINT NOT NULL,"
|
"Duration TINYINT NOT NULL,"
|
||||||
"Place VARCHAR(127) NOT NULL,"
|
"Place VARCHAR(511) NOT NULL," // TT_MAX_BYTES_PLACE
|
||||||
"INDEX(UsrCod))");
|
"INDEX(UsrCod))");
|
||||||
|
|
||||||
/***** Table tst_answers *****/
|
/***** Table tst_answers *****/
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -130,7 +130,8 @@ static void TT_TimeTableDrawDaysCells (void);
|
||||||
static unsigned TT_TimeTableCalculateColsToDraw (unsigned Day,unsigned Hour);
|
static unsigned TT_TimeTableCalculateColsToDraw (unsigned Day,unsigned Hour);
|
||||||
static void TT_DrawCellAlignTimeTable (void);
|
static void TT_DrawCellAlignTimeTable (void);
|
||||||
static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
||||||
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,unsigned Duration,char *Group,long GrpCod,char *Place);
|
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,
|
||||||
|
unsigned Duration,char *Group,long GrpCod,char *Place);
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********** Show whether only my groups or all groups are shown *************/
|
/*********** Show whether only my groups or all groups are shown *************/
|
||||||
|
@ -456,11 +457,16 @@ void TT_ShowTimeTable (long UsrCod)
|
||||||
|
|
||||||
static void TT_WriteCrsTimeTableIntoDB (long CrsCod)
|
static void TT_WriteCrsTimeTableIntoDB (long CrsCod)
|
||||||
{
|
{
|
||||||
char Query[1024];
|
char Query[512 +
|
||||||
unsigned Hour,Day,Column;
|
TT_MAX_BYTES_PLACE +
|
||||||
|
Grp_MAX_BYTES_GROUP_NAME];
|
||||||
|
unsigned Hour;
|
||||||
|
unsigned Day;
|
||||||
|
unsigned Column;
|
||||||
|
|
||||||
/***** Remove former timetable *****/
|
/***** Remove former timetable *****/
|
||||||
sprintf (Query,"DELETE FROM timetable_crs WHERE CrsCod='%ld'",CrsCod);
|
sprintf (Query,"DELETE FROM timetable_crs WHERE CrsCod='%ld'",
|
||||||
|
CrsCod);
|
||||||
DB_QueryDELETE (Query,"can not remove former timetable");
|
DB_QueryDELETE (Query,"can not remove former timetable");
|
||||||
|
|
||||||
/***** Go across the timetable inserting classes into database *****/
|
/***** Go across the timetable inserting classes into database *****/
|
||||||
|
@ -498,11 +504,13 @@ static void TT_WriteCrsTimeTableIntoDB (long CrsCod)
|
||||||
|
|
||||||
static void TT_WriteTutTimeTableIntoDB (long UsrCod)
|
static void TT_WriteTutTimeTableIntoDB (long UsrCod)
|
||||||
{
|
{
|
||||||
char Query[1024];
|
char Query[512 +
|
||||||
|
TT_MAX_BYTES_PLACE];
|
||||||
unsigned Hour,Day,Column;
|
unsigned Hour,Day,Column;
|
||||||
|
|
||||||
/***** Remove former timetable *****/
|
/***** Remove former timetable *****/
|
||||||
sprintf (Query,"DELETE FROM timetable_tut WHERE UsrCod='%ld'",UsrCod);
|
sprintf (Query,"DELETE FROM timetable_tut WHERE UsrCod='%ld'",
|
||||||
|
UsrCod);
|
||||||
DB_QueryDELETE (Query,"can not remove former timetable");
|
DB_QueryDELETE (Query,"can not remove former timetable");
|
||||||
|
|
||||||
/***** Loop over timetable *****/
|
/***** Loop over timetable *****/
|
||||||
|
@ -1106,7 +1114,8 @@ static void TT_DrawCellAlignTimeTable (void)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
||||||
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,unsigned Duration,char *Group,long GrpCod,char *Place)
|
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,
|
||||||
|
unsigned Duration,char *Group,long GrpCod,char *Place)
|
||||||
{
|
{
|
||||||
extern const char *Txt_unknown_removed_course;
|
extern const char *Txt_unknown_removed_course;
|
||||||
extern const char *Txt_TIMETABLE_CLASS_TYPES[TT_NUM_CLASS_TYPES];
|
extern const char *Txt_TIMETABLE_CLASS_TYPES[TT_NUM_CLASS_TYPES];
|
||||||
|
|
Loading…
Reference in New Issue