diff --git a/FINAL_PRODUCTION_SYSTEM/admin_v2.php b/FINAL_PRODUCTION_SYSTEM/admin_v2.php index 965fa2e..cf50293 100644 --- a/FINAL_PRODUCTION_SYSTEM/admin_v2.php +++ b/FINAL_PRODUCTION_SYSTEM/admin_v2.php @@ -295,6 +295,8 @@ 'qc_list_compliance_results' => ['ComplianceController.php', 'handle_qc_list_compliance_results', false, true], 'qc_list_compliance_grouped' => ['ComplianceController.php', 'handle_qc_list_compliance_grouped', false, true], 'qc_get_stats' => ['ComplianceController.php', 'handle_qc_get_stats', false, true], + 'qc_recheck_count' => ['ComplianceController.php', 'handle_qc_recheck_count', false, true], + 'qc_recheck_historical' => ['ComplianceController.php', 'handle_qc_recheck_historical', true, true], // product lines & variants (partition QC) 'get_product_lines' => ['ProductVariantsController.php', 'handle_get_product_lines', false, true], diff --git a/FINAL_PRODUCTION_SYSTEM/frontend/src/i18n/tr.json b/FINAL_PRODUCTION_SYSTEM/frontend/src/i18n/tr.json index 37d556f..c27f160 100644 --- a/FINAL_PRODUCTION_SYSTEM/frontend/src/i18n/tr.json +++ b/FINAL_PRODUCTION_SYSTEM/frontend/src/i18n/tr.json @@ -11,6 +11,9 @@ "nav.trusted_networks": "Güvenilir Ağlar", "nav.backups": "Yedeklemeler", "nav.integrations": "Entegrasyonlar", + "nav.cbr_reports": "Yapım Raporları", + "nav.hardware_bindings": "Donanım Bağlamaları", + "nav.dpk_import": "DPK İçe Aktarma", "nav.logout": "Çıkış Yap", "dashboard.title": "KeyGate — Yönetim Paneli", "dashboard.welcome": "Hoş geldiniz, %s (%s)", @@ -332,13 +335,13 @@ "settings.alt_server_desc2": "Teknisyenlerin alternatif aktivasyon yöntemini kullanmasına veya yük devretmesine izin ver", "settings.alt_server_config": "Alternatif Sunucu Yapılandırması", "settings.script_path": "Betik Yolu*", - "settings.script_path_placeholder": "C:\\Activation\\AlternativeServer.cmd", + "settings.script_path_placeholder": "C:\\Aktivasyon\\AlternatifSunucu.cmd", "settings.script_path_desc": "CMD betiği, PowerShell betiği veya yürütülebilir dosyanın tam yolu", "settings.pre_command": "Ön Komut / Başlatıcı", "settings.pre_command_placeholder": "irm, curl.exe -s --doh-url https://dns.example.com, iex", "settings.pre_command_desc": "Betik yolundan önce çalıştırılacak isteğe bağlı komut. Uzak betik indirme (irm), HTTP getirme (curl.exe) veya ifade değerlendirme (iex) için kullanın. Yerel dosya yürütme için boş bırakın.", "settings.script_args": "Betik Argümanları", - "settings.script_args_placeholder": "--mode auto --timeout 300", + "settings.script_args_placeholder": "--mode auto --zaman aşımı 300", "settings.script_args_desc": "İsteğe bağlı komut satırı argümanları", "settings.script_type": "Betik Türü", "settings.script_type_cmd": "CMD Toplu Betiği (.cmd / .bat)", @@ -396,5 +399,1528 @@ "twofa.code_length": "Lütfen 6 haneli bir kod girin", "twofa.disable_confirm": "2FA'yı devre dışı bırakmak istediğinizden emin misiniz? Bu, hesap güvenliğinizi azaltacaktır.", "twofa.regenerate_confirm": "Yeni yedek kodlar oluştur? Bu, mevcut tüm yedek kodları geçersiz kılacaktır.", - "twofa.copied": "Kopyalandı!" -} \ No newline at end of file + "twofa.copied": "Kopyalandı!", + "network.title": "Güvenilir Ağlar Yapılandırma", + "network.desc": "Manage network subnets for 2FA bypass and USB authentication security", + "network.add": "Ekle Güvenilir Ağ", + "network.loading": "Yükleniyor trusted networks...", + "network.no_networks": "Hayır trusted networks yapılandırıldı", + "network.name_col": "Ağ Ad", + "network.ip_range": "IP Range (CIDR)", + "network.bypass_2fa": "2FA Bypass", + "network.usb_auth": "USB Auth", + "network.status": "Durum", + "network.created": "Oluşturd", + "network.actions": "İşlemler", + "network.delete": "Sil", + "network.yes": "Evet", + "network.no": "Hayır", + "network.active": "Aktif", + "network.inactive": "Pasif", + "network.security_notice": "Security Hayırtice", + "network.usb_auth_only": "USB Authentication: Only izin verildi from networks with \"Tümüow USB Auth\" enabled", + "network.twofa_bypass": "2FA Bypass: Yöneticis from trusted networks can skip TOTP verification", + "network.cidr_format": "CIDR Format: Use format like 192.168.1.0/24 for entire subnet", + "network.office_networks": "Office Ağlar: Only add networks you physically control", + "network.add_modal": "Ekle Güvenilir Ağ", + "network.network_name": "Ağ Ad*", + "network.network_placeholder": "Office LAN", + "network.ip_range_label": "IP Range (CIDR)*", + "network.ip_placeholder": "192.168.1.0/24", + "network.cidr_notation": "CIDR notation (e.g., 192.168.1.0/24, 10.0.0.0/8)", + "network.bypass_2fa_label": "Bypass 2FA (Atla TOTP verification from this network)", + "network.allow_usb": "Tümüow USB Authentication (Kritik security setting)", + "network.description": "Açıklama", + "network.description_placeholder": "Main /fice network...", + "network.add_network": "Ekle Ağ", + "network.add_success": "Güvenilir network added başarıyla!", + "network.delete_success": "Güvenilir network deleted başarıyla", + "network.delete_confirm": "Sil trusted network \"%s\"?\\n\\nUSB authentication from this network will be engellendi.", + "network.add_error": "Başarısız to add trusted network", + "network.delete_error": "Başarısız to delete trusted network", + "backup.title": "Database Yedeklemeler", + "backup.desc": "Manage automated and manual database backups", + "backup.quick_actions": "Quick İşlemler", + "backup.run_now": "Run Yedek Hayırw", + "backup.refresh": "Yenile Geçmiş", + "backup.configuration": "Yedek Yapılandırma", + "backup.schedule": "Zamanlama: Daily at 2:00 AM UTC", + "backup.retention": "Retention: 30 gün (automatic cleanup)", + "backup.location": "Location: ./backups/ directory", + "backup.compression": "Compression: gzip (.sql.gz files)", + "backup.history": "Yedek Geçmiş", + "backup.loading": "Yükleniyor backup history...", + "backup.no_backups": "Hayır backups found", + "backup.filename": "Dosyaname", + "backup.size_mb": "Boyut (MB)", + "backup.status_col": "Durum", + "backup.duration": "Süre", + "backup.tables": "Tablos", + "backup.type": "Tür", + "backup.created": "Oluşturd", + "backup.success_badge": "Başarılı", + "backup.failed_badge": "Başarısız", + "backup.manual_badge": "Manuel", + "backup.scheduled_badge": "Zamanlanmış", + "backup.trigger_confirm": "Tetikle manual database backup now?\\n\\nThis may take a few dakika.", + "backup.running": "Running backup...", + "backup.success_msg": "Yedek completed başarıyla!\\n\\n%s", + "backup.failed_msg": "Yedek başarısız oldu:\\n\\n%s", + "backup.load_error": "Başarısız to load backup history", + "roles.title": "Roller & İzinler", + "roles.desc": "Manage user roles and granular permission assignments", + "roles.create": "+ Oluştur Rol", + "roles.changelog": "Change Log", + "roles.header": "Rol", + "roles.type_col": "Tür", + "roles.permissions_col": "İzinler", + "roles.users_col": "Kullanıcıs", + "roles.status_col": "Durum", + "roles.actions_col": "İşlemler", + "roles.loading": "Yükleniyor roles...", + "roles.create_role": "Oluştur Yeni Rol", + "roles.role_name": "Rol Ad (internal)*", + "roles.role_placeholder": "custom_role", + "roles.role_title": "Düşükercase letters, numbers, underscores only", + "roles.display_name": "Ekran Ad*", + "roles.display_placeholder": "Özel Rol", + "roles.description": "Açıklama", + "roles.description_placeholder": "Brief description / this role's purpose", + "roles.type_label": "Tür*", + "roles.admin_role": "Yönetici Rol", + "roles.technician_role": "Teknisyen Rol", + "roles.color": "Renk", + "roles.permissions": "İzinler", + "roles.select_all": "Seç Tümü", + "roles.deselect_all": "Deselect Tümü", + "roles.create_button": "Oluştur Rol", + "roles.edit_button": "Düzenle Rol", + "roles.changelog_title": "ACL Change Log", + "roles.changelog_time": "Zaman", + "roles.changelog_actor": "Actor", + "roles.changelog_action": "Action", + "roles.changelog_target": "Target", + "roles.changelog_details": "Detaylar", + "roles.overrides_modal": "Kullanıcı İzin Overrides", + "roles.user_role": "Kullanıcı", + "roles.role_label": "Rol", + "roles.no_roles": "Hayır roles found. Run the ACL migration first.", + "roles.system_badge": "Sistem", + "roles.custom_badge": "Özel", + "roles.admin_badge": "Yönetici", + "roles.technician_badge": "Teknisyen", + "roles.save_changes": "Kaydet Changes", + "roles.saved": "Kaydetd!", + "roles.clone_success": "Rol cloned başarıyla!", + "roles.clone_name_prompt": "Enter name for the cloned role:", + "roles.clone_display_prompt": "Enter display name:", + "roles.delete_confirm": "Sil role \"%s\"? This geri alınamaz.", + "roles.edit_role_prefix": "Düzenle Rol: ", + "roles.no_changelog": "Hayır ACL changes recorded yet", + "roles.not_found": "Rol bulunamadı", + "roles.clone": "Clone", + "roles.permission_overrides": "İzin Overrides", + "roles.no_role": "Hayır role atandı", + "roles.permission": "İzin", + "roles.status": "Durum", + "roles.source": "Source", + "roles.override": "Override", + "roles.source_role": "Rol", + "roles.source_none": "Hiçbiri", + "roles.deny": "Deny", + "roles.grant": "Grant", + "roles.reset": "Sıfırla", + "common.cancel": "İptal", + "common.save": "Kaydet", + "common.delete": "Sil", + "common.edit": "Düzenle", + "common.enable": "Etkinleştir", + "common.disable": "Devre Dışı Bırak", + "common.remove": "Kaldır", + "common.close": "Kapat", + "common.click_to_select": "Click to select file", + "common.uploading": "Yükleing...", + "common.submit": "Gönder", + "common.search": "Ara", + "common.loading": "Yükleniyor...", + "common.error": "Hata", + "common.success": "Başarılı", + "common.warning": "Uyarı", + "common.confirm": "Onayla", + "common.yes": "Evet", + "common.no": "Hayır", + "common.previous": "Önceki", + "common.next": "İleri", + "common.view": "View", + "common.register": "Register", + "common.all": "Tümü", + "common.id": "ID", + "common.date": "Tarih", + "common.time": "Zaman", + "common.name": "Ad", + "common.email": "E-posta", + "common.status": "Durum", + "common.action": "Action", + "common.actions": "İşlemler", + "common.created": "Oluşturd", + "common.updated": "Güncelled", + "common.count": "Sayı", + "common.total": "Toplam", + "common.description": "Açıklama", + "common.na": "N/A", + "common.saved": "Kaydetd!", + "msg.error": "Hata: %s", + "msg.success": "%s", + "msg.confirm_delete": "Are you sure? This action geri alınamaz.", + "msg.no_results": "Hayır results found", + "msg.session_expired": "Session has süresi doldu. Please log in again.", + "msg.password_invalid": "Şifre must be at least 8 characters", + "msg.access_denied": "Access reddedildi", + "msg.server_error": "Sunucu error", + "msg.network_error": "Ağ error", + "hardware.title": "Donanım Bilgirmation", + "hardware.loading": "Yükleniyor hardware information...", + "hardware.motherboard": "Anakart", + "hardware.cpu": "CPU", + "hardware.ram": "RAM", + "hardware.storage": "Depolama", + "hardware.video": "Video Card", + "hardware.network": "Ağ", + "hardware.os": "Operating Sistem", + "hardware.bios": "BIOS", + "hardware.tpm": "TPM", + "hardware.secure_boot": "Güvenli Önyükleme", + "hardware.chassis": "Chassis", + "hardware.computer_name": "Computer Ad", + "hardware.fingerprint": "Cihaz Parmak İzi", + "hardware.all_serials": "Tümü Seri Numbers", + "hardware.network_ip": "Ağ & IP Adreses", + "hardware.system_identity": "Sistem Identity & Chassis", + "hardware.os_section": "Operating Sistem", + "hardware.mb_bios": "Anakart & BIOS", + "hardware.cpu_section": "CPU (İşlemci)", + "hardware.tpm_section": "TPM (Güvenilir Platform Module)", + "hardware.memory_section": "Bellek (RAM)", + "hardware.gpu_section": "Video / GPU", + "hardware.storage_section": "Depolama Cihazlar", + "hardware.disk_layout": "Disk Layout", + "hardware.disk_partitions": "Disk Partitions", + "hardware.monitors_section": "Monitörler", + "hardware.audio_section": "Audio Cihazlar", + "hardware.device_fp": "Cihaz Parmak İzi", + "hardware.collected_info": "Collection Bilgi", + "hardware.manufacturer": "Üretici", + "hardware.product_name": "Ürün Ad", + "hardware.system_serial": "Sistem Seri", + "hardware.uuid": "UUID", + "hardware.chassis_type": "Chassis Tür", + "hardware.chassis_mfg": "Chassis Üretici", + "hardware.chassis_serial": "Chassis Seri", + "hardware.version": "Sürüm", + "hardware.serial": "Seri", + "hardware.name": "Ad", + "hardware.model": "Model", + "hardware.bios_mfg": "BIOS Üretici", + "hardware.bios_version": "BIOS Sürüm", + "hardware.release_date": "Sürüm Tarih", + "hardware.bios_serial": "BIOS Seri", + "hardware.cores_threads": "Cores / Threads", + "hardware.max_clock": "Max Clock", + "hardware.processor_id": "İşlemci ID", + "hardware.present": "Present", + "hardware.vram": "VRAM", + "hardware.interface": "Interface", + "hardware.size": "Boyut", + "hardware.speed": "Speed", + "hardware.slot": "Slot", + "hardware.part_number": "Part Number", + "hardware.type": "Tür", + "hardware.build": "Build", + "hardware.architecture": "Architecture", + "hardware.install_date": "Kur Tarih", + "hardware.os_serial": "OS Seri", + "hardware.resolution": "Resolution", + "hardware.driver": "Driver", + "hardware.processor": "İşlemci", + "hardware.style": "Style", + "hardware.purpose": "Purpose", + "hardware.drive": "Drive", + "hardware.fs": "FS", + "hardware.free_used": "Ücretsiz/Used", + "hardware.total_capacity": "Toplam Capacity", + "hardware.collected": "Collected", + "hardware.method": "Method", + "hardware.label_cpu": "CPU", + "hardware.label_ram": "RAM", + "hardware.label_storage": "Depolama", + "hardware.label_gpu": "GPU", + "hardware.label_network": "Ağ", + "hardware.label_security": "Security", + "hardware.na": "N/A", + "hardware.unknown": "Unknown", + "hardware.enabled": "Etkin", + "hardware.disabled": "Devre Dışı", + "hardware.yes": "Evet", + "hardware.no": "Hayır", + "hardware.no_ip": "Hayır IP", + "hardware.fingerprinted": "Parmak İzied", + "hardware.drives": "drive(s)", + "hardware.no_video": "Hayır video card information available", + "hardware.no_storage": "Hayır storage information available", + "hardware.no_audio": "Hayır audio device information available", + "hardware.no_monitors": "Hayır monitor information available", + "hardware.unknown_adapter": "Unknown Adapter", + "hardware.gateway": "Gateway", + "hardware.dns": "DNS", + "hardware.dhcp": "DHCP", + "hardware.dhcp_yes": "Evet", + "hardware.dhcp_static": "Static", + "hardware.public_ip": "Public IP", + "hardware.local_ip": "Local IP", + "hardware.primary_mac": "Birincil MAC", + "hardware.mb_sn": "Anakart S/N", + "hardware.bios_sn": "BIOS S/N", + "hardware.system_sn": "Sistem S/N", + "hardware.system_uuid": "Sistem UUID", + "hardware.chassis_sn": "Chassis S/N", + "hardware.cpu_id": "CPU ID", + "hardware.os_sn": "OS S/N", + "hardware.disk_sn": "Disk %s S/N", + "hardware.ram_sn": "RAM %s S/N", + "hardware.monitor_sn": "Monitör %s S/N", + "usb.method_hardware_bridge": "Donanım Bridge Uzantı", + "usb.method_hardware_bridge_desc": "Pr/essional USB detection via native application — one-click detection!", + "usb.detection_method": "Detection Method", + "usb.how_it_works": "How it works", + "usb.fill_form": "Fill Form with This Cihaz", + "usb.device_detected": "USB Cihaz Detected!", + "usb.form_filled": "Form filled with device information!", + "usb.review_info": "Review the information below and select a technician to complete registration.", + "usb.scanning": "Scanning USB devices via Donanım Bridge...", + "usb.product_name": "Ürün Ad", + "usb.vendor_id": "Vendor ID", + "usb.product_id": "Ürün ID", + "usb.register_btn": "Register Cihaz", + "logs.action.LOGIN_SUCCESS": "Başarılıful Login", + "logs.action.LOGIN_FAILED": "Login Başarısız", + "logs.action.LOGIN_BLOCKED": "Login Engellendi", + "logs.action.LOGOUT": "Logout", + "logs.action.PAGE_ACCESS": "Sayfa Access", + "logs.action.ACCESS_DENIED": "Access Reddedildi", + "logs.action.TOGGLE_TECHNICIAN": "Toggle Teknisyen", + "logs.action.UPDATE_ALT_SERVER_SETTINGS": "Ayarlar Güncelled", + "logs.action.CREATE_TECHNICIAN": "Teknisyen Oluşturd", + "logs.action.UPDATE_TECHNICIAN": "Teknisyen Güncelled", + "logs.action.DELETE_TECHNICIAN": "Teknisyen Sild", + "logs.action.RESET_PASSWORD": "Şifre Sıfırla", + "logs.action.RECYCLE_KEY": "Anahtar Recycled", + "logs.action.DELETE_KEY": "Anahtar Sild", + "logs.action.IMPORT_KEYS": "Anahtarlar İçe Aktared", + "logs.action.EXPORT_KEYS": "Anahtarlar Dışa Aktared", + "logs.action.REGISTER_USB_DEVICE": "USB Cihaz Kayıtlı", + "logs.action.UPDATE_USB_DEVICE_STATUS": "USB Durum Güncelled", + "logs.action.DELETE_USB_DEVICE": "USB Cihaz Sild", + "logs.action.MANUAL_BACKUP": "Manuel Yedek", + "logs.action.DOWNLOAD_REPORT": "Rapor İndired", + "logs.action.ADD_TRUSTED_NETWORK": "Ağ Ekleed", + "logs.action.DELETE_TRUSTED_NETWORK": "Ağ Sild", + "logs.action.TOTP_SETUP": "2FA Setup", + "logs.action.TOTP_ENABLED": "2FA Etkin", + "logs.action.TOTP_VERIFIED": "2FA Doğrulandı", + "logs.action.TOTP_DISABLED": "2FA Devre Dışı", + "logs.action.TOTP_BACKUP_REGEN": "2FA Codes Regenerated", + "logs.system": "Sistem", + "logs.desc.successful_login": "Başarılıful login", + "logs.desc.admin_panel_accessed": "Yönetici panel accessed", + "logs.desc.user_logout": "Kullanıcı logout", + "logs.desc.account_locked": "Account kilitli", + "logs.desc.updated_alt_server": "Güncelled alternative server configuration", + "logs.desc.manual_backup": "Tetikleed manual database backup", + "logs.desc.started_2fa_setup": "Başlated 2FA setup", + "logs.desc.2fa_enabled": "2FA başarıyla enabled", + "logs.desc.2fa_disabled": "2FA disabled by user", + "logs.desc.2fa_backup_regen": "Regenerated 2FA backup codes", + "logs.desc.toggled_active": "Toggled active status for technician ID: %s", + "logs.desc.failed_password": "Başarısız password deneme #%s", + "logs.desc.invalid_username": "Geçersiz username: %s", + "logs.desc.ip_not_whitelist": "IP not in whitelist: %s", + "logs.desc.created_tech": "Oluşturd technician: %s", + "logs.desc.updated_tech": "Güncelled technician ID: %s", + "logs.desc.deleted_tech": "Sild technician ID: %s", + "logs.desc.reset_password": "Sıfırla password for technician ID: %s", + "logs.desc.recycled_key": "Recycled key ID: %s", + "logs.desc.deleted_key": "Sild key ID: %s", + "logs.desc.imported_keys": "İçe Aktared %s keys from CSV", + "logs.desc.exported_keys": "Dışa Aktared %s keys to CSV", + "logs.desc.registered_usb": "Kayıtlı USB device '%s' for technician %s", + "logs.desc.usb_status_changed": "Changed USB device '%s' (ID: %s) status to '%s'", + "logs.desc.deleted_usb": "Sild USB device '%s' (ID: %s)", + "logs.desc.added_network": "Ekleed trusted network: %s (%s)", + "logs.desc.deleted_network": "Sild trusted network: %s (ID: %s)", + "logs.desc.downloaded_report": "İndired %s report as PDF", + "logs.desc.access_denied": "Access reddedildi — insufficient permissions", + "logs.desc.no_permission": "Hayır permission: %s", + "acl.cat.dashboard": "Kontrol Paneli & Raporlar", + "acl.cat.keys": "OEM Anahtar Management", + "acl.cat.technicians": "Teknisyen Management", + "acl.cat.activations": "Aktivasyon Records", + "acl.cat.hardware": "Donanım Bilgirmation", + "acl.cat.usb_devices": "USB Cihaz Management", + "acl.cat.admin_users": "Yönetici Kullanıcı Management", + "acl.cat.system": "Sistem & Yapılandırma", + "acl.cat.logs": "Günlükler & Audit Trail", + "acl.cat.roles": "Roller & İzinler", + "acl.perm.view_dashboard": "View Kontrol Paneli", + "acl.perm.view_reports": "View Raporlar", + "acl.perm.export_data": "Dışa Aktar Data", + "acl.perm.view_keys": "View OEM Anahtarlar", + "acl.perm.view_key_full": "View Full Anahtar Value", + "acl.perm.add_key": "Ekle OEM Anahtar", + "acl.perm.import_keys": "İçe Aktar Anahtarlar (CSV)", + "acl.perm.edit_key": "Düzenle OEM Anahtar", + "acl.perm.recycle_key": "Recycle Anahtar", + "acl.perm.delete_key": "Sil OEM Anahtar", + "acl.perm.view_technicians": "View Teknisyenler", + "acl.perm.add_technician": "Ekle Teknisyen", + "acl.perm.edit_technician": "Düzenle Teknisyen", + "acl.perm.delete_technician": "Sil Teknisyen", + "acl.perm.reset_tech_password": "Sıfırla Teknisyen Şifre", + "acl.perm.assign_tech_role": "Assign Teknisyen Rol", + "acl.perm.view_activations": "View Aktivasyonlar", + "acl.perm.add_activation_note": "Ekle Aktivasyon Hayırte", + "acl.perm.delete_activation": "Sil Aktivasyon Record", + "acl.perm.view_hardware": "View Donanım Bilgi", + "acl.perm.export_hardware": "Dışa Aktar Donanım Raporlar", + "acl.perm.view_usb_devices": "View USB Cihazlar", + "acl.perm.register_usb_device": "Register USB Cihaz", + "acl.perm.disable_usb_device": "Devre Dışı Bırak USB Cihaz", + "acl.perm.enable_usb_device": "Etkinleştir USB Cihaz", + "acl.perm.delete_usb_device": "Sil USB Cihaz", + "acl.perm.view_admins": "View Yönetici Kullanıcıs", + "acl.perm.manage_admins": "Manage Yönetici Kullanıcıs", + "acl.perm.assign_admin_role": "Assign Yönetici Rol", + "acl.perm.view_system_info": "View Sistem Bilgi", + "acl.perm.system_settings": "Modify Sistem Ayarlar", + "acl.perm.manual_backup": "Tetikle Manuel Yedek", + "acl.perm.manage_trusted_nets": "Manage Güvenilir Ağlar", + "acl.perm.manage_smtp": "Manage SMTP Ayarlar", + "acl.perm.view_backups": "View Yedek Geçmiş", + "acl.perm.view_logs": "View Sistem Günlükler", + "acl.perm.view_audit_trail": "View Audit Trail", + "acl.perm.delete_logs": "Sil Log Entries", + "acl.perm.manage_roles": "Manage Roller & İzinler", + "acl.perm.view_acl_changelog": "View ACL Change Log", + "acl.perm.view_dashboard.desc": "Access the main dashboard with statistics", + "acl.perm.view_reports.desc": "Access activation and usage reports", + "acl.perm.export_data.desc": "Dışa Aktar data to CSV/Excel files", + "acl.perm.view_keys.desc": "View list / OEM license keys", + "acl.perm.view_key_full.desc": "See unmasked product key (not just last 5)", + "acl.perm.add_key.desc": "Manuelly add a new OEM key", + "acl.perm.import_keys.desc": "Bulk import keys from CSV file", + "acl.perm.edit_key.desc": "Modify OEM key details and status", + "acl.perm.recycle_key.desc": "Sıfırla a kullanıldı key back to kullanılmadı status", + "acl.perm.delete_key.desc": "Permanently delete an OEM key", + "acl.perm.view_technicians.desc": "View list / technician accounts", + "acl.perm.add_technician.desc": "Oluştur new technician account", + "acl.perm.edit_technician.desc": "Modify technician account details", + "acl.perm.delete_technician.desc": "Kaldır technician account", + "acl.perm.reset_tech_password.desc": "Sıfırla a technician password", + "acl.perm.assign_tech_role.desc": "Change a technician atandı role", + "acl.perm.view_activations.desc": "View activation history and deneme records", + "acl.perm.add_activation_note.desc": "Ekle notes to activation records", + "acl.perm.delete_activation.desc": "Kaldır activation history girdi", + "acl.perm.view_hardware.desc": "View hardware info reports / activated PCs", + "acl.perm.export_hardware.desc": "Dışa Aktar hardware information to CSV/PDF", + "acl.perm.view_usb_devices.desc": "View kayıtlı USB authentication devices", + "acl.perm.register_usb_device.desc": "Register a new USB authentication device", + "acl.perm.disable_usb_device.desc": "Devre Dışı Bırak a USB device (revoke access)", + "acl.perm.enable_usb_device.desc": "Re-enable a disabled USB device", + "acl.perm.delete_usb_device.desc": "Permanently remove USB device registration", + "acl.perm.view_admins.desc": "View list / admin user accounts", + "acl.perm.manage_admins.desc": "Oluştur, edit, and delete admin accounts", + "acl.perm.assign_admin_role.desc": "Change an admin user atandı role", + "acl.perm.view_system_info.desc": "View system configuration and status", + "acl.perm.system_settings.desc": "Change system configuration values", + "acl.perm.manual_backup.desc": "Execute a manual database backup", + "acl.perm.manage_trusted_nets.desc": "Ekle/edit/remove trusted network ranges", + "acl.perm.manage_smtp.desc": "Configure email delivery settings", + "acl.perm.view_backups.desc": "View database backup history and status", + "acl.perm.view_logs.desc": "Access system and error log girdi", + "acl.perm.view_audit_trail.desc": "View detailed admin activity audit log", + "acl.perm.delete_logs.desc": "Kaldır log girdi from the system", + "acl.perm.manage_roles.desc": "Oluştur, edit, delete roles and assign permissions", + "acl.perm.view_acl_changelog.desc": "View audit log / role/permission changes", + "acl.danger_badge": "DANGER", + "acl.permissions_count": "%d permissions", + "nav.notifications": "Bildirimler", + "notif.title": "Bildirimler", + "notif.pref_title": "Hayırtification Preferences", + "notif.no_notifications": "Hayır bildirims", + "notif.mark_all_read": "Mark all read", + "notif.preferences": "Preferences", + "notif.push_status": "Push Hayırtification Durum", + "notif.enable_push": "Etkinleştir Push Bildirimler", + "notif.disable_push": "Devre Dışı Bırak Push Bildirimler", + "notif.push_active": "Push bildirims are active.", + "notif.push_inactive": "Push bildirims are disabled.", + "notif.push_not_supported": "Push bildirims are not supported in this browser.", + "notif.push_denied": "Hayırtification permission was reddedildi. Please enable it in browser settings.", + "notif.categories": "Hayırtification Categories", + "notif.categories_desc": "Choose which types / events you want to be notified about.", + "notif.cat.security": "Security", + "notif.cat.keys": "Anahtar Management", + "notif.cat.technicians": "Teknisyenler", + "notif.cat.system": "Sistem", + "notif.cat.devices": "USB Cihazlar", + "notif.cat.activation": "Aktivasyon", + "notif.title.security": "Security Uyarı", + "notif.title.keys": "Anahtar Management", + "notif.title.technicians": "Teknisyen Güncelle", + "notif.title.system": "Sistem Event", + "notif.title.devices": "USB Cihaz Güncelle", + "notif.title.activation": "Aktivasyon Event", + "notif.just_now": "Just now", + "notif.min_ago": "m ago", + "notif.hr_ago": "h ago", + "notif.day_ago": "d ago", + "notif.test_title": "Test Et Bildirimler", + "notif.test_desc": "Doğrula that bildirims are working correctly after enabling them.", + "notif.test_push": "Test Et Push Hayırtification", + "notif.test_sound": "Test Et Sound Hayırtification", + "notif.test_sending": "Sending...", + "notif.test_push_sent": "Test Et push bildirim sent! Kontrol Et your browser bildirims.", + "notif.test_failed": "Test Et başarısız oldu: ", + "notif.test_playing": "Playing bildirim sound...", + "notif.test_sound_played": "Hayırtification sound played! Bell bildirim created.", + "notif.test_sound_error": "Could not play sound: ", + "notif.ios_not_installed": "To receive push bildirims on iOS, install this app first:", + "notif.ios_install_step1": "Tap the Share button (\\u2399) in Safari", + "notif.ios_install_step2": "Tap \"Ekle to Home Screen\"", + "notif.ios_install_step3": "Aç the app from your Home Screen", + "notif.ios_install_step4": "Etkinleştir push bildirims", + "notif.ios_wrong_browser": "Push bildirims on iOS require Safari. Aç this page in Safari.", + "notif.ios_old_version": "Push bildirims require iOS 16.4 or later. Please update your device.", + "settings.client_resources": "İstemci Resources", + "settings.client_resources_desc": "Yükle and manage files distributed to client workstations.", + "settings.ps7_installer": "PowerShell 7 Kurer", + "settings.upload_installer": "Yükle PS7 Kurer", + "settings.replace_file": "Replace", + "settings.file_size": "Boyut", + "settings.file_checksum": "SHA256", + "settings.uploaded_by": "Yükleed by", + "settings.upload_progress": "Yükleing...", + "settings.upload_success": "Dosya uploaded başarıyla.", + "settings.upload_error": "Yükle başarısız oldu: ", + "settings.no_installer": "Hayır installer uploaded yet.", + "settings.select_file": "Please select a file first.", + "settings.invalid_file_type": "Only .msi and .exe files are izin verildi.", + "settings.delete_resource_confirm": "Are you sure you want to delete this resource?", + "js.error_prefix": "Hata: ", + "js.error_label": "Hata: ", + "js.unknown_error": "Unknown error", + "js.delete_failed": "Sil başarısız oldu", + "js.clone_failed": "Clone başarısız oldu", + "js.copied": "Copied!", + "js.error_loading_settings": "Hata loading settings", + "js.error_loading_usb": "Hata loading USB devices", + "js.failed_load_usb": "Başarısız to load USB devices", + "js.failed_register_usb": "Başarısız to register USB device", + "js.error_detecting_usb": "Hata detecting USB devices", + "js.failed_detect_usb": "Başarısız to detect USB devices. This feature requires PowerShell access on the admin PC.", + "js.usb_manual_entry_hint": "You can still manually enter device information below.", + "js.usb_check_connected": "USB drive is physically connected", + "js.usb_check_recognized": "Cihaz is recognized by Windows", + "js.usb_check_admin_pc": "You're running this on the admin PC (not server)", + "js.usb_confirm_disable": "Devre Dışı Bırak this USB device? The technician will not be able to use it for authentication.", + "js.usb_reason_disable": "İsteğe Bağlı: Enter reason for disabling this device", + "js.usb_confirm_lost": "Mark this USB device as LOST? This will disable authentication immediately.", + "js.usb_reason_lost": "İsteğe Bağlı: Enter details about when/where device was lost", + "js.usb_confirm_stolen": "Mark this USB device as STOLEN? This will disable authentication immediately.", + "js.usb_reason_stolen": "İsteğe Bağlı: Enter details about the theft", + "js.usb_confirm_enable": "Re-enable this USB device for authentication?", + "js.failed_update_usb_status": "Başarısız to update USB device status", + "js.usb_confirm_delete": "PERMANENTLY DELETE USB device \"%s\"?\n\nThis action geri alınamaz.\n\nThis will remove all records / this device from the database.", + "js.failed_delete_usb": "Başarısız to delete USB device", + "js.usb_fill_form": "Fill Form with This Cihaz", + "js.usb_command_copied": "Command copied!\n\nHayırw:\n1. Aç PowerShell (Win+X → A)\n2. Yapıştır and run\n3. Kopyala the SeriNumber", + "js.error_loading_2fa": "Hata loading 2FA status", + "js.error_setup_2fa": "Hata setting up 2FA", + "js.twofa_disable_todo": "2FA disable: please use the totp-disable.php API directly for now.", + "js.twofa_regenerate_todo": "Yedek code regeneration: please use the totp-regenerate-backup-codes.php API directly for now.", + "js.error_loading_networks": "Hata loading trusted networks", + "js.failed_load_networks": "Başarısız to load trusted networks", + "js.error_loading_backups": "Hata loading backup history", + "login.title": "Secure Yönetici", + "login.subtitle": "AnahtarGate", + "login.username": "Kullanıcı Adı", + "login.password": "Şifre", + "login.submit": "Login", + "login.error": "Login başarısız oldu", + "login.invalid_credentials": "Geçersiz username or password", + "common.create": "Oluştur", + "common.saving": "Saving...", + "common.total_results": "Toplam results", + "dashboard.no_activity": "Hayır recent activity", + "nav.devices": "USB Cihazlar", + "nav.networks": "Güvenilir Ağlar", + "nav.two_fa": "2FA Ayarlar", + "backups.title": "Yedeklemeler", + "backups.col_id": "ID", + "backups.col_type": "Tür", + "backups.col_status": "Durum", + "backups.col_filename": "Dosyaname", + "backups.col_size": "Boyut", + "backups.col_tables": "Tablos", + "backups.col_rows": "Satırlar", + "backups.col_created_at": "Oluşturd At", + "backups.trigger": "Tetikle Manuel Yedek", + "backups.triggering": "Tetikleing...", + "devices.search_placeholder": "Ara devices...", + "devices.stat_active": "Aktif", + "devices.stat_disabled": "Devre Dışı", + "devices.stat_lost": "Lost", + "devices.stat_stolen": "Stolen", + "devices.device_name": "Cihaz Ad", + "devices.serial_number": "Seri Number", + "devices.technician": "Teknisyen", + "devices.manufacturer": "Üretici", + "devices.model": "Model", + "devices.status": "Durum", + "devices.registered_date": "Kayıtlı", + "devices.disable": "Devre Dışı Bırak", + "devices.mark_lost": "Mark Lost", + "devices.mark_stolen": "Mark Stolen", + "devices.delete": "Sil", + "devices.confirm_disable": "Devre Dışı Bırak Cihaz", + "devices.confirm_disable_desc": "Are you sure you want to disable this device?", + "devices.confirm_lost": "Mark as Lost", + "devices.confirm_lost_desc": "Are you sure you want to mark this device as lost?", + "devices.confirm_stolen": "Mark as Stolen", + "devices.confirm_stolen_desc": "Are you sure you want to mark this device as stolen?", + "devices.confirm_delete": "Sil Cihaz", + "devices.confirm_delete_desc": "Are you sure you want to permanently delete this device?", + "devices.status_active": "Aktif", + "devices.status_disabled": "Devre Dışı", + "devices.status_lost": "Lost", + "devices.status_stolen": "Stolen", + "history.order_number": "Sipariş #", + "history.product_key": "Ürün Anahtar", + "history.status_success": "Başarılı", + "history.status_failed": "Başarısız", + "keys.oem_identifier": "OEM ID", + "keys.export": "Dışa Aktar CSV", + "keys.confirm_recycle": "Recycle Anahtar", + "keys.confirm_recycle_desc": "Are you sure you want to recycle this key? It will be reset to kullanılmadı.", + "keys.confirm_delete": "Sil Anahtar", + "keys.confirm_delete_desc": "Are you sure you want to permanently delete this key?", + "logs.timestamp": "Zamanstamp", + "networks.add": "Ekle Ağ", + "networks.add_title": "Ekle Güvenilir Ağ", + "networks.add_desc": "Ekle a new trusted network for 2FA bypass and USB authentication.", + "networks.col_name": "Ad", + "networks.col_ip_range": "IP Range", + "networks.col_bypass_2fa": "Bypass 2FA", + "networks.col_allow_usb": "Tümüow USB Auth", + "networks.col_created_by": "Oluşturd By", + "networks.col_created_at": "Oluşturd At", + "networks.field_name": "Ağ Ad", + "networks.field_name_placeholder": "e.g., Office LAN", + "networks.field_ip_range": "IP Range (CIDR)", + "networks.field_description": "Açıklama", + "networks.field_description_placeholder": "İsteğe Bağlı description...", + "networks.field_bypass_2fa": "Bypass 2FA from this network", + "networks.field_allow_usb": "Tümüow USB authentication from this network", + "networks.confirm_delete": "Sil Ağ", + "networks.confirm_delete_desc": "Are you sure you want to delete this trusted network?", + "notifications.prefs_title": "Push Preferences", + "notifications.prefs_desc": "Choose which bildirim categories you want to receive.", + "notifications.list_title": "Recent Bildirimler", + "notifications.mark_all_read": "Mark Tümü Read", + "notifications.empty": "Hayır bildirims yet", + "roles.col_display_name": "Ekran Ad", + "roles.col_role_name": "Rol Ad", + "roles.col_type": "Tür", + "roles.col_permissions": "İzinler", + "roles.col_system": "Sistem", + "roles.create_title": "Oluştur Rol", + "roles.create_desc": "Oluştur a new custom role with specific permissions.", + "roles.edit_title": "Düzenle Rol", + "roles.edit_desc": "Modify role settings and permissions.", + "roles.field_role_name": "Rol Ad", + "roles.field_display_name": "Ekran Ad", + "roles.field_description": "Açıklama", + "roles.field_description_placeholder": "İsteğe Bağlı description...", + "roles.field_role_type": "Rol Tür", + "roles.field_color": "Badge Renk", + "roles.field_permissions": "İzinler", + "roles.type_admin": "Yönetici", + "roles.type_technician": "Teknisyen", + "roles.dangerous": "Dangerous", + "roles.confirm_delete": "Sil Rol", + "roles.confirm_delete_desc": "Are you sure you want to permanently delete this role?", + "settings.field_enabled": "Etkin", + "settings.field_enabled_desc": "Etkinleştir or disable the alternative server.", + "settings.field_script_path": "Script Yol", + "settings.field_pre_command": "Pre-Command", + "settings.field_pre_command_placeholder": "Command to run before script...", + "settings.field_script_args": "Script Arguments", + "settings.field_script_args_placeholder": "Ekleitional arguments...", + "settings.field_script_type": "Script Tür", + "settings.field_timeout": "Zaman Aşımı (saniye)", + "settings.field_prompt_technician": "Prompt Teknisyen", + "settings.field_prompt_technician_desc": "Ask technician before using alternative server.", + "settings.field_auto_failover": "Auto Failover", + "settings.field_auto_failover_desc": "Otomatikally switch to alternative server on failure.", + "settings.field_verify_activation": "Doğrula Aktivasyon", + "settings.field_verify_activation_desc": "Doğrula activation result from alternative server.", + "settings.brand_accent_color": "Vurgu", + "settings.brand_app_version": "Sürüm Etiket", + "settings.brand_colors": "Özel Renks", + "settings.brand_colors_hint": "Leave empty to use default theme colors.", + "settings.brand_company_name": "Şirket Ad", + "settings.brand_delete": "Kaldır", + "settings.brand_favicon": "Favicon", + "settings.brand_login_subtitle": "Login Alt Başlık", + "settings.brand_login_title": "Login Başlık", + "settings.brand_logo": "Logo", + "settings.brand_primary_color": "Birincil", + "settings.brand_reset_colors": "Sıfırla", + "settings.brand_sidebar_color": "Kenar Çubuğu", + "settings.brand_upload": "Yükle", + "settings.branding_desc": "Özelize the look and feel / the application.", + "settings.branding_title": "Markalama", + "settings.order_field_title": "Sipariş Number Field", + "settings.order_field_desc": "Configure the order number field label, geçerliation rules, and length constraints.", + "settings.order_label_en": "Etiket (English)", + "settings.order_label_ru": "Etiket (Russian)", + "settings.order_prompt_en": "Prompt (English)", + "settings.order_prompt_ru": "Prompt (Russian)", + "settings.order_char_type": "Character Tür", + "settings.order_char_digits_only": "Digits Only (0-9)", + "settings.order_char_alphanumeric": "Alphanumeric (A-Z, 0-9)", + "settings.order_char_alphanumeric_dash": "Alphanumeric + Dash/Underscore", + "settings.order_char_custom": "Özel Regex", + "settings.order_custom_regex": "Özel Regex Pattern", + "settings.order_custom_regex_hint": "PHP regex with delimiters, e.g. /^[A-Z]{2}\\d{4}$/", + "settings.order_min_length": "Minimum Length", + "settings.order_max_length": "Maximum Length", + "settings.order_preview": "Geçerliation Preview", + "settings.order_preview_valid": "Geçerli", + "settings.order_preview_invalid": "Geçersiz", + "tech.password": "Şifre", + "tech.password_placeholder": "Enter password...", + "tech.new_password": "Yeni Şifre", + "tech.preferred_language": "Preferred Dil", + "tech.lang_en": "English", + "tech.lang_ru": "Russian", + "tech.server_oem": "OEM Sunucu", + "tech.server_alternative": "Alternatif Sunucu", + "tech.activate": "Activate", + "tech.deactivate": "Deactivate", + "tech.delete": "Sil", + "tech.reset_password": "Sıfırla Şifre", + "tech.reset_password_desc": "Sıfırla this technician's password.", + "tech.confirm_toggle": "Toggle Durum", + "tech.confirm_activate_desc": "Are you sure you want to activate this technician?", + "tech.confirm_deactivate_desc": "Are you sure you want to deactivate this technician?", + "tech.confirm_delete": "Sil Teknisyen", + "tech.confirm_delete_desc": "Are you sure you want to permanently delete this technician?", + "tech.error_id_length": "Teknisyen ID must be 1-20 characters", + "tech.error_password_length": "Şifre must be at least 8 characters", + "tech.error_add_failed": "Başarısız to add technician", + "tech.error_edit_failed": "Başarısız to update technician", + "two_fa.status_title": "Two-Factor Authentication", + "two_fa.status_desc_v2": "Protect your account with an additional layer / security using a TOTP authenticator app.", + "two_fa.label_status": "Durum", + "two_fa.label_backup_codes": "Yedek Codes Remaining", + "two_fa.label_verified": "Doğrulandı At", + "two_fa.enabled": "Etkin", + "two_fa.disabled": "Devre Dışı", + "two_fa.no_data": "Unable to load 2FA status", + "two_fa.manage_in_panel": "Manage in Yönetici Panel", + "two_fa.not_available": "2FA Hayırt Mevcut", + "two_fa.not_available_desc": "The 2FA module is not yapılandırıldı on this server. İletişim your administrator.", + "two_fa.btn_manage": "Manage 2FA Ayarlar", + "two_fa.btn_enable": "Etkinleştir 2FA", + "two_fa.how_it_works_title": "How 2FA Works", + "two_fa.step1_title": "Kur App", + "two_fa.step1_desc": "Use Google Authenticator, Authy, or any TOTP-compatible app", + "two_fa.step2_title": "Scan QR Code", + "two_fa.step2_desc": "Link your account by scanning the setup QR code", + "two_fa.step3_title": "Enter Code", + "two_fa.step3_desc": "Enter the 6-digit code from your app each time you log in", + "sidebar.quality_control": "Kalite Control", + "nav.compliance": "QC Uyum", + "nav.compliance_results": "Uyum Sonuçlar", + "compliance.tab_settings": "Ayarlar", + "compliance.tab_motherboards": "Anakarts", + "compliance.tab_manufacturers": "Üreticis", + "compliance.global_settings": "Global Ayarlar", + "compliance.global_settings_desc": "Configure QC compliance engine defaults.", + "compliance.qc_enabled": "QC Engine Etkin", + "compliance.qc_enabled_desc": "Etkinleştir hardware compliance checking on all activations.", + "compliance.blocking_prevents_key": "Blocking Prevents Aktivasyon", + "compliance.blocking_prevents_key_desc": "Refuse key distribution when blocking compliance issues exist.", + "compliance.max_unallocated_mb": "Max Untahsis edildi Alan (MB)", + "compliance.max_unallocated_mb_desc": "Fail partition check if tahsis edilmedi disk space exceeds this limit. Set to 0 to disable.", + "compliance.default_bios_enforcement": "Varsayılan BIOS Enforcement", + "compliance.default_sb_enforcement": "Varsayılan Güvenli Önyükleme Enforcement", + "compliance.default_hb_enforcement": "Varsayılan Boot Logo Enforcement", + "compliance.enforcement_0": "Devre Dışı", + "compliance.enforcement_1": "Bilgi", + "compliance.enforcement_2": "Uyarı", + "compliance.enforcement_3": "Blocking", + "compliance.manufacturer": "Üretici", + "compliance.product": "Ürün", + "compliance.times_seen": "Seen", + "compliance.last_seen": "Last Seen", + "compliance.enforcement": "Enforcement", + "compliance.known_bios": "Known BIOS", + "compliance.edit_rules": "Düzenle Rules", + "compliance.search_boards": "Ara motherboards...", + "compliance.all_manufacturers": "Tümü Üreticis", + "compliance.edit_motherboard": "Düzenle Anakart Rules", + "compliance.inherit_hint": "Leave empty to inherit from manufacturer defaults or global settings.", + "compliance.inherit": "Inherit (global)", + "compliance.secure_boot_required": "Güvenli Önyükleme Gerekli", + "compliance.sb_enforcement": "Güvenli Önyükleme Enforcement", + "compliance.min_bios": "Min BIOS Sürüm", + "compliance.rec_bios": "Recommended BIOS", + "compliance.bios_enforcement": "BIOS Enforcement", + "compliance.hb_enforcement": "Boot Logo Enforcement", + "compliance.drivers_enforcement": "Missing Drivers Enforcement", + "compliance.notes": "Hayırtlar", + "compliance.known_bios_versions": "Known BIOS Sürüms", + "compliance.unconfigured_manufacturers": "Unyapılandırıldı Üreticis", + "compliance.unconfigured_desc": "These manufacturers were detected but have no default rules.", + "compliance.edit_manufacturer": "Düzenle Üretici Varsayılans", + "compliance.configure_manufacturer": "Configure Üretici", + "compliance.no_manufacturers": "Hayır manufacturers detected yet. Anakarts will appear here after hardware collection.", + "compliance.order_number": "Sipariş #", + "compliance.motherboard": "Anakart", + "compliance.check_secure_boot": "Güvenli Önyükleme", + "compliance.check_bios": "BIOS Sürüm", + "compliance.check_boot_logo": "Boot Logo", + "compliance.check_partitions": "Partitions", + "compliance.check_drivers": "Drivers", + "compliance.check_type": "Kontrol Et", + "compliance.result": "Sonuç", + "compliance.expected_actual": "Expected / Actual", + "compliance.message": "Message", + "compliance.rule_source": "Source", + "compliance.checked_at": "Kontrol Eted", + "compliance.type_bios_version": "BIOS Sürüm", + "compliance.type_secure_boot": "Güvenli Önyükleme", + "compliance.type_hackbgrt_boot_priority": "Boot Logo Doğrulama", + "compliance.type_partition_layout": "Partition Layout", + "compliance.result_pass": "Pass", + "compliance.result_info": "Bilgi", + "compliance.result_warning": "Uyarı", + "compliance.result_fail": "Fail", + "compliance.source_global": "Global", + "compliance.source_manufacturer": "Üretici", + "compliance.source_model": "Model", + "compliance.stat_pass_rate": "Pass Rate", + "compliance.stat_warnings": "Uyarıs", + "compliance.stat_failures": "Failures", + "compliance.stat_blocking": "Blocking", + "compliance.stat_total": "Toplam Kontrol Ets", + "compliance.top_failing": "Top Failing Boards", + "compliance.search_order": "Ara by order number...", + "compliance.all_types": "Tümü Kontrol Et Türs", + "compliance.all_results": "Tümü Sonuçlar", + "compliance.overall": "Overall", + "compliance.col_sb": "SB", + "compliance.col_bios_enf": "BIOS", + "compliance.col_bl": "BL", + "compliance.col_part": "Part", + "compliance.col_drv": "Drv", + "compliance.col_secure_boot": "Güvenli Önyükleme", + "compliance.col_bios": "BIOS", + "compliance.col_boot_logo": "Boot Logo", + "compliance.col_partitions": "Partitions", + "compliance.col_drivers": "Drivers", + "compliance.type_missing_drivers": "Missing Drivers", + "compliance.default_partition_enforcement": "Partition Layout", + "compliance.default_drivers_enforcement": "Missing Drivers", + "compliance.global_defaults_hint": "These are fallback defaults. Ürün lines can override per-line.", + "product_lines.qc_enforcement": "QC Enforcement per Kontrol Et", + "product_lines.qc_enforcement_hint": "Set per-check enforcement for this product line. \"Inherit\" uses global defaults.", + "compliance.recheck_historical": "Recheck Historical", + "compliance.recheck_title": "Recheck Historical Records", + "compliance.recheck_counting": "Sayıing records...", + "compliance.recheck_confirm_desc": "This will re-run all QC compliance checks on {{count}} hardware records using current rules. Existing results will be replaced. Records are processed in toplu işlemes / 50.", + "compliance.recheck_running": "Processing records in toplu işlemes...", + "compliance.recheck_done": "Recheck complete.", + "compliance.recheck_no_records": "Hayır hardware records found to recheck.", + "compliance.recheck_start": "Recheck {{count}} Records", + "compliance.recheck_stop": "Durdur", + "common.app_name": "AnahtarGate", + "common.app_version": "v2.1.0", + "common.mb": "MB", + "theme.light": "Açık", + "theme.dark": "Koyu", + "theme.system": "Sistem", + "toast.technician_added": "Teknisyen added başarıyla", + "toast.technician_updated": "Teknisyen updated başarıyla", + "toast.technician_toggled": "Teknisyen status updated", + "toast.technician_deleted": "Teknisyen deleted", + "toast.password_reset": "Şifre reset başarıyla", + "toast.key_recycled": "Anahtar recycled başarıyla", + "toast.key_deleted": "Anahtar deleted", + "toast.device_updated": "Cihaz status updated", + "toast.device_deleted": "Cihaz deleted", + "toast.network_added": "Güvenilir network added", + "toast.network_deleted": "Ağ removed", + "toast.role_created": "Rol created başarıyla", + "toast.role_updated": "Rol updated başarıyla", + "toast.role_deleted": "Rol deleted", + "toast.backup_triggered": "Yedek tetikleed başarıyla", + "toast.brand_asset_deleted": "Asset removed", + "toast.brand_asset_uploaded": "Asset uploaded başarıyla", + "toast.branding_saved": "Markalama saved başarıyla", + "toast.preferences_saved": "Hayırtification preferences saved", + "toast.qc_settings_saved": "QC settings saved", + "toast.motherboard_updated": "Anakart rule updated", + "toast.manufacturer_updated": "Üretici rule updated", + "toast.recheck_started": "Historical recheck completed", + "toast.settings_saved": "Ayarlar saved başarıyla", + "toast.csv_imported": "CSV imported başarıyla", + "toast.keys_added": "{{count}} key(s) added başarıyla", + "toast.error_generic": "An error occurred", + "toast.events_retried": "Retried {{retried}}, succeeded {{succeeded}}", + "toast.integration_saved": "Entegrasyon settings saved", + "error.boundary_title": "Something went wrong", + "error.boundary_description": "An unexpected error occurred. Please try refreshing the page.", + "error.boundary_refresh": "Yenile Sayfa", + "empty.keys": "Hayır keys found. İçe Aktar a CSV file to add OEM keys.", + "empty.technicians": "Hayır technicians yet. Ekle your first technician to get started.", + "empty.history": "Hayır activation history. Records will appear once technicians activate keys.", + "empty.devices": "Hayır USB devices kayıtlı yet.", + "empty.roles": "Hayır custom roles defined. Oluştur a role to manage permissions.", + "empty.networks": "Hayır trusted networks yapılandırıldı. Ekle a network to allow admin access.", + "empty.backups": "Hayır backups found. Tetikle a manual backup to create one.", + "empty.logs": "Hayır activity logs yet.", + "hw.title": "Donanım Detaylar", + "hw.view": "View hardware details", + "hw.error": "Başarısız to load hardware info", + "hw.not_found": "Hayır hardware data found for this activation", + "hw.cpu": "CPU", + "hw.ram": "RAM", + "hw.storage": "Depolama", + "hw.gpu": "GPU", + "hw.system": "Sistem", + "hw.computer_name": "Computer", + "hw.manufacturer": "Üretici", + "hw.product": "Ürün", + "hw.system_serial": "Seri", + "hw.uuid": "UUID", + "hw.chassis": "Chassis", + "hw.os": "Operating Sistem", + "hw.os_name": "OS", + "hw.os_version": "Sürüm", + "hw.os_arch": "Architecture", + "hw.os_build": "Build", + "hw.os_install": "Kured", + "hw.secure_boot": "Güvenli Önyükleme", + "hw.enabled": "Etkin", + "hw.disabled": "Devre Dışı", + "hw.motherboard": "Anakart & BIOS", + "hw.mb_manufacturer": "Üretici", + "hw.mb_product": "Ürün", + "hw.mb_serial": "Seri", + "hw.bios_vendor": "BIOS", + "hw.bios_version": "BIOS Sürüm", + "hw.bios_date": "BIOS Tarih", + "hw.cpu_details": "İşlemci", + "hw.cpu_name": "Ad", + "hw.cpu_manufacturer": "Vendor", + "hw.cpu_cores": "Cores / Threads", + "hw.cpu_clock": "Clock", + "hw.memory": "Bellek", + "hw.ram_total": "Toplam", + "hw.ram_slots": "Slots", + "hw.module": "Module", + "hw.capacity": "Boyut", + "hw.speed": "Speed", + "hw.storage_details": "Depolama", + "hw.partitions": "Partitions", + "hw.network": "Ağ", + "hw.mac": "MAC", + "hw.local_ip": "Local IP", + "hw.public_ip": "Public IP", + "hw.security": "Security", + "hw.present": "Present", + "hw.not_present": "Hayırt Present", + "hw.tpm_vendor": "TPM Vendor", + "hw.fingerprint": "Parmak İzi", + "hw.gpu_details": "Grafik", + "hw.gpu_name": "GPU", + "hw.gpu_driver": "Driver", + "hw.gpu_vram": "VRAM", + "hw.collected": "Collected", + "hw.method": "Method", + "hw.serial": "Seri", + "hw.part_number": "Part #", + "hw.cpu_serial": "Seri Number", + "hw.bios_serial": "BIOS Seri", + "hw.os_serial": "OS Seri", + "hw.mb_version": "Sürüm", + "hw.chassis_serial": "Chassis Seri", + "hw.adapters": "Adapters", + "integrations.configure": "Configure", + "integrations.configure_title": "Configure {{name}}", + "integrations.desc": "Connect external systems to sync data automatically.", + "integrations.enabled": "Etkin", + "integrations.failed": "başarısız oldu", + "integrations.last_sync": "Last sync", + "integrations.none": "Hayır integrations available.", + "integrations.onec_base_url": "1C Sunucu URL", + "integrations.onec_endpoint_act": "Aktivasyonlar Endpoint", + "integrations.onec_endpoint_inv": "Inventory Endpoint", + "integrations.onec_password": "Şifre", + "integrations.onec_pull_inv": "Pull inventory from 1C", + "integrations.onec_push_act": "Push activations to 1C", + "integrations.onec_push_keys": "Push key usage to 1C", + "integrations.onec_username": "Kullanıcı Adı", + "integrations.ost_api_key": "API Anahtar", + "integrations.ost_auto_create": "Auto-create ticket on key assignment", + "integrations.ost_auto_reply": "Auto-reply on activation complete", + "integrations.ost_base_url": "osTicket URL", + "integrations.ost_department_id": "Department ID", + "integrations.ost_include_hw": "Include hardware details", + "integrations.ost_subject_template": "Ticket Subject Şablon", + "integrations.ost_template_hint": "Use {order_number} as placeholder", + "integrations.ost_topic_id": "Topic ID", + "integrations.pending": "pending", + "integrations.retry": "Yeniden Deneme", + "integrations.status_connected": "Bağlı", + "integrations.status_disconnected": "Bağlantı Kesildi", + "integrations.status_error": "Hata", + "integrations.test": "Test Et", + "integrations.test_connection": "Test Et Bağlantı", + "integrations.title": "Entegrasyonlar", + "common.coming_soon": "Coming soon", + "errors.access_denied": "Access Reddedildi", + "errors.insufficient_permissions": "You do not have the required permissions to view this page. İletişim your administrator if you believe this is an error.", + "roles.selected": "selected", + "settings.script_type_powershell": "PowerShell", + "nav.product_lines": "Ürün Lines", + "product_lines.title": "Ürün Lines", + "product_lines.subtitle": "Manage product lines, variants, and partition layout templates for QC checks.", + "product_lines.lines_list": "Ürün Lines", + "product_lines.no_lines": "Hayır product lines yapılandırıldı.", + "product_lines.select_line": "Seç a product line to view its variants and partition templates.", + "product_lines.add_line": "Ekle Ürün Line", + "product_lines.edit_line": "Düzenle Ürün Line", + "product_lines.line_dialog_desc": "Define a product line with its order number pattern.", + "product_lines.name": "Ad", + "product_lines.order_pattern": "Sipariş Pattern", + "product_lines.pattern_hint": "Sipariş number prefix (e.g. ЭЛ00-######, ЛЕ00-######). Use # for digits, * for any characters.", + "product_lines.enforcement": "Enforcement Level", + "product_lines.enforcement_ignore": "Ignore", + "product_lines.enforcement_info": "Bilgi", + "product_lines.enforcement_warning": "Uyarı", + "product_lines.enforcement_blocking": "Blocking", + "product_lines.description": "Açıklama", + "product_lines.pattern": "Pattern", + "product_lines.variants": "Variants", + "product_lines.no_variants": "Hayır variants yapılandırıldı for this line.", + "product_lines.add_variant": "Ekle Variant", + "product_lines.edit_variant": "Düzenle Variant", + "product_lines.variant_dialog_desc": "Configure disk size range and partition layout template.", + "product_lines.variant_name": "Variant Ad", + "product_lines.disk_min_mb": "Disk Min (MB)", + "product_lines.disk_max_mb": "Disk Max (MB)", + "product_lines.disk_range_hint": "Range: {{min}} — {{max}}", + "product_lines.partitions": "Partitions", + "product_lines.total": "Toplam", + "product_lines.add_partition": "Ekle", + "product_lines.part_name": "Ad", + "product_lines.part_type": "Tür", + "product_lines.part_size": "Boyut (MB)", + "product_lines.part_tolerance": "Tol. %", + "product_lines.part_flexible": "Flex", + "product_lines.saved": "Ürün line saved", + "product_lines.deleted": "Ürün line deleted", + "product_lines.variant_saved": "Ürün variant saved", + "product_lines.variant_deleted": "Ürün variant deleted", + "product_lines.confirm_delete_line": "Sil Ürün Line?", + "product_lines.confirm_delete_line_desc": "This will deactivate the product line and all its variants. This action can be undone.", + "product_lines.confirm_delete_variant": "Sil Variant?", + "product_lines.confirm_delete_variant_desc": "This will deactivate this variant and its partition template.", + "auth.session_expired": "Session süresi doldu. Please log in again.", + "settings.session_title": "Session Ayarlar", + "settings.session_desc": "Configure admin session zaman aşımı and inactivity limits.", + "settings.session_timeout": "Session Zaman Aşımı (dakika)", + "settings.session_timeout_desc": "Maximum session lifetime before forced re-login.", + "settings.max_failed_logins": "Max Başarısız Login Denemes", + "settings.lockout_duration": "Lockout Süre (dakika)", + "settings.password_change_days": "Force Şifre Change (gün)", + "settings.password_change_days_desc": "0 = never require password change", + "settings.session_saved": "Session settings saved", + "settings.smtp_title": "E-posta / SMTP", + "settings.smtp_desc": "Configure email delivery for bildirims and alerts.", + "settings.smtp_enabled": "Etkinleştir E-posta Bildirimler", + "settings.smtp_enabled_desc": "Send email alerts for activation failures, key exhaustion, etc.", + "settings.smtp_provider": "Provider Preset", + "settings.smtp_server": "SMTP Sunucu", + "settings.smtp_port": "Bağlantı Hayırktası", + "settings.smtp_encryption": "Şifreleme", + "settings.smtp_enc_none": "Hiçbiri (not recommended)", + "settings.smtp_auth": "Require Authentication", + "settings.smtp_auth_desc": "Most SMTP servers require username/password authentication.", + "settings.smtp_username": "Kullanıcı Adı", + "settings.smtp_password": "Şifre", + "settings.smtp_password_hint": "For Gmail, use an App Şifre. Stored şifrelenmiş at rest (AES-256-GCM).", + "settings.smtp_from": "From Adres", + "settings.smtp_from_name": "From Ad", + "settings.smtp_to": "Varsayılan Recipient", + "settings.smtp_triggers": "Hayırtification Tetikles", + "settings.smtp_on_fail": "Aktivasyon Failure", + "settings.smtp_on_fail_desc": "Send alert when a key activation fails.", + "settings.smtp_on_exhausted": "Anahtarlar Exhausted", + "settings.smtp_on_exhausted_desc": "Send alert when available keys run out.", + "settings.smtp_on_summary": "Daily Özet", + "settings.smtp_on_summary_desc": "Send a daily digest / activation activity.", + "settings.smtp_test_recipient": "Test Et Recipient", + "settings.smtp_testing": "Sending...", + "settings.smtp_test": "Send Test Et E-posta", + "settings.smtp_test_ok": "Test Et email sent başarıyla", + "settings.smtp_test_fail": "Test Et başarısız oldu", + "settings.smtp_saved": "E-posta settings saved", + "nav.downloads": "İndirs", + "downloads.title": "İstemci İndirs", + "downloads.description": "İndir tools and extensions for technician workstations", + "downloads.oem_launcher": "OEM Activator Launcher", + "downloads.oem_launcher_desc": "CMD launcher for technician workstations — admin rights, WSUS cleanup, PS7 bootstrap", + "downloads.ps7_installer": "PowerShell 7 Kurer", + "downloads.ps7_installer_desc": "MSI installer for the PowerShell 7 runtime required by the activation script", + "downloads.chrome_extension": "Chrome Donanım Bridge", + "downloads.chrome_extension_desc": "Browser extension for collecting hardware info from client machines via WebGL/API", + "downloads.filename": "Dosya", + "downloads.file_size": "Boyut", + "downloads.checksum": "SHA256", + "downloads.uploaded_at": "Yükleed", + "downloads.uploaded_by": "Yükleed By", + "downloads.download": "İndir", + "downloads.upload": "Yükle", + "downloads.uploading": "Yükleing...", + "downloads.replace": "Replace Dosya", + "downloads.delete": "Sil", + "downloads.not_uploaded": "Hayırt yet uploaded", + "downloads.upload_prompt": "Yükle this resource to make it available for download", + "downloads.confirm_delete_title": "Sil Resource", + "downloads.confirm_delete": "Are you sure you want to delete this resource? It will no longer be available for download.", + "downloads.upload_success": "Resource uploaded başarıyla", + "downloads.delete_success": "Resource deleted", + "empty.downloads": "Hayır client resources found", + "nav.system_upgrade": "Sistem Güncelleme", + "upgrade.title": "Sistem Güncelleme", + "upgrade.current_version": "Mevcut Sürüm", + "upgrade.step_upload": "Yükle Paket", + "upgrade.step_preflight": "Ön Kontrol Kontrol Ets", + "upgrade.step_backup": "Yedek", + "upgrade.step_apply": "Uygula Güncelleme", + "upgrade.step_verify": "Doğrula", + "upgrade.upload_desc": "Yükle a .zip upgrade package containing manifest.json, migrations, and file updates.", + "upgrade.upload_hint": "Drop a .zip upgrade package here, or click to browse", + "upgrade.upload_format": "ZIP must contain manifest.json at root level", + "upgrade.manifest_info": "Paket Bilgirmation", + "upgrade.version_target": "Target Sürüm", + "upgrade.release_date": "Sürüm Tarih", + "upgrade.migrations_count": "Database Migrasyonlar", + "upgrade.files_count": "Dosya Changes", + "upgrade.run_preflight": "Run Ön Kontrol Kontrol Ets", + "upgrade.rerun_checks": "Re-run Kontrol Ets", + "upgrade.preflight_desc": "Doğrula system compatibility before proceeding.", + "upgrade.proceed_backup": "Proceed to Yedek", + "upgrade.fix_and_retry": "Fix issues above and re-run checks", + "upgrade.backup_desc": "Full database and file backup before any changes are made.", + "upgrade.create_backup": "Oluştur Yedek", + "upgrade.backup_in_progress": "Creating backup...", + "upgrade.proceed_apply": "Proceed to Uygula", + "upgrade.apply_desc": "Run database migrations and update application files.", + "upgrade.apply_warning": "This will modify database schema and application files.", + "upgrade.apply_ensure": "Ensure no technicians are actively using the system.", + "upgrade.apply_upgrade": "Uygula Güncelleme", + "upgrade.apply_confirm_title": "Uygula Sistem Güncelleme?", + "upgrade.apply_confirm": "This will modify database schema and application files. A full backup has been created. Continue?", + "upgrade.migrations_applied": "Migrasyonlar Applied", + "upgrade.files_updated": "Dosyalar Güncelled", + "upgrade.proceed_verify": "Proceed to Doğrula", + "upgrade.verify_desc": "Doğrula that the upgrade was applied correctly.", + "upgrade.run_verify": "Run Doğrulama", + "upgrade.rerun_verify": "Re-run Doğrulama", + "upgrade.verify_issues": "Doğrulama found issues", + "upgrade.upgrade_complete": "Sistem upgraded to version {{version}}", + "upgrade.all_verified": "Tümü verification checks geçti.", + "upgrade.rollback": "Geri Al", + "upgrade.rollback_title": "Geri Al Sistem?", + "upgrade.rollback_confirm": "This will restore the database and files from the pre-upgrade backup. Tümü changes from this upgrade will be reverted.", + "upgrade.rollback_confirm_btn": "Evet, Geri Al", + "upgrade.history": "Güncelleme Geçmiş", + "upgrade.col_from": "From", + "upgrade.col_to": "To", + "upgrade.col_status": "Durum", + "upgrade.col_date": "Tarih", + "upgrade.col_admin": "Yönetici", + "toast.upgrade_uploaded": "Güncelleme package uploaded", + "toast.preflight_complete": "Tümü pre-flight checks geçti", + "toast.backup_created": "Pre-upgrade backup created", + "toast.upgrade_applied": "Güncelleme applied başarıyla", + "toast.upgrade_verified": "Güncelleme doğrulandı başarıyla", + "toast.rollback_complete": "Sistem rolled back başarıyla", + "toast.upgrade_downloaded": "Güncelleme package downloaded from GitHub", + "empty.upgrade_history": "Hayır upgrade history", + "upgrade.github_updates": "GitHub Güncelles", + "upgrade.github_desc": "Kontrol Et for the latest release on GitHub.", + "upgrade.checking_updates": "Kontrol Eting for updates...", + "upgrade.update_available_title": "Güncelle Mevcut: v{{version}}", + "upgrade.update_found": "Güncelle available: v{{version}}", + "upgrade.up_to_date": "Sistem is up to date", + "upgrade.published": "Published", + "upgrade.view_changelog": "View changelog", + "upgrade.download_install": "İndir & Kur", + "upgrade.downloading": "İndiring...", + "upgrade.no_package": "Hayır upgrade package attached to this release", + "upgrade.view_release": "View on GitHub", + "upgrade.check_now": "Kontrol Et Hayırw", + "upgrade.manual_upload": "Manuel Yükle", + "settings.tab_server": "Sunucu Ayarlar", + "settings.tab_client": "İstemci Yapılandırma", + "settings.client_tasks_title": "Pre-Aktivasyon Görevler", + "settings.client_tasks_desc": "Toggle which tasks the launcher runs before activation.", + "settings.task_wsus_cleanup": "WSUS Cleanup", + "settings.task_wsus_cleanup_desc": "Clean Windows Güncelle registry, restart service, tetikle scan", + "settings.task_security_hardening": "Security Hardening", + "settings.task_security_hardening_desc": "Devre Dışı Bırak SMB guest access, enable SMB signing", + "settings.task_edrive_format": "E: Drive Format", + "settings.task_edrive_format_desc": "Detect BIOS-labeled E: partition and format as FAT32", + "settings.task_ps7_install": "PowerShell 7 Auto-Kur", + "settings.task_ps7_install_desc": "Ara USB for MSI, fall back to winget if bulunamadı", + "settings.task_self_update": "Launcher Self-Güncelle", + "settings.task_self_update_desc": "Kontrol Et server for newer launcher version and auto-replace", + "settings.client_timing_title": "Aktivasyon Timing", + "settings.client_timing_desc": "Configure base gecikmes and retry behavior for activation.", + "settings.activation_delay": "Base Aktivasyon Gecikme (sec)", + "settings.max_retries": "Max Yeniden Deneme Denemes", + "settings.max_check_iterations": "Max Kontrol Et Iterations", + "settings.check_delay_base": "Kontrol Et Gecikme Base (sec)", + "settings.client_network_title": "Ağ Diagnostics", + "settings.client_network_desc": "Configure latency eşiks and multipliers for adaptive timing.", + "settings.net_tier": "Katman", + "settings.net_threshold": "Latency Eşik (ms)", + "settings.net_multiplier": "Multiplier", + "settings.net_max_multiplier": "Max Multiplier", + "settings.net_ping_samples": "Ping Samples", + "settings.net_test_endpoint": "Test Et Endpoint", + "settings.client_retry_title": "Anahtar Yeniden Deneme & Yedek Sunucu", + "settings.client_retry_desc": "Configure how the system handles activation failures and key exhaustion.", + "settings.max_keys_to_try": "Max Anahtarlar to Try", + "settings.max_keys_to_try_desc": "Number / different keys to istek before giving up", + "settings.key_exhaustion_action": "When Tümü Anahtarlar Fail", + "settings.exhaustion_stop": "Durdur with error", + "settings.exhaustion_failover": "Auto-yedek geçiş to alt server", + "settings.exhaustion_retry_loop": "Yeniden Deneme from beginning after cooldown", + "settings.retry_cooldown": "Yeniden Deneme Bekleme Süresi (sec)", + "settings.retry_cooldown_desc": "Wait time before retry_loop restarts", + "settings.server_busy_delay": "Sunucu Busy Gecikme (sec)", + "settings.server_busy_delay_desc": "Wait when Micros/t servers are throttling", + "settings.error_strategies": "Hata-Specific Strategies", + "settings.network_error_retries": "Ağ Hata Extra Retries", + "settings.network_error_retries_desc": "Extra reconnection deneme on network errors", + "settings.network_reconnect_wait": "Reconnect Wait (sec)", + "settings.network_reconnect_wait_desc": "Wait between internet reconnection checks", + "settings.skip_key_on_invalid": "Atla Anahtar on Geçersiz Hata", + "settings.skip_key_on_invalid_desc": "Immediately try next key when current key is engellendi/geçersiz", + "settings.skip_key_on_service": "Atla Anahtar on Service Hata", + "settings.skip_key_on_service_desc": "Try next key instead / retrying on Windows service errors", + "nav.license": "Lisans", + "license.title": "Lisans", + "license.description": "Manage your AnahtarGate license and feature access.", + "license.current_license": "Mevcut Lisans", + "license.registered_to": "Kayıtlı to {{email}}", + "license.not_registered": "Hayır license kayıtlı — using Topluluk tier", + "license.technicians": "Teknisyenler", + "license.keys": "OEM Anahtarlar", + "license.instance": "Instance ID", + "license.expires": "Expires", + "license.features": "Özellik Access", + "license.register": "Register Lisans Anahtar", + "license.register_desc": "Yapıştır your license key to unlock Pro or Kurumsal features.", + "license.key_placeholder": "eyJhbGciOiJIUzI1NiIs...", + "license.activate": "Activate Lisans", + "license.get_pro": "Get Pro Lisans", + "license.deactivate": "Deactivate Lisans", + "license.deactivate_title": "Deactivate Lisans?", + "license.deactivate_desc": "This will revert to Topluluk tier. Pro features will be disabled.", + "license.deactivate_confirm": "Evet, Deactivate", + "license.registered": "Lisans kayıtlı başarıyla", + "license.deactivated": "Lisans deactivated — Topluluk tier", + "license.dev_tools": "Development Tools", + "license.dev_desc": "Generate test licenses for development. Only available on localhost.", + "license.gen_pro": "Generate Pro", + "license.gen_enterprise": "Generate Kurumsal", + "license.dev_generated": "Dev license generated", + "license.purchase_options": "Purchase Seçenekler", + "license.purchase_desc": "Choose the payment method that works for your region.", + "license.intl_payment": "International Ödeme", + "license.intl_payment_desc": "Pay with credit card, PayPal, or other international methods. Instant license delivery.", + "license.ru_payment": "Russia & CIS — Fatura Ödeme", + "license.ru_payment_desc": "Due to international payment restrictions, Russian and CIS companies can purchase via bank transfer (wire transfer). We accept payments in RUB, USD, or EUR to our business account.", + "license.ru_payment_methods": "Accepted: bank wire transfer, USDT/BTC, payment through Turkish or UAE intermediary banks.", + "license.request_invoice": "Request Fatura", + "nav.subscription": "Abonelik", + "sub.title": "Abonelik", + "sub.description": "Manage your AnahtarGate subscription, payment method, and license.", + "sub.tab_plan": "Plan & Usage", + "sub.tab_payment": "Ödeme", + "sub.tab_key": "Lisans Anahtar", + "sub.tab_billing": "Faturalandırma", + "sub.registered_to": "Kayıtlı to {{email}}", + "sub.free_tier": "Ücretsiz tier — limited to 1 technician and 50 keys", + "sub.technicians": "Teknisyenler", + "sub.keys": "Anahtarlar", + "sub.expires": "Expires", + "sub.expiring_soon": "Your subscription expires soon. Renew to keep Pro features.", + "sub.renew_now": "Renew Hayırw", + "sub.current": "Mevcut", + "sub.free": "Ücretsiz", + "sub.month": "mo", + "sub.plan_1_tech": "1 technician", + "sub.plan_50_keys": "50 OEM keys", + "sub.plan_activation": "Windows activation", + "sub.plan_hardware": "Donanım collection", + "sub.plan_dashboard": "Kontrol Paneli", + "sub.plan_no_support": "Topluluk support", + "sub.plan_unlimited_techs": "Sınırsız technicians", + "sub.plan_unlimited_keys": "Sınırsız OEM keys", + "sub.plan_compliance": "QC compliance", + "sub.plan_integrations": "Entegrasyonlar (osTicket, 1C)", + "sub.plan_backups": "Automated backups", + "sub.plan_branding": "White-label branding", + "sub.plan_upgrade": "Sistem upgrade wizard", + "sub.plan_priority": "Öncelik support", + "sub.year": "yr", + "sub.plan_work_orders": "Work orders & production tracking", + "sub.plan_cbr": "Bilgisayar Yapım Raporus (CBR)", + "sub.plan_key_pool": "Anahtar havuz alerts & DPK import", + "sub.plan_task_pipeline": "Özel task pipeline", + "sub.plan_email_support": "E-posta support", + "sub.plan_hardware_binding": "Donanım binding verification", + "sub.plan_everything_pro": "Everything in Pro", + "sub.plan_multi_site": "Multi-site deployment", + "sub.plan_api": "API access", + "sub.plan_sla": "SLA & dedicated support", + "sub.plan_custom": "Özel integrations", + "sub.upgrade_to_pro": "Güncelleme to Pro", + "sub.upgrade_to_enterprise": "Güncelleme to Kurumsal", + "sub.feature_access": "Özellik Access", + "sub.intl_payment": "International Ödeme", + "sub.intl_payment_desc": "Pay with credit card, PayPal, or other international methods. Instant license delivery.", + "sub.pay_github": "Pay via GitHub Sponsors", + "sub.intl_note": "After payment, you will receive a license key via email. Yapıştır it in the Lisans Anahtar tab.", + "sub.ru_payment": "Russia & CIS — Fatura Ödeme", + "sub.ru_payment_desc": "Due to international payment restrictions, Russian and CIS companies can purchase via bank transfer. We accept RUB, USD, or EUR.", + "sub.bank_transfer": "Bank Transfer", + "sub.crypto": "Cryptocurrency", + "sub.intermediary": "Intermediary", + "sub.request_invoice": "Request Fatura", + "sub.ru_note": "After payment confirmation, we will send your license key within 1 business day.", + "sub.active_license": "Aktif Lisans", + "sub.tier": "Katman", + "sub.licensed_to": "Lisansd To", + "sub.instance_id": "Instance ID", + "sub.deactivate": "Deactivate Lisans", + "sub.deactivate_title": "Deactivate Lisans?", + "sub.deactivate_desc": "This will revert to Topluluk tier. Pro features will be disabled.", + "sub.deactivate_confirm": "Evet, Deactivate", + "sub.register_key": "Register Lisans Anahtar", + "sub.register_desc": "Yapıştır the JWT license key you received after payment.", + "sub.activate_key": "Activate Lisans", + "sub.dev_tools": "Development Tools", + "sub.dev_desc": "Generate test licenses for development. Only available on localhost.", + "sub.gen_pro": "Generate Pro", + "sub.gen_enterprise": "Generate Kurumsal", + "sub.billing_history": "Faturalandırma Geçmiş", + "sub.billing_desc": "Your payment and license history.", + "sub.activated_on": "Activated", + "sub.status_active": "Aktif", + "sub.until": "until", + "sub.billing_note": "For detailed payment history, check your GitHub Sponsors dashboard or contact sales@keygate.dev", + "sub.no_billing": "Hayır billing history. You are on the free Topluluk tier.", + "sub.upgrade_now": "Güncelleme Hayırw", + "sub.instance_info": "Instance Bilgirmation", + "sub.max_techs": "Max Teknisyenler", + "sub.max_keys": "Max Anahtarlar", + "sub.lemon_title": "LemonSqueezy (Recommended)", + "sub.lemon_desc": "Credit card, PayPal, Apple Pay, Google Pay. Works worldwide. Instant license delivery.", + "sub.pay_lemon": "Buy Lisans", + "sub.github_title": "GitHub Sponsors", + "sub.github_desc": "Subscribe through GitHub. Great if you already have a GitHub account.", + "settings.languages_title": "Diller", + "settings.languages_desc": "Etkinleştir or disable languages available in the admin panel. English is always enabled as fallback.", + "settings.languages_saved": "Dil settings saved", + "settings.default": "Varsayılan", + "settings.languages_enabled": "languages enabled", + "nav.task_pipeline": "Görev Hattı", + "pipeline.title": "Görev Hattı", + "pipeline.for_product_line": "Configuring pipeline for", + "pipeline.active_tasks": "Aktif Görev Hattı", + "pipeline.drag_hint": "Reorder tasks using arrows. Görevler run top-to-bottom during activation.", + "pipeline.no_tasks": "Hayır tasks yapılandırıldı. Ekle tasks from the library below.", + "pipeline.add_task": "Ekle Görev", + "pipeline.add_hint": "Click a task to add it to the pipeline", + "pipeline.save_pipeline": "Kaydet İş Hattı", + "pipeline.template_library": "Görev Şablon Library", + "pipeline.library_desc": "Global task templates available for all product lines", + "pipeline.new_template": "Yeni Görev Şablon", + "pipeline.edit_template": "Düzenle Görev Şablon", + "pipeline.task_key": "Görev Anahtar", + "pipeline.task_name": "Ekran Ad", + "pipeline.code": "PowerShell Code", + "pipeline.timeout": "Zaman Aşımı (sec)", + "pipeline.on_failure": "On Failure", + "pipeline.icon": "Simge", + "pipeline.failure_stop": "Durdur İş Hattı", + "pipeline.failure_skip": "Atla & Continue", + "pipeline.failure_warn": "Warn & Continue", + "pipeline.built_in": "Built-in", + "pipeline.custom": "Özel", + "pipeline.overridden": "Overridden", + "pipeline.customize": "Özelize", + "pipeline.delete_template_title": "Sil Görev Şablon?", + "pipeline.delete_template_desc": "This will remove the template and unassign it from all product lines.", + "toast.task_template_saved": "Görev template saved", + "toast.task_template_deleted": "Görev template deleted", + "toast.pipeline_saved": "Görev pipeline saved", + "nav.work_orders": "İş Emirleri", + "nav.key_pool": "Anahtar Havuzu", + "work_orders.title": "İş Emirleri", + "work_orders.new": "Yeni İş Emri", + "work_orders.edit": "Düzenle İş Emri", + "work_orders.search": "Ara orders...", + "work_orders.col_number": "WO #", + "work_orders.col_customer": "Müşteri", + "work_orders.col_qty": "Qty", + "work_orders.col_status": "Durum", + "work_orders.col_priority": "Öncelik", + "work_orders.col_due": "Due", + "work_orders.col_created": "Oluşturd", + "work_orders.customer_name": "Müşteri Ad", + "work_orders.customer_email": "Müşteri E-posta", + "work_orders.customer_ref": "Müşteri PO #", + "work_orders.batch": "Toplu İşlem Number", + "work_orders.quantity": "Quantity", + "work_orders.due_date": "Due Tarih", + "work_orders.priority": "Öncelik", + "work_orders.status": "Durum", + "work_orders.shipping_method": "Kargo Method", + "work_orders.shipping_tracking": "Tracking Number", + "work_orders.internal_notes": "Internal Hayırtlar", + "common.all_statuses": "Tümü Durumes", + "empty.work_orders": "Hayır work orders yet", + "toast.work_order_saved": "Work order {{num}} saved", + "toast.work_order_deleted": "Work order deleted", + "toast.shipping_updated": "Kargo status updated", + "pool.title": "Anahtar Havuzu", + "pool.import_keys": "İçe Aktar Anahtarlar", + "pool.import_desc": "Yükle a CSV, TXT, or XML file with product keys.", + "pool.import_history": "İçe Aktar Geçmiş", + "pool.batch_name": "Toplu İşlem Ad", + "pool.product_edition": "Ürün Düzenleion", + "pool.key_file": "Anahtar Dosya", + "pool.import": "İçe Aktar", + "pool.total": "Toplam", + "pool.unused": "Unkullanıldı", + "pool.allocated": "Tahsis Edildi", + "pool.bad": "Bad", + "pool.thresholds": "Uyarılar", + "pool.low_threshold": "Düşük Uyarı", + "pool.critical_threshold": "Kritik Uyarı", + "pool.col_batch": "Toplu İşlem", + "pool.col_edition": "Düzenleion", + "pool.col_imported": "İçe Aktared", + "pool.col_dupes": "Dupes", + "pool.col_status": "Durum", + "pool.col_date": "Tarih", + "empty.key_pool": "Hayır keys in the system yet. İçe Aktar keys to get started.", + "toast.pool_config_saved": "Anahtar havuz config saved", + "toast.dpk_imported": "İçe Aktared {{count}} keys", + "toast.binding_released": "Donanım binding released", + "cbr.title": "Bilgisayar Yapım Raporus", + "cbr.search": "Ara by order, serial, fingerprint...", + "cbr.report_detail": "Rapor", + "cbr.order": "Sipariş", + "cbr.batch": "Toplu İşlem", + "cbr.activation": "Aktivasyon", + "cbr.shipping": "Kargo", + "cbr.motherboard": "Anakart", + "cbr.serial": "MB Seri", + "cbr.cpu": "CPU", + "cbr.ram": "RAM", + "cbr.gpu": "GPU", + "cbr.os": "OS", + "cbr.key": "Ürün Anahtar", + "cbr.fingerprint": "HW Parmak İzi", + "cbr.technician": "Teknisyen", + "cbr.product_line": "Ürün Line", + "cbr.qc": "QC Durum", + "cbr.date": "Tarih", + "cbr.update_shipping": "Güncelle Kargo", + "cbr.auto_generated": "Raporlar are generated automatically during activation", + "cbr.col_uuid": "Rapor ID", + "cbr.col_order": "Sipariş", + "cbr.col_mb": "Anakart", + "cbr.col_activation": "Aktivasyon", + "cbr.col_shipping": "Kargo", + "cbr.col_technician": "Tech", + "cbr.col_date": "Tarih", + "empty.cbr": "Hayır build reports yet", + "bindings.title": "Donanım Bağlamaları", + "bindings.subtitle": "Track which product keys are bound to which hardware", + "bindings.conflicts": "{{count}} Binding Conflicts Detected", + "bindings.conflicts_desc": "The following keys are bound to different hardware than where they were originally activated.", + "bindings.search": "Ara by fingerprint, serial, MAC...", + "bindings.auto_created": "Bindings are created automatically when keys are activated", + "bindings.col_fingerprint": "Cihaz Parmak İzi", + "bindings.col_mb_serial": "MB Seri", + "bindings.col_uuid": "Sistem UUID", + "bindings.col_mac": "MAC", + "bindings.col_key": "Ürün Anahtar", + "bindings.col_status": "Durum", + "bindings.col_bound_at": "Bound", + "bindings.release": "Sürüm", + "bindings.release_title": "Sürüm Donanım Bağlama?", + "bindings.release_desc": "This will unbind the product key from this hardware. The key can then be kullanıldı on different hardware.", + "bindings.release_confirm": "Evet, Sürüm", + "empty.bindings": "Hayır hardware bindings yet", + "dpk.title": "DPK Toplu İşlem İçe Aktar", + "dpk.subtitle": "İçe Aktar OEM product keys from Micros/t DPK delivery files or CSV", + "dpk.import_new": "İçe Aktar Yeni Toplu İşlem", + "dpk.batch_name": "Toplu İşlem Ad", + "dpk.batch_name_placeholder": "e.g. Micros/t-2026-Q1", + "dpk.product_edition": "Ürün Düzenleion", + "dpk.edition_placeholder": "e.g. Windows 11 Pro OEM", + "dpk.file": "Anahtar Dosya", + "dpk.format_info": "Supported formats", + "dpk.format_csv": "One key per line, or columns: key,edition,type", + "dpk.format_txt": "One key per line (XXXXX-XXXXX-XXXXX-XXXXX-XXXXX)", + "dpk.format_xml": "Micros/t DPK delivery XML format", + "dpk.import_btn": "İçe Aktar Anahtarlar", + "dpk.imported": "imported", + "dpk.duplicates": "duplicates", + "dpk.failed": "başarısız oldu", + "dpk.history": "İçe Aktar Geçmiş", + "dpk.col_name": "Toplu İşlem Ad", + "dpk.col_edition": "Düzenleion", + "dpk.col_total": "Toplam", + "dpk.col_imported": "İçe Aktared", + "dpk.col_dupes": "Dupes", + "dpk.col_status": "Durum", + "dpk.col_source": "Source", + "dpk.col_by": "By", + "dpk.col_date": "Tarih", + "empty.dpk": "Hayır DPK toplu işlemes imported yet" +} diff --git a/FINAL_PRODUCTION_SYSTEM/frontend/src/test/api-contracts.test.ts b/FINAL_PRODUCTION_SYSTEM/frontend/src/test/api-contracts.test.ts index 73a0660..77c2e0e 100644 --- a/FINAL_PRODUCTION_SYSTEM/frontend/src/test/api-contracts.test.ts +++ b/FINAL_PRODUCTION_SYSTEM/frontend/src/test/api-contracts.test.ts @@ -135,6 +135,8 @@ const BACKEND_ACTIONS: Record qc_list_compliance_results: { method: 'GET', csrf: false }, qc_list_compliance_grouped: { method: 'GET', csrf: false }, qc_get_stats: { method: 'GET', csrf: false }, + qc_recheck_count: { method: 'GET', csrf: false }, + qc_recheck_historical: { method: 'POST', csrf: true }, // product lines & variants (partition QC) get_product_lines: { method: 'GET', csrf: false },