Spaces:
Running
Running
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.");
|