Skip to content

Commit 60a7652

Browse files
committed
get date from date range
1 parent e2f9ee3 commit 60a7652

File tree

4 files changed

+42
-9
lines changed

4 files changed

+42
-9
lines changed

scripts/common.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,3 +58,7 @@ function zeroAppend(time) {
5858
return '0' + time;
5959
else return time;
6060
}
61+
62+
function isDateInRange(date, range){
63+
return date >= range.from && date <= range.to;
64+
}

scripts/ui.js

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,16 @@ class UI {
99
document.getElementById('btnToday').classList.add('active');
1010
document.getElementById('btnAll').classList.remove('active');
1111
document.getElementById('btnByDays').classList.remove('active');
12+
13+
this.clearUI();
1214
}
1315

1416
setUIForAll() {
1517
document.getElementById('btnAll').classList.add('active');
1618
document.getElementById('btnToday').classList.remove('active');
1719
document.getElementById('btnByDays').classList.remove('active');
20+
21+
this.clearUI();
1822
}
1923

2024
setUIForByDays() {
@@ -141,19 +145,29 @@ class UI {
141145
var to = document.createElement('span');
142146
to.innerHTML = 'To';
143147

148+
var dateNow = new Date();
144149
var calendarFirst = document.createElement('input');
150+
calendarFirst.id = 'dateFrom';
145151
calendarFirst.type = 'date';
146-
var previousDate = new Date();
152+
var previousDate = new Date(Date.UTC(dateNow.getFullYear(), dateNow.getMonth(), dateNow.getDate()));
147153
previousDate.setDate(previousDate.getDate() - 7);
148154
calendarFirst.valueAsDate = previousDate;
149155

150156
var calendarTwo = document.createElement('input');
157+
calendarTwo.id = 'dateTo';
151158
calendarTwo.type = 'date';
152-
calendarTwo.valueAsDate = new Date();
159+
calendarTwo.valueAsDate = new Date(Date.UTC(dateNow.getFullYear(), dateNow.getMonth(), dateNow.getDate()));
153160

154161
div.appendChild(from);
155162
div.appendChild(calendarFirst);
156163
div.appendChild(to);
157164
div.appendChild(calendarTwo);
158165
}
166+
167+
getDateRange() {
168+
return {
169+
'from': new Date(document.getElementById('dateFrom').value).toLocaleDateString(),
170+
'to': new Date(document.getElementById('dateTo').value).toLocaleDateString()
171+
};
172+
}
159173
}

scripts/webact.js

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,32 +12,33 @@ document.addEventListener('DOMContentLoaded', function () {
1212
document.getElementById('btnToday').addEventListener('click', function () {
1313
currentTypeOfList = TypeListEnum.ToDay;
1414
ui.setUIForToday();
15-
getDataFromStorageToday();
15+
getDataFromStorage();
1616
});
1717
document.getElementById('btnAll').addEventListener('click', function () {
1818
currentTypeOfList = TypeListEnum.All;
1919
ui.setUIForAll();
20-
getDataFromStorageAll();
20+
getDataFromStorage();
2121
});
2222
document.getElementById('btnByDays').addEventListener('click', function () {
2323
currentTypeOfList = TypeListEnum.ByDays;
2424
ui.setUIForByDays();
25+
getDataFromStorageByDays();
2526
});
2627
});
2728

2829
firstInitPage();
2930

3031
function firstInitPage() {
3132
currentTypeOfList = TypeListEnum.ToDay;
32-
getDataFromStorageToday();
33+
getDataFromStorage();
3334
}
3435

35-
function getDataFromStorageToday() {
36+
function getDataFromStorage() {
3637
storage.load(STORAGE_TABS, getTabsFromStorage);
3738
}
3839

39-
function getDataFromStorageAll() {
40-
storage.load(STORAGE_TABS, getTabsFromStorage);
40+
function getDataFromStorageByDays(){
41+
storage.load(STORAGE_TABS, getTabsByDays);
4142
}
4243

4344
function getTabsFromStorage(tabs) {
@@ -170,4 +171,18 @@ function getFirstDay() {
170171
'countOfDays': array.length,
171172
'minDate': array[0]
172173
};
174+
}
175+
176+
function getTabsByDays(tabs){
177+
var range = ui.getDateRange();
178+
var listOfDays = [];
179+
tabs.map(function (a) {
180+
return a.days.map(function (a) {
181+
if (listOfDays.indexOf(a.date) === -1 && isDateInRange(a.date, range))
182+
return listOfDays.push(a.date);
183+
});
184+
});
185+
listOfDays = listOfDays.sort(function (a, b) {
186+
return new Date(a) - new Date(b);
187+
});
173188
}

style/webact.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ hr {
7979
}
8080

8181
.title{
82-
font-size: 17px;
82+
font-size: 15px;
8383
font-weight: 650;
8484
margin: 5px;
8585
text-align: center;

0 commit comments

Comments
 (0)