
<!DOCTYPE html>
<html lang="ar">
<head>
<meta charset="utf-8">
<title>آخر مقالات pcgamz.com</title>
<style>
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; line-height: 1.7; color: #111; padding: 20px; }
h2 { color: #0b57d0; font-size: 24px; margin-bottom: 12px; }
.status { font-size: 14px; color: #555; margin-bottom: 12px; }
ul.posts { list-style: none; padding: 0; margin: 0; }
ul.posts li { margin: 6px 0; }
ul.posts a { color: #0b57d0; text-decoration: none; }
ul.posts a:hover { text-decoration: underline; }
</style>
</head>
<body>
<h2>📰 جميع مقالات pcgamz.com</h2>
<div class="status" id="status">جاري التحميل…</div>
<ul class="posts" id="posts"></ul>
<script>
(function(){
// إعدادات
var BLOG_URL = 'https://www.pcgamz.com';
var MAX_PER_PAGE= 150; // حجم الدفعة (حتى 500 ممكن، 150 آمن)
var startIndex = 1; // بداية الجلب
var allPosts = []; // تجميع كل النتائج
var done = false; // انتهاء الجلب
var statusEl = document.getElementById('status');
var listEl = document.getElementById('posts');
// اسم كولباك متغير لتجنب التعارض
function callbackName(page) { return 'feedCallback_' + page; }
// إنشاء سكربت JSONP
function loadPage(start){
var cb = callbackName(start);
// عرّف الدالة العمومية التي ستستدعى من JSONP
window[cb] = function(json){
try {
var entries = (json.feed && Array.isArray(json.feed.entry)) ? json.feed.entry : [];
// خرائط العنوان + الرابط البديل
entries.forEach(function(e){
var title = e.title && e.title.$t ? e.title.$t : 'بدون عنوان';
var alt = (e.link || []).find(function(l){ return l.rel === 'alternate'; });
if(alt && alt.href){
allPosts.push({ title: title, link: alt.href });
}
});
// إذا كانت الدفعة أقل من حجمها أو لا توجد بيانات -> انتهى
if(entries.length < MAX_PER_PAGE || entries.length === 0){
done = true;
render();
} else {
// تابع للصفحة التالية
startIndex += MAX_PER_PAGE;
statusEl.textContent = 'جاري التحميل… ' + allPosts.length + ' مقال حتى الآن';
loadPage(startIndex);
}
} catch (err) {
console.error(err);
statusEl.textContent = 'حدث خطأ أثناء التحميل.';
} finally {
// تنظيف: إزالة السكربت والدالة
var s = document.getElementById(cb);
if(s) s.remove();
try { delete window[cb]; } catch(_) { window[cb] = undefined; }
}
};
// إنشاء عنصر السكربت لطلب JSONP
var url = BLOG_URL + '/feeds/posts/summary' +
'?alt=json-in-script' +
'&max-results=' + MAX_PER_PAGE +
'&start-index=' + start +
'&callback=' + cb;
var script = document.createElement('script');
script.src = url;
script.id = cb;
script.onerror = function(){
statusEl.textContent = 'تعذر تحميل الخلاصة.';
};
document.body.appendChild(script);
}
// عرض النتائج
function render(){
// ترتيب أبجدي (يمكن تغييره بتاريخ لاحقاً إن رغبت)
allPosts.sort(function(a,b){ return a.title.localeCompare(b.title, 'ar'); });
// بناء العناصر
var frag = document.createDocumentFragment();
allPosts.forEach(function(p){
var li = document.createElement('li');
var a = document.createElement('a');
a.href = p.link;
a.textContent = p.title;
a.target = '_blank';
a.rel = 'noopener';
li.appendChild(a);
frag.appendChild(li);
});
listEl.innerHTML = '';
listEl.appendChild(frag);
statusEl.textContent = 'تم التحميل: ' + allPosts.length + ' مقال';
}
// ابدأ التحميل
loadPage(startIndex);
})();
</script>
</body>
</html>