{% extends "base.html" %} {% block header_script_files %} {% endblock %} {% block header %} {{ emit_tep('search_page_header') }} {% endblock %} {% block content %}
{% endblock %} {% block modals %} {{ emit_tep('search_page_modals') }} {% endblock %} {% block button_container %} {{ emit_tep('search_page_button_container') }} {% endblock %} {% block script %} Vue.component('modals', { props: [ 'volume' ], template: `
{{ emit_tep('search_page_volume_modals') }}
`, methods: { subscribe() { app.$refs.volumes.$children.find(child => {return child.$vnode.key == this.volume.id }).subscribe() }, }, delimiters: ["[[", "]]"] }) Vue.component('volume-item', { props: ['volume'], template: `
  • `, methods: { subscribe() { stashrToast('Adding to Library', 'info') axios.post('{{ url_for('api.api_post_single_volume', volume_id='VOLUMESTRING') }}'.replace('VOLUMESTRING', this.volume.id)) .then(res => { console.log(res) if (res.data.status_code == 200) { stashrToast('Added to Library', 'success'); } else { stashrToast(res.data.message, 'error') } }) .catch(err => console.log(err)) }, changeModal() { app.changeModal(this.volume) }, }, data() { return { hover: false }}, delimiters: ["[[","]]"] }) Vue.component('volumes', { props: ['volumes'], template: `
    `, data() { return { search: '' }}, computed: { filteredList() { return this.volumes.filter(volume => { return volume.name.toLowerCase().includes(this.search.toLowerCase()) }) }, }, delimiters: ["[[","]]"] }) var app = new Vue({ el: '#app', data: { volumes: [], volume: [] }, methods: { getSearchResults(query) { console.log('SEARCHING: ' + query) axios.get('{{ url_for('api.api_get_search') }}', { params: { query: query } }) .then(res => { this.volumes = res.data.results }) .catch(err => console.log(err)) }, changeModal(volume) { console.log('changing modal'); this.volume = volume }, }, computed: { filteredList() { return this.volumes.filter(volume => { return volume.volume_name.toLowerCase().includes(this.search.toLowerCase()) }) }, }, delimiters: ["[[","]]"] }) {{ emit_tep('search_page_script') }} {% endblock %}