proceeded implementing query improvements:
query methods are now uniform and with one central function
This commit is contained in:
		@@ -105,6 +105,11 @@ function filter(filterString) {
 | 
			
		||||
    fetchQuery(fetchURL);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function getFilterQuery() {
 | 
			
		||||
    let filterString = filterButton.value.toUpperCase();
 | 
			
		||||
    return "?type=" + filterString;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function search(searchString) {
 | 
			
		||||
    updateSections();
 | 
			
		||||
    let fetchURL = new URL(apiEndpoint + "/search", baseURL);
 | 
			
		||||
@@ -113,6 +118,11 @@ function search(searchString) {
 | 
			
		||||
    fetchQuery(fetchURL);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function getSearchQuery() {
 | 
			
		||||
    let searchString = searchBar.value;
 | 
			
		||||
    return "?search=" + (searchString.length === 0 ? "%" : searchString);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function sort(sortString) {
 | 
			
		||||
    let query = sortString.toLowerCase().split(" ");
 | 
			
		||||
    if (query[1] === "a-z" || query[1] === "↑" || query[1] === "oldest-newest") {
 | 
			
		||||
@@ -128,9 +138,26 @@ function sort(sortString) {
 | 
			
		||||
    fetchQuery(fetchURL);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function getSortQuery() {
 | 
			
		||||
    let sortString = sortButton.value.toLowerCase().split(" ");
 | 
			
		||||
    if (sortString[1] === "a-z" || sortString[1] === "↑" || sortString[1] === "oldest-newest") {
 | 
			
		||||
        sortString[1] = "asc";
 | 
			
		||||
    } else {
 | 
			
		||||
        sortString[1] = "desc";
 | 
			
		||||
    }
 | 
			
		||||
    return "?sort=" + sortString[0] + "&direction=" + sortString[1];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// creates query for the whole toolbar, so that searching, sorting and filtering are always combined
 | 
			
		||||
function createQuery() {
 | 
			
		||||
 | 
			
		||||
    updateSections();
 | 
			
		||||
    let queryURL = new URL(apiEndpoint + "/search", baseURL);
 | 
			
		||||
    queryURL.append(getSearchQuery());
 | 
			
		||||
    queryURL.append(getFilterQuery());
 | 
			
		||||
    queryURL.append(getSortQuery());
 | 
			
		||||
    queryURL.append("&size=" + defaultPagingValue);
 | 
			
		||||
    console.log(queryURL); // TODO: remove
 | 
			
		||||
    fetchQuery(queryURL);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function vote(entryID, up) {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user