хз
This commit is contained in:
@@ -49,14 +49,23 @@ function showReportsSection() {
|
|||||||
// Проверка, имеет ли пользователь право видеть все задачи
|
// Проверка, имеет ли пользователь право видеть все задачи
|
||||||
function canViewAllTasks() {
|
function canViewAllTasks() {
|
||||||
if (!currentUser) return false;
|
if (!currentUser) return false;
|
||||||
|
|
||||||
// Администратор
|
// Администратор
|
||||||
if (currentUser.role === 'admin') return true;
|
if (currentUser.role === 'admin') return true;
|
||||||
// Проверка группы "Руководители" (предполагаем, что группы хранятся в currentUser.groups)
|
|
||||||
|
// Секретарь (по роли)
|
||||||
|
if (currentUser.role === 'secretary') return true;
|
||||||
|
|
||||||
|
// Проверка групп "Руководители" и "Секретарь"
|
||||||
if (currentUser.groups && Array.isArray(currentUser.groups)) {
|
if (currentUser.groups && Array.isArray(currentUser.groups)) {
|
||||||
if (currentUser.groups.some(g => g === 'Руководители' || g.includes('Руководители'))) {
|
if (currentUser.groups.some(g =>
|
||||||
|
g === 'Руководители' || g.includes('Руководители') ||
|
||||||
|
g === 'Секретарь' || g.includes('Секретарь')
|
||||||
|
)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
10
public/ui.js
10
public/ui.js
@@ -115,6 +115,11 @@ function renderTasks() {
|
|||||||
if (!showDeleted) {
|
if (!showDeleted) {
|
||||||
filteredTasks = window.tasks.filter(task => task.status === 'active');
|
filteredTasks = window.tasks.filter(task => task.status === 'active');
|
||||||
}
|
}
|
||||||
|
// Если есть развёрнутая задача – показываем только её
|
||||||
|
if (expandedTasks.size > 0) {
|
||||||
|
const expandedTaskId = Array.from(expandedTasks)[0];
|
||||||
|
filteredTasks = filteredTasks.filter(task => task.id === expandedTaskId);
|
||||||
|
}
|
||||||
|
|
||||||
if (statusFilter !== 'completed') {
|
if (statusFilter !== 'completed') {
|
||||||
filteredTasks = filteredTasks.filter(task => {
|
filteredTasks = filteredTasks.filter(task => {
|
||||||
@@ -256,6 +261,11 @@ function renderTasksInContainer(containerId, tasksArray) {
|
|||||||
if (!container) return;
|
if (!container) return;
|
||||||
|
|
||||||
let filteredTasks = tasksArray;
|
let filteredTasks = tasksArray;
|
||||||
|
// Если есть развёрнутая задача – показываем только её
|
||||||
|
if (expandedTasks.size > 0) {
|
||||||
|
const expandedTaskId = Array.from(expandedTasks)[0];
|
||||||
|
filteredTasks = filteredTasks.filter(task => task.id === expandedTaskId);
|
||||||
|
}
|
||||||
if (containerId === 'runtasks-list' && window.currentTaskView === 'assigned_to_me' && currentUser) {
|
if (containerId === 'runtasks-list' && window.currentTaskView === 'assigned_to_me' && currentUser) {
|
||||||
filteredTasks = tasksArray.filter(task => {
|
filteredTasks = tasksArray.filter(task => {
|
||||||
const myAssignment = task.assignments?.find(a => parseInt(a.user_id) === currentUser.id);
|
const myAssignment = task.assignments?.find(a => parseInt(a.user_id) === currentUser.id);
|
||||||
|
|||||||
Reference in New Issue
Block a user