refactor: replace custom CRM with Monica fork
Some checks failed
Build & Push Monica Image to Gitea Registry / build-and-push (push) Failing after 9s

This commit is contained in:
Kroonk
2026-05-22 16:19:55 +02:00
parent 38cc4c09ca
commit a213a1dba0
2215 changed files with 242567 additions and 6015 deletions

View File

@@ -0,0 +1,571 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
'yes' => 'Yes',
'no' => 'No',
'update' => 'Update',
'save' => 'Save',
'add' => 'Add',
'cancel' => 'Cancel',
'confirm' => 'Confirm',
'delete_confirm' => 'Are you sure?',
'delete' => 'Delete',
'edit' => 'Edit',
'upload' => 'Upload',
'download' => 'Download',
'save_close' => 'Save and close',
'close' => 'Close',
'copy' => 'Copy',
'create' => 'Create',
'remove' => 'Remove',
'revoke' => 'Revoke',
'done' => 'Done',
'back' => 'Back',
'verify' => 'Verify',
'new' => 'new',
'unknown' => 'I dont know',
'load_more' => 'Load more',
'loading' => 'Loading…',
'with' => 'with',
'today' => 'today',
'yesterday' => 'yesterday',
'another_day' => 'another day',
'date' => 'Date',
'type' => 'Type',
'zoom' => 'Zoom',
'upgrade' => 'Upgrade to unlock',
'percent_uploaded' => '{percent}% uploaded',
'retry' => 'Retry',
'filter' => 'Filter the list',
'go_back' => 'Go back',
'file_selected' => 'One file selected…|{count} files selected…',
'application_title' => 'Monica personal relationship manager',
'application_description' => 'Monica is a tool to manage your interactions with your loved ones, friends and family.',
'application_og_title' => 'Have better relations with your loved ones. Free online CRM for friends and family.',
'markdown_description' => 'Want to format your text in a nice way? We support Markdown to add bold, italic, lists and more.',
'markdown_link' => 'Read documentation',
'header_settings_link' => 'Settings',
'header_logout_link' => 'Logout',
'header_changelog_link' => 'Product changes',
'main_nav_cta' => 'Add people',
'main_nav_dashboard' => 'Dashboard',
'main_nav_family' => 'Contacts',
'main_nav_journal' => 'Journal',
'main_nav_activities' => 'Activities',
'main_nav_tasks' => 'Tasks',
'footer_remarks' => 'Comments?',
'footer_send_email' => 'Send us an email',
'footer_privacy' => 'Privacy policy',
'footer_release' => 'Release notes',
'footer_newsletter' => 'Newsletter',
'footer_source_code' => 'Contribute',
'footer_version' => 'Version: :version',
'footer_new_version' => 'A new version of Monica is available',
'footer_modal_version_whats_new' => 'Whats new',
'footer_modal_version_release_away' => 'You are 1 release behind the latest version available. You should update your instance.|You are :number releases behind the latest version available. You should update your instance.',
'breadcrumb_dashboard' => 'Dashboard',
'breadcrumb_list_contacts' => 'List of people',
'breadcrumb_archived_contacts' => 'Archived contacts',
'breadcrumb_journal' => 'Journal',
'breadcrumb_settings' => 'Settings',
'breadcrumb_settings_export' => 'Export',
'breadcrumb_settings_users' => 'Users',
'breadcrumb_settings_users_add' => 'Add a user',
'breadcrumb_settings_subscriptions' => 'Subscription',
'breadcrumb_settings_import' => 'Import',
'breadcrumb_settings_import_report' => 'Import report',
'breadcrumb_settings_import_upload' => 'Upload',
'breadcrumb_settings_tags' => 'Tags',
'breadcrumb_add_significant_other' => 'Add significant other',
'breadcrumb_edit_significant_other' => 'Edit significant other',
'breadcrumb_add_note' => 'Add a note',
'breadcrumb_edit_note' => 'Edit a note',
'breadcrumb_api' => 'API',
'breadcrumb_dav' => 'DAV Resources',
'breadcrumb_edit_introductions' => 'How did you meet',
'breadcrumb_settings_personalization' => 'Personalization',
'breadcrumb_settings_security' => 'Security',
'breadcrumb_settings_security_2fa' => 'Two Factor Authentication',
'breadcrumb_profile' => 'Profile of :name',
'gender_male' => 'Man',
'gender_female' => 'Woman',
'gender_none' => 'Rather not say',
'gender_no_gender' => 'No gender',
'error_title' => 'Whoops! Something went wrong.',
'error_unauthorized' => 'You dont have the right to edit this resource.',
'error_user_account' => 'This user does not belong to the given account.',
'error_save' => 'We had an error trying to save the data.',
'error_try_again' => 'Something went wrong. Please try again.',
'error_id' => 'Error ID: :id',
'error_unavailable' => 'Service unavailable',
'error_maintenance' => 'Maintenance in progress. Well be right back.',
'error_help' => 'Well be right back.',
'error_twitter' => 'Follow <a href="https://twitter.com/:twitter">our Twitter account</a> to be alerted when its up again.',
'error_no_term' => 'There is no policy for this instance yet.',
'default_save_success' => 'The data has been saved.',
'compliance_title' => 'Sorry for the interruption.',
'compliance_desc' => 'We have changed our <a href=":urlterm" hreflang=":hreflang">Terms of Use</a> and <a href=":url" hreflang=":hreflang">Privacy Policy</a>. By law we have to ask you to review them and accept them so you can continue to use your account.',
'compliance_desc_end' => 'We dont do anything nasty with your data or account and will never do.',
'compliance_terms' => 'Accept new terms and privacy policy',
// Relationship types
// Yes, each relationship type has 8 strings associated with it.
// This is because we need to indicate the name of the relationship type,
// and also the name of the opposite side of this relationship (father/son),
// and then, the feminine version of the string. Finally, in some sentences
// in the UI, we need to include the name of the person we add the relationship
// to.
'relationship_type_group_love' => 'Love relationships',
'relationship_type_group_family' => 'Family relationships',
'relationship_type_group_friend' => 'Friend relationships',
'relationship_type_group_work' => 'Work relationships',
'relationship_type_group_other' => 'Other kind of relationships',
'relationship_type_partner' => 'significant other',
'relationship_type_partner_female' => 'significant other',
'relationship_type_partner_male' => 'partner',
'relationship_type_partner_with_name' => ':names significant other',
'relationship_type_partner_female_with_name' => ':names significant other',
'relationship_type_partner_male_with_name' => ':names partner',
'relationship_type_spouse' => 'spouse',
'relationship_type_spouse_female' => 'wife',
'relationship_type_spouse_male' => 'husband',
'relationship_type_spouse_with_name' => ':names spouse',
'relationship_type_spouse_female_with_name' => ':names wife',
'relationship_type_spouse_male_with_name' => ':names husband',
'relationship_type_date' => 'date',
'relationship_type_date_female' => 'girlfriend',
'relationship_type_date_male' => 'boyfriend',
'relationship_type_date_with_name' => ':names date',
'relationship_type_date_female_with_name' => ':names girlfriend',
'relationship_type_date_male_with_name' => ':names boyfriend',
'relationship_type_lover' => 'lover',
'relationship_type_lover_female' => 'lover',
'relationship_type_lover_male' => 'lover',
'relationship_type_lover_with_name' => ':names lover',
'relationship_type_lover_female_with_name' => ':names lover',
'relationship_type_lover_male_with_name' => ':names lover',
'relationship_type_inlovewith' => 'in love with',
'relationship_type_inlovewith_female' => 'in love with',
'relationship_type_inlovewith_male' => 'in love with',
'relationship_type_inlovewith_with_name' => 'someone :name is in love with',
'relationship_type_inlovewith_female_with_name' => 'someone :name is in love with',
'relationship_type_inlovewith_male_with_name' => 'someone :name is in love with',
'relationship_type_lovedby' => 'loved by',
'relationship_type_lovedby_female' => 'loved by',
'relationship_type_lovedby_male' => 'loved by',
'relationship_type_lovedby_with_name' => ':names secret lover',
'relationship_type_lovedby_female_with_name' => ':names secret lover',
'relationship_type_lovedby_male_with_name' => ':names secret lover',
'relationship_type_ex' => 'ex-partner',
'relationship_type_ex_female' => 'ex-girlfriend',
'relationship_type_ex_male' => 'ex-boyfriend',
'relationship_type_ex_with_name' => ':names ex-partner',
'relationship_type_ex_female_with_name' => ':names ex-girlfriend',
'relationship_type_ex_male_with_name' => ':names ex-boyfriend',
'relationship_type_parent' => 'parent',
'relationship_type_parent_female' => 'mother',
'relationship_type_parent_male' => 'father',
'relationship_type_parent_with_name' => ':names parent',
'relationship_type_parent_female_with_name' => ':names mother',
'relationship_type_parent_male_with_name' => ':names father',
'relationship_type_child' => 'child',
'relationship_type_child_female' => 'daughter',
'relationship_type_child_male' => 'son',
'relationship_type_child_with_name' => ':names child',
'relationship_type_child_female_with_name' => ':names daughter',
'relationship_type_child_male_with_name' => ':names son',
'relationship_type_stepparent' => 'step-parent',
'relationship_type_stepparent_female' => 'stepmother',
'relationship_type_stepparent_male' => 'stepfather',
'relationship_type_stepparent_with_name' => ':names step-parent',
'relationship_type_stepparent_female_with_name' => ':names stepmother',
'relationship_type_stepparent_male_with_name' => ':names stepfather',
'relationship_type_stepchild' => 'stepchild',
'relationship_type_stepchild_female' => 'stepdaughter',
'relationship_type_stepchild_male' => 'stepson',
'relationship_type_stepchild_with_name' => ':names stepchild',
'relationship_type_stepchild_female_with_name' => ':names stepdaughter',
'relationship_type_stepchild_male_with_name' => ':names stepson',
'relationship_type_sibling' => 'sibling',
'relationship_type_sibling_female' => 'sister',
'relationship_type_sibling_male' => 'brother',
'relationship_type_sibling_with_name' => ':names sibling',
'relationship_type_sibling_female_with_name' => ':names sister',
'relationship_type_sibling_male_with_name' => ':names brother',
'relationship_type_grandparent' => 'grandparent',
'relationship_type_grandparent_female' => 'grandmother',
'relationship_type_grandparent_male' => 'grandfather',
'relationship_type_grandparent_with_name' => ':names grandparent',
'relationship_type_grandparent_female_with_name' => ':names grandmother',
'relationship_type_grandparent_male_with_name' => ':names grandfather',
'relationship_type_grandchild' => 'grandchild',
'relationship_type_grandchild_female' => 'granddaughter',
'relationship_type_grandchild_male' => 'grandson',
'relationship_type_grandchild_with_name' => ':names grandchild',
'relationship_type_grandchild_female_with_name' => ':names granddaughter',
'relationship_type_grandchild_male_with_name' => ':names grandson',
'relationship_type_uncle' => 'uncle',
'relationship_type_uncle_female' => 'aunt',
'relationship_type_uncle_male' => 'uncle',
'relationship_type_uncle_with_name' => ':names uncle',
'relationship_type_uncle_female_with_name' => ':names aunt',
'relationship_type_uncle_male_with_name' => ':names uncle',
'relationship_type_nephew' => 'nephew',
'relationship_type_nephew_female' => 'niece',
'relationship_type_nephew_male' => 'nephew',
'relationship_type_nephew_with_name' => ':names nephew',
'relationship_type_nephew_female_with_name' => ':names niece',
'relationship_type_nephew_male_with_name' => ':names nephew',
'relationship_type_cousin' => 'cousin',
'relationship_type_cousin_female' => 'cousin',
'relationship_type_cousin_male' => 'cousin',
'relationship_type_cousin_with_name' => ':names cousin',
'relationship_type_cousin_female_with_name' => ':names cousin',
'relationship_type_cousin_male_with_name' => ':names cousin',
'relationship_type_godfather' => 'godparent',
'relationship_type_godfather_female' => 'godmother',
'relationship_type_godfather_male' => 'godfather',
'relationship_type_godfather_with_name' => ':names godparent',
'relationship_type_godfather_female_with_name' => ':names godmother',
'relationship_type_godfather_male_with_name' => ':names godfather',
'relationship_type_godson' => 'godchild',
'relationship_type_godson_female' => 'goddaughter',
'relationship_type_godson_male' => 'godson',
'relationship_type_godson_with_name' => ':names godchild',
'relationship_type_godson_female_with_name' => ':names goddaughter',
'relationship_type_godson_male_with_name' => ':names godson',
'relationship_type_friend' => 'friend',
'relationship_type_friend_female' => 'friend',
'relationship_type_friend_male' => 'friend',
'relationship_type_friend_with_name' => ':names friend',
'relationship_type_friend_female_with_name' => ':names friend',
'relationship_type_friend_male_with_name' => ':names friend',
'relationship_type_bestfriend' => 'best friend',
'relationship_type_bestfriend_female' => 'best friend',
'relationship_type_bestfriend_male' => 'best friend',
'relationship_type_bestfriend_with_name' => ':names best friend',
'relationship_type_bestfriend_female_with_name' => ':names best friend',
'relationship_type_bestfriend_male_with_name' => ':names best friend',
'relationship_type_colleague' => 'colleague',
'relationship_type_colleague_female' => 'colleague',
'relationship_type_colleague_male' => 'colleague',
'relationship_type_colleague_with_name' => ':names colleague',
'relationship_type_colleague_female_with_name' => ':names colleague',
'relationship_type_colleague_male_with_name' => ':names colleague',
'relationship_type_boss' => 'boss',
'relationship_type_boss_female' => 'boss',
'relationship_type_boss_male' => 'boss',
'relationship_type_boss_with_name' => ':names boss',
'relationship_type_boss_female_with_name' => ':names boss',
'relationship_type_boss_male_with_name' => ':names boss',
'relationship_type_subordinate' => 'subordinate',
'relationship_type_subordinate_female' => 'subordinate',
'relationship_type_subordinate_male' => 'subordinate',
'relationship_type_subordinate_with_name' => ':names subordinate',
'relationship_type_subordinate_female_with_name' => ':names subordinate',
'relationship_type_subordinate_male_with_name' => ':names subordinate',
'relationship_type_mentor' => 'mentor',
'relationship_type_mentor_female' => 'mentor',
'relationship_type_mentor_male' => 'mentor',
'relationship_type_mentor_with_name' => ':names mentor',
'relationship_type_mentor_female_with_name' => ':names mentor',
'relationship_type_mentor_male_with_name' => ':names mentor',
'relationship_type_protege' => 'protégé',
'relationship_type_protege_female' => 'protégé',
'relationship_type_protege_male' => 'protégé',
'relationship_type_protege_with_name' => ':names protégé',
'relationship_type_protege_female_with_name' => ':names protégé',
'relationship_type_protege_male_with_name' => ':names protégé',
'relationship_type_ex_husband' => 'ex-spouse',
'relationship_type_ex_husband_female' => 'ex-wife',
'relationship_type_ex_husband_male' => 'ex-husband',
'relationship_type_ex_husband_with_name' => ':names ex-spouse',
'relationship_type_ex_husband_female_with_name' => ':names ex-wife',
'relationship_type_ex_husband_male_with_name' => ':names ex-husband',
// emotions
'emotion_primary_love' => 'Love',
'emotion_primary_joy' => 'Joy',
'emotion_primary_surprise' => 'Surprise',
'emotion_primary_anger' => 'Anger',
'emotion_primary_sadness' => 'Sadness',
'emotion_primary_fear' => 'Fear',
'emotion_secondary_affection' => 'Affection',
'emotion_secondary_lust' => 'Lust',
'emotion_secondary_longing' => 'Longing',
'emotion_secondary_cheerfulness' => 'Cheerfulness',
'emotion_secondary_zest' => 'Zest',
'emotion_secondary_contentment' => 'Contentment',
'emotion_secondary_pride' => 'Pride',
'emotion_secondary_optimism' => 'Optimism',
'emotion_secondary_enthrallment' => 'Enthrallment',
'emotion_secondary_relief' => 'Relief',
'emotion_secondary_surprise' => 'Surprise',
'emotion_secondary_irritation' => 'Irritation',
'emotion_secondary_exasperation' => 'Exasperation',
'emotion_secondary_rage' => 'Rage',
'emotion_secondary_disgust' => 'Disgust',
'emotion_secondary_envy' => 'Envy',
'emotion_secondary_suffering' => 'Suffering',
'emotion_secondary_sadness' => 'Sadness',
'emotion_secondary_disappointment' => 'Disappointment',
'emotion_secondary_shame' => 'Shame',
'emotion_secondary_neglect' => 'Neglect',
'emotion_secondary_sympathy' => 'Sympathy',
'emotion_secondary_horror' => 'Horror',
'emotion_secondary_nervousness' => 'Nervousness',
'emotion_adoration' => 'Adoration',
'emotion_affection' => 'Affection',
'emotion_love' => 'Love',
'emotion_fondness' => 'Fondness',
'emotion_liking' => 'Liking',
'emotion_attraction' => 'Attraction',
'emotion_caring' => 'Caring',
'emotion_tenderness' => 'Tenderness',
'emotion_compassion' => 'Compassion',
'emotion_sentimentality' => 'Sentimentality',
'emotion_arousal' => 'Arousal',
'emotion_desire' => 'Desire',
'emotion_lust' => 'Lust',
'emotion_passion' => 'Passion',
'emotion_infatuation' => 'Infatuation',
'emotion_longing' => 'Longing',
'emotion_amusement' => 'Amusement',
'emotion_bliss' => 'Bliss',
'emotion_cheerfulness' => 'Cheerfulness',
'emotion_gaiety' => 'Gaiety',
'emotion_glee' => 'Glee',
'emotion_jolliness' => 'Jolliness',
'emotion_joviality' => 'Joviality',
'emotion_joy' => 'Joy',
'emotion_delight' => 'Delight',
'emotion_enjoyment' => 'Enjoyment',
'emotion_gladness' => 'Gladness',
'emotion_happiness' => 'Happiness',
'emotion_jubilation' => 'Jubilation',
'emotion_elation' => 'Elation',
'emotion_satisfaction' => 'Satisfaction',
'emotion_ecstasy' => 'Ecstasy',
'emotion_euphoria' => 'Euphoria',
'emotion_enthusiasm' => 'Enthusiasm',
'emotion_zeal' => 'Zeal',
'emotion_zest' => 'Zest',
'emotion_excitement' => 'Excitement',
'emotion_thrill' => 'Thrill',
'emotion_exhilaration' => 'Exhilaration',
'emotion_contentment' => 'Contentment',
'emotion_pleasure' => 'Pleasure',
'emotion_pride' => 'Pride',
'emotion_eagerness' => 'Eagerness',
'emotion_hope' => 'Hope',
'emotion_optimism' => 'Optimism',
'emotion_enthrallment' => 'Enthrallment',
'emotion_rapture' => 'Rapture',
'emotion_relief' => 'Relief',
'emotion_amazement' => 'Amazement',
'emotion_surprise' => 'Surprise',
'emotion_astonishment' => 'Astonishment',
'emotion_aggravation' => 'Aggravation',
'emotion_irritation' => 'Irritation',
'emotion_agitation' => 'Agitation',
'emotion_annoyance' => 'Annoyance',
'emotion_grouchiness' => 'Grouchiness',
'emotion_grumpiness' => 'Grumpiness',
'emotion_exasperation' => 'Exasperation',
'emotion_frustration' => 'Frustration',
'emotion_anger' => 'Anger',
'emotion_rage' => 'Rage',
'emotion_outrage' => 'Outrage',
'emotion_fury' => 'Fury',
'emotion_wrath' => 'Wrath',
'emotion_hostility' => 'Hostility',
'emotion_ferocity' => 'Ferocity',
'emotion_bitterness' => 'Bitterness',
'emotion_hate' => 'Hate',
'emotion_loathing' => 'Loathing',
'emotion_scorn' => 'Scorn',
'emotion_spite' => 'Spite',
'emotion_vengefulness' => 'Vengefulness',
'emotion_dislike' => 'Dislike',
'emotion_resentment' => 'Resentment',
'emotion_disgust' => 'Disgust',
'emotion_revulsion' => 'Revulsion',
'emotion_contempt' => 'Contempt',
'emotion_envy' => 'Envy',
'emotion_jealousy' => 'Jealousy',
'emotion_agony' => 'Agony',
'emotion_suffering' => 'Suffering',
'emotion_hurt' => 'Hurt',
'emotion_anguish' => 'Anguish',
'emotion_depression' => 'Depression',
'emotion_despair' => 'Despair',
'emotion_hopelessness' => 'Hopelessness',
'emotion_gloom' => 'Gloom',
'emotion_glumness' => 'Glumness',
'emotion_sadness' => 'Sadness',
'emotion_unhappiness' => 'Unhappiness',
'emotion_grief' => 'Grief',
'emotion_sorrow' => 'Sorrow',
'emotion_woe' => 'Woe',
'emotion_misery' => 'Misery',
'emotion_melancholy' => 'Melancholy',
'emotion_dismay' => 'Dismay',
'emotion_disappointment' => 'Disappointment',
'emotion_displeasure' => 'Displeasure',
'emotion_guilt' => 'Guilt',
'emotion_shame' => 'Shame',
'emotion_regret' => 'Regret',
'emotion_remorse' => 'Remorse',
'emotion_alienation' => 'Alienation',
'emotion_isolation' => 'Isolation',
'emotion_neglect' => 'Neglect',
'emotion_loneliness' => 'Loneliness',
'emotion_rejection' => 'Rejection',
'emotion_homesickness' => 'Homesickness',
'emotion_defeat' => 'Defeat',
'emotion_dejection' => 'Dejection',
'emotion_insecurity' => 'Insecurity',
'emotion_embarrassment' => 'Embarrassment',
'emotion_humiliation' => 'Humiliation',
'emotion_insult' => 'Insult',
'emotion_pity' => 'Pity',
'emotion_sympathy' => 'Sympathy',
'emotion_alarm' => 'Alarm',
'emotion_shock' => 'Shock',
'emotion_fear' => 'Fear',
'emotion_fright' => 'Fright',
'emotion_horror' => 'Horror',
'emotion_terror' => 'Terror',
'emotion_panic' => 'Panic',
'emotion_hysteria' => 'Hysteria',
'emotion_mortification' => 'Mortification',
'emotion_anxiety' => 'Anxiety',
'emotion_nervousness' => 'Nervousness',
'emotion_tenseness' => 'Tenseness',
'emotion_uneasiness' => 'Uneasiness',
'emotion_apprehension' => 'Apprehension',
'emotion_worry' => 'Worry',
'emotion_distress' => 'Distress',
'emotion_dread' => 'Dread',
// weather
'weather_sunny' => 'Sunny',
'weather_clear' => 'Clear',
'weather_clear-day' => 'Clear',
'weather_clear-night' => 'Clear night',
'weather_light-drizzle' => 'Light drizzle',
'weather_patchy-light-drizzle' => 'Patchy light drizzle',
'weather_patchy-light-rain' => 'Patchy light rain',
'weather_light-rain' => 'Light rain',
'weather_moderate-rain-at-times' => 'Moderate rain at times',
'weather_moderate-rain' => 'Moderate rain',
'weather_patchy-rain-possible' => 'Patchy rain possible',
'weather_heavy-rain-at-times' => 'Heavy rain at times',
'weather_heavy-rain' => 'Heavy rain',
'weather_light-freezing-rain' => 'Light freezing rain',
'weather_moderate-or-heavy-freezing-rain' => 'Moderate or heavy freezing rain',
'weather_light-sleet' => 'Light sleet',
'weather_moderate-or-heavy-rain-shower' => 'Moderate or heavy rain shower',
'weather_light-rain-shower' => 'Light rain shower',
'weather_torrential-rain-shower' => 'Torrential rain shower',
'weather_rain' => 'Rain',
'weather_snow' => 'Snow',
'weather_blowing-snow' => 'Blowing snow',
'weather_patchy-light-snow' => 'Patchy light snow',
'weather_light-snow' => 'Light snow',
'weather_patchy-moderate-snow' => 'Patchy moderate snow',
'weather_moderate-snow' => 'Moderate snow',
'weather_patchy-heavy-snow' => 'Patchy heavy snow',
'weather_heavy-snow' => 'Heavy snow',
'weather_light-snow-showers' => 'Light snow showers',
'weather_moderate-or-heavy-snow-showers' => 'Moderate or heavy snow showers',
'weather_patchy-snow-possible' => 'Patchy snow possible',
'weather_patchy-sleet-possible' => 'Patchy sleet possible',
'weather_moderate-or-heavy-sleet' => 'Moderate or heavy sleet',
'weather_light-sleet-showers' => 'Light sleet showers',
'weather_moderate-or-heavy-sleet-showers' => 'Moderate or heavy sleet showers',
'weather_sleet' => 'Sleet',
'weather_wind' => 'Wind',
'weather_fog' => 'Fog',
'weather_freezing-fog' => 'Freezing fog',
'weather_mist' => 'Mist',
'weather_blizzard' => 'Blizzard',
'weather_overcast' => 'Overcast',
'weather_cloudy' => 'Cloudy',
'weather_partly-cloudy-day' => 'Partly cloudy',
'weather_partly-cloudy-night' => 'Partly cloudy',
'weather_freezing-drizzle' => 'Freezing drizzle',
'weather_heavy-freezing-drizzle' => 'Heavy freezing drizzle',
'weather_patchy-freezing-drizzle-possible' => 'Patchy freezing drizzle possible',
'weather_ice-pellets' => 'Ice pellets',
'weather_light-showers-of-ice-pellets' => 'Light showers of ice pellets',
'weather_moderate-or-heavy-showers-of-ice-pellets' => 'Moderate or heavy showers of ice pellets',
'weather_thundery-outbreaks-possible' => 'Thundery outbreaks possible',
'weather_patchy-light-rain-with-thunder' => 'Patchy light rain with thunder',
'weather_moderate-or-heavy-rain-with-thunder' => 'Moderate or heavy rain with thunder',
'weather_patchy-light-snow-with-thunder' => 'Patchy light snow with thunder',
'weather_moderate-or-heavy-snow-with-thunder' => 'Moderate or heavy snow with thunder',
'weather_current_temperature_celsius' => ':temperature °C',
'weather_current_temperature_fahrenheit' => ':temperature °F',
'weather_current_title' => 'Current weather',
// dav
'dav_contacts' => 'Contacts',
'dav_contacts_description' => ':names contacts',
'dav_birthdays' => 'Birthdays',
'dav_birthdays_description' => ':names contacts birthdays',
'dav_tasks' => 'Tasks',
'dav_tasks_description' => ':names tasks',
// contact list
'contact_list_avatar' => 'Avatar',
'contact_list_name' => 'Contact',
'contact_list_description' => 'Description',
];

