mirror of
https://github.com/acanas/swad-core.git
synced 2024-06-10 10:45:23 +02:00
Version 21.8: Sep 18, 2021 New module swad_holiday_database for database queries related to holidays.
This commit is contained in:
parent
b044148aa6
commit
ce17284fea
2
Makefile
2
Makefile
|
@ -54,7 +54,7 @@ OBJS = swad_account.o swad_account_database.o swad_action.o swad_admin.o \
|
||||||
swad_game.o swad_game_database.o swad_global.o swad_group.o \
|
swad_game.o swad_game_database.o swad_global.o swad_group.o \
|
||||||
swad_group_database.o swad_help.o swad_hierarchy.o \
|
swad_group_database.o swad_help.o swad_hierarchy.o \
|
||||||
swad_hierarchy_config.o swad_hierarchy_database.o swad_holiday.o \
|
swad_hierarchy_config.o swad_hierarchy_database.o swad_holiday.o \
|
||||||
swad_HTML.o \
|
swad_holiday_database.o swad_HTML.o \
|
||||||
swad_icon.o swad_ID.o swad_indicator.o swad_info.o swad_institution.o \
|
swad_icon.o swad_ID.o swad_indicator.o swad_info.o swad_institution.o \
|
||||||
swad_institution_config.o swad_institution_database.o \
|
swad_institution_config.o swad_institution_database.o \
|
||||||
swad_language.o swad_layout.o swad_link.o swad_log.o swad_logo.o \
|
swad_language.o swad_layout.o swad_link.o swad_log.o swad_logo.o \
|
||||||
|
|
|
@ -602,13 +602,14 @@ TODO: FIX BUG, URGENT! En las fechas como par
|
||||||
|
|
||||||
TODO: En las encuestas, que los estudiantes no puedan ver los resultados hasta que no finalice el plazo.
|
TODO: En las encuestas, que los estudiantes no puedan ver los resultados hasta que no finalice el plazo.
|
||||||
*/
|
*/
|
||||||
#define Log_PLATFORM_VERSION "SWAD 21.7 (2021-09-20)"
|
#define Log_PLATFORM_VERSION "SWAD 21.8 (2021-09-20)"
|
||||||
#define CSS_FILE "swad20.45.css"
|
#define CSS_FILE "swad20.45.css"
|
||||||
#define JS_FILE "swad20.69.1.js"
|
#define JS_FILE "swad20.69.1.js"
|
||||||
/*
|
/*
|
||||||
TODO: Rename CENTRE to CENTER in help wiki.
|
TODO: Rename CENTRE to CENTER in help wiki.
|
||||||
TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams
|
TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams
|
||||||
|
|
||||||
|
Version 21.8: Sep 18, 2021 New module swad_holiday_database for database queries related to holidays. (315883 lines)
|
||||||
Version 21.7: Sep 18, 2021 New module swad_hierarchy_database for database queries related to hierarchy. (315774 lines)
|
Version 21.7: Sep 18, 2021 New module swad_hierarchy_database for database queries related to hierarchy. (315774 lines)
|
||||||
Version 21.6.3: Sep 20, 2021 Queries moved to module swad_game_database. (315708 lines)
|
Version 21.6.3: Sep 20, 2021 Queries moved to module swad_game_database. (315708 lines)
|
||||||
Version 21.6.2: Sep 18, 2021 Queries moved to module swad_game_database. (315679 lines)
|
Version 21.6.2: Sep 18, 2021 Queries moved to module swad_game_database. (315679 lines)
|
||||||
|
|
110
swad_holiday.c
110
swad_holiday.c
|
@ -36,6 +36,7 @@
|
||||||
#include "swad_form.h"
|
#include "swad_form.h"
|
||||||
#include "swad_global.h"
|
#include "swad_global.h"
|
||||||
#include "swad_holiday.h"
|
#include "swad_holiday.h"
|
||||||
|
#include "swad_holiday_database.h"
|
||||||
#include "swad_HTML.h"
|
#include "swad_HTML.h"
|
||||||
#include "swad_language.h"
|
#include "swad_language.h"
|
||||||
#include "swad_parameter.h"
|
#include "swad_parameter.h"
|
||||||
|
@ -79,7 +80,6 @@ static void Hld_PutParamHldCod (void *HldCod);
|
||||||
static void Hld_ChangeDate (Hld_StartOrEndDate_t StartOrEndDate);
|
static void Hld_ChangeDate (Hld_StartOrEndDate_t StartOrEndDate);
|
||||||
static void Hld_PutFormToCreateHoliday (const struct Plc_Places *Places);
|
static void Hld_PutFormToCreateHoliday (const struct Plc_Places *Places);
|
||||||
static void Hld_PutHeadHolidays (void);
|
static void Hld_PutHeadHolidays (void);
|
||||||
static void Hld_DB_CreateHoliday (const struct Hld_Holiday *Hld);
|
|
||||||
|
|
||||||
static void Hld_EditingHolidayConstructor (void);
|
static void Hld_EditingHolidayConstructor (void);
|
||||||
static void Hld_EditingHolidayDestructor (void);
|
static void Hld_EditingHolidayDestructor (void);
|
||||||
|
@ -316,11 +316,6 @@ static void Hld_EditHolidaysInternal (void)
|
||||||
|
|
||||||
void Hld_GetListHolidays (struct Hld_Holidays *Holidays)
|
void Hld_GetListHolidays (struct Hld_Holidays *Holidays)
|
||||||
{
|
{
|
||||||
static const char *OrderBySubQuery[Hld_NUM_ORDERS] =
|
|
||||||
{
|
|
||||||
[Hld_ORDER_BY_PLACE ] = "Place,StartDate",
|
|
||||||
[Hld_ORDER_BY_START_DATE] = "StartDate,Place",
|
|
||||||
};
|
|
||||||
MYSQL_RES *mysql_res;
|
MYSQL_RES *mysql_res;
|
||||||
MYSQL_ROW row;
|
MYSQL_ROW row;
|
||||||
unsigned NumHld;
|
unsigned NumHld;
|
||||||
|
@ -332,41 +327,7 @@ void Hld_GetListHolidays (struct Hld_Holidays *Holidays)
|
||||||
Hld_FreeListHolidays (Holidays);
|
Hld_FreeListHolidays (Holidays);
|
||||||
|
|
||||||
/***** Get holidays from database *****/
|
/***** Get holidays from database *****/
|
||||||
Holidays->Num = (unsigned)
|
if ((Holidays->Num = Hld_DB_GetListHolidays (&mysql_res,Holidays->SelectedOrder))) // Holidays found...
|
||||||
DB_QuerySELECT (&mysql_res,"can not get holidays",
|
|
||||||
"(SELECT hld_holidays.HldCod," // row[0]
|
|
||||||
"hld_holidays.PlcCod," // row[1]
|
|
||||||
"plc_places.FullName as Place," // row[2]
|
|
||||||
"hld_holidays.HldTyp," // row[3]
|
|
||||||
"DATE_FORMAT(hld_holidays.StartDate,'%%Y%%m%%d') AS StartDate," // row[4]
|
|
||||||
"DATE_FORMAT(hld_holidays.EndDate,'%%Y%%m%%d') AS EndDate," // row[5]
|
|
||||||
"hld_holidays.Name" // row[6]
|
|
||||||
" FROM hld_holidays,"
|
|
||||||
"plc_places"
|
|
||||||
" WHERE hld_holidays.InsCod=%ld"
|
|
||||||
" AND hld_holidays.PlcCod=plc_places.PlcCod"
|
|
||||||
" AND plc_places.InsCod=%ld)"
|
|
||||||
" UNION "
|
|
||||||
"(SELECT HldCod," // row[0]
|
|
||||||
"PlcCod," // row[1]
|
|
||||||
"'' as Place," // row[2]
|
|
||||||
"HldTyp," // row[3]
|
|
||||||
"DATE_FORMAT(StartDate,'%%Y%%m%%d') AS StartDate," // row[4]
|
|
||||||
"DATE_FORMAT(EndDate,'%%Y%%m%%d') AS EndDate," // row[5]
|
|
||||||
"Name" // row[6]
|
|
||||||
" FROM hld_holidays"
|
|
||||||
" WHERE InsCod=%ld"
|
|
||||||
" AND PlcCod NOT IN"
|
|
||||||
"(SELECT DISTINCT PlcCod"
|
|
||||||
" FROM plc_places"
|
|
||||||
" WHERE InsCod=%ld))"
|
|
||||||
" ORDER BY %s",
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
OrderBySubQuery[Holidays->SelectedOrder]);
|
|
||||||
if (Holidays->Num) // Holidays found...
|
|
||||||
{
|
{
|
||||||
/***** Create list of holidays *****/
|
/***** Create list of holidays *****/
|
||||||
if ((Holidays->Lst = calloc (Holidays->Num,
|
if ((Holidays->Lst = calloc (Holidays->Num,
|
||||||
|
@ -449,43 +410,18 @@ static void Hld_GetDataOfHolidayByCod (struct Hld_Holiday *Hld)
|
||||||
Err_WrongHolidayExit ();
|
Err_WrongHolidayExit ();
|
||||||
|
|
||||||
/***** Get data of holiday from database *****/
|
/***** Get data of holiday from database *****/
|
||||||
if (DB_QuerySELECT (&mysql_res,"can not get data of a holiday",
|
if (Hld_DB_GetDataOfHolidayByCod (&mysql_res,Hld->HldCod)) // Holiday found...
|
||||||
"(SELECT hld_holidays.PlcCod," // row[0]
|
|
||||||
"plc_places.FullName as Place," // row[1]
|
|
||||||
"hld_holidays.HldTyp," // row[2]
|
|
||||||
"DATE_FORMAT(hld_holidays.StartDate,'%%Y%%m%%d')," // row[3]
|
|
||||||
"DATE_FORMAT(hld_holidays.EndDate,'%%Y%%m%%d')," // row[4]
|
|
||||||
"hld_holidays.Name" // row[5]
|
|
||||||
" FROM hld_holidays,"
|
|
||||||
"plc_places"
|
|
||||||
" WHERE hld_holidays.HldCod=%ld"
|
|
||||||
" AND hld_holidays.InsCod=%ld"
|
|
||||||
" AND hld_holidays.PlcCod=plc_places.PlcCod"
|
|
||||||
" AND plc_places.InsCod=%ld)"
|
|
||||||
" UNION "
|
|
||||||
"(SELECT PlcCod,"
|
|
||||||
"'' as Place,"
|
|
||||||
"HldTyp,"
|
|
||||||
"DATE_FORMAT(StartDate,'%%Y%%m%%d'),"
|
|
||||||
"DATE_FORMAT(EndDate,'%%Y%%m%%d'),"
|
|
||||||
"Name"
|
|
||||||
" FROM hld_holidays"
|
|
||||||
" WHERE HldCod=%ld"
|
|
||||||
" AND InsCod=%ld"
|
|
||||||
" AND PlcCod NOT IN"
|
|
||||||
"(SELECT DISTINCT PlcCod"
|
|
||||||
" FROM plc_places"
|
|
||||||
" WHERE InsCod=%ld))",
|
|
||||||
Hld->HldCod,
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
Hld->HldCod,
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
Gbl.Hierarchy.Ins.InsCod)) // Holiday found...
|
|
||||||
{
|
{
|
||||||
/* Get row */
|
/* Get row */
|
||||||
row = mysql_fetch_row (mysql_res);
|
row = mysql_fetch_row (mysql_res);
|
||||||
|
/*
|
||||||
|
row[0]: PlcCod
|
||||||
|
row[1]: Place
|
||||||
|
row[2]: HldTyp
|
||||||
|
row[3]: StartDate
|
||||||
|
row[4]: EndDate
|
||||||
|
row[5]: Name
|
||||||
|
*/
|
||||||
/* Get place code (row[0]) */
|
/* Get place code (row[0]) */
|
||||||
Hld->PlcCod = Str_ConvertStrCodToLongCod (row[0]);
|
Hld->PlcCod = Str_ConvertStrCodToLongCod (row[0]);
|
||||||
|
|
||||||
|
@ -1179,30 +1115,6 @@ void Hld_ReceiveFormNewHoliday (void)
|
||||||
Txt_You_must_specify_the_name_of_the_new_holiday);
|
Txt_You_must_specify_the_name_of_the_new_holiday);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**************************** Create a new holiday ***************************/
|
|
||||||
/*****************************************************************************/
|
|
||||||
|
|
||||||
static void Hld_DB_CreateHoliday (const struct Hld_Holiday *Hld)
|
|
||||||
{
|
|
||||||
/***** Create a new holiday or no school period *****/
|
|
||||||
DB_QueryINSERT ("can not create holiday",
|
|
||||||
"INSERT INTO hld_holidays"
|
|
||||||
" (InsCod,PlcCod,HldTyp,StartDate,EndDate,Name)"
|
|
||||||
" VALUES"
|
|
||||||
" (%ld,%ld,%u,'%04u%02u%02u','%04u%02u%02u','%s')",
|
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
|
||||||
Hld->PlcCod,
|
|
||||||
(unsigned) Hld->HldTyp,
|
|
||||||
Hld->StartDate.Year,
|
|
||||||
Hld->StartDate.Month,
|
|
||||||
Hld->StartDate.Day,
|
|
||||||
Hld->EndDate.Year,
|
|
||||||
Hld->EndDate.Month,
|
|
||||||
Hld->EndDate.Day,
|
|
||||||
Hld->Name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************* Holiday constructor/destructor ********************/
|
/************************* Holiday constructor/destructor ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
179
swad_holiday_database.c
Normal file
179
swad_holiday_database.c
Normal file
|
@ -0,0 +1,179 @@
|
||||||
|
// swad_holiday_database.c: holidays operations with database
|
||||||
|
|
||||||
|
/*
|
||||||
|
SWAD (Shared Workspace At a Distance),
|
||||||
|
is a web platform developed at the University of Granada (Spain),
|
||||||
|
and used to support university teaching.
|
||||||
|
|
||||||
|
This file is part of SWAD core.
|
||||||
|
Copyright (C) 1999-2021 Antonio Cañas Vargas
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU Affero General Public License as
|
||||||
|
published by the Free Software Foundation, either version 3 of the
|
||||||
|
License, or (at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Affero General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Affero General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
/*****************************************************************************/
|
||||||
|
/********************************* Headers ***********************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
// #include <stddef.h> // For NULL
|
||||||
|
// #include <stdlib.h> // For calloc
|
||||||
|
// #include <string.h> // For string functions
|
||||||
|
|
||||||
|
// #include "swad_box.h"
|
||||||
|
// #include "swad_calendar.h"
|
||||||
|
#include "swad_database.h"
|
||||||
|
// #include "swad_error.h"
|
||||||
|
// #include "swad_form.h"
|
||||||
|
#include "swad_global.h"
|
||||||
|
// #include "swad_holiday.h"
|
||||||
|
#include "swad_holiday_database.h"
|
||||||
|
// #include "swad_HTML.h"
|
||||||
|
// #include "swad_language.h"
|
||||||
|
// #include "swad_parameter.h"
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/************** External global variables from others modules ****************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
extern struct Globals Gbl;
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/***************************** Private constants *****************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/******************************* Private types *******************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/***************************** Private variables *****************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/***************************** Private prototypes ****************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/****************** Create a new holiday or no school period *****************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
void Hld_DB_CreateHoliday (const struct Hld_Holiday *Hld)
|
||||||
|
{
|
||||||
|
DB_QueryINSERT ("can not create holiday",
|
||||||
|
"INSERT INTO hld_holidays"
|
||||||
|
" (InsCod,PlcCod,HldTyp,StartDate,EndDate,Name)"
|
||||||
|
" VALUES"
|
||||||
|
" (%ld,%ld,%u,'%04u%02u%02u','%04u%02u%02u','%s')",
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
Hld->PlcCod,
|
||||||
|
(unsigned) Hld->HldTyp,
|
||||||
|
Hld->StartDate.Year,
|
||||||
|
Hld->StartDate.Month,
|
||||||
|
Hld->StartDate.Day,
|
||||||
|
Hld->EndDate.Year,
|
||||||
|
Hld->EndDate.Month,
|
||||||
|
Hld->EndDate.Day,
|
||||||
|
Hld->Name);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/*************************** List all the holidays ***************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
unsigned Hld_DB_GetListHolidays (MYSQL_RES **mysql_res,Hld_Order_t SelectedOrder)
|
||||||
|
{
|
||||||
|
static const char *OrderBySubQuery[Hld_NUM_ORDERS] =
|
||||||
|
{
|
||||||
|
[Hld_ORDER_BY_PLACE ] = "Place,"
|
||||||
|
"StartDate",
|
||||||
|
[Hld_ORDER_BY_START_DATE] = "StartDate,"
|
||||||
|
"Place",
|
||||||
|
};
|
||||||
|
|
||||||
|
return (unsigned)
|
||||||
|
DB_QuerySELECT (mysql_res,"can not get holidays",
|
||||||
|
"(SELECT hld_holidays.HldCod," // row[0]
|
||||||
|
"hld_holidays.PlcCod," // row[1]
|
||||||
|
"plc_places.FullName as Place," // row[2]
|
||||||
|
"hld_holidays.HldTyp," // row[3]
|
||||||
|
"DATE_FORMAT(hld_holidays.StartDate,'%%Y%%m%%d') AS StartDate," // row[4]
|
||||||
|
"DATE_FORMAT(hld_holidays.EndDate,'%%Y%%m%%d') AS EndDate," // row[5]
|
||||||
|
"hld_holidays.Name" // row[6]
|
||||||
|
" FROM hld_holidays,"
|
||||||
|
"plc_places"
|
||||||
|
" WHERE hld_holidays.InsCod=%ld"
|
||||||
|
" AND hld_holidays.PlcCod=plc_places.PlcCod"
|
||||||
|
" AND plc_places.InsCod=%ld)"
|
||||||
|
" UNION "
|
||||||
|
"(SELECT HldCod," // row[0]
|
||||||
|
"PlcCod," // row[1]
|
||||||
|
"'' as Place," // row[2]
|
||||||
|
"HldTyp," // row[3]
|
||||||
|
"DATE_FORMAT(StartDate,'%%Y%%m%%d') AS StartDate," // row[4]
|
||||||
|
"DATE_FORMAT(EndDate,'%%Y%%m%%d') AS EndDate," // row[5]
|
||||||
|
"Name" // row[6]
|
||||||
|
" FROM hld_holidays"
|
||||||
|
" WHERE InsCod=%ld"
|
||||||
|
" AND PlcCod NOT IN"
|
||||||
|
"(SELECT DISTINCT PlcCod"
|
||||||
|
" FROM plc_places"
|
||||||
|
" WHERE InsCod=%ld))"
|
||||||
|
" ORDER BY %s",
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
OrderBySubQuery[SelectedOrder]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/************************* Get holiday data by code **************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
unsigned Hld_DB_GetDataOfHolidayByCod (MYSQL_RES **mysql_res,long HldCod)
|
||||||
|
{
|
||||||
|
return (unsigned)
|
||||||
|
DB_QuerySELECT (mysql_res,"can not get data of a holiday",
|
||||||
|
"(SELECT hld_holidays.PlcCod," // row[0]
|
||||||
|
"plc_places.FullName as Place," // row[1]
|
||||||
|
"hld_holidays.HldTyp," // row[2]
|
||||||
|
"DATE_FORMAT(hld_holidays.StartDate,'%%Y%%m%%d')," // row[3]
|
||||||
|
"DATE_FORMAT(hld_holidays.EndDate,'%%Y%%m%%d')," // row[4]
|
||||||
|
"hld_holidays.Name" // row[5]
|
||||||
|
" FROM hld_holidays,"
|
||||||
|
"plc_places"
|
||||||
|
" WHERE hld_holidays.HldCod=%ld"
|
||||||
|
" AND hld_holidays.InsCod=%ld"
|
||||||
|
" AND hld_holidays.PlcCod=plc_places.PlcCod"
|
||||||
|
" AND plc_places.InsCod=%ld)"
|
||||||
|
" UNION "
|
||||||
|
"(SELECT PlcCod,"
|
||||||
|
"'' as Place,"
|
||||||
|
"HldTyp,"
|
||||||
|
"DATE_FORMAT(StartDate,'%%Y%%m%%d'),"
|
||||||
|
"DATE_FORMAT(EndDate,'%%Y%%m%%d'),"
|
||||||
|
"Name"
|
||||||
|
" FROM hld_holidays"
|
||||||
|
" WHERE HldCod=%ld"
|
||||||
|
" AND InsCod=%ld"
|
||||||
|
" AND PlcCod NOT IN"
|
||||||
|
"(SELECT DISTINCT PlcCod"
|
||||||
|
" FROM plc_places"
|
||||||
|
" WHERE InsCod=%ld))",
|
||||||
|
HldCod,
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
HldCod,
|
||||||
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
|
Gbl.Hierarchy.Ins.InsCod);
|
||||||
|
}
|
45
swad_holiday_database.h
Normal file
45
swad_holiday_database.h
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
// swad_holiday_database.h: holidays operations with database
|
||||||
|
|
||||||
|
#ifndef _SWAD_HLD_DB
|
||||||
|
#define _SWAD_HLD_DB
|
||||||
|
/*
|
||||||
|
SWAD (Shared Workspace At a Distance in Spanish),
|
||||||
|
is a web platform developed at the University of Granada (Spain),
|
||||||
|
and used to support university teaching.
|
||||||
|
|
||||||
|
This file is part of SWAD core.
|
||||||
|
Copyright (C) 1999-2021 Antonio Cañas Vargas
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU Affero General Public License as
|
||||||
|
published by the Free Software Foundation, either version 3 of the
|
||||||
|
License, or (at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Affero General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Affero General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
/*****************************************************************************/
|
||||||
|
/********************************* Headers ***********************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
#include "swad_holiday.h"
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/************************** Public types and constants ***********************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/***************************** Public prototypes *****************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
void Hld_DB_CreateHoliday (const struct Hld_Holiday *Hld);
|
||||||
|
|
||||||
|
unsigned Hld_DB_GetListHolidays (MYSQL_RES **mysql_res,Hld_Order_t SelectedOrder);
|
||||||
|
unsigned Hld_DB_GetDataOfHolidayByCod (MYSQL_RES **mysql_res,long HldCod);
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user