mirror of https://github.com/acanas/swad-core.git
Version 15.16.2
This commit is contained in:
parent
cd46d90d04
commit
b0be0d092a
30
js/swad.js
30
js/swad.js
|
@ -52,7 +52,7 @@ function writeLocalDateTimeFromUTC(id,secsSince1970UTC) {
|
|||
document.getElementById(id).innerHTML = d.toLocaleDateString() + " " + d.getHours() + ":" + StrMinutes;
|
||||
}
|
||||
|
||||
// Write a date-time in client local time
|
||||
// Set local date-time form fields from UTC time
|
||||
function setLocalDateTimeFormFromUTC(id,secsSince1970UTC) {
|
||||
var d = new Date;
|
||||
var Day;
|
||||
|
@ -62,18 +62,34 @@ function setLocalDateTimeFormFromUTC(id,secsSince1970UTC) {
|
|||
var Minute;
|
||||
|
||||
d.setTime(secsSince1970UTC * 1000);
|
||||
Day = d.getDate();
|
||||
Month = d.getMonth() + 1;
|
||||
Year = d.getFullYear();
|
||||
Hour = d.getHours();
|
||||
Year = d.getFullYear();
|
||||
Month = d.getMonth() + 1;
|
||||
Day = d.getDate();
|
||||
Hour = d.getHours();
|
||||
Minute = d.getMinutes();
|
||||
document.getElementById(id+'_day_' +Day ).selected = true;
|
||||
document.getElementById(id+'_month_' +Month ).selected = true;
|
||||
document.getElementById(id+'_year_' +Year ).selected = true;
|
||||
document.getElementById(id+'_month_' +Month ).selected = true;
|
||||
document.getElementById(id+'_day_' +Day ).selected = true;
|
||||
document.getElementById(id+'_hour_' +Hour ).selected = true;
|
||||
document.getElementById(id+'_minute_'+Minute).selected = true;
|
||||
}
|
||||
|
||||
// Set UTC time from local date-time form fields
|
||||
function setUTCFromLocalDateTimeForm(id) {
|
||||
var d = new Date;
|
||||
|
||||
// Important: set year first in order to work properly with leap years
|
||||
d.setFullYear(document.getElementById(id+'Year' ).value);
|
||||
d.setMonth (document.getElementById(id+'Month' ).value - 1);
|
||||
d.setDate (document.getElementById(id+'Day' ).value);
|
||||
d.setHours (document.getElementById(id+'Hour' ).value);
|
||||
d.setMinutes (document.getElementById(id+'Minute').value);
|
||||
d.setSeconds(0);
|
||||
d.setMilliseconds(0);
|
||||
|
||||
document.getElementById(id+'TimeUTC').value = d.getTime() / 1000;
|
||||
}
|
||||
|
||||
// Write clock in client local time updated every minute
|
||||
function writeLocalClock() {
|
||||
var d = new Date;
|
||||
|
|
|
@ -252,7 +252,7 @@ static void Asg_ShowOneAssignment (long AsgCod)
|
|||
(Asg.Open ? "DATE_GREEN" :
|
||||
"DATE_RED"),
|
||||
Gbl.RowEvenOdd,
|
||||
UniqueId,Asg.DateTimes[Asg_START_TIME]);
|
||||
UniqueId,Asg.TimeUTC[Asg_START_TIME]);
|
||||
|
||||
/* End date/time */
|
||||
UniqueId++;
|
||||
|
@ -267,7 +267,7 @@ static void Asg_ShowOneAssignment (long AsgCod)
|
|||
(Asg.Open ? "DATE_GREEN" :
|
||||
"DATE_RED"),
|
||||
Gbl.RowEvenOdd,
|
||||
UniqueId,Asg.DateTimes[Asg_END_TIME]);
|
||||
UniqueId,Asg.TimeUTC[Asg_END_TIME]);
|
||||
|
||||
/* Assignment title */
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP COLOR%u\">"
|
||||
|
@ -684,8 +684,8 @@ static void Asg_GetDataOfAssignment (struct Assignment *Asg,const char *Query)
|
|||
unsigned long NumRows;
|
||||
|
||||
/***** Clear data *****/
|
||||
Asg->DateTimes[Asg_START_TIME] =
|
||||
Asg->DateTimes[Asg_END_TIME ] = (time_t) 0;
|
||||
Asg->TimeUTC[Asg_START_TIME] =
|
||||
Asg->TimeUTC[Asg_END_TIME ] = (time_t) 0;
|
||||
Asg->Title[0] = '\0';
|
||||
|
||||
/***** Get data of assignment from database *****/
|
||||
|
@ -710,14 +710,14 @@ static void Asg_GetDataOfAssignment (struct Assignment *Asg,const char *Query)
|
|||
if (!(Dat_GetDateTimeFromYYYYMMDDHHMMSS (&(Asg->DateTimes[Asg_START_TIME]),row[3])))
|
||||
Lay_ShowErrorAndExit ("Error when reading start date of assignment.");
|
||||
*/
|
||||
Asg->DateTimes[Asg_START_TIME] = Dat_GetUNIXTimeFromStr (row[3]);
|
||||
Asg->TimeUTC[Asg_START_TIME] = Dat_GetUNIXTimeFromStr (row[3]);
|
||||
|
||||
/* Get end date (row[4] holds the end date in YYYYMMDDHHMMSS format) */
|
||||
/*
|
||||
if (!(Dat_GetDateTimeFromYYYYMMDDHHMMSS (&(Asg->DateTimes[Asg_END_TIME]),row[4])))
|
||||
Lay_ShowErrorAndExit ("Error when reading end date of assignment.");
|
||||
*/
|
||||
Asg->DateTimes[Asg_END_TIME] = Dat_GetUNIXTimeFromStr (row[4]);
|
||||
Asg->TimeUTC[Asg_END_TIME] = Dat_GetUNIXTimeFromStr (row[4]);
|
||||
|
||||
/* Get whether the assignment is open or closed (row(5)) */
|
||||
Asg->Open = (row[5][0] == '1');
|
||||
|
@ -1047,12 +1047,7 @@ void Asg_RequestCreatOrEditAsg (void)
|
|||
struct Assignment Asg;
|
||||
bool ItsANewAssignment;
|
||||
Asg_StartOrEndTime_t StartOrEndTime;
|
||||
const char *Id[Asg_NUM_DATES] = {"StartDateTime","EndDateTime"};
|
||||
const char *NameSelectYear [Asg_NUM_DATES] = {"StartYear" ,"EndYear" };
|
||||
const char *NameSelectMonth [Asg_NUM_DATES] = {"StartMonth" ,"EndMonth" };
|
||||
const char *NameSelectDay [Asg_NUM_DATES] = {"StartDay" ,"EndDay" };
|
||||
const char *NameSelectHour [Asg_NUM_DATES] = {"StartHour" ,"EndHour" };
|
||||
const char *NameSelectMinute[Asg_NUM_DATES] = {"StartMinute","EndMinute"};
|
||||
const char *Id[Asg_NUM_DATES] = {"Start","End"};
|
||||
const char *Dates[Asg_NUM_DATES] = {Txt_Start_date,Txt_End_date};
|
||||
char Txt[Cns_MAX_BYTES_TEXT+1];
|
||||
|
||||
|
@ -1077,7 +1072,7 @@ void Asg_RequestCreatOrEditAsg (void)
|
|||
Asg.DateTimes[Asg_START_TIME].Time.Minute = Gbl.Now.Time.Minute;
|
||||
Asg.DateTimes[Asg_START_TIME].Time.Second = Gbl.Now.Time.Second;
|
||||
*/
|
||||
Asg.DateTimes[Asg_START_TIME] = Gbl.TimeStartExecution;
|
||||
Asg.TimeUTC[Asg_START_TIME] = Gbl.TimeStartExecution;
|
||||
/*
|
||||
Asg.DateTimes[Asg_END_TIME ].Date.Day = Gbl.Now.Date.Day;
|
||||
Asg.DateTimes[Asg_END_TIME ].Date.Month = Gbl.Now.Date.Month;
|
||||
|
@ -1085,7 +1080,7 @@ void Asg_RequestCreatOrEditAsg (void)
|
|||
Asg.DateTimes[Asg_END_TIME ].Time.Hour = 23;
|
||||
Asg.DateTimes[Asg_END_TIME ].Time.Minute = 59;
|
||||
*/
|
||||
Asg.DateTimes[Asg_END_TIME ] = Gbl.TimeStartExecution + (2 * 60 * 60); // +2 hours
|
||||
Asg.TimeUTC[Asg_END_TIME ] = Gbl.TimeStartExecution + (2 * 60 * 60); // +2 hours
|
||||
Asg.Open = true;
|
||||
Asg.Title[0] = '\0';
|
||||
Asg.SendWork = false;
|
||||
|
@ -1156,13 +1151,8 @@ void Asg_RequestCreatOrEditAsg (void)
|
|||
false,false);
|
||||
*/
|
||||
Dat_WriteFormClientLocalDateTime (Id[StartOrEndTime],
|
||||
Asg.DateTimes[StartOrEndTime],
|
||||
Asg.TimeUTC[StartOrEndTime],
|
||||
Gbl.Now.Date.Year-1,Gbl.Now.Date.Year+1,
|
||||
NameSelectDay [StartOrEndTime],
|
||||
NameSelectMonth [StartOrEndTime],
|
||||
NameSelectYear [StartOrEndTime],
|
||||
NameSelectHour [StartOrEndTime],
|
||||
NameSelectMinute[StartOrEndTime],
|
||||
false,false);
|
||||
|
||||
/* Time */
|
||||
|
@ -1314,7 +1304,7 @@ void Asg_RecFormAssignment (void)
|
|||
&(NewAsg.DateTimes[Asg_START_TIME].Time.Minute));
|
||||
NewAsg.DateTimes[Asg_START_TIME].Time.Second = 0;
|
||||
*/
|
||||
NewAsg.DateTimes[Asg_START_TIME] = Dat_GetDateTimeFromForm ("StartDateTime");
|
||||
NewAsg.TimeUTC[Asg_START_TIME] = Dat_GetTimeUTCFromForm ("StartTimeUTC");
|
||||
|
||||
/***** Get end date *****/
|
||||
/*
|
||||
|
@ -1327,7 +1317,7 @@ void Asg_RecFormAssignment (void)
|
|||
&(NewAsg.DateTimes[Asg_END_TIME].Time.Minute));
|
||||
NewAsg.DateTimes[Asg_END_TIME].Time.Second = 59;
|
||||
*/
|
||||
NewAsg.DateTimes[Asg_END_TIME] = Dat_GetDateTimeFromForm ("EndDateTime");
|
||||
NewAsg.TimeUTC[Asg_END_TIME] = Dat_GetTimeUTCFromForm ("EndTimeUTC");
|
||||
|
||||
/***** Get assignment title *****/
|
||||
Par_GetParToText ("Title",NewAsg.Title,Asg_MAX_LENGTH_ASSIGNMENT_TITLE);
|
||||
|
@ -1363,10 +1353,10 @@ void Asg_RecFormAssignment (void)
|
|||
NewAsg.DateTimes[Asg_END_TIME].Time.Minute = 59;
|
||||
}
|
||||
*/
|
||||
if (NewAsg.DateTimes[Asg_START_TIME] == 0)
|
||||
NewAsg.DateTimes[Asg_START_TIME] = Gbl.TimeStartExecution;
|
||||
if (NewAsg.DateTimes[Asg_END_TIME] == 0)
|
||||
NewAsg.DateTimes[Asg_END_TIME] = NewAsg.DateTimes[Asg_START_TIME] + 2*60*60; // +2 hours
|
||||
if (NewAsg.TimeUTC[Asg_START_TIME] == 0)
|
||||
NewAsg.TimeUTC[Asg_START_TIME] = Gbl.TimeStartExecution;
|
||||
if (NewAsg.TimeUTC[Asg_END_TIME] == 0)
|
||||
NewAsg.TimeUTC[Asg_END_TIME] = NewAsg.TimeUTC[Asg_START_TIME] + 2*60*60; // +2 hours
|
||||
|
||||
/***** Check if title is correct *****/
|
||||
if (NewAsg.Title[0]) // If there's an assignment title
|
||||
|
@ -1503,8 +1493,8 @@ static void Asg_CreateAssignment (struct Assignment *Asg,const char *Txt)
|
|||
"'%s','%s','%s')",
|
||||
Gbl.CurrentCrs.Crs.CrsCod,
|
||||
Gbl.Usrs.Me.UsrDat.UsrCod,
|
||||
Asg->DateTimes[Asg_START_TIME],
|
||||
Asg->DateTimes[Asg_END_TIME ],
|
||||
Asg->TimeUTC[Asg_START_TIME],
|
||||
Asg->TimeUTC[Asg_END_TIME ],
|
||||
Asg->Title,
|
||||
Asg->Folder,
|
||||
Txt);
|
||||
|
@ -1557,8 +1547,8 @@ static void Asg_UpdateAssignment (struct Assignment *Asg,const char *Txt)
|
|||
"EndTime=FROM_UNIXTIME('%ld'),"
|
||||
"Title='%s',Folder='%s',Txt='%s'"
|
||||
" WHERE AsgCod='%ld' AND CrsCod='%ld'",
|
||||
Asg->DateTimes[Asg_START_TIME],
|
||||
Asg->DateTimes[Asg_END_TIME ],
|
||||
Asg->TimeUTC[Asg_START_TIME],
|
||||
Asg->TimeUTC[Asg_END_TIME ],
|
||||
Asg->Title,
|
||||
Asg->Folder,
|
||||
Txt,
|
||||
|
|
|
@ -58,7 +58,7 @@ struct Assignment
|
|||
bool Hidden;
|
||||
long UsrCod;
|
||||
// struct DateTime DateTimes[Asg_NUM_DATES];
|
||||
time_t DateTimes[Asg_NUM_DATES];
|
||||
time_t TimeUTC[Asg_NUM_DATES];
|
||||
bool Open;
|
||||
char Title[Asg_MAX_LENGTH_ASSIGNMENT_TITLE+1];
|
||||
Asg_SendWork_t SendWork;
|
||||
|
|
|
@ -107,11 +107,12 @@
|
|||
/****************************** Public constants *****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Log_PLATFORM_VERSION "SWAD 15.16.1 (2015/10/22)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 15.16.2 (2015/10/22)"
|
||||
|
||||
// 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 15.16.2: Oct 22, 2015 Assignment date-times are displayed in client local date-time. Not finished. (186479 lines)
|
||||
Version 15.16.1: Oct 22, 2015 Assignment date-times are displayed in client local date-time. Not finished. (186468 lines)
|
||||
Version 15.16: Oct 22, 2015 Assignment date-times are displayed in client local date-time. Not finished. (186436 lines)
|
||||
Version 15.15.3: Oct 21, 2015 File date-time is displayed in client local date-time. (186264 lines)
|
||||
|
|
78
swad_date.c
78
swad_date.c
|
@ -272,13 +272,8 @@ void Dat_WriteFormIniEndDates (void)
|
|||
/*****************************************************************************/
|
||||
|
||||
void Dat_WriteFormClientLocalDateTime (const char *Id,
|
||||
time_t DateTime,
|
||||
time_t TimeUTC,
|
||||
unsigned FirstYear,unsigned LastYear,
|
||||
const char *NameSelectDay,
|
||||
const char *NameSelectMonth,
|
||||
const char *NameSelectYear,
|
||||
const char *NameSelectHour,
|
||||
const char *NameSelectMinute,
|
||||
bool SubmitFormOnChange,bool Disabled)
|
||||
{
|
||||
extern const char *Txt_MONTHS_SMALL[12];
|
||||
|
@ -292,11 +287,14 @@ void Dat_WriteFormClientLocalDateTime (const char *Id,
|
|||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
"<select id=\"%s\" name=\"%s\"",
|
||||
NameSelectDay,NameSelectDay);
|
||||
"<select id=\"%sDay\" name=\"%sDay\"",
|
||||
Id,Id);
|
||||
fprintf (Gbl.F.Out," onchange=\"javascript:setUTCFromLocalDateTimeForm('%s');",
|
||||
Id);
|
||||
if (SubmitFormOnChange)
|
||||
fprintf (Gbl.F.Out," onchange=\"javascript:document.getElementById('%s').submit();\"",
|
||||
fprintf (Gbl.F.Out,"document.getElementById('%s').submit();",
|
||||
Gbl.FormId);
|
||||
fprintf (Gbl.F.Out,"\"");
|
||||
if (Disabled)
|
||||
fprintf (Gbl.F.Out," disabled=\"disabled\"");
|
||||
fprintf (Gbl.F.Out,"><option value=\"0\">-</option>");
|
||||
|
@ -310,11 +308,13 @@ void Dat_WriteFormClientLocalDateTime (const char *Id,
|
|||
fprintf (Gbl.F.Out,"</select>"
|
||||
"</td>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
"<select id=\"%s\" name=\"%s\""
|
||||
" onchange=\"adjustDateForm(this.form.%s,this.form.%s,this.form.%s)",
|
||||
NameSelectMonth,NameSelectMonth,NameSelectDay,NameSelectMonth,NameSelectYear);
|
||||
"<select id=\"%sMonth\" name=\"%sMonth\""
|
||||
" onchange=\"javascript:adjustDateForm(this.form.%sDay,this.form.%sMonth,this.form.%sYear);",
|
||||
Id,Id,Id,Id,Id);
|
||||
fprintf (Gbl.F.Out,"setUTCFromLocalDateTimeForm('%s');",
|
||||
Id);
|
||||
if (SubmitFormOnChange)
|
||||
fprintf (Gbl.F.Out,";javascript:document.getElementById('%s').submit();",
|
||||
fprintf (Gbl.F.Out,"document.getElementById('%s').submit();",
|
||||
Gbl.FormId);
|
||||
fprintf (Gbl.F.Out,"\"");
|
||||
if (Disabled)
|
||||
|
@ -330,10 +330,13 @@ void Dat_WriteFormClientLocalDateTime (const char *Id,
|
|||
fprintf (Gbl.F.Out,"</select>"
|
||||
"</td>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
"<select id=\"%s\" name=\"%s\" onchange=\"adjustDateForm(this.form.%s,this.form.%s,this.form.%s)",
|
||||
NameSelectYear,NameSelectYear,NameSelectDay,NameSelectMonth,NameSelectYear);
|
||||
"<select id=\"%sYear\" name=\"%sYear\""
|
||||
" onchange=\"javascript:adjustDateForm(this.form.%sDay,this.form.%sMonth,this.form.%sYear);",
|
||||
Id,Id,Id,Id,Id);
|
||||
fprintf (Gbl.F.Out,"setUTCFromLocalDateTimeForm('%s');",
|
||||
Id);
|
||||
if (SubmitFormOnChange)
|
||||
fprintf (Gbl.F.Out,";javascript:document.getElementById('%s').submit();",
|
||||
fprintf (Gbl.F.Out,"document.getElementById('%s').submit();",
|
||||
Gbl.FormId);
|
||||
fprintf (Gbl.F.Out,"\"");
|
||||
if (Disabled)
|
||||
|
@ -349,11 +352,14 @@ void Dat_WriteFormClientLocalDateTime (const char *Id,
|
|||
|
||||
/***** Hour *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<select name=\"%s\"",
|
||||
NameSelectHour);
|
||||
"<select id=\"%sHour\" name=\"%sHour\"",
|
||||
Id,Id);
|
||||
fprintf (Gbl.F.Out," onchange=\"javascript:setUTCFromLocalDateTimeForm('%s');",
|
||||
Id);
|
||||
if (SubmitFormOnChange)
|
||||
fprintf (Gbl.F.Out," onchange=\"javascript:document.getElementById('%s').submit();\"",
|
||||
fprintf (Gbl.F.Out,"document.getElementById('%s').submit();",
|
||||
Gbl.FormId);
|
||||
fprintf (Gbl.F.Out,"\"");
|
||||
if (Disabled)
|
||||
fprintf (Gbl.F.Out," disabled=\"disabled\"");
|
||||
fprintf (Gbl.F.Out,">");
|
||||
|
@ -367,11 +373,16 @@ void Dat_WriteFormClientLocalDateTime (const char *Id,
|
|||
fprintf (Gbl.F.Out,"</select>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
"<select name=\"%s\"",
|
||||
NameSelectMinute);
|
||||
"<select id=\"%sMinute\" name=\"%sMinute\"",
|
||||
Id,Id);
|
||||
|
||||
fprintf (Gbl.F.Out," onchange=\"javascript:setUTCFromLocalDateTimeForm('%s');",
|
||||
Id);
|
||||
if (SubmitFormOnChange)
|
||||
fprintf (Gbl.F.Out," onchange=\"javascript:document.getElementById('%s').submit();\"",
|
||||
fprintf (Gbl.F.Out,"document.getElementById('%s').submit();",
|
||||
Gbl.FormId);
|
||||
fprintf (Gbl.F.Out,"\"");
|
||||
|
||||
if (Disabled)
|
||||
fprintf (Gbl.F.Out," disabled=\"disabled\"");
|
||||
fprintf (Gbl.F.Out,">");
|
||||
|
@ -385,22 +396,25 @@ void Dat_WriteFormClientLocalDateTime (const char *Id,
|
|||
"</tr>"
|
||||
"</table>");
|
||||
|
||||
fprintf (Gbl.F.Out,"<input type=\"hidden\" id=\"%sTimeUTC\" name=\"%sTimeUTC\" value=\"%ld\" />",
|
||||
Id,Id,(long) TimeUTC);
|
||||
|
||||
fprintf (Gbl.F.Out,"<script type=\"text/javascript\">"
|
||||
"setLocalDateTimeFormFromUTC('%s',%ld);"
|
||||
"</script>",
|
||||
Id,(long) DateTime);
|
||||
Id,(long) TimeUTC);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/***************** Get an hour-minute time from a form ***********************/
|
||||
/*****************************************************************************/
|
||||
|
||||
time_t Dat_GetDateTimeFromForm (const char *NameParam)
|
||||
time_t Dat_GetTimeUTCFromForm (const char *ParamName)
|
||||
{
|
||||
char LongStr[1+10+1];
|
||||
|
||||
/**** Get time ****/
|
||||
Par_GetParToText (NameParam,LongStr,1+10);
|
||||
Par_GetParToText (ParamName,LongStr,1+10);
|
||||
return Dat_GetUNIXTimeFromStr (LongStr);
|
||||
}
|
||||
|
||||
|
@ -572,23 +586,23 @@ void Dat_WriteFormHourMinute (const char *NameSelectHour,const char *NameSelectM
|
|||
/*************************** Get a date from a form **************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Dat_GetDateFromForm (const char *NameParamDay,const char *NameParamMonth,const char *NameParamYear,
|
||||
void Dat_GetDateFromForm (const char *ParamNameDay,const char *ParamNameMonth,const char *ParamNameYear,
|
||||
unsigned *Day,unsigned *Month,unsigned *Year)
|
||||
{
|
||||
char UnsignedStr[10+1];
|
||||
|
||||
/**** Get day ****/
|
||||
Par_GetParToText (NameParamDay,UnsignedStr,10);
|
||||
Par_GetParToText (ParamNameDay,UnsignedStr,10);
|
||||
if (sscanf (UnsignedStr,"%u",Day) != 1)
|
||||
*Day = 0;
|
||||
|
||||
/**** Get month ****/
|
||||
Par_GetParToText (NameParamMonth,UnsignedStr,10);
|
||||
Par_GetParToText (ParamNameMonth,UnsignedStr,10);
|
||||
if (sscanf (UnsignedStr,"%u",Month) != 1)
|
||||
*Month = 0;
|
||||
|
||||
/**** Get year ****/
|
||||
Par_GetParToText (NameParamYear,UnsignedStr,10);
|
||||
Par_GetParToText (ParamNameYear,UnsignedStr,10);
|
||||
if (sscanf (UnsignedStr,"%u",Year) != 1)
|
||||
*Year = 0;
|
||||
}
|
||||
|
@ -597,18 +611,18 @@ void Dat_GetDateFromForm (const char *NameParamDay,const char *NameParamMonth,co
|
|||
/***************** Get an hour-minute time from a form ***********************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Dat_GetHourMinuteFromForm (const char *NameParamHour,const char *NameParamMinute,
|
||||
void Dat_GetHourMinuteFromForm (const char *ParamNameHour,const char *ParamNameMinute,
|
||||
unsigned *Hour,unsigned *Minute)
|
||||
{
|
||||
char UnsignedStr[10+1];
|
||||
|
||||
/**** Get hour ****/
|
||||
Par_GetParToText (NameParamHour,UnsignedStr,10);
|
||||
Par_GetParToText (ParamNameHour,UnsignedStr,10);
|
||||
if (sscanf (UnsignedStr,"%u",Hour) != 1)
|
||||
*Hour = 0;
|
||||
|
||||
/**** Get minute ****/
|
||||
Par_GetParToText (NameParamMinute,UnsignedStr,10);
|
||||
Par_GetParToText (ParamNameMinute,UnsignedStr,10);
|
||||
if (sscanf (UnsignedStr,"%u",Minute) != 1)
|
||||
*Minute = 0;
|
||||
}
|
||||
|
|
13
swad_date.h
13
swad_date.h
|
@ -80,15 +80,10 @@ void Dat_ConvDateToDateStr (struct Date *Date,char *DateStr);
|
|||
void Dat_WriteFormIniEndDates (void);
|
||||
|
||||
void Dat_WriteFormClientLocalDateTime (const char *Id,
|
||||
time_t DateTime,
|
||||
time_t TimeUTC,
|
||||
unsigned FirstYear,unsigned LastYear,
|
||||
const char *NameSelectDay,
|
||||
const char *NameSelectMonth,
|
||||
const char *NameSelectYear,
|
||||
const char *NameSelectHour,
|
||||
const char *NameSelectMinute,
|
||||
bool SubmitFormOnChange,bool Disabled);
|
||||
time_t Dat_GetDateTimeFromForm (const char *NameParam);
|
||||
time_t Dat_GetTimeUTCFromForm (const char *ParamName);
|
||||
|
||||
void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
||||
const char *NameSelectDay,
|
||||
|
@ -99,9 +94,9 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
void Dat_WriteFormHourMinute (const char *NameSelectHour,const char *NameSelectMinute,
|
||||
struct Time *TimeSelected,
|
||||
bool SubmitFormOnChange,bool Disabled);
|
||||
void Dat_GetDateFromForm (const char *NameParamDay,const char *NameParamMonth,const char *NameParamYear,
|
||||
void Dat_GetDateFromForm (const char *ParamNameDay,const char *ParamNameMonth,const char *ParamNameYear,
|
||||
unsigned *Day,unsigned *Month,unsigned *Year);
|
||||
void Dat_GetHourMinuteFromForm (const char *NameParamHour,const char *NameParamMinute,
|
||||
void Dat_GetHourMinuteFromForm (const char *ParamNameHour,const char *ParamNameMinute,
|
||||
unsigned *Hour,unsigned *Minute);
|
||||
|
||||
void Dat_GetIniEndDatesFromForm (void);
|
||||
|
|
|
@ -5786,7 +5786,7 @@ static void Brw_WriteDatesAssignment (void)
|
|||
"writeLocalDateTimeFromUTC('asg_start_date%u',%ld);"
|
||||
"</script>",
|
||||
UniqueId,
|
||||
(long) Gbl.FileBrowser.Asg.DateTimes[Asg_START_TIME]);
|
||||
(long) Gbl.FileBrowser.Asg.TimeUTC[Asg_START_TIME]);
|
||||
fprintf (Gbl.F.Out,"</td>");
|
||||
|
||||
/***** Arrow *****/
|
||||
|
@ -5808,7 +5808,7 @@ static void Brw_WriteDatesAssignment (void)
|
|||
"writeLocalDateTimeFromUTC('asg_end_date%u',%ld);"
|
||||
"</script>",
|
||||
UniqueId,
|
||||
(long) Gbl.FileBrowser.Asg.DateTimes[Asg_END_TIME]);
|
||||
(long) Gbl.FileBrowser.Asg.TimeUTC[Asg_END_TIME]);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>"
|
||||
"</table>");
|
||||
|
|
Loading…
Reference in New Issue