View File

@@ -0,0 +1,89 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'failed' => 'These credentials do not match our records.',
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
'not_authorized' => 'You are not authorized to execute this action',
'signup_disabled' => 'Registration is currently disabled',
'signup_error' => 'An error occurred trying to register the user',
'back_homepage' => 'Back to homepage',
'mfa_auth_otp' => 'Authenticate with your two factor device',
'mfa_auth_webauthn' => 'Authenticate with a security key (WebAuthn)',
'2fa_title' => 'Two Factor Authentication',
'2fa_wrong_validation' => 'The two factor authentication has failed.',
'2fa_one_time_password' => 'Two factor authentication code',
'2fa_recuperation_code' => 'Enter a two factor recovery code',
'2fa_one_time_or_recuperation' => 'Enter a two factor authentication code or a recovery code',
'2fa_otp_help' => 'Open up your two factor authentication mobile app and copy the code',
'login_to_account' => 'Login to your account',
'login_with_recovery' => 'Login with a recovery code',
'login_again' => 'Please login again to your account',
'email' => 'Email',
'password' => 'Password',
'recovery' => 'Recovery code',
'login' => 'Login',
'button_remember' => 'Remember Me',
'password_forget' => 'Forget your password?',
'password_reset' => 'Reset your password',
'use_recovery' => 'Or you can use a <a href=":url">recovery code</a>',
'signup_no_account' => 'Dont have an account?',
'signup' => 'Sign up',
'create_account' => 'Create the first account by <a href=":url">signing up</a>',
'change_language_title' => 'Change language:',
'change_language' => 'Change language to :lang',
'password_reset_title' => 'Reset Password',
'password_reset_email' => 'E-Mail Address',
'password_reset_send_link' => 'Send Password Reset Link',
'password_reset_password' => 'Password',
'password_reset_password_confirm' => 'Confirm Password',
'password_reset_action' => 'Reset Password',
'password_reset_email_content' => 'Click here to reset your password:',
'register_title_welcome' => 'Welcome to your newly installed Monica instance',
'register_create_account' => 'You need to create an account to use Monica',
'register_title_create' => 'Create your Monica account',
'register_login' => '<a href=":url">Log in</a> if you already have an account.',
'register_email' => 'Enter a valid email address',
'register_email_example' => 'you@home',
'register_firstname' => 'First name',
'register_firstname_example' => 'eg. John',
'register_lastname' => 'Last name',
'register_lastname_example' => 'eg. Doe',
'register_password' => 'Password',
'register_password_example' => 'Enter a secure password',
'register_password_confirmation' => 'Password confirmation',
'register_action' => 'Register',
'register_policy' => 'Signing up signifies youve read and agree to our <a href=":url" hreflang=":hreflang">Privacy Policy</a> and <a href=":urlterm" hreflang=":hreflang">Terms of use</a>.',
'register_invitation_email' => 'For security purposes, please indicate the email of the person whove invited you to join this account. This information is provided in the invitation email.',
'confirmation_title' => 'Verify Your Email Address',
'confirmation_fresh' => 'A fresh verification link has been sent to your email address.',
'confirmation_check' => 'Before proceeding, please check your email for a verification link.',
'confirmation_request_another' => 'If you did not receive the email <a :action>click here to request another</a>.',
'confirmation_again' => 'If you want to change your email address you can <a href=":url" class="alert-link">click here</a>.',
'email_change_current_email' => 'Current email address:',
'email_change_title' => 'Change your email address',
'email_change_new' => 'New email address',
'email_changed' => 'Your email address has been changed. Check your mailbox to validate it.',
];

View File

@@ -0,0 +1,12 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
'title' => 'Product changes',
'note' => 'Note: unfortunately, this page is only in English.',
];

View File

@@ -0,0 +1,42 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
'dashboard_blank_title' => 'Welcome to your account!',
'dashboard_blank_description' => 'Monica is the place to organise all the interactions you have with the people you care about.',
'dashboard_blank_cta' => 'Add your first contact',
'dashboard_blank_illustration' => 'Illustration by <a href=":url">Freepik</a>',
'notes_title' => 'You dont have any starred notes yet.',
'tab_recent_calls' => 'Recent calls',
'tab_favorite_notes' => 'Favorite notes',
'tab_calls_blank' => 'You havent logged any calls yet.',
'tab_debts' => 'Debts',
'tab_debts_blank' => 'You havent logged any debts yet.',
'tab_tasks' => 'Tasks',
'tab_tasks_blank' => 'You havent any tasks yet.',
'tasks_add_task_placeholder' => 'What is this task about?',
'tasks_tab_your_contacts' => 'Tasks related to your contacts',
'tasks_tab_your_tasks' => 'Your tasks',
'tasks_add_note' => 'Press <kbd>Enter</kbd> to add the task.',
'task_add_cta' => 'Add a task',
'debts_you_owe' => 'You owe',
'statistics_contacts' => 'Contacts',
'statistics_activities' => 'Activities',
'statistics_gifts' => 'Gifts',
'reminders_next_months' => 'Events in the next 3 months',
'reminders_none' => 'No reminders for this month.',
'product_changes' => 'Product changes',
'product_view_details' => 'View details',
];

View File

@@ -0,0 +1,36 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
/*
|--------------------------------------------------------------------------
| Formats for dates, hours, etc.
|--------------------------------------------------------------------------
|
| The following language lines are used for date formatting.
| Be careful to translate it to the right format.
|
| We use Carbon to format dates, see http://carbon.nesbot.com/docs/#api-commonformats
| Format parameters are describe here http://www.php.net/manual/en/function.date.php
|
*/
'short_date_year_time' => 'd M Y H:i',
'short_date_year' => 'd M Y',
'short_date' => 'd M',
'short_month' => 'M',
'short_month_year' => 'M Y',
'short_day' => 'D',
'full_date_year' => 'd F Y',
'full_month' => 'F',
'full_month_year' => 'F Y',
'full_hour' => 'H:i',
'short_text' => '{text}…',
];

View File

@@ -0,0 +1,38 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
'journal_rate' => 'How was your day? You can rate it once a day.',
'journal_come_back' => 'Thanks. Come back tomorrow to rate your day again.',
'journal_description' => 'Note: the journal lists both manual journal entries, and automatic entries like Activities done with your contacts. While you can delete journal entries manually, youll have to delete the activity directly on the contact page.',
'journal_add' => 'Add a journal entry',
'journal_edit' => 'Edit a journal entry',
'journal_empty' => 'Empty journal',
'journal_created_at' => 'Created at {date}',
'journal_created_automatically' => 'Created automatically',
'journal_entry_type_journal' => 'Journal entry',
'journal_entry_type_activity' => 'Activity',
'journal_entry_rate' => 'You rated your day.',
'journal_add_comment' => 'Care to add a comment (optional)?',
'journal_show_comment' => 'Show comment',
'entry_delete_success' => 'The journal entry has been successfully deleted.',
'journal_add_title' => 'Title (optional)',
'journal_add_date' => 'Date',
'journal_add_post' => 'Entry',
'journal_add_cta' => 'Save',
'journal_blank_cta' => 'Add your first journal entry',
'journal_blank_description' => 'The journal lets you write events that happened to you, and remember them.',
'delete_confirmation' => 'Are you sure you want to delete this journal entry?',
'apply_filter' => 'Apply filter',
'start_date' => 'Start Date',
'end_date' => 'End Date',
'per_page' => 'Per Page',
'sort_order' => 'Sort By Created At',
'ascending' => 'Ascending',
'descending' => 'Descending',
];

View File

@@ -0,0 +1,29 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
// contact creation
'contact_log_contact_created' => 'Created the contact.',
'settings_log_contact_created_with_name' => 'Added :name as a contact.',
// contat description update
'contact_log_contact_description_updated' => 'Updated the description.',
'settings_log_contact_description_updated_with_name' => 'Updated the description of :name.',
// contact description clear
'contact_log_contact_description_cleared' => 'Cleared the description.',
'settings_log_contact_description_cleared_with_name' => 'Cleared the description of :name.',
// contact work information update
'contact_log_contact_work_updated' => 'Updated work information.',
'settings_log_contact_work_updated_with_name' => 'Updated work information of :name.',
// company created
'settings_log_company_created' => 'Created a company called :name.',
];

View File

@@ -0,0 +1,53 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
'subject_line' => 'Reminder for :contact',
'greetings' => 'Hi :username',
'want_reminded_of' => 'You wanted to be reminded of :reason',
'for' => 'For: :name',
'comment' => 'Comment: :comment',
'footer_contact_info' => 'Add, view, complete, and change information about this contact:',
'footer_contact_info2' => 'See :names profile',
'footer_contact_info2_link' => 'See :names profile: :url',
'notification_subject_line' => 'You have an upcoming event',
'notification_description' => 'In :count days (on :date), the following event will happen:',
'stay_in_touch_subject_line' => 'Stay in touch with :name',
'stay_in_touch_subject_description' => 'You asked to be reminded to stay in touch with :name every :frequency day.|You asked to be reminded to stay in touch with :name every :frequency days.',
'notifications_whoops' => 'Whoops!',
'notifications_hello' => 'Hello!',
'notifications_regards' => 'Regards',
'notifications_footer' => 'If youre having trouble clicking the ":actionText" button, copy and paste the URL below into your web browser: [:actionURL](:actionURL)',
'notifications_rights' => 'All rights reserved',
'confirmation_email_title' => 'Monica Email verification',
'confirmation_email_intro'=> 'To validate your email click on the button below',
'confirmation_email_button' => 'Verify email address',
'confirmation_email_bottom' => 'If you did not create an account, no further action is required.',
'password_reset_title' => 'Monica Reset Password Notification',
'password_reset_intro' => 'You are receiving this email because we received a password reset request for your account.',
'password_reset_button' => 'Reset Password',
'password_reset_expiration' => 'This password reset link will expire in :count minutes.',
'password_reset_bottom' => 'If you did not request a password reset, no further action is required.',
'invitation_title' => 'Monica You are invited by :name',
'invitation_intro' => 'Youve been invited by :name (:email) to use Monica, a nice Personal Relationship Management tool.',
'invitation_link' => 'To accept the invitation, click on the link below:',
'invitation_button' => 'Accept invitation',
'invitation_expiration' => 'This link will expire in :count days.',
'export_title' => 'Your export is ready',
'export_description' => 'You requested a data export on :date. It is now ready to download.',
'export_download' => 'Download export',
];

View File

@@ -0,0 +1,25 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => ' Previous',
'next' => 'Next ',
];

View File

@@ -0,0 +1,30 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
'reset' => 'Your password has been reset!',
'sent' => 'If the email you entered exists in our records, youve been sent a password reset link.',
'token' => 'This password reset token is invalid.',
'user' => 'If the email you entered exists in our records, youve been sent a password reset link.',
'changed' => 'Password changed successfully.',
'invalid' => 'Current password you entered is not correct.',
'throttled' => 'Please wait before retrying.',
];

View File

@@ -0,0 +1,539 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
//index
'people_not_found' => 'Contact not found',
'people_list_number_kids' => ':count child|:count children',
'people_list_last_updated' => 'Last consulted:',
'people_list_number_reminders' => ':count reminder|:count reminders',
'people_list_blank_title' => 'You dont have anyone in your account yet',
'people_list_blank_cta' => 'Add someone',
'people_list_sort' => 'Sort',
'people_list_stats' => ':count contact|:count contacts',
'people_list_firstnameAZ' => 'Sort by first name A → Z',
'people_list_firstnameZA' => 'Sort by first name Z → A',
'people_list_lastnameAZ' => 'Sort by last name A → Z',
'people_list_lastnameZA' => 'Sort by last name Z → A',
'people_list_lastactivitydateNewtoOld' => 'Sort by last activity date, newest to oldest',
'people_list_lastactivitydateOldtoNew' => 'Sort by last activity date, oldest to newest',
'people_list_filter_tag' => 'Showing all the contacts tagged with',
'people_list_clear_filter' => 'Clear filter',
'people_list_contacts_per_tags' => ':count contact|:count contacts',
'people_list_show_dead' => 'Show deceased people (:count)',
'people_list_hide_dead' => 'Hide deceased people (:count)',
'people_search' => 'Search your contacts…',
'people_search_no_results' => 'No results found',
'people_search_next' => 'Next',
'people_search_prev' => 'Previous',
'people_search_rows_per_page' => 'Rows per page',
'people_search_of' => 'of',
'people_search_page' => 'Page',
'people_search_all' => 'All',
'people_add_new' => 'Add new person',
'people_list_account_usage' => 'Your account usage: :current/:limit contacts',
'people_list_account_upgrade_title' => 'Upgrade your account to unlock it to its full potential.',
'people_list_account_upgrade_cta' => 'Upgrade now',
'people_list_untagged' => 'View untagged contacts',
'people_list_filter_untag' => 'Showing all untagged contacts',
'archived_contact_readonly' => 'Archived contact cant be edited, please unarchive it first.',
// people add
'people_add_title' => 'Add a new person',
'people_add_missing' => 'No person found add a new one now',
'people_add_firstname' => 'First name',
'people_add_middlename' => 'Middle name (optional)',
'people_add_lastname' => 'Last name (optional)',
'people_add_email' => 'Email (optional)',
'people_add_nickname' => 'Nickname (optional)',
'people_add_cta' => 'Add',
'people_save_and_add_another_cta' => 'Submit and add someone else',
'people_add_success' => ':name has been successfully created',
'people_add_gender' => 'Gender',
'people_delete_success' => 'The contact has been deleted',
'people_delete_message' => 'Delete contact',
'people_delete_confirmation' => 'Are you sure you want to delete :names contact? Deletion is immediate and permanent.',
'people_add_birthday_reminder' => 'Wish happy birthday to :name',
'people_add_birthday_reminder_deceased' => 'On this date, :name would have celebrated their birthday',
'people_add_import' => 'Do you want to <a href=":url">import your contacts</a>?',
'people_edit_email_error' => 'There is already a contact in your account with this email address. Please choose another one.',
'people_export' => 'Export as vCard',
'people_add_reminder_for_birthday' => 'Create an annual birthday reminder',
// show
'section_contact_information' => 'Contact information',
'section_personal_activities' => 'Activities',
'section_personal_reminders' => 'Reminders',
'section_personal_tasks' => 'Tasks',
'section_personal_gifts' => 'Gifts',
'section_personal_notes' => 'Notes',
// archived contacts
'list_link_to_active_contacts' => 'You are viewing archived contacts. See the <a href=":url">list of active contacts</a> instead.',
'list_link_to_archived_contacts' => 'List of archived contacts',
// Header
'me' => 'This is you',
'edit_contact_information' => 'Edit contact information',
'contact_archive' => 'Archive contact',
'contact_unarchive' => 'Unarchive contact',
'contact_archive_help' => 'Archived contacts are not be shown on the contact list, but still appear in search results.',
'call_button' => 'Log a call',
'set_favorite' => 'Favourite contacts are placed at the top of the contact list',
// Stay in touch
'stay_in_touch' => 'Stay in touch',
'stay_in_touch_frequency' => 'Stay in touch every day|Stay in touch every {count} days',
'stay_in_touch_next_date' => 'Next due: {date}',
'stay_in_touch_invalid' => 'The frequency must be a number greater than 0.',
'stay_in_touch_premium' => 'You need to upgrade your account to make use of this feature',
'stay_in_touch_modal_title' => 'Stay in touch',
'stay_in_touch_modal_desc' => 'We can remind you by email to keep in touch with {firstname} at a regular interval.',
'stay_in_touch_modal_label' => 'Send me an email every… {count} day|Send me an email every… {count} days',
// Calls
'modal_call_title' => 'Log a call',
'modal_call_comment' => 'What did you talk about? (optional)',
'modal_call_exact_date' => 'The phone call happened on',
'modal_call_who_called' => 'Who called?',
'modal_call_emotion' => 'Do you want to log how you felt during this call? (optional)',
'calls_add_success' => 'The phone call has been saved.',
'call_delete_confirmation' => 'Are you sure you want to delete this call?',
'call_delete_success' => 'The call has been deleted successfully',
'call_title' => 'Phone calls',
'call_empty_comment' => 'No details',
'call_blank_title' => 'Keep track of the phone calls youve done with {name}',
'call_blank_desc' => 'You called {name}',
'call_you_called' => 'You called',
'call_he_called' => '{name} called',
'call_emotions' => 'Emotions:',
// Conversation
'conversation_blank' => 'Record conversations you have with :name on social media, SMS…',
'conversation_delete_link' => 'Delete the conversation',
'conversation_edit_title' => 'Edit conversation',
'conversation_edit_delete' => 'Are you sure you want to delete this conversation? Deletion is permanent.',
'conversation_add_success' => 'The conversation has been successfully added.',
'conversation_edit_success' => 'The conversation has been successfully updated.',
'conversation_delete_success' => 'The conversation has been successfully deleted.',
'conversation_add_title' => 'Record a new conversation',
'conversation_add_when' => 'When did you have this conversation?',
'conversation_add_who_wrote' => 'Who sent this message?',
'conversation_add_how' => 'How did you communicate?',
'conversation_add_you' => 'You',
'conversation_add_content' => 'Write down what was said',
'conversation_add_what_was_said' => 'What did you say?',
'conversation_add_another' => 'Add another message',
'conversation_add_error' => 'You must add at least one message.',
'conversation_list_table_messages' => 'Messages',
'conversation_list_table_content' => 'Partial content (last message)',
'conversation_list_title' => 'Conversations',
'conversation_list_cta' => 'Log conversation',
// age - birthday
'birthdate_not_set' => 'Birthday is not set',
'age_approximate_in_years' => 'around :age years old',
'age_exact_in_years' => ':age years old',
'age_exact_birthdate' => 'born :date',
// Last called
'last_called' => 'Last called: :date',
'last_talked_to' => 'Last called: {date}',
'last_called_empty' => 'Last called: unknown',
'last_activity_date' => 'Last activity together: :date',
'last_activity_date_empty' => 'Last activity together: unknown',
// additional information
'information_edit_success' => 'The profile has been updated successfully',
'information_edit_title' => 'Edit :names personal information',
'information_edit_max_size' => 'Max :size Kb.',
'information_edit_max_size2' => 'Max {size} Kb.',
'information_edit_firstname' => 'First name',
'information_edit_lastname' => 'Last name (optional)',
'information_edit_description' => 'Description (optional)',
'information_edit_description_help' => 'Used on the contact list to add some context, if necessary.',
'information_edit_unknown' => 'I do not know this persons age',
'information_edit_probably' => 'This person is probably…',
'information_edit_not_year' => 'I know the day and month of this persons birthday, but not the year…',
'information_edit_exact' => 'I know this persons exact birthday…',
'information_edit_birthdate_label' => 'Birthday',
'information_no_work_defined' => 'No work information defined',
'information_work_at' => 'at :company',
'work_add_cta' => 'Update work information',
'work_edit_success' => 'Work information updated',
'work_edit_title' => 'Update :names job information',
'work_edit_job' => 'Job title (optional)',
'work_edit_company' => 'Company (optional)',
'work_information' => 'Work information',
// food preferences
'food_preferences_add_success' => 'Food preferences have been saved',
'food_preferences_edit_description' => 'Perhaps :firstname or someone in the :familys family has an allergy. Or doesnt like a specific bottle of wine. Indicate them here so you will remember it next time you invite them for dinner',
'food_preferences_edit_description_no_last_name' => 'Perhaps :firstname has an allergy. Or doesnt like a specific bottle of wine. Indicate them here so you will remember it next time you invite them for dinner',
'food_preferences_edit_title' => 'Indicate food preferences',
'food_preferences_edit_cta' => 'Save food preferences',
'food_preferences_title' => 'Food preferences',
'food_preferences_cta' => 'Add food preferences',
// reminders
'reminders_blank_title' => 'Is there something you want to be reminded of about :name?',
'reminders_blank_add_activity' => 'Add a reminder',
'reminders_add_title' => 'What would you like to be reminded of about :name?',
'reminders_add_description' => 'Please remind me to…',
'reminders_add_next_time' => 'When is the next time you would like to be reminded about this?',
'reminders_add_once' => 'Remind me about this just once',
'reminders_add_recurrent' => 'Remind me about this every',
'reminders_add_starting_from' => 'starting from the date specified above',
'reminders_add_cta' => 'Add reminder',
'reminders_edit_update_cta' => 'Update reminder',
'reminders_add_error_custom_text' => 'You need to indicate a text for this reminder',
'reminders_create_success' => 'The reminder has been added successfully',
'reminders_delete_success' => 'The reminder has been deleted successfully',
'reminders_update_success' => 'The reminder has been updated successfully',
'reminders_add_optional_comment' => 'Optional comment',
'reminder_frequency_day' => 'every day|every :number days',
'reminder_frequency_week' => 'every week|every :number weeks',
'reminder_frequency_month' => 'every month|every :number months',
'reminder_frequency_year' => 'every year|every :number year',
'reminder_frequency_one_time' => 'on :date',
'reminders_delete_confirmation' => 'Are you sure you want to delete this reminder?',
'reminders_delete_cta' => 'Delete',
'reminders_next_expected_date' => 'on',
'reminders_cta' => 'Add a reminder',
'reminders_description' => 'We will send an email for each one of the reminders below. Reminders are sent every morning the day events will happen. Reminders automatically added for birthdays can not be deleted. If you want to change those dates, edit the birthday of the contacts.',
'reminders_one_time' => 'One time',
'reminders_type_week' => 'week',
'reminders_type_month' => 'month',
'reminders_type_year' => 'year',
'reminders_birthday' => 'Birthday of :name',
'reminders_free_plan_warning' => 'You are on the Free plan. No emails are sent on this plan. To receive your reminders by email, upgrade your account.',
// relationships
'relationship_form_add' => 'Add a new relationship',
'relationship_form_edit' => 'Edit an existing relationship',
'relationship_form_is_with' => 'This person is…',
'relationship_form_is_with_name' => ':name is…',
'relationship_form_add_choice' => 'Who is the relationship with?',
'relationship_form_create_contact' => 'Add a new person',
'relationship_form_associate_contact' => 'An existing contact',
'relationship_form_associate_dropdown' => 'Search and select an existing contact from the dropdown below',
'relationship_form_associate_dropdown_placeholder' => 'Search and select an existing contact',
'relationship_form_also_create_contact' => 'Create a Contact entry for this person.',
'relationship_form_add_description' => 'This will let you treat this person like any other contact.',
'relationship_form_add_no_existing_contact' => 'You dont have any contacts who can be related to :name at the moment.',
'relationship_delete_confirmation' => 'Are you sure you want to delete this relationship? Deletion is permanent.',
'relationship_unlink_confirmation' => 'Are you sure you want to delete this relationship? This person will not be deleted only the relationship between the two.',
'relationship_form_add_success' => 'The relationship has been successfully set.',
'relationship_form_deletion_success' => 'The relationship has been deleted.',
// tasks
'tasks_title' => 'Tasks',
'tasks_blank_title' => 'You dont have any tasks yet.',
'tasks_form_title' => 'Title',
'tasks_form_description' => 'Description (optional)',
'tasks_add_task' => 'Add a task',
'tasks_delete_success' => 'The task has been deleted successfully',
'tasks_complete_success' => 'The task has changed status successfully',
// activities
'activity_title' => 'Activities',
'activity_type_category_simple_activities' => 'Simple activities',
'activity_type_category_sport' => 'Sport',
'activity_type_category_food' => 'Food',
'activity_type_category_cultural_activities' => 'Cultural activities',
'activity_type_just_hung_out' => 'just hung out',
'activity_type_watched_movie_at_home' => 'watched a movie at home',
'activity_type_talked_at_home' => 'just talked at home',
'activity_type_did_sport_activities_together' => 'played a sport together',
'activity_type_ate_at_his_place' => 'ate at their place',
'activity_type_went_bar' => 'went to a bar',
'activity_type_ate_at_home' => 'ate at home',
'activity_type_picnicked' => 'picnicked',
'activity_type_ate_restaurant' => 'ate at a restaurant',
'activity_type_went_theater' => 'went to the theater',
'activity_type_went_concert' => 'went to a concert',
'activity_type_went_play' => 'went to a play',
'activity_type_went_museum' => 'went to the museum',
'activities_add_activity' => 'Add activity',
'activities_add_more_details' => 'Add more details',
'activities_add_emotions' => 'Add emotions',
'activities_add_category' => 'Indicate a category',
'activities_add_participants_cta' => 'Add participants',
'activities_item_information' => ':Activity. Happened on :date',
'activities_add_title' => 'What did you do with {name}?',
'activities_summary' => 'Describe what you did',
'activities_add_pick_activity' => 'Would you like to categorise this activity? You dont have to, but it will give you statistics later on (optional)',
'activities_add_date_occured' => 'The activity happened on…',
'activities_add_participants' => 'Who, apart from {name}, participated in this activity? (optional)',
'activities_add_emotions_title' => 'Do you want to log how you felt during this activity? (optional)',
'activities_blank_title' => 'Keep track of what youve done with {name} in the past, and what youve talked about',
'activities_blank_add_activity' => 'Add an activity',
'activities_add_success' => 'The activity has been added successfully',
'activities_add_error' => 'Error when adding the activity',
'activities_update_success' => 'The activity has been updated successfully',
'activities_delete_success' => 'The activity has been deleted successfully',
'activities_who_was_involved' => 'Who was involved?',
'activities_activity' => 'Activity Category',
'activities_view_activities_report' => 'View activities report',
'activities_profile_title' => 'Activities report between :name and you',
'activities_profile_subtitle' => 'Youve logged :total_activities activity with :name in total and :activities_last_twelve_months in the last 12 months so far.|Youve logged :total_activities activities with :name in total and :activities_last_twelve_months in the last 12 months so far.',
'activities_profile_year_summary_activity_types' => 'Here is a breakdown of the type of activities youve done together in :year',
'activities_profile_year_summary' => 'Here is what you two have done in :year',
'activities_profile_number_occurences' => ':value activity|:value activities',
'activities_list_participants' => 'Participants ({total}):',
'activities_list_emotions' => 'Emotions felt:',
'activities_list_date' => 'Happened on',
'activities_list_category' => 'Category:',
// notes
'notes_create_success' => 'The note has been created successfully',
'notes_update_success' => 'The note has been saved successfully',
'notes_delete_success' => 'The note has been deleted successfully',
'notes_add_cta' => 'Add note',
'notes_favorite' => 'Add/remove from favourites',
'notes_delete_title' => 'Delete a note',
'notes_delete_confirmation' => 'Are you sure you want to delete this note? Deletion is permanent',
// gifts
'gifts_title' => 'Gifts',
'gifts_add_success' => 'The gift has been added successfully',
'gifts_delete_success' => 'The gift has been deleted successfully',
'gifts_delete_confirmation' => 'Are you sure you want to delete this gift?',
'gifts_add_gift' => 'Add a gift',
'gifts_link' => 'Link',
'gifts_for' => 'For: {name}',
'gifts_delete_cta' => 'Delete',
'gifts_add_title' => 'Gift management for :name',
'gifts_add_gift_idea' => 'Gift idea',
'gifts_add_gift_already_offered' => 'Gift given',
'gifts_add_gift_received' => 'Gift received',
'gifts_add_gift_title' => 'What is this gift?',
'gifts_add_gift_name' => 'Gift name',
'gifts_add_link' => 'Link to the web page (optional)',
'gifts_add_value' => 'Value (optional)',
'gifts_add_comment' => 'Comment (optional)',
'gifts_add_recipient' => 'Recipient (optional)',
'gifts_add_recipient_field' => 'Recipient',
'gifts_add_photo' => 'Photo (optional)',
'gifts_add_photo_title' => 'Add a photo for this gift',
'gifts_add_someone' => 'This gift is for someone in {name}s family in particular',
'gifts_delete_title' => 'Delete a gift',
'gifts_ideas' => 'Gift ideas',
'gifts_offered' => 'Gifts given',
'gifts_offered_as_an_idea' => 'Mark as an idea',
'gifts_received' => 'Gifts received',
'gifts_view_comment' => 'View comment',
'gifts_mark_offered' => 'Mark as given',
'gifts_update_success' => 'The gift has been updated successfully',
'gifts_add_date' => 'Date (optional)',
// debts
'debt_delete_confirmation' => 'Are you sure you want to delete this debt?',
'debt_delete_success' => 'The debt has been deleted successfully',
'debt_add_success' => 'The debt has been added successfully',
'debt_title' => 'Debts',
'debt_add_cta' => 'Add debt',
'debt_you_owe' => 'You owe :amount',
'debt_they_owe' => ':name owes you :amount',
'debt_add_title' => 'Debt management',
'debt_add_you_owe' => 'You owe :name',
'debt_add_they_owe' => ':name owes you',
'debt_add_amount' => 'the sum of',
'debt_add_reason' => 'for the following reason (optional)',
'debt_add_add_cta' => 'Add debt',
'debt_edit_update_cta' => 'Update debt',
'debt_edit_success' => 'The debt has been updated successfully',
'debts_blank_title' => 'Manage debts you owe to :name or :name owes you',
// tags
'tag_edit' => 'Edit tag',
'tag_add' => 'Add tags',
'tag_add_search' => 'Add or search tags',
'tag_no_tags' => 'No tags yet',
// Introductions
'introductions_sidebar_title' => 'How you met',
'introductions_blank_cta' => 'Indicate how you met :name',
'introductions_title_edit' => 'How did you meet :name?',
'introductions_additional_info' => 'Explain how and where you met',
'introductions_edit_met_through' => 'Has someone introduced you to this person?',
'introductions_no_met_through' => 'No one',
'introductions_first_met_date' => 'Date you met',
'introductions_no_first_met_date' => 'I dont know the date we met',
'introductions_first_met_date_known' => 'This is the date we met',
'introductions_add_reminder' => 'Add a reminder to celebrate this encounter on the anniversary this event happened',
'introductions_update_success' => 'Youve successfully updated the information about how you met this person',
'introductions_met_through' => 'Met through <a href=":url">:name</a>',
'introductions_met_date' => 'Met on :date',
'introductions_reminder_title' => 'Anniversary of the day you first met',
// Deceased
'deceased_reminder_title' => 'Anniversary of the death of :name',
'deceased_mark_person_deceased' => 'Mark this as deceased',
'deceased_know_date' => 'I know the date that this person died',
'deceased_add_reminder' => 'Add a reminder for this date',
'deceased_label' => 'Deceased',
'deceased_date_label' => 'Deceased date',
'deceased_label_with_date' => 'Deceased on :date',
'deceased_age' => 'Age at death',
// Contact information
'contact_info_title' => 'Contact information',
'contact_info_form_content' => 'Content',
'contact_info_form_contact_type' => 'Contact type',
'contact_info_form_personalize' => 'Personalize',
'contact_info_address' => 'Lives in',
// Addresses
'contact_address_title' => 'Addresses',
'contact_address_form_name' => 'Label (optional)',
'contact_address_form_street' => 'Street (optional)',
'contact_address_form_city' => 'City (optional)',
'contact_address_form_province' => 'Province (optional)',
'contact_address_form_postal_code' => 'Postal code (optional)',
'contact_address_form_country' => 'Country (optional)',
'contact_address_form_latitude' => 'Latitude (numbers only) (optional)',
'contact_address_form_longitude' => 'Longitude (numbers only) (optional)',
// Pets
'pets_kind' => 'Kind of pet',
'pets_name' => 'Name (optional)',
'pets_create_success' => 'The pet has been successfully added',
'pets_update_success' => 'The pet has been updated',
'pets_delete_success' => 'The pet has been deleted',
'pets_title' => 'Pets',
'pets_reptile' => 'Reptile',
'pets_bird' => 'Bird',
'pets_cat' => 'Cat',
'pets_dog' => 'Dog',
'pets_fish' => 'Fish',
'pets_hamster' => 'Hamster',
'pets_horse' => 'Horse',
'pets_rabbit' => 'Rabbit',
'pets_rat' => 'Rat',
'pets_small_animal' => 'Small animal',
'pets_other' => 'Other',
// life events
'life_event_list_tab_life_events' => 'Life events',
'life_event_list_tab_other' => 'Notes, reminders, …',
'life_event_list_title' => 'Life events',
'life_event_blank' => 'Log what happens to the life of {name} for your future reference.',
'life_event_list_cta' => 'Add life event',
'life_event_create_category' => 'All categories',
'life_event_create_life_event' => 'Add life event',
'life_event_create_default_title' => 'Title (optional)',
'life_event_create_default_story' => 'Story (optional)',
'life_event_create_date' => 'You do not need to indicate a month or a day only the year is mandatory.',
'life_event_create_default_description' => 'Add information about what you know',
'life_event_create_add_yearly_reminder' => 'Add a yearly reminder for this event',
'life_event_create_success' => 'The life event has been added',
'life_event_delete_title' => 'Delete a life event',
'life_event_delete_description' => 'Are you sure you want to delete this life event? Deletion is permanent.',
'life_event_delete_success' => 'The life event has been deleted',
'life_event_date_it_happened' => 'Date it happened',
'life_event_category_work_education' => 'Work & education',
'life_event_category_family_relationships' => 'Family & relationships',
'life_event_category_home_living' => 'Home & living',
'life_event_category_health_wellness' => 'Health & wellness',
'life_event_category_travel_experiences' => 'Travel & experiences',
'life_event_sentence_new_job' => 'Started a new job',
'life_event_sentence_retirement' => 'Retired',
'life_event_sentence_new_school' => 'Started school',
'life_event_sentence_study_abroad' => 'Studied abroad',
'life_event_sentence_volunteer_work' => 'Started volunteering',
'life_event_sentence_published_book_or_paper' => 'Published a paper',
'life_event_sentence_military_service' => 'Started military service',
'life_event_sentence_new_relationship' => 'Started a relationship',
'life_event_sentence_engagement' => 'Got engaged',
'life_event_sentence_marriage' => 'Got married',
'life_event_sentence_anniversary' => 'Anniversary',
'life_event_sentence_expecting_a_baby' => 'Expects a baby',
'life_event_sentence_new_child' => 'Had a child',
'life_event_sentence_new_family_member' => 'Added a family member',
'life_event_sentence_new_pet' => 'Got a pet',
'life_event_sentence_end_of_relationship' => 'Ended a relationship',
'life_event_sentence_loss_of_a_loved_one' => 'Lost a loved one',
'life_event_sentence_moved' => 'Moved',
'life_event_sentence_bought_a_home' => 'Bought a home',
'life_event_sentence_home_improvement' => 'Made a home improvement',
'life_event_sentence_holidays' => 'Went on holidays',
'life_event_sentence_new_vehicle' => 'Got a new vehicle',
'life_event_sentence_new_roommate' => 'Got a roommate',
'life_event_sentence_overcame_an_illness' => 'Overcame an illness',
'life_event_sentence_quit_a_habit' => 'Quit a habit',
'life_event_sentence_new_eating_habits' => 'Started new eating habits',
'life_event_sentence_weight_loss' => 'Lost weight',
'life_event_sentence_wear_glass_or_contact' => 'Started to wear glass or contact lenses',
'life_event_sentence_broken_bone' => 'Broke a bone',
'life_event_sentence_removed_braces' => 'Removed braces',
'life_event_sentence_surgery' => 'Had surgery',
'life_event_sentence_dentist' => 'Went to the dentist',
'life_event_sentence_new_sport' => 'Started a sport',
'life_event_sentence_new_hobby' => 'Started a hobby',
'life_event_sentence_new_instrument' => 'Learned a new instrument',
'life_event_sentence_new_language' => 'Learned a new language',
'life_event_sentence_tattoo_or_piercing' => 'Got a tattoo or piercing',
'life_event_sentence_new_license' => 'Got a license',
'life_event_sentence_travel' => 'Traveled',
'life_event_sentence_achievement_or_award' => 'Got an achievement or award',
'life_event_sentence_changed_beliefs' => 'Changed beliefs',
'life_event_sentence_first_word' => 'Spoke for the first time',
'life_event_sentence_first_kiss' => 'Kissed for the first time',
// documents
'document_list_title' => 'Documents',
'document_list_cta' => 'Upload document',
'document_list_blank_desc' => 'Here you can store documents related to this person.',
'document_upload_zone_cta' => 'Upload a file',
'document_upload_zone_progress' => 'Uploading the document…',
'document_upload_zone_error' => 'There was an error uploading the document. Please try again below.',
// Photos
'photo_title' => 'Photos',
'photo_list_title' => 'Related photos',
'photo_list_cta' => 'Upload photo',
'photo_list_blank_desc' => 'You can store images about this contact. Upload one now!',
'photo_upload_zone_cta' => 'Upload a photo',
'photo_current_profile_pic' => 'Current profile picture',
'photo_make_profile_pic' => 'Make profile picture',
'photo_delete' => 'Delete photo',
'photo_next' => 'Next photo ',
'photo_previous' => ' Previous photo',
// Avatars
'avatar_change_title' => 'Change your avatar',
'avatar_question' => 'Which avatar would you like to use?',
'avatar_default_avatar' => 'The default avatar',
'avatar_adorable_avatar' => 'The Adorable avatar',
'avatar_gravatar' => 'The Gravatar associated with the email address of this person. <a href="https://gravatar.com/">Gravatar</a> is a global system that lets users associate email addresses with photos.',
'avatar_current' => 'Keep the current avatar',
'avatar_photo' => 'From a photo that you upload',
'avatar_crop_new_avatar_photo' => 'Crop new avatar photo',
// emotions
'emotion_this_made_me_feel' => 'This made you feel…',
// logs
'auditlogs_link' => 'History',
'auditlogs_title' => 'Everything that happened to :name',
'auditlogs_breadcrumb' => 'History',
'auditlogs_author' => 'By :name on :date',
// contact field label
'contact_field_label_home' => 'Home',
'contact_field_label_work' => 'Work',
'contact_field_label_cell' => 'Mobile',
'contact_field_label_fax' => 'Fax',
'contact_field_label_pager' => 'Pager',
'contact_field_label_main' => 'Main',
'contact_field_label_other' => 'Other',
'contact_field_label_personal' => 'Personal',
];

