var Bizgaze; (function (Bizgaze) { let Apps; (function (Apps) { let PM; (function (PM) { let Components; (function (Components) { class SessionLog extends Unibase.Platform.Core.BaseComponent { constructor() { super(); this._taskManager = PM.Managers.TaskManager.Instance(); } cssFiles() { return ['']; } jsFiles() { return ['apps/pm/managers/taskmanager.js']; } html(id, containerid) { let html = `
  • Start Time
    End Time
    Duration
`; return html; } load(id, containerid, callback) { var instance = this; $("#txt_LogHourEndDate").change(function () { instance.calculateDateDiff(); }); instance.checkPermission(); } addLogHourRow(isedit) { var instance = this; var predivhtml = ''; $(".divAddLogHours_0").parent().before(predivhtml); if (isedit) $("#li_AddLogHours").removeClass('hidden'); $("#txt_LogHourEndDate,#txt_LogHourStartDate").change(function () { instance.calculateDateDiff(); }); $('.datepicker-input').daterangepicker({ singleDatePicker: true, showDropdowns: true, minYear: 1901, locale: { format: 'DD/MM/YYYY HH:mm', }, }); instance.checkProjectDates(); } checkProjectDates() { var instance = this; $('#txt_LogHourEndDate').val(moment(new Date($.now())).format("DD/MM/YYYY HH:mm")); $('#txt_LogHourStartDate').val(moment(new Date($.now())).format("DD/MM/YYYY HH:mm")); instance.calculateDateDiff(); $('#txt_LogHourStartDate').daterangepicker({ timePicker24Hour: true, timePicker: true, locale: { format: 'DD/MM/YYYY HH:mm', }, singleDatePicker: true, showDropdowns: true, }); $('#txt_LogHourEndDate').daterangepicker({ timePicker24Hour: true, timePicker: true, locale: { format: 'DD/MM/YYYY HH:mm', }, singleDatePicker: true, showDropdowns: true, }); } calculateDateDiff() { var stdate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime($("#txt_LogHourStartDate").val()); var endate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime($("#txt_LogHourEndDate").val()); var diffDays = 0; var diffHrs = 0; var diffMins = 0; var diffSecs = 0; var today = new Date(stdate); var Christmas = new Date(endate); var diffMs = (Number(Christmas) - Number(today)); if (diffMs != NaN) { diffDays = Math.floor(diffMs / 86400000); diffHrs = Math.floor((diffMs) / 3600000); diffMins = Math.round(((diffMs % 86400000) % 3600000) / 60000); diffSecs = Math.round((((diffMs % 86400000) % 3600000) / 60000) / 60000); } } checkPermission() { var instance = this; instance._taskManager.getLogHourPermission().then(function (response) { if (response.result == '5' || Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin == true) { $(".manageloghour").removeClass('hidden'); } else { $(".manageloghour").addClass('hidden'); } }, function (response) { MessageHelper.Instance().showError(response, ''); }); } getProjectDetails(_projectId) { var instance = this; var projectendDate = ''; let _dateTimeHelper = Unibase.Platform.Helpers.DateTimeHelper.Instance(); if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length != 0) { _projectId = (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_projectid").Value); } instance._taskManager.getProjectDetails(Number(_projectId)).then(function (response) { if (response.result != null) { $(".date_startdate").val(_dateTimeHelper.formatLocalDate1(response.result.StartDate, '')); projectendDate = _dateTimeHelper.formatLocalDate1(response.result.EndDate, ''); if (projectendDate == '01/01/1901') { $('.date_startdate').daterangepicker({ timePicker24Hour: true, locale: { format: 'DD/MM/YYYY', }, singleDatePicker: true, autoUpdateInput: true, minDate: _dateTimeHelper.formatLocalDate1(response.result.StartDate, ''), }); $('.date_enddate').daterangepicker({ timePicker24Hour: true, locale: { format: 'DD/MM/YYYY', }, singleDatePicker: true, minDate: _dateTimeHelper.formatLocalDate1(response.result.StartDate, ''), }); } else { $(".date_enddate").val(_dateTimeHelper.formatLocalDate1(response.result.EndDate, '')); } if (response.result.EndDate != null && projectendDate != '01/01/1901') { $('.date_startdate').daterangepicker({ timePicker24Hour: true, locale: { format: 'DD/MM/YYYY', }, singleDatePicker: true, autoUpdateInput: true, minDate: _dateTimeHelper.formatLocalDate1(response.result.StartDate, ''), maxDate: _dateTimeHelper.formatLocalDate1(response.result.EndDate, '') }); $('.date_enddate').daterangepicker({ timePicker24Hour: true, locale: { format: 'DD/MM/YYYY', }, singleDatePicker: true, autoUpdateInput: true, minDate: _dateTimeHelper.formatLocalDate1(response.result.StartDate, ''), maxDate: _dateTimeHelper.formatLocalDate1(response.result.EndDate, ''), }); } $('.date_startdate').on('apply.daterangepicker', function (ev, picker) { var date = $(this).val(); if (projectendDate != "" && projectendDate == '01/01/1901') { $('.date_enddate').daterangepicker({ timePicker24Hour: true, locale: { format: 'DD/MM/YYYY', }, singleDatePicker: true, minDate: _dateTimeHelper.formatLocalDate1(date, ''), maxDate: projectendDate }); } else { $('.date_enddate').daterangepicker({ timePicker24Hour: true, locale: { format: 'DD/MM/YYYY', }, singleDatePicker: true, minDate: _dateTimeHelper.formatLocalDate1(date, ''), }); } }); } }); } taskstagechange() { $('.date_completedate').val(moment(new Date($.now())).format("DD/MM/YYYY HH:mm")); $('.date_completedate').daterangepicker({ timePicker24Hour: true, timePicker: true, locale: { format: 'DD/MM/YYYY HH:mm', }, singleDatePicker: true, showDropdowns: true, }); let completeddate = $(".date_completedate").val(); completeddate = moment($(".date_completedate").val(), "DD/MM/YYYY HH:mm").format('YYYY/MM/DD HH:mm'); $(".hfdate_completedate").val(completeddate.toString()); setTimeout(function () { $('.date_completedate').on('apply.daterangepicker', function (ev, picker) { let completeddate = $(".date_completedate").val(); completeddate = moment($(".date_completedate").val(), "DD/MM/YYYY HH:mm").format('YYYY/MM/DD HH:mm'); $(".hfdate_completedate").val(completeddate.toString()); }); }, 2000); } static Instance() { if (this.instance == undefined) { this.instance = new SessionLog(); } return this.instance; } } Components.SessionLog = SessionLog; })(Components = PM.Components || (PM.Components = {})); })(PM = Apps.PM || (Apps.PM = {})); })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {})); })(Bizgaze || (Bizgaze = {}));