mirror of
https://github.com/GCMatters/hermes.git
synced 2026-02-04 13:40:13 +01:00
feat: implement basic search functionality with partial text matches
This commit is contained in:
@@ -48,6 +48,12 @@ public class GeneralUseHelpers
|
||||
|
||||
}
|
||||
|
||||
async public Task<Organisation?> GetOrganisationFromId(int id)
|
||||
{
|
||||
Organisation? org = await _context.Organisations.FirstOrDefaultAsync(o => o.OrganisationId == id);
|
||||
return org;
|
||||
}
|
||||
|
||||
public string? GetTokenStrFromHTTPContext(HttpContext httpContext)
|
||||
{
|
||||
var cookies = httpContext.Request.Cookies;
|
||||
@@ -87,4 +93,17 @@ public class GeneralUseHelpers
|
||||
_context.Tokens.Remove(token);
|
||||
await _context.SaveChangesAsync();
|
||||
}
|
||||
|
||||
public bool SearchString(string? text, string searchTerm)
|
||||
{
|
||||
// Zwraca fałsz jeśli tekst jest pusty.
|
||||
// (Brak tekstu nie wpływa na wynik wyszukiwania).
|
||||
if (text is null) return false;
|
||||
|
||||
// Zamienia tekst na słowa
|
||||
var words = text.Split(' ', StringSplitOptions.RemoveEmptyEntries);
|
||||
|
||||
// Sprawdza, czy któreś ze słów pasuje (nawet częściowo) do searchTerm
|
||||
return words.Any(word => word.Contains(searchTerm, StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user