View File

@@ -0,0 +1,16 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
'type_birthday' => 'Wish happy birthday to',
'type_phone_call' => 'Call',
'type_lunch' => 'Lunch with',
'type_hangout' => 'Hangout with',
'type_email' => 'Email',
'type_birthday_kid' => 'Wish happy birthday to the child of',
];

View File

@@ -0,0 +1,557 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
'sidebar_settings' => 'Account settings',
'sidebar_personalization' => 'Personalisation',
'sidebar_settings_storage' => 'Storage',
'sidebar_settings_export' => 'Export data',
'sidebar_settings_users' => 'Users',
'sidebar_settings_subscriptions' => 'Subscription',
'sidebar_settings_import' => 'Import data',
'sidebar_settings_tags' => 'Tag management',
'sidebar_settings_api' => 'API',
'sidebar_settings_dav' => 'DAV Resources',
'sidebar_settings_security' => 'Security',
'sidebar_settings_auditlogs' => 'Audit log',
'title_general' => 'General Information',
'title_i18n' => 'International settings',
'title_layout' => 'Layout',
'me_title' => 'Me as a contact',
'me_help' => 'This is the contact that represents <em>you</em> in Monica',
'me_select' => 'Select a contact',
'me_no_contact' => 'No contact selected yet.',
'me_select_click' => 'Click here to select a contact.',
'me_remove_contact' => 'Remove the association',
'me_choose' => 'Choose yourself',
'me_choose_placeholder' => 'Choose yourself',
'export_title' => 'Export your account data',
'export_be_patient' => 'Click the button to start the export. It might take several minutes to process the export please be patient and do not spam the button.',
'export_title_sql' => 'Export to SQL',
'export_sql_explanation' => 'Exporting your data in SQL format allows you to take your data and import it to your own Monica instance. This is only valuable if you do have your own server.',
'export_sql_cta' => 'Export to SQL',
'export_sql_link_instructions' => 'Note: <a href=":url">read the instructions</a> to learn more about importing this file to your instance.',
'export_title_json' => 'Export to Json',
'export_submitted' => 'Your export has been submitted, it will be available in a few moment…',
'export_json_explanation' => 'Exporting your data in Json format for backup.',
'export_json_beta' => 'Json export is in preview mode. Tell us what you think about it:',
'export_json_cta' => 'Export to Json',
'export_header_type' => 'Type',
'export_header_timestamp' => 'Creation date',
'export_header_status' => 'Status',
'export_header_actions' => 'Actions',
'export_last_title' => 'Last exports',
'export_empty_title' => 'No exports yet',
'export_type_json' => 'Json export',
'export_type_sql' => 'SQL export',
'export_status_todo' => 'Submitted',
'export_status_doing' => 'Doing',
'export_status_done' => 'Done',
'export_status_failed' => 'Failed',
'export_not_done' => 'Download impossible, this export is not done yet.',
'firstname' => 'First name',
'lastname' => 'Last name',
'name_order' => 'Name order',
'name_order_firstname_lastname' => '<First name> <Last name> John Doe',
'name_order_lastname_firstname' => '<Last name> <First name> Doe John',
'name_order_firstname_lastname_nickname' => '<First name> <Last name> (<Nickname>) John Doe (Rambo)',
'name_order_firstname_nickname_lastname' => '<First name> (<Nickname>) <Last name> John (Rambo) Doe',
'name_order_lastname_firstname_nickname' => '<Last name> <First name> (<Nickname>) Doe John (Rambo)',
'name_order_lastname_nickname_firstname' => '<Last name> (<Nickname>) <First name> Doe (Rambo) John',
'name_order_nickname_firstname_lastname' => '<Nickname> (<First name> <Last name>) Rambo (John Doe)',
'name_order_nickname_lastname_firstname' => '<Nickname> (<Last name> <First name>) Rambo (Doe John)',
'name_order_nickname' => '<Nickname> Rambo',
'currency' => 'Currency',
'name' => 'Your name: :name',
'email' => 'Email address',
'email_placeholder' => 'Enter email',
'email_help' => 'This is the email used to login, and this is where Monica will send your reminders.',
'timezone' => 'Timezone',
'temperature_scale' => 'Temperature scale',
'temperature_scale_fahrenheit' => 'Fahrenheit (°F)',
'temperature_scale_celsius' => 'Celsius (°C)',
'layout' => 'Layout',
'layout_small' => 'Maximum 1200 pixels wide',
'layout_big' => 'Full width of the browser',
'save' => 'Update preferences',
'delete_title' => 'Delete your account',
'delete_desc' => 'Do you wish to delete your account? Deletion is permanent and all of your data will be erased permanently. If you have a subscription, it will be cancelled immediately.',
'delete_other_desc' => 'Your data in the main database will be deleted immediately. As described in our privacy policy, we carry out securely encrypted backups of the database every day. These backups are kept for 30 days after which they are completely deleted. We cannot delete specific data from the backups we hold any earlier than this. All of your data will be completely deleted no later than 31 days after your accounts deletion.',
'reset_desc' => 'Do you wish to reset your account? This will remove all your contacts, and all of the data associated with them. Your account will not be deleted.',
'reset_title' => 'Reset your account',
'reset_cta' => 'Reset account',
'reset_notice' => 'Are you sure you want to reset your account? This removes all data permanently and it cannot be undone.',
'reset_success' => 'Your account has been successfully reset.',
'delete_notice' => 'Are you sure you want to delete your account? This is permanent and cannot be undone. All of your data will be deleted and will not be recoverable.',
'delete_cta' => 'Delete account',
'settings_success' => 'Preferences updated!',
'locale' => 'Language used in the app',
'locale_help' => 'Do you want to help translating Monica or add a new language? Please follow <a href=":url" target="_blank" lang="en">this link for more information</a>.',
'locale_ar' => 'Arabic',
'locale_cs' => 'Czech',
'locale_de' => 'German',
'locale_el' => 'Greek',
'locale_en' => 'English',
'locale_en-GB' => 'English (United Kingdom)',
'locale_es' => 'Spanish',
'locale_fr' => 'French',
'locale_he' => 'Hebrew',
'locale_hr' => 'Croatian',
'locale_id' => 'Indonesian',
'locale_it' => 'Italian',
'locale_ja' => 'Japanese',
'locale_nl' => 'Dutch',
'locale_pt' => 'Portuguese',
'locale_pt-BR' => 'Brazilian Portuguese',
'locale_ru' => 'Russian',
'locale_sv' => 'Swedish',
'locale_vi' => 'Vietnamese',
'locale_zh' => 'Chinese Simplified',
'locale_zh-TW' => 'Chinese Traditional',
'locale_tr' => 'Turkish',
'security_title' => 'Security',
'security_help' => 'Change security matters for your account.',
'password_change' => 'Change your password',
'password_current' => 'Current password',
'password_current_placeholder' => 'Enter your current password',
'password_new1' => 'New password',
'password_new1_placeholder' => 'Enter your new password',
'password_new2' => 'Confirm your new password',
'password_new2_placeholder' => 'Retype your new password',
'password_btn' => 'Change password',
'2fa_title' => 'Two Factor Authentication',
'2fa_otp_title' => 'Two Factor Authentication mobile application',
'2fa_enable_title' => 'Enable Two Factor Authentication',
'2fa_enable_description' => 'Enable Two Factor Authentication to increase the security of your account.',
'2fa_enable_otp' => 'Open up your Two Factor Authentication mobile app and scan the following QR barcode:',
'2fa_enable_otp_help' => 'If your Two Factor Authentication mobile app does not support QR barcodes, enter in the following code:',
'2fa_enable_otp_validate' => 'Please validate the new device youve just set up:',
'2fa_enable_success' => 'Two Factor Authentication activated',
'2fa_enable_error' => 'Error when trying to activate Two Factor Authentication',
'2fa_enable_error_already_set' => 'Two Factor Authentication is already activated',
'2fa_disable_title' => 'Disable Two Factor Authentication',
'2fa_disable_description' => 'Disable Two Factor Authentication for your account. Be careful, your account will be much less secure!',
'2fa_disable_success' => 'Two Factor Authentication disabled',
'2fa_disable_error' => 'Error when trying to disable Two Factor Authentication',
'webauthn_title' => 'Security key — WebAuthn protocol',
'webauthn_enable_description' => 'Add a new security key',
'webauthn_key_name_help' => 'Give your key a name.',
'webauthn_key_name' => 'Key name:',
'webauthn_success' => 'Your key is detected and validated.',
'webauthn_last_use' => 'Last use: {timestamp}',
'webauthn_delete_confirmation' => 'Are you sure you want to delete this key?',
'webauthn_delete_success' => 'Key deleted',
'webauthn_insertKey' => 'Insert your security key.',
'webauthn_buttonAdvise' => 'If your security key has a button, press it.',
'webauthn_noButtonAdvise' => 'If it does not, remove it and insert it again.',
'webauthn_not_supported' => 'Your browser doesnt currently support WebAuthn.',
'webauthn_not_secured' => 'WebAuthn only supports secure connections. Please load this page with https scheme.',
'webauthn_error_already_used' => 'This key is already registered. Its not necessary to register it again.',
'webauthn_error_not_allowed' => 'The operation either timed out or was not allowed.',
'recovery_title' => 'Recovery codes',
'recovery_show' => 'Get recovery codes',
'recovery_copy_help' => 'Copy codes in your clipboard',
'recovery_help_intro' => 'These are your recovery codes:',
'recovery_help_information' => 'You can use each recovery code once.',
'recovery_clipboard' => 'Codes copied to the clipboard.',
'recovery_generate' => 'Generate new codes…',
'recovery_generate_help' => 'Generating new codes will invalidate previously generated codes.',
'recovery_already_used_help' => 'This code has already been used.',
'users_list_title' => 'Users with access to your account',
'users_list_add_user' => 'Invite a new user',
'users_list_you' => 'Thats you',
'users_list_invitations_title' => 'Pending invitations',
'users_list_invitations_explanation' => 'Below are the people youve invited to join Monica as a collaborator.',
'users_list_invitations_invited_by' => 'invited by :name',
'users_list_invitations_sent_date' => 'sent on :date',
'users_blank_title' => 'You are the only one who has access to this account.',
'users_blank_add_title' => 'Would you like to invite someone else?',
'users_blank_description' => 'This person will have the same access that you have, and will be able to add, edit or delete contact information.',
'users_blank_cta' => 'Invite someone',
'users_add_title' => 'Invite a new user to your account by email',
'users_add_description' => 'This person will have the same access as you do, including inviting or deleting other users, including you. Make sure you trust this person before giving them access.',
'users_add_email_field' => 'Enter the email of the person you want to invite',
'users_add_confirmation' => 'I confirm that I want to invite this user to my account. I understand that this person will have access to ALL of my data and see exactly what I see.',
'users_add_cta' => 'Invite user by email',
'users_accept_title' => 'Accept invitation and create a new account',
'users_error_please_confirm' => 'Please confirm that you want to invite this user before proceeding with the invitation',
'users_error_email_already_taken' => 'This email is already taken. Please choose another one',
'users_error_already_invited' => 'You already have invited this user. Please choose another email address.',
'users_error_email_not_similar' => 'This is not the email of the person whove invited you.',
'users_invitation_deleted_confirmation_message' => 'The invitation has been successfully deleted',
'users_invitations_delete_confirmation' => 'Are you sure you want to delete this invitation?',
'users_list_delete_confirmation' => 'Are you sure to delete this user from your account?',
'users_invitation_need_subscription' => 'Adding more users requires a subscription.',
'subscriptions_account_current_plan' => 'Your current plan',
'subscriptions_account_current_legacy' => 'Current plan, not selectable anymore:',
'subscriptions_account_current_paid_plan' => 'You are on the :name plan. Thanks so much for being a subscriber.',
'subscriptions_account_next_billing_title' => 'Next bill',
'subscriptions_account_next_billing' => 'Your subscription will auto-renew on <strong>:date</strong>.',
'subscriptions_account_bill_monthly' => 'Well bill you <strong>:price</strong> for another <strong>month</strong>.',
'subscriptions_account_bill_annual' => 'Well bill you <strong>:price</strong> for another <strong>year</strong>.',
'subscriptions_account_change' => 'Change plan',
'subscriptions_account_cancel_title' => 'Cancel subscription',
'subscriptions_account_cancel_action' => 'Cancel subscription',
'subscriptions_account_cancel' => 'You can cancel your subscription at any time.',
'subscriptions_account_free_plan' => 'You are on the free plan.',
'subscriptions_account_free_plan_upgrade' => 'You can upgrade your account to the :name plan, which costs $:price per month. Here are the advantages:',
'subscriptions_account_free_plan_benefits_users' => 'Unlimited number of users',
'subscriptions_account_free_plan_benefits_reminders' => 'Reminders by email',
'subscriptions_account_free_plan_benefits_import_data_vcard' => 'Import your contacts with vCard',
'subscriptions_account_free_plan_benefits_support' => 'Support the project in the long run, so we can introduce more great features.',
'subscriptions_account_upgrade' => 'Upgrade your account',
'subscriptions_account_upgrade_title' => 'Upgrade Monica today and have more meaningful relationships.',
'subscriptions_account_upgrade_choice' => 'Pick a plan below and join over :customers persons who upgraded their Monica.',
'subscriptions_account_update_title' => 'Update Monica subscription',
'subscriptions_account_update_description' => 'You can change your subscriptions frequency here.',
'subscriptions_account_update_information' => 'You will be billed immediately for the new amount. Your subscription will extend to the new period, depending on your choice.',
'subscriptions_account_invoices' => 'Invoices',
'subscriptions_account_invoices_download' => 'Download',
'subscriptions_account_invoices_subscription' => 'Subscription from :startDate to :endDate',
'subscriptions_account_payment' => 'Which payment option fits you best?',
'subscriptions_account_confirm_payment' => 'Your payment is currently incomplete, please <a href=":url">confirm your payment</a>.',
'subscriptions_downgrade_title' => 'Downgrade your account to the free plan',
'subscriptions_downgrade_limitations' => 'The free plan has limitations. In order to be able to downgrade, you need to pass the checklist below:',
'subscriptions_downgrade_rule_users' => 'You must have only 1 user in your account',
'subscriptions_downgrade_rule_users_constraint' => 'You currently have <a href=":url">1 user</a> in your account.|You currently have <a href=":url">:count users</a> in your account.',
'subscriptions_downgrade_rule_invitations' => 'You must not have any pending invitations',
'subscriptions_downgrade_rule_invitations_constraint' => 'You currently have <a href=":url">1 pending invitation</a>.|You currently have <a href=":url">:count pending invitations</a>.',
'subscriptions_downgrade_rule_contacts' => 'You must not have more than :number active contacts',
'subscriptions_downgrade_rule_contacts_constraint' => 'You currently have <a href=":url">1 contact</a>.|You currently have <a href=":url">:count contacts</a>.',
'subscriptions_downgrade_rule_contacts_archive' => 'We can also <a href=":url">archive all your contacts for you</a> that would clear this rule and let you proceed with your accounts downgrade process.',
'subscriptions_downgrade_cta' => 'Downgrade',
'subscriptions_downgrade_success' => 'You are back to the Free plan!',
'subscriptions_downgrade_thanks' => 'Thanks so much for trying the paid plan. We keep adding new features on Monica all the time so you might want to come back in the future to see if you might be interested in taking a subscription again.',
'subscriptions_back' => 'Back to settings',
'subscriptions_upgrade_title' => 'Upgrade your account',
'subscriptions_upgrade_choose' => 'You picked the :plan plan.',
'subscriptions_upgrade_infos' => 'We couldnt be happier. Enter your payment info below.',
'subscriptions_upgrade_name' => 'Name on card',
'subscriptions_upgrade_zip' => 'ZIP or postal code',
'subscriptions_upgrade_credit' => 'Credit or debit card',
'subscriptions_upgrade_submit' => 'Pay {amount}',
'subscriptions_upgrade_charge' => 'Well charge your card :price now. The next charge will be on :date. If you ever change your mind, you can cancel at any time, no questions asked.',
'subscriptions_upgrade_charge_handled' => 'The payment is handled by <a href=":url">Stripe</a>. No card information touches our server.',
'subscriptions_upgrade_success' => 'Thank you! You are now subscribed.',
'subscriptions_upgrade_thanks' => 'Welcome to the community of people who try to make the world a better place.',
'subscriptions_payment_confirm_title' => 'Confirm your :amount payment',
'subscriptions_payment_confirm_information' => 'Extra confirmation is needed to process your payment. Please confirm your payment by filling out your payment details below.',
'subscriptions_payment_succeeded_title' => 'Payment Successful',
'subscriptions_payment_succeeded' => 'This payment was already successfully confirmed.',
'subscriptions_payment_cancelled_title' => 'Payment Cancelled',
'subscriptions_payment_cancelled' => 'This payment was cancelled.',
'subscriptions_payment_error_name' => 'Please provide your name.',
'subscriptions_payment_success' => 'The payment was successful.',
'subscriptions_pdf_title' => 'Your :name monthly subscription',
'subscriptions_plan_frequency_year' => ':amount / year',
'subscriptions_plan_frequency_month' => ':amount / month',
'subscriptions_plan_choose' => 'Choose this plan',
'subscriptions_plan_year_title' => 'Pay annually',
'subscriptions_plan_year_bonus' => 'Peace of mind for a whole year',
'subscriptions_plan_month_title' => 'Pay monthly',
'subscriptions_plan_month_bonus' => 'Cancel any time',
'subscriptions_plan_include1' => 'Included with your upgrade:',
'subscriptions_plan_include2' => 'Unlimited number of contacts • Unlimited number of users • Reminders by email • Import with vCard • Personalization of the contact sheet',
'subscriptions_plan_include3' => '100% of the profits go the development of this great open source project.',
'subscriptions_help_title' => 'Additional details you may be curious about',
'subscriptions_help_opensource_title' => 'What is an open source project?',
'subscriptions_help_opensource_desc' => 'Monica is an open source project. This means it is built by a community who wants to build a great tool for the greater good. Being open source means the code is publicly available on GitHub, and everyone can inspect it, modify it or enhance it. All the money we raise is dedicated to building better features, paying for more powerful servers, and paying other costs. Thanks for your help. We couldnt do it without you.',
'subscriptions_help_limits_title' => 'Is there a limit to the number of contacts we can have on the free plan?',
'subscriptions_help_limits_plan' => 'Yes. Free plans let you manage :number contacts.',
'subscriptions_help_discounts_title' => 'Do you have discounts for non-profits and education?',
'subscriptions_help_discounts_desc' => 'We do! Monica is free for students, and free for non-profits and charities. Just contact <a href=":support">the support</a> with a proof of your status and well apply this special status in your account.',
'subscriptions_help_change_title' => 'What if I change my mind?',
'subscriptions_help_change_desc' => 'You can cancel anytime, no questions asked, and all by yourself no need to contact support. However, you will not be refunded for the current period.',
'stripe_error_card' => 'Your card was declined. Decline message is: :message',
'stripe_error_api_connection' => 'Network communication with Stripe failed. Try again later.',
'stripe_error_rate_limit' => 'Too many requests with Stripe right now. Try again later.',
'stripe_error_invalid_request' => 'Invalid parameters. Try again later.',
'stripe_error_authentication' => 'Wrong authentication with Stripe',
'import_title' => 'Import contacts in your account',
'import_cta' => 'Upload contacts',
'import_stat' => 'Youve imported :number files so far.',
'import_result_stat' => 'Uploaded vCard with 1 contact (:total_imported imported, :total_skipped skipped)|Uploaded vCard with :total_contacts contacts (:total_imported imported, :total_skipped skipped)',
'import_view_report' => 'View report',
'import_in_progress' => 'The import is in progress. Reload the page in one minute.',
'import_upload_title' => 'Import your contacts from a vCard file',
'import_upload_rules_desc' => 'We do however have some rules:',
'import_upload_rule_format' => 'We support <code>.vcard</code> and <code>.vcf</code> files.',
'import_upload_rule_vcard' => 'We support the vCard 3.0 format, which is the default format for macOSs Contacts.app and Google Contacts.',
'import_upload_rule_instructions' => 'Export instructions for <a href=":url1" target="_blank" rel="noopener noreferrer">macOS Contacts.app</a> and <a href=":url2" target="_blank" rel="noopener noreferrer">Google Contacts</a>.',
'import_upload_rule_multiple' => 'If your contacts have multiple email addresses or phone numbers, only the first entry will be saved.',
'import_upload_rule_limit' => 'Files are limited to 10MB.',
'import_upload_rule_time' => 'It might take up to a minute to upload the contacts and process them. Please be patient.',
'import_upload_rule_cant_revert' => 'Please make sure data is accurate before uploading, as you cant undo the upload.',
'import_upload_form_file' => 'Your <code>.vcf</code> or <code>.vCard</code> file:',
'import_upload_behaviour' => 'Import behaviour:',
'import_upload_behaviour_add' => 'Add new contacts and skip existing',
'import_upload_behaviour_replace' => 'Replace existing contacts',
'import_upload_behaviour_help' => 'Replacing will replace all data found in the vCard, but will keep existing contact fields.',
'import_report_title' => 'Importing report',
'import_report_date' => 'Date of the import',
'import_report_type' => 'Type of import',
'import_report_number_contacts' => 'Number of contacts in the file',
'import_report_number_contacts_imported' => 'Number of imported contacts',
'import_report_number_contacts_skipped' => 'Number of skipped contacts',
'import_report_status_imported' => 'Imported',
'import_report_status_skipped' => 'Skipped',
'import_vcard_parse_error' => 'Error when parsing the vCard entry',
'import_vcard_contact_exist' => 'Contact already exists',
'import_vcard_contact_no_firstname' => 'No first name (mandatory)',
'import_vcard_file_not_found' => 'File not found',
'import_vcard_unknown_entry' => 'Unknown contact name',
'import_vcard_file_no_entries' => 'File contains no entries',
'import_blank_title' => 'You havent imported any contacts yet.',
'import_blank_question' => 'Would you like to import contacts now?',
'import_blank_description' => 'We can import vCard files that you can get from Google Contacts or your Contact manager.',
'import_blank_cta' => 'Import vCard',
'import_need_subscription' => 'Importing data requires a subscription.',
'tags_list_title' => 'Tags',
'tags_list_description' => 'You can organize your contacts by setting up tags. Tags work like folders, but you can add more than one tag to a contact. To add a new tag, add it on the contact itself.',
'tags_list_contact_number' => '1 contact|:count contacts',
'tags_list_delete_success' => 'The tag has been successfully deleted',
'tags_list_edit_success' => 'The tag has been successfully updated',
'tags_list_delete_confirmation' => 'Are you sure you want to delete the tag? No contacts will be deleted, only the tag.',
'tags_blank_title' => 'Tags are a great way of categorizing your contacts.',
'tags_blank_description' => 'Tags work like folders, but you can add more than one tag to a contact. Go to a contact and tag a friend, right below the name. Once a contact is tagged, come back here to manage all the tags in your account.',
'api_title' => 'API access',
'api_description' => 'The API can be used to manipulate Monicas data from an external application, like a mobile application for instance.',
'api_help' => 'To use the API, a token is mandatory. You can either create a personal access token (Bearer authentication), or authorize an OAuth client to create it for you. See <a href=":url">API documentation</a>.',
'api_endpoint' => 'The API endpoint for this Monica instance is:',
'api_personal_access_tokens' => 'Personal access tokens',
'api_pao_description' => 'Make sure you give this token to a source you trust as they allow you to access all your data.',
'api_token_title' => 'Personal Access Tokens',
'api_token_create_new' => 'Create New Token',
'api_token_not_created' => 'You have not created any personal access tokens.',
'api_token_name' => 'Token name',
'api_token_expire' => 'Expires at {date}',
'api_token_delete' => 'Delete',
'api_token_create' => 'Create Token',
'api_token_scopes' => 'Scopes',
'api_token_help' => 'Here is your new personal access token. This is the only time it will be shown so dont lose it! You may now use this token to make API requests.',
'api_oauth_clients' => 'Your OAuth clients',
'api_oauth_clients_desc' => 'This section lets you register your own OAuth clients.',
'api_oauth_clients_desc2' => 'Use this client id to request a new token, and convert authorisation codes to access tokens. See <a href="{url}">Laravel Passport documentation</a> for more information.',
'api_oauth_title' => 'OAuth Clients',
'api_oauth_create_new' => 'Create New Client',
'api_oauth_edit' => 'Edit Client',
'api_oauth_not_created' => 'You have not created any OAuth clients.',
'api_oauth_clientid' => 'Client ID',
'api_oauth_name' => 'Name',
'api_oauth_name_help' => 'Something your users will recognize and trust.',
'api_oauth_secret' => 'Secret',
'api_oauth_create' => 'Create Client',
'api_oauth_redirecturl' => 'Redirect URL',
'api_oauth_redirecturl_help' => 'Your applications authorization callback URL.',
'api_authorized_clients' => 'List of authorised clients',
'api_authorized_clients_desc' => 'This section lists all the clients youve authorised to access your application data. You can revoke this authorisation at any time.',
'api_authorized_clients_title' => 'Authorised Applications',
'api_authorized_clients_none' => 'There are no authorised clients yet.',
'api_authorized_clients_name' => 'Name',
'api_authorized_clients_scopes' => 'Scopes',
'personalization_tab_title' => 'Personalise your account',
'personalization_title' => 'Here you will find different settings to configure your account. These features are intended for “power users” who want maximum control over Monica.',
'personalization_contact_field_type_title' => 'Contact field types',
'personalization_contact_field_type_add' => 'Add new field type',
'personalization_contact_field_type_description' => 'You can configure all the different types of contact fields that you can associate to all your contacts. For example, if a new social network appears in the future, you will be able to add this new way of communicating with your contacts right here.',
'personalization_contact_field_type_table_name' => 'Name',
'personalization_contact_field_type_table_protocol' => 'Protocol',
'personalization_contact_field_type_table_actions' => 'Actions',
'personalization_contact_field_type_modal_title' => 'Add a new contact field type',
'personalization_contact_field_type_modal_edit_title' => 'Edit an existing contact field type',
'personalization_contact_field_type_modal_delete_title' => 'Delete an existing contact field type',
'personalization_contact_field_type_modal_delete_description' => 'Are you sure you want to delete this contact field type? Deleting this type of contact field will delete ALL the data with this type for all of your contacts.',
'personalization_contact_field_type_modal_name' => 'Name',
'personalization_contact_field_type_modal_protocol' => 'Protocol (optional)',
'personalization_contact_field_type_modal_protocol_help' => 'Each new contact field type can be clickable. If a protocol is set, we will use it to trigger the action that is set.',
'personalization_contact_field_type_modal_icon' => 'Icon (optional)',
'personalization_contact_field_type_modal_icon_help' => 'You can associate an icon with this contact field type. You need to add a reference to a Font Awesome icon.',
'personalization_contact_field_type_delete_success' => 'The contact field type has been successfully deleted.',
'personalization_contact_field_type_add_success' => 'The contact field type has been successfully added.',
'personalization_contact_field_type_edit_success' => 'The contact field type has been successfully updated.',
'personalization_genders_title' => 'Gender types',
'personalization_genders_add' => 'Add new gender type',
'personalization_genders_desc' => 'You can define as many genders as you need to. You need at least one gender type in your account.',
'personalization_genders_modal_add' => 'Add gender type',
'personalization_genders_modal_edit' => 'Update gender type',
'personalization_genders_modal_name' => 'Name',
'personalization_genders_modal_name_help' => 'The name used to display the gender on a contact page.',
'personalization_genders_modal_sex' => 'Sex',
'personalization_genders_modal_sex_help' => 'Used to define the relationships, and during the VCard import/export process.',
'personalization_genders_modal_default' => 'Select the default gender for a new contact',
'personalization_genders_modal_delete' => 'Delete gender type',
'personalization_genders_modal_delete_desc' => 'Are you sure you want to delete the gender “{name}”?',
'personalization_genders_modal_delete_question' => 'You currently have {count} contact with this gender. If you delete this gender, what gender should this contact have?|You currently have {count} contacts with this gender. If you delete this gender, what gender should these contacts have?',
'personalization_genders_modal_delete_question_default' => 'This gender is the default one. If you delete this gender, which one will be the new default?',
'personalization_genders_modal_error' => 'Please choose a gender from the list.',
'personalization_genders_list_contact_number' => '{count} contact|{count} contacts',
'personalization_genders_table_name' => 'Name',
'personalization_genders_table_sex' => 'Sex',
'personalization_genders_table_default' => 'Default',
'personalization_genders_default' => 'Default gender',
'personalization_genders_make_default' => 'Change default gender',
'personalization_genders_select_default' => 'Select default gender',
'personalization_genders_m' => 'Male',
'personalization_genders_f' => 'Female',
'personalization_genders_o' => 'Other',
'personalization_genders_u' => 'Unknown',
'personalization_genders_n' => 'None or not applicable',
'personalization_reminder_rule_save' => 'The change has been saved',
'personalization_reminder_rule_title' => 'Reminder rules',
'personalization_reminder_rule_line' => '{count} day before|{count} days before',
'personalization_reminder_rule_desc' => 'For every reminder that you set, Monica can send you an email a number of days before the event happens. You can adjust these notification settings here. These notifications only apply to monthly and yearly reminders.',
'personalization_module_save' => 'The change has been saved',
'personalization_module_title' => 'Features',
'personalization_module_desc' => 'You may not need all of Monicas features. Below you can toggle specific features that are used on a contact sheet. This change will affect ALL your contacts. Turning off a feature does not delete any data, it simply hides the feature.',
'personalisation_paid_upgrade' => 'This is a premium feature that requires a Paid subscription to be active. Upgrade your account by visiting <a href=":url">Settings > Subscription</a>.',
'personalisation_paid_upgrade_vue' => 'This is a premium feature that requires a Paid subscription to be active. Upgrade your account by visiting <a href="{url}">Settings > Subscription</a>.',
'reminder_time_to_send' => 'Time of the day reminders will be sent',
'reminder_time_to_send_help' => 'Your next reminder is scheduled to be sent on <span title="{dateTimeUtc}" class="reminder-info">{dateTime}</span>.',
'personalization_activity_type_category_title' => 'Activity type categories',
'personalization_activity_type_category_add' => 'Add a new activity type category',
'personalization_activity_type_category_table_name' => 'Name',
'personalization_activity_type_category_description' => 'An activity with one of your contacts can have a type and a category type. Your account comes with a set of predefined category types by default, but you can customise these here.',
'personalization_activity_type_category_table_actions' => 'Actions',
'personalization_activity_type_category_modal_add' => 'Add a new activity type category',
'personalization_activity_type_category_modal_edit' => 'Edit an activity type category',
'personalization_activity_type_category_modal_question' => 'What should we name this new category?',
'personalization_activity_type_add_button' => 'Add a new activity type',
'personalization_activity_type_modal_add' => 'Add a new activity type',
'personalization_activity_type_modal_question' => 'What should we name this new activity type?',
'personalization_activity_type_modal_edit' => 'Edit an activity type',
'personalization_activity_type_category_modal_delete' => 'Delete an activity type category',
'personalization_activity_type_category_modal_delete_desc' => 'Are you sure you want to delete this category? Deleting it will delete all associated activity types. Activities that belong to this category will not be affected by this deletion.',
'personalization_activity_type_modal_delete' => 'Delete an activity type',
'personalization_activity_type_modal_delete_desc' => 'Are you sure you want to delete this activity type? Activities that belong to this category will not be affected by this deletion.',
'personalization_activity_type_modal_delete_error' => 'We cant find this activity type.',
'personalization_activity_type_category_modal_delete_error' => 'We cant find this activity type category.',
'personalization_life_event_category_title' => 'Life event categories',
'personalization_live_event_category_table_name' => 'Name',
'personalization_life_event_category_description' => 'A life event can have a type and a category. Your account comes with a set of predefined categories and types by default, but you can customise life event types here.',
'personalization_live_event_category_table_actions' => 'Actions',
'personalization_life_event_type_add_button' => 'Add a new life event type',
'personalization_life_event_type_modal_add' => 'Add a new life event type',
'personalization_life_event_type_modal_question' => 'What should we name this new life event type?',
'personalization_life_event_type_modal_edit' => 'Edit a life event type',
'personalization_life_event_type_modal_delete' => 'Delete a life event type',
'personalization_life_event_type_modal_delete_desc' => 'Are you sure you want to delete this life event type? Life events that belong to this type will be deleted by performing this action.',
'personalization_life_event_type_modal_delete_error' => 'We cant find this life event type.',
'personalization_life_event_category_work_education' => 'Work & education',
'personalization_life_event_category_family_relationships' => 'Family & relationships',
'personalization_life_event_category_home_living' => 'Home & living',
'personalization_life_event_category_travel_experiences' => 'Travel & experiences',
'personalization_life_event_category_health_wellness' => 'Health & wellness',
'personalization_life_event_type_new_job' => 'New job',
'personalization_life_event_type_retirement' => 'Retirement',
'personalization_life_event_type_new_school' => 'New school',
'personalization_life_event_type_study_abroad' => 'Study abroad',
'personalization_life_event_type_volunteer_work' => 'Volunteer work',
'personalization_life_event_type_published_book_or_paper' => 'Published a book or paper',
'personalization_life_event_type_military_service' => 'Military service',
'personalization_life_event_type_first_met' => 'First met',
'personalization_life_event_type_new_relationship' => 'New relationship',
'personalization_life_event_type_engagement' => 'Engagement',
'personalization_life_event_type_marriage' => 'Marriage',
'personalization_life_event_type_anniversary' => 'Anniversary',
'personalization_life_event_type_expecting_a_baby' => 'Expecting a baby',
'personalization_life_event_type_new_child' => 'New child',
'personalization_life_event_type_new_family_member' => 'New family member',
'personalization_life_event_type_new_pet' => 'New pet',
'personalization_life_event_type_end_of_relationship' => 'End of relationship',
'personalization_life_event_type_loss_of_a_loved_one' => 'Loss of a loved one',
'personalization_life_event_type_moved' => 'Moved',
'personalization_life_event_type_bought_a_home' => 'Bought a home',
'personalization_life_event_type_home_improvement' => 'Home improvement',
'personalization_life_event_type_holidays' => 'Holidays',
'personalization_life_event_type_new_vehicle' => 'New vehicle',
'personalization_life_event_type_new_roommate' => 'New roommate',
'personalization_life_event_type_overcame_an_illness' => 'Overcame an illness',
'personalization_life_event_type_quit_a_habit' => 'Quit a habit',
'personalization_life_event_type_new_eating_habits' => 'New eating habits',
'personalization_life_event_type_weight_loss' => 'Weight loss',
'personalization_life_event_type_wear_glass_or_contact' => 'Started wearing glasses or contacts',
'personalization_life_event_type_broken_bone' => 'Broke a bone',
'personalization_life_event_type_removed_braces' => 'Had braces removed',
'personalization_life_event_type_surgery' => 'Had surgery',
'personalization_life_event_type_dentist' => 'Had dental treatment',
'personalization_life_event_type_new_sport' => 'Started playing a new sport',
'personalization_life_event_type_new_hobby' => 'Took up a new hobby',
'personalization_life_event_type_new_instrument' => 'Started learning a new instrument',
'personalization_life_event_type_new_language' => 'Started learning a new language',
'personalization_life_event_type_tattoo_or_piercing' => 'Tattoo or piercing',
'personalization_life_event_type_new_license' => 'New license',
'personalization_life_event_type_travel' => 'Travel',
'personalization_life_event_type_achievement_or_award' => 'Achievement or award',
'personalization_life_event_type_changed_beliefs' => 'Changed beliefs',
'personalization_life_event_type_first_word' => 'First word',
'personalization_life_event_type_first_kiss' => 'First kiss',
'storage_title' => 'Storage',
'storage_account_info' => 'Your account limit is :accountLimitMB. Your current usage is :currentAccountSizeMB (about :percentUsage%).',
'storage_upgrade_notice' => 'Upgrade your account to be able to upload documents and photos.',
'storage_description' => 'Here you can see all the documents and photos uploaded about your contacts.',
'dav_title' => 'WebDAV',
'dav_description' => 'Here you can find all settings to use WebDAV resources for CardDAV and CalDAV exports.',
'dav_copy_help' => 'Copy into your clipboard',
'dav_clipboard_copied' => 'Value copied into your clipboard',
'dav_url_base' => 'Base url for all CardDAV and CalDAV resources:',
'dav_connect_help' => 'You can connect your contacts and/or calendars with this base url on you phone or computer.',
'dav_connect_help2' => 'Use your login (email) and create an API token as the password to authenticate.',
'dav_url_carddav' => 'CardDAV url for Contacts resource:',
'dav_url_caldav_birthdays' => 'CalDAV url for Birthdays resources:',
'dav_url_caldav_tasks' => 'CalDAV url for Tasks resources:',
'dav_title_carddav' => 'CardDAV',
'dav_title_caldav' => 'CalDAV',
'dav_carddav_export' => 'Export all contacts in one file',
'dav_caldav_birthdays_export' => 'Export all birthdays in one file',
'dav_caldav_tasks_export' => 'Export all tasks in one file',
'archive_title' => 'Archive all of the contacts in your account',
'archive_desc' => 'This will archive all of the contacts in your account.',
'archive_cta' => 'Archive all of your contacts',
'logs_title' => 'Everything that has happened to this account',
'logs_actor' => 'Actor',
'logs_timestamp' => 'Timestamp',
'logs_description' => 'Description',
'logs_subject' => 'Subject',
'logs_size' => 'Size (KB)',
'logs_object' => 'Object',
];

