Spaces:
Runtime error
Runtime error
Update script.js
Browse files
script.js
CHANGED
|
@@ -520,63 +520,66 @@ async function searchMemoirs() {
|
|
| 520 |
const resultsList = document.createElement('div');
|
| 521 |
resultsList.classList.add('results-list');
|
| 522 |
|
| 523 |
-
|
| 524 |
const resultItem = document.createElement('div');
|
| 525 |
resultItem.classList.add('result-item');
|
| 526 |
|
| 527 |
-
// نمایش امتیاز شباهت
|
| 528 |
const similarityElement = document.createElement('p');
|
| 529 |
similarityElement.classList.add('result-similarity');
|
| 530 |
similarityElement.textContent = `شباهت: ${result.similarity !== undefined ? result.similarity.toFixed(4) : 'N/A'}`;
|
| 531 |
-
resultItem.appendChild(similarityElement);
|
| 532 |
|
| 533 |
-
// نمایش نام کتاب
|
| 534 |
-
const bookTitleElement = document.createElement('p');
|
| 535 |
-
bookTitleElement.classList.add('result-book-title');
|
| 536 |
-
bookTitleElement.textContent = `از کتاب: ${result.book_title || 'نامشخص'}`;
|
| 537 |
-
resultItem.appendChild(bookTitleElement);
|
| 538 |
|
| 539 |
-
// نمایش
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 540 |
const referenceElement = document.createElement('p');
|
| 541 |
referenceElement.classList.add('result-reference');
|
| 542 |
referenceElement.innerHTML = `<strong>مرجع:</strong> ${result.reference || 'نامشخص'}`;
|
| 543 |
-
resultItem.appendChild(referenceElement);
|
| 544 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 545 |
|
| 546 |
-
//
|
| 547 |
-
const passageElement = document.createElement('p');
|
| 548 |
-
passageElement.classList.add('result-passage');
|
| 549 |
-
// مستقیماً از فیلد passage_original استفاده می کنیم
|
| 550 |
-
passageElement.textContent = result.passage_original || 'متن خاطره موجود نیست.';
|
| 551 |
-
resultItem.appendChild(passageElement);
|
| 552 |
-
// ***************************************************************
|
| 553 |
|
| 554 |
|
| 555 |
-
// ****** اضافه کردن دکمه کپی ******
|
| 556 |
const copyButton = document.createElement('button');
|
| 557 |
copyButton.classList.add('copy-button');
|
| 558 |
copyButton.textContent = 'کپی متن';
|
| 559 |
-
// استایل های
|
| 560 |
-
|
| 561 |
-
copyButton.style.
|
| 562 |
-
copyButton.style.
|
| 563 |
-
copyButton.style.
|
| 564 |
-
copyButton.style.
|
| 565 |
-
copyButton.style.
|
| 566 |
-
copyButton.style.
|
| 567 |
-
copyButton.style.
|
| 568 |
-
copyButton.style.
|
| 569 |
-
copyButton.style.
|
| 570 |
-
copyButton.style.
|
| 571 |
-
copyButton.style.
|
|
|
|
| 572 |
// **********************************
|
| 573 |
-
// Listener برای دکمه کپی به صورت Delegation در DOMContentLoaded اضافه شده
|
| 574 |
-
resultItem.appendChild(copyButton);
|
| 575 |
// **************************************************************************
|
| 576 |
|
| 577 |
|
| 578 |
-
resultsList.appendChild(resultItem);
|
| 579 |
-
});
|
| 580 |
|
| 581 |
searchResultsContainer.appendChild(resultsList);
|
| 582 |
console.log("DOM updated with results.");
|
|
|
|
| 520 |
const resultsList = document.createElement('div');
|
| 521 |
resultsList.classList.add('results-list');
|
| 522 |
|
| 523 |
+
topResults.forEach(result => {
|
| 524 |
const resultItem = document.createElement('div');
|
| 525 |
resultItem.classList.add('result-item');
|
| 526 |
|
| 527 |
+
// نمایش امتیاز شباهت (float right دارد، ترتیب آن در اینجا تأثیر کمتری بر ترتیب بلوک اصلی دارد)
|
| 528 |
const similarityElement = document.createElement('p');
|
| 529 |
similarityElement.classList.add('result-similarity');
|
| 530 |
similarityElement.textContent = `شباهت: ${result.similarity !== undefined ? result.similarity.toFixed(4) : 'N/A'}`;
|
| 531 |
+
resultItem.appendChild(similarityElement); // اضافه کردن امتیاز شباهت (معمولاً اول یا زودتر)
|
| 532 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 533 |
|
| 534 |
+
// ****** نمایش المانها به ترتیب مورد نظر: خاطره، مرجع، نام کتاب ******
|
| 535 |
+
|
| 536 |
+
// ۱. نمایش متن خاطره
|
| 537 |
+
const passageElement = document.createElement('p');
|
| 538 |
+
passageElement.classList.add('result-passage');
|
| 539 |
+
passageElement.textContent = result.passage_original || 'متن خاطره موجود نیست.'; // استفاده از passage_original
|
| 540 |
+
resultItem.appendChild(passageElement); // اضافه کردن خاطره (اولین)
|
| 541 |
+
|
| 542 |
+
// ۲. نمایش مرجع خاطره
|
| 543 |
const referenceElement = document.createElement('p');
|
| 544 |
referenceElement.classList.add('result-reference');
|
| 545 |
referenceElement.innerHTML = `<strong>مرجع:</strong> ${result.reference || 'نامشخص'}`;
|
| 546 |
+
resultItem.appendChild(referenceElement); // اضافه کردن مرجع (دومین)
|
| 547 |
|
| 548 |
+
// ۳. نمایش نام کتاب
|
| 549 |
+
const bookTitleElement = document.createElement('p');
|
| 550 |
+
bookTitleElement.classList.add('result-book-title');
|
| 551 |
+
bookTitleElement.textContent = `از کتاب: ${result.book_title || 'نامشخص'}`;
|
| 552 |
+
resultItem.appendChild(bookTitleElement); // اضافه کردن نام کتاب (سومین)
|
| 553 |
|
| 554 |
+
// ********************************************************************************
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 555 |
|
| 556 |
|
| 557 |
+
// ****** اضافه کردن دکمه کپی (بعد از محتوای اصلی) ******
|
| 558 |
const copyButton = document.createElement('button');
|
| 559 |
copyButton.classList.add('copy-button');
|
| 560 |
copyButton.textContent = 'کپی متن';
|
| 561 |
+
// استایل های موقت Inline برای تست - بهتر است در style.css تعریف شوند و کلاس copy-button به آنها لینک شود
|
| 562 |
+
// در style.css ارائه شده قبلی این استایل ها موجود هستند و نیازی به اینجا نیست
|
| 563 |
+
// copyButton.style.display = 'block';
|
| 564 |
+
// copyButton.style.marginTop = '15px';
|
| 565 |
+
// copyButton.style.marginLeft = 'auto'; // راست چین کردن در RTL
|
| 566 |
+
// copyButton.style.marginRight = '0';
|
| 567 |
+
// copyButton.style.backgroundColor = '#007bff';
|
| 568 |
+
// copyButton.style.color = 'white';
|
| 569 |
+
// copyButton.style.padding = '5px 10px';
|
| 570 |
+
// copyButton.style.border = 'none';
|
| 571 |
+
// copyButton.style.borderRadius = '4px';
|
| 572 |
+
// copyButton.style.cursor = 'pointer';
|
| 573 |
+
// copyButton.style.fontSize = '0.85em';
|
| 574 |
+
// copyButton.style.fontFamily = "'Vazirmatn', sans-serif";
|
| 575 |
// **********************************
|
| 576 |
+
// Listener برای دکمه کپی به صورت Delegation در DOMContentLoaded اضافه شده است و نیازی به تعریف مجدد در اینجا نیست.
|
| 577 |
+
resultItem.appendChild(copyButton); // اضافه کردن دکمه کپی (آخرین)
|
| 578 |
// **************************************************************************
|
| 579 |
|
| 580 |
|
| 581 |
+
resultsList.appendChild(resultItem); // اضافه کردن آیتم نتیجه کامل شده به لیست نتایج
|
| 582 |
+
}); // پایان حلقه forEach
|
| 583 |
|
| 584 |
searchResultsContainer.appendChild(resultsList);
|
| 585 |
console.log("DOM updated with results.");
|