diff --git a/js/swad.js b/js/swad.js
index 08c4f283e..c691ec112 100644
--- a/js/swad.js
+++ b/js/swad.js
@@ -52,6 +52,28 @@ function writeLocalDateTimeFromUTC(id,secsSince1970UTC) {
document.getElementById(id).innerHTML = d.toLocaleDateString() + " " + d.getHours() + ":" + StrMinutes;
}
+// Write a date-time in client local time
+function setLocalDateTimeFormFromUTC(id,secsSince1970UTC) {
+ var d = new Date;
+ var Day;
+ var Month;
+ var Year;
+ var Hour;
+ var Minute;
+
+ d.setTime(secsSince1970UTC * 1000);
+ Day = d.getDate();
+ Month = d.getMonth() + 1;
+ Year = d.getFullYear();
+ 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+'_hour_' +Hour ).selected = true;
+ document.getElementById(id+'_minute_'+Minute).selected = true;
+}
+
// Write clock in client local time updated every minute
function writeLocalClock() {
var d = new Date;
diff --git a/swad_assignment.c b/swad_assignment.c
index da1da0412..3442c6b21 100644
--- a/swad_assignment.c
+++ b/swad_assignment.c
@@ -1047,6 +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" };
@@ -1154,7 +1155,9 @@ void Asg_RequestCreatOrEditAsg (void)
&(Asg.DateTimes[StartOrEndTime].Date),
false,false);
*/
- Dat_WriteFormClientLocalDateTime (Gbl.Now.Date.Year-1,Gbl.Now.Date.Year+1,
+ Dat_WriteFormClientLocalDateTime (Id[StartOrEndTime],
+ Asg.DateTimes[StartOrEndTime],
+ Gbl.Now.Date.Year-1,Gbl.Now.Date.Year+1,
NameSelectDay [StartOrEndTime],
NameSelectMonth [StartOrEndTime],
NameSelectYear [StartOrEndTime],
diff --git a/swad_changelog.h b/swad_changelog.h
index 368e399ac..f4ef95bb6 100644
--- a/swad_changelog.h
+++ b/swad_changelog.h
@@ -107,11 +107,12 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
-#define Log_PLATFORM_VERSION "SWAD 15.16 (2015/10/22)"
+#define Log_PLATFORM_VERSION "SWAD 15.16.1 (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.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)
Version 15.15.2: Oct 21, 2015 Fixed bug in client local date-time. (186254 lines)
diff --git a/swad_date.c b/swad_date.c
index 649a9adf5..2c1677205 100644
--- a/swad_date.c
+++ b/swad_date.c
@@ -271,7 +271,9 @@ void Dat_WriteFormIniEndDates (void)
/************************* Show a form to enter a date ***********************/
/*****************************************************************************/
-void Dat_WriteFormClientLocalDateTime (unsigned FirstYear,unsigned LastYear,
+void Dat_WriteFormClientLocalDateTime (const char *Id,
+ time_t DateTime,
+ unsigned FirstYear,unsigned LastYear,
const char *NameSelectDay,
const char *NameSelectMonth,
const char *NameSelectYear,
@@ -301,8 +303,8 @@ void Dat_WriteFormClientLocalDateTime (unsigned FirstYear,unsigned LastYear,
for (Day = 1;
Day <= 31;
Day++)
- fprintf (Gbl.F.Out,"",
- Day,Day);
+ fprintf (Gbl.F.Out,"",
+ Id,Day,Day,Day);
/***** Month *****/
fprintf (Gbl.F.Out,""
@@ -321,8 +323,8 @@ void Dat_WriteFormClientLocalDateTime (unsigned FirstYear,unsigned LastYear,
for (Month = 1;
Month <= 12;
Month++)
- fprintf (Gbl.F.Out,"",
- Month,Txt_MONTHS_SMALL[Month-1]);
+ fprintf (Gbl.F.Out,"",
+ Id,Month,Month,Txt_MONTHS_SMALL[Month-1]);
/***** Year *****/
fprintf (Gbl.F.Out,""
@@ -340,8 +342,8 @@ void Dat_WriteFormClientLocalDateTime (unsigned FirstYear,unsigned LastYear,
for (Year = FirstYear;
Year <= LastYear;
Year++)
- fprintf (Gbl.F.Out,"",
- Year,Year);
+ fprintf (Gbl.F.Out,"",
+ Id,Year,Year,Year);
fprintf (Gbl.F.Out,""
"");
@@ -358,8 +360,8 @@ void Dat_WriteFormClientLocalDateTime (unsigned FirstYear,unsigned LastYear,
for (Hour = 0;
Hour <= 23;
Hour++)
- fprintf (Gbl.F.Out,"",
- Hour,Hour);
+ fprintf (Gbl.F.Out,"",
+ Id,Hour,Hour,Hour);
/***** Minute *****/
fprintf (Gbl.F.Out,""
@@ -376,12 +378,17 @@ void Dat_WriteFormClientLocalDateTime (unsigned FirstYear,unsigned LastYear,
for (Minute = 0;
Minute <= 59;
Minute++)
- fprintf (Gbl.F.Out,"",
- Minute,Minute);
+ fprintf (Gbl.F.Out,"",
+ Id,Minute,Minute,Minute);
fprintf (Gbl.F.Out,""
""
""
"");
+
+ fprintf (Gbl.F.Out,"",
+ Id,(long) DateTime);
}
/*****************************************************************************/
diff --git a/swad_date.h b/swad_date.h
index 595d35d33..f312c63d4 100644
--- a/swad_date.h
+++ b/swad_date.h
@@ -79,7 +79,9 @@ void Dat_ConvDateToDateStr (struct Date *Date,char *DateStr);
void Dat_WriteFormIniEndDates (void);
-void Dat_WriteFormClientLocalDateTime (unsigned FirstYear,unsigned LastYear,
+void Dat_WriteFormClientLocalDateTime (const char *Id,
+ time_t DateTime,
+ unsigned FirstYear,unsigned LastYear,
const char *NameSelectDay,
const char *NameSelectMonth,
const char *NameSelectYear,