YetiForceCompany/YetiForceCRM

View on GitHub
public_html/layouts/basic/modules/Calendar/resources/Edit.min.js.map

Summary

Maintainability
Test Coverage
{"version":3,"file":"Edit.min.js","sources":["Edit.js"],"sourcesContent":["/*+***********************************************************************************\n * The contents of this file are subject to the vtiger CRM Public License Version 1.0\n * (\"License\"); You may not use this file except in compliance with the License\n * The Original Code is:  vtiger CRM Open Source\n * The Initial Developer of the Original Code is vtiger.\n * Portions created by vtiger are Copyright (C) vtiger.\n * All Rights Reserved.\n * Contributor(s): YetiForce S.A.\n *************************************************************************************/\n'use strict';\n\nVtiger_Edit_Js(\n\t'Calendar_Edit_Js',\n\t{\n\t\tcurrencyInstance: false,\n\t\tcheckEmail(field, rules, i, options) {\n\t\t\tif (Calendar_Edit_Js.currencyInstance.emailExists(field.val())) {\n\t\t\t\treturn app.vtranslate('JS_DUPLICATE_RECORD') + ': ' + field.val();\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t},\n\t{\n\t\tinit() {\n\t\t\tCalendar_Edit_Js.currencyInstance = this;\n\t\t},\n\t\tregisterReminderFieldCheckBox: function () {\n\t\t\tlet element = this.getForm().find('.js-reminder-field-checkbox');\n\t\t\telement.on('change', function (e) {\n\t\t\t\tlet rowElement = element.closest('.js-reminder-field-element').find('.js-reminder-field-row');\n\t\t\t\tif (element.is(':checked')) {\n\t\t\t\t\trowElement.removeClass('d-none');\n\t\t\t\t} else {\n\t\t\t\t\trowElement.addClass('d-none');\n\t\t\t\t}\n\t\t\t});\n\t\t\telement.change();\n\t\t},\n\t\t/**\n\t\t * Function which will register change event on recurrence field checkbox\n\t\t */\n\t\tregisterRecurrenceFieldCheckBox: function () {\n\t\t\tconst form = this.getForm(),\n\t\t\t\telement = form.find('input[name=\"reapeat\"]');\n\t\t\telement.on('change', function (e) {\n\t\t\t\tlet repeatUI = form.find('.js-repeat-ui'),\n\t\t\t\t\tcontainer = form.find('[name=\"followup\"]').closest('.fieldValue');\n\t\t\t\tif ($(e.currentTarget).is(':checked')) {\n\t\t\t\t\trepeatUI.closest('.fieldRow').removeClass('d-none');\n\t\t\t\t\tcontainer.find('[name=\"followup_display\"]').attr('disabled', 'disabled');\n\t\t\t\t\tcontainer.find('button').attr('disabled', 'disabled');\n\t\t\t\t} else {\n\t\t\t\t\tcontainer.find('[name=\"followup_display\"]').removeAttr('disabled');\n\t\t\t\t\tcontainer.find('button').removeAttr('disabled');\n\t\t\t\t\trepeatUI.closest('.fieldRow').addClass('d-none');\n\t\t\t\t}\n\t\t\t});\n\t\t\telement.change();\n\t\t},\n\t\t/**\n\t\t * Function which will register the change event for recurring type\n\t\t */\n\t\tregisterRecurringTypeChangeEvent: function () {\n\t\t\tvar container = this.getForm();\n\t\t\tvar thisInstance = this;\n\t\t\tcontainer.find('.recurringType').on('change', function (e) {\n\t\t\t\tthisInstance.changeRecurringTypesUIStyles(jQuery(e.currentTarget).val());\n\t\t\t});\n\t\t\tcontainer.find('.js-repeat-ui [name=\"calendarEndType\"]').on('change', function (e) {\n\t\t\t\tvar currentTarget = $(e.currentTarget);\n\t\t\t\tvar value = currentTarget.val();\n\t\t\t\tif (value === 'never') {\n\t\t\t\t\tcontainer.find('.countEvents').attr('disabled', 'disabled');\n\t\t\t\t\tcontainer.find('.calendarUntil').attr('disabled', 'disabled');\n\t\t\t\t} else if (value === 'count') {\n\t\t\t\t\tcontainer.find('.countEvents').removeAttr('disabled');\n\t\t\t\t\tcontainer.find('.calendarUntil').attr('disabled', 'disabled');\n\t\t\t\t} else if (value === 'until') {\n\t\t\t\t\tcontainer.find('.countEvents').attr('disabled', 'disabled');\n\t\t\t\t\tcontainer.find('.calendarUntil').removeAttr('disabled');\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\t/**\n\t\t * Function which will change the UI styles based on recurring type\n\t\t * @params - recurringType - which recurringtype is selected\n\t\t */\n\t\tchangeRecurringTypesUIStyles: function (recurringType) {\n\t\t\tvar container = this.getForm();\n\t\t\tif (recurringType == 'DAILY' || recurringType == 'YEARLY') {\n\t\t\t\tcontainer.find('.repeatWeekUI').removeClass('show').addClass('d-none');\n\t\t\t\tcontainer.find('.repeatMonthUI').removeClass('show').addClass('d-none');\n\t\t\t} else if (recurringType == 'WEEKLY') {\n\t\t\t\tcontainer.find('.repeatWeekUI').removeClass('d-none').addClass('show');\n\t\t\t\tcontainer.find('.repeatMonthUI').removeClass('show').addClass('d-none');\n\t\t\t} else if (recurringType == 'MONTHLY') {\n\t\t\t\tcontainer.find('.repeatWeekUI').removeClass('show').addClass('d-none');\n\t\t\t\tcontainer.find('.repeatMonthUI').removeClass('d-none').addClass('show');\n\t\t\t}\n\t\t},\n\t\tsetDefaultEndTime: function (container) {\n\t\t\tconst self = this;\n\t\t\tif (container.find('.js-autofill').is(':checked')) {\n\t\t\t\tself.getFreeTime(container);\n\t\t\t} else {\n\t\t\t\tif ('1' === $('[name=\"userChangedEndDateTime\"]').val()) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tlet dateStartElement = container.find('[name=\"date_start\"]'),\n\t\t\t\t\tstartTimeElement = container.find('[name=\"time_start\"]'),\n\t\t\t\t\tendTimeElement = container.find('[name=\"time_end\"]'),\n\t\t\t\t\tendDateElement = container.find('[name=\"due_date\"]'),\n\t\t\t\t\tstartDate = dateStartElement.val(),\n\t\t\t\t\tstartTime = startTimeElement.val(),\n\t\t\t\t\tresult = Vtiger_Time_Validator_Js.invokeValidation(startTimeElement);\n\t\t\t\tif (true !== result) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tlet activityType = container.find('[name=\"activitytype\"]');\n\t\t\t\tlet activityTypeValue = activityType.val();\n\t\t\t\tif (activityType.is('[type=\"radio\"]')) {\n\t\t\t\t\tactivityTypeValue = activityType.filter(':checked').val();\n\t\t\t\t}\n\t\t\t\tlet startDateTime = startDate + ' ' + startTime,\n\t\t\t\t\tdateFormat = container.find('[name=\"due_date\"]').data('dateFormat').toUpperCase(),\n\t\t\t\t\ttimeFormat = endTimeElement.data('format'),\n\t\t\t\t\tactivityDurations = JSON.parse(container.find('[name=\"defaultOtherEventDuration\"]').val()),\n\t\t\t\t\tminutes = 0;\n\t\t\t\tfor (let i in activityDurations) {\n\t\t\t\t\tif (activityDurations[i].activitytype === activityTypeValue) {\n\t\t\t\t\t\tminutes = parseInt(activityDurations[i].duration);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tlet defaultTimeFormat = 'HH:mm';\n\t\t\t\tif (12 === timeFormat) {\n\t\t\t\t\tdefaultTimeFormat = 'hh:mm A';\n\t\t\t\t}\n\t\t\t\tlet endDate = moment(startDateTime, dateFormat + ' ' + defaultTimeFormat).add(minutes, 'minutes');\n\t\t\t\tendDateElement.val(endDate.format(dateFormat));\n\t\t\t\tendTimeElement.val(endDate.format(defaultTimeFormat));\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Function to change the end time based on default call duration\n\t\t */\n\t\tregisterActivityTypeChangeEvent: function (container) {\n\t\t\tconst thisInstance = this;\n\t\t\tcontainer.on('change', '[name=\"activitytype\"]', function (e) {\n\t\t\t\tthisInstance.setDefaultEndTime(container);\n\t\t\t});\n\t\t},\n\t\t/**\n\t\t * Function to change the end time based on default call duration\n\t\t */\n\t\tregisterTimeStartChangeEvent(container) {\n\t\t\tconst thisInstance = this;\n\t\t\tcontainer.find('input[name=\"time_start\"]').on('change', function (e) {\n\t\t\t\tthisInstance.setDefaultEndTime(container);\n\t\t\t});\n\t\t\tcontainer.find('[name=\"date_start\"]').on('change', function (e) {\n\t\t\t\tlet endDateElement = container.find('[name=\"due_date\"]'),\n\t\t\t\t\tstart = thisInstance.getDateInstance(container, 'start'),\n\t\t\t\t\tend = thisInstance.getDateInstance(container, 'end'),\n\t\t\t\t\tdateFormat = CONFIG.dateFormat.toUpperCase();\n\t\t\t\tcontainer.find('.js-autofill').trigger('change');\n\t\t\t\tif (start > end) {\n\t\t\t\t\tend = start;\n\t\t\t\t\tendDateElement.val(moment(end).format(dateFormat));\n\t\t\t\t\tApp.Fields.Date.register(container);\n\t\t\t\t}\n\t\t\t});\n\t\t\tcontainer.find('input[name=\"time_start\"]').on('focus', function (e) {\n\t\t\t\tlet element = $(e.currentTarget);\n\t\t\t\telement.data('prevValue', element.val());\n\t\t\t});\n\t\t\tcontainer.find('input[name=\"time_start\"]').on('blur', function (e, data) {\n\t\t\t\tif (typeof data === 'undefined') {\n\t\t\t\t\tdata = {};\n\t\t\t\t}\n\t\t\t\tif (typeof data.forceChange === 'undefined') {\n\t\t\t\t\tdata.forceChange = false;\n\t\t\t\t}\n\t\t\t\tlet element = $(e.currentTarget);\n\t\t\t\tif (element.val() !== element.data('prevValue') || data.forceChange) {\n\t\t\t\t\te = $.Event('keydown');\n\t\t\t\t\te.which = 13;\n\t\t\t\t\te.keyCode = 13;\n\t\t\t\t\telement.trigger(e);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tregisterEndDateTimeChangeLogger: function (container) {\n\t\t\tcontainer.find('[name=\"time_end\"]').on('change', function (e) {\n\t\t\t\tlet timeElement = jQuery(e.currentTarget);\n\t\t\t\tlet result = Vtiger_Time_Validator_Js.invokeValidation(timeElement);\n\t\t\t\tif (result != true) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tlet timeDateElement = timeElement.closest('.fieldValue').find('[name=\"due_date\"]');\n\t\t\t\tjQuery('[name=\"userChangedEndDateTime\"]').val('1');\n\t\t\t\ttimeDateElement.data('userChangedTime', true);\n\t\t\t});\n\n\t\t\tcontainer.find('[name=\"due_date\"]').on('change', function (e) {\n\t\t\t\tlet dueDateElement = jQuery(e.currentTarget);\n\t\t\t\tlet result = Vtiger_Date_Validator_Js.invokeValidation(dueDateElement);\n\t\t\t\tif (result != true) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tjQuery('[name=\"userChangedEndDateTime\"]').val('1');\n\t\t\t\tdueDateElement.data('userChangedTime', true);\n\t\t\t});\n\t\t},\n\t\t/**\n\t\t *\n\t\t * @returns {String}\n\t\t */\n\t\tgetRule: function () {\n\t\t\tvar form = this.getForm();\n\t\t\tvar freq = form.find('.recurringType').val();\n\t\t\tvar rule = 'FREQ=' + freq;\n\t\t\trule += ';INTERVAL=' + form.find('.repeatFrequency').val();\n\t\t\tvar endValue = form.find('.js-repeat-ui [name=\"calendarEndType\"]:checked').val();\n\t\t\tif (endValue === 'count') {\n\t\t\t\trule += ';COUNT=' + form.find('.countEvents').val();\n\t\t\t} else if (endValue === 'until') {\n\t\t\t\tlet date = App.Fields.Date.dateToDbFormat(App.Fields.Date.getDateInstance(form.find('.calendarUntil').val()));\n\t\t\t\trule += ';UNTIL=' + date.replace(/-/gi, '') + 'T235959';\n\t\t\t}\n\t\t\tif (freq === 'WEEKLY') {\n\t\t\t\tvar checkedElements = [];\n\t\t\t\tform.find('.repeatWeekUI [type=\"checkbox\"]').each(function () {\n\t\t\t\t\tvar currentTarget = $(this);\n\t\t\t\t\tif (currentTarget.is(':checked')) {\n\t\t\t\t\t\tcheckedElements.push(currentTarget.val());\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif (checkedElements.length > 0) {\n\t\t\t\t\trule += ';BYDAY=' + checkedElements.join(',');\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (freq === 'MONTHLY') {\n\t\t\t\tconst dateInstance = App.Fields.Date.getDateInstance(form.find('[name=\"date_start\"]').val());\n\t\t\t\tlet dayOfMonth = dateInstance.getDate();\n\t\t\t\tif (form.find('.calendarMontlyType:checked').val() == 'DAY') {\n\t\t\t\t\tlet dayOfWeekLabel = '';\n\t\t\t\t\tswitch (dateInstance.getDay()) {\n\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\tdayOfWeekLabel = 'SU';\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\tdayOfWeekLabel = 'MO';\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\tdayOfWeekLabel = 'TU';\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\tdayOfWeekLabel = 'WE';\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 4:\n\t\t\t\t\t\t\tdayOfWeekLabel = 'TU';\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 5:\n\t\t\t\t\t\t\tdayOfWeekLabel = 'FR';\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 6:\n\t\t\t\t\t\t\tdayOfWeekLabel = 'SA';\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\trule += ';BYDAY=' + (parseInt((dayOfMonth - 1) / 7) + 1) + dayOfWeekLabel;\n\t\t\t\t} else {\n\t\t\t\t\trule += ';BYMONTHDAY=' + dayOfMonth;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rule;\n\t\t},\n\t\t/**\n\t\t * This function will register the submit event on form\n\t\t * @param {jQuery} form\n\t\t */\n\t\tregisterFormSubmitEvent: function (form) {\n\t\t\tvar thisInstance = this;\n\t\t\tvar lockSave = true;\n\t\t\tif (app.getRecordId()) {\n\t\t\t\tform.on(Vtiger_Edit_Js.recordPreSave, function (e) {\n\t\t\t\t\tif (lockSave && form.find('input[name=\"reapeat\"]').is(':checked')) {\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\tapp.showModalWindow(form.find('.typeSavingModal').clone(), function (container) {\n\t\t\t\t\t\t\tcontainer.find('.typeSavingBtn').on('click', function (e) {\n\t\t\t\t\t\t\t\tvar currentTarget = $(e.currentTarget);\n\t\t\t\t\t\t\t\tform.find('[name=\"typeSaving\"]').val(currentTarget.data('value'));\n\t\t\t\t\t\t\t\tapp.hideModalWindow();\n\t\t\t\t\t\t\t\tlockSave = false;\n\t\t\t\t\t\t\t\tform.submit();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tform.on('submit', function (e) {\n\t\t\t\tconst recurringCheck = form.find('input[name=\"reapeat\"]').is(':checked');\n\t\t\t\tif (recurringCheck) {\n\t\t\t\t\tif (app.getRecordId() && lockSave) {\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\tform.find('[name=\"recurrence\"]').val(thisInstance.getRule());\n\t\t\t\t}\n\t\t\t\tlet rows = form.find('.js-participants-content .js-participant-row');\n\t\t\t\tlet invitees = [];\n\t\t\t\trows.each(function (index, domElement) {\n\t\t\t\t\tlet row = $(domElement);\n\t\t\t\t\tif (row.data('email')) {\n\t\t\t\t\t\tinvitees.push([row.data('email'), row.data('crmid'), row.data('ivid'), row.data('name')]);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t$('<input type=\"hidden\" name=\"inviteesid\" />').appendTo(form).val(JSON.stringify(invitees));\n\t\t\t});\n\t\t},\n\t\tgetFreeTime: function (container) {\n\t\t\tlet ownerId = container.find('[name=\"assigned_user_id\"], [data-element-name=\"assigned_user_id\"]');\n\t\t\tif (ownerId.length === 0 || !ownerId.val()) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet timeStart = container.find('[name=\"time_start\"], [data-element-name=\"time_start\"]');\n\t\t\tlet timeEnd = container.find('[name=\"time_end\"], [data-element-name=\"time_end\"]');\n\t\t\tlet dateStart = container.find('[name=\"date_start\"], [data-element-name=\"date_start\"]');\n\t\t\tlet params = {\n\t\t\t\tmodule: 'Calendar',\n\t\t\t\taction: 'GetFreeTime',\n\t\t\t\tdateStart: dateStart.val(),\n\t\t\t\townerId: ownerId.val(),\n\t\t\t\tactivitytype: container.find('[name=\"activitytype\"]').val()\n\t\t\t};\n\t\t\tlet progress = $.progressIndicator({ position: 'html', blockInfo: { enabled: true } });\n\t\t\tAppConnector.request(params).done(function (data) {\n\t\t\t\tprogress.progressIndicator({ mode: 'hide' });\n\t\t\t\tif (data.result.date_start !== null) {\n\t\t\t\t\ttimeStart.val(data.result.time_start);\n\t\t\t\t\ttimeEnd.val(data.result.time_end);\n\t\t\t\t\tdateStart.val(data.result.date_start);\n\t\t\t\t\tcontainer.find('[name=\"due_date\"]').val(data.result.date_start);\n\t\t\t\t} else {\n\t\t\t\t\tapp.showNotify({\n\t\t\t\t\t\ttext: app.vtranslate('JS_ERROR_MAX_VALUE'),\n\t\t\t\t\t\ttype: 'error'\n\t\t\t\t\t});\n\t\t\t\t\tcontainer.find('.js-autofill').prop('checked', false).trigger('change');\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tregisterAutoFillHours: function (container) {\n\t\t\tconst thisInstance = this;\n\t\t\tlet allDay = container.find('[name=\"allday\"]'),\n\t\t\t\ttimeStart = container.find('[name=\"time_start\"]'),\n\t\t\t\ttimeEnd = container.find('[name=\"time_end\"]'),\n\t\t\t\tdateEnd = container.find('[name=\"due_date\"]'),\n\t\t\t\tautoFill = container.find('.js-autofill');\n\t\t\tcontainer.find('.js-autofill__icon').on('click', function (e) {\n\t\t\t\tif (autoFill.is(':checked')) {\n\t\t\t\t\t$(e.currentTarget).closest('.input-group-text').removeClass('bg-color-blue-700').removeClass('text-white');\n\t\t\t\t\tautoFill.prop('checked', false).trigger('change');\n\t\t\t\t} else {\n\t\t\t\t\t$(e.currentTarget).closest('.input-group-text').addClass('bg-color-blue-700').addClass('text-white');\n\t\t\t\t\tautoFill.prop('checked', true).trigger('change');\n\t\t\t\t}\n\t\t\t});\n\t\t\tcontainer.find('.js-autofill').on('change', function (e) {\n\t\t\t\tlet currentTarget = $(e.currentTarget);\n\t\t\t\tif (currentTarget.is(':checked')) {\n\t\t\t\t\tcontainer.find('.js-autofill').prop('checked', true);\n\t\t\t\t\tthisInstance.getFreeTime(container);\n\t\t\t\t\ttimeStart.attr('readonly', 'readonly');\n\t\t\t\t\ttimeEnd.attr('readonly', 'readonly');\n\t\t\t\t\ttimeStart.clockpicker('remove');\n\t\t\t\t\ttimeEnd.clockpicker('remove');\n\t\t\t\t\tallDay.attr('disabled', 'disabled');\n\t\t\t\t\tallDay.prop('checked', false);\n\t\t\t\t\tallDay.trigger('change');\n\t\t\t\t\tdateEnd.attr('readonly', 'readonly');\n\t\t\t\t} else {\n\t\t\t\t\tcontainer.find('.js-autofill').prop('checked', false);\n\t\t\t\t\tallDay.removeAttr('disabled');\n\t\t\t\t\ttimeStart.removeAttr('readonly');\n\t\t\t\t\ttimeEnd.removeAttr('readonly');\n\t\t\t\t\tdateEnd.removeAttr('readonly');\n\t\t\t\t\tapp.registerEventForClockPicker(timeStart);\n\t\t\t\t\tapp.registerEventForClockPicker(timeEnd);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tregisterMarkAsCompletedBtn: function (container) {\n\t\t\tcontainer.find('.js-btn--mark-as-completed').on('click', function () {\n\t\t\t\tconst self = $(this);\n\t\t\t\tif (self.hasClass('active')) {\n\t\t\t\t\tcontainer.find('.js-completed').remove();\n\t\t\t\t} else {\n\t\t\t\t\tcontainer.append(\n\t\t\t\t\t\t'<input class=\"js-completed\" type=hidden name=\"activitystatus\" value=\"PLL_COMPLETED\" data-js=\"remove\">'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tregisterBasicEvents: function (container) {\n\t\t\tthis._super(container);\n\t\t\tthis.toggleTimesInputs(container);\n\t\t\tthis.registerTimesInputs(container);\n\t\t\tthis.registerTimeStartChangeEvent(container);\n\t\t\tthis.registerActivityTypeChangeEvent(container);\n\t\t\tthis.registerEndDateTimeChangeLogger(container);\n\t\t\tthis.registerAutoFillHours(container);\n\t\t\tthis.registerMarkAsCompletedBtn(container);\n\t\t\tthis.registerInviteEvent(container);\n\t\t\tthis.registerAddInvitation(container);\n\t\t\tthis.registerFormSubmitEvent(container);\n\t\t},\n\t\ttoggleTimesInputs: function (container) {\n\t\t\tcontainer.find(':checkbox').on('change', function () {\n\t\t\t\tvar checkboxName = $(this).attr('name');\n\t\t\t\tif ('allday' == checkboxName) {\n\t\t\t\t\tvar checkboxIsChecked = $(this).is(':checked');\n\t\t\t\t\tif (!container.find('#quickCreate').length) {\n\t\t\t\t\t\tif (checkboxIsChecked) {\n\t\t\t\t\t\t\tcontainer.find('.time').hide();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tcontainer.find('.time').show();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tregisterTimesInputs: function (container) {\n\t\t\tvar allday = container.find('[name=\"allday\"]:checkbox');\n\t\t\tif (allday.prop('checked')) {\n\t\t\t\tcontainer.find('.time').hide();\n\t\t\t}\n\t\t},\n\t\tgetDateInstance: function (container, type) {\n\t\t\tvar startDateElement = container.find('[name=\"date_start\"]');\n\t\t\tvar endDateElement = container.find('[name=\"due_date\"]');\n\t\t\tvar endTimeElement = container.find('[name=\"time_end\"]');\n\t\t\tvar startTimeElement = container.find('[name=\"time_start\"]');\n\t\t\tvar startDate = startDateElement.val();\n\t\t\tvar startTime = startTimeElement.val();\n\t\t\tvar endTime = endTimeElement.val();\n\t\t\tvar endDate = endDateElement.val();\n\t\t\tvar dateFormat = CONFIG.dateFormat;\n\t\t\tif (type == 'start') {\n\t\t\t\treturn App.Fields.Date.getDateInstance(startDate + ' ' + startTime, dateFormat);\n\t\t\t}\n\t\t\tif (type == 'end') {\n\t\t\t\treturn App.Fields.Date.getDateInstance(endDate + ' ' + endTime, dateFormat);\n\t\t\t}\n\t\t},\n\t\temailExists(email) {\n\t\t\temail = email.toLowerCase();\n\t\t\tlet recordExist = false;\n\t\t\tthis.getForm()\n\t\t\t\t.find('.js-participants-content')\n\t\t\t\t.find('.js-participant-row')\n\t\t\t\t.each((index, element) => {\n\t\t\t\t\tif ($(element).data('email').toLowerCase() === email) {\n\t\t\t\t\t\trecordExist = true;\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\treturn recordExist;\n\t\t},\n\t\tregisterAddInvitation(container) {\n\t\t\tcontainer.find('.js-btn-add-invitation').on('click', (e) => {\n\t\t\t\tlet progressIndicatorElement = $.progressIndicator();\n\t\t\t\tapp.showModalWindow(null, 'index.php?module=Calendar&view=InviteEmail', (data) => {\n\t\t\t\t\tdata.find('.js-modal__save').on('click', (e) => {\n\t\t\t\t\t\tlet email = data.find('.js-invite-email-input').val();\n\t\t\t\t\t\tlet nameAttendee = data.find('.js-invite-name-input').val();\n\t\t\t\t\t\tlet participantsContent = container.find('.js-participants-content');\n\t\t\t\t\t\tlet formEmail = data.find('.js-form');\n\t\t\t\t\t\tformEmail.validationEngine(app.validationEngineOptions);\n\t\t\t\t\t\tif (formEmail.validationEngine('validate')) {\n\t\t\t\t\t\t\tlet participantRow = participantsContent.find('.d-none .js-participant-row').clone(true, true);\n\t\t\t\t\t\t\tparticipantRow.data('crmid', 0);\n\t\t\t\t\t\t\tparticipantRow.data('email', email);\n\t\t\t\t\t\t\tif (nameAttendee) {\n\t\t\t\t\t\t\t\tparticipantRow.find('.js-participant-name').data('content', nameAttendee).text(nameAttendee);\n\t\t\t\t\t\t\t\tparticipantRow.data('name', nameAttendee);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tparticipantRow.find('.js-participant-name').data('content', email).text(email);\n\t\t\t\t\t\t\t\tparticipantRow.data('name', '');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tparticipantsContent.append(participantRow);\n\t\t\t\t\t\t\tapp.hideModalWindow();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tprogressIndicatorElement.progressIndicator({ mode: 'hide' });\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\tregisterInviteEvent: function (editViewForm) {\n\t\t\tthis.registerRow(editViewForm);\n\t\t\tlet participantsContent = editViewForm.find('.js-participants-content');\n\t\t\tlet participantsSearch = editViewForm.find('.js-participants-search');\n\t\t\t$.widget('custom.ivAutocomplete', $.ui.autocomplete, {\n\t\t\t\t_create: function () {\n\t\t\t\t\tthis._super();\n\t\t\t\t\tthis.widget().menu('option', 'items', '> :not(.ui-autocomplete-category)');\n\t\t\t\t},\n\t\t\t\t_renderMenu: function (ul, items) {\n\t\t\t\t\tlet that = this,\n\t\t\t\t\t\tcurrentCategory = '';\n\t\t\t\t\t$.each(items, function (_index, item) {\n\t\t\t\t\t\tif (item.category != currentCategory) {\n\t\t\t\t\t\t\tul.append(\"<li class='ui-autocomplete-category'>\" + item.category + '</li>');\n\t\t\t\t\t\t\tcurrentCategory = item.category;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthat._renderItemData(ul, item);\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t_renderItemData: function (ul, item) {\n\t\t\t\t\treturn this._renderItem(ul, item).data('ui-autocomplete-item', item);\n\t\t\t\t},\n\t\t\t\t_renderItem: function (ul, item) {\n\t\t\t\t\treturn $('<li>').data('item.autocomplete', item).append($('<a></a>').html(item.label)).appendTo(ul);\n\t\t\t\t}\n\t\t\t});\n\t\t\tparticipantsSearch.ivAutocomplete({\n\t\t\t\tdelay: '600',\n\t\t\t\tminLength: '3',\n\t\t\t\tsource: (request, response) => {\n\t\t\t\t\tAppConnector.request({\n\t\t\t\t\t\tmodule: 'Calendar',\n\t\t\t\t\t\taction: 'Invitees',\n\t\t\t\t\t\tmode: 'find',\n\t\t\t\t\t\tvalue: request.term\n\t\t\t\t\t}).done((result) => {\n\t\t\t\t\t\tlet reponseDataList = result.result;\n\t\t\t\t\t\tif (reponseDataList.length <= 0) {\n\t\t\t\t\t\t\treponseDataList.push({\n\t\t\t\t\t\t\t\tlabel: app.vtranslate('JS_NO_RESULTS_FOUND'),\n\t\t\t\t\t\t\t\ttype: 'no results',\n\t\t\t\t\t\t\t\tcategory: ''\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\tresponse(reponseDataList);\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\tselect: (event, ui) => {\n\t\t\t\t\tlet selected = ui.item;\n\t\t\t\t\t//To stop selection if no results is selected\n\t\t\t\t\tif (typeof selected.type !== 'undefined' && selected.type == 'no results') {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tlet recordExist = true;\n\t\t\t\t\tparticipantsContent.find('.js-participant-row').each(function (index) {\n\t\t\t\t\t\tif ($(this).data('crmid') == selected.id) {\n\t\t\t\t\t\t\trecordExist = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tif (recordExist) {\n\t\t\t\t\t\tlet participantRow = participantsContent.find('.d-none .js-participant-row').clone(true, true);\n\t\t\t\t\t\tVtiger_Index_Js.getEmailFromRecord(selected.id, selected.module).done((email) => {\n\t\t\t\t\t\t\tparticipantRow.data('crmid', selected.id);\n\t\t\t\t\t\t\tparticipantRow.data('email', email);\n\t\t\t\t\t\t\tparticipantRow\n\t\t\t\t\t\t\t\t.find('.js-participant-name')\n\t\t\t\t\t\t\t\t.data('content', selected.fullLabel + email)\n\t\t\t\t\t\t\t\t.text(selected.label);\n\t\t\t\t\t\t\tparticipantRow\n\t\t\t\t\t\t\t\t.find('.js-participant-icon .c-badge__icon')\n\t\t\t\t\t\t\t\t.removeClass('fas fa-envelope')\n\t\t\t\t\t\t\t\t.addClass('yfm-' + selected.module);\n\t\t\t\t\t\t\tparticipantsContent.append(participantRow);\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\tapp.showNotify({\n\t\t\t\t\t\t\ttext: app.vtranslate('JS_DUPLICATE_RECORD') + ': ' + selected.fullLabel,\n\t\t\t\t\t\t\ttype: 'info'\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tclose: (event, ui) => {\n\t\t\t\t\tparticipantsSearch.val('');\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tregisterRow(row) {\n\t\t\trow.on('click', '.js-participant-remove', (e) => {\n\t\t\t\t$(e.target).closest('.js-participant-row').remove();\n\t\t\t});\n\t\t},\n\t\tregisterEvents() {\n\t\t\tif (!this.proceedRegisterEvents()) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.registerReminderFieldCheckBox();\n\t\t\tthis.registerRecurrenceFieldCheckBox();\n\t\t\tthis.registerRecurringTypeChangeEvent();\n\t\t\tthis._super();\n\t\t}\n\t}\n);\n"],"names":["Vtiger_Edit_Js","currencyInstance","checkEmail","field","Calendar_Edit_Js","emailExists","val","app","vtranslate","init","registerReminderFieldCheckBox","element","getForm","find","on","rowElement","closest","is","removeClass","addClass","change","registerRecurrenceFieldCheckBox","form","e","repeatUI","container","$","currentTarget","attr","removeAttr","registerRecurringTypeChangeEvent","thisInstance","changeRecurringTypesUIStyles","jQuery","value","recurringType","setDefaultEndTime","self","getFreeTime","dateStartElement","startTimeElement","endTimeElement","endDateElement","startDate","startTime","result","Vtiger_Time_Validator_Js","invokeValidation","activityType","activityTypeValue","filter","dateFormat","data","toUpperCase","timeFormat","activityDurations","JSON","parse","minutes","i","activitytype","parseInt","duration","defaultTimeFormat","endDate","moment","add","format","registerActivityTypeChangeEvent","registerTimeStartChangeEvent","start","getDateInstance","end","CONFIG","trigger","App","Fields","Date","register","forceChange","Event","which","keyCode","registerEndDateTimeChangeLogger","timeElement","timeDateElement","dueDateElement","Vtiger_Date_Validator_Js","getRule","freq","rule","endValue","date","dateToDbFormat","replace","checkedElements","each","push","length","join","dateInstance","dayOfMonth","getDate","dayOfWeekLabel","getDay","registerFormSubmitEvent","lockSave","getRecordId","recordPreSave","preventDefault","showModalWindow","clone","hideModalWindow","submit","recurringCheck","rows","invitees","index","domElement","row","appendTo","stringify","ownerId","timeStart","timeEnd","dateStart","params","module","action","progress","progressIndicator","position","blockInfo","enabled","AppConnector","request","done","mode","date_start","showNotify","text","type","prop","time_start","time_end","registerAutoFillHours","allDay","dateEnd","autoFill","clockpicker","registerEventForClockPicker","registerMarkAsCompletedBtn","hasClass","remove","append","registerBasicEvents","_super","toggleTimesInputs","registerTimesInputs","registerInviteEvent","registerAddInvitation","checkboxName","checkboxIsChecked","hide","show","allday","startDateElement","endTime","email","toLowerCase","recordExist","progressIndicatorElement","nameAttendee","participantsContent","formEmail","validationEngine","validationEngineOptions","participantRow","editViewForm","registerRow","participantsSearch","widget","ui","autocomplete","_create","menu","_renderMenu","ul","items","that","currentCategory","_index","item","category","_renderItemData","_renderItem","html","label","ivAutocomplete","delay","minLength","source","response","term","reponseDataList","select","event","selected","id","Vtiger_Index_Js","getEmailFromRecord","fullLabel","close","target","registerEvents","proceedRegisterEvents"],"mappings":"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"}