diff --git a/app/Controllers/ApkController.php b/app/Controllers/ApkController.php index 2cca845..a9c1ce3 100644 --- a/app/Controllers/ApkController.php +++ b/app/Controllers/ApkController.php @@ -20,9 +20,10 @@ class ApkController extends Controller { return; } + $siteName = get_setting('site_name', 'ApkNusa'); return $this->view('apk_detail', [ 'apk' => $apk, - 'title' => $apk['title'] . ' v' . $apk['version'] . ' APK Download' + 'title' => sprintf(__('apk_detail_title'), $apk['title'], $apk['version'], $siteName) ]); } diff --git a/app/Controllers/AuthController.php b/app/Controllers/AuthController.php index 248e4df..5d29d06 100644 --- a/app/Controllers/AuthController.php +++ b/app/Controllers/AuthController.php @@ -37,7 +37,7 @@ class AuthController extends Controller { $_SESSION['role'] = $user['role']; $this->redirect('/profile'); } else { - $this->view('auth/login', ['error' => 'Invalid username or password']); + $this->view('auth/login', ['error' => __('error_invalid_login')]); } } @@ -48,7 +48,7 @@ class AuthController extends Controller { $ref_code = $_POST['ref_code'] ?? ''; if ($password !== $confirm_password) { - $this->view('auth/register', ['error' => 'Passwords do not match', 'ref' => $ref_code]); + $this->view('auth/register', ['error' => __('error_password_mismatch'), 'ref' => $ref_code]); return; } @@ -58,7 +58,7 @@ class AuthController extends Controller { $stmt = $db->prepare("SELECT id FROM users WHERE username = ?"); $stmt->execute([$username]); if ($stmt->fetch()) { - $this->view('auth/register', ['error' => 'Username already exists', 'ref' => $ref_code]); + $this->view('auth/register', ['error' => __('error_username_exists'), 'ref' => $ref_code]); return; } @@ -130,7 +130,7 @@ class AuthController extends Controller { $details = $_POST['details']; if ($amount < 10000) { // Minimum WD - $_SESSION['error'] = "Minimum withdrawal is Rp 10.000"; + $_SESSION['error'] = __('error_min_withdraw'); $this->redirect('/profile'); } @@ -140,7 +140,7 @@ class AuthController extends Controller { $balance = $stmt->fetchColumn(); if ($balance < $amount) { - $_SESSION['error'] = "Insufficient balance"; + $_SESSION['error'] = __('error_insufficient_balance'); $this->redirect('/profile'); } @@ -152,7 +152,7 @@ class AuthController extends Controller { $stmt = $db->prepare("INSERT INTO withdrawals (user_id, amount, method, account_details, status) VALUES (?, ?, ?, ?, 'pending')"); $stmt->execute([$_SESSION['user_id'], $amount, $method, $details]); - $_SESSION['success'] = "Withdrawal request submitted successfully"; + $_SESSION['success'] = __('success_withdraw_submitted'); $this->redirect('/profile'); } } \ No newline at end of file diff --git a/app/Controllers/HomeController.php b/app/Controllers/HomeController.php index e3b4db0..15ec9d8 100644 --- a/app/Controllers/HomeController.php +++ b/app/Controllers/HomeController.php @@ -37,7 +37,7 @@ class HomeController extends Controller { return $this->view('home', [ 'apks' => $apks, - 'title' => get_setting('site_name', 'ApkNusa') . ' - Professional APK Download Portal' + 'title' => get_setting('site_name', 'ApkNusa') . __('home_title_suffix') ]); } @@ -57,11 +57,14 @@ class HomeController extends Controller { $_SESSION['ref_download_' . $apk['id']] = $_GET['ref']; } + $siteName = get_setting('site_name', 'ApkNusa'); + $description = substr(strip_tags($apk['description']), 0, 150) . '...'; + $this->view('apk_detail', [ 'apk' => $apk, - 'title' => 'Download ' . $apk['title'] . ' ' . $apk['version'] . ' - ' . get_setting('site_name', 'ApkNusa'), - 'meta_description' => 'Download ' . $apk['title'] . ' ' . $apk['version'] . ' APK for free. ' . substr(strip_tags($apk['description']), 0, 150) . '...', - 'meta_keywords' => $apk['title'] . ', ' . $apk['title'] . ' apk, download ' . $apk['title'] + 'title' => sprintf(__('apk_detail_title'), $apk['title'], $apk['version'], $siteName), + 'meta_description' => sprintf(__('apk_detail_meta_desc'), $apk['title'], $apk['version'], $description), + 'meta_keywords' => sprintf(__('apk_detail_meta_keywords'), $apk['title'], $apk['title'], $apk['title']) ]); } @@ -115,4 +118,4 @@ class HomeController extends Controller { // Redirect to actual file $this->redirect($apk['download_url']); } -} +} \ No newline at end of file diff --git a/lang/en.php b/lang/en.php index 1286742..b07ebf6 100644 --- a/lang/en.php +++ b/lang/en.php @@ -32,4 +32,106 @@ return [ 'manage_categories' => 'Manage Categories', 'manage_withdrawals' => 'Manage Withdrawals', 'general_settings' => 'General Settings', -]; + + // Footer + 'footer_about' => 'is your premier source for professional APK downloads, offering the latest and safest Android applications and games.', + 'popular' => 'Popular', + 'top_games' => 'Top Games', + 'top_apps' => 'Top Apps', + 'new_releases' => 'New Releases', + 'resources' => 'Resources', + 'support_center' => 'Support Center', + 'terms_of_service' => 'Terms of Service', + 'privacy_policy' => 'Privacy Policy', + 'subscribe' => 'Subscribe', + 'subscribe_text' => 'Stay updated with the latest APK releases.', + 'email_placeholder' => 'Your email address', + 'all_rights_reserved' => 'All rights reserved.', + + // Home + 'hero_title' => 'Download the Best Android APKs Professionally', + 'hero_subtitle' => 'Fast, safe, and secure downloads for your favorite mobile apps and games. No registration required to browse.', + 'explore_apps' => 'Explore Apps', + 'join_referral' => 'Join Referral', + 'details' => 'Details', + 'referral_journey_title' => 'Start your referral journey today', + 'referral_journey_text' => 'Earn Rp 500 for every download via your link. Join our community and share your favorite APKs.', + 'get_started' => 'Get Started', + 'home_title_suffix' => ' - Professional APK Download Portal', + + // APK Detail + 'official_version_text' => 'Official and original version. Verified safe for Android device.', + 'downloads' => 'Downloads', + 'verified_safe' => 'Verified Safe', + 'agree_terms_text' => 'By clicking Download, you agree to our terms of service.', + 'description' => 'Description', + 'main_features' => 'Main Features', + 'feature_original' => 'Original APK from developer', + 'feature_no_extra' => 'No extra files needed', + 'feature_fast' => 'Fast and direct download', + 'feature_regular' => 'Regular updates included', + 'system_requirements' => 'System Requirements', + 'req_android' => 'Android 6.0+ (Marshmallow)', + 'req_ram' => '2GB RAM minimum recommended', + 'req_internet' => 'Stable internet connection', + 'req_cpu' => 'ARMv8 or newer processor', + 'safe_question' => 'Is this safe to download?', + 'safe_answer' => 'Yes, every app on ApkNusa is scanned and verified to ensure it is original and safe from the official developers.', + 'share_earn' => 'Share & Earn', + 'share_earn_text' => 'Share this link and earn Rp 500 for every download!', + 'copy' => 'Copy', + 'login_to_earn' => 'Login to earn money', + 'referral_program' => 'Referral Program', + 'referral_program_text' => 'Join our community, share APKs, and get paid directly to your e-wallet or bank account.', + 'copy_success_js' => 'Share link copied! Send this to your friends to earn money.', + 'apk_detail_title' => 'Download %s %s - %s', + 'apk_detail_meta_desc' => 'Download %s %s APK for free. %s', + 'apk_detail_meta_keywords' => '%s, %s apk, download %s', + + // Auth + 'login_title' => 'Login to ApkNusa', + 'username' => 'Username', + 'password' => 'Password', + 'dont_have_account' => "Don't have an account?", + 'register_here' => 'Register here', + 'register_title' => 'Register for ApkNusa', + 'confirm_password' => 'Confirm Password', + 'referral_code_optional' => 'Referral Code (Optional)', + 'create_account' => 'Create Account', + 'already_have_account' => 'Already have an account?', + 'login_here' => 'Login here', + 'error_invalid_login' => 'Invalid username or password', + 'error_password_mismatch' => 'Passwords do not match', + 'error_username_exists' => 'Username already exists', + + // Profile + 'member_since' => 'Member since', + 'points' => 'Points', + 'referrals' => 'Referrals', + 'min_withdraw' => 'Min. withdraw', + 'referral_share_text' => 'Share your referral link to earn Rp 500 for every download.', + 'copy_link' => 'Copy Link', + 'example_ref_link' => 'Example APK referral link:', + 'recent_activities' => 'Recent activities', + 'date' => 'Date', + 'amount' => 'Amount', + 'method' => 'Method', + 'status' => 'Status', + 'no_history' => 'No withdrawal history yet.', + 'request_withdrawal' => 'Request Withdrawal', + 'amount_to_withdraw' => 'Amount to Withdraw (IDR)', + 'payment_method' => 'Payment Method', + 'select_method' => 'Select method...', + 'account_details' => 'Account Details', + 'account_details_placeholder' => 'Enter phone number or bank account number with name', + 'cancel' => 'Cancel', + 'submit_request' => 'Submit Request', + 'ref_copy_success_js' => 'Referral link copied to clipboard!', + 'error_min_withdraw' => 'Minimum withdrawal is Rp 10.000', + 'error_insufficient_balance' => 'Insufficient balance', + 'success_withdraw_submitted' => 'Withdrawal request submitted successfully', + + // SEO Defaults + 'meta_description_default' => 'Download Professional APKs.', + 'meta_keywords_default' => 'apk, android, download', +]; \ No newline at end of file diff --git a/lang/id.php b/lang/id.php index 7989019..5b1e119 100644 --- a/lang/id.php +++ b/lang/id.php @@ -32,4 +32,106 @@ return [ 'manage_categories' => 'Kelola Kategori', 'manage_withdrawals' => 'Kelola Penarikan', 'general_settings' => 'Pengaturan Umum', -]; + + // Footer + 'footer_about' => 'adalah sumber utama Anda untuk unduhan APK profesional, menawarkan aplikasi dan game Android terbaru dan teraman.', + 'popular' => 'Populer', + 'top_games' => 'Game Teratas', + 'top_apps' => 'Aplikasi Teratas', + 'new_releases' => 'Rilis Baru', + 'resources' => 'Sumber Daya', + 'support_center' => 'Pusat Bantuan', + 'terms_of_service' => 'Ketentuan Layanan', + 'privacy_policy' => 'Kebijakan Privasi', + 'subscribe' => 'Berlangganan', + 'subscribe_text' => 'Tetap update dengan rilis APK terbaru.', + 'email_placeholder' => 'Alamat email Anda', + 'all_rights_reserved' => 'Hak cipta dilindungi undang-undang.', + + // Home + 'hero_title' => 'Unduh APK Android Terbaik Secara Profesional', + 'hero_subtitle' => 'Unduhan cepat, aman, dan terpercaya untuk aplikasi dan game seluler favorit Anda. Tanpa perlu registrasi untuk menjelajah.', + 'explore_apps' => 'Jelajahi Aplikasi', + 'join_referral' => 'Gabung Referral', + 'details' => 'Detail', + 'referral_journey_title' => 'Mulai perjalanan referral Anda hari ini', + 'referral_journey_text' => 'Dapatkan Rp 500 untuk setiap unduhan melalui link Anda. Bergabunglah dengan komunitas kami dan bagikan APK favorit Anda.', + 'get_started' => 'Mulai Sekarang', + 'home_title_suffix' => ' - Portal Unduh APK Profesional', + + // APK Detail + 'official_version_text' => 'Versi resmi dan asli. Diverifikasi aman untuk perangkat Android.', + 'downloads' => 'Unduhan', + 'verified_safe' => 'Terverifikasi Aman', + 'agree_terms_text' => 'Dengan mengklik Unduh, Anda menyetujui ketentuan layanan kami.', + 'description' => 'Deskripsi', + 'main_features' => 'Fitur Utama', + 'feature_original' => 'APK asli dari pengembang', + 'feature_no_extra' => 'Tidak perlu file tambahan', + 'feature_fast' => 'Unduhan cepat dan langsung', + 'feature_regular' => 'Termasuk pembaruan rutin', + 'system_requirements' => 'Persyaratan Sistem', + 'req_android' => 'Android 6.0+ (Marshmallow)', + 'req_ram' => 'Minimal RAM 2GB direkomendasikan', + 'req_internet' => 'Koneksi internet stabil', + 'req_cpu' => 'Prosesor ARMv8 atau yang lebih baru', + 'safe_question' => 'Apakah ini aman untuk diunduh?', + 'safe_answer' => 'Ya, setiap aplikasi di ApkNusa dipindai dan diverifikasi untuk memastikan keaslian dan keamanannya dari pengembang resmi.', + 'share_earn' => 'Bagikan & Hasilkan', + 'share_earn_text' => 'Bagikan link ini dan dapatkan Rp 500 untuk setiap unduhan!', + 'copy' => 'Salin', + 'login_to_earn' => 'Masuk untuk menghasilkan uang', + 'referral_program' => 'Program Referral', + 'referral_program_text' => 'Bergabunglah dengan komunitas kami, bagikan APK, dan dapatkan bayaran langsung ke e-wallet atau rekening bank Anda.', + 'copy_success_js' => 'Link bagikan berhasil disalin! Kirimkan ini ke teman Anda untuk menghasilkan uang.', + 'apk_detail_title' => 'Unduh %s %s - %s', + 'apk_detail_meta_desc' => 'Unduh APK %s %s secara gratis. %s', + 'apk_detail_meta_keywords' => '%s, %s apk, unduh %s', + + // Auth + 'login_title' => 'Masuk ke ApkNusa', + 'username' => 'Username', + 'password' => 'Kata Sandi', + 'dont_have_account' => "Belum punya akun?", + 'register_here' => 'Daftar di sini', + 'register_title' => 'Daftar di ApkNusa', + 'confirm_password' => 'Konfirmasi Kata Sandi', + 'referral_code_optional' => 'Kode Referral (Opsional)', + 'create_account' => 'Buat Akun', + 'already_have_account' => 'Sudah punya akun?', + 'login_here' => 'Masuk di sini', + 'error_invalid_login' => 'Username atau kata sandi salah', + 'error_password_mismatch' => 'Kata sandi tidak cocok', + 'error_username_exists' => 'Username sudah terdaftar', + + // Profile + 'member_since' => 'Anggota sejak', + 'points' => 'Poin', + 'referrals' => 'Referral', + 'min_withdraw' => 'Min. penarikan', + 'referral_share_text' => 'Bagikan link referral Anda untuk mendapatkan Rp 500 untuk setiap unduhan.', + 'copy_link' => 'Salin Link', + 'example_ref_link' => 'Contoh link referral APK:', + 'recent_activities' => 'Aktivitas terbaru', + 'date' => 'Tanggal', + 'amount' => 'Jumlah', + 'method' => 'Metode', + 'status' => 'Status', + 'no_history' => 'Belum ada riwayat penarikan.', + 'request_withdrawal' => 'Ajukan Penarikan', + 'amount_to_withdraw' => 'Jumlah yang Ditarik (IDR)', + 'payment_method' => 'Metode Pembayaran', + 'select_method' => 'Pilih metode...', + 'account_details' => 'Detail Akun', + 'account_details_placeholder' => 'Masukkan nomor telepon atau nomor rekening bank dengan nama', + 'cancel' => 'Batal', + 'submit_request' => 'Ajukan Permintaan', + 'ref_copy_success_js' => 'Link referral berhasil disalin!', + 'error_min_withdraw' => 'Penarikan minimum adalah Rp 10.000', + 'error_insufficient_balance' => 'Saldo tidak mencukupi', + 'success_withdraw_submitted' => 'Permintaan penarikan berhasil diajukan', + + // SEO Defaults + 'meta_description_default' => 'Unduh APK Profesional.', + 'meta_keywords_default' => 'apk, android, unduh', +]; \ No newline at end of file diff --git a/views/apk_detail.php b/views/apk_detail.php index a1a2ba6..65448a8 100644 --- a/views/apk_detail.php +++ b/views/apk_detail.php @@ -3,7 +3,7 @@
-

Description

+

-
Main Features
+
    -
  • Original APK from developer
  • -
  • No extra files needed
  • -
  • Fast and direct download
  • -
  • Regular updates included
  • +
  • +
  • +
  • +
-
System Requirements
+
    -
  • Android 6.0+ (Marshmallow)
  • -
  • 2GB RAM minimum recommended
  • -
  • Stable internet connection
  • -
  • ARMv8 or newer processor
  • +
  • +
  • +
  • +
-
Is this safe to download?
-

Yes, every app on ApkNusa is scanned and verified to ensure it is original and safe from the official developers.

+
+

@@ -80,26 +80,26 @@
-
Share & Earn
-

Share this link and earn Rp 500 for every download!

+
+

query("SELECT referral_code FROM users WHERE id = ".$_SESSION['user_id'])->fetchColumn() : ''; $shareLink = 'http://'.$_SERVER['HTTP_HOST'].'/apk/'.$apk['slug'].($ref ? '?ref='.$ref : ''); ?> - +
- Login to earn money +
-
Referral Program
-

Join our community, share APKs, and get paid directly to your e-wallet or bank account.

- Get Started +
+

+
@@ -112,8 +112,8 @@ function copyShareLink() { copyText.select(); copyText.setSelectionRange(0, 99999); navigator.clipboard.writeText(copyText.value); - alert("Share link copied! Send this to your friends to earn money."); + alert(""); } - + \ No newline at end of file diff --git a/views/auth/login.php b/views/auth/login.php index 091f1f5..d87356b 100644 --- a/views/auth/login.php +++ b/views/auth/login.php @@ -4,7 +4,7 @@
-

Login to ApkNusa

+

@@ -12,22 +12,22 @@
- +
- +
- +
-

Don't have an account? Register here

+

- + \ No newline at end of file diff --git a/views/auth/profile.php b/views/auth/profile.php index 8f1194f..87b42ef 100644 --- a/views/auth/profile.php +++ b/views/auth/profile.php @@ -9,16 +9,16 @@

-

Member since

+


- Points +

- Referrals +
@@ -31,7 +31,7 @@ -

Min. withdraw: Rp 10.000

+

: Rp 10.000

@@ -49,12 +49,12 @@
-

Share your referral link to earn Rp 500 for every download.

+

- +
-
Example APK referral link:
+
@@ -64,23 +64,23 @@
- Recent activities +
- - - - + + + + - + @@ -115,22 +115,22 @@ - + \ No newline at end of file diff --git a/views/footer.php b/views/footer.php index 9303d2f..28ba35c 100644 --- a/views/footer.php +++ b/views/footer.php @@ -12,38 +12,38 @@

- is your premier source for professional APK downloads, offering the latest and safest Android applications and games. +

-
Popular
+
-
Resources
+
-
Subscribe
-

Stay updated with the latest APK releases.

+
+

- - + +

- © . All rights reserved. + © .
@@ -60,4 +60,4 @@ - \ No newline at end of file + diff --git a/views/header.php b/views/header.php index 5514538..1bff883 100644 --- a/views/header.php +++ b/views/header.php @@ -5,8 +5,8 @@ <?php echo $title ?? htmlspecialchars(get_setting('site_name', 'ApkNusa')); ?> - - + + diff --git a/views/home.php b/views/home.php index ee01a98..bc7f481 100644 --- a/views/home.php +++ b/views/home.php @@ -3,11 +3,11 @@
-

Download the Best Android APKs Professionally

-

Fast, safe, and secure downloads for your favorite mobile apps and games. No registration required to browse.

+

+

@@ -56,7 +56,7 @@

- Details +
@@ -68,11 +68,11 @@
-

Start your referral journey today

-

Earn Rp 500 for every download via your link. Join our community and share your favorite APKs.

+

+

@@ -90,4 +90,4 @@ } - \ No newline at end of file +
DateAmountMethodStatus
No withdrawal history yet.