Built files from Bizgaze WebServer
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

timetracker.min.js 19KB

12345678910111213141516171819202122
  1. var seconds=0,Clock={totalSeconds:0,interval:0,start:function(){if(Clock.interval!==undefined){var n=this;function t(n){return n>9?n:"0"+n}Clock.interval!==undefined&&(Clock.interval=setInterval(function(){var i,r;n.totalSeconds+=1;$("#startButton").is(":visible")!=!0&&(document.getElementsByClassName("startButton Active").length>0?($("#startButton").removeClass("startButton Active"),n.totalSeconds=0,$("#hours").text(t(Math.floor(n.totalSeconds/3600))),$("#min").text(t(Math.floor(n.totalSeconds/60%60))),$("#sec").text(t(n.totalSeconds%60)),i=new Date($.now()),i=new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(i)),Unibase.Apps.PM.Components.TimeTracker.Instance().saveTaskSession(i,null,!1,!1,!1,!1)):(document.getElementsByClassName("resumeButton Active").length>0&&($("#startButton").removeClass("resumeButton Active"),r=Number(Number($(".beforeTimer").text().split(":")[0])*3600)+Number($(".beforeTimer").text().split(":")[1])*60+Number($(".beforeTimer").text().split(":")[2]),r<Number(n.totalSeconds-2)&&(n.totalSeconds=r)),$("#hours").text(t(Math.floor(n.totalSeconds/3600))),$("#min").text(t(Math.floor(n.totalSeconds/60%60))),$("#sec").text(t(n.totalSeconds%60))))},1e3))}},reset:function(){Clock.totalSeconds=null;clearInterval(Clock.interval);$("#hours").text("00");$("#min").text("00");$("#sec").text("00");delete Clock.interval},pause:function(){clearInterval(Clock.interval);delete Clock.interval},resume:function(){Clock.start()},stop:function(){var n=this;Clock.reset()},restart:function(){Clock.reset();Clock.start()}},Unibase;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){class i extends n.Platform.Core.BaseComponent{constructor(){super()}cssFiles(){return[""]}jsFiles(){return["platform/pm/managers/taskmanager.js","platform/pm/components/sessionlog.js","platform/pm/infos/task.js","platform/pm/infos/sessionlog.js","platform/pm/requests/task.js","platform/pm/requests/sessionlog.js"]}init(t){var i=this,r,u,f;i.html(r,t);$("#startButton").attr("readonly","true");document.addEventListener("click",function(){if(($(this)[0].activeElement.className=="d-flex h-60p align-items-center nav-link active"||$(this)[0].activeElement.className=="btn detail-close mr-auto btn-light btn-sm"||$(this)[0].activeElement.className=="d-flex h-60p align-items-center nav-link")&&$("#pauseButton").is(":visible")==!0&&$("#stopButton").is(":visible")==!0){var t=new Date($.now());t=new Date(n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(t));i.ResumeTask(t)}},!0);r="";u=n.Themes.Providers.DetailHelper.installedAppId;i.InstalledAppId=u;for(let n of n.Themes.Providers.Detail_Settings.Instance().InputParameters)n.Key==="hf_"+u+"_recordid"&&(r=n.Value);f=["apps/pm/managers/taskmanager.js","apps/pm/components/sessionlog.js","apps/pm/infos/task.js","apps/pm/infos/sessionlog.js","apps/pm/requests/task.js","apps/pm/requests/sessionlog.js"];i.fileCacheHelper.loadJsFiles(f,function(){var u=n.Themes.Providers.Detail_Settings.Instance().RecordId;Bizgaze.Apps.PM.Managers.TaskManager.Instance().getTaskDetails(u).then(function(n){var u=JSON.parse(n.result)[0],e;if(i.TaskId=u.taskid,i.Points=u.points,i.RefStatusId=u.refstatusid,u.istaskpause==!0){e=Number(u.timer.split(":")[0])*3600+Number(u.timer.split(":")[1])*60+u.timer.split(":")[2];Clock.totalSeconds=Number(e);var f=u.timer.split(":")[0],o=u.timer.split(":")[1],s=u.timer.split(":")[2];f==undefined&&(f="00:");o==undefined&&(f="00:");s==undefined&&(f="00");$("#stopButton").removeClass("hidden");$("#resumeButton").removeClass("hidden");i.RefStatusId==6?($(".divTimerResume").removeClass("hidden"),$(".starticon").css("color","")):i.RefStatusId==7&&$("#ProgressButton").prop("disabled","disabled")}else if(u.istaskpause==!1&&u.timerstoppeddate.toString()!="[object Object]")$("#stopButton").addClass("hidden"),$("#resumeButton").addClass("hidden"),$("#pauseButton").addClass("hidden");else if(u.istaskpause==!1&&u.timerstoppeddate.toString()=="[object Object]"&&u.timer!="00:00:00"&&u.timer.toString()!="[object Object]"){var f=u.timer.split(":")[0],o=u.timer.split(":")[1],s=u.timer.split(":")[2];f==undefined&&(f="00:");o==undefined&&(f="00:");s==undefined&&(f="00");$("#pauseButton").removeClass("hidden");$("#ProgressButton").prop("disabled",!1)}i.load(r,t,null)})})}html(n,t){let i=`<div class="b-a wrapper"><div class="card"><div id="divTimeTrackerError"></div>
  2. <div class="card-header card-header-action"><span class="" id="hf-widget-title_TimeTracker">Time Tracker</span></div>
  3. <div class="card-body"><div class="row"><div class="col-sm-4 ml-20" style="width:85mm; height:40mm; border:1px solid; background-color: #00acf0; border-radius: 15px; color:white; font-size:15px; font-style:normal;">
  4. <div class="row pt-25"><strong class="pull-left pl-25 pt-0" style="font-size:large">TIMER</strong></div>
  5. <div class="row">
  6. <strong class="pull-left beforeTimer pl-25 pr-15" id="Timer" style="font-size:35px;"><span id="hours">00</span>:<span id="min">00</span>:<span id="sec">00</span></strong>
  7. <a id="startButton" class="divTimerStart btn btn-md">&nbsp;<i class="fa fa-play-circle fa-2x starticon"
  8. aria-hidden="true"></i></a>
  9. <a id="pauseButton" class="divTimerPause hidden btn btn-md">&nbsp;<i class="fa fa-pause-circle-o fa-2x"
  10. aria-hidden="true"></i></a>
  11. <div id="resumeButton" class="divTimerResume hidden btn btn-md">&nbsp;<i class="fa fa-play-circle starticon fa-2x"
  12. aria-hidden="true"></i></div>
  13. <div id="stopButton" class="divTimerStop hidden btn btn-md">&nbsp;<i class="fa fa-stop-circle-o fa-2x" aria-hidden="true"></i></div></div>
  14. <div class="col-xs-5 div_addItems"><a id="btn_additem" title="Show Log" class="default" href="" data-toggle="modal"
  15. data-target="#modalAddItem" data-original-title="Show Log">
  16. <span class="pull-right btn pl-200 pt-2" style="text-decoration:underline;color:white;font-size:large;" onclick="Unibase.Apps.PM.Components.TimeTracker.Instance().showLogDetails();" id="btn_addLog">Log Hours</span></a>
  17. </div></div>
  18. <div class="col-sm-4 ml-20 mt-20 mt-md-0" style="background-color:#7fd5f7;border-radius: 15px;width:85mm; height:40mm;">
  19. <div class="row d-flex mt-20 ml-20">
  20. <span><i class="fa fa-trophy fa-2x" aria-hidden="true" style="color:white"></i></span></div>
  21. <div class="row ml-20"><strong class="pr-15 text-white" style="font-size:40px;" id="txtPoints">
  22. <span>15 pts</span></strong></div></div></div></div></div></div>`;return $("."+t).html(i),""}load(){var t=this,i=n.Themes.Providers.Detail_Settings.Instance().RecordId;$("#txtPoints").text(t.Points+" pts");$("#startButton").click(function(){Bizgaze.Apps.PM.Managers.TaskManager.Instance().getTaskByAssignToAndRefStatus().then(function(n){var i,r,t;if(n.result.toString()!="[]")i="",i=n.result.length==1?""+n.result[0].code+"-"+n.result[0].subject+" is already Inprogress. Would you like to continue":""+n.result.length+" Tasks are inprogress. Would you like to continue",bootbox.confirm({message:i,buttons:{confirm:{label:"Continue",className:"btn-success"},cancel:{label:"Cancel",className:"btn-danger"}},callback:function(n){var i,t;if(n==!0){for($(".divTimerPause").removeClass("hidden"),$(".divTimerStop").removeClass("hidden"),$(".divTimerStart").addClass("hidden"),$("#ProgressButton").prop("disabled",!1),$("#startButton").addClass("startButton Active"),Clock.interval=0,Clock.totalSeconds=0,i=setTimeout(function(){},0),t=0;t<i;t+=1)clearTimeout(t);Clock.start()}}});else{for($(".divTimerPause").removeClass("hidden"),$(".divTimerStop").removeClass("hidden"),$(".divTimerStart").addClass("hidden"),$("#ProgressButton").prop("disabled",!1),$("#startButton").addClass("startButton Active"),Clock.interval=0,Clock.totalSeconds=0,r=setTimeout(function(){},0),t=0;t<r;t+=1)clearTimeout(t);Clock.start()}})});$("#pauseButton").click(function(){$(".divTimerPause").addClass("hidden");$(".divTimerResume").removeClass("hidden");$(".divTimerStop").removeClass("hidden");var i=new Date($.now());i=new Date(n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(i));t.pauseTask(i);Clock.pause()});$("#resumeButton").click(function(){$(".divTimerPause").removeClass("hidden");$(".divTimerStop").removeClass("hidden");$(".divTimerResume").addClass("hidden");seconds=Clock.totalSeconds;var i=new Date($.now()),r=document.getElementsByClassName("resume");r!=undefined&&(Clock.interval=0);$("#resumeButton").addClass("resumeButton Active");Clock.resume();i=new Date(n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(i));t.saveTaskSession(i,null,!1,!1,!1,!1)});$("#stopButton").click(function(){$(".divTimerPause").addClass("hidden");$(".divTimerResume").addClass("hidden");$(".divTimerStop").addClass("hidden");$(".divTimerStart").addClass("hidden");Clock.pause();var i=new Date($.now());i=new Date(n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(i));t.saveTaskSession(i,i,!1,!1,!0,!1)});$("#resetButton").click(function(){Clock.reset()});$("#restartButton").click(function(){Clock.restart()});t=this;window.onbeforeunload=function(){if($("#pauseButton").is(":visible")==!0&&$("#stopButton").is(":visible")==!0){var i=new Date($.now());i=new Date(n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(i));t.ResumeTask(i)}else $("#startButton").is(":visible")!=!0&&t.updateTimer()};window.addEventListener("beforeunload",function(i){var u="o/",r;return(i||window.event).returnValue=u,$("#pauseButton").is(":visible")==!0&&$("#stopButton").is(":visible")==!0?(r=new Date($.now()),r=new Date(n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(r)),t.ResumeTask(r),t.navigationHelper.closePopUp()):$("#startButton").is(":visible")!=!0&&t.updateTimer(),u});t.getTimer(i);t.RefStatusId==3||t.RefStatusId==6?($("#startButton").children.bind("click"),$("#resumeButton").children.bind("click")):($("#startButton").children().bind("click",function(){return!1}),$("#resumeButton").children().bind("click",function(){return!1}),$(".starticon").css("color","#8edde6"),$(".divTimerStop").addClass("hidden"),$("#ProgressButton").prop("disabled","disabled"));t.RefStatusId==3&&t.updateTimer()}saveTaskSession(t,i,r,u,f,e){var o=this,s=!1,h="",c=!1,l=!1,a=0,v;(r||f==!0)&&(h=$(".beforeTimer").text());u&&(c=!0);f&&(l=!0);t=new Date(t);($("#hfTaskSessionId").val()!=""&&$("#hfTaskSessionId").val()!=undefined||e)&&(t=n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime($("#txt_LogHourStartDate").val()),i=n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime($("#txt_LogHourEndDate").val()),s=!0,a=$("#hfTaskSessionId").val());v={taskid:o.TaskId,sessionid:a,startdate:t,enddate:i,timer:h,issessionpause:c,issessionstop:l,ismanual:s,installedappid:o.InstalledAppId,stagestatusid:o.RefStatusId,percentage:0};Bizgaze.Apps.PM.Managers.TaskManager.Instance().saveSessionLog(v).then(function(n){MessageHelper.Instance().showSuccess(n,"");e&&o.refreshLog()},function(){})}updateSessionEnd(n){var t=this,i={taskid:t.TaskId,enddate:n,timer:$(".beforeTimer").text(),percentage:100,sessionid:0,startdate:new Date,issessionpause:!1,issessionstop:!1,ismanual:!1,installedappid:0,stagestatusid:0};Bizgaze.Apps.PM.Managers.TaskManager.Instance().updateSessionLogEndDate(i).then(function(n){MessageHelper.Instance().showSuccess(n,"")},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}pauseTask(n){var t=this,i={taskid:t.TaskId,pausedate:n,timer:$(".beforeTimer").text(),istaskpause:!0,percentage:0,timerstoppeddate:new Date,isresumetask:!1,istaskstopped:!1};Bizgaze.Apps.PM.Managers.TaskManager.Instance().pauseTask(i).then(function(){t.saveTaskSession(null,n,!1,!0,!1,!1)},function(i){t.saveTaskSession(null,n,!1,!0,!1,!1);MessageHelper.Instance().showError(i,"divTimeTrackerError")})}ResumeTask(n){var t=this,i={taskid:t.TaskId,pausedate:n,isresumetask:!0,timer:$(".beforeTimer").text(),istaskpause:!1,percentage:0,timerstoppeddate:new Date,istaskstopped:!1};Bizgaze.Apps.PM.Managers.TaskManager.Instance().resumeTask(i).then(function(){},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}StopTask(n){var t=this,i={taskid:t.TaskId,timerstoppeddate:n,istaskstopped:!0,timer:$(".beforeTimer").text(),istaskpause:!1,percentage:0,pausedate:n,isresumetask:!1};Bizgaze.Apps.PM.Managers.TaskManager.Instance().stopTask(i).then(function(n){MessageHelper.Instance().showSuccess(n,"")},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}getTimer(n){var t=this;Bizgaze.Apps.PM.Managers.TaskManager.Instance().getTimerDetails(n).then(function(n){var i,r,f,u,t;if(n.result!=""&&n!=null)if(i=n.result.split("_"),r=i[0],r=r.replace(/['"]+/g,""),i.length>1)if(r=="False"){for(f=setTimeout(function(){},0),u=0;u<f;u+=1)clearTimeout(u);Clock.totalSeconds=Number(i[1]);Clock.interval=0;Clock.start();$(".divTimerPause").removeClass("hidden");$(".divTimerStop").removeClass("hidden");$(".divTimerStart").addClass("hidden")}else if(r=="NotStarted")$(".divTimerStart").removeClass("hidden"),$(".divTimerPause").addClass("hidden"),$(".divTimerStop").addClass("hidden");else{t=i[1];t=t.replace(/['"]+/g,"");function n(n){return n>9?n:"0"+n}$("#hours").text(n(Math.floor(Number(t)/3600)));$("#min").text(n(Math.floor(Number(t)/60%60)));$("#sec").text(n(parseInt(t)%60));Clock.pause();$(".divTimerStart").addClass("hidden");$("#ProgressButton").addClass("hidden")}else $(".divTimerStart").removeClass("hidden")})}updateTimer(){var r=this,t=new Date($.now()),i;t=new Date(n.Platform.Helpers.DateTimeHelper.Instance().formatServerDateTime(t));i={taskid:r.TaskId,timerstoppeddate:null,timer:$(".beforeTimer").text(),istaskpause:!1,percentage:0,pausedate:new Date,isresumetask:!1,istaskstopped:!1};Bizgaze.Apps.PM.Managers.TaskManager.Instance().updateTimer(i).then(function(){},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}showLogDetails(){var t=this;t.navigationHelper.popup(0,"",Bizgaze.Apps.PM.Components.SessionLog.Instance(),function(){t.refreshLog();t.managePermission()},n.Platform.Helpers.Size.DockLeft)}getTaskSession(t){var i=this;Bizgaze.Apps.PM.Managers.TaskManager.Instance().getSessionLog(t).then(function(i){$("#ul_ShowLog_Details").find(".li-"+t).remove();$("#hfTaskSessionId").val(t);Bizgaze.Apps.PM.Components.SessionLog.Instance().addLogHourRow(!0);$("#txt_LogHourStartDate").val(n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateTimeWithoutSeconds(i.result.startdate));$("#txt_LogHourEndDate").val(n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateTimeWithoutSeconds(i.result.enddate));Bizgaze.Apps.PM.Components.SessionLog.Instance().calculateDateDiff()},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}removeSession(n){var t=this;Bizgaze.Apps.PM.Managers.TaskManager.Instance().deleteSession(n).then(function(n){MessageHelper.Instance().showSuccess(n,"");t.refreshLog()},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}refreshLog(){var t=this,i=t.TaskId;Bizgaze.Apps.PM.Managers.TaskManager.Instance().getSessionLogDetails(i).then(function(t){var r,u;for(t.result.length==0&&$("#ul_ShowLog_Details").after('<div class="alert alert-info ma-0" id="div_ShowLog_Details_NoData">There is no Data<\/div>'),$("#ulLogDetails").html('<li class="sessionlog-item hidden"><div class="row mt-10 divAddLogHours_0 hidden"><\/div><\/li>'),r=0;r<t.result.length;r++){var i=t.result[r],e=moment(i.enddate).format("DD-MM-YYYY hh:mm:ss a"),f="";i.ismanual&&(f=" M");u="";u=i.ismanual?'<li class="list-group-item sessionlog-item bg-info li-'+i.sessionid+'" ><div class="row mt-10 divAddLogHours_'+r+' hidden"><\/div><div class="row mt-10"><div class="col-sm-4 pl-15"><span class="h6" style="color:white;">'+n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateTimeWithoutSeconds(i.startdate)+'<\/span><\/div><div class="col-sm-4 pl-20 mr-45"><span class="h6" style="color:white;">'+n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateTimeWithoutSeconds(i.enddate)+'<\/span><\/div><div class="col-sm-2 pl-10"><span class="h6" style="color:white;">'+i.timer+'<\/span><\/div><div class="col-sm-1 pr-5"><span class="editloghour hidden" onclick="return Unibase.Platform.PM.Components.TimeTracker.Instance().getTaskSession('+i.sessionid+');" style="color:white;"><i class="fa fa-pencil-square-o" aria-hidden="true"><\/i><\/span><a class="btn-icon pull-right deleteloghour hidden" href="javascript:;" onclick="Unibase.Platform.PM.Components.TimeTracker.Instance().removeSession('+i.sessionid+');"><i class="fa fa-trash-o text-white"><\/i><\/a><\/div><\/div><\/li>':'<li class="list-group-item sessionlog-item li-'+i.sessionid+'"><div class="row mt-10 divAddLogHours_'+r+' hidden"><\/div><div class="row mt-10"><div class="col-sm-4 pl-15"><span class="h6">'+n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateTimeWithoutSeconds(i.startdate)+'<\/span><\/div><div class="col-sm-4 pl-20 mr-45"><span class="h6">'+n.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateTimeWithoutSeconds(i.enddate)+'<\/span><\/div><div class="col-sm-2 pl-10"><span class="h6">'+i.timer+'<\/span><\/div><div class="col-sm-1 pr-5"><span class="editloghour hidden" onclick="return Unibase.Platform.PM.Components.TimeTracker.Instance().getTaskSession('+i.sessionid+');"><i class="fa fa-pencil-square-o" aria-hidden="true"><\/i><\/span><a class="btn-icon pull-right deleteloghour hidden" href="javascript:;" onclick="Unibase.Platform.PM.Components.TimeTracker.Instance().removeSession('+i.sessionid+');"><i class="fa fa-trash-o text-danger"><\/i><\/a><\/div><\/div><\/li>';$(".sessionlog-item:last").after(u)}Bizgaze.Apps.PM.Components.SessionLog.Instance().addLogHourRow(!1);Bizgaze.Apps.PM.Components.SessionLog.Instance().calculateDateDiff()},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}managePermission(){var t=this;Bizgaze.Apps.PM.Managers.TaskManager.Instance().getLogHourPermission().then(function(i){i.result=="5"||n.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin==!0?($(".editloghour").removeClass("hidden"),$(".deleteloghour").removeClass("hidden")):($(".editloghour").addClass("hidden"),$(".deleteloghour").addClass("hidden"));t.managePermission()},function(n){MessageHelper.Instance().showError(n,"divTimeTrackerError")})}static Instance(){return this.instance==undefined&&(this.instance=new i),this.instance}}t.TimeTracker=i})(i=t.Components||(t.Components={}))})(i=t.PM||(t.PM={}))})(t=n.Apps||(n.Apps={}))})(Unibase||(Unibase={}));