appwizard-pro-max / settings.html
Yilmaz1905's picture
Ai Destekli Ücretsiz Video Başlık ve Açıklama Üreteci yapmanı istiyorum. android uygulaması olarak. elimde google api mevcut, sen bana nereye yerleştireceğimi söyle. giriş ekranı yazı şeklinde olsun. sabit admob reklamı ve 1 dk da bir ekrana gelecek reklam olsun, uygulama için gerekli olan sayfalarıda ekle, tüm ayarları yapacağım bir sayfa olsun. google api key ekleme, adsense kodları gibi, api keyimi kimse göremesin, bir de uygulamayı nasıl deploy edeceğim ve gerekli ayarları nasıl yapacağımıza dair bir readme olsun.. KOD İÇİNDE api gireceğim bir alan ver ve admob içinde, birde sayfalar yarat uyguluma hakkında, bildirimleri otomatik kaydet, uygulamayı değerlendir, uygulamayı paylaş, destek, gizlilik politikası, tüm verileri sil, kaydedilen başlıklar gibi
22e9337 verified
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ayarlar - AppWizard Pro Max+</title>
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://unpkg.com/feather-icons"></script>
</head>
<body class="bg-gray-100 dark:bg-gray-900 text-gray-800 dark:text-gray-200">
<div class="container mx-auto px-4 py-8 max-w-3xl">
<!-- Header -->
<header class="mb-8">
<div class="flex items-center">
<a href="index.html" class="mr-4 text-purple-600 dark:text-purple-400">
<i data-feather="arrow-left"></i>
</a>
<h1 class="text-2xl font-bold">Ayarlar</h1>
</div>
</header>
<!-- API Settings -->
<div class="bg-white dark:bg-gray-800 rounded-lg shadow p-6 mb-6">
<h2 class="text-xl font-bold mb-4 text-gray-800 dark:text-white">API Ayarları</h2>
<div class="mb-4">
<label for="google-api-key" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">Google API Key</label>
<input type="password" id="google-api-key" class="w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent dark:bg-gray-700 dark:text-white" placeholder="AIzaSy...">
<p class="mt-1 text-xs text-gray-500 dark:text-gray-400">Google Cloud API keyiniz. Güvende tutun.</p>
</div>
<div class="mb-4">
<button id="save-api" class="bg-purple-600 hover:bg-purple-700 text-white font-bold py-2 px-4 rounded-lg transition duration-200">
API Key'i Kaydet
</button>
<button id="test-api" class="ml-2 bg-gray-200 hover:bg-gray-300 dark:bg-gray-700 dark:hover:bg-gray-600 text-gray-800 dark:text-white font-bold py-2 px-4 rounded-lg transition duration-200">
API Testi
</button>
</div>
</div>
<!-- AdMob Settings -->
<div class="bg-white dark:bg-gray-800 rounded-lg shadow p-6 mb-6">
<h2 class="text-xl font-bold mb-4 text-gray-800 dark:text-white">AdMob Ayarları</h2>
<div class="mb-4">
<label for="admob-app-id" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">AdMob Uygulama ID</label>
<input type="text" id="admob-app-id" class="w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent dark:bg-gray-700 dark:text-white" placeholder="ca-app-pub-...">
</div>
<div class="mb-4">
<label for="admob-banner-id" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">AdMob Banner ID</label>
<input type="text" id="admob-banner-id" class="w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent dark:bg-gray-700 dark:text-white" placeholder="ca-app-pub-...">
</div>
<div class="mb-4">
<label for="admob-interstitial-id" class="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">AdMob Interstitial ID</label>
<input type="text" id="admob-interstitial-id" class="w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent dark:bg-gray-700 dark:text-white" placeholder="ca-app-pub-...">
</div>
<div class="flex items-center justify-between mb-4">
<div>
<h3 class="font-medium text-gray-800 dark:text-white">Reklamları Göster</h3>
<p class="text-sm text-gray-500 dark:text-gray-400">Uygulamada reklam gösterimini aç/kapat</p>
</div>
<label class="relative inline-flex items-center cursor-pointer">
<input type="checkbox" checked class="sr-only peer">
<div class="w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-purple-300 dark:peer-focus:ring-purple-800 rounded-full peer dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-purple-600"></div>
</label>
</div>
<button id="save-admob" class="bg-purple-600 hover:bg-purple-700 text-white font-bold py-2 px-4 rounded-lg transition duration-200">
AdMob Ayarlarını Kaydet
</button>
</div>
<!-- App Settings -->
<div class="bg-white dark:bg-gray-800 rounded-lg shadow p-6">
<h2 class="text-xl font-bold mb-4 text-gray-800 dark:text-white">Uygulama Ayarları</h2>
<div class="space-y-4">
<div class="flex items-center justify-between">
<div>
<h3 class="font-medium text-gray-800 dark:text-white">Karanlık Mod</h3>
<p class="text-sm text-gray-500 dark:text-gray-400">Arayüz temasını değiştir</p>
</div>
<label class="relative inline-flex items-center cursor-pointer">
<input type="checkbox" class="sr-only peer" id="dark-mode-toggle">
<div class="w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-purple-300 dark:peer-focus:ring-purple-800 rounded-full peer dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-purple-600"></div>
</label>
</div>
<div class="flex items-center justify-between">
<div>
<h3 class="font-medium text-gray-800 dark:text-white">Otomatik Kaydet</h3>
<p class="text-sm text-gray-500 dark:text-gray-400">Oluşturulan başlıkları otomatik kaydet</p>
</div>
<label class="relative inline-flex items-center cursor-pointer">
<input type="checkbox" checked class="sr-only peer">
<div class="w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-purple-300 dark:peer-focus:ring-purple-800 rounded-full peer dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-purple-600"></div>
</label>
</div>
<div class="pt-4 border-t border-gray-200 dark:border-gray-700">
<button id="clear-data" class="text-red-600 dark:text-red-400 font-medium">
<i data-feather="trash-2" class="inline mr-1 w-4 h-4"></i> Tüm Verileri Temizle
</button>
<p class="text-xs text-gray-500 dark:text-gray-400 mt-1">Kaydedilen tüm başlık ve ayarları siler</p>
</div>
<div class="pt-4 border-t border-gray-200 dark:border-gray-700">
<h3 class="font-medium mb-2 text-gray-800 dark:text-white">Uygulama Versiyonu</h3>
<p class="text-sm text-gray-600 dark:text-gray-300">AppWizard Pro Max+ v1.0.0</p>
<button id="check-updates" class="text-purple-600 dark:text-purple-400 text-sm font-medium mt-1">
<i data-feather="refresh-cw" class="inline mr-1 w-4 h-4"></i> Güncellemeleri Kontrol Et
</button>
</div>
</div>
</div>
</div>
<script>
feather.replace();
// Load saved settings
document.addEventListener('DOMContentLoaded', function() {
const savedApiKey = localStorage.getItem('googleApiKey') || '';
const savedAdmobAppId = localStorage.getItem('admobAppId') || '';
const savedAdmobBannerId = localStorage.getItem('admobBannerId') || '';
const savedAdmobInterstitialId = localStorage.getItem('admobInterstitialId') || '';
const darkMode = localStorage.getItem('darkMode') === 'true';
document.getElementById('google-api-key').value = savedApiKey;
document.getElementById('admob-app-id').value = savedAdmobAppId;
document.getElementById('admob-banner-id').value = savedAdmobBannerId;
document.getElementById('admob-interstitial-id').value = savedAdmobInterstitialId;
document.getElementById('dark-mode-toggle').checked = darkMode;
if (darkMode) {
document.documentElement.classList.add('dark');
}
});
// Save API Key
document.getElementById('save-api').addEventListener('click', function() {
const apiKey = document.getElementById('google-api-key').value;
if (!apiKey) {
alert('Lütfen bir API key girin');
return;
}
localStorage.setItem('googleApiKey', apiKey);
alert('API key başarıyla kaydedildi');
});
// Test API
document.getElementById('test-api').addEventListener('click', function() {
const apiKey = document.getElementById('google-api-key').value;
if (!apiKey) {
alert('Lütfen önce bir API key kaydedin');
return;
}
alert('API test isteği gönderildi. Gerçek uygulamada bu Google API ile bağlantı kuracak.');
});
// Save AdMob settings
document.getElementById('save-admob').addEventListener('click', function() {
const appId = document.getElementById('admob-app-id').value;
const bannerId = document.getElementById('admob-banner-id').value;
const interstitialId = document.getElementById('admob-interstitial-id').value;
if (!appId || !bannerId || !interstitialId) {
alert('Lütfen tüm AdMob ID bilgilerini girin');
return;
}
localStorage.setItem('admobAppId', appId);
localStorage.setItem('admobBannerId', bannerId);
localStorage.setItem('admobInterstitialId', interstitialId);
alert('AdMob ayarları başarıyla kaydedildi');
});
// Clear all data
document.getElementById('clear-data').addEventListener('click', function() {
if (confirm('Tüm veriler silinecek. Emin misiniz?')) {
localStorage.clear();
alert('Tüm veriler temizlendi. Uygulama yeniden başlatılacak.');
setTimeout(() => {
window.location.href = 'index.html';
}, 1000);
}
});
// Check for updates
document.getElementById('check-updates').addEventListener('click', function() {
alert('Güncellemeler kontrol ediliyor... (Bu işlev gerçek uygulamada bir API çağrısı yapacak)');
});
// Dark mode toggle
document.getElementById('dark-mode-toggle').addEventListener('change', function() {
if (this.checked) {
document.documentElement.classList.add('dark');
localStorage.setItem('darkMode', 'true');
} else {
document.documentElement.classList.remove('dark');
localStorage.setItem('darkMode', 'false');
}
});
</script>
</body>
</html>