Skip to content

Commit 5cbf776

Browse files
committed
Js - eliminate global parameters
1 parent b9a0c0b commit 5cbf776

File tree

5 files changed

+23
-98
lines changed

5 files changed

+23
-98
lines changed

app/config.py.example

Lines changed: 0 additions & 80 deletions
This file was deleted.

app/routers/calendar_grid.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,14 +55,18 @@ def display(self) -> str:
5555
"""Returns day date inf the format of 00 MONTH 00"""
5656
return self.date.strftime("%d %B %y").upper()
5757

58+
def set_id(self) -> str:
59+
"""Returns day date inf the format of 00-mon-0000"""
60+
return self.date.strftime("%d-%b-%Y")
61+
5862
@classmethod
5963
def get_user_local_time(cls) -> datetime:
6064
greenwich = pytz.timezone('GB')
6165
return greenwich.localize(datetime.now())
6266

6367
@classmethod
6468
def convert_str_to_date(cls, date_string: str) -> datetime:
65-
return datetime.strptime(date_string, '%d %B %y')
69+
return datetime.strptime(date_string, '%d-%b-%Y')
6670

6771
@classmethod
6872
def is_weekend(cls, date: date) -> bool:

app/static/js/grid_scripts.js

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,46 @@
1-
function setToggle(elementClass, targetElement, classToAdd) {
1+
function setToggle(elementClass, targetElement, classToAdd, lastIndex) {
22
const allDays = document.getElementsByClassName(elementClass);
3-
for (let i = window['lastIndex']; i < allDays.length; ++i) {
3+
for (let i = lastIndex; i < allDays.length; ++i) {
44
allDays[i].addEventListener("click", function () {
55
const target = document.getElementById(targetElement);
66
target.classList.toggle(classToAdd);
77
})
88
}
9-
window['lastIndex'] += allDays.length - window['lastIndex'];
109
}
1110

12-
1311
document.addEventListener(
1412
'DOMContentLoaded', function () {
15-
window['lastIndex'] = 0;
16-
window['last'] = 0;
17-
setToggle("day", "day-view", "day-view-visible");
13+
setToggle("day", "day-view", "day-view-visible", 0);
1814
}
1915
)
2016

21-
function loadWeek(lastDay) {
22-
if (lastDay === window['last']) {
17+
function loadWeek(lastDay, index) {
18+
if (lastDay.dataset.last === "false") {
2319
return false;
2420
}
25-
const path = '/calendar/month/' + lastDay;
21+
lastDay.dataset.last = false;
22+
const path = '/calendar/month/' + lastDay.id;
23+
alert(path);
2624
const newDays = document.createElement('html');
27-
window['last'] = lastDay;
2825
fetch(path).then(function (response) {
2926
return response.text();
3027
}).then(function (html) {
3128
const newDiv = document.createElement("div");
3229
newDays.innerHTML = html
3330
newDiv.appendChild(newDays);
3431
document.getElementById("calender-grid").append(newDays);
35-
setToggle("day", "day-view", "day-view-visible");
32+
setToggle("day", "day-view", "day-view-visible", index);
3633
});
3734
}
3835

3936
window.addEventListener(
4037
'scroll', function () {
41-
const tolerance = 1;
38+
const tolerance = 100;
4239
if (window.scrollY + window.innerHeight + tolerance < document.documentElement.scrollHeight) {
4340
return false;
4441
}
4542
const allDays = document.querySelectorAll('.day');
46-
const lastDay = allDays[allDays.length - 1].id;
47-
loadWeek(lastDay);
43+
const lastDay = allDays[allDays.length - 1];
44+
loadWeek(lastDay, allDays.length);
4845
}
4946
)

app/templates/calendar/add_week.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{% for week in weeks_block %}
22
<div class="week">
33
{% for day in week.days %}
4-
<div class="{{day.css['day_container']}}" id="{{day.display()}}">
4+
<div class="{{day.css['day_container']}}" id="{{day.set_id()}}">
55
<div class="month-day-header">
66
<div class="{{day.css['date']}}">{{day}}</div>
77
<div><a href="#" class="add-small">+</a></div>

tests/test_calendar_grid.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def test_get_calendar(client):
2525

2626
@staticmethod
2727
def test_get_calendar_extends(client):
28-
response = client.get(f"/calendar/month/{DAY.display()}")
28+
response = client.get(f"/calendar/month/{DAY.set_id()}")
2929
assert response.ok
3030
assert b"08" in response.content
3131

@@ -103,6 +103,10 @@ def test_is_weekend():
103103
def test_display_day():
104104
assert DAY.display() == '03 MAY 88'
105105

106+
@staticmethod
107+
def test_set_id():
108+
assert DAY.set_id() == '03-May1988'
109+
106110
@staticmethod
107111
def test_display_str():
108112
assert str(DAY) == '03'

0 commit comments

Comments
 (0)