/** Class implementing the map view. */
class Map {
  /**
   * Creates a Map Object
   */
  constructor() {
    this.projection = d3.geoConicConformal().scale(150).translate([400, 350]);

  }

  /**
   * Function that clears the map
   */
  clearMap() {

    // ******* TODO: PART V*******
    // Clear the map of any colors/markers; You can do this with inline styling or by
    // defining a class style in styles.css

    // Hint: If you followed our suggestion of using classes to style
    // the colors and markers for hosts/teams/winners, you can use
    // d3 selection and .classed to set these classes on and off here.

  }

  /**
   * Update Map with info for a specific FIFA World Cup
   * @param wordcupData the data for one specific world cup
   */
  updateMap(worldcupData) {

    //Clear any previous selections;
    this.clearMap();

    // ******* TODO: PART V *******

    // Add a marker for the winner and runner up to the map.

    // Hint: remember we have a conveniently labeled class called .winner
    // as well as a .silver. These have styling attributes for the two
    // markers.


    // Select the host country and change it's color accordingly.

    // Iterate through all participating teams and change their color as well.

    // We strongly suggest using CSS classes to style the selected countries.


    // Add a marker for gold/silver medalists
  }

  /**
   * Renders the actual map
   * @param the json data with the shape of all countries
   */
  drawMap(world) {

    //(note that projection is a class member
    // updateMap() will need it to add the winner/runner_up markers.)

    // ******* TODO: PART IV *******

    // Draw the background (country outlines; hint: use #map).
    // You will need to convert the topoJSON file to geoJSON.
    // Make sure and add gridlines to the map.

    // Hint: assign an id to each country path to make it easier to select afterwards
    // we suggest you use the variable in the data element's .id field to set the id

    // Make sure and give your paths the appropriate class (see the .css selectors at
    // the top of the provided html file)

  }


}
