HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/buyercall_new/buyercall/buyercall/assets/scripts/agent_form.js
/**
 * Code specific to the agent edit form.
 */
var $ = require('jquery');
var Backbone = require('backbone');
var ScheduleView = require('../components/schedule/schedule.js');

//$(function () {
    var model = new Backbone.Model({
        scheduleTimezone: $('#timezone').val(),
        schedules: getSchedule()
    });

    new ScheduleView({
        model: model
    }); //.$el.appendTo('.schedule');

    model.on('change', function () {
        $('#timezone').val(model.get('scheduleTimezone')),
        $('#schedules_str').val(JSON.stringify(model.get('schedules')))
    });

    // When a group's checkbox is clicked, update the group list in hidden field
    var groupCheckboxes = $('#agent-groups-table input[type=checkbox]');
    groupCheckboxes.click(function (e) {
        var groupList = groupCheckboxes.filter(':checked').map((i, el) => {
            return el.getAttribute('data-groupid');
        }).get().join();
        $('#groups_str').val(groupList);
    });
//});

function getSchedule() {
    var result = [];

    $(".schedule-day").each(function( index ) {
        var dayId = $(this).prop('id'),
            dayStart = $(this).find('.avail_from').text(),
            dayStop = $(this).find('.avail_to').text(),
            scheduleId = $(this).find('.day_id').text(),
            isActive = ($(this).find('.is_active').text() == "True") ? true : false;

        var day = {
            id: dayId,
            active: isActive,
            start: dayStart,
            stop: dayStop,
            scheid: scheduleId
        };

        result.push(day);
    });

    return result;
}