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);
 | 
					    fetchQuery(fetchURL);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function getFilterQuery() {
 | 
				
			||||||
 | 
					    let filterString = filterButton.value.toUpperCase();
 | 
				
			||||||
 | 
					    return "?type=" + filterString;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function search(searchString) {
 | 
					function search(searchString) {
 | 
				
			||||||
    updateSections();
 | 
					    updateSections();
 | 
				
			||||||
    let fetchURL = new URL(apiEndpoint + "/search", baseURL);
 | 
					    let fetchURL = new URL(apiEndpoint + "/search", baseURL);
 | 
				
			||||||
@@ -113,6 +118,11 @@ function search(searchString) {
 | 
				
			|||||||
    fetchQuery(fetchURL);
 | 
					    fetchQuery(fetchURL);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function getSearchQuery() {
 | 
				
			||||||
 | 
					    let searchString = searchBar.value;
 | 
				
			||||||
 | 
					    return "?search=" + (searchString.length === 0 ? "%" : searchString);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function sort(sortString) {
 | 
					function sort(sortString) {
 | 
				
			||||||
    let query = sortString.toLowerCase().split(" ");
 | 
					    let query = sortString.toLowerCase().split(" ");
 | 
				
			||||||
    if (query[1] === "a-z" || query[1] === "↑" || query[1] === "oldest-newest") {
 | 
					    if (query[1] === "a-z" || query[1] === "↑" || query[1] === "oldest-newest") {
 | 
				
			||||||
@@ -128,9 +138,26 @@ function sort(sortString) {
 | 
				
			|||||||
    fetchQuery(fetchURL);
 | 
					    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
 | 
					// creates query for the whole toolbar, so that searching, sorting and filtering are always combined
 | 
				
			||||||
function createQuery() {
 | 
					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) {
 | 
					export function vote(entryID, up) {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user