fixed bugs in search feature
This commit is contained in:
@@ -234,6 +234,8 @@ $purple200: #ce93d8;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
background-color: lightblue;
|
||||
// min-width: 80%;
|
||||
// max-width: 80%;
|
||||
width: 80%;
|
||||
height: auto;
|
||||
margin-bottom: 2rem;
|
||||
|
||||
@@ -157,56 +157,26 @@ export default function Projects() {
|
||||
)
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
if (!filter) {
|
||||
setResults(galleryArray.map(each => each.jsx));
|
||||
} else {
|
||||
let filteredRes = galleryArray;
|
||||
|
||||
if (filter.language) {
|
||||
for (let element of filteredRes) {
|
||||
if (filter.language === "Express" && element.languages.includes("PERN" || "MERN")) {
|
||||
continue;
|
||||
} else if (filter.language === "PostgreSQL" && element.languages.includes("PERN")) {
|
||||
continue;
|
||||
} else if (element.languages.includes(filter.language)) {
|
||||
continue;
|
||||
} else {
|
||||
filteredRes.splice(filteredRes.indexOf(element), 0, '');
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (filter) {
|
||||
let result = galleryArray;
|
||||
if (filter.searchTerm) {
|
||||
let caseSafeTerm = filter.searchTerm.toLowerCase();
|
||||
|
||||
for (let element of filteredRes) {
|
||||
for (let each of element.languages) {
|
||||
if (each.toLowerCase().includes(caseSafeTerm)) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if (element.name.toLowerCase().includes(caseSafeTerm)) {
|
||||
continue;
|
||||
} else {
|
||||
filteredRes.splice(filteredRes.indexOf(element), 0, '');
|
||||
continue;
|
||||
}
|
||||
}
|
||||
let termLower = filter.searchTerm.toLowerCase();
|
||||
result = result.filter(obj => obj.name.toLowerCase().includes(termLower));
|
||||
}
|
||||
|
||||
for (let element of filteredRes) {
|
||||
if (element.inProgress === filter.inProgress) {
|
||||
continue;
|
||||
} else {
|
||||
filteredRes.splice(filteredRes.indexOf(element), 0, '');
|
||||
continue;
|
||||
}
|
||||
if (filter.language) {
|
||||
let adjustedLang = ((filter.language === 'PostgreSQL' || filter.language === "Express") ? "PERN" : filter.language);
|
||||
result = result.filter(obj => obj.languages.includes(adjustedLang));
|
||||
}
|
||||
|
||||
setResults(filteredRes.map(each => each.jsx));
|
||||
if (filter.inProgress) {
|
||||
result = result.filter(obj => obj.inProgress === filter.inProgress);
|
||||
}
|
||||
|
||||
setResults(result.map(each => each.jsx));
|
||||
}
|
||||
}, [filter]);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user