Advertisement
Guest User

Untitled

a guest
Jul 7th, 2015
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.42 KB | None | 0 0
  1. var options = {
  2. scaleColor: false,
  3. trackColor: 'rgba(255,255,255,0.3)',
  4. barColor: '#E7F7F5',
  5. lineWidth: 6,
  6. lineCap: 'butt',
  7. size: 95
  8. };
  9.  
  10. $('#days').easyPieChart(options);
  11. $('#hours').easyPieChart(options);
  12. $('#minutes').easyPieChart(options);
  13. $('#seconds').easyPieChart(options);
  14.  
  15. function countdown(endT,callback) {
  16. var first_load = false;
  17. var days,hours,minutes,sec,timer;
  18.  
  19. end = new Date(endT);
  20.  
  21. end = end.getTime(); //Get initial Date in Milliseconds
  22. if (isNaN(end)) {
  23. return;
  24.  
  25. }
  26. var tot_current = new Date();
  27. var tot_remain = parseInt((end - tot_current.getTime())/1000);
  28. var tot_days = parseInt(tot_remain/86400);
  29.  
  30. timer = setInterval(calculate,1000);
  31. function calculate(){
  32. var current = new Date();
  33. var remaining = parseInt((end - current.getTime())/1000); //remaining seconds
  34.  
  35. if (remaining <= 0){
  36. clearInterval(timer);
  37. days=0;
  38. hours=0;
  39. minutes=0;
  40. sec=0;
  41. display(days,hours,minutes,sec);
  42. if (typeof callback === 'function' ) {
  43. callback();
  44. }
  45.  
  46. }else{
  47.  
  48. days = parseInt(remaining/86400);
  49. remaining = (remaining%86400);
  50. hours = parseInt(remaining/3600);
  51. remaining = (remaining%3600);
  52. minutes = parseInt(remaining/60);
  53. remaining = (remaining%60);
  54. sec = parseInt(remaining);
  55. display(days,hours,minutes,sec);
  56.  
  57. }
  58. }
  59. function display(days,hours,minutes,sec) {
  60. var dl = days.toString().length;
  61. if (dl == "1") {
  62. sl = 2;
  63. }else{
  64. if (isNaN(dl)) {
  65. sl = 3;
  66. }
  67. sl = dl;
  68. }
  69.  
  70. days_rem = ("00"+days).slice(-sl);
  71. hrs_rem = ("0"+hours).slice(-2);
  72. min_rem = ("0"+minutes).slice(-2);
  73. sec_rem = ("0"+sec).slice(-2);
  74. $("#days span").text(days_rem);
  75. $("#hours span").text(hrs_rem);
  76. $("#minutes span").text(min_rem);
  77. $("#seconds span").text(sec_rem);
  78. $("#days").data('easyPieChart').update((100/tot_days)*days_rem);
  79.  
  80. // Disable animation for the first load
  81. if(hrs_rem == 23 && first_load) { $('#hours').data('easyPieChart').disableAnimation(); }
  82. $("#hours").data('easyPieChart').update((100/23)*hrs_rem);
  83. if(hrs_rem == 23 && first_load) { $('#hours').data('easyPieChart').disableAnimation(); }
  84.  
  85. if(min_rem == 59 && first_load) { $('#minutes').data('easyPieChart').disableAnimation(); }
  86. $("#minutes").data('easyPieChart').update((100/59)*min_rem);
  87. if(min_rem == 59 && first_load) { $('#minutes').data('easyPieChart').enableAnimation(); }
  88.  
  89. if(sec_rem == 59 && first_load) { $('#seconds').data('easyPieChart').disableAnimation(); }
  90. $("#seconds").data('easyPieChart').update((100/59)*sec_rem);
  91. if(sec_rem == 59 && first_load) { $('#seconds').data('easyPieChart').enableAnimation(); }
  92.  
  93. first_load = true;
  94. }
  95.  
  96. }
  97.  
  98. var d = new Date(2015, 6, 10, 12, 7, 0, 0);
  99. countdown(d,null);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement