Update productive_time and work_time logic, remove useless conditions

parent 77cb0150
......@@ -129,20 +129,30 @@ commitBtn.addEventListener("click", function(event) {
document.querySelector("#realworktime").addEventListener("change", function() {
document.querySelector("#saveTime").dataset["time"] = document.querySelector("#realworktime").value;
console.log('time changed:', document.querySelector("#saveTime").dataset["time"]);
});
document.querySelector("#realworktime").addEventListener("paste", function() {
document.querySelector("#saveTime").dataset["time"] = document.querySelector("#realworktime").value;
console.log('time changed:', document.querySelector("#saveTime").dataset["time"]);
});
// add listener for time commit
let workTimeBtns = document.querySelectorAll(".workTime__button");
let btn = document.querySelector("#saveTime");
Array.from(workTimeBtns).map(btn => {
btn.addEventListener("click", function(event) {
// cancel form submiting
event.preventDefault();
// let's calc time for #work_time input
let workTime = parseInt(btn.dataset["time"]);
let workTime = parseInt(document.querySelector('#realworktime').value);
workTime = workTime === parseInt(btn.dataset["time"]) ? parseInt(btn.dataset["time"]) : workTime;
workTime = workTime > 0 ? workTime : 1;
let workTimeValue = Math.ceil(workTime / 60 * 100) / 100;
let productiveTimeValue = Math.ceil(parseInt(document.querySelector('#ProductTime').value) / 60 * 100) / 100;
let productiveTime = parseInt(document.querySelector('#ProductTime').value);
productiveTime = productiveTime > 0 ? productiveTime : 1;
let productiveTimeValue = Math.ceil(productiveTime / 60 * 100) / 100;
document.querySelector("#work_time").value = workTimeValue;
document.querySelector("#productive_time").value = productiveTimeValue;
......@@ -156,16 +166,15 @@ Array.from(workTimeBtns).map(btn => {
if (comment.length < 9) {
alert("Слишком короткий комментарий");
}
else if (workTimeValue > 3) {
alert("Вы указали отработанное время более 3 часов. Правильным следованием рабочему процессу было бы выполнение работы по частям, о каждой из которых будет написано отдельно.");
else if (productiveTimeValue > 8 || workTimeValue > 8) {
alert("Недопустимо указывать отработанное/продуктивное время более восьми часов. Правильным следованием рабочему процессу было бы выполнение работы по частям, о каждой из которых будет написано отдельно.");
}
else if (workTimeValue > 2 && comment.length < workTimeValue * 60) {
else if (productiveTimeValue > 2 && comment.length < productiveTimeValue * 60) {
alert("Недопустимо коротко комментировать длительные работы. Мы ожидаем не менее 60 символов на каждый указанный час.");
}
else if (workTimeValue > 8) {
alert("Вы указали отработанное время более 8 часов. Нужно обязательно разбивать комментирование своей работы за день на отдельные части.");
}
else {
else if (productiveTimeValue > workTimeValue) {
alert("Продуктивное время не может быть больше отработанного!");
} else {
let bugForm = etersoft_create === 1 ? "#Create" : "#changeform";
document.querySelector(bugForm).submit();
timer.clear();
......@@ -175,7 +184,6 @@ Array.from(workTimeBtns).map(btn => {
}
});
});
});
// let's validate!
function validate(evt) {
......
......@@ -21,20 +21,26 @@
Отработанное время:
<div class="workTimeInner">
<input class="workTime__input" id="realworktime" name="realworktime" placeholder="в минутах" title="Время в минутах" type="text" tabindex="1" required autofocus>
<button class="workTime__button" data-time="1">1</button>
<button class="workTime__button" data-time="5">5</button>
<button class="workTime__button" data-time="15">15</button>
<button class="workTime__button" data-time="30">30</button>
<button class="workTime__button" data-time="1" onclick="document.querySelector('#realworktime').value=this.dataset['time']" tabindex="2">1</button>
<button class="workTime__button" data-time="5" onclick="document.querySelector('#realworktime').value=this.dataset['time']" tabindex="3">5</button>
<button class="workTime__button" data-time="15" onclick="document.querySelector('#realworktime').value=this.dataset['time']" tabindex="4">15</button>
<button class="workTime__button" data-time="30" onclick="document.querySelector('#realworktime').value=this.dataset['time']" tabindex="5">30</button>
</div>
</fieldset>
<fieldset>
Продуктивное время:
<input id="ProductTime" placeholder="в минутах" title="Время в минутах" type="text" tabindex="2">
<div class="workTimeInner">
<input id="ProductTime" placeholder="в минутах" title="Время в минутах" type="text" tabindex="6" required>
<button class="workTime__button" data-time="1" onclick="document.querySelector('#ProductTime').value=this.dataset['time']" tabindex="7">1</button>
<button class="workTime__button" data-time="5" onclick="document.querySelector('#ProductTime').value=this.dataset['time']" tabindex="8">5</button>
<button class="workTime__button" data-time="15" onclick="document.querySelector('#ProductTime').value=this.dataset['time']" tabindex="9">15</button>
<button class="workTime__button" data-time="30" onclick="document.querySelector('#ProductTime').value=this.dataset['time']" tabindex="10">30</button>
</div>
</fieldset>
<fieldset>
<button class="workTime__button" id="saveTime">Сохранить</button>
<button class="workTime__button" id="saveTime" tabindex="11">Сохранить</button>
</fieldset>
<a onclick="closeDiv();" class="close"></a>
<a onclick="closeDiv();" class="close" tabindex="12"></a>
</div>
</div>
</div>
......
......@@ -21,15 +21,21 @@
Отработанное время:
<div class="workTimeInner">
<input class="workTime__input" id="realworktime" name="realworktime" placeholder="в минутах" title="Время в минутах" type="text" tabindex="1" required autofocus>
<button class="workTime__button" data-time="1">1</button>
<button class="workTime__button" data-time="5">5</button>
<button class="workTime__button" data-time="15">15</button>
<button class="workTime__button" data-time="30">30</button>
<button class="workTime__button" data-time="1" onclick="document.querySelector('#realworktime').value=this.dataset['time']">1</button>
<button class="workTime__button" data-time="5" onclick="document.querySelector('#realworktime').value=this.dataset['time']">5</button>
<button class="workTime__button" data-time="15" onclick="document.querySelector('#realworktime').value=this.dataset['time']">15</button>
<button class="workTime__button" data-time="30" onclick="document.querySelector('#realworktime').value=this.dataset['time']">30</button>
</div>
</fieldset>
<fieldset>
Продуктивное время:
<input id="ProductTime" placeholder="в минутах" title="Время в минутах" type="text" tabindex="2">
<div class="workTimeInner">
<input id="ProductTime" placeholder="в минутах" title="Время в минутах" type="text" tabindex="2" required>
<button class="workTime__button" data-time="1" onclick="document.querySelector('#ProductTime').value=this.dataset['time']">1</button>
<button class="workTime__button" data-time="5" onclick="document.querySelector('#ProductTime').value=this.dataset['time']">5</button>
<button class="workTime__button" data-time="15" onclick="document.querySelector('#ProductTime').value=this.dataset['time']">15</button>
<button class="workTime__button" data-time="30" onclick="document.querySelector('#ProductTime').value=this.dataset['time']">30</button>
</div>
</fieldset>
<fieldset>
<button class="workTime__button" id="saveTime">Сохранить</button>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment