<?php

return [
    // Navigation
    'articles' => 'Articles',
    'catalog' => 'Catalog',
    'my_feeds' => 'My feeds',
    'settings' => 'Settings',
    'logout' => 'Log out',
    'change_theme' => 'Switch theme',
    'language' => 'Language',
    'self_hosting' => 'Self-hosting',
    'login' => 'Log in',
    'create_account' => 'Create an account',
    'source_code' => 'Source code',
    'footer_tagline' => 'BloomFeed — open-source, self-hosted project.',
    'meta_description' => 'BloomFeed is a personal, self-hosted RSS aggregator with a built-in reader.',

    // Home
    'hero_eyebrow' => 'Self-hosted · Privacy first',
    'hero_title' => 'Your RSS feeds, read in depth, without ever leaving BloomFeed.',
    'hero_lede' => 'BloomFeed gathers your favorite feeds and extracts their full content on demand, right on your own server. No data ever sent to third parties.',
    'how_to_self_host' => 'How to self-host it?',
    'feature_feeds_title' => 'Your feeds, your way',
    'feature_feeds_text' => 'Add any RSS or Atom feed, organize them and keep track of your unread items at a glance.',
    'feature_reader_title' => 'Built-in deep reader',
    'feature_reader_text' => 'BloomFeed fetches the source page, extracts the main content and displays it cleanly — no more juggling ten tabs.',
    'feature_home_title' => 'Your home, your rules',
    'feature_home_text' => 'One BloomFeed instance = one owner. No public sign-ups by default, no tracking, your server, your data.',
    'screenshots_title' => 'See it in action',
    'screenshots_lede' => 'A quick look at the dashboard, the built-in reader, the feed catalog and the notifiers screen.',
    'screenshot_dashboard' => 'Dashboard',
    'screenshot_dark' => 'Dark mode',
    'screenshot_reader' => 'Built-in reader',
    'screenshot_catalog' => 'One-click feed catalog',
    'screenshot_notifiers' => 'Discord & webhook notifiers',

    // Authentication
    'login_title' => 'Log in',
    'login_subtitle' => 'Access your feeds and your reading list',
    'email' => 'Email address',
    'password' => 'Password',
    'confirm_password' => 'Confirm password',
    'name' => 'Name',
    'no_account_yet' => 'No account yet?',
    'already_account' => 'Already have an account?',
    'register_owner_title' => 'Set up your instance',
    'register_owner_subtitle' => 'This account will be the owner of this BloomFeed instance',
    'register_title' => 'Create an account',
    'register_subtitle' => 'Join this BloomFeed instance',
    'register_button' => 'Create my account',
    'registrations_closed' => 'Registrations are closed on this instance. Please log in.',
    'invalid_credentials' => 'These credentials do not match any account.',

    // Dashboard
    'latest_articles' => 'Latest articles',
    'unread_only' => 'Unread only',
    'show_all' => 'Show all',
    'empty_no_feeds' => 'Add your first RSS feed from the sidebar to get started.',
    'empty_no_articles' => 'No articles yet. Try refreshing your feeds.',

    // Sidebar
    'feeds_label' => 'Feeds',
    'all_articles' => 'All articles',
    'add_feed' => 'Add a feed',
    'add' => 'Add',
    'refresh_all' => 'Refresh all',
    'manage_feeds' => 'Manage my feeds',
    'feed_url_placeholder' => 'https://example.com/rss.xml',

    // Feed management
    'custom_title_optional' => 'Custom title (optional)',
    'articles_count' => ':count article(s)',
    'refreshed_ago' => 'refreshed :time',
    'refresh' => 'Refresh',
    'delete' => 'Delete',
    'confirm_delete_feed' => 'Delete this feed and all its articles?',
    'no_feeds_yet' => "You haven't added any feeds yet.",
    'feed_added' => 'Feed added with :count article(s).',
    'feed_added_error' => 'Feed added, but the first fetch failed: :error',
    'feed_deleted' => 'Feed deleted.',
    'refresh_failed' => 'Fetch failed: :error',
    'new_articles' => ':count new article(s).',
    'new_articles_across' => ':count new article(s) across :feeds feeds.',

    // Reader
    'back_to_articles' => 'Back to articles',
    'view_original' => 'View original source',
    'fetch_error' => 'Could not fetch the full content of this article (:error).',
    'retry' => 'Retry',
    'fetching' => 'Fetching content…',

    // Catalog
    'catalog_title' => 'Feed catalog',
    'catalog_lede' => 'A curated selection of RSS feeds shipped with BloomFeed — add them to your collection in one click.',
    'search_placeholder' => 'Search feeds… (name, description, category)',
    'all' => 'All',
    'added' => 'Added',
    'catalog_empty' => 'The catalog is empty for now.',
    'no_match' => 'No feed matches your search.',

    // Settings
    'settings_title' => 'Instance settings',
    'registrations_section' => 'Public registrations',
    'registrations_desc' => 'Allow any visitor to create an account on this instance from the login page.',
    'registrations_state_open' => 'Registrations are currently open.',
    'registrations_state_closed' => 'Registrations are currently closed.',
    'open_registrations' => 'Open registrations',
    'close_registrations' => 'Close registrations',
    'registrations_now_open' => 'Registrations are now open.',
    'registrations_now_closed' => 'Registrations are now closed.',
    'create_user_section' => 'Create an account',
    'create_user_desc' => 'Create an account directly for someone you trust, without opening public registrations.',
    'user_created' => 'Account created.',
    'users_section' => 'Existing accounts',
    'owner_badge' => 'Owner',

    // Self-hosting page
    'selfhost_title' => 'Self-host BloomFeed',
    'selfhost_intro' => 'BloomFeed is designed to run on your own server, for you (or your household). Everything runs in Docker: the application, the scheduler and the MariaDB database.',
    'prereq_title' => 'Prerequisites',
    'prereq_docker' => 'A Linux server with Docker and the Docker Compose plugin.',
    'prereq_port' => 'Port 7081 available (configurable in docker-compose.yml).',
    'prereq_proxy' => 'Optional: a domain name and a reverse proxy if you want HTTPS.',
    'install_title' => 'Installation',
    'install_step_clone' => 'Clone the repository on your server.',
    'install_step_script' => 'Run the deployment script:',
    'install_env_note' => 'It automatically creates a .env file (from .env.example) and generates random secrets (APP_KEY, database passwords) when missing — they are never regenerated on subsequent deployments.',
    'install_step_containers' => 'The script builds the images and starts the containers (application, scheduler, MariaDB).',
    'install_step_owner' => 'Open http://your-server:7081 and create the owner account — registrations close automatically afterwards.',
    'config_title' => 'Configuration',
    'config_registrations' => 'From the Settings menu, the owner account can directly create accounts for trusted people, or open/close public registrations with one click.',
    'config_language' => 'The interface is available in French, English, Spanish and German — each user picks their language from the selector at the top of the page.',
    'config_catalog' => 'The built-in feed catalog can be customized by editing resources/data/bloomflux.json and redeploying.',
    'update_title' => 'Update',
    'update_text' => 'Simply re-run the deployment script: it pulls the latest changes and rebuilds the stack without touching your data.',
    'uninstall_title' => 'Uninstall',
    'uninstall_text' => 'The uninstall.sh script cleanly stops and removes the Docker stack. It asks for explicit confirmation before deleting your data and never removes the source code without a separate confirmation.',
    'source_title' => 'Source code',

    // Catalog sources & language filter
    'all_languages' => 'All languages',
    'catalog_sources_section' => 'Catalog sources',
    'catalog_sources_desc' => 'Add more feed catalogs by providing the raw URL of a bloomflux.json file hosted in another git repository. Feeds are merged with the built-in catalog, and the last known copy is served if the source is unreachable.',
    'source_url_label' => 'URL of the bloomflux.json file',
    'add_source' => 'Add source',
    'remove' => 'Remove',
    'source_added' => 'Source added (:count feeds).',
    'source_already_added' => 'This source is already registered.',
    'source_removed' => 'Source removed.',
    'source_invalid' => 'Could not read this source (a valid bloomflux.json file is expected).',
    'no_sources' => 'No external sources yet.',

    // Notifiers
    'notifiers' => 'Notifiers',
    'notifiers_lede' => 'Get a Discord alert or a generic webhook call whenever a new article arrives on your feeds. Each user manages their own notifiers.',
    'new_notifier' => 'New notifier',
    'notifier_type' => 'Type',
    'generic_webhook' => 'Generic webhook',
    'notifier_name' => 'Name',
    'notifier_name_placeholder' => 'e.g. Discord #news',
    'notifier_url' => 'Webhook URL',
    'notifier_scope' => 'Scope',
    'scope_all' => 'All my feeds',
    'scope_feeds' => 'Specific feeds',
    'scope_feeds_pick' => 'Choose feeds',
    'scope_feeds_list' => 'Feeds: :feeds',
    'no_feeds_selected' => 'no feed selected',
    'add_notifier' => 'Add notifier',
    'your_notifiers' => 'Your notifiers',
    'no_notifiers_yet' => "You haven't configured any notifier yet.",
    'disabled' => 'disabled',
    'send_test' => 'Test',
    'enable' => 'Enable',
    'disable' => 'Disable',
    'confirm_delete_notifier' => 'Delete this notifier?',
    'edit' => 'Edit',
    'save' => 'Save',
    'last_triggered' => 'triggered :time',
    'notifier_created' => 'Notifier created.',
    'notifier_updated' => 'Notifier updated.',
    'notifier_deleted' => 'Notifier deleted.',
    'notifier_test_ok' => 'Test notification sent successfully.',
    'notifier_test_failed' => 'Failed to send the test notification — check the URL.',

    'reset_title' => 'Reset',
    'reset_text' => 'The reset.sh script wipes the instance back to a blank state (accounts, feeds, articles, notifiers) without touching the source code, .env or Docker images — useful to start over on a clean instance.',
];
