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,
|
||||
Duration TINYINT NOT NULL,
|
||||
ClassType ENUM('libre','teoria','practicas') NOT NULL,
|
||||
Place VARCHAR(127) NOT NULL,
|
||||
GroupName VARCHAR(255) NOT NULL,
|
||||
Place VARCHAR(511) NOT NULL,
|
||||
GroupName VARCHAR(2047) NOT NULL,
|
||||
INDEX(CrsCod,GrpCod));
|
||||
--
|
||||
-- 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,
|
||||
Hour TINYINT NOT NULL,
|
||||
Duration TINYINT NOT NULL,
|
||||
Place VARCHAR(127) NOT NULL,
|
||||
Place VARCHAR(511) NOT NULL,
|
||||
INDEX(UsrCod));
|
||||
--
|
||||
-- Table tst_answers: stores the answers to the questions in tests
|
||||
|
|
|
@ -209,13 +209,19 @@
|
|||
/****************************** 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 JS_FILE "swad16.144.js"
|
||||
|
||||
// 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
|
||||
/*
|
||||
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)
|
||||
1 change necessary in database.
|
||||
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)
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_answers ("
|
||||
"QstCod INT NOT NULL,"
|
||||
"AnsInd TINYINT NOT NULL,"
|
||||
"NumUsrs INT NOT NULL DEFAULT 0,"
|
||||
"Answer TEXT NOT NULL,"
|
||||
"UNIQUE INDEX(QstCod,AnsInd))");
|
||||
"QstCod INT NOT NULL,"
|
||||
"AnsInd TINYINT NOT NULL,"
|
||||
"NumUsrs INT NOT NULL DEFAULT 0,"
|
||||
"Answer TEXT NOT NULL," // Cns_MAX_BYTES_TEXT
|
||||
"UNIQUE INDEX(QstCod,AnsInd))");
|
||||
|
||||
/***** Table svy_grp *****/
|
||||
/*
|
||||
|
@ -2199,9 +2199,9 @@ mysql> DESCRIBE svy_grp;
|
|||
2 rows in set (0.01 sec)
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_grp ("
|
||||
"SvyCod INT NOT NULL,"
|
||||
"GrpCod INT NOT NULL,"
|
||||
"UNIQUE INDEX(SvyCod,GrpCod))");
|
||||
"SvyCod INT NOT NULL,"
|
||||
"GrpCod INT NOT NULL,"
|
||||
"UNIQUE INDEX(SvyCod,GrpCod))");
|
||||
|
||||
/***** Table svy_questions *****/
|
||||
/*
|
||||
|
@ -2218,13 +2218,13 @@ mysql> DESCRIBE svy_questions;
|
|||
5 rows in set (0.00 sec)
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_questions ("
|
||||
"QstCod INT NOT NULL AUTO_INCREMENT,"
|
||||
"SvyCod INT NOT NULL,"
|
||||
"QstInd INT NOT NULL DEFAULT 0,"
|
||||
"AnsType ENUM ('unique_choice','multiple_choice') NOT NULL,"
|
||||
"Stem TEXT NOT NULL,"
|
||||
"UNIQUE INDEX(QstCod),"
|
||||
"INDEX(SvyCod))");
|
||||
"QstCod INT NOT NULL AUTO_INCREMENT,"
|
||||
"SvyCod INT NOT NULL,"
|
||||
"QstInd INT NOT NULL DEFAULT 0,"
|
||||
"AnsType ENUM ('unique_choice','multiple_choice') NOT NULL,"
|
||||
"Stem TEXT NOT NULL," // Cns_MAX_BYTES_TEXT
|
||||
"UNIQUE INDEX(QstCod),"
|
||||
"INDEX(SvyCod))");
|
||||
|
||||
/***** Table svy_users *****/
|
||||
/*
|
||||
|
@ -2238,9 +2238,9 @@ mysql> DESCRIBE svy_users;
|
|||
2 rows in set (0.00 sec)
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS svy_users ("
|
||||
"SvyCod INT NOT NULL,"
|
||||
"UsrCod INT NOT NULL,"
|
||||
"UNIQUE INDEX(SvyCod,UsrCod))");
|
||||
"SvyCod INT NOT NULL,"
|
||||
"UsrCod INT NOT NULL,"
|
||||
"UNIQUE INDEX(SvyCod,UsrCod))");
|
||||
|
||||
/***** Table timetable_crs *****/
|
||||
/*
|
||||
|
@ -2254,21 +2254,21 @@ mysql> DESCRIBE timetable_crs;
|
|||
| Hour | tinyint(4) | NO | | NULL | |
|
||||
| Duration | tinyint(4) | NO | | NULL | |
|
||||
| ClassType | enum('libre','teoria','practicas') | NO | | NULL | |
|
||||
| Place | varchar(127) | NO | | NULL | |
|
||||
| GroupName | varchar(255) | NO | | NULL | |
|
||||
| Place | varchar(511) | 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 ("
|
||||
"CrsCod INT NOT NULL DEFAULT -1,"
|
||||
"GrpCod INT NOT NULL DEFAULT -1,"
|
||||
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
||||
"Hour TINYINT NOT NULL,"
|
||||
"Duration TINYINT NOT NULL,"
|
||||
"ClassType ENUM('libre','teoria','practicas') NOT NULL,"
|
||||
"Place VARCHAR(127) NOT NULL,"
|
||||
"GroupName VARCHAR(255) NOT NULL,"
|
||||
"INDEX(CrsCod,GrpCod))");
|
||||
"CrsCod INT NOT NULL DEFAULT -1,"
|
||||
"GrpCod INT NOT NULL DEFAULT -1,"
|
||||
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
||||
"Hour TINYINT NOT NULL,"
|
||||
"Duration TINYINT NOT NULL,"
|
||||
"ClassType ENUM('libre','teoria','practicas') NOT NULL,"
|
||||
"Place VARCHAR(511) NOT NULL," // TT_MAX_BYTES_PLACE
|
||||
"GroupName VARCHAR(2047) NOT NULL," // Grp_MAX_BYTES_GROUP_NAME
|
||||
"INDEX(CrsCod,GrpCod))");
|
||||
|
||||
/***** Table timetable_tut *****/
|
||||
/*
|
||||
|
@ -2280,17 +2280,17 @@ mysql> DESCRIBE timetable_tut;
|
|||
| Day | enum('L','M','X','J','V','S','D') | NO | | NULL | |
|
||||
| Hour | 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 ("
|
||||
"UsrCod INT NOT NULL,"
|
||||
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
||||
"Hour TINYINT NOT NULL,"
|
||||
"Duration TINYINT NOT NULL,"
|
||||
"Place VARCHAR(127) NOT NULL,"
|
||||
"INDEX(UsrCod))");
|
||||
"UsrCod INT NOT NULL,"
|
||||
"Day ENUM('L','M','X','J','V','S','D') NOT NULL,"
|
||||
"Hour TINYINT NOT NULL,"
|
||||
"Duration TINYINT NOT NULL,"
|
||||
"Place VARCHAR(511) NOT NULL," // TT_MAX_BYTES_PLACE
|
||||
"INDEX(UsrCod))");
|
||||
|
||||
/***** Table tst_answers *****/
|
||||
/*
|
||||
|
|
|
@ -130,7 +130,8 @@ static void TT_TimeTableDrawDaysCells (void);
|
|||
static unsigned TT_TimeTableCalculateColsToDraw (unsigned Day,unsigned Hour);
|
||||
static void TT_DrawCellAlignTimeTable (void);
|
||||
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 *************/
|
||||
|
@ -456,11 +457,16 @@ void TT_ShowTimeTable (long UsrCod)
|
|||
|
||||
static void TT_WriteCrsTimeTableIntoDB (long CrsCod)
|
||||
{
|
||||
char Query[1024];
|
||||
unsigned Hour,Day,Column;
|
||||
char Query[512 +
|
||||
TT_MAX_BYTES_PLACE +
|
||||
Grp_MAX_BYTES_GROUP_NAME];
|
||||
unsigned Hour;
|
||||
unsigned Day;
|
||||
unsigned Column;
|
||||
|
||||
/***** 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");
|
||||
|
||||
/***** Go across the timetable inserting classes into database *****/
|
||||
|
@ -498,11 +504,13 @@ static void TT_WriteCrsTimeTableIntoDB (long CrsCod)
|
|||
|
||||
static void TT_WriteTutTimeTableIntoDB (long UsrCod)
|
||||
{
|
||||
char Query[1024];
|
||||
char Query[512 +
|
||||
TT_MAX_BYTES_PLACE];
|
||||
unsigned Hour,Day,Column;
|
||||
|
||||
/***** 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");
|
||||
|
||||
/***** Loop over timetable *****/
|
||||
|
@ -1106,7 +1114,8 @@ static void TT_DrawCellAlignTimeTable (void)
|
|||
/*****************************************************************************/
|
||||
|
||||
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_TIMETABLE_CLASS_TYPES[TT_NUM_CLASS_TYPES];
|
||||
|
|
Loading…
Reference in New Issue