Library Search Catalogue
<script>
window.addEventListener("load", function () {
var searchContainer = document.querySelector('div[role="search"]');
if (!searchContainer) return;
// Look for an existing catalog form by its action
var catalogForm = searchContainer.querySelector(
'form[action*="pld.ent.sirsi.net/client/embedded.search/default"]'
);
// If there is no catalog form yet, create and append it
if (!catalogForm) {
var newFormContainer = document.createElement("div");
newFormContainer.innerHTML = '\
<form action="https://pld.ent.sirsi.net/client/embedded.search/default" \
method="get" target="_blank" class="search-box" ng-ignore>\
<input type="hidden" name="ln" value="en_US">\
<div class="input-group">\
<label for="q" class="sr-only">Search Catalog:</label>\
<input type="text" id="q" class="form-control" name="q" \
placeholder="Search Catalog" title="Enter search term">\
<span class="input-group-btn">\
<button id="searchButton" class="btn btn-default button" type="submit" title="Search">Go!</button>\
</span>\
</div>\
<input name="searchSource" value="local" type="hidden">\
<input name="basicType" value="Keyword" type="hidden">\
</form>';
searchContainer.appendChild(newFormContainer);
catalogForm = newFormContainer.querySelector("form");
}
// Find the website search form
var forms = searchContainer.querySelectorAll("form.search-box");
var siteForm = null;
forms.forEach(function (form) {
var action = form.getAttribute("action") || "";
if (action.indexOf("pld.ent.sirsi.net/client/embedded.search/default") === -1) {
if (!siteForm) siteForm = form;
}
});
// Configure website search
if (siteForm) {
var siteInput =
siteForm.querySelector('input[type="search"]') ||
siteForm.querySelector('input[type="text"]');
if (siteInput) {
siteInput.placeholder = "Search Website";
siteInput.title = "Enter website search term";
siteForm.setAttribute("aria-label", "Website search");
}
}
// Configure catalog search
if (catalogForm) {
var catalogInput =
catalogForm.querySelector('input[name="q"]') ||
catalogForm.querySelector('input[type="text"]');
if (catalogInput) {
catalogInput.placeholder = "Search Catalog";
catalogInput.title = "Enter catalog search term";
catalogForm.setAttribute("aria-label", "Library catalog search");
}
}
});
</script>