hw 6-7 some fixes
This commit is contained in:
1 parent
34630657b8
commit
3080e5b5b6
8 files changed
+67
-65
No files matched your search
@@ -221,15 +221,18 @@ a:hover {
|
||||
|
||||
.search-suggestions {
|
||||
position: absolute;
|
||||
top: calc(100% + 0.4rem);
|
||||
left: 0;
|
||||
right: 0;
|
||||
background: #ffffff;
|
||||
border: 1px solid #1f2d3a;
|
||||
border-radius: 0.5rem;
|
||||
width: calc(100% - 2rem);
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
max-height: 18rem;
|
||||
overflow: auto;
|
||||
display: none;
|
||||
z-index: 100;
|
||||
margin-top: 0.4rem;
|
||||
}
|
||||
|
||||
.search-suggestion {
|
||||
|
||||
@@ -55,6 +55,30 @@ if (searchInput) {
|
||||
});
|
||||
}
|
||||
|
||||
function askItSearch(event) {
|
||||
event.preventDefault();
|
||||
const query = searchInput ? searchInput.value.trim() : '';
|
||||
if (!query) {
|
||||
return false;
|
||||
}
|
||||
|
||||
fetch(`/search?q=${encodeURIComponent(query)}`)
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
const results = data.results || [];
|
||||
if (results.length) {
|
||||
window.location.href = results[0].url;
|
||||
} else {
|
||||
window.location.href = `/ask?q=${encodeURIComponent(query)}`;
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
window.location.href = `/ask?q=${encodeURIComponent(query)}`;
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function postReaction(url, data, onSuccess) {
|
||||
$.ajax({
|
||||
url,
|
||||
@@ -167,31 +191,3 @@ $(document).on('click', '.correct-answer-btn', function () {
|
||||
console.error('centrifuge init error', e);
|
||||
}
|
||||
})();
|
||||
// Handle ASK IT button - transfer search text to ask page
|
||||
function redirectToAsk(event) {
|
||||
event.preventDefault();
|
||||
const searchInput = document.getElementById('search-input');
|
||||
const query = searchInput ? searchInput.value.trim() : '';
|
||||
const url = query ? `/ask?q=${encodeURIComponent(query)}` : '/ask';
|
||||
window.location.href = url;
|
||||
}
|
||||
|
||||
// Populate title field from URL parameter on ask page
|
||||
function initializeTitleFromQuery() {
|
||||
const params = new URLSearchParams(window.location.search);
|
||||
const query = params.get('q');
|
||||
if (query) {
|
||||
const titleField = document.querySelector('[name="title"]');
|
||||
if (titleField) {
|
||||
titleField.value = query;
|
||||
titleField.focus();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Run immediately (script.js loads at end of page, DOMContentLoaded may have already fired)
|
||||
if (document.readyState === 'loading') {
|
||||
document.addEventListener('DOMContentLoaded', initializeTitleFromQuery);
|
||||
} else {
|
||||
initializeTitleFromQuery();
|
||||
}
|
||||
Reference in new issue
Block a user