Skip to content
Snippets Groups Projects
SearchResults.vue 1.54 KiB
Newer Older
Ole Voldsæter's avatar
Ole Voldsæter committed
<template>
    <div class="flex-container">
Ole Voldsæter's avatar
Ole Voldsæter committed
      <ul class="hits" v-if="results_bob.length">
        <li  class="article_container" v-for="(result, index) in results_bob" :key="index + results_hash">
          <Article  :article="result" @article-click="article_link_click">
          </Article>
        </li>
Ole Voldsæter's avatar
Ole Voldsæter committed
      <ul class="hits" v-if="results_nob.length">
        <li class="article_container" v-for="(result, index) in results_nob" :key="index + results_hash">
          <Article :article="result" @article-click="article_link_click">
          </Article>
        </li>
Ole Voldsæter's avatar
Ole Voldsæter committed
      </ul>
Ole Voldsæter's avatar
Ole Voldsæter committed
</template>

<script>
import Article from './Article.vue'
Ole Voldsæter's avatar
Ole Voldsæter committed
export default {
  name: 'SearchResults',
  props: {
    hits: Array,
    lang: String
Ole Voldsæter's avatar
Ole Voldsæter committed
  },
  computed: {
Ole Voldsæter's avatar
Ole Voldsæter committed
    results_bob: function(){
      return this.hits.filter(hit => hit.dictionary == 'bob')
Ole Voldsæter's avatar
Ole Voldsæter committed
    },
      return this.hits.filter(hit => hit.dictionary == 'nob')
    },
    results_hash: function(){
      return this.hits.reduce((hash, hit) => (hash + hit) % 10000)
Ole Voldsæter's avatar
Ole Voldsæter committed
    }
Ole Voldsæter's avatar
Ole Voldsæter committed
  },
  methods: {
    article_link_click: function(item) {
      this.$emit('article-click', item)
Ole Voldsæter's avatar
Ole Voldsæter committed
  }
}

</script>
<style >
  h2 {
    color: #560027;
    margin: 0px;
    padding: 20px 0px 20px 0px;
    margin-top:0px;

  .flex-container {
    display: flex;
  }

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

  .flex-container  h4 {
    margin: 0px;
    color: #560027;