feat: enable viewing and downloading of CV-Cris-Charles-Garcia.pdf across portfolio and maintenance page
This commit is contained in:
1 parent
457a2278f6
commit
c369b7dde2
7 files changed
+52
-64
No files matched your search
Binary file not shown.
@@ -1,57 +0,0 @@
|
||||
%PDF-1.4
|
||||
1 0 obj
|
||||
<< /Type /Catalog /Pages 2 0 R >>
|
||||
endobj
|
||||
2 0 obj
|
||||
<< /Type /Pages /Kids [3 0 R] /Count 1 >>
|
||||
endobj
|
||||
3 0 obj
|
||||
<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R /F2 6 0 R >> >> >>
|
||||
endobj
|
||||
4 0 obj
|
||||
<< /Length 380 >>
|
||||
stream
|
||||
BT
|
||||
/F1 20 Tf
|
||||
50 720 Td
|
||||
(Cris Charles Garcia - Software Developer) Tj
|
||||
0 -30 Td
|
||||
/F2 11 Tf
|
||||
(Email: crischarlesgarcia345@gmail.com | Location: Laguna, Philippines) Tj
|
||||
0 -18 Td
|
||||
(GitHub: github.com/ssbg04) Tj
|
||||
0 -30 Td
|
||||
/F1 14 Tf
|
||||
(Certifications) Tj
|
||||
0 -20 Td
|
||||
/F2 11 Tf
|
||||
(- Cisco: Computer Hardware Basics) Tj
|
||||
0 -16 Td
|
||||
(- Cisco: Digital Awareness) Tj
|
||||
0 -16 Td
|
||||
(- Cisco: Endpoint Security) Tj
|
||||
0 -16 Td
|
||||
(- Cisco: Introduction to Cybersecurity) Tj
|
||||
ET
|
||||
endstream
|
||||
endobj
|
||||
5 0 obj
|
||||
<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica-Bold >>
|
||||
endobj
|
||||
6 0 obj
|
||||
<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >>
|
||||
endobj
|
||||
xref
|
||||
0 7
|
||||
0000000000 65535 f
|
||||
0000000009 00000 n
|
||||
0000000058 00000 n
|
||||
0000000115 00000 n
|
||||
0000000253 00000 n
|
||||
0000000685 00000 n
|
||||
0000000757 00000 n
|
||||
trailer
|
||||
<< /Size 7 /Root 1 0 R >>
|
||||
startxref
|
||||
824
|
||||
%%EOF
|
||||
Binary file not shown.
@@ -75,16 +75,30 @@ export default function About({ settings, experience }: AboutProps) {
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div className="pt-2">
|
||||
{/* Dual Action: View and Download Resume/CV */}
|
||||
<div className="pt-2 grid grid-cols-2 gap-2">
|
||||
<a
|
||||
href={settings.resumeFile && settings.resumeFile !== '#' ? settings.resumeFile : '/Cris_Charles_Garcia_Resume.pdf'}
|
||||
download="Cris_Charles_Garcia_Resume.pdf"
|
||||
className="w-full inline-flex items-center justify-center gap-2 px-4 py-2 rounded-xl bg-primary-custom text-white text-xs font-medium hover:bg-primary-custom/90 transition-all cursor-pointer"
|
||||
href={settings.resumeFile && settings.resumeFile !== '#' ? settings.resumeFile : '/CV-Cris-Charles-Garcia.pdf'}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="inline-flex items-center justify-center gap-1.5 px-3 py-2 rounded-xl bg-primary-custom text-white text-xs font-medium hover:bg-primary-custom/90 transition-all cursor-pointer text-center"
|
||||
>
|
||||
<svg className="w-3.5 h-3.5" fill="none" stroke="currentColor" strokeWidth="2" viewBox="0 0 24 24">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" d="M2.036 12.322a1.012 1.012 0 0 1 0-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178Z" />
|
||||
<path strokeLinecap="round" strokeLinejoin="round" d="M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z" />
|
||||
</svg>
|
||||
View CV
|
||||
</a>
|
||||
|
||||
<a
|
||||
href={settings.resumeFile && settings.resumeFile !== '#' ? settings.resumeFile : '/CV-Cris-Charles-Garcia.pdf'}
|
||||
download="CV-Cris-Charles-Garcia.pdf"
|
||||
className="inline-flex items-center justify-center gap-1.5 px-3 py-2 rounded-xl border border-border-custom hover:border-primary-custom/40 text-foreground-custom text-xs font-medium hover:bg-primary-custom/5 transition-all cursor-pointer text-center"
|
||||
>
|
||||
<svg className="w-3.5 h-3.5" fill="none" stroke="currentColor" strokeWidth="2" viewBox="0 0 24 24">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" d="M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3" />
|
||||
</svg>
|
||||
Download Resume/CV
|
||||
Download
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@ export const mockSiteSettings: SiteSettings = {
|
||||
],
|
||||
email: "crischarlesgarcia345@gmail.com",
|
||||
location: "Laguna, Philippines",
|
||||
resumeFile: "/Cris_Charles_Garcia_Resume.pdf"
|
||||
resumeFile: "/CV-Cris-Charles-Garcia.pdf"
|
||||
};
|
||||
|
||||
export const mockSocialLinks: SocialLink[] = [
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ export const onRequest = defineMiddleware((context, next) => {
|
||||
pathname === '/maintenance' ||
|
||||
pathname.startsWith('/_astro') ||
|
||||
pathname.startsWith('/api') ||
|
||||
/\.(png|svg|ico|webp|jpg|jpeg|gif|css|js|txt|xml|json|woff2?|ttf|eot)$/i.test(pathname)
|
||||
/\.(png|svg|ico|webp|jpg|jpeg|gif|css|js|txt|xml|json|woff2?|ttf|eot|pdf)$/i.test(pathname)
|
||||
) {
|
||||
return next();
|
||||
}
|
||||
|
||||
@@ -67,6 +67,37 @@ const socialLinks = await getSocialLinks();
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{/* Resume / CV Section */}
|
||||
<div class="pt-4 border-t border-border-custom/60 flex flex-col gap-2.5">
|
||||
<span class="text-xs font-mono uppercase tracking-wider text-muted-foreground-custom">
|
||||
Resume / Curriculum Vitae
|
||||
</span>
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
<a
|
||||
href="/CV-Cris-Charles-Garcia.pdf"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
class="inline-flex items-center justify-center gap-1.5 px-3 py-2 rounded-xl bg-primary-custom text-white text-xs font-medium hover:bg-primary-custom/90 transition-all text-center"
|
||||
>
|
||||
<svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
|
||||
<path stroke-linecap="round" stroke-linejoin="round" d="M2.036 12.322a1.012 1.012 0 0 1 0-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178Z" />
|
||||
<path stroke-linecap="round" stroke-linejoin="round" d="M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z" />
|
||||
</svg>
|
||||
View CV
|
||||
</a>
|
||||
<a
|
||||
href="/CV-Cris-Charles-Garcia.pdf"
|
||||
download="CV-Cris-Charles-Garcia.pdf"
|
||||
class="inline-flex items-center justify-center gap-1.5 px-3 py-2 rounded-xl border border-border-custom hover:border-primary-custom/40 text-foreground-custom text-xs font-medium hover:bg-primary-custom/5 transition-all text-center"
|
||||
>
|
||||
<svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
|
||||
<path stroke-linecap="round" stroke-linejoin="round" d="M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3" />
|
||||
</svg>
|
||||
Download PDF
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
{/* Understated footer */}
|
||||
|
||||
Reference in new issue
Block a user