View File

@@ -0,0 +1,166 @@
<?php
/**
* ⚠️ Editing not allowed except for 'en' language.
*
* @see https://github.com/monicahq/monica/blob/main/docs/contribute/translate.md for translations.
*/
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => 'The :attribute must be accepted.',
'active_url' => 'The :attribute is not a valid URL.',
'after' => 'The :attribute must be a date after :date.',
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
'alpha' => 'The :attribute may only contain letters.',
'alpha_dash' => 'The :attribute may only contain letters, numbers, dashes and underscores.',
'alpha_num' => 'The :attribute may only contain letters and numbers.',
'array' => 'The :attribute must be an array.',
'before' => 'The :attribute must be a date before :date.',
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
'between' => [
'numeric' => 'The :attribute must be between :min and :max.',
'file' => 'The :attribute must be between :min and :max kilobytes.',
'string' => 'The :attribute must be between :min and :max characters.',
'array' => 'The :attribute must have between :min and :max items.',
],
'boolean' => 'The :attribute field must be true or false.',
'confirmed' => 'The :attribute confirmation does not match.',
'date' => 'The :attribute is not a valid date.',
'date_equals' => 'The :attribute must be a date equal to :date.',
'date_format' => 'The :attribute does not match the format :format.',
'different' => 'The :attribute and :other must be different.',
'digits' => 'The :attribute must be :digits digits.',
'digits_between' => 'The :attribute must be between :min and :max digits.',
'dimensions' => 'The :attribute has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'email' => 'The :attribute must be a valid email address.',
'ends_with' => 'The :attribute must end with one of the following: :values.',
'exists' => 'The selected :attribute is invalid.',
'file' => 'The :attribute must be a file.',
'filled' => 'The :attribute field must have a value.',
'gt' => [
'numeric' => 'The :attribute must be greater than :value.',
'file' => 'The :attribute must be greater than :value kilobytes.',
'string' => 'The :attribute must be greater than :value characters.',
'array' => 'The :attribute must have more than :value items.',
],
'gte' => [
'numeric' => 'The :attribute must be greater than or equal :value.',
'file' => 'The :attribute must be greater than or equal :value kilobytes.',
'string' => 'The :attribute must be greater than or equal :value characters.',
'array' => 'The :attribute must have :value items or more.',
],
'image' => 'The :attribute must be an image.',
'in' => 'The selected :attribute is invalid.',
'in_array' => 'The :attribute field does not exist in :other.',
'integer' => 'The :attribute must be an integer.',
'ip' => 'The :attribute must be a valid IP address.',
'ipv4' => 'The :attribute must be a valid IPv4 address.',
'ipv6' => 'The :attribute must be a valid IPv6 address.',
'json' => 'The :attribute must be a valid JSON string.',
'lt' => [
'numeric' => 'The :attribute must be less than :value.',
'file' => 'The :attribute must be less than :value kilobytes.',
'string' => 'The :attribute must be less than :value characters.',
'array' => 'The :attribute must have less than :value items.',
],
'lte' => [
'numeric' => 'The :attribute must be less than or equal :value.',
'file' => 'The :attribute must be less than or equal :value kilobytes.',
'string' => 'The :attribute must be less than or equal :value characters.',
'array' => 'The :attribute must not have more than :value items.',
],
'max' => [
'numeric' => 'The :attribute may not be greater than :max.',
'file' => 'The :attribute may not be greater than :max kilobytes.',
'string' => 'The :attribute may not be greater than :max characters.',
'array' => 'The :attribute may not have more than :max items.',
],
'mimes' => 'The :attribute must be a file of type: :values.',
'mimetypes' => 'The :attribute must be a file of type: :values.',
'min' => [
'numeric' => 'The :attribute must be at least :min.',
'file' => 'The :attribute must be at least :min kilobytes.',
'string' => 'The :attribute must be at least :min characters.',
'array' => 'The :attribute must have at least :min items.',
],
'not_in' => 'The selected :attribute is invalid.',
'not_regex' => 'The :attribute format is invalid.',
'numeric' => 'The :attribute must be a number.',
'password' => 'The password is incorrect.',
'present' => 'The :attribute field must be present.',
'regex' => 'The :attribute format is invalid.',
'required' => 'The :attribute field is required.',
'required_if' => 'The :attribute field is required when :other is :value.',
'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 and :other must match.',
'size' => [
'numeric' => 'The :attribute must be :size.',
'file' => 'The :attribute must be :size kilobytes.',
'string' => 'The :attribute must be :size characters.',
'array' => 'The :attribute must contain :size items.',
],
'starts_with' => 'The :attribute must start with one of the following: :values.',
'string' => 'The :attribute must be a string.',
'timezone' => 'The :attribute must be a valid zone.',
'unique' => 'The :attribute has already been taken.',
'uploaded' => 'The :attribute failed to upload.',
'url' => 'The :attribute format is invalid.',
'uuid' => 'The :attribute must be a valid UUID.',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'attribute-name' => [
'rule-name' => 'custom-message',
],
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
'vue' => [
'max' => [
'numeric' => '{field} may not be greater than {max}.',
'string' => '{field} may not be greater than {max} characters.',
],
'required' => '{field} is required.',
'url' => '{field} is not a valid URL.',
],
];