From e3489d506e2169375b6d00adbb25db69e6414bd3 Mon Sep 17 00:00:00 2001 From: Ahmed Darrazi Date: Mon, 15 Dec 2025 22:31:09 +0100 Subject: [PATCH] chore(i18n): add German language files generated (heuristic translations) and generator script --- lang/de/auth.php | 32 ++++ lang/de/button.php | 206 +++++++++++++++++++++ lang/de/common.php | 107 +++++++++++ lang/de/dashboard.php | 307 +++++++++++++++++++++++++++++++ lang/de/frontend.php | 215 ++++++++++++++++++++++ lang/de/input.php | 346 +++++++++++++++++++++++++++++++++++ lang/de/pagination.php | 6 + lang/de/passwords.php | 9 + lang/de/settings.php | 176 ++++++++++++++++++ lang/de/table.php | 53 ++++++ lang/de/validation.php | 175 ++++++++++++++++++ scripts/generate_de_lang.php | 180 ++++++++++++++++++ 12 files changed, 1812 insertions(+) create mode 100644 lang/de/auth.php create mode 100644 lang/de/button.php create mode 100644 lang/de/common.php create mode 100644 lang/de/dashboard.php create mode 100644 lang/de/frontend.php create mode 100644 lang/de/input.php create mode 100644 lang/de/pagination.php create mode 100644 lang/de/passwords.php create mode 100644 lang/de/settings.php create mode 100644 lang/de/table.php create mode 100644 lang/de/validation.php create mode 100644 scripts/generate_de_lang.php diff --git a/lang/de/auth.php b/lang/de/auth.php new file mode 100644 index 00000000..1854d18c --- /dev/null +++ b/lang/de/auth.php @@ -0,0 +1,32 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + 'password_updated' => 'Your password has been Aktualisierungd.', + 'verification_link_sent' => 'A fresh verification link has been sent to your email address.', + 'password_reset_sent' => 'We have emailed your password reset link.', + 'google_auth_settings' => 'Google Auth Einstellungen', + 'google_auth_description' => 'Google Auth Description', + 'login_title' => 'Log in to your account', + 'login_description' => 'Enter your email and password below to log in', + 'remember_me' => 'Remember me', + 'forgot_password' => 'Forgot Password', + 'continue_with' => 'Or continue with', + 'no_account' => 'Don\'t have an account?', + 'google_auth' => 'Google Auth', + 'register_title' => 'Create an account', + 'register_description' => 'Enter your details below to create your account', + 'have_account' => 'Already have an account?', + 'forgot_description' => 'Enter your email to receive a password reset link', + 'return_to_login' => 'Or, return to', + 'reset_title' => 'Reset password', + 'reset_description' => 'Please enter your new password below', + 'confirm_title' => 'Confirm your password', + 'confirm_description' => 'This is a secure area of the Anwendung. Please confirm your password before continuing.', + 'change_email' => 'Change Email', + 'verify_title' => 'Verify email', + 'verify_description' => 'Please verify your email address by clicking on the link we just emailed to you.', + 'verification_sent' => 'A new verification link has been sent to the email address you provided during registration.', +); diff --git a/lang/de/button.php b/lang/de/button.php new file mode 100644 index 00000000..b4f8f2da --- /dev/null +++ b/lang/de/button.php @@ -0,0 +1,206 @@ + 'Add', + 'save' => 'Speichern', + 'cancel' => 'Abbrechen', + 'close' => 'Close', + 'submit' => 'Submit', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'create' => 'Create', + 'update' => 'Aktualisierung', + 'remove' => 'Remove', + 'previous' => 'Previous', + 'apply' => 'Apply', + 'view_all' => 'View All', + 'reply' => 'Reply', + 'reapply' => 'ReApply', + 'light' => 'Light', + 'dark' => 'Dark', + 'collaborative' => 'Collaborative', + 'administrative' => 'Administrative', + 'type' => 'Type', + 'form' => 'Form', + 'true' => 'True', + 'false' => 'False', + 'free' => 'Free', + 'list' => 'List', + 'search' => 'Search', + 'filter' => 'Filter', + 'sort' => 'Sort', + 'refresh' => 'Refresh', + 'upload' => 'Hochladen', + 'download' => 'Download', + 'send' => 'Send', + 'add_item' => 'Add Item', + 'reorder' => 'Reorder', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'deactivate' => 'Deactivate', + 'lessons' => 'Lessons', + 'live_classes' => 'Live Classes', + 'join_class' => 'Join Class', + 'edit_live_class' => 'Edit Live Class', + 'delete_class' => 'Delete Class', + 'class_note' => 'Class Note', + 'add_language' => 'Sprache hinzufügen', + 'save_changes' => 'Speichern Changes', + 'schedule_class' => 'Schedule Class', + 'add_newsletter' => 'Add Newsletter', + 'update_newsletter' => 'Aktualisierung Newsletter', + 'delete_backup' => 'Delete Sicherung', + 'refresh_server' => 'Refresh Server', + 'backup_now' => 'Sicherung Now', + 'update_application' => 'Anwendung aktualisieren', + 'play_course' => 'Play Course', + 'course_player' => 'Course Player', + 'enroll_now' => 'Enroll Now', + 'buy_now' => 'Buy Now', + 'add_to_cart' => 'Add to cart', + 'add_to_wishlist' => 'Add to Wishlist', + 'remove_from_wishlist' => 'Remove from Wishlist', + 'learn_more' => 'Learn More', + 'continue' => 'Continue', + 'course_details' => 'Course Details', + 'continue_to_payment' => 'Continue to payment', + 'post_comment' => 'Post Comment', + 'posting' => 'Posting...', + 'like' => 'like', + 'dislike' => 'dislike', + 'submit_review' => 'Submit Review', + 'next_step' => 'Next Step', + 'previous_step' => 'Previous Step', + 'generate_certificate' => 'Generate Certificate', + 'generating_certificate' => 'Generating Certificate...', + 'download_as' => 'Download as', + 'mark_all_as_read' => 'Mark all as read', + 'view_all_notifications' => 'View all notifications', + 'subscribe' => 'Subscribe', + 'become_an_instructor' => 'Become an Instructor', + 'delete_account' => 'Delete account', + 'are_you_sure_to_delete' => 'Bist du sicher to delete?', + 'add_section' => 'Add Section', + 'sort_section' => 'Sort Section', + 'add_quiz' => 'Add Quiz', + 'add_lesson' => 'Add Lesson', + 'sort_lessons' => 'Sort Lessons', + 'sort_categories' => 'Sort Categories', + 'edit_section' => 'Edit Section', + 'delete_section' => 'Delete Section', + 'quiz_questions' => 'Quiz Questions', + 'add_question' => 'Add Question', + 'save_lesson' => 'Speichern Lesson', + 'pick_a_date' => 'Pick a Datum', + 'toggle_theme' => 'Toggle theme', + 'course_preview' => 'Course Preview', + 'submit_for_approval' => 'Submit for Approval', + 'approval_status' => 'Approval Status', + 'login' => 'Login', + 'logout' => 'Logout', + 'log_out' => 'Log out', + 'log_in' => 'Log in', + 'sign_up' => 'Sign up', + 'create_account' => 'Create account', + 'continue_with_google' => 'Continue With Google', + 'forgot_password' => 'Forgot password?', + 'email_password_reset_link' => 'Email password reset link', + 'resend_verification_email' => 'Resend verification email', + 'confirm_password' => 'Confirm password', + 'reset_password' => 'Reset password', + 'change_email' => 'Change Email', + 'change_password' => 'Change Password', + 'forget_password' => 'Forget Password', + 'get_email_change_link' => 'Get Email Change Link', + 'get_password_reset_link' => 'Get Password Reset Link', + 'upload_file' => 'Hochladen Datumi', + 'start_upload' => 'Start Hochladen', + 'cancel_upload' => 'Abbrechen Hochladen', + 'select_different_file' => 'Select Different Datumi', + 'initializing_upload' => 'Initializing Hochladen...', + 'uploading_file_chunks' => 'Hochladening Datumi chunks...', + 'finalizing_upload' => 'Finalizing Hochladen...', + 'completed_upload' => 'Completed Hochladen', + 'upload_completed_successfully' => 'Hochladen completed successfully', + 'uploading' => 'Wird hochgeladen...', + 'saving' => 'Saving...', + 'first' => 'First', + 'last' => 'Last', + 'prev' => 'Prev', + 'next' => 'Next', + 'back' => 'Back', + 'show_full' => 'Show Full', + 'show_less' => 'Show Less', + 'dashboard' => 'Dashboard', + 'main_menu' => 'Main Menu', + 'categories' => 'Categories', + 'courses' => 'Courses', + 'enrollments' => 'Enrollments', + 'instructors' => 'Instructors', + 'payout_report' => 'Payout Report', + 'payouts' => 'Payouts', + 'job_circulars' => 'Job Circulars', + 'blogs' => 'Blogs', + 'newsletters' => 'Newsletters', + 'all_users' => 'All Users', + 'settings' => 'Einstellungen', + 'my_courses' => 'My Courses', + 'wishlist' => 'Wishlist', + 'profile' => 'ProDatumi', + 'live_class' => 'Live Class', + 'payment_methods' => 'Payment Methods', + 'profile_update' => 'ProDatumi Aktualisierung', + 'manage_courses' => 'Manage Courses', + 'create_course' => 'Create Course', + 'manage_enrollments' => 'Manage Enrollments', + 'add_new_enrollment' => 'Add New Enrollment', + 'add_new_instructor' => 'Add New Instructor', + 'manage_instructors' => 'Manage Instructors', + 'create_instructor' => 'Create Instructor', + 'applications' => 'Anwendungs', + 'payout_request' => 'Payout Request', + 'payout_history' => 'Payout Verlauf', + 'withdraw' => 'Withdraw', + 'all_jobs' => 'All Jobs', + 'create_job' => 'Create Job', + 'edit_job' => 'Edit Job', + 'create_blog' => 'Create Blog', + 'manage_blog' => 'Manage Blog', + 'account' => 'Account', + 'system' => 'System', + 'pages' => 'Pages', + 'storage' => 'Storage', + 'smtp' => 'SMTP', + 'auth0' => 'Auth0', + 'maintenance' => 'Maintenance', + 'become_instructor' => 'Become Instructor', + 'overview' => 'Overview', + 'curriculum' => 'Curriculum', + 'details' => 'Details', + 'instructor' => 'Instructor', + 'reviews' => 'Reviews', + 'summery' => 'Summery', + 'certificate' => 'Certificate', + 'forum' => 'Forum', + 'review' => 'Review', + 'basic' => 'Basic', + 'pricing' => 'Pricing', + 'info' => 'Info', + 'media' => 'Media', + 'seo' => 'SEO', + 'quiz' => 'Quiz', + 'lesson' => 'Lesson', + 'social' => 'Social', + 'payment' => 'Payment', + 'copyright' => 'Kopierenright', + 'social_media' => 'Social Media', + 'url_items' => 'URL Items', + 'dropdowns' => 'Dropdowns', + 'actions' => 'Aktionen', + 'website' => 'Website', + 'navbar' => 'Navbar', + 'footer' => 'Footer', + 'style' => 'Style', + 'edit_navbar' => 'Edit Navbar', + 'edit_footer' => 'Edit Footer', +); diff --git a/lang/de/common.php b/lang/de/common.php new file mode 100644 index 00000000..e5175307 --- /dev/null +++ b/lang/de/common.php @@ -0,0 +1,107 @@ + 'Title', + 'description' => 'Description', + 'name' => 'Name', + 'email' => 'Email', + 'password' => 'Password', + 'type' => 'Type', + 'category' => 'Category', + 'status' => 'Status', + 'location' => 'Location', + 'image' => 'Image', + 'url' => 'URL', + 'categories' => 'Categories', + 'students' => 'Students', + 'courses' => 'Courses', + 'comments' => 'Comments', + 'comment' => 'Comment', + 'price' => 'Price', + 'rating' => 'Rating', + 'instructor' => 'Instructor', + 'role' => 'Role', + 'action' => 'Action', + 'actions' => 'Aktionen', + 'level' => 'Level', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'published' => 'Published', + 'draft' => 'Draft', + 'expired' => 'Expired', + 'pending' => 'Pending', + 'enabled' => 'Enabled', + 'disabled' => 'Disabled', + 'language' => 'Sprache', + 'default' => 'default', + 'closed' => 'Closed', + 'paused' => 'Paused', + 'on' => 'On', + 'off' => 'Off', + 'free' => 'Free', + 'completed' => 'Completed', + 'search' => 'Search', + 'filter' => 'Filter', + 'create' => 'Create', + 'update' => 'Aktualisierung', + 'edit' => 'Edit', + 'save' => 'Speichern', + 'delete' => 'Delete', + 'cancel' => 'Abbrechen', + 'submit' => 'Submit', + 'apply' => 'Apply', + 'view' => 'View', + 'preview' => 'Preview', + 'download' => 'Download', + 'close' => 'Close', + 'confirm' => 'Confirm', + 'yes' => 'Yes', + 'no' => 'No', + 'ok' => 'OK', + 'back' => 'Back', + 'continue' => 'Continue', + 'skip' => 'Skip', + 'retry' => 'Retry', + 'refresh' => 'Refresh', + 'reload' => 'Reload', + 'change_email' => 'Change Email', + 'change_password' => 'Change Password', + 'forget_password' => 'Forget Password', + 'loading' => 'Loading...', + 'processing' => 'Processing...', + 'saving' => 'Saving...', + 'updating' => 'Updating...', + 'deleting' => 'Deleting...', + 'uploading' => 'Wird hochgeladen...', + 'searching' => 'Searching...', + 'no_results_found' => 'No results found', + 'today' => 'Today', + 'yesterday' => 'Yesterday', + 'ago' => 'ago', + 'general_settings' => 'General Einstellungen', + 'email_settings' => 'Email Einstellungen', + 'payment_settings' => 'Payment Einstellungen', + 'settings' => 'Einstellungen', + 'file_too_large' => 'Datumi is too large. Please select a smaller Datumi.', + 'invalid_file' => 'Invalid Datumi format. Please Hochladen a valid .zip Datumi.', + 'required_field' => 'This field is required.', + 'home' => 'Home', + 'about' => 'About', + 'contact' => 'Contact', + 'help' => 'Help', + 'support' => 'Support', + 'dashboard' => 'Dashboard', + 'page' => 'Page', + 'of' => 'of', + 'first' => '< 'Previous', + 'next' => 'Next', + 'last' => 'Last>>', + 'go_to_page' => 'Go to page', + 'video' => 'Video', + 'audio' => 'Audio', + 'document' => 'Document', + 'file' => 'Datei', + 'reviews' => 'Reviews', + 'select_the_approval_status' => 'Select the Approval Status', +); diff --git a/lang/de/dashboard.php b/lang/de/dashboard.php new file mode 100644 index 00000000..c2822750 --- /dev/null +++ b/lang/de/dashboard.php @@ -0,0 +1,307 @@ + 'User Management', + 'course_management' => 'Course Management', + 'content_management' => 'Content Management', + 'financial_management' => 'Financial Management', + 'refund_management' => 'Refund Management', + 'faq_management' => 'FAQ Management', + 'security_settings' => 'Security Einstellungen', + 'backup_settings' => 'Sicherung Einstellungen', + 'tax_settings' => 'Tax Einstellungen', + 'webhook_settings' => 'Webhook Einstellungen', + 'analytics' => 'Analytics', + 'reports' => 'Reports', + 'visitor_analytics' => 'Visitor Analytics', + 'course_analytics' => 'Course Analytics', + 'enrollment_statistics' => 'Enrollment Statistics', + 'revenue_statistics' => 'Revenue Statistics', + 'course_statistics' => 'Course Statistics', + 'sales_report' => 'Sales Report', + 'user_activity_report' => 'User Activity Report', + 'course_performance_report' => 'Course Performance Report', + 'financial_report' => 'Financial Report', + 'export_report' => 'Export Report', + 'basic_information' => 'Basic Information', + 'blog_information' => 'Blog Information', + 'user_information' => 'User Information', + 'media_details' => 'Media Details', + 'compensation_details' => 'Compensation & Details', + 'total_blogs' => 'Total Blogs', + 'total_categories' => 'Total Categories', + 'total_jobs' => 'Total Jobs', + 'total_users' => 'Total Users', + 'total_earnings' => 'Total Earnings', + 'total_withdrawals' => 'Total Withdrawals', + 'select_user_type' => 'Select user type', + 'select_withdrawal_method' => 'Select withdrawal method', + 'select_recipients' => 'Select Recipients', + 'select_media' => 'Select Media', + 'no_results' => 'No results.', + 'no_results_found' => 'No results found', + 'are_you_absolutely_sure' => 'Are you absolutely sure?', + 'update_the_category' => 'Aktualisierung The Category', + 'image_upload_requirements' => 'Image Hochladen is required', + 'admin' => 'Admin', + 'archived' => 'Archived', + 'user_list' => 'User List', + 'instructor_list' => 'Instructor List', + 'course_list' => 'Course List', + 'newsletter_list' => 'Newsletter List', + 'payout_list' => 'Payout List', + 'lessons' => 'Lessons', + 'quizzes' => 'Quizzes', + 'total_content_items' => 'Total Content Items', + 'enrollment' => 'Enrollment', + 'course_status' => 'Course Status', + 'update_section' => 'Aktualisierung Section', + 'update_lesson' => 'Aktualisierung Lesson', + 'update_quiz' => 'Aktualisierung Quiz', + 'sort_items' => 'Sort Items', + 'job_circulars' => 'Job Circulars', + 'no_job_circulars_found' => 'No job circulars found', + 'provide_essential_job_details' => 'Provide the essential details about the job position', + 'specify_job_requirements' => 'Specify the requirements and qualifications for this position', + 'provide_salary_details' => 'Provide salary range and other compensation details', + 'salary_information' => 'Salary Information', + 'salary_information_title' => 'Set the compensation range for this position', + 'salary_range' => 'Salary Range', + 'salary_currency' => 'Salary Currency', + 'salary_negotiable' => 'Salary Negotiable', + 'application_deadline' => 'Anwendung Deadline', + 'contact_email' => 'Contact Email', + 'skills_required' => 'Skills Required', + 'positions_available' => 'Positions Available', + 'job_type' => 'Job Type', + 'work_type' => 'Work Type', + 'experience_level' => 'Experience Level', + 'job_details' => 'Job Details', + 'job_details_title' => 'Specify the job type, location, and experience requirements', + 'all' => 'All', + 'student' => 'Student', + 'send_to' => 'Send To', + 'send_newsletter' => 'Send newsletter', + 'no_newsletters_found' => 'No newsletters found', + 'available' => 'Available', + 'total_payout' => 'Total Payout', + 'requested' => 'Requested', + 'withdraw_list' => 'Withdraw List', + 'payout_history' => 'Payout Verlauf', + 'payout_request' => 'Payout Request', + 'feedback' => 'Feedback', + 'course_instructor' => 'Course Instructor', + 'approval_status' => 'Approval Status', + 'blog' => 'Blog', + 'add_new_blog' => 'Add new blog', + 'provide_essential_details' => 'Provide the essential details about your blog post', + 'blog_categories' => 'Blog Categories', + 'blog_category' => 'Blog Category', + 'protected_category' => 'Protected Category', + 'default_category_description' => 'When a specific category is deleted, all courses in that category will be moved to this default category. So default category cannot be edited or removed.', + 'protected_category_desc' => 'When a specific category is deleted, all courses in that category will be moved to this default category. So default category cannot be edited or removed.', + 'icon_picker' => 'Icon Picker', + 'sort_categories' => 'Sort Categories', + 'add_category' => 'Add Category', + 'create_category' => 'Create Category', + 'add_new_category' => 'Add New Category', + 'enter_blog_title' => 'Enter blog title', + 'blog_information_desc' => 'Provide the essential details about your blog post', + 'enter_category_name' => 'Enter category Name', + 'pick_category_icon' => 'Pick your category icon', + 'category_status' => 'Category Status', + 'all_users' => 'All Users', + 'only_students' => 'Only Students', + 'only_instructors' => 'Only Instructors', + 'pending_withdrawals' => 'Pending Withdrawals', + 'available_balance' => 'Available Balance', + 'withdraw_amount' => 'Withdraw Amount', + 'minimum_withdraw' => 'Minimum Withdraw', + 'maximum_withdraw' => 'Maximum Withdraw', + 'withdrawal_method' => 'Withdrawal Method', + 'withdrawal_note' => 'Withdrawal Note', + 'withdrawal_note_placeholder' => 'Add a note for this withdrawal (optional)', + 'user_role' => 'User Role', + 'provide_essential_user_details' => 'Provide the essential details about the user', + 'media_library' => 'Media Library', + 'file_manager' => 'Datumi Manager', + 'upload_media' => 'Hochladen Media', + 'file_name' => 'Datumi Name', + 'file_size' => 'Datumi Größe', + 'file_type' => 'Datumi Type', + 'upload_date' => 'Hochladen Datum', + 'dimensions' => 'Dimensions', + 'notifications' => 'Notifications', + 'messages' => 'Messages', + 'announcements' => 'Announcements', + 'meta_title' => 'Meta Title', + 'enter_meta_title' => 'Enter Meta Title', + 'meta_keywords' => 'Meta Keywords', + 'enter_meta_keywords' => 'Enter Meta Keywords', + 'meta_description' => 'Meta Description', + 'enter_meta_description' => 'Enter Meta Description', + 'og_title' => 'OG Title', + 'enter_og_title' => 'Enter OG Title', + 'og_description' => 'OG Description', + 'enter_og_description' => 'Enter OG Description', + 'lesson_type' => 'Lesson Type', + 'video_file' => 'Video Datumi', + 'video_url' => 'Video URL', + 'document_file' => 'Document Datumi', + 'image_file' => 'Image Datumi', + 'text_content' => 'Text Content', + 'embed_source' => 'Embed Source', + 'lesson_title' => 'Lesson Title', + 'lesson_status' => 'Lesson Status', + 'is_free' => 'Is Free', + 'lesson_description' => 'Lesson Description', + 'lesson_provider' => 'Lesson Provider', + 'lesson_source' => 'Lesson Source', + 'duration' => 'Duration', + 'lesson_summary' => 'Lesson Summary', + 'quiz_title' => 'Quiz Title', + 'enter_quiz_title' => 'Enter quiz title', + 'total_mark' => 'Total Mark', + 'pass_mark' => 'Pass Mark', + 'retake' => 'Retake', + 'quiz_summary' => 'Quiz Summary', + 'hours' => 'Hours', + 'minutes' => 'Minutes', + 'seconds' => 'Seconds', + 'question_type' => 'Question Type', + 'single_choice' => 'Single Choice', + 'multiple_choice' => 'Multiple Choice', + 'true_false' => 'True of False', + 'select_question_type' => 'Select question type', + 'question_title' => 'Question Title', + 'question_options' => 'Question Options', + 'correct_answer' => 'Correct Answer', + 'add_question' => 'Add Question', + 'edit_question' => 'Edit Question', + 'sections' => 'Sections', + 'section_title' => 'Section Title', + 'section_description' => 'Section Description', + 'lesson_content' => 'Lesson Content', + 'quiz_questions' => 'Quiz Questions', + 'assignments' => 'Assignments', + 'user_roles' => 'User Roles', + 'permissions' => 'Permissions', + 'user_activity' => 'User Activity', + 'login_history' => 'Login Verlauf', + 'user_preferences' => 'User Preferences', + 'update_user' => 'Aktualisierung User', + 'select_approval_status' => 'Select the Approval Status', + 'course_progress' => 'Course Progress', + 'completion_rate' => 'Completion Rate', + 'time_spent' => 'Time Spent', + 'quiz_scores' => 'Quiz Scores', + 'certificates_issued' => 'Certificates Issued', + 'admin_revenue' => 'Admin Revenue', + 'instructor_revenue' => 'Instructor Revenue', + 'revenue_tracking' => 'Revenue Tracking', + 'commission_rates' => 'Commission Rates', + 'payment_history' => 'Payment Verlauf', + 'instructor_revenue_this_year' => 'Instructor Revenue This Year', + 'admin_revenue_this_year' => 'Admin Revenue This Year', + 'content_review' => 'Content Review', + 'flagged_content' => 'Flagged Content', + 'moderation_queue' => 'Moderation Queue', + 'content_guidelines' => 'Content Guidelines', + 'help_desk' => 'Help Desk', + 'support_tickets' => 'Support Tickets', + 'documentation' => 'Documentation', + 'marketing_campaigns' => 'Marketing Campaigns', + 'promotional_codes' => 'Promotional Codes', + 'affiliate_program' => 'Affiliate Program', + 'email_marketing' => 'Email Marketing', + 'third_party_integrations' => 'Third Party Integrations', + 'api_management' => 'API Management', + 'external_services' => 'External Services', + 'published' => 'Published', + 'draft' => 'Draft', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'category_required' => 'Category *', + 'select_course_instructor' => 'Select the course instructor', + 'status_required' => 'Status *', + 'price' => 'Price', + 'enter_course_title' => 'Enter Course Title', + 'enter_short_description' => 'Enter Short Description', + 'type_content_here' => 'Type your content here...', + 'type_caption_optional' => 'Type caption for image (optional)', + 'course_level' => 'Course Level', + 'course_language' => 'Course Sprache', + 'pricing_type_required' => 'Pricing type *', + 'enter_course_price' => 'Enter your course price ($0)', + 'check_course_discount' => 'Check if this course has discount', + 'enter_discount_price' => 'Enter discount price', + 'expiry_type' => 'Expiry Type', + 'expiry_duration' => 'Expiry Duration', + 'drip_content' => 'Drip Content', + 'enable_drip_content' => 'Enable Drip Content', + 'select_instructor' => 'Select the course instructor', + 'course_category' => 'Course Category', + 'select_category' => 'Select the course category', + 'course_preview' => 'Course Preview', + 'course_player' => 'Course Player', + 'submit_for_approval' => 'Submit for Approval', + 'course_approval_status' => 'Course Approval Status', + 'course_ready_approval' => 'This course is ready for Approval!', + 'course_needs_attention' => 'This course needs attention before it can be Approved:', + 'course_content_summary' => 'Course Content Summary', + 'course_faqs' => 'Course Faqs', + 'requirements' => 'Requirements', + 'outcomes' => 'Outcomes', + 'live_classes' => 'Live Classes', + 'schedule_new_live_class' => 'Schedule New Live Class', + 'schedule_live_class' => 'Schedule Live Class', + 'zoom_not_enabled' => 'Zoom is not enabled for this course. Please enable Zoom to schedule live classes.', + 'enable_zoom' => 'Enable Zoom', + 'no_live_classes_scheduled' => 'No Live Classes Scheduled', + 'schedule_first_live_class' => 'Schedule your first live class to get started with Zoom.', + 'class_topic_required' => 'Class Topic *', + 'enter_class_topic' => 'Enter class topic', + 'start_date_time_required' => 'Start Datum & Time *', + 'class_notes_optional' => 'Class Notes (Optional)', + 'scheduling' => 'Scheduling...', + 'schedule_class' => 'Schedule Class', + 'join_class' => 'Join Class', + 'edit_class' => 'Edit Class', + 'delete_class' => 'Delete Class', + 'banner' => 'Banner', + 'thumbnail' => 'Thumbnail', + 'preview_video_type' => 'Preview Video Type', + 'preview_video_url' => 'Preview Video URL', + 'enter_video_url' => 'Enter video URL', + 'total_number_of_blog' => 'Total number of blog', + 'update_category' => 'Aktualisierung Category', + 'provide_blog_details' => 'Provide the essential details about your blog post', + 'title_80_char' => 'Title (80 Character)', + 'keywords_80_char' => 'Keywords (80 Character)', + 'enter_your_keywords' => 'Enter your keywords', + 'write_blog_content_here' => 'Write your blog content here...', + 'media_files' => 'Media Datumien', + 'upload_banner_thumbnail_desc' => 'Hochladen banner and thumbnail images for your blog', + 'blog_banner' => 'Blog Banner', + 'blog_thumbnail' => 'Blog Thumbnail', + 'update_blog' => 'Aktualisierung Blog', + 'add_blog' => 'Add Blog', + 'subtitle_80_char' => 'Subtitle (80 Character)', + 'enter_category_description' => 'Enter category description', + 'course_title' => 'Course Title', + 'short_description' => 'Short Description', + 'made_in' => 'Made In', + 'pricing_type' => 'Pricing type', + 'expiry_period_type' => 'Expiry period type', + 'expiry_date' => 'Expiry Datum', + 'preview_video' => 'Preview Video', + 'lesson_duration' => 'Lesson Duration', + 'class_topic' => 'Class Topic', + 'start_date_time' => 'Start Datum & Time', + 'class_notes' => 'Class Notes (Optional)', + 'zoom_not_enabled_message' => 'Zoom is not enabled for this course. Please enable Zoom to schedule live classes.', + 'live' => 'live', + 'upcoming' => 'upcoming', + 'ended' => 'ended', + 'scheduled' => 'scheduled', +); diff --git a/lang/de/frontend.php b/lang/de/frontend.php new file mode 100644 index 00000000..67e66943 --- /dev/null +++ b/lang/de/frontend.php @@ -0,0 +1,215 @@ + 'Replies', + 'posting' => 'Posting...', + 'replying' => 'Replying...', + 'something_went_wrong' => 'Something went wrong. Please try again.', + 'network_error' => 'Network error. Please check your connection.', + 'invalid_file_type' => 'Invalid Datumi type. Please select a valid Datumi.', + 'no_element_available' => 'No element available', + 'delete_warning' => 'Bist du sicher to delete?', + 'all' => 'All', + 'grid_view' => 'Grid View', + 'list_view' => 'List View', + 'notification_list' => 'Notification List', + 'no_unread_notifications' => 'No unread notifications', + 'closed' => 'Closed', + 'company_fallback' => 'TechCorp Inc.', + 'join_class' => 'Join Class', + 'no_lesson_found' => 'No lesson found', + 'section' => 'Section', + 'section_properties' => 'Section Properties', + 'job_circulars' => 'Job Circulars', + 'profile_updated' => 'ProDatumi Aktualisierungd successfully', + 'email_changed' => 'Email changed successfully', + 'password_changed' => 'Password changed successfully', + 'application_submitted' => 'Anwendung submitted successfully', + 'comment_posted' => 'Comment posted successfully', + 'reply_posted' => 'Reply posted successfully', + 'email_not_verified' => 'Your email is not verified yet. Please verify your email address by clicking on the link we just emailed to you.', + 'verification_link_sent' => 'A new verification link has been sent to the email address you provided during registration.', + 'privacy_policy' => 'Privacy Policy', + 'terms_of_service' => 'Terms of Service', + 'student_dashboard' => 'Student Dashboard', + 'first_page' => 'First page', + 'last_page' => 'Last page', + 'sort_by' => 'Sort by', + 'showing_results' => 'Showing :from to :to of :total results', + 'star' => 'Star', + 'stars' => 'Stars', + 'edit_review' => 'Edit Review', + 'review' => 'Review', + 'submit_review' => 'Submit Review', + 'you_rated_this' => 'You rated this', + 'characters' => 'Characters', + 'no_courses_found' => 'No courses found', + 'no_wishlist_items' => 'No wishlist items found', + 'day_left' => '1 day left', + 'days_left' => ':days days left', + 'negotiable' => 'Negotiable', + 'experience_level' => 'Experience Level', + 'job_type' => 'Job Type', + 'work_type' => 'Work Type', + 'location' => 'Location', + 'positions_available' => 'Positions Available', + 'application_deadline' => 'Anwendung Deadline', + 'contact_email' => 'Contact Email', + 'skills_required' => 'Skills Required', + 'job_description' => 'Job Description', + 'quick_apply' => 'Quick Apply', + 'send_application' => 'Send your Anwendung directly to our team', + 'apply_via_email' => 'Apply via Email', + 'job_statistics' => 'Job Statistics', + 'posted' => 'Posted', + 'last_updated' => 'Last Aktualisierungd', + 'tax' => 'Tax', + 'total' => 'Total', + 'cart_items' => 'Cart items', + 'your_cart_is_empty' => 'Your cart is empty', + 'payment_summary' => 'Payment summary', + 'sub_total' => 'Sub total', + 'discount' => 'Discount', + 'all_blogs' => 'All Blogs', + 'latest_blog_posts' => 'Latest Blog Posts', + 'post_a_comment' => 'Post A Comment', + 'no_comments_yet' => 'No comments yet. Be the first to comment!', + 'like' => 'like', + 'dislike' => 'dislike', + 'blog_banner_alt' => 'Blog banner', + 'blog_thumbnail_alt' => 'Blog thumbnail', + 'author_alt' => 'Author', + 'author_initials_fallback' => 'AU', + 'blog_list_alt' => 'Blog List', + 'blog_page_description' => 'Read :total+ articles and tutorials from our instructors and team. Stay Aktualisierungd with insights, news, and how‑to guides.', + 'blog_page_keywords' => 'blogs, articles, tutorials, news, posts, learning, education', + 'default_site_name' => 'Mentor Learning Management System', + 'loading_zoom_sdk' => 'Loading Zoom SDK...', + 'joining_meeting' => 'Joining Meeting...', + 'unable_to_join_meeting' => 'Unable to Join Meeting', + 'you_can_join_directly' => 'You can join directly using:', + 'open_in_zoom_app' => 'Open in Zoom App', + 'try_again' => 'Try Again', + 'zoom_sdk_not_configured' => 'Zoom SDK not Konfigurierend. Please contact administrator.', + 'meeting_information_not_found' => 'Meeting information not found.', + 'failed_to_get_meeting_configuration' => 'Failed to get meeting configuration', + 'zoom_sdk_not_loaded' => 'Zoom SDK not loaded', + 'failed_to_initialize_meeting' => 'Failed to initialize meeting', + 'failed_to_join_meeting' => 'Failed to join meeting', + 'course_certificate_download' => 'Course Certificate Download', + 'download_official_certificate' => 'Download your official course completion certificate', + 'certificate_of_completion' => 'Certificate of Completion', + 'certificate_description' => 'This certificate is proudly presented to acknowledge the successful completion of all course requirements and demonstrates a strong commitment to professional development and learning excellence. This is to certify that', + 'has_successfully_completed' => 'has successfully completed the course', + 'completed_on' => 'Completed on: :date', + 'authorized_certificate' => 'Authorized Certificate of Achievement', + 'download_format' => 'Download Format', + 'png_certificate_saved' => 'Your PNG certificate has been Speichernd to your downloads folder.', + 'pdf_certificate_saved' => 'Your PDF certificate has been Speichernd to your downloads folder.', + 'summery' => 'Summery', + 'duration' => 'Duration', + 'total_questions' => 'Total Questions', + 'total_marks' => 'Total Marks', + 'pass_marks' => 'Pass Marks', + 'retake' => 'Retake', + 'result' => 'Result', + 'retake_attempts' => 'Retake Attempts', + 'correct_answers' => 'Correct Answers', + 'incorrect_answers' => 'Incorrect Answers', + 'passed' => 'Passed', + 'not_passed' => 'Not Passed', + 'quiz_submitted' => 'Quiz Submitted', + 'start_quiz' => 'Start Quiz', + 'retake_quiz' => 'Retake Quiz', + 'true' => 'True', + 'false' => 'False', + 'hours' => 'Hours', + 'minutes' => 'Minutes', + 'seconds' => 'Seconds', + 'pdf_document' => 'PDF Document', + 'text_document' => 'Text Document', + 'document' => 'Document', + 'open_in_new_tab' => 'Open in new tab', + 'download_document' => 'Download document', + 'unsupported_document_format' => 'Unsupported Document Format', + 'document_format_cannot_be_previewed' => 'This document format (.{extension}) cannot be previewed directly. You can download it to view with an Appropriate Anwendung.', + 'open_in_new_tab_button' => 'Open in New Tab', + 'download' => 'Download', + 'learn_comprehensive_course' => 'Learn with our comprehensive course', + 'online_course_learning_lms' => 'online course, learning, LMS', + 'default_author' => 'UiLib', + 'course_certificate' => 'Course Certificate', + 'enrolled_students' => 'Enrolled Students', + 'student_reviews' => 'Student Reviews', + 'no_reviews_found' => 'No reviews found.', + 'course_curriculum' => 'Course curriculum', + 'there_is_no_lesson_added' => 'There is no lesson added', + 'requirements' => 'Requirements', + 'outcomes' => 'Outcomes', + 'view_details' => 'View Details', + 'students' => 'Students', + 'language' => 'Sprache', + 'level' => 'Level', + 'expiry_period' => 'Expiry Period', + 'certificate_included' => 'Certificate Included', + 'free' => 'Free', + 'play_course' => 'Play Course', + 'course_player' => 'Course Player', + 'enroll_now' => 'Enroll Now', + 'buy_now' => 'Buy Now', + 'add_to_cart' => 'Add to cart', + 'add_to_wishlist' => 'Add to Wishlist', + 'remove_from_wishlist' => 'Remove from Wishlist', + 'prev' => 'Prev', + 'next' => 'Next', + 'go_to_page_colon' => 'Go to page:', + 'student' => 'Student', + 'trending' => 'Trending', + 'course_details' => 'Course Details', + 'progress' => 'Progress', + 'instructor' => 'Instructor', + 'all_courses' => 'All Courses', + 'instructor_profile' => 'Instructor ProDatumi', + 'expert_instructor' => 'Expert Instructor', + 'instructor_fallback_keywords' => 'learning, education', + 'application_is' => 'Anwendung is', + 'application_status' => 'Anwendung Status', + 'application_rejected' => 'Unfortunately, your Anwendung has been rejected. Please review the requirements and submit again with Aktualisierungd information.', + 'application_under_review' => 'Your Anwendung is currently under review by our team. We will get back to you as soon as possible.', + 'position' => 'position', + 'positions' => 'positions', + 'available' => 'available', + 'dashboard' => 'Dashboard', + 'courses' => 'Courses', + 'lessons' => 'Lessons', + 'enrollment' => 'Enrollment', + 'course_status' => 'Course Status', + 'latest_pending_withdrawal_request' => 'Latest Pending Withdrawal Request', + 'view_all' => 'View All', + 'no_results' => 'No results.', + 'php_extension' => 'PHP Extension', + 'symlink_function' => 'Symlink Function', + 'server_requirements_not_met' => 'Your server doesn\'t meet the following requirements', + 'important_notes' => 'Important Notes', + 'symlink_required' => 'Required for Laravel\'s storage:link command to make Hochladened Datumien publicly accessible', + 'setup_complete' => 'Setup complete', + 'environment_variables_set' => 'Your changed environment variables are set in the .env Datumi now.', + 'click_here' => 'Click here', + 'get_back_to_project' => 'to get back to your project.', + 'test_connection' => 'Test Connection', + 'database_connection' => 'Database Connection', + 'environment_setup' => 'Environment Setup', + 'admin_setup' => 'Admin Setup', + 'just_now' => 'Just now', + 'minute_ago' => '1 minute ago', + 'minutes_ago' => ':minutes minutes ago', + 'hour_ago' => '1 hour ago', + 'hours_ago' => ':hours hours ago', + 'days_ago' => ':days days ago', + 'week_ago' => '1 week ago', + 'weeks_ago' => ':weeks weeks ago', + 'month_ago' => '1 month ago', + 'months_ago' => ':months months ago', + 'year_ago' => '1 year ago', + 'years_ago' => ':years years ago', +); diff --git a/lang/de/input.php b/lang/de/input.php new file mode 100644 index 00000000..0991e510 --- /dev/null +++ b/lang/de/input.php @@ -0,0 +1,346 @@ + 'Email', + 'new_email' => 'New Email', + 'your_email' => 'Your Email', + 'remember_me' => 'Remember me', + 'email_address' => 'Email address', + 'current_email' => 'Current Email', + 'password' => 'Password', + 'current_password' => 'Current Password', + 'new_password' => 'New Password', + 'confirm_password' => 'Confirm password', + 'confirm_new_password' => 'Confirm New Password', + 'full_name' => 'Full Name', + 'phone' => 'Phone', + 'username' => 'UserName', + 'profile_url' => 'ProDatumi URL', + 'system_email' => 'System Email', + 'account_email' => 'Account Email', + 'contact_email' => 'Contact Email', + 'from_address' => 'From Address', + 'from_name' => 'From Name', + 'allow_file_type' => 'Allow Datumi types', + 'url' => 'URL', + 'name' => 'Name', + 'title' => 'Title', + 'status' => 'Status', + 'icon' => 'Icon', + 'description' => 'Description', + 'sub_title' => 'Sub Title', + 'thumbnail' => 'Thumbnail', + 'banner' => 'Banner', + 'background_image' => 'Background Image', + 'background_color' => 'Background Color', + 'list_items' => 'List Items', + 'dropdown_items' => 'Dropdown Items', + 'action_type' => 'Action Type', + 'active' => 'Active', + 'tags' => 'Tags', + 'slug' => 'Slug', + 'url_slug' => 'URL Slug', + 'slogan' => 'Slogan', + 'author' => 'Author', + 'meta_title' => 'Meta Title', + 'meta_keywords' => 'Meta Keywords', + 'meta_description' => 'Meta Description', + 'og_title' => 'OG Title', + 'og_description' => 'OG Description', + 'student_name' => 'Student Name', + 'course_name' => 'Course Name', + 'completion_date' => 'Completion Datum', + 'certificate_size' => 'Certificate Größe', + 'short_description' => 'Short Description', + 'download_format' => 'Download Format', + 'preview_video' => 'Preview Video', + 'preview_video_type' => 'Preview Video Type', + 'video_url' => 'Video URL', + 'video_url_provider' => 'Video URL Provider', + 'select' => 'Select', + 'select_provider' => 'Select Provider', + 'select_video' => 'Select video', + 'select_document' => 'Select document', + 'select_image' => 'Select image', + 'select_user' => 'Select user', + 'select_course' => 'Select course', + 'embed_source' => 'Embed source', + 'duration' => 'Duration', + 'lesson_type' => 'Lesson type', + 'requirement' => 'Requirement', + 'class_topic' => 'Class Topic', + 'start_date_time' => 'Start Datum & Time', + 'summary' => 'Summary', + 'class_notes' => 'Class Notes (Optional)', + 'enable_drip_content' => 'Enable drip content', + 'course_level' => 'Course level', + 'course_instructor' => 'Course Instructor', + 'made_in' => 'Made in', + 'pricing_type' => 'Pricing type', + 'price' => 'Price', + 'expiry_period_type' => 'Expiry period type', + 'expiry_date' => 'Expiry Datum', + 'expiry_duration' => 'Expiry Duration', + 'course_language' => 'Course Sprache', + 'course_discount' => 'Course Discount', + 'enrollment_type' => 'Enrollment Type', + 'question_title' => 'Question Title', + 'title_80_character' => 'Title (80 Character)', + 'keywords' => 'Keywords', + 'keywords_80_character' => 'Keywords (80 Character)', + 'subtitle_80_character' => 'Subtitle (80 Character)', + 'question' => 'Question', + 'answer' => 'Answer', + 'outcome' => 'Outcome', + 'your_text' => 'Enter your text', + 'question_type' => 'Question Type', + 'options' => 'Options', + 'hours' => 'Hours', + 'minutes' => 'Minutes', + 'seconds' => 'Seconds', + 'total_mark' => 'Total Mark', + 'pass_mark' => 'Pass Mark', + 'retake_attempts' => 'Retake Attempts', + 'section_title' => 'Section Title', + 'feedback' => 'Feedback', + 'review' => 'Your Review', + 'rating' => 'Rating', + 'designation' => 'Designation', + 'resume' => 'Resume', + 'skills' => 'Skills', + 'skills_required' => 'Skills Required', + 'biography' => 'Biography', + 'job_title' => 'Job Title', + 'job_description' => 'Job Description', + 'job_type' => 'Job Type', + 'work_type' => 'Work Type', + 'experience_level' => 'Experience Level', + 'positions_available' => 'Positions Available', + 'location' => 'Location', + 'application_deadline' => 'Anwendung Deadline', + 'salary_is_negotiable' => 'Salary is Negotiable', + 'minimum_salary' => 'Minimum Salary', + 'maximum_salary' => 'Maximum Salary', + 'currency' => 'Currency', + 'subject' => 'Subject', + 'send_to' => 'Send To', + 'test_api_key' => 'Test API Key', + 'live_api_key' => 'Live API Key', + 'public_test_key' => 'Public Test Key', + 'secret_test_key' => 'Secret Test Key', + 'public_live_key' => 'Public Live Key', + 'secret_live_key' => 'Secret Live Key', + 'webhook_secret' => 'Webhook Secret', + 'sandbox_client_id' => 'Sandbox Client ID', + 'sandbox_secret_key' => 'Sandbox Secret Key', + 'production_client_id' => 'Production Client ID', + 'production_secret_key' => 'Production Secret Key', + 'test_public_key' => 'Test Public Key', + 'test_secret_key' => 'Test Secret Key', + 'live_public_key' => 'Live Public Key', + 'live_secret_key' => 'Live Secret Key', + 'client_id' => 'Client ID', + 'secret_key' => 'Secret Key', + 'amount' => 'Amount', + 'account_id' => 'Account ID', + 'client_secret' => 'Client Secret', + 'meeting_sdk_client_id' => 'Meeting SDK Client ID', + 'meeting_sdk_client_secret' => 'Meeting SDK Client Secret', + 'do_you_want_use_web_sdk' => 'Do you want to use Web SDK for your live class?', + 'mail_driver' => 'Mail Driver', + 'host' => 'Host', + 'port' => 'Port', + 'encryption' => 'Encryption', + 'storage_driver' => 'Storage Driver', + 'access_key_id' => 'Access Key ID', + 'secret_access_key' => 'Secret Access Key', + 'default_region' => 'Default Region', + 'bucket_name' => 'Bucket Name', + 'api_key' => 'API Key', + 'api_secret' => 'API Secret', + 'store_id' => 'Store ID', + 'store_password' => 'Store Password', + 'page_contents' => 'Page Contents', + 'google_client_id' => 'Google Client ID', + 'google_client_secret' => 'Google Client Secret', + 'google_redirect_uri' => 'Google Redirect URI', + 'merchant_id_public_key' => 'Merchant ID/Public Key', + 'merchant_key_secret_key' => 'Merchant Key/Secret Key', + 'website' => 'Website', + 'github' => 'GitHub', + 'twitter' => 'Twitter', + 'linkedin' => 'LinkedIn', + 'facebook' => 'Facebook', + 'website_name' => 'Website Name', + 'website_title' => 'Website Title', + 'logo_dark' => 'Logo Dark', + 'logo_light' => 'Logo Light', + 'favicon' => 'Favicon', + 'course_selling_currency' => 'Course Selling Currency', + 'course_selling_tax' => 'Course Selling Tax (%)', + 'instructor_revenue' => 'Instructor Revenue (%)', + 'category' => 'Category', + 'category_icon' => 'Category Icon', + 'category_status' => 'Category Status', + 'coupon' => 'Coupon', + 'select_zip_file' => 'Datei auswählen (.zip nur)', + 'blog_banner' => 'Blog Banner', + 'blog_thumbnail' => 'Blog Thumbnail', + 'select_option' => 'Select an option', + 'mail_host' => 'Mail Host', + 'mail_port' => 'Mail Port', + 'mail_encryption' => 'Mail Encryption', + 'mail_username' => 'Mail UserName', + 'mail_password' => 'Mail Password', + 'mail_from_address' => 'Mail From Address', + 'mail_from_name' => 'Mail From Name', + 'aws_access_key_id' => 'AWS Access Key ID', + 'aws_default_region' => 'AWS Default Region', + 'email_placeholder' => 'email@example.com', + 'password_placeholder' => 'Enter password', + 'confirm_password_placeholder' => 'Confirm password', + 'current_email_placeholder' => 'Enter your current email', + 'new_email_placeholder' => 'Enter your new email', + 'current_password_placeholder' => 'Enter your current password', + 'new_password_placeholder' => 'Enter your new password', + 'rewrite_password_placeholder' => 'Rewrite your new password', + 'full_name_placeholder' => 'Enter your full Name', + 'your_name_placeholder' => 'Enter your Name', + 'username_placeholder' => 'Enter userName', + 'phone_number_placeholder' => 'Enter Phone Number', + 'contact_email_placeholder' => 'hr@company.com', + 'system_type_placeholder' => 'Select System Type', + 'name_placeholder' => 'Enter your Name', + 'title_placeholder' => 'Enter title', + 'slug_placeholder' => 'Enter unique slug', + 'url_placeholder' => 'Enter URL (e.g., /courses, https://example.com)', + 'description_placeholder' => 'Enter description', + 'icon_placeholder' => 'Pick your icon', + 'status_placeholder' => 'Select Status', + 'action_type_placeholder' => 'Select action type', + 'image_url_placeholder' => 'Image URL or path', + 'section_title_placeholder' => 'Enter your section title', + 'content_here_placeholder' => 'Type your content here...', + 'caption_placeholder' => 'Type caption for image (optional)', + 'meta_title_placeholder' => 'Enter Meta Title', + 'meta_keywords_placeholder' => 'Enter Meta Keywords', + 'meta_description_placeholder' => 'Enter Meta Description', + 'og_title_placeholder' => 'Enter OG Title', + 'og_description_placeholder' => 'Enter OG Description', + 'page_name_placeholder' => 'Enter Page Name', + 'page_slug_placeholder' => 'Enter Page Slug', + 'page_title_placeholder' => 'Enter Page Title', + 'tags_placeholder' => 'Enter tags...', + 'course_name_placeholder' => 'Enter the course Name', + 'certificate_size_placeholder' => 'Select certificate Größe', + 'course_title_placeholder' => 'Enter Course Title', + 'short_description_placeholder' => 'Enter Short Description', + 'category_placeholder' => 'Select a category', + 'course_level_placeholder' => 'Select your course level', + 'course_language_placeholder' => 'Select your course Sprache', + 'course_price_placeholder' => 'Enter your course price ($0)', + 'discount_price_placeholder' => 'Enter your discount price ($0)', + 'video_url_placeholder' => 'Enter your video url', + 'approval_status_placeholder' => 'Select the Approval Status', + 'lesson_title_placeholder' => 'Lesson title', + 'provider_placeholder' => 'Select a provider', + 'type_video_url_placeholder' => 'Type your video url', + 'embed_source_placeholder' => 'Enter the embed source url', + 'duration_placeholder' => '00:00:00', + 'class_topic_placeholder' => 'Enter class topic', + 'quiz_title_placeholder' => 'Enter quiz title', + 'instructor_placeholder' => 'Select the course instructor', + 'expiry_duration_placeholder' => 'Select duration', + 'question_placeholder' => 'Question', + 'answer_placeholder' => 'Enter the answer', + 'outcome_placeholder' => 'Outcome', + 'question_type_placeholder' => 'Select question type', + 'question_options_placeholder' => 'Enter the question options', + 'answer_options_placeholder' => 'Enter the answer options', + 'hours_placeholder' => '00 hours', + 'minutes_placeholder' => '00 minutes', + 'seconds_placeholder' => '00 seconds', + 'experience_placeholder' => 'Share your experience with this course...', + 'your_subject_placeholder' => 'Enter your subject', + 'review_placeholder' => 'Enter your review', + 'biography_placeholder' => 'Write about yourself', + 'designation_placeholder' => 'Enter your designation', + 'skills_tag_placeholder' => 'Enter the skills as a tag', + 'about_yourself_placeholder' => 'Write about yourself', + 'job_title_placeholder' => 'e.g., Senior React Developer', + 'url_slug_placeholder' => 'senior-react-developer', + 'job_description_placeholder' => 'Provide a detailed description of the role, expectations, and what makes this opportunity exciting...', + 'location_placeholder' => 'e.g., Dhaka, Bangladesh', + 'currency_placeholder' => 'Select your currency', + 'minimum_salary_placeholder' => 'Enter minimum salary', + 'maximum_salary_placeholder' => 'Enter maximum salary', + 'store_id_placeholder' => 'Enter store ID', + 'store_password_placeholder' => 'Enter store password', + 'api_key_placeholder' => 'Enter api key', + 'api_secret_placeholder' => 'Enter api secret', + 'test_api_key_placeholder' => 'Enter test api key', + 'live_api_key_placeholder' => 'Enter live api key', + 'mollie_test_api_key_placeholder' => 'Enter Mollie test api key', + 'mollie_live_api_key_placeholder' => 'Enter Mollie live api key', + 'sandbox_client_id_placeholder' => 'Enter sandbox client ID', + 'production_client_id_placeholder' => 'Enter production client ID', + 'sandbox_secret_key_placeholder' => 'Enter sandbox secret key', + 'production_secret_key_placeholder' => 'Enter production secret key', + 'test_public_key_placeholder' => 'Enter test public key', + 'test_secret_key_placeholder' => 'Enter test secret key', + 'live_public_key_placeholder' => 'Enter live public key', + 'live_secret_key_placeholder' => 'Enter live secret key', + 'webhook_secret_placeholder' => 'Enter webhook secret', + 'your_amount_placeholder' => 'Enter your amount', + 'paytm_merchant_id_placeholder' => 'Enter Paytm merchant ID', + 'paytm_merchant_key_placeholder' => 'Enter Paytm merchant key', + 'razorpay_public_key_placeholder' => 'Enter Razorpay public key', + 'razorpay_secret_key_placeholder' => 'Enter Razorpay secret key', + 'sslcommerz_public_key_placeholder' => 'Enter SSLCommerz public key', + 'sslcommerz_secret_key_placeholder' => 'Enter SSLCommerz secret key', + 'coupon_placeholder' => 'Enter coupon', + 'zoom_account_email_placeholder' => 'Enter your Zoom account email', + 'zoom_account_id_placeholder' => 'Enter your Zoom account ID', + 'zoom_client_id_placeholder' => 'Enter your Zoom client ID', + 'zoom_client_secret_placeholder' => 'Enter your Zoom client secret', + 'meeting_sdk_client_id_placeholder' => 'Enter your Meeting SDK client ID', + 'meeting_sdk_client_secret_placeholder' => 'Enter your Meeting SDK client secret', + 'mail_driver_placeholder' => 'Select Mail Driver', + 'smtp_example_placeholder' => 'smtp.example.com', + 'port_587_placeholder' => '587', + 'encryption_placeholder' => 'Select Encryption', + 'noreply_example_placeholder' => 'noreply@example.com', + 'your_company_name_placeholder' => 'Your Company Name', + 'storage_driver_placeholder' => 'Select Storage Driver', + 'access_key_id_placeholder' => 'Enter Access Key ID', + 'secret_access_key_placeholder' => 'Enter Secret Access Key', + 'default_region_placeholder' => 'Enter Default Region', + 'bucket_name_placeholder' => 'Enter Bucket Name', + 'google_client_id_placeholder' => 'Enter your google client id', + 'google_client_secret_placeholder' => 'Enter your google client secret', + 'google_redirect_url_placeholder' => 'Enter your google redirect url', + 'https_placeholder' => 'https://example.com', + 'website_name_placeholder' => 'Enter Website Name', + 'website_title_placeholder' => 'Enter Website Title', + 'keywords_placeholder' => 'Enter Keywords', + 'website_description_placeholder' => 'Enter Website Description', + 'author_name_placeholder' => 'Enter Author Name', + 'website_slogan_placeholder' => 'Enter Website Slogan', + 'system_email_placeholder' => 'Enter System Email', + 'select_logo_placeholder' => 'Select Logo', + 'select_favicon_placeholder' => 'Select Favicon', + 'select_banner_placeholder' => 'Select Banner', + 'select_user_placeholder' => 'Select a user', + 'select_course_placeholder' => 'Select a course', + 'selling_currency_placeholder' => 'Select Selling Currency', + 'selling_tax_percentage_placeholder' => 'Enter Selling Tax Percentage', + 'revenue_percentage_placeholder' => 'Enter Instructor Revenue Percentage', + 'mail_host_placeholder' => 'smtp.example.com', + 'mail_port_placeholder' => '587', + 'mail_username_placeholder' => 'your-email@example.com', + 'mail_password_placeholder' => 'Enter your mail password', + 'mail_from_address_placeholder' => 'noreply@example.com', + 'mail_from_name_placeholder' => 'Your Anwendung Name', + 'aws_access_key_id_placeholder' => 'Enter AWS Access Key ID', + 'aws_default_region_placeholder' => 'us-east-1', +); diff --git a/lang/de/pagination.php b/lang/de/pagination.php new file mode 100644 index 00000000..c6388d65 --- /dev/null +++ b/lang/de/pagination.php @@ -0,0 +1,6 @@ + '« Previous', + 'next' => 'Next »', +); diff --git a/lang/de/passwords.php b/lang/de/passwords.php new file mode 100644 index 00000000..c68b4021 --- /dev/null +++ b/lang/de/passwords.php @@ -0,0 +1,9 @@ + 'Your password has been reset.', + 'sent' => 'We have emailed your password reset link.', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => 'We can\'t find a user with that email address.', +); diff --git a/lang/de/settings.php b/lang/de/settings.php new file mode 100644 index 00000000..f8e66a8e --- /dev/null +++ b/lang/de/settings.php @@ -0,0 +1,176 @@ + 'Social Links', + 'system_settings' => 'System Einstellungen', + 'page_settings' => 'Page Einstellungen', + 'live_class_settings' => 'Live Class Einstellungen', + 'payment_gateways' => 'Payment Gateways', + 'custom_global_style' => 'Custom Global Style', + 'account_settings' => 'Account Einstellungen', + 'smtp_settings' => 'SMTP Einstellungen', + 'storage_settings' => 'Storage Einstellungen', + 'language_settings' => 'Spracheinstellungen', + 'translation_settings' => 'Translation Einstellungen', + 'add_language' => 'Sprache hinzufügen', + 'configure_zoom' => 'Zoom Server-to-Server OAuth-Anmeldedaten konfigurieren', + 'email_settings_description' => 'Konfigurieren your email sending Einstellungen', + 'storage_settings_description' => 'Konfigurieren your storage Einstellungen', + 'application_update' => 'Anwendungs-Aktualisierung', + 'application_backup' => 'Anwendung Sicherung', + 'application_updated' => 'Anwendungs-Aktualisierungd successfully', + 'updating_application' => 'Updating Anwendung...', + 'backup_name' => 'Sicherung Name', + 'backup_date' => 'Sicherung Datum', + 'backup_size' => 'Größe', + 'backup_status' => 'Status', + 'backup_actions' => 'Aktionen', + 'backup_history' => 'Sicherung Verlauf', + 'backup_created' => 'Sicherung created successfully', + 'backup_deleted' => 'Sicherung deleted successfully', + 'backup_restored' => 'Sicherung Wiederherstellungd successfully', + 'backup_failed' => 'Sicherung creation failed. Please try again.', + 'backup_recommendation' => 'We strongly recommend creating a Sicherung before updating.', + 'maintenance_description' => 'Aktualisierung, Sicherung and Wiederherstellung your Anwendung safely and automatically.', + 'update_description' => 'Hochladen and install Anwendungs-Aktualisierungs safely', + 'backup_description' => 'Create a complete Sicherung of your Anwendung including Datumien and database', + 'backup_history_description' => 'View and manage your Anwendung Sicherungen', + 'home_pages_description' => 'List of all home pages in the system', + 'custom_pages_description' => 'Manage your custom pages', + 'css_description' => 'Write custom CSS that will be Applied globally to the site.', + 'system_settings_description' => 'Manage your system\'s core Einstellungen', + 'translation_description' => 'Spracheigenschaften übersetzen', + 'edit_custom_page' => 'Edit Custom Page', + 'translation_update' => 'Translation Aktualisierung', + 'elements' => 'Elements', + 'available_home_pages' => 'Available Home Pages', + 'confirm_application_update' => 'Anwendungsaktualisierung bestätigen', + 'do_not_close_window' => 'Bitte schließe dieses Fenster nicht', + 'update_application_with' => 'Bist du sicher you want to Aktualisierung the Anwendung with ":filename"?', + 'this_update_will' => 'This Aktualisierung will:', + 'put_site_maintenance' => 'Put the site in maintenance mode', + 'replace_application_files' => 'Replace all Anwendung Datumien', + 'run_database_migrations' => 'Run database migrations', + 'process_may_take_minutes' => 'Der Vorgang kann einige Minuten dauern', + 'backup_first_warning' => 'Make sure you have created a Sicherung first! This action cannot be undone.', + 'select_zip_file' => 'Datei auswählen (.zip nur)', + 'selected_file' => 'Ausgewählte Datei:', + 'file_selected_successfully' => 'Datumi selected successfully. Click "Anwendung aktualisieren" to proceed.', + 'update_application' => 'Anwendung aktualisieren', + 'uploading' => 'Wird hochgeladen...', + 'important_update_guidelines' => 'Important Aktualisierung Guidelines', + 'refresh_server_guideline' => 'Every time refresh server before updating', + 'backup_first_guideline' => 'Always create a Sicherung before updating', + 'file_format_guideline' => 'Hochladen must be a valid ZIP Datumi', + 'maintenance_mode_guideline' => 'Site will be temporarily unavailable during Aktualisierung', + 'migrations_guideline' => 'Database migrations will be automatically Applied', + 'downtime_guideline' => 'Aktualisierung Der Vorgang kann einige Minuten dauern', + 'browser_guideline' => 'Do not refresh or close browser during Aktualisierung', + 'compatibility_guideline' => 'Ensure the Aktualisierung is compatible with your system', + 'refresh_server' => 'Refresh Server', + 'backup_first' => 'Sicherung First', + 'file_format' => 'Datumi Format', + 'maintenance_mode' => 'Put the site in maintenance mode', + 'migrations' => 'Migrations', + 'downtime' => 'Downtime', + 'browser' => 'Browser', + 'compatibility' => 'Compatibility', + 'application_update_title' => 'Anwendungs-Aktualisierung', + 'upload_install_description' => 'Hochladen and install the latest version of your Anwendung', + 'refresh_server_button' => 'Refresh Server', + 'updating_application_button' => 'Updating Anwendung...', + 'paypal_settings' => 'PayPal Einstellungen', + 'stripe_settings' => 'Stripe Einstellungen', + 'mollie_settings' => 'Mollie Einstellungen', + 'paystack_settings' => 'Paystack Einstellungen', + 'razorpay_settings' => 'Razorpay Einstellungen', + 'sslcommerz_settings' => 'SSLCommerz Einstellungen', + 'paytm_settings' => 'Paytm Einstellungen', + 'configure_payment_gateway' => 'Konfigurieren :gateway payment gateway', + 'test_mode' => 'Testmodus', + 'using_test_environment' => 'Verwendet Testumgebung', + 'using_live_environment' => 'Verwendet Live-Umgebung', + 'using_sandbox_environment' => 'Using Sandbox Environment', + 'using_production_environment' => 'Using Production Environment', + 'using_staging_environment' => 'Using Staging Environment', + 'using_test_keys' => 'Using Test Keys', + 'using_live_keys' => 'Using Live Keys', + 'api_credentials' => 'API-Zugangsdaten', + 'test_credentials' => 'Test Credentials', + 'live_credentials' => 'Live Credentials', + 'sandbox_credentials' => 'Sandbox Credentials', + 'production_credentials' => 'Production Credentials', + 'use_test_mode_key' => 'Use your Testmodus :key', + 'use_live_mode_key' => 'Use your live mode :key', + 'use_staging_key' => 'Use your staging :key', + 'use_production_key' => 'Use your production :key', + 'delete_backup_warning' => 'Bist du sicher, dass du diese Sicherung löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.', + 'restore_backup_warning' => 'Bist du sicher you want to Wiederherstellung from this Sicherung? This will:', + 'system_type_warning' => 'Bist du sicher you want to change the system type? This action will affect the entire Anwendung behavior.', + 'update_system_type_warning' => 'Bist du sicher to Aktualisierung system type?', + 'update_warning' => 'This Aktualisierung will:', + 'update_failed' => 'Aktualisierung failed. Please try again.', + 'restore_failed' => 'Sicherung restoration failed. Please try again.', + 'delete_failed' => 'Sicherung deletion failed. Please try again.', + 'server_refreshed' => 'Server refreshed successfully', + 'config_not_found' => 'Configuration not found.', + 'footer_config_not_found' => 'Footer configuration not found.', + 'navbar_config_not_found' => 'Navbar configuration not found.', + 'configuration' => 'Configuration: Environment and config Datumien', + 'manage_core_settings' => 'Manage your system\'s core Einstellungen', + 'app_maintenance' => 'App Maintenance', + 'app_version' => 'App Version', + 'current_version' => 'Current Version:', + 'live_navbar_preview' => 'Live Navbar Preview', + 'live_footer_preview' => 'Live Footer Preview', + 'interactive_preview' => 'Interactive preview of', + 'before_login' => 'Before Login', + 'after_login' => 'After Login', + 'collaborative' => 'Collaborative', + 'administrative' => 'Administrative', + 'custom_pages' => 'Custom Pages', + 'note' => 'Note', + 'what_backed_up' => 'What will be backed up?', + 'source_code' => 'Source Code: All Anwendung Datumien and code', + 'database' => 'Database: Complete MySQL database dump', + 'assets' => 'Assets: Hochladened media and public Datumien', + 'refresh_note' => 'Note: Every time refresh server before Sicherung.', + 'deleting_backup' => 'Deleting Sicherung...', + 'restoring_backup' => 'Restoring Sicherung...', + 'do_not_close' => 'Bitte schließe dieses Fenster nicht', + 'restore_backup_confirmation' => 'Bist du sicher you want to Wiederherstellung the Sicherung ":backup_name"?', + 'backup_details' => 'Sicherung Details', + 'permanently_delete_files' => 'Permanently delete the Sicherung Datumien from storage', + 'remove_backup_record' => 'Remove the Sicherung record from the database', + 'cannot_be_undone' => 'Cannot be undone or recovered', + 'replace_current_files' => 'Replace all current Anwendung Datumien', + 'restore_database_state' => 'Replace the entire database with Sicherung data', + 'current_data_lost' => 'All current data and Datumien will be lost', + 'action_cannot_undone' => 'This action cannot be undone', + 'critical_warning' => 'Critical Warning', + 'restore_process_time' => 'Der Vorgang kann einige Minuten dauern', + 'maintenance_mode_enabled' => 'Put the site in maintenance mode', + 'select_update_file' => 'Select Aktualisierung Datumi', + 'drag_drop_update_file' => 'Drag and drop your Aktualisierung Datumi here, or click to browse', + 'update_file_requirements' => 'Only .zip Datumien are allowed. Maximum Datumi Größe: 500MB', + 'no_file_selected' => 'Keine Datei ausgewählt', + 'file_selected' => 'Datumi selected', + 'browse_files' => 'Dateien durchsuchen', + 'website_information' => 'Website Information', + 'contact_information' => 'Contact Information', + 'media_settings' => 'Media Einstellungen', + 'logo_favicon' => 'Logo & Favicon', + 'social_media_links' => 'Social Media Links', + 'replace_files' => 'Replace all Anwendung Datumien', + 'run_migrations' => 'Run database migrations', + 'process_update' => 'Process the Aktualisierung automatically', + 'no_backups' => 'No Sicherungen found', + 'no_backups_description' => 'You haven\'t created any Sicherungen yet. Create your first Sicherung to get started.', + 'restore_database' => 'Wiederherstellung the database to the Sicherung state', + 'overwrite_changes' => 'Overwrite any changes made since the Sicherung', + 'zoom_setup_guide' => 'Zoom Setup Guide', + 'setup_instructions' => 'Follow these steps to set up Zoom integration:', + 'create_zoom_app' => 'Create a Server-to-Server OAuth App in Zoom Marketplace', + 'get_credentials' => 'Get your Account ID, Client ID, and Client Secret', + 'configure_scopes' => 'Konfigurieren the required scopes for your App', +); diff --git a/lang/de/table.php b/lang/de/table.php new file mode 100644 index 00000000..b70b002c --- /dev/null +++ b/lang/de/table.php @@ -0,0 +1,53 @@ + 'Type', + 'csv' => 'CSV', + 'resume' => 'Resume', + 'view_resume' => 'View Resume', + 'img_placeholder' => 'IMG', + 'no_data' => 'No data available', + 'go_to_page' => 'Go to page:', + 'previous' => 'Prev', + 'showing_results' => 'Showing results', + 'total_results' => 'Total results', + 'delete_instructor_warning' => 'After deleting the instructor, the admin will be the assign as a new instructor, of this instructor all the courses.', + 'delete_course_warning' => 'After deleting the course, all the related data, like, course sections, lessons, quizzes, enrollments, etc will be deleted automatically.', + 'name' => 'Name', + 'email' => 'Email', + 'role' => 'Role', + 'slug' => 'Slug', + 'title' => 'Title', + 'use_case' => 'Use Case', + 'sections' => 'Sections', + 'creator' => 'Creator', + 'enrolled_course' => 'Enrolled Course', + 'enrolled_date' => 'Enrolled Datum', + 'expiry_date' => 'Expiry Datum', + 'payout_amount' => 'Payout amount', + 'payout_method' => 'Payout Method', + 'processed_date' => 'Processed Datum', + 'payout_date' => 'Payout Datum', + 'enrollments' => 'Enrollments', + 'course_title' => 'Course Title', + 'number_of_course' => 'Number Of Course', + 'category_name' => 'Category Name', + 'category_child' => 'Category Child', + 'meta_description' => 'Meta Description', + 'meta_keywords' => 'Meta Keywords', + 'action' => 'Action', + 'status' => 'Status', + 'custom_pages' => 'Custom Pages', + 'add_custom_page' => 'Add Custom Page', + 'pay' => 'Pay', + 'print' => 'Print', + 'select' => 'Select', + 'selected' => 'Selected', + 'edit_page' => 'Edit Page', + 'copy_url' => 'Kopieren URL', + 'preview_page' => 'Preview Page', + 'lifetime_access' => 'Lifetime access', + 'url_copied' => 'URL copied to clipboard', + 'best_single_instructor' => 'Best for Single Instructor', + 'best_multiple_instructors' => 'Best for Multiple Instructors', +); diff --git a/lang/de/validation.php b/lang/de/validation.php new file mode 100644 index 00000000..455f31fd --- /dev/null +++ b/lang/de/validation.php @@ -0,0 +1,175 @@ + 'The :attribute field must be accepted.', + 'accepted_if' => 'The :attribute field must be accepted when :other is :value.', + 'active_url' => 'The :attribute field must be a valid URL.', + 'after' => 'The :attribute field must be a Datum after :date.', + 'after_or_equal' => 'The :attribute field must be a Datum after or equal to :date.', + 'alpha' => 'The :attribute field must only contain letters.', + 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.', + 'alpha_num' => 'The :attribute field must only contain letters and numbers.', + 'any_of' => 'The :attribute field is invalid.', + 'array' => 'The :attribute field must be an array.', + 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.', + 'before' => 'The :attribute field must be a Datum before :date.', + 'before_or_equal' => 'The :attribute field must be a Datum before or equal to :date.', + 'between' => + array ( + 'array' => 'The :attribute field must have between :min and :max items.', + 'file' => 'The :attribute field must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute field must be between :min and :max.', + 'string' => 'The :attribute field must be between :min and :max characters.', + ), + 'boolean' => 'The :attribute field must be true or false.', + 'can' => 'The :attribute field contains an unauthorized value.', + 'confirmed' => 'The :attribute field confirmation does not match.', + 'contains' => 'The :attribute field is missing a required value.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute field must be a valid Datum.', + 'date_equals' => 'The :attribute field must be a Datum equal to :date.', + 'date_format' => 'The :attribute field must match the format :format.', + 'decimal' => 'The :attribute field must have :decimal decimal places.', + 'declined' => 'The :attribute field must be declined.', + 'declined_if' => 'The :attribute field must be declined when :other is :value.', + 'different' => 'The :attribute field and :other must be different.', + 'digits' => 'The :attribute field must be :digits digits.', + 'digits_between' => 'The :attribute field must be between :min and :max digits.', + 'dimensions' => 'The :attribute field has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_contain' => 'The :attribute field must not contain any of the following: :values.', + 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.', + 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.', + 'email' => 'The :attribute field must be a valid email address.', + 'ends_with' => 'The :attribute field must end with one of the following: :values.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'extensions' => 'The :attribute field must have one of the following extensions: :values.', + 'file' => 'The :attribute field must be a Datumi.', + 'filled' => 'The :attribute field must have a value.', + 'gt' => + array ( + 'array' => 'The :attribute field must have more than :value items.', + 'file' => 'The :attribute field must be greater than :value kilobytes.', + 'numeric' => 'The :attribute field must be greater than :value.', + 'string' => 'The :attribute field must be greater than :value characters.', + ), + 'gte' => + array ( + 'array' => 'The :attribute field must have :value items or more.', + 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute field must be greater than or equal to :value.', + 'string' => 'The :attribute field must be greater than or equal to :value characters.', + ), + 'hex_color' => 'The :attribute field must be a valid hexadecimal color.', + 'image' => 'The :attribute field must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field must exist in :other.', + 'in_array_keys' => 'The :attribute field must contain at least one of the following keys: :values.', + 'integer' => 'The :attribute field must be an integer.', + 'ip' => 'The :attribute field must be a valid IP address.', + 'ipv4' => 'The :attribute field must be a valid IPv4 address.', + 'ipv6' => 'The :attribute field must be a valid IPv6 address.', + 'json' => 'The :attribute field must be a valid JSON string.', + 'list' => 'The :attribute field must be a list.', + 'lowercase' => 'The :attribute field must be lowercase.', + 'lt' => + array ( + 'array' => 'The :attribute field must have less than :value items.', + 'file' => 'The :attribute field must be less than :value kilobytes.', + 'numeric' => 'The :attribute field must be less than :value.', + 'string' => 'The :attribute field must be less than :value characters.', + ), + 'lte' => + array ( + 'array' => 'The :attribute field must not have more than :value items.', + 'file' => 'The :attribute field must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute field must be less than or equal to :value.', + 'string' => 'The :attribute field must be less than or equal to :value characters.', + ), + 'mac_address' => 'The :attribute field must be a valid MAC address.', + 'max' => + array ( + 'array' => 'The :attribute field must not have more than :max items.', + 'file' => 'The :attribute field must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute field must not be greater than :max.', + 'string' => 'The :attribute field must not be greater than :max characters.', + ), + 'max_digits' => 'The :attribute field must not have more than :max digits.', + 'mimes' => 'The :attribute field must be a Datumi of type: :values.', + 'mimetypes' => 'The :attribute field must be a Datumi of type: :values.', + 'min' => + array ( + 'array' => 'The :attribute field must have at least :min items.', + 'file' => 'The :attribute field must be at least :min kilobytes.', + 'numeric' => 'The :attribute field must be at least :min.', + 'string' => 'The :attribute field must be at least :min characters.', + ), + 'min_digits' => 'The :attribute field must have at least :min digits.', + 'missing' => 'The :attribute field must be missing.', + 'missing_if' => 'The :attribute field must be missing when :other is :value.', + 'missing_unless' => 'The :attribute field must be missing unless :other is :value.', + 'missing_with' => 'The :attribute field must be missing when :values is present.', + 'missing_with_all' => 'The :attribute field must be missing when :values are present.', + 'multiple_of' => 'The :attribute field must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute field format is invalid.', + 'numeric' => 'The :attribute field must be a number.', + 'password' => + array ( + 'letters' => 'The :attribute field must contain at least one letter.', + 'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute field must contain at least one number.', + 'symbols' => 'The :attribute field must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has Appeared in a data leak. Please choose a different :attribute.', + ), + 'present' => 'The :attribute field must be present.', + 'present_if' => 'The :attribute field must be present when :other is :value.', + 'present_unless' => 'The :attribute field must be present unless :other is :value.', + 'present_with' => 'The :attribute field must be present when :values is present.', + 'present_with_all' => 'The :attribute field must be present when :values are present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_if_accepted' => 'The :attribute field is prohibited when :other is accepted.', + 'prohibited_if_declined' => 'The :attribute field is prohibited when :other is declined.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute field format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_if_accepted' => 'The :attribute field is required when :other is accepted.', + 'required_if_declined' => 'The :attribute field is required when :other is declined.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute field must match :other.', + 'size' => + array ( + 'array' => 'The :attribute field must contain :size items.', + 'file' => 'The :attribute field must be :size kilobytes.', + 'numeric' => 'The :attribute field must be :size.', + 'string' => 'The :attribute field must be :size characters.', + ), + 'starts_with' => 'The :attribute field must start with one of the following: :values.', + 'string' => 'The :attribute field must be a string.', + 'timezone' => 'The :attribute field must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'uploaded' => 'The :attribute failed to Hochladen.', + 'uppercase' => 'The :attribute field must be uppercase.', + 'url' => 'The :attribute field must be a valid URL.', + 'ulid' => 'The :attribute field must be a valid ULID.', + 'uuid' => 'The :attribute field must be a valid UUID.', + 'custom' => + array ( + 'attribute-name' => + array ( + 'rule-name' => 'custom-message', + ), + ), + 'attributes' => + array ( + ), +); diff --git a/scripts/generate_de_lang.php b/scripts/generate_de_lang.php new file mode 100644 index 00000000..b66dd936 --- /dev/null +++ b/scripts/generate_de_lang.php @@ -0,0 +1,180 @@ + lang/de and applies a rule-based + * English->German translation for string values while preserving tokens/placeholders. + * + * Usage: php scripts/generate_de_lang.php + * + * Note: this is a heuristic translator (word-replacement). For high-quality + * translations use a translation provider and enable it in this script. + */ + +function ensureDir(string $path) +{ + if (!is_dir($path)) mkdir($path, 0755, true); +} + +function loadPhpArray(string $file) +{ + return require $file; +} + +// Basic mapping (expand as needed) +$dictionary = [ + 'Settings' => 'Einstellungen', + 'Setting' => 'Einstellung', + 'Update' => 'Aktualisierung', + 'Updates' => 'Aktualisierungen', + 'Application' => 'Anwendung', + 'app' => 'App', + 'Backup' => 'Sicherung', + 'Backups' => 'Sicherungen', + 'Restore' => 'Wiederherstellung', + 'File' => 'Datei', + 'Files' => 'Dateien', + 'Selected file' => 'Ausgewählte Datei', + 'Selected file:' => 'Ausgewählte Datei:', + 'Cancel' => 'Abbrechen', + 'Save' => 'Speichern', + 'Upload' => 'Hochladen', + 'Uploading...' => 'Hochladen...', + 'Name' => 'Name', + 'Date' => 'Datum', + 'Size' => 'Größe', + 'Status' => 'Status', + 'Actions' => 'Aktionen', + 'History' => 'Verlauf', + 'Configure' => 'Konfigurieren', + 'Configure Zoom Server-to-Server OAuth Credentials' => 'Zoom Server-to-Server OAuth-Anmeldedaten konfigurieren', + 'Language' => 'Sprache', + 'Languages' => 'Sprachen', + 'Language Settings' => 'Spracheinstellungen', + 'Add Language' => 'Sprache hinzufügen', + 'Translate Language Properties' => 'Spracheigenschaften übersetzen', + 'Application Update' => 'Anwendungs-Aktualisierung', + 'Update Application' => 'Anwendung aktualisieren', + 'Please do not close this window' => 'Bitte schließe dieses Fenster nicht', + 'Are you sure' => 'Bist du sicher', + 'Are you sure you want to delete this backup? This action cannot be undone.' => 'Bist du sicher, dass du diese Sicherung löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.', + 'Confirm Application Update' => 'Anwendungsaktualisierung bestätigen', + 'Process may take several minutes' => 'Der Vorgang kann einige Minuten dauern', + 'Test Mode' => 'Testmodus', + 'Using Test Environment' => 'Verwendet Testumgebung', + 'Using Live Environment' => 'Verwendet Live-Umgebung', + 'API Credentials' => 'API-Zugangsdaten', + 'Copy' => 'Kopieren', + 'Browse Files' => 'Dateien durchsuchen', + 'No file selected' => 'Keine Datei ausgewählt', + 'Select File (.zip only)' => 'Datei auswählen (.zip nur)', + 'Uploading...' => 'Wird hochgeladen...', +]; + +// Token patterns to preserve +$tokenPatterns = [ + '/:(\w+)/', // :seconds, :filename + '/\{\{.*?\}\}/', // {{ var }} + '/\{[^}]+\}/', // {variable} + '/%\w/', // %s %d + '/%\([^\)]+\)s/', // %(name)s +]; + +function maskTokens(string $s, array $patterns, array &$tokens) +{ + $tokens = []; + foreach ($patterns as $p) { + $s = preg_replace_callback($p, function ($m) use (&$tokens) { + $key = '__TOKEN'.count($tokens).'__'; + $tokens[$key] = $m[0]; + return $key; + }, $s); + } + return $s; +} + +function unmaskTokens(string $s, array $tokens) +{ + if (!$tokens) return $s; + return strtr($s, $tokens); +} + +function translateString(string $s, array $dictionary, array $tokenPatterns) +{ + // preserve tokens + $tokens = []; + $masked = maskTokens($s, $tokenPatterns, $tokens); + + // quick full-match dictionary + if (isset($dictionary[$masked])) { + $translated = $dictionary[$masked]; + } else { + // word-by-word replace, case-sensitive and insensitive + $translated = $masked; + // longer keys first + uksort($dictionary, function($a, $b){ return strlen($b) - strlen($a); }); + foreach ($dictionary as $eng => $ger) { + // replace whole words and phrases + $translated = str_ireplace($eng, $ger, $translated); + } + } + + // restore tokens + $translated = unmaskTokens($translated, $tokens); + + return $translated; +} + +function translateRecursive($data, $dictionary, $tokenPatterns) +{ + if (is_string($data)) { + return translateString($data, $dictionary, $tokenPatterns); + } + if (is_array($data)) { + $out = []; + foreach ($data as $k => $v) { + $out[$k] = translateRecursive($v, $dictionary, $tokenPatterns); + } + return $out; + } + return $data; +} + +$baseEn = __DIR__ . '/../lang/en'; +$baseDe = __DIR__ . '/../lang/de'; + +ensureDir($baseDe); + +$files = glob($baseEn.'/*.php'); +foreach ($files as $file) { + $name = basename($file); + echo "Processing $name...\n"; + $arr = require $file; + $translated = translateRecursive($arr, $dictionary, $tokenPatterns); + $out = "