-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcodeTimer.min.js
2 lines (2 loc) · 2.35 KB
/
codeTimer.min.js
1
2
function calcTime(e){seconds=e%60,minutes=Math.floor(e/60),hours=Math.floor(minutes/60),minutes-=60*hours}function timer(){saveSeconds++,++seconds/60==1&&(seconds=0,minutes++),minutes/60==1&&(minutes=0,hours++),secondsOutput=seconds>=10?seconds:"0"+seconds,minutesOutput=minutes>=10?minutes:"0"+minutes,hoursOutput=hours>=10?hours:"0"+hours,document.title=1==hours?hoursOutput+":"+minutesOutput+":"+secondsOutput:minutesOutput+":"+secondsOutput}function timerLooping(){timer(),startTimer=setTimeout(timerLooping,1e3)}function stopTimer(){clearTimeout(startTimer)}var startTimer,hours,minutes,seconds,saveSeconds,hoursOutput,minutesOutput,secondsOutput,timerValue=localStorage.getItem("timerValue");calcTime(saveSeconds=timerValue?Number(timerValue):0);var timerContainer=document.createElement("div"),timerHTML;timerHTML='<div class="codeTimer-header">Code Timer</div>',timerHTML+='<div class="codeTimer-body">',timerHTML+='<button class = "codeTimer-btn-start">Start</button>',timerHTML+='<button class = "codeTimer-btn-save">Save</button>',timerHTML+="</div>",timerContainer.className="codeTimer-container",timerContainer.innerHTML=timerHTML,document.addEventListener("DOMContentLoaded",function(){document.body.appendChild(timerContainer);var e=document.querySelector(".codeTimer-container .codeTimer-header"),t=document.querySelector(".codeTimer-container .codeTimer-body"),i=document.querySelector(".codeTimer-container .codeTimer-body .codeTimer-btn-save"),n=document.querySelector(".codeTimer-container .codeTimer-body .codeTimer-btn-start");n.onclick=function(){"Start"==this.innerText?(timerLooping(),this.innerText="Pause"):"Pause"==this.innerText?(stopTimer(),this.innerText="Start"):alert("ERROR")},i.onclick=function(){localStorage.setItem("timerValue",saveSeconds)},Object.assign(timerContainer.style,{position:"fixed",bottom:0,right:0,padding:"5px",background:"#EFEFEF",border:"1px solid #CCC",transition:"all 0.2s ease-in-out"}),timerContainer.onmouseenter=function(){this.style.opacity=1},timerContainer.onmouseleave=function(){this.style.opacity=.15},Object.assign(e.style,{background:"#eaeaea",padding:"1px",marginBottom:"10px",borderBottom:"1px solid #CCC",textAlign:"center"}),Object.assign(t.style,{paddingLeft:"5px",paddingRight:"5px"}),Object.assign(n.style,{marginRight:"5px",minWidth:"54px"}),Object.assign(i.style,{minWidth:"54px"})});
//# sourceMappingURL=maps/codeTimer.min.js.map