Simulate logged in user
var user = {
    
    
    
}

var myResources = [{
    id: 1,
    name: 'Jude Chester',
    color: '#fadaff'
}, {
    id: 2,
    name: 'Willis Cane',
    color: '#ffffd0'
}, {
    id: 3,
    name: 'Derek Austyn',
    color: '#e1ffd6'
}, {
    id: 4,
    name: 'Merv Kenny',
    color: '#fac4c4'
}, {
    id: 5,
    name: 'Fred Waldez',
    color: '#bfdeff'
}];

var myEvents = [{
    start: '2026-04-01T11:00',
    end: '2026-04-01T15:00',
    title: 'Task 1',
    resource: 1
}, {
    start: '2026-04-01T14:00',
    end: '2026-04-01T17:00',
    title: 'Task 2',
    resource: 3
}, {
    start: '2026-04-01T12:00',
    end: '2026-04-01T14:00',
    title: 'Task 3',
    resource: 4
}, {
    start: '2026-04-02T10:00',
    end: '2026-04-02T15:00',
    title: 'Task 4',
    resource: 1
}, {
    start: '2026-04-02T11:00',
    end: '2026-04-02T13:00',
    title: 'Task 5',
    resource: 2
}, {
    start: '2026-04-02T14:00',
    end: '2026-04-02T17:00',
    title: 'Task 6',
    resource: 2
}, {
    start: '2026-04-02T12:00',
    end: '2026-04-02T15:00',
    title: 'Task 7',
    resource: 3
}, {
    start: '2026-04-02T17:00',
    end: '2026-04-02T20:00',
    title: 'Task 8',
    resource: 3
}, {
    start: '2026-04-02T08:00',
	end: '2026-04-02T11:30',
	title: 'Task 9',
	resource: 4
}, {
    start: '2026-04-02T12:00',
	end: '2026-04-02T14:00',
	title: 'Task 10',
	resource: 4
}, {
    start: '2026-04-02T10:00',
	end: '2026-04-02T13:00',
	title: 'Task 11',
	resource: 5
}, {
    start: '2026-04-02T14:00',
	end: '2026-04-02T16:00',
	title: 'Task 12',
	resource: 5
}, { 
    start: '2026-04-02T16:30',
    end: '2026-04-02T19:00',
    title: 'Task 13',
    resource: 5
}, {
    start: '2026-04-03T11:00',
    end: '2026-04-03T14:00',
    title: 'Task 14',
    resource: 2
}, {
    start: '2026-04-03T16:00',
    end: '2026-04-03T20:00',
    title: 'Task 15',
    resource: 5
}]

function login() {
    var updatedTasks = $.extend(true, [], myEvents);
    var updatedResources = $.extend(true, [], myResources);
    var eventEdit = user.role != 'readonly';
    var task;
    var defaultColor;

    if (user.role === 'readonly') {
        for (var i = 0; i < updatedTasks.length; i++) {
            task = updatedTasks[i];
            // Disable editing for all events
            task.editable = false;
            // Make event colors uniform
            task.color = '#af2ec3';
        }
    }
    else if (user.role === 'limited') {
        defaultColor = '#af2424';
        for (var i = 0; i < updatedTasks.length; i++) {
            task = updatedTasks[i];

            if (task.resource !== user.id) {
                // Disable editing events of other users
                task.editable = false;
                // Set disabled event colors to gray
                task.color = '#6a6a6a';
            } else {
                // Make event colors uniform
                task.color = '#af2424'
            }
        }

        for (var i = 0; i < updatedResources.length; i++) {
            var res = updatedResources[i];

            if (res.id !== user.id) {
                // Disable event creation for other users
                res.eventCreation = false;
            }
        }
    }
           
    // Update events, resources and d&d options
    myCalendar.setOptions({
        data: updatedTasks,
        resources: updatedResources,
        clickToCreate: eventEdit,
        dragToCreate: eventEdit,
        dragToMove: eventEdit,
        dragToResize: eventEdit,
        eventDelete: eventEdit,
        extendDefaultEvent: function () {
            return {
                color: defaultColor,
            };
        },
    });
}
var myCalendar = $('#my-calendar').mobiscroll().eventcalendar({
    view: {
        timeline: {
            type: 'week',
            startTime: '08:00',
            endTime: '20:00',
        }
    },
    resources: myResources,
    data: myEvents
}).mobiscroll('getInst');