Materi 3 dari 14
Latar Belakang Pengembangan Intervensi
Materi ini masih terkunci
Selesaikan materi sebelumnya terlebih dahulu sebelum membuka materi ini.
Lanjutkan membaca →Draf terjemahan awal (mesin), belum direview/divalidasi tim Indonesia.
Pelajaran 3 dari 15
Materi 3: Latar Belakang Pengembangan Intervensi
"An Introduction to the development of the manual"
Sebuah pengantar mengenai pengembangan buku panduan
Intervensi ini dikembangkan sebagai respons terhadap kebijakan dan pedoman yang mendorong terapi yang sesuai dengan budaya bagi kelompok etnis dan agama minoritas (WHO 2018; NICE 2009, 2022; Departemen Kesehatan 1999).
Namun, penelitian tentang intervensi bagi kelompok agama minoritas masih terbatas (Townsend dkk. 2001), terutama mengenai bentuk dan isi intervensi untuk klien Muslim (Azhar dan Varma 1995). Oleh karena itu, lebih banyak bukti diperlukan untuk menilai efektivitas model terapi yang sensitif terhadap budaya, serta apakah intervensi ini memberikan hasil lebih baik dibandingkan terapi standar (Hook dkk., 2010).
Saran dan penjelasan penggunaan BA-M pada klien Muslim menurut terapis CBT
Intervensi berbasis keimanan terbukti efektif dalam mengatasi dan mencegah depresi (Lipsker dan Oordt 1990; Kumar 2006; Barron 2008), serta meningkatkan kualitas hidup (Lee, Czaja dkk. 2010). Strategi coping religius telah diintegrasikan ke dalam berbagai bentuk terapi, seperti:
Tarik kartu atau langsung klik tombol pilihan di bawah untuk menjawab:
0/0 Jawaban Benar
Replay
Benar
Salah
Terapi kognitif keperilakuan (Lipsker dan Oordt 1990; Propst dkk. 1992; Satterfield 2002; Scott 2003; Randall 2004; Barron 2008; Paukert dkk. 2009), konseling (Chandrashekar 2007; Glueckauf dkk., 2009), terapi penerimaan dan komitmen (Hayes 2004), pendekatan psikologi terapi (Brockman 2006) serta terapi untuk pasien kanker, penyakit berat (Cole 2000; Reyes 2003), trauma (Kelly 2007), dan penyiksaan (Leaman 2009).
Video di bawah ini menjelaskan dasar pertimbangan penggunaan pendekatan BA-M dari perspektif terapis CBT.
Saran dan penjelasan penggunaan BA-M pada klien Muslim menurut terapis CBT
Sejumlah bukti menunjukkan bahwa pendekatan ini secara signifikan lebih efektif dalam menangani depresi pada individu Muslim dibandingkan CBT standar atau intervensi sosial (Dawood dkk., 2023 dan Mir et al., 2023).
Khalid, seorang pengguna layanan yang memberikan tanggapan
// --- 1. GLOBAL AUTO FADE-IN ENGINE --- document.addEventListener("DOMContentLoaded", function () { const elementsToFade = document.querySelectorAll(` .rise-text-block, .video-wrapper, .instruction, .info-box, .activity-container, .divider `); const observerOptions = { root: null, rootMargin: "0px", threshold: 0.1, }; const observer = new IntersectionObserver((entries, observer) => { entries.forEach((entry) => { if (entry.isIntersecting) { entry.target.classList.add("is-visible"); observer.unobserve(entry.target); } }); }, observerOptions); elementsToFade.forEach((el) => { el.classList.add("fade-in-section"); observer.observe(el); }); }); // --- 2. KNOWLEDGE BASE DATA --- const questions = [ { text: "Terapi kognitif keperilakuan", isTrue: true }, { text: "Pendekatan psikologi energi", isTrue: true }, { text: "Menghindari semua interaksi sosial", isTrue: false }, { text: "Depresi pada pasien kanker dan penyakit berat", isTrue: true }, { text: "Terapi yang hanya mengandalkan obat tidur", isTrue: false }, { text: "Konseling", isTrue: true }, { text: "Terapi penerimaan dan komitmen", isTrue: true }, ]; let currentIndex = 0; let firstTryCorrectCount = 0; let isCurrentCardFirstTry = true; // DOM Elements const stage = document.getElementById("card-stage"); const dropZones = document.querySelectorAll(".drop-zone"); const completionMsg = document.getElementById("completion-message"); const scoreTallyText = document.getElementById("cards-score-tally"); const activityTitle = document.getElementById("activity-title"); // Interaction Variables let activeCard = null; let isDragging = false; let startX = 0, startY = 0; let currentX = 0, currentY = 0; // Randomize using Fisher-Yates Shuffle function shuffleArray(array) { for (let i = array.length - 1; i > 0; i--) { // Ambil indeks acak dari 0 hingga i const j = Math.floor(Math.random() * (i + 1)); // Tukar posisi elemen array[i] dengan array[j] [array[i], array[j]] = [array[j], array[i]]; } } // --- 3. CARD INITIALIZER --- function loadNextCard() { if (currentIndex >= questions.length) { stage.style.display = "none"; activityTitle.style.display = "none"; // Display the summary tally exactly like image_3be037.png scoreTallyText.innerHTML = `${firstTryCorrectCount}/${questions.length} Jawaban Benar`; completionMsg.style.display = "block"; return; } isCurrentCardFirstTry = true; const q = questions[currentIndex]; const card = document.createElement("div"); card.className = "card"; card.innerHTML = ` <div class="check-mark">✔</div> <div class="card-text">${q.text}</div> <div class="grip-lines"> <span></span><span></span><span></span> </div> `; card.dataset.isTrue = q.isTrue; stage.appendChild(card); activeCard = card; activeCard.addEventListener("pointerdown", startDrag); } // --- 4. DRAG MECHANICS --- function startDrag(e) { if ( activeCard.classList.contains("correct") || activeCard.classList.contains("shake") ) return; isDragging = true; activeCard.setPointerCapture(e.pointerId); startX = e.clientX - currentX; startY = e.clientY - currentY; activeCard.style.transition = "none"; activeCard.style.zIndex = 1000; activeCard.addEventListener("pointermove", drag); activeCard.addEventListener("pointerup", endDrag); } function drag(e) { if (!isDragging) return; e.preventDefault(); currentX = e.clientX - startX; currentY = e.clientY - startY; activeCard.style.transform = `translate(${currentX}px, ${currentY}px)`; dropZones.forEach((zone) => { if (isOverlapping(activeCard, zone)) { zone.classList.add("drag-over"); } else { zone.classList.remove("drag-over"); } }); } function endDrag(e) { if (!isDragging) return; isDragging = false; activeCard.removeEventListener("pointermove", drag); activeCard.removeEventListener("pointerup", endDrag); activeCard.releasePointerCapture(e.pointerId); activeCard.style.transition = "transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1)"; dropZones.forEach((zone) => zone.classList.remove("drag-over")); let droppedZone = null; dropZones.forEach((zone) => { if (isOverlapping(activeCard, zone)) droppedZone = zone; }); if (droppedZone) { checkAnswer(droppedZone); } else { resetCardPosition(); } } // --- 5. CLICK SELECT MECHANICS --- dropZones.forEach((zone) => { zone.addEventListener("click", function () { if ( !activeCard || activeCard.classList.contains("correct") || activeCard.classList.contains("shake") || isDragging ) return; checkAnswer(zone); }); }); // --- 6. LOGIC AND ACCOUNTABILITY CHECK --- function checkAnswer(zone) { const isCardTrue = activeCard.dataset.isTrue === "true"; const isZoneTrue = zone.dataset.answer === "true"; if (isCardTrue === isZoneTrue) { activeCard.classList.add("correct"); if (isCurrentCardFirstTry) { firstTryCorrectCount++; } const cardRect = activeCard.getBoundingClientRect(); const zoneRect = zone.getBoundingClientRect(); const targetX = currentX + (zoneRect.left - cardRect.left) + zoneRect.width / 2 - cardRect.width / 2; const targetY = currentY + (zoneRect.top - cardRect.top) + zoneRect.height / 2 - cardRect.height / 2; activeCard.style.transform = `translate(${targetX}px, ${targetY}px)`; setTimeout(() => { activeCard.style.opacity = 0; setTimeout(() => { activeCard.remove(); currentX = 0; currentY = 0; currentIndex++; loadNextCard(); }, 300); }, 1200); } else { isCurrentCardFirstTry = false; activeCard.classList.add("shake"); resetCardPosition(); setTimeout(() => { activeCard.classList.remove("shake"); }, 400); } } function resetCardPosition() { currentX = 0; currentY = 0; activeCard.style.transform = `translate(0px, 0px)`; activeCard.style.zIndex = 100; } function isOverlapping(card, zone) { const cardRect = card.getBoundingClientRect(); const zoneRect = zone.getBoundingClientRect(); const cardCenterX = cardRect.left + cardRect.width / 2; const cardCenterY = cardRect.top + cardRect.height / 2; return ( cardCenterX >= zoneRect.left && cardCenterX <= zoneRect.right && cardCenterY >= zoneRect.top && cardCenterY <= zoneRect.bottom ); } // --- 7. REPLAY SYSTEM ENGINE --- function replayActivity() { currentIndex = 0; firstTryCorrectCount = 0; isCurrentCardFirstTry = true; currentX = 0; currentY = 0; completionMsg.style.display = "none"; stage.style.display = "flex"; activityTitle.style.display = "block"; shuffleArray(questions); loadNextCard(); } window.onload = function () { shuffleArray(questions); loadNextCard(); };
✓ Ditandai selesai dibaca