Latin Amerika'nın en saygın sinema etkinliklerinden biri olarak kabul edilen Morelia Uluslararası Film Festivali (FICM), 23. yılında yine sinema dünyasının gözünü Meksika'ya çeviriyor. Bu yılki seçki, hem ülkenin usta yönetmenlerini hem de adını yeni duyuran yetenekleri bir araya getirerek sinematik bir şölen vaat ediyor. Festivalin en çok konuşulan yapımları arasında ise Hollywood'un dev isimleri Brad Pitt ve Diego Luna'nın yapımcı olarak desteklediği filmler öne çıkıyor.
Devlerin Kapışması: Eimbcke, Cacho ve Pablos Sahnede
Festivalin ana yarışma bölümü, Meksika sinemasının ağır toplarını ağırlıyor. İlk filmi “Duck Season” ile büyük beğeni toplayan usta yönetmen Fernando Eimbcke, Brad Pitt'in yapım şirketi Plan B Entertainment'ın düşük bütçeli film projesi kapsamında çektiği dramedi türündeki “Olmo” ile yarışıyor. Hollywood desteği, filmin uluslararası alandaki görünürlüğünü şimdiden artırmış durumda.
Bir diğer dikkat çeken isim ise “Bardo” ve “Zama” gibi filmlerdeki ikonik performanslarıyla tanınan efsanevi aktör Daniel Giménez Cacho. Cacho, bu kez yönetmen koltuğuna oturarak çektiği ilk uzun metrajlı filmi “Juana” ile Morelia'da izleyici karşısına çıkacak. Usta bir aktörün yönetmenlik vizyonunu nasıl yansıtacağı ise merak konusu.
Ayrıca, Venedik Film Festivali'nin Ufuklar bölümünde de yarışacak olan ve yapımcılığını Diego Luna ile Inna Payan'ın üstlendiği David Pablos imzalı “On the Road” (“En el Camino”) da festivalin iddialı yapımları arasında yer alıyor. Luna, aynı zamanda Jennifer Lopez ile başrolü paylaştığı ve Locarno Film Festivali'nde uluslararası prömiyerini yapacak olan “Kiss of the Spider Woman” filmiyle de gündemde. Bu üç büyük ismin aynı platformda yarışması, Meksika sinemasının güncel dinamikleri hakkında önemli ipuçları sunuyor.
Öne Çıkan Bir Tema: Çocukların Gözünden Dünya
Bu yılki yarışma filmlerinde göze çarpan ilginç bir tesadüf, birçoğunun çocuk kahramanları merkezine alması. “Olmo”da hasta babasına bakan 14 yaşındaki bir gencin hikayesi, “The Devil Smokes…” filminde kardeşlik bağları ve çocukluk korkuları, “Vanilla”da ise 8 yaşındaki bir kızın ailesinin ekonomik mücadelesine tanıklığı gibi temalar, yönetmenlerin günümüz dünyasını genç nesillerin perspektifinden anlatma eğilimini gösteriyor. Bu durum, Meksikalı sinemacıların toplumsal sorunlara daha masum ama bir o kadar da keskin bir bakış açısıyla yaklaştığının bir işareti olabilir.
Festivalin Yeni Tarihi: Bir Kazanç mı, Kayıp mı?
{
const isExpanded = menuButton.getAttribute('aria-expanded') === 'true';
menuButton.setAttribute('aria-expanded', !isExpanded);
mobileMenu.classList.toggle('hidden');
});
}
const searchInput = document.getElementById('search-input');
const searchResults = document.getElementById('search-results');
if (searchInput) {
searchInput.addEventListener('input', function() {
const query = this.value.trim();
if (query.length < 2) {
searchResults.innerHTML = '';
searchResults.classList.add('hidden');
return;
}
fetch(`/AI_API/arama_api.php?q=${encodeURIComponent(query)}`)
.then(response => response.json())
.then(data => {
if (data.length > 0) {
let resultsHtml = '';
data.forEach(item => {
resultsHtml += `
-
${item.title}
`;
});
resultsHtml += '
';
searchResults.innerHTML = resultsHtml;
searchResults.classList.remove('hidden');
} else {
searchResults.innerHTML = 'Sonuç bulunamadı.
';
searchResults.classList.remove('hidden');
}
})
.catch(error => {
console.error('Arama hatası:', error);
searchResults.innerHTML = 'Arama sırasında bir hata oluştu.
';
searchResults.classList.remove('hidden');
});
});
document.addEventListener('click', function(event) {
if (!searchInput.contains(event.target) && !searchResults.contains(event.target)) {
searchResults.classList.add('hidden');
}
});
}
const subscribeFormFooter = document.getElementById('subscribe-form-footer');
if (subscribeFormFooter) {
console.log('Footer abonelik formu bulundu.');
subscribeFormFooter.addEventListener('submit', function(event) {
event.preventDefault();
console.log('Footer formu gönderildi.');
const emailInput = document.getElementById('email-address-footer');
const message = document.getElementById('subscribe-message-footer');
const email = emailInput.value;
message.textContent = 'Abone olunuyor...';
message.classList.remove('text-red-500', 'text-green-500');
fetch('/AI_API/subscribe.php', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ email: email })
})
.then(response => {
console.log('Sunucudan yanıt alındı:', response);
return response.json();
})
.then(data => {
console.log('Sunucu verisi (JSON):', data);
message.textContent = data.message;
if (data.success) {
message.classList.add('text-green-500');
emailInput.value = '';
} else {
message.classList.add('text-red-500');
}
})
.catch(error => {
console.error('Abonelik fetch hatası:', error);
message.textContent = 'İstek sırasında bir hata oluştu. Konsolu kontrol edin.';
message.classList.add('text-red-500');
});
});
} else {
console.error('Footer abonelik formu (subscribe-form-footer) bulunamadı!');
}
const subscribeButtonHeader = document.getElementById('subscribe-button-header');
if (subscribeButtonHeader) {
console.log('Header abone ol butonu bulundu.');
subscribeButtonHeader.addEventListener('click', () => {
console.log('Header abone ol butonuna tıklandı.');
const footerForm = document.getElementById('subscribe-form-footer');
if (footerForm) {
footerForm.scrollIntoView({ behavior: 'smooth' });
document.getElementById('email-address-footer').focus();
} else {
console.error('Header butonu tıklama hatası: Footer formu bulunamadı.');
}
});
} else {
console.error('Header abone ol butonu (subscribe-button-header) bulunamadı!');
}
const contactForm = document.getElementById('contact-form');
if (contactForm) {
console.log('İletişim formu bulundu.');
contactForm.addEventListener('submit', function(event) {
event.preventDefault();
console.log('İletişim formu gönderildi.');
const messageContainer = document.getElementById('contact-message');
const submitButton = contactForm.querySelector('button[type="submit"]');
const formData = new FormData(contactForm);
const data = Object.fromEntries(formData.entries());
messageContainer.textContent = 'Gönderiliyor...';
messageContainer.className = 'mt-4 text-sm text-center text-gray-600';
submitButton.disabled = true;
fetch('/AI_API/contact.php', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(data),
})
.then(response => response.json())
.then(result => {
console.log('İletişim formu sunucu yanıtı:', result);
messageContainer.textContent = result.message;
if (result.success) {
messageContainer.classList.add('text-green-600');
contactForm.reset();
} else {
messageContainer.classList.add('text-red-600');
}
})
.catch(error => {
console.error('İletişim formu fetch hatası:', error);
messageContainer.textContent = 'Bir hata oluştu. Lütfen tekrar deneyin.';
messageContainer.classList.add('text-red-600');
})
.finally(() => {
submitButton.disabled = false;
});
});
} else {
// Bu bir hata değil, sadece iletişim sayfasında olmadığımızı gösterir.
// console.log('İletişim formu bu sayfada bulunmuyor.');
}