TaskView.js
//clicking on a task will open it's full view
function clickItem(item){
const clickObj = item;
if (typeof clickObj.fireEvent == typeof function(){}) {
clickObj.fireEvent('onclick');
} else {
var evObj = document.createEvent('Events');
evObj.initEvent('click', true, false);
clickObj.dispatchEvent(evObj);
}
}
let items = document.querySelectorAll('.task-board');
function handleTaskClick(item, event){
// console.log('task clicked');
// console.log(item);
const dropdown = item.querySelector('i.fa.fa-caret-down');
const edit = item.querySelectorAll('i.fa-edit')[1];
const editLink = edit.parentNode;
const menu = item.querySelector('a.dropdown-menu.dropdown-menu-link-icon');
const strong = menu?.querySelector('strong');
const view = item.querySelector("a.view-task");
if (event.target.classList.contains('fa')||event.target==view||event.target==editLink||event.target==edit||event.target==dropdown||event.target==menu||event.target==strong){
// console.log('task view canceled');
return;
}
event.preventDefault();
event.stopPropagation();
clickItem(view);
setTimeout(changeCommentButtonText, 250
);
}
for (const item of items){
item.addEventListener('click',
handleTaskClick.bind(this,item)
);
// item.addEventListener('touch',
// handleTaskClick.bind(this,item)
// );
}