Stop Watch
// STOPWATCH ACTIVITY (SOLUTION)
// =============================
// This code will run as soon as the page loads
window.onload = function() {
  $("#lap").on("click", stopwatch.recordLap);
  $("#stop").on("click", stopwatch.stop);
  $("#reset").on("click", stopwatch.reset);
  $("#start").on("click", stopwatch.start);
};
//  Variable that will hold our setInterval that runs the stopwatch
var intervalId;
//prevents the clock from being sped up unnecessarily
var clockRunning = false;
// Our stopwatch object
var stopwatch = {
  time: 0,
  lap: 1,
  reset: function() {
    stopwatch.time = 0;
    stopwatch.lap = 1;
    // DONE: Change the "display" div to "00:00."
    $("#display").html("00:00");
    // DONE: Empty the "laps" div.
    $("#laps").html("");
  },
  start: function() {
    // DONE: Use setInterval to start the count here and set the clock to running.
    if (!clockRunning) {
        intervalId = setInterval(stopwatch.count, 1000);
        clockRunning = true;
    }
  },
  stop: function() {
    // DONE: Use clearInterval to stop the count here and set the clock to not be running.
    clearInterval(intervalId);
    clockRunning = false;
  },
  recordLap: function() {
    // DONE: Get the current time, pass that into the stopwatch.timeConverter function,
    //       and save the result in a variable.
    var converted = stopwatch.timeConverter(stopwatch.time);
    // DONE: Add the current lap and time to the "laps" div.
    $("#laps").append("<p>Lap " + stopwatch.lap + " : " + converted + "</p>");
    // DONE: Increment lap by 1. Remember, we can't use "this" here.
    stopwatch.lap++;
  },
  count: function() {
    // DONE: increment time by 1, remember we cant use "this" here.
    stopwatch.time++;
    // DONE: Get the current time, pass that into the stopwatch.timeConverter function,
    //       and save the result in a variable.
    var converted = stopwatch.timeConverter(stopwatch.time);
    console.log(converted);
    // DONE: Use the variable we just created to show the converted time in the "display" div.
    $("#display").html(converted);
  },
  timeConverter: function(t) {
    var minutes = Math.floor(t / 60);
    var seconds = t - (minutes * 60);
    if (seconds < 10) {
      seconds = "0" + seconds;
    }
    if (minutes === 0) {
      minutes = "00";
    }
    else if (minutes < 10) {
      minutes = "0" + minutes;
    }
    return minutes + ":" + seconds;
  }
};
// Solution if you choose not to put it in an object
// var time = 0;
// var lap = 1;
// function reset() {
//   time = 0;
//   lap = 1;
//   $("#display").html("00:00");
//   $("#laps").html("");
// }
// function start() {
//   intervalId = setInterval(count, 1000);
// }
// function stop() {
//   console.log("stopping");
//   clearInterval(intervalId);
// }
// function recordLap() {
//   var converted = timeConverter(time);
//   $("#laps").append("<p>Lap " + lap + " : " + converted + "</p>");
//   lap++;
// }
// function count() {
//   time++;
//   var converted = timeConverter(time);
//   $("#display").html(converted);
// }
// function timeConverter(t) {
//   var minutes = Math.floor(t / 60);
//   var seconds = t - (minutes * 60);
//   if (seconds < 10) {
//     seconds = "0" + seconds;
//   }
//   if (minutes === 0) {
//     minutes = "00";
//   }
//   else if (minutes < 10) {
//     minutes = "0" + minutes;
//   }
//   return minutes + ":" + seconds;
// }<!-- Students: Our work lies in the js file. -->
<!DOCTYPE html>
<html lang="en-us">
  <head>
    <meta charset="UTF-8">
    <title>Stopwatch</title>
    <!-- Our CSS style sheet -->
    <link rel="stylesheet" href="style.css">
  </head>
  <body>
    <div id="wrapper">
      <div id="display">00:00</div>
      <!-- Div containing our stopwatch controls -->
      <div id="buttons">
        <button id="start">Start</button>
        <button id="stop">Stop</button>
        <button id="reset">Reset</button>
        <button id="lap">Lap</button>
      </div>
      <div id="laps"></div>
    </div>
    <!-- jQuery -->
    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <!-- Script -->
    <script type="text/javascript" src="stopwatchSolution.js"></script>
  </body>
</html>
/* Students: Our work lies in the js file. */
body { /* Visual */
  background: black;
}
#display {
  font-family: monospace;
  font-size: 120px;
  color: green;
  /* Typography */
  text-align: center;
  /* Visual */
  background: black;
}
#wrapper {
  /* Box-model */
  width: 500px;
  /* Positioning */
  margin: 50px auto 0;
}
#buttons { /* Typography */
  text-align: center;
}
button {
  width: 100px;
  /* Box-model */
  height: 50px;
}
#laps {
  width: 100%;
  height: 200px;
  /* Positioning */
  margin-top: 20px;
  /* Box-model */
  overflow: auto;
  /* Typography */
  text-align: center;
  /* Visual */
  background: white;
}