DLE Quiz Modülü
xQuiz, DataLife Engine 19.1 için geliştirilmiş profesyonel bir quiz modülüdür. Kategoriler, soru bankası, çoklu soru tipleri, süre sayacı, sıralama tablosu ve detaylı istatistikler sunar. Türkçe, İngilizce ve Rusça dil desteği mevcuttur.
Admin Paneli
Admin paneline admin.php?mod=xquiz_panel adresinden veya sol menüdeki Katılan Modüller → xQuiz Yönetimi bağlantısından erişilir. Panel yedi sekmeden oluşur.
Dashboard sekmesinde aktif quiz sayısı, toplam soru, tamamlanan deneme sayısı, genel geçme oranı ve soru bankası istatistikleri görüntülenir. Son denemeler tablosunda hangi kullanıcının hangi quizi ne zaman çözdüğü ve geçip geçmediği görünür.
Quizler sekmesinden yeni quiz oluşturabilir, mevcut quizleri düzenleyebilirsiniz. Her quiz için başlık, kategori, zorluk seviyesi, süre limiti, geçme puanı, maksimum deneme sayısı, cevap gösterme zamanı, soru ve seçenek karıştırma gibi ayarlar yapılabilir.
Kategoriler sekmesinden quizleri gruplamak için renkli kategoriler oluşturulur. Her kategorinin rengi, sırası ve aktiflik durumu ayarlanabilir.
Soru Bankası sekmesi, belirli bir quize bağlı olmayan soruların saklandığı yerdir. Bankadaki herhangi bir soru tek tıkla istediğiniz quize kopyalanabilir. Bu sayede aynı soruyu birden fazla quizde kullanabilirsiniz.
Denemeler sekmesinde tüm kullanıcıların çözüm geçmişi listelenir. Quiz ve tarih bazında filtreleme yapılabilir, tüm veriler CSV formatında dışa aktarılabilir.
İstatistikler sekmesinde her quiz için toplam deneme sayısı, ortalama puan ve geçme oranı görüntülenir.
Ayarlar sekmesinden sayfa başına gösterilecek quiz sayısı, varsayılan geçme puanı, süre ve deneme limitleri, cevap gösterme zamanı, görünüm modu (grid veya liste), misafir erişimi, sıralama tablosu gösterimi ve arayüz dili yapılandırılır.
Soru Tipleri
Modül beş farklı soru tipini destekler. Tek seçimli sorularda kullanıcı dört veya daha fazla seçenek arasından yalnızca birini işaretler. Çoklu seçimli sorularda birden fazla doğru seçenek işaretlenebilir. Doğru/Yanlış sorularında iki seçenek sunulur. Metin girişli sorularda kullanıcı cevabı klavyeyle yazar. Sıralama sorularında seçenekler doğru sıraya dizilmelidir. Her soruya puan değeri, ipucu ve cevap açıklaması eklenebilir.
Quiz Çözme Deneyimi
Kullanıcı quiz listesinde Başla butonuna bastığında quiz çözme ekranı açılır. Üstte ilerleme çubuğu ve kaç sorunun cevaplanıp kaçının kaldığı görünür. Süre limiti olan quizlerde geri sayım sayacı çalışır, süre dolduğunda quiz otomatik tamamlanır. Sol taraftaki navigasyon butonlarıyla sorular arasında serbestçe geçiş yapılabilir. Emin olunmayan sorular işaretlenebilir, daha sonra kolayca geri dönülebilir. Cevaplar arka planda otomatik kaydedildiğinden sayfa yenilenirse ya da bağlantı kesilirse ilerleme kaybolmaz.
Quiz Bitir butonuna basıldığında puanlama otomatik yapılır ve sonuç sayfasına yönlendirilir. Sonuç sayfasında doğru, yanlış ve boş soru sayıları, kazanılan puan ve geçme durumu görüntülenir. Ayarlarda açıksa cevap inceleme bölümünde hangi sorunun doğru hangisinin yanlış yanıtlandığı ve doğru cevaplar gösterilir.
Dil Desteği
Ayarlar sekmesinden Türkçe, İngilizce veya Rusça seçilebilir. Dil değiştirildiğinde hem site arayüzü hem de admin paneli seçilen dile geçer. Kaydet butonuna basıldığında değişiklik anında uygulanır.
main.tpl :
[available=quiz]
{include file="engine/modules/xquiz_render.php"}
[/available]
static sayfalarda:
{include file="engine/modules/xquiz_render.php"}
Bahsettiğiniz modülü tamamen XOOPS CMS sistemi üzerine inşa ederek, o mimaride kodladım. Datalife Engine’e geçişlerde bu tür hataların ve sorunların yaşanması oldukça doğal. Belirttiğiniz hataları düzeltmeye başlayacağım. Yorumlarınız için teşekkür ederim.
@Nimad
Я полностью разработал этот модуль на системе XOOPS CMS, именно в этой архитектуре. При переходе на Datalife Engine возникновение таких ошибок и проблем вполне естественно. Я приступаю к исправлению указанных вами ошибок. Спасибо за ваши комментарии.
✅ CSRF: AJAX'ta dle_login_hash kontrolü
✅ Misafir güvenliği: guest_hash cookie sistemi, IP kaydı
✅ Tarih kontrolü: quiz_start_date / quiz_end_date frontend kontrolü
✅ Ordering sorusu: Drag-and-drop + mobil touch desteği
✅ after_each: Her sorudan sonra cevap gösterimi
✅ Leaderboard periyotları: Tüm zamanlar / Bu hafta / Bu ay
✅ Sertifika: Yazdırılabilir sertifika sistemi
✅ Sosyal paylaşım: Twitter, WhatsApp, link kopyalama
✅ Bloklar: ?xq_block=recent|topscores|random + ?xq_limit=N
✅ Admin form alanları: slug, image, tags, meta desc, sertifika checkbox, tarih alanları
✅ Drag-and-drop soru sıralaması: Admin panelde AJAX ile kayıt