انتقل إلى المحتوى

ميدياويكي:Common.js

من Dbspedia
مراجعة ١٣:٣٧، ١٥ أكتوبر ٢٠٢٦ بواسطة Admin (نقاش | مساهمات)

ملاحظة: بعد الحفظ، قد يلزمك محو الاختزان الخاص بمتصفحك لرؤية التغييرات.

  • فايرفوكس / سافاري: أمسك Shift أثناء ضغط Reload، أو اضغط على إما Ctrl-F5 أو Ctrl-R (⌘-R على ماك)
  • جوجل كروم: اضغط Ctrl-Shift-R (⌘-Shift-R على ماك)
  • إنترنت إكسبلورر/إيدج: أمسك Ctrl أثناء ضغط Refresh، أو اضغط Ctrl-F5
  • أوبرا: اضغط Ctrl-F5.
/* 🛠️ كود فحص واختبار مصفوفة الـ printouts الحية في صفحة المعرفات */
$(document).ready(function() {
    if (mw.config.get('wgPageName') === 'المعرفات') {
        var $table = $('#table-ids-mw');
        if ($table.length > 0) {
            // تحديث العناوين لتبين مخرجات الفحص
            $table.find('th').eq(0).text('اسم الصفحة (title)');
            $table.find('th').eq(1).text('مصفوفة الـ printouts الخام من السيرفر (كائن JSON)');
        }

        // الاستعلام الدلالي الحالي الموجه لموقعك
        var askQuery = "[[معرف_الشخص::+]]|?معرف_الشخص|?معرف_الأب|limit=10";
        var apiUrl = '/api.php?action=ask&format=json&query=' + encodeURIComponent(askQuery);
        
        $.getJSON(apiUrl, function(data) {
            var results = (data && data.query) ? data.query.results : null;
            if (results && Object.keys(results).length > 0) {
                var rowsHtml = '';
                
                $.each(results, function(title, pageData) {
                    var printouts = pageData.printouts || {};
                    
                    // تحويل مصفوفة الـ printouts كاملة إلى نص مقروء لرؤية المفاتيح والقيم
                    var jsonString = JSON.stringify(printouts);

                    rowsHtml += '<tr>' +
                                '<td style="padding: 8px 12px; font-weight: bold; color: #2a4b7c;">' + title + '</td>' +
                                '<td style="padding: 8px 12px; font-family: monospace; font-size: 11px; color: #d35400; background: #fafafa; direction: ltr; text-align: left;">' + jsonString + '</td>' +
                                '</tr>';
                });
                
                $table.find('tbody').html(rowsHtml);
            } else {
                $table.find('tbody').html('<tr><td colspan="2" style="color:red; text-align:center;">❌ الاستعلام عاد بنتائج فارغة من السيمانتك!</td></tr>');
            }
        }).fail(function() {
            $table.find('tbody').html('<tr><td colspan="2" style="color:red; text-align:center;">❌ فشل الاتصال بالـ API المحلي!</td></tr>');
        });
    }
});