<style>
.cvkirkuk-unique-cv-container { background-color:#ffffff!important; display:block!important; }
.cvkirkuk-unique-cv-container, .cvkirkuk-unique-cv-header, .cvkirkuk-unique-cv-photo-section, .cvkirkuk-unique-cv-photo-wrapper, .cvkirkuk-unique-photo, .cvkirkuk-unique-cv-header-content, .cvkirkuk-unique-cv-name, .cvkirkuk-unique-cv-title, .cvkirkuk-unique-cv-specialization, .cvkirkuk-unique-cv-info-grid, .cvkirkuk-unique-info-item, .cvkirkuk-unique-main, .cvkirkuk-unique-cv-section, .cvkirkuk-unique-cv-section-title, .cvkirkuk-unique-cv-grid, .cvkirkuk-unique-card, .cvkirkuk-unique-card-header, .cvkirkuk-unique-card-title, .cvkirkuk-unique-card-year, .cvkirkuk-unique-row, .cvkirkuk-unique-label, .cvkirkuk-unique-value, .cvkirkuk-unique-content-box, .cvkirkuk-unique-links-grid, .cvkirkuk-unique-link-item, .cvkirkuk-unique-icon, .cvkirkuk-unique-svg-icon, .cvkirkuk-unique-action-bar, .cvkirkuk-unique-btn, .cvkirkuk-unique-btn-primary {
font-family: 'Cairo', Arial, sans-serif !important;
box-sizing: border-box;
}
body {
--cvk-primary: #C6631C; /* اللون الأساسي (لون الموقع) */
--cvk-primary-rgb: 198, 99, 28; /* RGB للون الأساسي */
--cvk-secondary: #E07A32; /* لون ثانوي أفتح ومتناسق مع الأساسي */
--cvk-secondary-rgb: 224, 122, 50;
--cvk-accent: #d4af37; /* الذهبي (تم الإبقاء لأنه متناسق جداً مع البرتقالي) */
--cvk-accent-rgb: 212, 175, 55;
--cvk-accent-light: #f4d365; /* الذهبي الفاتح */
--cvk-accent-light-rgb: 244, 211, 101;
--cvk-text: #2C353D; /* النص */
--cvk-text-rgb: 44, 53, 61;
--cvk-text-light: #516170; /* نص ثانوي */
--cvk-text-light-rgb: 81, 97, 112;
--cvk-bg: #FFF; /* خلفية */
--cvk-bg-rgb: 255, 255, 255;
--cvk-bg-alt: #F8F9FA; /* خلفية بديلة */
--cvk-border: #E2E8F0; /* حدود */
--cvk-radius: 12px; /* زوايا */
--cvk-shadow: 0 2px 4px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.06);
--cvk-shadow-hover: 0 4px 8px rgba(0,0,0,0.08), 0 8px 24px rgba(0,0,0,0.12);
}
.cvkirkuk-unique-action-bar {
position: absolute;
left: 2rem;
top: 2rem;
z-index: 100;
}
.cvkirkuk-unique-btn {
padding: 0.875rem 1.75rem;
border: none;
border-radius: 12px;
cursor: pointer;
font-weight: 700;
display: inline-flex;
align-items: center;
gap: 0.625rem;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
font-size: 1rem;
text-decoration: none;
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
position: relative;
overflow: hidden;
}
.cvkirkuk-unique-btn::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
transition: left 0.5s;
}
.cvkirkuk-unique-btn:hover::before {
left: 100%;
}
.cvkirkuk-unique-btn-primary {
background: linear-gradient(135deg, var(--cvk-accent) 0%, var(--cvk-accent-light) 100%);
color: var(--cvk-primary);
text-shadow: 0 1px 2px rgba(var(--cvk-bg-rgb), 0.3);
}
.cvkirkuk-unique-btn-primary:hover {
background: linear-gradient(135deg, var(--cvk-accent-light) 0%, var(--cvk-accent) 100%);
transform: translateY(-3px);
box-shadow: 0 8px 20px rgba(var(--cvk-accent-rgb), 0.4);
}
.cvkirkuk-unique-btn-primary:active {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(var(--cvk-accent-rgb), 0.3);
}
.cvkirkuk-unique-btn .fa-download {
font-size: 1.1rem;
animation: bounce 2s infinite;
}
@keyframes bounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-3px); }
}
.cvkirkuk-unique-cv-container {max-width: 1200px;margin: 0 auto;background: var(--cvk-bg);border-radius: var(--cvk-radius);box-shadow: var(--cvk-shadow);overflow: hidden;animation: fadeIn 0.6s ease;position: relative;}
@keyframes fadeIn {from { opacity:0; transform:translateY(20px);} to {opacity:1;transform:translateY(0);}}
.cvkirkuk-unique-cv-header {background: linear-gradient(135deg, var(--cvk-primary) 0%, var(--cvk-secondary) 100%);color: var(--cvk-bg);display: grid;grid-template-columns: auto 1fr;gap: 2rem;padding: 2rem;position: relative;overflow: hidden;}
.cvkirkuk-unique-cv-photo-section {position: relative;z-index: 1;}
.cvkirkuk-unique-cv-photo-wrapper {position: relative;width: 220px;height: 220px;}
.cvkirkuk-unique-photo {width: 100%;height: 100%;border-radius: 20px;border: 5px solid rgba(255,255,255,0.2);object-fit: cover;transition: transform 0.3s ease;box-shadow: 0 8px 24px rgba(0,0,0,0.15);}
.cvkirkuk-unique-photo:hover { transform: scale(1.05);}
.cvkirkuk-unique-cv-header-content {position: relative;z-index: 1;}
.cvkirkuk-unique-cv-name {font-size: 2.5rem;font-weight: 700;margin-bottom: 0.5rem;color: white;text-shadow: 0 2px 4px rgba(0,0,0,0.1);}
.cvkirkuk-unique-cv-title {color: white;font-size: 1.3rem;margin-bottom: 0.5rem;font-weight: 600;}
.cvkirkuk-unique-cv-specialization {color: rgba(255,255,255,0.9);font-size: 1.1rem;margin-bottom: 1rem;}
.cvkirkuk-unique-cv-info-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));gap: 0.75rem;margin-top: 1rem;}
.cvkirkuk-unique-info-item {display: flex;align-items: center;gap: 0.75rem;color: rgba(255,255,255,0.95);font-size: 0.95rem;padding: 0.5rem;border-radius: 8px;transition: background 0.3s ease;}
.cvkirkuk-unique-info-item:hover { background: rgba(255,255,255,0.1);}
.cvkirkuk-unique-info-item a { color: inherit; text-decoration: none;}
.cvkirkuk-unique-main {padding: 2.5rem 2rem;}
.cvkirkuk-unique-cv-section {margin-bottom: 3rem;}
.cvkirkuk-unique-cv-section:last-child {margin-bottom:0;}
.cvkirkuk-unique-cv-section-title {color: var(--cvk-primary);font-size: 1.75rem;margin-bottom: 1.75rem;padding-bottom: 0.75rem;border-bottom: 3px solid var(--cvk-accent);display: flex;align-items: center;gap: 0.75rem;position: relative;}
.cvkirkuk-unique-cv-section-title .fa-solid { color:var(--cvk-accent); font-size:1.5rem;}
.cvkirkuk-unique-cv-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 1.5rem;margin-bottom: 1.5rem;}
.cvkirkuk-unique-card {background: white;border-radius: var(--cvk-radius);padding: 1.75rem;border: 1px solid var(--cvk-border);transition: all 0.3s ease;position: relative;overflow: hidden;}
.cvkirkuk-unique-card-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 1.25rem;padding-bottom: 0.75rem;border-bottom: 2px solid var(--cvk-bg-alt);}
.cvkirkuk-unique-card-title {font-size: 1.35rem;color: var(--cvk-primary);display: flex;align-items: center;gap: 0.5rem;font-weight: 700;}
.cvkirkuk-unique-card-title .fa-solid {color:var(--cvk-accent);}
.cvkirkuk-unique-card-year {
color: var(--cvk-bg);
font-weight: 700;
font-size: 0.9rem;
padding: 0.4rem 1rem;
background: linear-gradient(135deg, var(--cvk-accent), var(--cvk-accent-light));
border-radius: 20px;
box-shadow: 0 2px 8px rgba(var(--cvk-accent-rgb), 0.3);
}
.cvkirkuk-unique-row {display: flex;margin-bottom: 0.75rem;padding: 0.5rem 0;}
.cvkirkuk-unique-label {color: var(--cvk-text-light);min-width: 100px;font-weight: 600;font-size: 0.9rem;}
.cvkirkuk-unique-value {flex: 1;color: var(--cvk-text);}
.cvkirkuk-unique-content-box {background: white;border-radius: var(--cvk-radius);padding: 1.5rem;border: 1px solid var(--cvk-border);margin-bottom: 1rem;border-right: 4px solid var(--cvk-accent);transition: all 0.3s ease;}
.cvkirkuk-unique-content-box h4 {color: var(--cvk-primary);margin-bottom: 1rem;font-size: 1.1rem;display: flex;align-items: center;gap: 0.5rem;}
.cvkirkuk-unique-content-box p {color: var(--cvk-text);line-height: 1.8;}
.cvkirkuk-unique-links-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));gap: 1rem;margin-top: 1rem;}
.cvkirkuk-unique-link-item {background: white;padding: 1rem;border-radius: var(--cvk-radius);border: 1px solid var(--cvk-border);display: flex;align-items: center;gap: 0.75rem;transition: all 0.3s ease;}
.cvkirkuk-unique-link-item:hover {transform: translateY(-2px);box-shadow: var(--cvk-shadow-hover);border-color: var(--cvk-accent);}
.cvkirkuk-unique-link-item a {color: var(--cvk-primary);text-decoration: none;font-weight: 600;}
.cvkirkuk-unique-link-item a:hover {color: var(--cvk-accent);}
.cvkirkuk-unique-icon {display:inline-block;vertical-align:middle;}
.cvkirkuk-unique-svg-icon svg {display:inline-block;vertical-align:middle;}
@media print {
body { background: white; padding: 0;}
.cvkirkuk-unique-action-bar { display: none;}
.cvkirkuk-unique-cv-container { box-shadow: none;}
}
@media (max-width: 768px) {
.cvkirkuk-unique-action-bar {left: 1rem;top: 1rem;}
.cvkirkuk-unique-cv-header { grid-template-columns: 1fr; text-align:center; gap:1.5rem; padding:2rem 1rem;}
.cvkirkuk-unique-cv-photo-wrapper { width: 140px; height:140px;}
.cvkirkuk-unique-cv-name { font-size:2rem;}
.cvkirkuk-unique-cv-title { font-size:1.1rem;}
.cvkirkuk-unique-cv-specialization { font-size:1rem;}
.cvkirkuk-unique-cv-info-grid {justify-items:center;}
.cvkirkuk-unique-main { padding:1.5rem 1rem;}
.cvkirkuk-unique-cv-section-title { font-size:1.5rem;}
}
/* Enhanced Degree Card Styles */
.cvkirkuk-unique-degree-card-enhanced {
background: white;
border-radius: var(--cvk-radius);
padding: 0;
border: 1px solid var(--cvk-border);
transition: all 0.3s ease;
position: relative;
overflow: visible;
}
.cvkirkuk-unique-degree-card-enhanced:hover {
box-shadow: 0 6px 20px rgba(0, 121, 107, 0.15);
border-color: var(--cvk-primary);
transform: translateY(-2px);
}
.cvkirkuk-unique-degree-card-body {
padding: 1.5rem;
}
.cvkirkuk-unique-degree-main-info {
display: flex;
flex-direction: column;
gap: 0.75rem;
margin-bottom: 1rem;
}
.cvkirkuk-unique-degree-info-item {
display: flex;
align-items: flex-start;
gap: 0.75rem;
padding: 0.5rem 0;
border-bottom: 1px solid rgba(var(--cvk-border-rgb, 226, 232, 240), 0.5);
}
.cvkirkuk-unique-degree-info-item:last-child {
border-bottom: none;
}
.cvkirkuk-unique-degree-label {
color: var(--cvk-text-light);
font-weight: 600;
font-size: 0.9rem;
min-width: 90px;
display: flex;
align-items: center;
gap: 0.5rem;
flex-shrink: 0;
}
.cvkirkuk-unique-degree-label i {
color: var(--cvk-primary);
font-size: 0.85rem;
}
.cvkirkuk-unique-degree-value {
color: var(--cvk-text);
font-size: 0.95rem;
line-height: 1.6;
flex: 1;
}
.cvkirkuk-unique-degree-thesis-section {
background: linear-gradient(135deg, rgba(var(--cvk-primary-rgb), 0.03), rgba(var(--cvk-accent-rgb), 0.03));
border: 1px solid rgba(var(--cvk-accent-rgb), 0.2);
border-radius: 8px;
padding: 1rem;
margin-top: 1rem;
}
.cvkirkuk-unique-thesis-label {
display: flex;
align-items: center;
gap: 0.5rem;
color: var(--cvk-primary);
font-weight: 700;
font-size: 0.95rem;
margin-bottom: 0.75rem;
padding-bottom: 0.5rem;
border-bottom: 2px solid var(--cvk-accent);
}
.cvkirkuk-unique-thesis-label i {
color: var(--cvk-accent);
font-size: 1rem;
}
.cvkirkuk-unique-thesis-content {
color: var(--cvk-text);
font-size: 0.95rem;
line-height: 1.8;
text-align: justify;
padding: 0.5rem;
background: white;
border-radius: 6px;
font-style: italic;
}
/* Responsive adjustments for degree cards */
@media (max-width: 768px) {
.cvkirkuk-unique-degree-label {
min-width: 80px;
font-size: 0.85rem;
}
.cvkirkuk-unique-degree-value {
font-size: 0.9rem;
}
.cvkirkuk-unique-thesis-content {
font-size: 0.9rem;
}
.cvkirkuk-unique-degree-card-body {
padding: 1rem;
}
}
</style>ولاء عبدالكريم ناصر
مدرس - دكتوراه
اللغة العربية / الادب العربي
قسم التاريخ
كلية التربية الاساسية - جامعة كركوك
المؤهلات العلمية
البكالوريوس
2014 التخصص: اللغة العربية
الجامعة: كركوك
الكلية: كلية التربية للعلوم الانسانية
الماجستير
2018 التخصص: اللغة العربية / الادب
الجامعة: كركوك
الكلية: كلية التربية للعلوم الانسانية
عنوان الرسالة/الأطروحة:
بواعث الفاعلية في الشعر العربي قبل الاسلام
الدكتوراه
2023 التخصص: اللغة العربية/ الادب
الجامعة: كركوك
الكلية: كلية التربية للعلوم الانسانية
عنوان الرسالة/الأطروحة:
الهزيمة والنصر في شعر الحرب في العصر الجاهلي
الخبرة التدريسية
المواد المدرسة - الدراسات الأولية
اللغة العربية
التعليم الاساسي
الاحصاء التربوي
التربية البيئية والصحية
النتاج العلمي
المؤتمرات
المؤتمر العلمي السادس الموسوم (قراءات معرفية في العلوم الانسانية والاجتماعية) كلية الآداب جامعة القادسية
الجوائز والتكريمات
وسام الابداع من جامعة القادسية كلية الآداب للمشاركة في المؤتمر الدولي السادس (قراءات معرفية في العلوم الانسانية والاجتماعية)
<style>
/* Joomla Menu Override - Force lightbox above everything */
.cvkirkuk-unique-lightbox {
display: none;
position: fixed !important;
z-index: 999999 !important;
left: 0 !important;
top: 0 !important;
width: 100% !important;
height: 100% !important;
background-color: rgba(var(--cvk-text-rgb), 0.95);
animation: cvkirkuk-unique-fadeIn 0.3s ease;
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
overflow: auto;
}
.cvkirkuk-unique-lightbox.active {
display: flex !important;
align-items: center;
justify-content: center;
}
/* Extra overlay layer to ensure coverage */
.cvkirkuk-unique-lightbox-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(var(--cvk-text-rgb), 0.85);
z-index: 1;
}
.cvkirkuk-unique-lightbox-content {
position: relative;
z-index: 2;
max-width: 90%;
max-height: 90%;
animation: cvkirkuk-unique-zoomIn 0.3s ease;
padding: 20px;
}
.cvkirkuk-unique-lightbox-content img {
width: auto;
height: auto;
max-width: 100%;
max-height: 90vh;
border-radius: var(--cvk-radius);
box-shadow: 0 8px 32px rgba(var(--cvk-text-rgb), 0.8),
0 0 0 4px rgba(var(--cvk-accent-rgb), 0.3);
object-fit: contain;
background: var(--cvk-bg);
padding: 10px;
}
.cvkirkuk-unique-lightbox-close {
position: absolute;
top: -60px;
right: 0;
background: var(--cvk-accent);
color: var(--cvk-primary);
border: none;
font-size: 2rem;
width: 50px;
height: 50px;
border-radius: 50%;
cursor: pointer;
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 12px rgba(var(--cvk-text-rgb), 0.5);
z-index: 3;
}
.cvkirkuk-unique-lightbox-close:hover {
background: var(--cvk-accent-light);
transform: rotate(90deg) scale(1.1);
box-shadow: 0 6px 20px rgba(var(--cvk-accent-rgb), 0.6);
}
.cvkirkuk-unique-lightbox-close:active {
transform: rotate(90deg) scale(0.95);
}
@keyframes cvkirkuk-unique-fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes cvkirkuk-unique-zoomIn {
from {
transform: scale(0.5);
opacity: 0;
}
to {
transform: scale(1);
opacity: 1;
}
}
/* Mobile responsive */
@media (max-width: 768px) {
.cvkirkuk-unique-lightbox-close {
top: 10px;
right: 10px;
width: 40px;
height: 40px;
font-size: 1.5rem;
background: rgba(var(--cvk-accent-rgb), 0.95);
}
.cvkirkuk-unique-lightbox-content {
max-width: 95%;
max-height: 95%;
padding: 10px;
}
.cvkirkuk-unique-lightbox-content img {
max-height: 85vh;
}
}
/* Add clickable cursor and hover effect to photo */
.cvkirkuk-unique-photo {
cursor: pointer !important;
position: relative;
transition: all 0.3s ease;
}
.cvkirkuk-unique-photo::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.4);
opacity: 0;
transition: opacity 0.3s ease;
border-radius: 20px;
z-index: 1;
}
.cvkirkuk-unique-photo::after {
content: '\f00e';
font-family: 'Font Awesome 6 Free';
font-weight: 900;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-size: 2.5rem;
color: white;
opacity: 0;
transition: all 0.3s ease;
text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8);
z-index: 2;
}
.cvkirkuk-unique-photo:hover::before {
opacity: 1;
}
.cvkirkuk-unique-photo:hover::after {
opacity: 1;
transform: translate(-50%, -50%) scale(1.1);
}
.cvkirkuk-unique-photo:hover {
transform: scale(1.05);
}
/* Prevent body scroll when lightbox is open */
body.cvkirkuk-unique-lightbox-open {
overflow: hidden !important;
position: fixed;
width: 100%;
}
/* Override any Joomla template z-index conflicts */
.cvkirkuk-unique-lightbox.active ~ * {
z-index: auto !important;
}
</style><script>
(function() {
const lightbox = document.getElementById('cvkirkuk-unique-lightbox');
const lightboxImg = document.getElementById('cvkirkuk-unique-lightbox-img');
const closeBtn = document.querySelector('.cvkirkuk-unique-lightbox-close');
const overlay = document.querySelector('.cvkirkuk-unique-lightbox-overlay');
const photo = document.querySelector('.cvkirkuk-unique-photo');
if (photo && lightbox) {
photo.addEventListener('click', function(e) {
e.preventDefault();
e.stopPropagation();
lightboxImg.src = this.src;
lightbox.classList.add('active');
document.body.classList.add('cvkirkuk-unique-lightbox-open');
const joomlaMenus = document.querySelectorAll('.navbar, .nav-menu, header, [class*="menu"]');
joomlaMenus.forEach(menu => {
if (menu && !menu.closest('.cvkirkuk-unique-cv-container')) {
menu.style.zIndex = '1';
}
});
});
function closeLightbox() {
lightbox.classList.remove('active');
document.body.classList.remove('cvkirkuk-unique-lightbox-open');
const joomlaMenus = document.querySelectorAll('.navbar, .nav-menu, header, [class*="menu"]');
joomlaMenus.forEach(menu => {
if (menu && !menu.closest('.cvkirkuk-unique-cv-container')) {
menu.style.zIndex = '';
}
});
}
if (closeBtn) {
closeBtn.addEventListener('click', function(e) {
e.stopPropagation();
closeLightbox();
});
}
if (overlay) {
overlay.addEventListener('click', closeLightbox);
}
lightbox.addEventListener('click', function(e) {
if (e.target === lightbox) {
closeLightbox();
}
});
document.addEventListener('keydown', function(e) {
if (e.key === 'Escape' && lightbox.classList.contains('active')) {
closeLightbox();
}
});
const lightboxContent = document.querySelector('.cvkirkuk-unique-lightbox-content');
if (lightboxContent) {
lightboxContent.addEventListener('click', function(e) {
e.stopPropagation();
});
}
}
})();
</script><script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js"></script>
<script>
document.getElementById('downloadPDF').addEventListener('click', async function () {
const btn = this;
btn.disabled = true;
btn.innerHTML = '<i class="fa-solid fa-spinner fa-spin" data-mce-empty="1"> </i> جاري التحميل...';
const cv = document.querySelector('.cvkirkuk-unique-cv-container');
const actionBar = document.querySelector('.cvkirkuk-unique-action-bar');
if (actionBar) actionBar.style.display = 'none';
const originalStyles = {
maxWidth: cv.style.maxWidth,
margin: cv.style.margin,
boxShadow: cv.style.boxShadow,
borderRadius: cv.style.borderRadius,
overflow: cv.style.overflow,
height: cv.style.height,
backgroundColor: cv.style.backgroundColor,
width: cv.style.width,
opacity: cv.style.opacity,
filter: cv.style.filter
};
const printStyle = document.createElement('style');
printStyle.id = 'pdf-print-style';
printStyle.textContent = '.cvkirkuk-unique-cv-container, .cvkirkuk-unique-cv-container *, .cvkirkuk-unique-cv-container::before, .cvkirkuk-unique-cv-container::after, .cvkirkuk-unique-cv-container *::before, .cvkirkuk-unique-cv-container *::after { opacity: 1 !important; filter: none !important; backdrop-filter: none !important; } .cvkirkuk-unique-cv-header { background: linear-gradient(135deg, var(--cvk-primary) 0%, var(--cvk-secondary) 100%) !important; opacity: 1 !important; } body { background: var(--cvk-bg) !important; }';
document.head.appendChild(printStyle);
cv.style.maxWidth = '1400px';
cv.style.width = '1400px';
cv.style.margin = '0';
cv.style.boxShadow = 'none';
cv.style.borderRadius = '0';
cv.style.overflow = 'visible';
cv.style.height = 'auto';
cv.style.backgroundColor = '#ffffff';
cv.style.opacity = '1';
cv.style.filter = 'none';
await new Promise(resolve => setTimeout(resolve, 500));
try {
const cvRect = cv.getBoundingClientRect();
const canvas = await html2canvas(cv, {
scale: 2.5,
backgroundColor: '#ffffff',
useCORS: true,
allowTaint: false,
logging: false,
imageTimeout: 0,
removeContainer: false,
foreignObjectRendering: false,
letterRendering: true,
x: 0,
y: 0,
scrollY: -window.scrollY,
scrollX: -window.scrollX,
width: cv.offsetWidth,
height: cv.offsetHeight,
windowWidth: cv.offsetWidth,
windowHeight: cv.offsetHeight,
onclone: function(clonedDoc) {
const clonedCV = clonedDoc.querySelector('.cvkirkuk-unique-cv-container');
if (clonedCV) {
clonedCV.style.opacity = '1';
clonedCV.style.filter = 'none';
clonedCV.style.backgroundColor = '#ffffff';
clonedCV.style.position = 'relative';
clonedCV.style.left = '0';
clonedCV.style.top = '0';
const linksGrid = clonedCV.querySelector('.cvkirkuk-unique-links-grid');
if (linksGrid) {
linksGrid.style.display = 'block';
linksGrid.style.gridTemplateColumns = 'none';
}
const linkItems = clonedCV.querySelectorAll('.cvkirkuk-unique-link-item');
linkItems.forEach(item => {
item.style.width = '100%';
item.style.marginBottom = '0.5rem';
item.style.display = 'block';
item.style.whiteSpace = 'normal';
item.style.wordBreak = 'break-all';
});
const allLinks = clonedCV.querySelectorAll('a');
allLinks.forEach(link => {
const href = link.getAttribute('href');
if (href && href !== '#' && !href.startsWith('mailto:')) {
const urlText = clonedDoc.createTextNode(' (' + href + ')');
if (link.textContent.trim()) {
link.style.textDecoration = 'none';
link.style.color = '#000';
link.appendChild(urlText);
} else {
link.textContent = href;
link.style.textDecoration = 'none';
link.style.color = '#000';
}
} else if (href && href.startsWith('mailto:')) {
link.style.textDecoration = 'none';
link.style.color = '#fff';
}
});
const allSections = clonedCV.querySelectorAll('.cvkirkuk-unique-cv-section');
allSections.forEach(section => {
section.style.display = 'block';
section.style.visibility = 'visible';
section.style.opacity = '1';
});
const allElements = clonedCV.querySelectorAll('*');
allElements.forEach(el => {
el.style.opacity = '1';
el.style.filter = 'none';
});
}
}
});
const imgData = canvas.toDataURL('image/jpeg', 0.95);
const pdf = new jspdf.jsPDF({
orientation: 'portrait',
unit: 'mm',
format: 'a4',
compress: true
});
const pageWidth = 210;
const pageHeight = 297;
const imgWidth = pageWidth;
const imgHeight = (canvas.height * imgWidth) / canvas.width;
let heightLeft = imgHeight;
let position = 0;
pdf.addImage(imgData, 'JPEG', 0, position, imgWidth, imgHeight, undefined, 'FAST');
heightLeft -= pageHeight;
while (heightLeft > 0) {
position = heightLeft - imgHeight;
pdf.addPage();
pdf.addImage(imgData, 'JPEG', 0, position, imgWidth, imgHeight, undefined, 'FAST');
heightLeft -= pageHeight;
}
pdf.save('السيرة_العلمية.pdf');
} catch (error) {
console.error('Error:', error);
alert('حدث خطأ أثناء إنشاء PDF. يرجى المحاولة مرة أخرى.');
}
const printStyleEl = document.getElementById('pdf-print-style');
if (printStyleEl) printStyleEl.remove();
Object.keys(originalStyles).forEach(key => {
cv.style[key] = originalStyles[key];
});
if (actionBar) actionBar.style.display = '';
btn.disabled = false;
btn.innerHTML = '<i class="fa-solid fa-download" data-mce-empty="1"> </i> تحميل السيرة بصيغة PDF';
});
function openResearchModal_cvkirkuk_unique(year) {
const modal = document.getElementById('modal_cvkirkuk_unique_' + year);
if (modal) {
modal.style.display = 'flex';
modal.style.alignItems = 'center';
modal.style.justifyContent = 'center';
document.body.classList.add('modal-open');
document.body.style.overflow = 'hidden';
}
}
function closeResearchModal_cvkirkuk_unique(year) {
const modal = document.getElementById('modal_cvkirkuk_unique_' + year);
if (modal) {
modal.style.display = 'none';
document.body.classList.remove('modal-open');
document.body.style.overflow = '';
}
}
// Close modal on ESC key
document.addEventListener('keydown', function(e) {
if (e.key === 'Escape') {
const modals = document.querySelectorAll('[id^="modal_cvkirkuk_unique_"]');
modals.forEach(modal => {
modal.style.display = 'none';
});
document.body.classList.remove('modal-open');
document.body.style.overflow = '';
}
});
</script>
كلية التربية الاساسية – جامعة كركوك