import json

keys = {
    'pl': {
        'steps_page_title': 'Kroki przygotowania',
        'steps_add': 'Dodaj krok',
        'steps_empty': 'Brak kroków. Kliknij "Dodaj krok", aby zacząć.',
        'steps_info': 'Opisz kolejne etapy przygotowania receptury. Możesz dodać do 3 zdjęć per krok.',
        'steps_drag_hint': 'Przeciągnij, aby zmienić kolejność',
        'steps_description_placeholder': 'Opisz ten krok przygotowania...',
        'steps_save_error': 'Błąd zapisu kroku',
        'steps_saved': 'Krok zapisany',
        'steps_saving': 'Zapisywanie...',
        'steps_delete_confirm_title': 'Usunąć krok?',
        'steps_delete_confirm_body': 'Ta operacja usunie krok wraz z jego zdjęciami. Nie można jej cofnąć.',
        'steps_photo_slot': 'Zdjęcie',
        'steps_photo_delete': 'Usuń zdjęcie',
        'steps_photo_error': 'Błąd wysyłania zdjęcia',
        'steps_uploading': 'Wysyłanie...',
        'steps_move_up': 'Przesuń wyżej',
        'steps_move_down': 'Przesuń niżej',
    },
    'en': {
        'steps_page_title': 'Preparation steps',
        'steps_add': 'Add step',
        'steps_empty': 'No steps yet. Click "Add step" to begin.',
        'steps_info': 'Describe each preparation stage. You can add up to 3 photos per step.',
        'steps_drag_hint': 'Drag to reorder',
        'steps_description_placeholder': 'Describe this preparation step...',
        'steps_save_error': 'Error saving step',
        'steps_saved': 'Step saved',
        'steps_saving': 'Saving...',
        'steps_delete_confirm_title': 'Delete step?',
        'steps_delete_confirm_body': 'This will delete the step and its photos. This action cannot be undone.',
        'steps_photo_slot': 'Photo',
        'steps_photo_delete': 'Delete photo',
        'steps_photo_error': 'Photo upload error',
        'steps_uploading': 'Uploading...',
        'steps_move_up': 'Move up',
        'steps_move_down': 'Move down',
    },
    'fr': {
        'steps_page_title': 'Étapes de préparation',
        'steps_add': 'Ajouter étape',
        'steps_empty': 'Aucune étape. Cliquez sur « Ajouter étape » pour commencer.',
        'steps_info': "Décrivez chaque étape de préparation. Vous pouvez ajouter jusqu'à 3 photos par étape.",
        'steps_drag_hint': 'Faites glisser pour réorganiser',
        'steps_description_placeholder': 'Décrivez cette étape...',
        'steps_save_error': "Erreur lors de l'enregistrement",
        'steps_saved': 'Étape enregistrée',
        'steps_saving': 'Enregistrement...',
        'steps_delete_confirm_title': "Supprimer l'étape ?",
        'steps_delete_confirm_body': "Cette opération supprimera l'étape et ses photos. Elle est irréversible.",
        'steps_photo_slot': 'Photo',
        'steps_photo_delete': 'Supprimer la photo',
        'steps_photo_error': 'Erreur lors du téléchargement de la photo',
        'steps_uploading': 'Téléchargement...',
        'steps_move_up': 'Monter',
        'steps_move_down': 'Descendre',
    },
    'nl': {
        'steps_page_title': 'Bereidingsstappen',
        'steps_add': 'Stap toevoegen',
        'steps_empty': 'Geen stappen. Klik op "Stap toevoegen" om te beginnen.',
        'steps_info': "Beschrijf elke bereidingsstap. U kunt maximaal 3 foto's per stap toevoegen.",
        'steps_drag_hint': 'Slepen om te herordenen',
        'steps_description_placeholder': 'Beschrijf deze stap...',
        'steps_save_error': 'Fout bij opslaan',
        'steps_saved': 'Stap opgeslagen',
        'steps_saving': 'Opslaan...',
        'steps_delete_confirm_title': 'Stap verwijderen?',
        'steps_delete_confirm_body': 'Dit verwijdert de stap en de bijbehorende foto\'s. Dit kan niet ongedaan worden gemaakt.',
        'steps_photo_slot': 'Foto',
        'steps_photo_delete': 'Foto verwijderen',
        'steps_photo_error': 'Fout bij uploaden van foto',
        'steps_uploading': 'Uploaden...',
        'steps_move_up': 'Omhoog',
        'steps_move_down': 'Omlaag',
    },
    'it': {
        'steps_page_title': 'Fasi di preparazione',
        'steps_add': 'Aggiungi fase',
        'steps_empty': 'Nessuna fase. Clicca su "Aggiungi fase" per iniziare.',
        'steps_info': 'Descrivi ogni fase di preparazione. Puoi aggiungere fino a 3 foto per fase.',
        'steps_drag_hint': 'Trascina per riordinare',
        'steps_description_placeholder': 'Descrivi questa fase...',
        'steps_save_error': 'Errore durante il salvataggio',
        'steps_saved': 'Fase salvata',
        'steps_saving': 'Salvataggio...',
        'steps_delete_confirm_title': 'Eliminare la fase?',
        'steps_delete_confirm_body': 'Questa operazione eliminerà la fase e le relative foto. Non può essere annullata.',
        'steps_photo_slot': 'Foto',
        'steps_photo_delete': 'Elimina foto',
        'steps_photo_error': 'Errore caricamento foto',
        'steps_uploading': 'Caricamento...',
        'steps_move_up': 'Sposta su',
        'steps_move_down': 'Sposta giù',
    },
}

base = '/home/szymon/projects/tfb/app/supplier/src/core/I18n/translations/page'
for lang, new_keys in keys.items():
    path = base + '/' + lang + '/recipes.json'
    with open(path, 'r', encoding='utf-8') as f:
        data = json.load(f)
    data.update(new_keys)
    with open(path, 'w', encoding='utf-8') as f:
        json.dump(data, f, indent=4, ensure_ascii=False)
        f.write('\n')
    print(lang + ': OK (' + str(len(new_keys)) + ' keys added)')
