O S V E D Č E N I E
+o absolvovaní kurzu
+ +{{courseTitle}}
+ {{#if courseModules}} +{{courseModules}}
+ {{/if}} + {{#if dateRange}} +{{dateRange}}
+ {{/if}} +diff --git a/src/assets/certificate/signature-patrik.png b/src/assets/certificate/signature-patrik.png new file mode 100644 index 0000000..7e7d9c7 Binary files /dev/null and b/src/assets/certificate/signature-patrik.png differ diff --git a/src/services/ai-kurzy/certificate.service.js b/src/services/ai-kurzy/certificate.service.js index d51f63d..4a7f261 100644 --- a/src/services/ai-kurzy/certificate.service.js +++ b/src/services/ai-kurzy/certificate.service.js @@ -16,28 +16,56 @@ const TEMPLATES_DIR = path.join(process.cwd(), 'src', 'templates', 'certificates * Available certificate templates */ export const CERTIFICATE_TEMPLATES = { + // AI certifikáty s dynamickým názvom kurzu a rôznymi lektormi AIcertifikat: { - name: 'AI Certifikát', + name: 'AI Certifikát (Zdarílek)', file: 'AIcertifikat.html', - description: 'Osvedčenie o absolvovaní AI kurzu', + description: 'AI kurz - lektor Zdarílek + Gablasová', background: 'background.jpeg', }, - ScrumGeneric: { - name: 'Scrum (Gablas)', - file: 'ScrumGeneric.html', - description: 'Scrum Master / Product Owner - lektor Gablas', + AIcertifikatGablas: { + name: 'AI Certifikát (Gablas)', + file: 'AIcertifikatGablas.html', + description: 'AI kurz - lektor Gablas + Gablasová', + background: 'background.jpeg', + }, + AIcertifikatPatrik: { + name: 'AI Certifikát (Patrik)', + file: 'AIcertifikatPatrik.html', + description: 'AI kurz - lektor Patrik + Gablasová', + background: 'background.jpeg', + }, + // Scrum certifikáty - fixný názov kurzu, podpisy v pozadí + ScrumMaster: { + name: 'Scrum Master', + file: 'ScrumMaster.html', + description: 'Scrum Master - Gablas + Gablasová', background: 'background-blue.jpeg', }, - ITIL: { - name: 'ITIL (Husam)', - file: 'ITIL.html', - description: 'ITIL Foundation - lektor Husam', + ScrumProductOwner: { + name: 'Scrum Product Owner', + file: 'ScrumProductOwner.html', + description: 'Scrum Product Owner - Gablas + Gablasová', + background: 'background-blue.jpeg', + }, + // ITIL certifikát - fixný názov kurzu, podpisy v pozadí + ITILFoundation: { + name: 'ITIL® 4 Foundation', + file: 'ITILFoundation.html', + description: 'ITIL Foundation - Husam + Gablasová', background: 'background-green.jpeg', }, - PRINCE2: { - name: 'PRINCE2 (Gablas)', - file: 'PRINCE2.html', - description: 'PRINCE2 Foundation/Practitioner - lektor Gablas', + // PRINCE2 certifikáty - fixný názov kurzu, podpisy v pozadí + PRINCE2Foundation: { + name: 'PRINCE2® Foundation', + file: 'PRINCE2Foundation.html', + description: 'PRINCE2 Foundation - Gablas + Gablasová', + background: 'background-orange.jpeg', + }, + PRINCE2Practitioner: { + name: 'PRINCE2® Practitioner', + file: 'PRINCE2Practitioner.html', + description: 'PRINCE2 Practitioner - Gablas + Gablasová', background: 'background-orange.jpeg', }, }; @@ -74,16 +102,20 @@ const loadAssets = async (templateName) => { const template = CERTIFICATE_TEMPLATES[templateName]; const backgroundFile = template?.background || 'background.jpeg'; - const [background, signatureGablasova, signatureZdarilek] = await Promise.all([ + const [background, signatureGablasova, signatureZdarilek, signatureGablas, signaturePatrik] = await Promise.all([ fs.readFile(path.join(ASSETS_DIR, backgroundFile)), fs.readFile(path.join(ASSETS_DIR, 'signature-gablasova.png')), fs.readFile(path.join(ASSETS_DIR, 'signature-zdarilek.png')), + fs.readFile(path.join(ASSETS_DIR, 'signature-gablas.png')), + fs.readFile(path.join(ASSETS_DIR, 'signature-patrik.png')), ]); return { backgroundImage: `data:image/jpeg;base64,${background.toString('base64')}`, signatureGablasova: `data:image/png;base64,${signatureGablasova.toString('base64')}`, signatureZdarilek: `data:image/png;base64,${signatureZdarilek.toString('base64')}`, + signatureGablas: `data:image/png;base64,${signatureGablas.toString('base64')}`, + signaturePatrik: `data:image/png;base64,${signaturePatrik.toString('base64')}`, }; }; diff --git a/src/templates/certificates/AIcertifikatGablas.html b/src/templates/certificates/AIcertifikatGablas.html new file mode 100644 index 0000000..ed0e0a8 --- /dev/null +++ b/src/templates/certificates/AIcertifikatGablas.html @@ -0,0 +1,163 @@ + + +
+ + +o absolvovaní kurzu
+ +{{courseModules}}
+ {{/if}} + {{#if dateRange}} +{{dateRange}}
+ {{/if}} +o absolvovaní kurzu
+ +{{courseModules}}
+ {{/if}} + {{#if dateRange}} +{{dateRange}}
+ {{/if}} +{{dateRange}}
+ {{/if}} +v rozsahu 16 hodín
+