Files
muglasurucukursu/apply-all-replacements.js

77 lines
4.3 KiB
JavaScript

const fs = require('fs');
const path = require('path');
const CLOUD_BASE = 'https://res.cloudinary.com/du7xohbct/image/upload/f_auto,q_auto';
// Mappings from both sources
const replacements1 = {
'images/muglasurcukursufoto/araba1.JPG': `${CLOUD_BASE}/v1777917585/muglasurucukursu/araba1.jpg`,
'images/muglasurcukursufoto/arababakim1.JPG': `${CLOUD_BASE}/v1777917588/muglasurucukursu/arababakim1.jpg`,
'images/muglasurcukursufoto/arababakim2.JPG': `${CLOUD_BASE}/v1777917591/muglasurucukursu/arababakim2.jpg`,
'images/muglasurcukursufoto/arababakim3.JPG': `${CLOUD_BASE}/v1777917594/muglasurucukursu/arababakim3.jpg`,
'images/muglasurcukursufoto/arababakim4.JPG': `${CLOUD_BASE}/v1777917597/muglasurucukursu/arababakim4.jpg`,
'images/muglasurcukursufoto/arababakim5.JPG': `${CLOUD_BASE}/v1777917600/muglasurucukursu/arababakim5.jpg`,
'images/muglasurcukursufoto/arabadikey1.JPG': `${CLOUD_BASE}/v1777917604/muglasurucukursu/arabadikey1.jpg`,
'images/muglasurcukursufoto/arabadikey2.JPG': `${CLOUD_BASE}/v1777917607/muglasurucukursu/arabadikey2.jpg`,
'images/muglasurcukursufoto/arabagenel1.JPG': `${CLOUD_BASE}/v1777917612/muglasurucukursu/arabagenel1.jpg`,
'images/muglasurcukursufoto/arabagenel2.JPG': `${CLOUD_BASE}/v1777917616/muglasurucukursu/arabagenel2.jpg`,
'images/muglasurcukursufoto/arabaparkdikey.JPG': `${CLOUD_BASE}/v1777917619/muglasurucukursu/arabaparkdikey.jpg`,
'images/muglasurcukursufoto/arabaparketme1.JPG': `${CLOUD_BASE}/v1777917622/muglasurucukursu/arabaparketme1.jpg`,
'images/muglasurcukursufoto/arabasurus1.JPG': `${CLOUD_BASE}/v1777917624/muglasurucukursu/arabasurus1.jpg`,
'images/muglasurcukursufoto/logo.JPG': `${CLOUD_BASE}/v1777917625/muglasurucukursu/logo.jpg`,
'images/muglasurcukursufoto/motor.JPG': `${CLOUD_BASE}/v1777917627/muglasurucukursu/motor.jpg`,
'images/muglasurcukursufoto/motor1.JPG': `${CLOUD_BASE}/v1777917630/muglasurucukursu/motor1.jpg`,
'images/muglasurcukursufoto/motor2.JPG': `${CLOUD_BASE}/v1777917633/muglasurucukursu/motor2.jpg`,
'images/muglasurcukursufoto/motor3.JPG': `${CLOUD_BASE}/v1777917635/muglasurucukursu/motor3.jpg`,
'images/muglasurcukursufoto/motor4.JPG': `${CLOUD_BASE}/v1777917638/muglasurucukursu/motor4.jpg`,
'images/muglasurcukursufoto/motor5.JPG': `${CLOUD_BASE}/v1777917641/muglasurucukursu/motor5.jpg`,
'images/muglasurcukursufoto/motorhoca.JPG': `${CLOUD_BASE}/v1777917643/muglasurucukursu/motorhoca.jpg`,
'images/muglasurcukursufoto/motorhocasurus1.JPG': `${CLOUD_BASE}/v1777917645/muglasurucukursu/motorhocasurus1.jpg`,
'images/muglasurcukursufoto/motorsade1.JPG': `${CLOUD_BASE}/v1777917648/muglasurucukursu/motorsade1.jpg`,
'images/muglasurcukursufoto/tirdikey.JPG': `${CLOUD_BASE}/v1777917651/muglasurucukursu/tirdikey.jpg`,
'images/muglasurcukursufoto/tirgenis.JPG': `${CLOUD_BASE}/v1777917654/muglasurucukursu/tirgenis.jpg`,
};
const urls2 = JSON.parse(fs.readFileSync(path.join(__dirname, 'cloudinary-urls-images.json'), 'utf-8'));
const replacements2 = {};
for (const [filename, cloudUrl] of Object.entries(urls2)) {
replacements2[`images/${filename}`] = cloudUrl.replace('/image/upload/', '/image/upload/f_auto,q_auto/');
}
const allReplacements = { ...replacements1, ...replacements2 };
const FILES = ['index.html', 'about.html', 'contact.html', 'courses.html', 'services.html', 'team.html', 'css/custom.css'];
let totalReplacements = 0;
for (const file of FILES) {
const filePath = path.join(__dirname, file);
if (!fs.existsSync(filePath)) continue;
let content = fs.readFileSync(filePath, 'utf-8');
let fileCount = 0;
for (const [localPath, cloudUrl] of Object.entries(allReplacements)) {
// Escape for regex and handle possible ../ or ./ prefixes
// We want to match (maybe ../ or ./ or nothing) + localPath
const escapedLocalPath = localPath.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
const regex = new RegExp(`(\\.\\.\\/|\\.\\/)?${escapedLocalPath}`, 'g');
const matches = content.match(regex);
if (matches) {
fileCount += matches.length;
content = content.replace(regex, cloudUrl);
}
}
if (fileCount > 0) {
fs.writeFileSync(filePath, content);
console.log(`${file}: ${fileCount} yol güncellendi`);
totalReplacements += fileCount;
} else {
console.log(`⏭️ ${file}: değişiklik yok`);
}
}
console.log(`\n🎉 Toplam ${totalReplacements} resim yolu güncellendi!`);