<template>
  <section id="search_results">
    <h2 v-if="hits.length">Søkeresultater</h2>
    <div class="flex-container">
      <ul class="hits" v-if="results_bob.length">
        <li><h4>Bokmål</h4></li>
        <Preview v-for="(result, index) in results_bob" :key="index" :searchHit="result" @click.native="article_link_click(result)">
        </Preview>
      </ul>
      <ul class="hits" v-if="results_nob.length">
        <li><h4>Nynorsk</h4></li>
        <Preview v-for="(result, index) in results_nob" :key="index" :searchHit="result" @click.native="article_link_click(result)">
        </Preview>
      </ul>
      <ul class="hits" v-if="results_norsk.length">
        <li><h4>Norsk Ordbok</h4></li>
        <Preview v-for="(result, index) in results_norsk" :key="index" :searchHit="result" @click.native="article_link_click(result)">
        </Preview>
      </ul>
    </div>
  </section>
</template>

<script>
import helpers from '../utils/helpers.js'
import Preview from './Preview.vue'

export default {
  name: 'SearchResults',
  props: {
    hits: Array,
    lang: String
  },
  computed: {
    results_bob: function(){
      return this.hits.filter(hit => hit._index == 'bob')
    },
    results_nob: function(){
      return this.hits.filter(hit => hit._index == 'nob')
    },
    results_norsk: function(){
      return this.hits.filter(hit => hit._index == 'norsk_ordbok')
    }
  },
  methods: {
    article_link_click: function(result) {
      this.$router.push('/' + result._index + '/' + result._id)
      this.$emit('search-hit-click', result._source)
    }
  },
  components: {
    Preview
  }
}

</script>
<style>
  h2 {
    color: #560027;
  }

  .hits  .preview {
    margin: 10px;
    padding: 5px;
    cursor: pointer;
  }

  .hits  .preview h4 {
    color: #560027;
    text-decoration: underline;
  }

  .hits {
    margin-top:0px;
  }

  .flex-container {
    display: flex;
  }

  .flex-container > ul {
    padding: 0px;
  }

  .flex-container  h4 {
    margin: 0px;
  }
</style>