var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let PM;
(function (PM) {
let Components;
(function (Components) {
class TaskProgress extends Unibase.Platform.Core.BaseComponent {
cssFiles() {
return [];
}
jsFiles() {
return ['apps/pm/managers/taskmanager.js'];
}
html(id, containerid) {
let html = `
`;
$("." + containerid).html(html);
return "";
}
init(containerid) {
var instance = this;
var id = 0;
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
for (let obj of Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters) {
if (obj.Key === "hf_" + InstalledAppId + "_recordid") {
id = Number(obj.Value);
}
}
instance.load(id, containerid, null);
}
load(id, containerid, callback) {
this.html(id, containerid);
var taskid = Number(id);
Bizgaze.Apps.PM.Components.TaskProgress.Instance().LoadProgressBar(taskid);
}
LoadProgressBar(taskid) {
var instance = this;
instance.fileCacheHelper.loadJsFile("apps/pm/managers/taskmanager.js", function () {
Bizgaze.Apps.PM.Managers.TaskManager.Instance().getTasks(taskid).then(function (response) {
var data = JSON.parse(response.result)[0];
instance.refstatusId = data.refstatusid;
instance.percent = data.percentage;
var html = "";
$(".pm_taskList").html('');
$(".pm-task-list").html('');
if (response.result != null) {
html += '' +
'' +
'
' +
'
' +
'
' +
'' +
'
' +
'
' +
'
' +
'
' +
'
' +
'' +
'
' +
'
' +
'
' +
'';
$(".pm-task-item:last").before(html);
Bizgaze.Apps.PM.Components.TaskProgress.Instance().loadProgress(data.taskid);
}
$('.pmTask_Slider').each(function () {
var element = $(this).find('.hdnTaskId');
var taskId = $(element).data('taskid');
var handle = $("#custom-handle-" + taskId + "");
var count = 0;
$(this).slider({
min: 0,
max: 100,
step: 1,
create: function () {
handle.text($(this).slider("value"));
},
slide: function (event, ui) {
handle.text(ui.value);
},
change: function (event, ui) {
}
});
});
});
});
}
loadProgress(TaskId) {
var element = $('.pm_taskList');
var ele = element.find(".taskPercentage-" + TaskId + "");
var label = ele.find(".progress-label");
this.percent = ele.data('taskpercentage');
element.find(".taskProgress-" + TaskId + "").progressbar({
value: this.percent,
});
if (this.percent > 50) {
$(".progress-label").css({ 'color': 'white' });
}
label.text(this.percent + '%');
var styles = {
backgroundColor: "green",
height: "50px"
};
$(".taskProgress-" + TaskId + "").find(".ui-progressbar-value").css(styles);
element.find(".pmTask_Slider-" + TaskId + "").slider({
min: 0,
max: 100,
step: 1,
value: this.percent,
range: "min",
});
var refstatusid = this.refstatusId;
if (refstatusid == 3 || refstatusid == 6)
$("#ProgressButton").prop("disabled", false);
else
$("#ProgressButton").prop("disabled", true);
}
toggleProgress(TaskId) {
$('.showProgressBar_' + TaskId).toggleClass('hidden');
$('.editProgressBar_' + TaskId).toggleClass('hidden');
$('.inpTaskCompletedDate-' + TaskId).toggleClass('hidden');
$('.spnTaskCompletedDate-' + TaskId).toggleClass('hidden');
var element = $('.pm_taskList');
var ele = element.find(".taskPercentage-" + TaskId + "");
var label1 = ele.find(".slider-label");
var percentage = this.percent;
var sliderstyle = {
backgroundColor: "green",
cursor: "pointer"
};
$(".ui-state-default").css(sliderstyle);
$(".ui-slider-range").css("background-color", "green");
$(".ui-slider").css("height", "22px");
if (percentage > 50) {
$(".slider-label").css({ 'color': 'white' });
}
label1.text(percentage + '%');
var ele1 = $('.pm_taskList').parent().parent();
var element1 = ele1.find('.pmTask_Slider');
element1.slider({
min: 0,
max: 100,
step: 1,
value: percentage,
range: "min",
create: function (event, ui) {
var tooltip = $('');
$(event.target).find('.ui-slider-handle').append(tooltip);
},
slide: function (event, ui) {
$(ui.handle).find('.tooltip').text(ui.value);
},
change: function (event, ui) {
var currentDate = new Date($.now());
var postData = {
taskid: TaskId,
percentage: ui.value,
timerstoppeddate: new Date(),
timer: '',
pausedate: new Date(),
istaskpause: false,
isresumetask: false,
istaskstopped: false,
};
Bizgaze.Apps.PM.Managers.TaskManager.Instance().updateTaskPercentage(postData).then(function (response) {
Bizgaze.Apps.PM.Components.TaskProgress.Instance().LoadProgressBar(TaskId);
});
}
});
}
static Instance() {
if (this.instance === undefined) {
this.instance = new TaskProgress();
}
return this.instance;
}
}
Components.TaskProgress = TaskProgress;
})(Components = PM.Components || (PM.Components = {}));
})(PM = Apps.PM || (Apps.PM = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));