44 lines
		
	
	
		
			893 B
		
	
	
	
		
			JavaScript
		
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			893 B
		
	
	
	
		
			JavaScript
		
	
	
	
let data = {
 | 
						|
    id: null,
 | 
						|
    type: '',
 | 
						|
    searching: false,
 | 
						|
    searchTerm: '',
 | 
						|
    searchResults: '',
 | 
						|
};
 | 
						|
 | 
						|
let computed = {
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
let methods = {
 | 
						|
 | 
						|
    searchBook() {
 | 
						|
        if (this.searchTerm.trim().length === 0) return;
 | 
						|
        this.searching = true;
 | 
						|
        this.searchResults = '';
 | 
						|
        let url = window.baseUrl(`/search/${this.type}/${this.id}`);
 | 
						|
        url += `?term=${encodeURIComponent(this.searchTerm)}`;
 | 
						|
        this.$http.get(url).then(resp => {
 | 
						|
            this.searchResults = resp.data;
 | 
						|
        });
 | 
						|
    },
 | 
						|
 | 
						|
    checkSearchForm() {
 | 
						|
        this.searching = this.searchTerm > 0;
 | 
						|
    },
 | 
						|
 | 
						|
    clearSearch() {
 | 
						|
        this.searching = false;
 | 
						|
        this.searchTerm = '';
 | 
						|
    }
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
function mounted() {
 | 
						|
    this.id = Number(this.$el.getAttribute('entity-id'));
 | 
						|
    this.type = this.$el.getAttribute('entity-type');
 | 
						|
}
 | 
						|
 | 
						|
module.exports = {
 | 
						|
    data, computed, methods, mounted
 | 
						|
}; |